/** Shopify CDN: Minification failed

Line 980:0 Unexpected "@media"

**/
/* ============================================================
   BaystorySupply — Design Tokens (Direction A — Bellroy/Away)
   Source: BaystorySupply Homepage Redesign-A-print.html
   ============================================================ */

:root {
  /* Typography stacks */
  --bay-font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  --bay-font-display: "Crimson Pro", Georgia, "Times New Roman", serif;
  --bay-font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, "Menlo", monospace;

  /* Neutral palette — softened for "阳光海洋" direction */
  --bay-ink:    #262626;
  --bay-ink-2:  #3d3d3d;
  --bay-ink-3:  #6b6b6b;
  --bay-ink-4:  #9c9a95;
  --bay-paper:  #ffffff;
  --bay-paper-2: #fdfcf8;
  --bay-paper-3: #f5f3ed;
  --bay-line:   #e3e1db;

  /* Accent — 阳光黄 (primary CTA + MOQ tag) */
  --bay-accent:      #ffb703;
  --bay-accent-dark: #fb8500;

  /* Accent 2 — 碧湖蓝 (secondary links, sample button, arrow on light) */
  --bay-accent-2:      #219ebc;
  --bay-accent-2-dark: #1a7f96;

  /* Spacing scale (multiples of 4px) */
  --bay-gap-xs:  8px;
  --bay-gap-sm:  16px;
  --bay-gap-md:  24px;
  --bay-gap-lg:  40px;
  --bay-gap-xl:  64px;
  --bay-gap-2xl: 96px;

  /* Section horizontal padding */
  --bay-pad-x:   56px;

  /* Container max width — matches design @ 1440px */
  --bay-max-w:   1440px;

  /* Radii — very flat */
  --bay-radius-sm: 2px;
  --bay-radius-md: 4px;
}

/* Mobile spacing overrides */
@media screen and (max-width: 749px) {
  :root {
    --bay-pad-x: 20px;
    --bay-gap-xl: 40px;
    --bay-gap-2xl: 56px;
  }
}

/* ============================================================
   Container helper — full-bleed section with capped inner width
   Usage:
     <section class="bay-section">
       <div class="bay-container">...</div>
     </section>
   ============================================================ */

.bay-section {
  font-family: var(--bay-font-sans);
  color: var(--bay-ink);
  background: var(--bay-paper);
}

.bay-container {
  max-width: var(--bay-max-w);
  margin: 0 auto;
  padding: 0 var(--bay-pad-x);
  box-sizing: border-box;
}

/* ============================================================
   Typography primitives
   ============================================================ */

.bay-display {
  font-family: var(--bay-font-display);
  font-weight: 500;
  letter-spacing: -0.015em;
  line-height: 1.02;
  color: var(--bay-ink);
  margin: 0;
}

.bay-display--xl { font-size: 68px; }
.bay-display--lg { font-size: 56px; }
.bay-display--md { font-size: 40px; }
.bay-display--sm { font-size: 34px; letter-spacing: -0.012em; }
.bay-display--xs { font-size: 28px; letter-spacing: -0.010em; }

@media screen and (max-width: 989px) {
  .bay-display--xl { font-size: 48px; }
  .bay-display--lg { font-size: 40px; }
  .bay-display--md { font-size: 32px; }
  .bay-display--sm { font-size: 28px; }
}

@media screen and (max-width: 749px) {
  .bay-display--xl { font-size: 36px; }
  .bay-display--lg { font-size: 32px; }
  .bay-display--md { font-size: 26px; }
  .bay-display--sm { font-size: 22px; }
  .bay-display--xs { font-size: 20px; }
}

.bay-italic {
  font-style: italic;
  font-weight: 400;
}

.bay-body {
  font-family: var(--bay-font-sans);
  font-size: 17px;
  line-height: 1.55;
  color: var(--bay-ink-2);
  margin: 0;
}

.bay-body--sm { font-size: 15px; }
.bay-body--xs { font-size: 13px; color: var(--bay-ink-3); }

.bay-eyebrow {
  font-family: var(--bay-font-mono);
  font-size: 11px;
  letter-spacing: 0.2em;
  color: var(--bay-ink-3);
  text-transform: uppercase;
  margin: 0;
}

.bay-meta-label {
  font-family: var(--bay-font-sans);
  font-size: 11px;
  letter-spacing: 0.05em;
  color: var(--bay-ink-3);
  text-transform: uppercase;
}

.bay-mono {
  font-family: var(--bay-font-mono);
  font-size: 10px;
  letter-spacing: 0.12em;
}

/* ============================================================
   Buttons
   ============================================================ */

.bay-btn {
  font-family: var(--bay-font-sans);
  font-weight: 500;
  border: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  letter-spacing: 0.05em;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
  text-decoration: none;
  box-sizing: border-box;
}

.bay-btn--sm { font-size: 12px; padding: 8px 14px;  border-radius: var(--bay-radius-sm); }
.bay-btn--md { font-size: 13px; padding: 12px 20px; border-radius: var(--bay-radius-sm); }
.bay-btn--lg { font-size: 14px; padding: 16px 28px; border-radius: var(--bay-radius-sm); }

.bay-btn--primary { background: var(--bay-accent-2); color: var(--bay-paper); }
.bay-btn--primary:hover { background: var(--bay-accent-2-dark); }

.bay-btn--accent { background: var(--bay-accent); color: #fff; }
.bay-btn--accent:hover { background: var(--bay-accent-dark); }

.bay-btn--ghost {
  background: transparent;
  color: var(--bay-ink);
  border: 1px solid var(--bay-ink);
}
.bay-btn--ghost:hover { background: var(--bay-ink); color: #fff; }

.bay-btn--light {
  background: var(--bay-paper);
  color: var(--bay-ink);
  border: 1px solid var(--bay-line);
}
.bay-btn--light:hover { border-color: var(--bay-ink); }

.bay-btn--on-dark {
  background: #fff;
  color: var(--bay-ink);
}
.bay-btn--on-dark:hover { background: var(--bay-paper-2); }

/* Arrow icon inside buttons */
.bay-btn__arrow {
  width: 14px;
  height: 14px;
  display: inline-block;
}

/* ============================================================
   Tag / badge
   ============================================================ */

.bay-tag {
  font-family: var(--bay-font-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 4px 8px;
  background: var(--bay-paper-2);
  color: var(--bay-ink);
  border-radius: var(--bay-radius-sm);
  display: inline-block;
}
.bay-tag--on-dark {
  background: rgba(255,255,255,0.10);
  color: #fff;
}
.bay-tag--on-paper {
  background: var(--bay-paper);
  color: var(--bay-ink);
}

/* ============================================================
   ProductPlaceholder — striped SVG-like fallback
   (for sections that haven't been wired to real images yet)
   ============================================================ */

.bay-placeholder {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  background:
    repeating-linear-gradient(
      135deg,
      #edeae3 0 14px,
      #e3e0d8 14px 28px
    );
}
.bay-placeholder--dark {
  background:
    repeating-linear-gradient(
      135deg,
      #2a2d33 0 14px,
      #32353c 14px 28px
    );
}
.bay-placeholder--1-1  { aspect-ratio: 1 / 1; }
.bay-placeholder--4-5  { aspect-ratio: 4 / 5; }
.bay-placeholder--16-9 { aspect-ratio: 16 / 9; }

.bay-placeholder__label {
  font-family: var(--bay-font-mono);
  font-size: 10px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: rgba(40,35,28,0.5);
  padding: 4px 10px;
  background: rgba(255,255,255,0.7);
  border-radius: var(--bay-radius-sm);
}

.bay-placeholder--dark .bay-placeholder__label {
  color: rgba(255,255,255,0.55);
  background: rgba(0,0,0,0.3);
}

/* ============================================================
   Dawn overrides — make header/footer/announcement bar match
   the BaystorySupply redesign (Direction A).
   ============================================================ */

/* Global: apply Inter to everything (Dawn's body/display are overridden) */
body,
.header,
.header__menu-item,
.footer,
.footer-block,
.footer-block__heading,
.footer-block__details-content,
.footer__copyright,
.copyright__content,
.announcement-bar__message,
.predictive-search,
.cart-drawer,
.header__search,
.menu-drawer,
.rte,
.rte p, .rte li, .rte td, .rte th, .rte dt, .rte dd,
.main-page-title,
.page-title,
.article-template__title,
.article-template__content,
.field__input,
.select__select,
.button,
.link,
.form__label {
  font-family: var(--bay-font-sans) !important;
}

/* Display headings use Fraunces inside Dawn's native sections when .bay-display isn't available */
.h0, .h1, .h2, h1, h2,
.main-page-title,
.page-title,
.article-template__title,
.rte h1, .rte h2 {
  font-family: var(--bay-font-display) !important;
  letter-spacing: -0.01em;
  font-weight: 500;
  color: var(--bay-ink);
}

/* Mono eyebrows / taglines */
.rte .tag, .rte [class*="eyebrow"], .article-card__info .caption-with-letter-spacing {
  font-family: var(--bay-font-mono) !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-size: 11px;
  color: var(--bay-ink-3);
}

/* Header — tighter, more editorial */
.header {
  padding-top: 22px;
  padding-bottom: 22px;
}
.header__menu-item {
  font-size: 13px;
  color: var(--bay-ink-2);
  letter-spacing: 0.02em;
  font-weight: 500;
}
.header__menu-item:hover { color: var(--bay-ink); }

/* Footer — warm cream background */
.footer {
  background: var(--bay-paper-2);
  color: var(--bay-ink-2);
  border-top: 0;
}
.footer a, .footer-block__heading {
  color: var(--bay-ink-2) !important;
}
.footer-block__heading {
  font-size: 11px !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bay-ink-3) !important;
}

/* Body base style on all pages */
body {
  background: var(--bay-paper);
  color: var(--bay-ink);
}

/* ============================================================
   Content pages (About, Contact, Customize, FAQs, Policies,
   Blog article) — unify body typography + color with bay system.
   ============================================================ */

.rte {
  color: var(--bay-ink-2);
  font-size: 15px;
  line-height: 1.65;
}
.rte p { margin: 0 0 16px; }
.rte h1 { font-size: 42px; margin: 32px 0 16px; }
.rte h2 { font-size: 32px; margin: 32px 0 14px; }
.rte h3 { font-size: 22px; margin: 24px 0 10px; font-weight: 500; color: var(--bay-ink); }
.rte h4 { font-size: 17px; margin: 20px 0 8px; font-weight: 500; color: var(--bay-ink); font-family: var(--bay-font-sans); }
.rte a {
  color: var(--bay-accent);
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}
.rte a:hover { color: var(--bay-accent-dark); }
.rte strong, .rte b { font-weight: 600; color: var(--bay-ink); }
.rte blockquote {
  border-left: 2px solid var(--bay-accent);
  padding: 4px 20px;
  margin: 20px 0;
  font-style: italic;
  color: var(--bay-ink-2);
}
.rte ul, .rte ol { padding-left: 24px; margin: 0 0 16px; }
.rte li { margin-bottom: 6px; }
.rte table {
  border-collapse: collapse;
  width: 100%;
  margin: 20px 0;
  font-size: 14px;
}
.rte th, .rte td {
  padding: 12px 16px;
  border-bottom: 1px solid var(--bay-line);
  text-align: left;
}
.rte th,
.rte .cp-page th,
.cp-page th {
  background: var(--bay-paper-2) !important;
  color: var(--bay-ink) !important;
  font-weight: 500 !important;
  font-family: var(--bay-font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--bay-line) !important;
}
.rte .cp-page td,
.cp-page td {
  padding: 14px 16px !important;
  border-bottom: 1px solid var(--bay-line) !important;
  vertical-align: top;
  font-size: 14px;
  color: var(--bay-ink-2);
}
.rte .cp-page table,
.cp-page table {
  border: 1px solid var(--bay-line);
  border-radius: var(--bay-radius-sm);
  overflow: hidden;
}
.cp-note {
  color: var(--bay-ink-3) !important;
  margin-top: 20px !important;
  font-size: 13px;
  line-height: 1.6;
}

/* Page title (About, Contact, Customize, FAQs, etc.) */
.main-page-title,
.page-title {
  font-family: var(--bay-font-display) !important;
  font-size: 56px !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em;
  color: var(--bay-ink);
  margin: 0 0 32px;
  line-height: 1.05;
}
@media screen and (max-width: 989px) {
  .main-page-title, .page-title { font-size: 40px !important; }
}
@media screen and (max-width: 749px) {
  .main-page-title, .page-title { font-size: 32px !important; }
}

/* ============================================================
   Article / blog styling
   ============================================================ */

.article-template__title {
  font-family: var(--bay-font-display) !important;
  font-size: 48px !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em;
  color: var(--bay-ink);
  line-height: 1.05;
}
@media screen and (max-width: 749px) {
  .article-template__title { font-size: 32px !important; }
}
.article-template__hero-container img { border-radius: var(--bay-radius-sm); }

/* Blog card list styling */
.blog__title a,
.article-card__title,
.article-card-wrapper .card__heading a {
  font-family: var(--bay-font-sans) !important;
  color: var(--bay-ink) !important;
  font-weight: 500;
  letter-spacing: 0;
}
.article-card-wrapper .card__heading {
  font-family: var(--bay-font-sans) !important;
}
.article-card .caption-with-letter-spacing,
.article-card__info span {
  font-family: var(--bay-font-mono) !important;
  font-size: 11px;
  letter-spacing: 0.1em;
  color: var(--bay-ink-3);
  text-transform: uppercase;
}

/* ============================================================
   Buttons — unify Dawn .button with bay styling
   ============================================================ */

.button,
.shopify-challenge__button {
  font-family: var(--bay-font-sans) !important;
  font-weight: 500;
  font-size: 13px;
  letter-spacing: 0.05em;
  padding: 14px 24px;
  border-radius: var(--bay-radius-sm);
  text-transform: none;
  min-height: 0;
  min-width: 0;
  box-shadow: none;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.button:not(.button--tertiary):not(.button--secondary),
.shopify-challenge__button {
  background: var(--bay-accent-2) !important;
  color: var(--bay-paper) !important;
  border: 0 !important;
}
.button:not(.button--tertiary):not(.button--secondary):hover,
.shopify-challenge__button:hover {
  background: var(--bay-accent-2-dark) !important;
}
.button--secondary {
  background: transparent !important;
  color: var(--bay-ink) !important;
  border: 1px solid var(--bay-ink) !important;
}
.button--secondary:hover {
  background: var(--bay-ink) !important;
  color: var(--bay-paper) !important;
}

/* ============================================================
   Forms (Contact page, newsletter, search)
   ============================================================ */

.field__input,
.customer input[type="text"],
.customer input[type="email"],
.customer input[type="password"],
.customer textarea,
.cart__footer input,
textarea.field__input,
select.select__select {
  font-family: var(--bay-font-sans) !important;
  font-size: 14px !important;
  background: var(--bay-paper) !important;
  border: 1px solid var(--bay-line) !important;
  border-radius: var(--bay-radius-sm) !important;
  color: var(--bay-ink) !important;
  box-shadow: none !important;
}
.field__input:focus,
textarea.field__input:focus,
select.select__select:focus {
  border-color: var(--bay-ink) !important;
  box-shadow: 0 0 0 1px var(--bay-ink) !important;
}
.field__label,
.form__label {
  font-family: var(--bay-font-sans) !important;
  color: var(--bay-ink-3) !important;
  font-size: 13px !important;
  letter-spacing: 0;
}
.field::after, .field::before { display: none !important; }

/* ============================================================
   Cart page polish
   ============================================================ */

.cart-items, .cart-items thead th {
  font-family: var(--bay-font-sans);
}
.cart__dynamic-checkout-buttons button {
  border-radius: var(--bay-radius-sm) !important;
}
.cart__footer .totals__total-value,
.cart__footer .totals__subtotal-value {
  font-family: var(--bay-font-display);
  font-weight: 500;
  color: var(--bay-ink);
}

/* ============================================================
   Links (inline text links, breadcrumbs, footer links, etc.)
   ============================================================ */

a.link, a.link--text { transition: color 0.15s; }

/* ============================================================
   Footer link sizing (keep navigation readable)
   ============================================================ */

.footer-block__details-content li a,
.footer-block__details-content p {
  font-size: 13px;
  color: var(--bay-ink-2) !important;
  line-height: 1.7;
}
.footer-block__details-content li a:hover {
  color: var(--bay-ink) !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Copyright / disclaimer row */
.footer__copyright,
.copyright__content {
  font-family: var(--bay-font-mono) !important;
  font-size: 11px;
  letter-spacing: 0.06em;
  color: var(--bay-ink-3) !important;
}

/* ============================================================
   Header width — match bay sections (1440px with 56px padding)
   ============================================================ */

.shopify-section-group-header-group .header.page-width,
.shopify-section-group-header-group .header-wrapper .page-width,
.shopify-section-group-header-group .header {
  max-width: var(--bay-max-w) !important;
  padding-left: var(--bay-pad-x) !important;
  padding-right: var(--bay-pad-x) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}

/* The header wrapper (full-width background container) stays unbounded,
   but its inner .page-width child is capped at 1440. */
.shopify-section-group-header-group .header-wrapper {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

/* ============================================================
   Universal page-width override — every Dawn .page-width
   container is pinned to the bay grid (1440px max + 56px padding)
   so footer, customization-pricing, related-products, blog,
   cart, search, collection-list etc. all line up with the
   header and bay-* sections.

   Excludes .page-width--narrow (Dawn's reading-width container
   used by article body, page templates) so long-form text
   stays readable.
   ============================================================ */

.page-width:not(.page-width--narrow),
product-recommendations.related-products {
  max-width: var(--bay-max-w) !important;
  padding-left: var(--bay-pad-x) !important;
  padding-right: var(--bay-pad-x) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}

/* CMS page templates (About, Contact, Customize, FAQs, Policies) —
   Dawn wraps them in .page-width--narrow with 1200px + 80px padding,
   which makes content start 280px from viewport edge (header is 56px).
   Override to use the same bay grid (1440 + 56px) so page title + tables
   line up with header nav/logo. Uses [class*="__main-padding"] to match
   these CMS pages only (article templates don't have this suffix). */
main .page-width.page-width--narrow[class*="__main-padding"] {
  max-width: var(--bay-max-w) !important;
  padding-left: var(--bay-pad-x) !important;
  padding-right: var(--bay-pad-x) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}

/* Section-main-page.css caps .page-width--narrow .rte at 62rem — release
   that cap on CMS pages so the rte table/content can fill the bay grid. */
main .page-width.page-width--narrow[class*="__main-padding"] .rte,
main .page-width.page-width--narrow[class*="__main-padding"] .rte img {
  max-width: 100% !important;
}

/* .page-width--narrow outside CMS main (article body, article social) keeps
   Dawn's reading-width defaults. */

/* ============================================================
   Announcement bars — scheme-aware (two bars with different vibes)
   - color-scheme-4 (top)    → black + mono + uppercase (info bar)
   - color-scheme-2 (bottom) → cream + mono + uppercase (CTA with link)
   ============================================================ */

/* Reset any inherited background on the inner containers so the
   scheme-specific rules below can take over cleanly */
.shopify-section-group-header-group .announcement-bar-section {
  background: transparent !important;
  border: 0 !important;
}
.shopify-section-group-header-group .utility-bar,
.shopify-section-group-header-group .announcement-bar {
  background: transparent !important;
  border: 0 !important;
}

/* Kill Dawn's top/bottom border add-ons */
.shopify-section-group-header-group .utility-bar--bottom-border,
.shopify-section-group-header-group .announcement-bar.show-line-separator {
  border: 0 !important;
}

/* Layout: center message, kill 3-col grid empty cells */
.shopify-section-group-header-group .utility-bar__grid,
.shopify-section-group-header-group .utility-bar__grid--1-col,
.shopify-section-group-header-group .utility-bar__grid--2-col,
.shopify-section-group-header-group .utility-bar__grid--3-col {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  grid-template-columns: none !important;
  max-width: none !important;
}
.shopify-section-group-header-group .localization-wrapper,
.shopify-section-group-header-group .utility-bar__grid > div:empty {
  display: none !important;
}

/* --- TOP BAR (scheme-4 = black info bar) --- */
.shopify-section-group-header-group .utility-bar.color-scheme-4 {
  background: var(--bay-ink) !important;
  color: var(--bay-paper) !important;
}
.shopify-section-group-header-group .utility-bar.color-scheme-4 .announcement-bar__message {
  font-family: var(--bay-font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 10px 20px !important;
  color: var(--bay-paper) !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  text-align: center !important;
}
.shopify-section-group-header-group .utility-bar.color-scheme-4 .announcement-bar__link,
.shopify-section-group-header-group .utility-bar.color-scheme-4 .announcement-bar__link * {
  color: var(--bay-paper) !important;
}
.shopify-section-group-header-group .utility-bar.color-scheme-4 .announcement-bar__link .icon-arrow {
  display: none !important;
}

/* --- BOTTOM BAR (scheme-2 = cream CTA bar with link) --- */
.shopify-section-group-header-group .utility-bar.color-scheme-2 {
  background: var(--bay-paper-2) !important;
  color: var(--bay-ink-2) !important;
  border: 0 !important;
}
.shopify-section-group-header-group .utility-bar.color-scheme-2 .announcement-bar__message {
  font-family: var(--bay-font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 10px 20px !important;
  color: var(--bay-ink-2) !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  text-align: center !important;
}
.shopify-section-group-header-group .utility-bar.color-scheme-2 .announcement-bar__link,
.shopify-section-group-header-group .utility-bar.color-scheme-2 .announcement-bar__link .announcement-bar__message {
  color: var(--bay-ink-2) !important;
  transition: color 0.15s ease;
}
.shopify-section-group-header-group .utility-bar.color-scheme-2 .announcement-bar__link:hover,
.shopify-section-group-header-group .utility-bar.color-scheme-2 .announcement-bar__link:hover .announcement-bar__message {
  color: var(--bay-ink) !important;
}
.shopify-section-group-header-group .utility-bar.color-scheme-2 .announcement-bar__link .icon-arrow {
  color: var(--bay-ink-2) !important;
  width: 12px !important;
  height: 10px !important;
  display: inline-block !important;
  margin-left: 6px;
}

/* Fix: vertical centering of announcement bar message
   Override Dawn's h5 class margins and ensure flex center alignment */
.shopify-section-group-header-group .utility-bar {
  display: flex !important;
  align-items: stretch !important;
  min-height: 0 !important;
}
.shopify-section-group-header-group .utility-bar__grid {
  width: 100% !important;
  min-height: 0 !important;
}
.shopify-section-group-header-group .announcement-bar {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
}
.shopify-section-group-header-group .announcement-bar__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
}
.shopify-section-group-header-group .announcement-bar__message.h5,
.shopify-section-group-header-group .announcement-bar__message {
  margin: 0 !important;
  padding: 11px 20px !important;
  line-height: 1.2 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px;
}
.shopify-section-group-header-group .announcement-bar__message span,
.shopify-section-group-header-group .announcement-bar__message .icon-arrow {
  display: inline-flex;
  align-items: center;
}



/* Layout: header__heading becomes a flex container so pills sit inline with logo */
.shopify-section-group-header-group .header__heading {
  display: inline-flex !important;
  align-items: center;
  gap: 0;
  flex-wrap: nowrap;
}

/* Shared pill base */
/* Solid variant — MOQ badge */
/* Ghost variant — Wholesale CTA */
/* Desktop visibility */
@media screen and (min-width: 990px) {
  }

/* On narrower desktops (990-1199px), only show the MOQ pill to save space */
@media screen and (min-width: 990px) and (max-width: 1199px) {
  }



/* Layout: make header__heading a flex container so pills sit inline with logo */
.shopify-section-group-header-group .header__heading {
  display: inline-flex !important;
  align-items: center;
  gap: 0;
  flex-wrap: nowrap;
}

/* Shared pill base — larger, bolder than before */
/* Solid variant — MOQ black pill */
/* CTA variant — TERRACOTTA accent, attention-grabbing */
/* Desktop visibility */
@media screen and (min-width: 990px) {
  }

/* On narrower desktops (990-1199px), only show the MOQ pill */
@media screen and (min-width: 990px) and (max-width: 1199px) {
  }



/* Layout: header__heading becomes flex so tag-stack sits inline with logo */
.shopify-section-group-header-group .header__heading {
  display: inline-flex !important;
  align-items: center;
  gap: 0;
  flex-wrap: nowrap;
}

/* Vertical stack wrapper */
@media screen and (min-width: 990px) {
  }

/* Shared pill base */
/* Solid — MOQ badge */
/* Terracotta — Wholesale CTA */
/* Logo + tags cluster — flush LEFT of its grid cell, not centered */
.shopify-section-group-header-group .header__heading {
  display: inline-flex !important;
  align-items: center !important;
  justify-self: start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;   /* push nav/icons to the right */
  gap: 0;
  flex-wrap: nowrap;
}

/* Logo link: no auto-margin that could shift it */
.shopify-section-group-header-group .header__heading .header__heading-link,
.shopify-section-group-header-group .header__heading-link {
  margin-left: -0.75rem !important;   /* restore Dawn's padding-compensation */
  margin-right: 0 !important;
}

/* Tag stack container — left-aligned column */
@media screen and (min-width: 990px) {
  }

/* Shared pill base */
/* Solid — MOQ badge */
/* Terracotta — Wholesale CTA */



/* Logo + info cluster — flush LEFT of its grid cell */
.shopify-section-group-header-group .header__heading {
  display: inline-flex !important;
  align-items: center !important;
  justify-self: start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  gap: 0;
  flex-wrap: nowrap;
}

/* Info wrapper — horizontal, vertically centered with logo */
@media screen and (min-width: 990px) {
  }

/* Each item — text + vertical divider on the LEFT */
/* First item — no left divider */
/* CTA emphasis — terracotta accent on the clickable one */
/* On narrower desktops (990–1199px), hide the CTA to save space */
@media screen and (min-width: 990px) and (max-width: 1199px) {
  }



/* Accent dot before each item — visual anchor */
/* CTA emphasis — terracotta dot, terracotta text, underline */
/* On narrower desktops (990–1199px), hide the CTA to save space */
@media screen and (min-width: 990px) and (max-width: 1199px) {
  }



/* Logo cluster — flush LEFT of its grid cell */
.shopify-section-group-header-group .header__heading {
  display: inline-flex !important;
  align-items: center !important;
  justify-self: start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  gap: 10px;
  flex-wrap: nowrap;
}

/* Shared pill base — solid black */
/* First pill has extra left margin from the logo */
.shopify-section-group-header-group .header__heading > /* CTA pill — same black but subtly interactive */
/* Desktop visibility */
@media screen and (min-width: 990px) {
  }

/* On narrower desktops (990–1199px), only show MOQ pill */
@media screen and (min-width: 990px) and (max-width: 1199px) {
  }



/* Logo cluster — bottom-align so pills sit next to "Baystory" text baseline */
.shopify-section-group-header-group .header__heading {
  display: inline-flex !important;
  align-items: flex-end !important;
  justify-self: start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  gap: 20px;
  flex-wrap: nowrap;
  padding-bottom: 0 !important;
}

/* Icons cluster — bottom-align AND shift down 6px so the search-magnifier
   SVG's visible bottom matches the logo bottom (the wrapper has 12px inner
   padding around the 20px SVG; cart icon is 44px solid so it will sit
   slightly lower, which is acceptable given its taller shape). */
.shopify-section-group-header-group .header__icons {
  align-self: flex-end !important;
  transform: translateY(6px);
}

/* The combined black pill */
/* Internal divider — subtle vertical line between MOQ and CTA */
/* Arrow icon */
/* Desktop visibility */
@media screen and (min-width: 990px) {
  }


/* ============================================================
   Header pills — two pills next to logo
   LEFT: MOQ badge in terracotta (brand accent)
   RIGHT: Wholesale CTA in black (clickable → WhatsApp)
   Bottom-aligned with the logo wordmark baseline.
   ============================================================ */

/* Logo cluster — bottom-align so pills sit next to "Baystory" text baseline */
.shopify-section-group-header-group .header__heading {
  display: inline-flex !important;
  align-items: flex-end !important;
  justify-self: start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  gap: 10px;
  flex-wrap: nowrap;
}

/* Shared pill base */
.bay-header-pill {
  display: none;
  align-items: center;
  gap: 8px;
  font-family: var(--bay-font-sans);
  font-size: 10.5px;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  font-weight: 600;
  padding: 7px 13px;
  border-radius: 2px;
  line-height: 1.2;
  white-space: nowrap;
  text-decoration: none;
  color: var(--bay-paper);
  margin-bottom: 4px;
  transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

/* First pill — add margin from logo */
.shopify-section-group-header-group .header__heading > .bay-header-pill:first-of-type {
  margin-left: 20px;
}

/* MOQ pill — terracotta accent */
.bay-header-pill--accent {
  background: var(--bay-accent);
  border: 1px solid var(--bay-accent);
  color: var(--bay-paper);
}

/* CTA pill — 碧湖蓝 (from "阳光海洋" palette) */
.bay-header-pill--cta {
  background: var(--bay-accent-2);
  border: 1px solid var(--bay-accent-2);
  color: var(--bay-paper);
}
.bay-header-pill--cta:hover {
  background: var(--bay-accent-2-dark);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(33, 158, 188, 0.35);
}
.bay-header-pill--cta:hover .bay-header-pill__arrow {
  transform: translateX(3px);
}

.bay-header-pill__arrow {
  width: 11px;
  height: 8px;
  display: inline-block;
  flex-shrink: 0;
  margin-left: 2px;
  transition: transform 0.15s ease;
}

@media screen and (min-width: 990px) {
  .bay-header-pill { display: inline-flex; }
}

/* Narrow desktops — hide CTA to save space */
@media screen and (min-width: 990px) and (max-width: 1199px) {
  .bay-header-pill--cta { display: none; }
}

/* ============================================================
   Mobile & narrow viewports (<990px) — revert logo to centered.
   The flush-LEFT treatment above exists so pills can sit beside
   the wordmark, but pills are hidden below 990px, so we fall
   back to Dawn's centered mobile default here.
   ============================================================ */
@media screen and (max-width: 989px) {
  .shopify-section-group-header-group .header__heading {
    justify-self: center !important;
    justify-content: center !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .shopify-section-group-header-group .header__heading .header__heading-link,
  .shopify-section-group-header-group .header__heading-link {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .shopify-section-group-header-group .header__icons {
    align-self: center !important;
    transform: none !important;
  }
}

/* ============================================================
   Narrow-screen pill bar — renders MOQ + Wholesale pills above
   the header on <990px (where the inline logo-adjacent pills
   are hidden). Invisible on desktop.
   ============================================================ */
.bay-narrow-pill-bar { display: none; }

@media screen and (max-width: 989px) {
  .bay-narrow-pill-bar {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 6px;
    padding: 10px 1.5rem;
    flex-wrap: nowrap;
    border-bottom: 0.1rem solid rgba(var(--color-foreground), 0.08);
  }
  .bay-narrow-pill-bar .bay-header-pill {
    display: inline-flex;
    font-size: 10px;
    padding: 5px 10px;
    margin-bottom: 0;
  }
  /* Stack order: Wholesale CTA on top, MOQ underneath */
  .bay-narrow-pill-bar .bay-header-pill--cta { order: 1; }
  .bay-narrow-pill-bar .bay-header-pill--accent { order: 2; }
  /* Cancel the wide-screen first-pill left margin so pills sit flush
     against the bar's left padding. */
  .shopify-section-group-header-group
    .bay-narrow-pill-bar
    .bay-header-pill:first-of-type {
    margin-left: 0;
  }
}
/* ============================================================
   Footer — Design-A treatment (Bellroy/Away aesthetic).
   Restyles Dawn's existing footer; menu content stays whatever
   is configured in Shopify admin — we don't touch liquid or
   the block structure, only visual presentation.
   ============================================================ */

.footer {
  background: #f7f5f1 !important;
  font-family: var(--bay-font-sans);
  margin-top: 0 !important;
}

.footer > .page-width {
  max-width: var(--bay-max-w);
  padding-left: var(--bay-pad-x);
  padding-right: var(--bay-pad-x);
}

/* Section padding — 64 top / 40 bottom on desktop */
@media screen and (min-width: 750px) {
  .footer[class*="section-"][class*="-padding"] {
    padding-top: 64px !important;
    padding-bottom: 40px !important;
  }
}

/* Top block area — brand (1.4fr) + 4 menu columns (1fr each) */
.footer__content-top {
  padding-bottom: 56px;
}

@media screen and (min-width: 990px) {
  .footer__blocks-wrapper {
    grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr !important;
    column-gap: 40px !important;
    row-gap: 40px !important;
  }
  /* Adapt to actual block count — the 5-col grid above assumes brand +
     4 menus; when fewer blocks are configured, collapse to the real count. */
  .footer__blocks-wrapper:has(> .footer-block:nth-child(3):last-child) {
    grid-template-columns: 1.4fr 1fr 1fr !important;
  }
  .footer__blocks-wrapper:has(> .footer-block:nth-child(4):last-child) {
    grid-template-columns: 1.4fr 1fr 1fr 1fr !important;
  }
  .footer__blocks-wrapper:has(> .footer-block:nth-child(2):last-child) {
    grid-template-columns: 1.4fr 1fr !important;
  }
}

/* Bay-brand column — logo wordmark + tagline on the left */
.footer-block--bay-brand__link {
  display: inline-block;
  text-decoration: none;
}

.footer-block--bay-brand__logo {
  display: block;
  width: 60px;
  height: auto;
}

.footer-block--bay-brand__name {
  font-family: var(--bay-font-sans);
  font-size: 18px;
  font-weight: 600;
  color: var(--bay-ink);
}

.footer-block--bay-brand__tagline {
  font-family: var(--bay-font-sans);
  font-size: 12.5px;
  color: var(--bay-ink-3);
  line-height: 1.6;
  max-width: 260px;
  margin: 16px 0 0 0;
}

@media screen and (max-width: 989px) {
  .footer-block--bay-brand__tagline {
    max-width: none;
  }
}

/* Column heading — 11px uppercase, tight letter-spacing */
.footer-block .footer-block__heading,
.footer-block__heading.inline-richtext {
  font-family: var(--bay-font-sans) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--bay-ink-3) !important;
  margin: 0 0 16px 0 !important;
  line-height: 1 !important;
}

/* Link list items — 13px ink2, minimal padding */
.footer-block__details-content {
  margin-top: 0;
}

.footer-block__details-content .list-menu__item--link {
  font-family: var(--bay-font-sans);
  font-size: 13px !important;
  color: var(--bay-ink-2) !important;
  padding: 4px 0 !important;
  line-height: 1.45 !important;
  text-decoration: none;
}

.footer-block__details-content .list-menu__item--link:hover {
  color: var(--bay-ink) !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Brand block — tagline / description typography */
.footer-block__brand-info .rte,
.footer-block__brand-info .rte p {
  font-size: 12.5px !important;
  color: var(--bay-ink-3) !important;
  line-height: 1.6 !important;
  max-width: 260px;
  margin: 16px 0 0 0;
}

.footer-block__brand-info .footer-block__heading {
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: -0.1px !important;
  text-transform: none !important;
  color: var(--bay-ink) !important;
  margin-bottom: 12px !important;
}

/* Bottom bar — thin divider + small caption */
.footer__content-bottom {
  border-top: 1px solid var(--bay-line) !important;
  padding-top: 24px !important;
  margin-top: 0 !important;
}

.footer__content-bottom-wrapper {
  padding-top: 0;
  padding-bottom: 0;
  border-top: 0 !important;
}

.footer__copyright,
.footer__copyright .copyright__content,
.footer__copyright .copyright__content a,
.footer__copyright small {
  font-family: var(--bay-font-sans) !important;
  font-size: 11px !important;
  color: var(--bay-ink-3) !important;
  letter-spacing: 0.2px !important;
}

.footer__copyright .copyright__content a:hover {
  color: var(--bay-ink) !important;
}

/* Mobile — compact spacing */
@media screen and (max-width: 989px) {
  .footer[class*="section-"][class*="-padding"] {
    padding-top: 40px !important;
    padding-bottom: 24px !important;
  }
  .footer__content-top {
    padding-bottom: 32px;
  }
  .footer-block__brand-info .rte,
  .footer-block__brand-info .rte p {
    max-width: none;
  }
}
/* ============================================================
   WhatsApp chat app (third-party) — restyle to match Bay palette.
   App injects DOM with .wa__ prefixed classes; its own CSS loads
   late so we need !important to win the cascade.
   ============================================================ */

/* Hide the app's "Need Help?" callout bubble — it duplicates the
   Wholesale Inquiry pill and crowds the bottom-right corner. */
.wa__btn_popup_txt {
  display: none !important;
}

/* Shrink the floating WhatsApp button and recolor to official dark teal */
.wa__btn_popup_icon {
  background: #075E54 !important;
  width: 50px !important;
  height: 50px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.14) !important;
  transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease !important;
}
.wa__btn_popup_icon:hover {
  background: #0a7267 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18) !important;
}
.wa__btn_popup_icon::after,
.wa__btn_popup_icon::before {
  /* The app draws its WhatsApp icon via inline style background-image
     sized to the button; shrinking the button also scales its icon. */
}

/* Chat popup header when opened — match same dark teal */
.wa__popup_heading {
  background: #075E54 !important;
}
.wa__popup_title { color: #ffffff !important; }
.wa__popup_intro { color: rgba(255, 255, 255, 0.78) !important; }

/* Typography inside the popup → Inter for consistency */
.wa__widget_container,
.wa__popup_heading,
.wa__popup_content,
.wa__popup_txt,
.wa__member_name,
.wa__member_duty,
.wa__popup_notice {
  font-family: var(--bay-font-sans) !important;
}

/* ============================================================
   Mega-menu card uniformity — the dropdown on "Men's Bags" etc.
   renders each subcategory's collection featured image, which
   come in wildly different orientations (vertical backpack,
   horizontal belt bag, wide laptop sleeve). Switch to a square
   tile + contain + white padding so every bag shows fully with
   consistent visual scale.
   ============================================================ */
.mega-menu__card-media {
  aspect-ratio: 1 / 1 !important;
  background: var(--bay-paper) !important;
  padding: 16px;
  box-sizing: border-box;
}
.mega-menu__card-media img {
  object-fit: contain !important;
  padding: 0 !important;
}
/* cache-bump 1776945533 */
