/* 全站页头(紧凑绿条 = 内页默认态)。首页 tall 透明态在 M1 追加。 */
.site-header { position: fixed; top: 0; left: 0; z-index: 1000; width: 100%; }
.site-header__row {
  display: flex;
  align-items: center;
  height: var(--header-height);
  padding: 10px 65px;
  background: var(--color-main);
}
.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.site-header__logo img { width: 90px; height: auto; }
/* 2026-08-15 Joel:主 logo 走白字(rose 色条 + 首页透明头)。作用域只到全站页头——
   for-business 那张 LP 自带白底页头(.site-logo 包着同一个 .dd-wordmark),白字会消失,
   所以不能写在 base.css 的 .dd-wordmark 上。页脚早就是 .dd-wordmark--light。 */
.site-header__logo .dd-wordmark { color: var(--color-white); }

.site-header__nav { display: flex; align-items: center; gap: 24px; }

.search-button {
  display: flex;
  align-items: center;
  gap: 13px;
  width: 162px;
  height: 34px;
  padding-inline: 16px;
  font-size: 11px;
  border: 1px solid var(--color-ink);
  border-radius: var(--radius-search);
  transition: background var(--transition-duration);
}
.search-button img { width: 16px; height: 16px; }
.search-button:hover { background: rgba(255, 255, 255, .3); }

.cart-button:hover { opacity: .7; }

.cart-button { position: relative; display: block; }
.cart-button img { width: 24px; }
.cart-button__count {
  position: absolute; top: -6px; right: -10px;
  display: grid; place-items: center;
  width: 20px; aspect-ratio: 1;
  font-size: var(--text-xs); color: var(--color-white);
  background: var(--color-ink); border-radius: 50%;
}

.hamburger { display: flex; flex-direction: column; gap: 5px; width: 26px; }
.hamburger span { display: block; width: 26px; height: 2px; background: var(--color-ink); border-radius: 2px; }

/* —— 移动端全局菜单 —— */
.global-menu__layer {
  position: fixed; inset: 0; z-index: 1500;
  background: rgba(0, 0, 0, .4);
  opacity: 0; visibility: hidden;
  transition: opacity var(--transition-duration), visibility var(--transition-duration);
}
.global-menu__layer.is-active { opacity: 1; visibility: visible; }
.global-menu {
  position: fixed; top: 0; right: 0; z-index: 1600;
  width: min(88%, 420px); height: 100%;
  background: var(--color-white);
  transform: translateX(100%);
  transition: transform var(--transition-duration) ease;
  overflow-y: auto;
}
.global-menu.is-active { transform: translateX(0); }
.global-menu__inner { padding: 64px 28px 40px; }
.global-menu__close { position: absolute; top: 20px; right: 20px; width: 24px; height: 24px; }
.global-menu__close span { position: absolute; top: 50%; left: 0; width: 100%; height: 2px; background: var(--color-ink); }
.global-menu__close span:first-child { transform: rotate(45deg); }
.global-menu__close span:last-child { transform: rotate(-45deg); }
.global-menu__list > li { border-bottom: 1px solid var(--color-border); }
.global-menu__link { display: flex; align-items: center; gap: 14px; padding: 18px 4px; font-size: 15px; }
.global-menu__link img { width: 22px; height: 22px; object-fit: contain; }
.global-menu__lower { margin-top: 28px; }
.global-menu__sublist { display: flex; flex-wrap: wrap; gap: 10px 20px; font-size: 13px; }
.global-menu__sns { display: flex; gap: 20px; margin-top: 28px; }
.global-menu__sns img { width: 28px; }

@media (max-width: 768px) {
  .site-header__row { height: var(--header-height-sp); padding: 16px 13px 12px 12px; }
  .site-header__logo img { width: 80px; }
  .site-header__nav { gap: 16px; }
  .search-button { display: none; }
  .cart-button img { width: 21px; }
  .hamburger, .hamburger span { width: 20px; }
}
