/* Shared home/shop geometry: identical logo and menu bar dimensions. */
.site-header,.shop-header{box-sizing:border-box;height:82px;min-height:82px;grid-template-columns:180px 1fr auto;gap:24px;padding:0 clamp(18px,5vw,72px)}
.site-header .brand,.site-header .brand picture,.shop-brand{display:block;width:180px;height:66px}
.site-header .brand img,.shop-brand img{display:block;width:180px;height:66px;object-fit:contain;object-position:left center}
@media(max-width:800px){.site-header,.shop-header{height:68px;min-height:68px;padding:0 18px;grid-template-columns:128px 1fr auto;gap:12px}.site-header .brand,.site-header .brand picture,.shop-brand,.site-header .brand img,.shop-brand img{width:128px;height:54px}}
/* Public pages keep the horizontal identity, including narrow phones. */
@media(max-width:600px){.site-header,.shop-header{--public-logo-width:clamp(112px,32vw,128px);grid-template-columns:var(--public-logo-width) minmax(0,1fr) auto}.site-header .brand,.site-header .brand picture,.shop-brand,.site-header .brand img,.shop-brand img{width:var(--public-logo-width);height:50px;object-position:left center}.shop-actions{justify-self:end}}


/* The same glass bar, baseline and typography on both public surfaces. */
.site-header,.shop-header {
  position: sticky;
  top: 0;
  z-index: 50;
  display: grid;
  align-items: center;
  border-bottom: 0;
  background: linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.06) 58%,rgba(255,255,255,0) 100%);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  font-family: 'Montserrat','Avenir Next','Segoe UI',sans-serif;
}
.site-header::after,.shop-header::after {
  content: '';
  position: absolute;
  pointer-events: none;

  left:4%;
  right:5%;
  bottom:-4px;
  height:12px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1300 12' preserveAspectRatio='none'%3E%3Cpath d='M6 9C150 3.5 340 8.5 520 5.5 700 2.8 850 8 1020 5 1160 2.6 1250 6.5 1294 4.8' fill='none' stroke='%23171a1d' stroke-width='1.7' stroke-linecap='round' opacity='.85'/%3E%3Cpath d='M10 10.5C180 6 380 10 560 7 740 4.5 900 9 1080 6.2 1200 4.4 1260 7.5 1292 6.2' fill='none' stroke='%23171a1d' stroke-width='.8' stroke-linecap='round' opacity='.3'/%3E%3C/svg%3E") center/100% 100% no-repeat
}
.shop-header .shop-links { display: flex; align-items: center; justify-content: center; gap: clamp(14px,1.45vw,24px); }
.shop-header { --be-action-accent: #bcebe0; --be-action-accent-border: #91cbbb; --be-action-ink: #173d34; --be-action-dark: #203b35; --be-action-dark-border: #52675f; --be-action-light: #fffef9; --be-action-focus: #08736d; }
.shop-header .shop-links > a { color: #171a1d; font-size: 12px; font-weight: 400; letter-spacing: 0; text-transform: uppercase; white-space: nowrap; }
.shop-header .shop-links > a:hover { color: #08736d; }
.shop-header .shop-actions { display: flex; align-items: center; justify-self: end; gap: 10px; }
.shop-header .be-button.be-button.be-button { gap: 10px; padding-left: 17px; rotate: none; }
.shop-header .text-button.be-button.be-button { max-width: 250px; }
.shop-header .text-button .be-button__label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.shop-menu-toggle { display: none; background: transparent; border: 0; color: #171a1d; }
.shop-menu-toggle:focus-visible { outline: 3px solid #08736d; outline-offset: 3px; }
.shop-menu-toggle span { display: block; width: 24px; height: 2px; border-radius: 2px; background: currentColor; transition: transform .2s, opacity .2s; }
.shop-menu-toggle[aria-expanded='true'] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.shop-menu-toggle[aria-expanded='true'] span:nth-child(2) { opacity: 0; }
.shop-menu-toggle[aria-expanded='true'] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
@media (max-width: 1180px) {
  .shop-header .shop-links { position: fixed; inset: 82px 18px auto; display: none; padding: 26px; border: 1px solid #afc6bb; border-radius: 20px; background: #f8fbf5; box-shadow: 0 12px 32px #173d341c; max-height: calc(100dvh - 100px); overflow: auto; }
  .shop-header .shop-links.open { display: grid; gap: 22px; }
  .shop-header .shop-links > a { font-size: 14px; }
  .shop-header .shop-links .be-button.be-button.be-button { width: 100%; max-width: 100%; }
  .shop-header .shop-menu-toggle { display: flex; flex-direction: column; align-items: center; justify-content: center; justify-self: end; width: 42px; height: 44px; padding: 8px; gap: 5px; border-radius: 50%; cursor: pointer; }
}
@media (max-width: 800px) {
  .shop-header .shop-links { top: 68px; left: 12px; right: 12px; padding: 28px 32px; border: 2px solid #171a1d; border-radius: 18px; }
  .shop-header .app-button.be-button.be-button { gap: 8px; padding-left: 13px; }
}
@media (prefers-reduced-motion: reduce) { .shop-menu-toggle span { transition: none; } }
