.jc-header { position: sticky; top: 0; z-index: var(--jc-z-sticky); border-bottom: var(--jc-rule); background: var(--jc-surface-soft); }
.jc-topbar { min-height: 40px; border-bottom: var(--jc-rule); font-size: var(--jc-fs-caption); }
.jc-topbar .jc-container { display: flex; justify-content: flex-end; align-items: center; gap: var(--jc-space-16); min-height: 40px; }
.jc-topbar a { color: var(--jc-text-secondary); text-decoration: none; }
.jc-header__inner { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: var(--jc-space-16); padding-block: var(--jc-space-24) var(--jc-space-4); }
.jc-header__brand { color: var(--jc-ink); font: 500 32px/1 var(--jc-font-display); text-decoration: none; }
.jc-header__logo { display: block; height: 56px; width: auto; }
.jc-header__logo img { height: 100%; width: auto; }
.jc-nav { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; }
.jc-nav__list, .jc-nav .menu { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: var(--jc-space-24); padding: 0; margin: 0; list-style: none; }
.jc-nav :is(.jc-nav__list, .menu) > li { position: relative; list-style: none; }
.jc-nav .sub-menu { display: none; position: absolute; top: 100%; left: 0; z-index: var(--jc-z-dropdown); min-width: 240px; max-width: 320px; padding: var(--jc-space-8) 0; margin: 0; border: var(--jc-rule); background: var(--jc-surface); box-shadow: var(--jc-shadow-float); list-style: none; }
.jc-nav .sub-menu li { display: block; margin: 0; padding: 0; list-style: none; }
.jc-nav .sub-menu a { display: flex; align-items: center; width: 100%; min-height: var(--jc-touch-min); padding: var(--jc-space-8) var(--jc-space-20); color: var(--jc-text); font: 600 var(--jc-fs-nav)/1.4 var(--jc-font-body); letter-spacing: var(--jc-tracking-nav); text-decoration: none; text-transform: uppercase; white-space: normal; }
.jc-nav .sub-menu a:hover, .jc-nav .sub-menu a:focus-visible, .jc-nav .sub-menu a[aria-current='page'] { background: var(--jc-paper); color: var(--jc-accent); }
.jc-nav .sub-menu a::after { display: none; }
.jc-nav :is(.jc-nav__list, .menu) > li:hover > .sub-menu, .jc-nav :is(.jc-nav__list, .menu) > li:focus-within > .sub-menu { display: block; }
.jc-nav__submenu-toggle { display: none; }
.jc-nav__link, .jc-nav__language { position: relative; display: inline-flex; align-items: center; min-height: var(--jc-touch-min); color: var(--jc-ink); font: 600 var(--jc-fs-nav)/1 var(--jc-font-body); letter-spacing: var(--jc-tracking-nav); text-decoration: none; text-transform: uppercase; }
.jc-nav__link::after { content: ''; position: absolute; left: 0; right: 0; bottom: 8px; height: 1px; background: var(--jc-accent); transform: scaleX(0); transition: transform var(--jc-duration-fast); }
.jc-nav__link:hover::after, .jc-nav__link[aria-current='page']::after { transform: scaleX(1); }
.jc-nav__cart-count:empty { display: none; }
.jc-header__actions { position: absolute; right: 0; display: flex; align-items: center; gap: var(--jc-space-16); }
.jc-header__menu-toggle { display: none; min-height: 44px; border: 0; background: none; color: var(--jc-ink); font: 600 var(--jc-fs-nav)/1 var(--jc-font-body); text-transform: uppercase; }
.jc-header--compact .jc-topbar { display: none; }
.jc-header--compact .jc-header__inner { flex-direction: row; justify-content: space-between; min-height: 80px; padding-block: var(--jc-space-8); }
.jc-header--compact .jc-header__logo { height: 36px; }
.jc-header--compact .jc-nav { width: auto; gap: var(--jc-space-24); }
.jc-header--compact .jc-header__actions { position: static; flex-shrink: 0; }
.jc-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: var(--jc-space-8); color: var(--jc-text-secondary); font-size: var(--jc-fs-caption); }
.jc-breadcrumb a { color: inherit; text-decoration: none; }
.jc-breadcrumb a:hover { color: var(--jc-accent); text-decoration: underline; }
.jc-footer { padding-block: var(--jc-space-90) var(--jc-space-40); background: var(--jc-ink); color: var(--jc-beige-200); }
.jc-footer__grid { display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: var(--jc-space-48); }
.jc-footer__brand { color: var(--jc-paper); font: 500 32px/1.05 var(--jc-font-display); }
.jc-footer__title { margin: 0 0 var(--jc-space-20); color: var(--jc-paper); font: 700 var(--jc-fs-eyebrow)/1.3 var(--jc-font-body); letter-spacing: var(--jc-tracking-eyebrow); text-transform: uppercase; }
.jc-footer .menu { list-style: none; padding: 0; margin: 0; }
.jc-footer a { display: inline-flex; align-items: center; min-height: 44px; color: var(--jc-beige-200); font-size: var(--jc-fs-small); text-decoration: none; }
.jc-footer a:hover { color: var(--jc-paper); text-decoration: underline; }
.jc-footer__legal { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--jc-space-24); margin-top: var(--jc-space-72); padding-top: var(--jc-space-24); border-top: 1px solid rgba(247, 243, 238, .18); font-size: var(--jc-fs-caption); }
@media (max-width: 1024px) { .jc-topbar { display: none; } .jc-header__inner, .jc-header--compact .jc-header__inner { flex-direction: row; justify-content: space-between; min-height: 64px; padding-block: var(--jc-space-8); } .jc-header__logo, .jc-header--compact .jc-header__logo { height: 36px; } .jc-header__menu-toggle { display: inline-flex; align-items: center; cursor: pointer; } .jc-nav { position: fixed; inset: 64px 0 0; z-index: var(--jc-z-overlay); display: block; width: 100%; height: calc(100dvh - 64px); padding: var(--jc-space-40) var(--jc-space-24); overflow-y: auto; background: var(--jc-surface); box-shadow: var(--jc-shadow-float); } .jc-nav[hidden] { display: none; } .jc-nav :is(.jc-nav__list, .menu) { display: flex; flex-direction: column; align-items: stretch; } .jc-nav__link { width: 100%; } .jc-header__actions { position: static; margin-top: var(--jc-space-24); } .jc-footer__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1025px) { .jc-nav[hidden] { display: block; } }
@media (min-width: 1025px) and (max-width: 1279px) {
  .jc-header--compact .jc-header__inner { flex-direction: column; gap: var(--jc-space-4); padding-block: var(--jc-space-8); }
  .jc-header--compact .jc-header__logo { height: 30px; }
  .jc-header--compact .jc-nav :is(.jc-nav__list, .menu) { gap: var(--jc-space-16); }
}
@media (max-width: 767px) { .jc-footer__grid { grid-template-columns: 1fr; gap: var(--jc-space-32); } }
@media (max-width: 1024px) {
  .jc-nav :is(.jc-nav__list, .menu) > li { width: 100%; }
  .jc-nav :is(.jc-nav__list, .menu) > li.menu-item-has-children > a { padding-right: var(--jc-space-48); }
  .jc-nav__submenu-toggle { display: inline-flex; position: absolute; top: 0; right: 0; align-items: center; justify-content: center; width: var(--jc-touch-min); min-height: var(--jc-touch-min); border: 0; background: transparent; color: var(--jc-ink); cursor: pointer; }
  .jc-nav__submenu-toggle::after { content: ''; display: block; width: 8px; height: 8px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform var(--jc-duration-fast); }
  .jc-nav__submenu-toggle[aria-expanded='true']::after { transform: translateY(2px) rotate(225deg); }
  .jc-nav .sub-menu, .jc-nav :is(.jc-nav__list, .menu) > li:hover > .sub-menu, .jc-nav :is(.jc-nav__list, .menu) > li:focus-within > .sub-menu { display: block; position: static; width: 100%; max-width: none; min-width: 0; padding: 0 0 var(--jc-space-12) var(--jc-space-20); margin: 0; border: 0; border-left: var(--jc-rule); background: transparent; box-shadow: none; }
  .jc-nav.jc-nav--enhanced :is(.jc-nav__list, .menu) > li:not(.is-open) > .sub-menu { display: none; }
  .jc-nav .sub-menu a { padding-inline: var(--jc-space-16); }
}
