/* HE_GLOBAL_NAV_V72_CSS */
.he-globalnav72,
.he-globalnav72 *{box-sizing:border-box}
.he-globalnav72{
  --he72-bg:#f7f5ef;
  --he72-text:#17383a;
  --he72-deep:#123f43;
  --he72-line:rgba(18,63,67,.14);
  --he72-sand:#e9dfce;
  --he72-card:#fff;
  position:sticky;
  top:0;
  z-index:1000;
  width:100%;
  background:rgba(247,245,239,.97);
  border-bottom:1px solid var(--he72-line);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  color:var(--he72-text);
  font-family:inherit;
}
.he-globalnav72__bar{
  width:min(100% - 40px,1440px);
  min-height:82px;
  margin:0 auto;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:18px;
}
.he-globalnav72__brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
  color:var(--he72-text)!important;
  text-decoration:none!important;
}
.he-globalnav72__logo{display:block;width:50px;height:50px;object-fit:contain;flex:0 0 auto}
.he-globalnav72__brandtext{font-size:21px;font-weight:760;line-height:1;letter-spacing:-.025em;white-space:nowrap}
.he-globalnav72__dot{opacity:.58;font-weight:500}
.he-globalnav72__desktopnav{display:flex;justify-content:center;align-items:center;gap:5px;min-width:0}
.he-globalnav72__navlink{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:10px 13px;
  border:1px solid transparent;
  border-radius:14px;
  color:var(--he72-text)!important;
  text-decoration:none!important;
  font-size:14px;
  font-weight:680;
  line-height:1.2;
  text-align:center;
  white-space:nowrap;
}
.he-globalnav72__navlink:hover{background:#ede8de}
.he-globalnav72__navlink.is-active{background:var(--he72-deep);border-color:var(--he72-deep);color:#fff!important}
.he-globalnav72__shop{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:12px 17px;
  border:1px solid var(--he72-deep);
  border-radius:15px;
  background:var(--he72-deep);
  color:#fff!important;
  text-decoration:none!important;
  font-size:14px;
  font-weight:750;
  line-height:1.15;
  text-align:center;
  white-space:nowrap;
}
.he-globalnav72__shop:hover{background:#0d3437;border-color:#0d3437}
.he-globalnav72__desktoplangs{display:flex;align-items:center;gap:3px;padding-left:8px;border-left:1px solid var(--he72-line)}
.he-globalnav72__lang{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:37px;height:37px;
  border:1px solid transparent;
  border-radius:999px;
  color:var(--he72-text)!important;
  text-decoration:none!important;
  font-size:12px;
  font-weight:760;
}
.he-globalnav72__lang:hover{background:#ede8de}
.he-globalnav72__lang.is-active{background:var(--he72-sand);border-color:#dfd1bb}
.he-globalnav72__burger{display:none}
.he-globalnav72__drawer{display:none}

@media (max-width:1180px){
  .he-globalnav72__bar{width:min(100% - 28px,1440px);gap:10px}
  .he-globalnav72__navlink{padding:10px 9px;font-size:13px}
  .he-globalnav72__shop{padding:11px 12px;font-size:13px}
  .he-globalnav72__brandtext{font-size:19px}
  .he-globalnav72__logo{width:46px;height:46px}
  .he-globalnav72__lang{width:34px;height:34px;font-size:11px}
}

@media (max-width:980px){
  .he-globalnav72__bar{
    width:min(100% - 28px,1440px);
    min-height:72px;
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:10px;
  }
  .he-globalnav72__desktopnav,.he-globalnav72__desktoplangs{display:none!important}
  .he-globalnav72__brand{min-width:0}
  .he-globalnav72__brandtext{overflow:hidden;text-overflow:ellipsis}
  .he-globalnav72__shop{min-height:44px;padding:10px 13px}
  .he-globalnav72__burger{
    display:inline-flex;
    width:44px;height:44px;
    padding:0;
    border:1px solid var(--he72-line);
    border-radius:13px;
    background:#fff;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:4px;
    color:var(--he72-text);
    cursor:pointer;
  }
  .he-globalnav72__burger span{display:block;width:18px;height:2px;border-radius:2px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
  .he-globalnav72.is-open .he-globalnav72__burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .he-globalnav72.is-open .he-globalnav72__burger span:nth-child(2){opacity:0}
  .he-globalnav72.is-open .he-globalnav72__burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .he-globalnav72__drawer{
    position:absolute;
    left:14px;right:14px;
    top:calc(100% + 8px);
    display:block;
    padding:14px;
    border:1px solid var(--he72-line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 46px rgba(13,41,44,.16);
  }
  .he-globalnav72__drawer[hidden]{display:none!important}
  .he-globalnav72__mobilenav{display:grid;gap:7px}
  .he-globalnav72__mobilelink{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:48px;
    padding:11px 13px;
    border:1px solid rgba(18,63,67,.09);
    border-radius:13px;
    background:#faf9f5;
    color:var(--he72-text)!important;
    text-decoration:none!important;
    font-size:14px;
    font-weight:680;
  }
  .he-globalnav72__mobilelink.is-active{background:var(--he72-deep);border-color:var(--he72-deep);color:#fff!important}
  .he-globalnav72__mobilebottom{display:grid;gap:12px;margin-top:13px;padding-top:13px;border-top:1px solid var(--he72-line)}
  .he-globalnav72__mobile-shop{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:11px 14px;
    border-radius:13px;
    background:var(--he72-deep);
    color:#fff!important;
    text-decoration:none!important;
    font-weight:750;
  }
  .he-globalnav72__mobilelangs{display:flex;flex-wrap:wrap;gap:7px}
  .he-globalnav72__mobilelang{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:46px;height:39px;
    padding:0 10px;
    border:1px solid var(--he72-line);
    border-radius:999px;
    background:#fff;
    color:var(--he72-text)!important;
    text-decoration:none!important;
    font-size:12px;
    font-weight:760;
  }
  .he-globalnav72__mobilelang.is-active{background:var(--he72-sand);border-color:#dfd1bb}
}

@media (max-width:620px){
  .he-globalnav72__bar{width:calc(100% - 22px);min-height:66px;grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .he-globalnav72__logo{width:42px;height:42px}
  .he-globalnav72__brandtext{font-size:17px}
  .he-globalnav72__dot{display:none}
  .he-globalnav72__shop{display:none!important}
  .he-globalnav72__burger{justify-self:end}
  .he-globalnav72__drawer{left:10px;right:10px;top:calc(100% + 6px)}
}

/* HE_MOBILE_NAV_V74B_START */
/*
 * Mobile-only navigation refinement.
 * Desktop rules are intentionally untouched.
 */
@media (max-width: 920px) {
  .he-globalnav72__bar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    grid-template-rows: auto !important;
    align-items: center !important;
    column-gap: 10px !important;
    row-gap: 0 !important;
    padding: 12px 14px !important;
  }

  .he-globalnav72__brand {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    gap: 9px !important;
    overflow: hidden !important;
  }

  .he-globalnav72__logo {
    width: 44px !important;
    height: 44px !important;
    flex: 0 0 44px !important;
  }

  .he-globalnav72__brandtext {
    min-width: 0 !important;
    font-size: 18px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .he-globalnav72__desktopnav,
  .he-globalnav72__desktoplangs {
    display: none !important;
  }

  /* Hide any leftover v74 experimental mobile Shop element if it still exists. */
  .he-globalnav72__mobile-top-shop {
    display: none !important;
  }

  /* Existing desktop shop link becomes the compact mobile Shop button. */
  .he-globalnav72__shop {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: static !important;
    width: auto !important;
    min-width: 58px !important;
    max-width: 70px !important;
    min-height: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid #123f43 !important;
    border-radius: 13px !important;
    background: #123f43 !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .he-globalnav72__shop::after {
    content: "Shop" !important;
    display: block !important;
    color: #fff !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
  }

  .he-globalnav72__burger {
    grid-column: 3 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: static !important;
    justify-self: end !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    margin: 0 !important;
  }

  /* The shop is already available in the top mobile bar. */
  .he-globalnav72__mobile-shop {
    display: none !important;
  }

  .he-globalnav72__mobilebottom {
    margin-top: 12px !important;
    padding-top: 12px !important;
  }

  .he-globalnav72__mobilelangs {
    margin-top: 0 !important;
  }
}

@media (max-width: 430px) {
  .he-globalnav72__bar {
    column-gap: 8px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .he-globalnav72__logo {
    width: 40px !important;
    height: 40px !important;
    flex-basis: 40px !important;
  }

  .he-globalnav72__brandtext {
    font-size: 17px !important;
  }

  .he-globalnav72__dot {
    display: none !important;
  }

  .he-globalnav72__shop {
    min-width: 54px !important;
    max-width: 60px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 10px !important;
    border-radius: 12px !important;
  }

  .he-globalnav72__shop::after {
    font-size: 13px !important;
  }

  .he-globalnav72__burger {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
  }
}
/* HE_MOBILE_NAV_V74B_END */
/* HE_MOBILE_PADDING_V74D_BEGIN */
@media (max-width: 920px) {
  html, body {
    overflow-x: hidden;
  }

  body,
  main,
  .site-main,
  .page,
  .page-shell,
  .page-content,
  .content,
  .content-area,
  .hero,
  .hero-grid,
  .split-hero,
  .pillar-hero,
  .pillar-layout,
  .article,
  .article-body,
  .section,
  .section-inner,
  .block,
  .block-inner,
  .wrap,
  .he-wrap,
  .corp-wrap,
  .container,
  .inner,
  .content-wrap {
    box-sizing: border-box;
    max-width: 100%;
  }

  .wrap,
  .he-wrap,
  .corp-wrap,
  .container,
  .inner,
  .content-wrap,
  .article,
  .article-body,
  .section-inner,
  .block-inner,
  .hero-copy,
  .hero-text,
  .hero-content,
  .copy,
  .prose {
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .hero-grid,
  .split-hero,
  .pillar-layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  img,
  video,
  iframe,
  svg,
  canvas {
    max-width: 100%;
  }

  h1, h2, h3, h4, p, li, .eyebrow, .kicker {
    overflow-wrap: break-word;
  }
}
/* HE_MOBILE_PADDING_V74D_END */
/* HE_LANGUAGE_FLAGS_V74E_BEGIN */

/* Desktop + Mobile: kleine Landesflaggen neben Sprachcodes */
.he-globalnav72__lang,
.he-globalnav72__mobilelang {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
}

.he-globalnav72__lang {
  width: auto !important;
  min-width: 54px !important;
  padding-left: 9px !important;
  padding-right: 9px !important;
}

.he-globalnav72__mobilelang {
  min-width: 58px !important;
}

.he-globalnav72__lang::before,
.he-globalnav72__mobilelang::before {
  display: inline-block;
  font-size: 14px;
  line-height: 1;
  font-weight: 400;
}

.he-globalnav72__lang[data-he-lang="de"]::before,
.he-globalnav72__mobilelang[data-he-lang="de"]::before { content: "🇩🇪"; }

.he-globalnav72__lang[data-he-lang="en"]::before,
.he-globalnav72__mobilelang[data-he-lang="en"]::before { content: "🇬🇧"; }

.he-globalnav72__lang[data-he-lang="es"]::before,
.he-globalnav72__mobilelang[data-he-lang="es"]::before { content: "🇪🇸"; }

.he-globalnav72__lang[data-he-lang="fr"]::before,
.he-globalnav72__mobilelang[data-he-lang="fr"]::before { content: "🇫🇷"; }

.he-globalnav72__lang[data-he-lang="nl"]::before,
.he-globalnav72__mobilelang[data-he-lang="nl"]::before { content: "🇳🇱"; }

@media (max-width: 920px) {
  .he-globalnav72__mobilelangs {
    gap: 7px !important;
  }

  .he-globalnav72__mobilelang {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* HE_LANGUAGE_FLAGS_V74E_END */
/* HE_MOBILE_LANG_BUTTONS_V74F_BEGIN */
@media (max-width: 920px) {
  .he-nav71__mobile-lang {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
  }

  .he-nav71__mobile-lang-link {
    min-width: 0 !important;
    width: 100% !important;
    height: 44px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    line-height: 1 !important;
    gap: 4px !important;
    white-space: nowrap !important;
    justify-content: center !important;
  }

  .he-nav71__mobile-lang-link::before {
    font-size: 18px !important;
    line-height: 1 !important;
  }
}

@media (max-width: 420px) {
  .he-nav71__mobile-lang {
    gap: 6px !important;
  }

  .he-nav71__mobile-lang-link {
    height: 42px !important;
    padding: 0 6px !important;
    font-size: 10px !important;
    gap: 3px !important;
  }

  .he-nav71__mobile-lang-link::before {
    font-size: 16px !important;
  }
}
/* HE_MOBILE_LANG_BUTTONS_V74F_END */
