/* 04-chrome.css: header (logo, collections, search, cart), announcement, footer. Every rule under body.woopify. */
body.woopify #masthead.site-header { display: block; background: var(--color-bg); border-bottom: 1px solid var(--color-border); box-shadow: none; position: relative; z-index: 50; }
body.woopify #masthead .main-header.col-full { max-width: var(--space-container); padding: 0 var(--space-gutter); margin: 0 auto; border: 0; height: auto; min-height: 0; display: block; }
body.woopify .col-full-nav { display: none !important; }
body.woopify .woopify-header { display: flex; align-items: center; gap: var(--space-lg); min-height: 72px; position: relative; }
body.woopify .woopify-brand { display: inline-flex; align-items: center; min-height: 44px; flex: 0 0 auto; }
body.woopify .woopify-logo { display: block; width: 96px; height: 32px; }
body.woopify .woopify-nav { flex: 1 1 auto; }
body.woopify .woopify-nav__list { list-style: none; margin: 0; padding: 0; display: flex; gap: var(--space-lg); }
body.woopify .woopify-nav__list a { display: inline-flex; align-items: center; min-height: 44px; color: var(--color-ink); font-weight: 600; font-size: 15px; text-decoration: none; }
body.woopify .woopify-nav__list a:hover, body.woopify .woopify-nav__list .current-menu-item > a { color: var(--color-accent); }
body.woopify .woopify-header__actions { display: flex; align-items: center; gap: var(--space-xs); margin-left: auto; }
body.woopify .woopify-icon-button { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 0; background: transparent; color: var(--color-ink); border-radius: var(--radius-md); position: relative; cursor: pointer; }
body.woopify a.woopify-icon-button { color: var(--color-ink); }
body.woopify .woopify-icon-button:hover { color: var(--color-accent); background: transparent; }
body.woopify .woopify-cart-count { position: absolute; top: 4px; right: 2px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: var(--radius-pill); background: var(--color-accent); color: var(--color-accent-ink); font: 600 11px/18px var(--font-body); text-align: center; }
body.woopify .woopify-menu-toggle, body.woopify .woopify-nav-close { display: none; }
body.woopify .woopify-search { position: absolute; left: 0; right: 0; top: 100%; background: var(--color-bg); border-bottom: 1px solid var(--color-border); padding: var(--space-md) 0; z-index: 60; }
body.woopify .woopify-search form { display: flex; gap: var(--space-sm); max-width: 640px; }
body.woopify .woopify-search input[type=search], body.woopify .woopify-search input[name=s] { flex: 1; min-height: 48px; padding: 0 var(--space-md); border-radius: var(--radius-md); background: var(--color-surface); font-size: var(--fs-body-md); }
body.woopify .woopify-search button { min-height: 48px; }
@media (max-width: 991px) {
  body.woopify .woopify-header { min-height: 60px; gap: var(--space-sm); }
  body.woopify .woopify-menu-toggle { display: inline-flex; margin-left: -10px; }
  body.woopify .woopify-brand { position: absolute; left: 50%; transform: translateX(-50%); }
  body.woopify .woopify-logo { width: 84px; height: 28px; }
  body.woopify .woopify-header__actions { margin-right: -10px; }
  body.woopify .woopify-nav { position: fixed; inset: 0 auto 0 0; width: min(320px, 85vw); background: var(--color-surface); box-shadow: var(--shadow-raised); padding: var(--space-md) var(--space-gutter); transform: translateX(-105%); visibility: hidden; transition: transform .2s ease, visibility 0s linear .2s; z-index: 1000; overflow-y: auto; }
  body.woopify.woopify-nav-open .woopify-nav { transform: none; visibility: visible; transition: transform .2s ease; }
  body.woopify.woopify-nav-open::after { content: ""; position: fixed; inset: 0; background: rgba(28, 27, 25, .35); z-index: 999; }
  body.woopify .woopify-nav-close { display: inline-flex; margin: 0 0 var(--space-sm) -10px; }
  body.woopify .woopify-nav__list { flex-direction: column; gap: 0; }
  body.woopify .woopify-nav__list a { min-height: 48px; font-size: var(--fs-body-md); border-bottom: 1px solid var(--color-border); width: 100%; }
}
/* Announcement bar (when home.md has [announcement]): Iron Charcoal, Porch White, label type. */
body.woopify .woopify-announcement { background: var(--woopify-charcoal); color: var(--color-bg); }
/* Shoptimizer's own top bar and below-header widget regions are not part of this design. */
body.woopify .top-bar, body.woopify .header-widget-region, body.woopify .below-content { display: none; }
/* Footer (Layout > Footer): Iron Charcoal ground, Porch White text (13.31:1). */
body.woopify .site-footer { background: var(--woopify-charcoal); color: var(--color-bg); padding: 0; margin: 0; border: 0; }
body.woopify .site-footer > .col-full { max-width: none; padding: 0; }
body.woopify .woopify-footer { background: var(--woopify-charcoal); color: var(--color-bg); padding: var(--space-xl) 0 var(--space-lg); font-size: var(--fs-body-sm); line-height: var(--lh-body-sm); }
body.woopify .woopify-footer__cols { display: grid; grid-template-columns: 1fr 1fr 1.4fr; gap: var(--space-lg); }
body.woopify .woopify-footer__heading { font: 600 var(--fs-h3)/var(--lh-h3) var(--font-heading); color: var(--color-bg); margin: 0 0 var(--space-md); }
body.woopify .woopify-footer ul { list-style: none; margin: 0; padding: 0; }
body.woopify .woopify-footer p { margin: 0 0 var(--space-sm); color: var(--color-bg); }
body.woopify .woopify-footer a:not(.button), body.woopify .woopify-footer .woopify-footer__link { color: var(--color-bg); text-decoration: none; display: inline-flex; align-items: center; min-height: 32px; }
body.woopify .woopify-footer a:not(.button):hover { text-decoration: underline; }
body.woopify .woopify-footer__support a { text-decoration: underline; text-underline-offset: 3px; }
body.woopify .woopify-footer__legal { border-top: 1px solid rgba(250, 246, 239, .2); margin-top: var(--space-lg); padding-top: var(--space-md); font-size: var(--fs-label); }
@media (max-width: 767px) {
  body.woopify .woopify-footer__cols { grid-template-columns: 1fr; gap: var(--space-lg); }
  body.woopify .woopify-footer a:not(.button), body.woopify .woopify-footer .woopify-footer__link { min-height: 44px; }
}
body.woopify .woopify-footer__cols { padding-bottom: var(--space-lg); }
body.woopify .woopify-footer__legal { margin-top: 0; padding-top: var(--space-lg); }
/* One container edge: the header row uses the same 1280px box (gutters inside) as every section. */
body.woopify #masthead .main-header.col-full { box-sizing: border-box; }
/* Touch widths (tablet included): footer links are 44px rows. */
@media (max-width: 1024px) { body.woopify .woopify-footer a:not(.button), body.woopify .woopify-footer .woopify-footer__link { min-height: 44px; } }
/* Search panel: a raised strip under the header, input plus an accent button. */
body.woopify .woopify-search { background: var(--color-surface) !important; padding: var(--space-md); border: 1px solid var(--color-border); border-radius: 0 0 var(--radius-md) var(--radius-md); box-shadow: var(--shadow-raised); }
body.woopify .woopify-search form { display: flex !important; align-items: stretch; gap: var(--space-sm); max-width: none; margin: 0; position: static; }
body.woopify .woopify-search form::before, body.woopify .woopify-search form::after { display: none !important; }
body.woopify .woopify-search input[type=search] { flex: 1 1 auto; min-width: 0; min-height: 48px; padding: 0 var(--space-md) !important; border: 1px solid var(--color-input-border) !important; border-radius: var(--radius-md) !important; background: var(--color-bg) !important; color: var(--color-ink); font: 400 var(--fs-body-md)/1 var(--font-body); }
body.woopify .woopify-search button[type=submit] { flex: 0 0 auto; position: static !important; width: auto !important; min-height: 48px; padding: 0 20px !important; border: 0 !important; border-radius: var(--radius-md) !important; background: var(--color-accent) !important; color: var(--color-accent-ink) !important; font: 600 var(--fs-body-md)/1 var(--font-body) !important; text-indent: 0 !important; overflow: visible !important; }
/* Phone menu: the dimmed page sits under the header, so the drawer (inside the header) is never dimmed. */
body.woopify.woopify-nav-open::after { z-index: 40; }

/* 2026-10-09: no count bubble on an empty cart. */
body.woopify .woopify-cart-count.is-zero { display: none; }
