:root{
  --dsh-red:#c62035;
  --dsh-text:#111111;
  --dsh-muted:#6e6e6e;
  --dsh-line:#dedede;
  --dsh-header-h:76px;
}

body.dsh-enabled{padding-top:var(--dsh-header-h)!important}
body.admin-bar.dsh-enabled{padding-top:calc(var(--dsh-header-h) + 32px)!important}

body.dsh-enabled #header,
body.dsh-enabled .site-header:not(.dsh-header),
body.dsh-enabled .zn_header,
body.dsh-enabled .siteheader,
body.dsh-enabled header#site-header,
body.dsh-enabled .kl-main-header,
body.dsh-enabled .site-header-wrapper,
body.dsh-enabled .header-wrapper:not(.dsh-header){display:none!important}

.dsh-header,
.dsh-header *{box-sizing:border-box}

.dsh-header{
  position:fixed;
  z-index:99990;
  top:0;
  left:0;
  right:0;
  width:100%;
  height:var(--dsh-header-h);
  background:#fff;
  border-bottom:1px solid #ececec;
  box-shadow:0 1px 0 rgba(0,0,0,.02);
  color:var(--dsh-text);
  font-family:Rubik,Arial,sans-serif;
  font-size:14px;
  line-height:1.4;
}
.admin-bar .dsh-header{top:32px}

.dsh-inner{
  width:100%;
  max-width:1410px;
  height:var(--dsh-header-h);
  margin:0 auto;
  padding:0 28px;
  display:grid;
  grid-template-columns:150px minmax(360px,1fr) auto;
  align-items:center;
  column-gap:40px;
}

.dsh-logo{
  width:150px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  overflow:hidden;
  text-decoration:none!important;
}
.dsh-logo img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:140px!important;
  max-height:50px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  object-fit:contain;
}

.dsh-desktop-nav{
  min-width:0;
  height:100%;
  display:flex;
  align-items:center;
  gap:30px;
  white-space:nowrap;
}

.dsh-nav-link{
  position:relative;
  height:100%;
  margin:0!important;
  padding:0!important;
  display:flex;
  align-items:center;
  color:#111!important;
  font-family:Rubik,Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.dsh-nav-link:after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:0;
  height:2px;
  background:var(--dsh-red);
  transition:right .18s ease;
}
.dsh-nav-link:hover:after,
.dsh-nav-link:focus:after,
.dsh-products-wrap.is-open>.dsh-products-link:after{right:0}

.dsh-products-wrap{
  position:static;
  height:100%;
  display:flex;
  align-items:center;
}
.dsh-products-wrap:hover .dsh-mega,
.dsh-products-wrap:focus-within .dsh-mega,
.dsh-products-wrap.is-open .dsh-mega{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}

.dsh-mega{
  position:fixed;
  z-index:99991;
  top:var(--dsh-header-h);
  left:50%;
  width:min(1160px,calc(100vw - 56px));
  min-height:300px;
  margin:0;
  padding:32px 38px 34px;
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:0;
  background:#fff;
  border-top:3px solid var(--dsh-red);
  box-shadow:0 18px 42px rgba(0,0,0,.16);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,10px);
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
  white-space:normal;
}
.admin-bar .dsh-mega{top:calc(var(--dsh-header-h) + 32px)}

.dsh-mega-intro{
  min-width:0;
  padding:2px 30px 0 8px;
  border-right:1px solid var(--dsh-line);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:15px;
}
.dsh-eyebrow{
  display:block;
  margin:0 0 2px;
  color:var(--dsh-red);
  font-size:10px!important;
  font-weight:500!important;
  line-height:1.2!important;
  letter-spacing:2px!important;
  text-transform:uppercase!important;
}
.dsh-mega-intro a{
  display:block;
  width:100%;
  margin:0!important;
  padding:0!important;
  color:var(--dsh-muted)!important;
  font-family:Rubik,Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.45!important;
  letter-spacing:.65px!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:normal!important;
  overflow-wrap:normal;
}
.dsh-mega-intro .dsh-mega-all{
  color:#202020!important;
  font-size:13px!important;
  font-weight:500!important;
  letter-spacing:1.4px!important;
}

.dsh-mega-columns{
  min-width:0;
  padding-left:44px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px;
  align-items:start;
}
.dsh-mega-col{min-width:0;margin:0;padding:0}
.dsh-mega-col h3{
  min-height:18px;
  margin:0 0 15px!important;
  padding:0!important;
  color:#202020!important;
  font-family:Rubik,Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.35!important;
  letter-spacing:1.2px!important;
  text-transform:uppercase!important;
  white-space:normal!important;
}
.dsh-mega-col a{
  display:block!important;
  margin:0 0 10px!important;
  padding:0!important;
  color:#737373!important;
  font-family:Rubik,Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:400!important;
  line-height:1.45!important;
  letter-spacing:.45px!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:normal!important;
  overflow-wrap:break-word;
}
.dsh-mega-col a:hover,
.dsh-mega-col a:focus{color:var(--dsh-red)!important}

.dsh-actions{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:24px;
  white-space:nowrap;
}

/* FiboSearch is the only search used by this header. */
.dsh-fibosearch{
  width:260px;
  min-width:260px;
  height:44px;
  margin:0;
  padding:0;
  position:relative;
  display:block;
}
.dsh-fibosearch .dgwt-wcas-search-wrapp{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.dsh-fibosearch .dgwt-wcas-sf-wrapp{
  width:100%!important;
  min-width:0!important;
  height:44px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #d7d7d7!important;
  background:#fff!important;
}
.dsh-fibosearch .dgwt-wcas-search-input{
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  margin:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  font-family:Rubik,Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:42px!important;
  color:#444!important;
  background:#fff!important;
  box-shadow:none!important;
}
.dsh-fibosearch .dgwt-wcas-search-input::placeholder{color:#777!important;opacity:1!important}
.dsh-fibosearch .dgwt-wcas-search-submit,
.dsh-fibosearch .dgwt-wcas-search-submit:hover,
.dsh-fibosearch .dgwt-wcas-search-submit:focus{
  height:42px!important;
  min-height:42px!important;
  margin:0!important;
  box-shadow:none!important;
}
.dsh-fibosearch .dgwt-wcas-ico-magnifier{max-width:20px!important;max-height:20px!important}
.dsh-fibosearch-unavailable{border:1px solid transparent}
.dgwt-wcas-suggestions-wrapp,
.dgwt-wcas-details-wrapp{z-index:100000!important}

.dsh-buy{
  height:44px;
  min-width:164px;
  margin:0!important;
  padding:0 20px!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:20px;
  background:var(--dsh-red)!important;
  color:#fff!important;
  font-family:Rubik,Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  border:0!important;
}
.dsh-buy:hover,.dsh-buy:focus{background:#a9182b!important;color:#fff!important}

.dsh-menu-toggle{
  display:none;
  width:44px;
  height:44px;
  margin:0;
  padding:9px;
  background:transparent;
  border:0;
  cursor:pointer;
}
.dsh-menu-toggle span{display:block;height:2px;margin:5px 0;background:#111;transition:.2s}
.dsh-mobile-panel{display:none}

@media(max-width:1240px){
  .dsh-inner{grid-template-columns:140px minmax(330px,1fr) auto;column-gap:28px;padding:0 22px}
  .dsh-logo{width:140px}.dsh-logo img{max-width:132px!important}
  .dsh-desktop-nav{gap:23px}
  .dsh-actions{gap:16px}
  .dsh-fibosearch{width:230px;min-width:230px}
  .dsh-buy{min-width:148px;padding:0 16px!important}
}

@media(max-width:1100px){
  :root{--dsh-header-h:68px}
  body.admin-bar.dsh-enabled{padding-top:calc(var(--dsh-header-h) + 46px)!important}
  .admin-bar .dsh-header{top:46px}
  .dsh-header{height:68px}
  .dsh-inner{
    height:68px;
    padding:0 18px;
    display:flex;
    align-items:center;
    gap:14px;
  }
  .dsh-logo{width:auto;min-width:0;flex:1;height:48px}
  .dsh-logo img{max-width:126px!important;max-height:42px!important}
  .dsh-desktop-nav,.dsh-actions>.dsh-fibosearch,.dsh-buy{display:none!important}
  .dsh-actions{margin-left:auto;display:flex;gap:0}
  .dsh-menu-toggle{display:block}
  .dsh-mega{display:none!important}

  .dsh-mobile-panel{
    position:absolute;
    top:68px;
    left:0;
    right:0;
    width:100%;
    max-height:calc(100vh - 68px);
    overflow:auto;
    margin:0;
    padding:18px 20px 28px;
    background:#fff;
    border-top:1px solid #ededed;
    box-shadow:0 16px 28px rgba(0,0,0,.12);
  }
  .admin-bar .dsh-mobile-panel{top:68px;max-height:calc(100vh - 114px)}
  .dsh-mobile-panel.is-open{display:block}
  .dsh-fibosearch-mobile{display:block!important;width:100%;min-width:0;height:auto;margin:0 0 14px}
  .dsh-fibosearch-mobile .dgwt-wcas-sf-wrapp{height:46px!important}
  .dsh-fibosearch-mobile .dgwt-wcas-search-input{height:44px!important;line-height:44px!important}

  .dsh-mobile-panel>a,
  .dsh-mobile-products{
    width:100%;
    min-height:48px;
    margin:0!important;
    padding:0!important;
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:#fff;
    border:0;
    border-bottom:1px solid #e6e6e6;
    color:#111!important;
    font-family:Rubik,Arial,sans-serif!important;
    font-size:14px!important;
    font-weight:500!important;
    line-height:1.3!important;
    text-align:left;
    text-transform:none!important;
    text-decoration:none!important;
  }
  .dsh-mobile-products span{font-size:22px;font-weight:300}
  .dsh-mobile-products-list{padding:10px 0 16px;border-bottom:1px solid #e6e6e6}
  .dsh-mobile-products-list>a{display:block;margin:0;padding:9px 0;color:#111!important;text-decoration:none!important;font-size:13px!important;line-height:1.4!important}
  .dsh-mobile-group{padding:13px 0 2px}
  .dsh-mobile-group h3{margin:0 0 7px!important;padding:0!important;font-size:11px!important;line-height:1.35!important;letter-spacing:1.2px!important;color:#222!important}
  .dsh-mobile-group a{display:block;margin:0!important;padding:6px 0!important;color:#707070!important;text-decoration:none!important;font-size:12px!important;line-height:1.45!important}
  .dsh-mobile-panel .dsh-mobile-buy{margin-top:18px!important;padding:0 16px!important;justify-content:center;background:var(--dsh-red)!important;color:#fff!important;border:0!important}
}

@media(max-width:782px){.admin-bar .dsh-header{top:46px}}
@media(max-width:480px){.dsh-inner{padding:0 14px}.dsh-logo img{max-width:118px!important}}

/* 1.2.0 — collection headings are links */
.dsh-mega-col h3 a,
.dsh-mobile-group h3 a{color:inherit!important;font:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;display:inline!important;padding:0!important;margin:0!important;border:0!important}
.dsh-mega-col h3 a:hover,
.dsh-mobile-group h3 a:hover{color:var(--dsh-red)!important}

/* 1.2.0 — keep the page light while searching (FiboSearch "darken background") */
body.dsh-enabled .dgwt-wcas-darkened-overlay{display:none!important}

/* 1.2.0 — JPM Navigation's Products menu opens directly under this header */
body.dsh-enabled .jpmn-mega{z-index:99989}

/* 1.3.0 — simple footer (replaces the theme footer on every page except the homepage) */
body.dsh-enabled #footer,
body.dsh-enabled footer.site-footer:not(.dsh-footer),
body.dsh-enabled .znpb-footer-smart-area{display:none!important}
.dsh-footer,.dsh-footer *{box-sizing:border-box}
.dsh-footer{clear:both;margin:0;padding:0;background:#f3f2ef;border-top:1px solid #e6e6e1;color:#5c5e58;font-family:Rubik,Arial,sans-serif;font-size:14px;line-height:1.5}
.dsh-footer-inner{max-width:1344px;margin:0 auto;padding:40px 48px 28px}
.dsh-footer a{color:#252622!important;text-decoration:none!important}
.dsh-footer a:hover,.dsh-footer a:focus-visible{color:var(--dsh-red)!important}
.dsh-footer a:focus-visible{outline:2px solid var(--dsh-red);outline-offset:2px}
.dsh-footer-top{display:flex;flex-wrap:wrap;align-items:center;gap:20px 48px;padding-bottom:26px;border-bottom:1px solid #d8d9d2}
.dsh-footer-logo{display:flex;align-items:center;min-height:44px}
.dsh-footer-logo img{display:block!important;width:auto!important;height:auto!important;max-width:130px!important;max-height:44px!important}
.dsh-footer-links{display:flex;flex-wrap:wrap;gap:4px 28px;margin-right:auto}
.dsh-footer-links a,.dsh-footer-contact a,.dsh-footer-legal a{display:inline-flex;align-items:center;min-height:44px}
.dsh-footer-contact{display:flex;flex-wrap:wrap;gap:4px 24px;font-weight:500}
.dsh-footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;padding-top:14px;font-size:13px}
.dsh-footer-bottom p{margin:0;color:#5c5e58}
.dsh-footer-legal{display:flex;gap:4px 22px}
.dsh-footer-legal a{color:#5c5e58!important}
@media(max-width:700px){
  .dsh-footer-inner{padding:32px 20px 24px}
  .dsh-footer-top{flex-direction:column;align-items:flex-start;gap:12px}
  .dsh-footer-links{flex-direction:column;gap:0;margin:0}
  .dsh-footer-contact{flex-direction:column;gap:0}
  .dsh-footer-bottom{flex-direction:column;align-items:flex-start}
}
