.rs-header,
.rs-menu {
  --rs-ink: #080b0d;
  --rs-yellow: #ffdc22;
  --rs-paper: #f6f6f2;
  --rs-line: #e6e7e3;
  box-sizing: border-box;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 1.4;
}
.rs-header *, .rs-menu * { box-sizing: border-box; }
.rs-header a, .rs-menu a { color: inherit; text-decoration: none; }
.rs-header button, .rs-menu button { font-family: inherit; }
.rs-header a:focus-visible, .rs-header button:focus-visible,
.rs-menu a:focus-visible, .rs-menu button:focus-visible { outline: 2px solid #c7a900; outline-offset: 4px; }
.rs-header {
  position: sticky;
  top: 0;
  z-index: 80;
  width: 100%;
  background: rgba(8, 11, 13, .96);
  border-bottom: 1px solid rgba(255,255,255,.1);
  color: #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.rs-header-inner {
  width: min(100% - 48px, 1280px);
  min-height: 75px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 208px minmax(0,1fr) auto 48px;
  align-items: center;
  column-gap: 24px;
}
.rs-logo { display: flex; align-items: center; width: 154px; max-width: 100%; line-height: 1; }
.rs-wordmark { display: block; width: 100%; height: auto; }
.rs-links { display: flex; justify-content: center; align-items: center; gap: clamp(14px,1.7vw,28px); font-size: 13px; font-weight: 700; white-space: nowrap; }
.rs-links .rs-season-link { color: var(--rs-yellow); }
.rs-season-link small { display: inline-block; margin-left: 4px; padding: 3px 5px; border: 1px solid rgba(255,220,34,.4); border-radius: 5px; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.rs-phone { justify-self: end; font-size: 14px; font-weight: 800; white-space: nowrap; }
.rs-links a, .rs-phone { transition: color .2s; }
.rs-links a:hover, .rs-phone:hover, .rs-links a[aria-current="page"] { color: var(--rs-yellow); }
.rs-cart, .rs-menu-button {
  position: relative;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  min-width: 48px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 50%;
  background: var(--rs-yellow);
  color: var(--rs-ink);
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}
.rs-cart svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.rs-cart-count { position: absolute; top: -4px; right: -4px; display: grid; place-items: center; min-width: 21px; height: 21px; padding: 0 4px; border: 2px solid var(--rs-ink); border-radius: 99px; background: #ff5a1f; color: #fff; font-size: 10px; font-weight: 900; line-height: 1; }
.rs-cart-count[hidden], .rs-menu[hidden] { display: none; }
.rs-menu-button { display: none; place-content: center; gap: 5px; }
.rs-menu-button span { display: block; width: 20px; height: 2px; border-radius: 2px; background: var(--rs-ink); pointer-events: none; transition: transform .2s, opacity .2s; }
.rs-menu-button.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.rs-menu-button.is-open span:nth-child(2) { opacity: 0; }
.rs-menu-button.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.rs-menu { position: fixed; inset: 76px 0 0; z-index: 79; padding-bottom: 28px; overflow: auto; overscroll-behavior: contain; background: var(--rs-paper); color: var(--rs-ink); }
.rs-menu-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; padding: 20px max(16px,calc((100% - 960px)/2)) 18px; background: var(--rs-ink); color: #fff; }
.rs-menu-head div { display: grid; gap: 3px; }
.rs-menu-head span { color: var(--rs-yellow); font-size: 10px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.rs-menu-kicker { display: flex; align-items: center; gap: 7px; }
.rs-menu-kicker img { display: block; width: 24px; height: 20px; object-fit: contain; }
.rs-menu-head strong { font-size: 21px; letter-spacing: -.03em; }
.rs-menu-head > a { flex-shrink: 0; padding-bottom: 3px; border-bottom: 2px solid var(--rs-yellow); font-size: 12px; font-weight: 900; }
.rs-menu-tree, .rs-menu-links { max-width: 992px; margin: 0 auto; background: #fff; }
.rs-menu-loading, .rs-menu-error { padding: 24px 16px; color: #737b7f; font-size: 14px; }
.rs-menu-error a { display: block; margin-top: 10px; color: var(--rs-ink); font-weight: 800; }
.rs-menu-section { border-bottom: 1px solid var(--rs-line); }
.rs-menu-section.is-season { border-left: 3px solid var(--rs-yellow); }
.rs-menu-section.is-season .rs-section-toggle { background: #fff9dc; }
.rs-section-toggle { display: grid; width: 100%; min-height: 100px; grid-template-columns: 72px minmax(0,1fr) 16px; align-items: center; gap: 14px; padding: 14px 16px; border: 0; background: #fff; color: var(--rs-ink); text-align: left; cursor: pointer; }
.rs-section-toggle[aria-expanded="true"] { background: var(--rs-paper); }
.rs-thumb { position: relative; display: grid; place-items: center; width: 72px; height: 72px; border: 1px solid var(--rs-line); border-radius: 10px; overflow: hidden; background: #fff; font-size: 18px; font-weight: 900; }
.rs-thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.rs-section-copy { display: grid; min-width: 0; gap: 3px; }
.rs-section-copy strong { font-size: 16px; font-weight: 700; letter-spacing: -.02em; }
.rs-section-copy small { color: #737b7f; font-size: 11px; }
.rs-chevron { color: #737b7f; font-size: 22px; line-height: 1; transition: transform .2s; }
.rs-section-toggle[aria-expanded="true"] .rs-chevron { transform: rotate(90deg); }
.rs-section-panel { display: grid; padding: 0 16px 14px 102px; background: var(--rs-paper); }
.rs-section-panel[hidden] { display: none; }
.rs-section-panel a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 0; border-top: 1px solid var(--rs-line); font-size: 13px; }
.rs-section-panel a:first-child { font-size: 12px; font-weight: 900; }
.rs-section-panel b { color: #737b7f; font-size: 11px; font-weight: 700; }
.rs-menu-links { display: grid; margin-top: 12px; border-top: 1px solid var(--rs-line); }
.rs-menu-links a { display: flex; min-height: 56px; align-items: center; justify-content: space-between; gap: 18px; padding: 12px 16px; border-bottom: 1px solid var(--rs-line); font-weight: 800; }
.rs-menu-links b { color: #737b7f; font-size: 12px; }
.rs-menu-links .rs-sale-link { background: var(--rs-yellow); }
.rs-menu-links .rs-sale-link b { color: var(--rs-ink); }
.rs-menu-links .rs-winter-link { background: var(--rs-ink); color: #fff; }
.rs-menu-links .rs-winter-link b { color: var(--rs-yellow); }
@media (max-width: 1050px) {
  .rs-header-inner { grid-template-columns: 208px minmax(0,1fr) 48px 48px; column-gap: 16px; }
  .rs-links { display: none; }
  .rs-menu-button { display: grid; }
}
@media (max-width: 720px) {
  .rs-header-inner { width: calc(100% - 32px); min-height: 77px; grid-template-columns: minmax(0,1fr) 46px 46px; grid-template-rows: 36px 12px; align-content: center; gap: 4px 8px; }
  .rs-logo { grid-column: 1; grid-row: 1; align-self: end; width: 108px; }
  .rs-phone { grid-column: 1; grid-row: 2; justify-self: start; align-self: start; font-size: 10px; line-height: 1.2; }
  .rs-cart, .rs-menu-button { grid-row: 1 / 3; width: 46px; height: 46px; min-width: 46px; }
  .rs-cart { grid-column: 2; }
  .rs-menu-button { grid-column: 3; }
  .rs-menu { top: 78px; }
}
@media (prefers-reduced-motion: reduce) {
  .rs-header *, .rs-menu * { transition: none; }
}
