.site-header { position: sticky; top: 0; z-index: 1000; border-bottom: 1px solid color-mix(in srgb, var(--theme-border) 80%, transparent); background: color-mix(in srgb, var(--theme-bg) 94%, transparent); backdrop-filter: blur(14px); }
.header-row { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 28px; min-height: var(--theme-header-height); }
.site-branding { display: flex; align-items: center; }
.custom-logo { max-height: 54px; width: auto; }
.site-title { font-size: 1.35rem; font-weight: 900; color: var(--theme-primary); }
.primary-menu, .mobile-menu, .footer-menu { margin: 0; padding: 0; list-style: none; }
.primary-menu { display: flex; justify-content: center; gap: clamp(14px, 2vw, 30px); }
.primary-menu a { display: block; padding-block: 12px; font-weight: 700; }
.header-actions { display: flex; align-items: center; gap: 8px; }
.icon-button { position: relative; display: grid; width: 44px; height: 44px; padding: 10px; place-items: center; border: 0; border-radius: 50%; background: transparent; color: var(--theme-text); }
.icon-button:hover { background: var(--theme-surface); color: var(--theme-primary); }
.icon-button svg { width: 23px; height: 23px; }
.cart-count { position: absolute; inset-block-start: 1px; inset-inline-end: 0; display: grid; min-width: 18px; height: 18px; padding: 0 4px; place-items: center; border-radius: 10px; background: var(--theme-sale); color: #fff; font-size: 10px; font-weight: 800; }
.menu-toggle { display: none; }
.mobile-navigation { border-top: 1px solid var(--theme-border); background: var(--theme-bg); }
.mobile-menu { padding-block: 12px 20px; }
.mobile-menu a { display: block; padding: 12px 4px; border-bottom: 1px solid var(--theme-border); }
.mobile-bottom-nav { display: none; }
