/** Shopify CDN: Minification failed

Line 183:9 Unexpected ".404-page"

**/
/* ============================================================
   FIT-KEEPER — FK over Dawn-native pages.
   Collection · search · list-collections · page · blog · article ·
   404 · customer. Loaded globally; targets page-specific Dawn classes
   (inherently scoped) + safe-shared (.card / .title--primary / .button —
   verified NOT used by homepage FK sections or header/footer).
   Generic .title / .rte are scoped via .fk-page hook (page, 404) to spare
   the footer. Dawn html{font-size:62.5%} -> 1rem = 10px.
   ============================================================ */

/* ---------- page H1 titles (Dawn page heading class) ---------- */
.title--primary,
.article-template__title,
.main-page-title,
.collection-hero__title,
.fk-page .title,
.fk-page .h1,
.fk-page .h2 {
  font-family: var(--fk-font-head);
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.05;
  color: var(--fk-ink);
}

/* ---------- product / collection / article / blog cards (unify FK) ---------- */
.card__heading,
.card__heading a,
.card-information__text { font-family: var(--fk-font-head); font-weight: 400; color: var(--fk-ink); }
.card .price,
.card .price .price-item { font-family: var(--fk-font-display); color: var(--fk-ink); }
.card .card__inner,
.card--standard .card__inner { border-radius: var(--fk-r-lg); }
.card .media,
.card__media { border-radius: var(--fk-r); overflow: hidden; }
.card-wrapper { transition: transform 0.18s ease; }
@media (hover: hover) { .card-wrapper:hover { transform: translateY(-0.4rem); } }
.card__badge .badge {
  background: color-mix(in srgb, var(--fk-gold) 16%, white);
  color: color-mix(in srgb, var(--fk-gold) 62%, black);
  border-color: transparent;
}

/* ---------- buttons ----------
   v13 §2: theme.css `_button.scss` now owns the ONE global flat button (no shadow,
   unified hover/active, outline/ghost variants). The old `.button:not(...)` overrides
   here were (0,3,0)-specificity and clobbered our outline/ghost backgrounds site-wide —
   removed so every button (incl. Dawn-native collection/search pages) is consistent. */

/* ---------- facets / filters / sort (collection + search) ---------- */
.facets__heading,
.facets__summary,
.facet-filters__label,
.facets__price,
.facet-filters__sort { font-family: var(--fk-font-book); color: var(--fk-ink); }
.facets summary,
.facets__display,
.facet-checkbox { color: var(--fk-ink); }
.active-facets__button-wrapper,
.active-facets__button { border-radius: 999px; }
.facets .select__select,
.facet-filters__field .select__select { border-radius: var(--fk-r); border-color: var(--fk-line); }
.facets-vertical .facets__price .field__input,
.facets .field__input { border-radius: var(--fk-r); border-color: var(--fk-line); }

/* ---------- pagination ---------- */
.pagination__list { font-family: var(--fk-font-book); }
.pagination__item { color: var(--fk-ink); border-radius: var(--fk-r); }
.pagination__item--current,
.pagination__item[aria-current] { color: var(--fk-accent); }

/* ---------- empty states (collection / search) ---------- */
.collection--empty .title,
.search--empty .title,
.list-menu--inline .title { font-family: var(--fk-font-head); color: var(--fk-ink); }

/* ---------- search page ---------- */
.search__input.field__input { border-radius: var(--fk-r); border-color: var(--fk-line); font-family: var(--fk-font-body); }
.search__button { font-family: var(--fk-font-book); }
.predictive-search { border-radius: var(--fk-r-lg); border-color: var(--fk-line); }
.predictive-search__heading { font-family: var(--fk-font-head); color: var(--fk-muted); }

/* ---------- list-collections ---------- */
.collection-list__item .card__heading,
.collection-list__title { font-family: var(--fk-font-head); font-weight: 400; color: var(--fk-ink); }
.collection-list .card .media { border-radius: var(--fk-r-lg); }

/* ---------- blog ---------- */
.blog-articles__article .card__heading,
.article-card__title { font-family: var(--fk-font-head); font-weight: 400; }
.article-card__excerpt,
.blog-articles__article .rte { font-family: var(--fk-font-body); color: var(--fk-muted); }

/* ---------- article ---------- */
.article-template__title { letter-spacing: -0.02em; }
.article-template__content.rte,
.article-template .rte {
  font-family: var(--fk-font-body);
  line-height: 1.7;
  color: var(--fk-ink);
}
.article-template .rte a,
.article-template__link { color: var(--fk-accent); }
.article-template__social-sharing .share-button { color: var(--fk-muted); }

/* ---------- plain page (About) ---------- */
.fk-page .rte { font-family: var(--fk-font-body); line-height: 1.7; color: var(--fk-ink); }
.fk-page .rte a { color: var(--fk-accent); }

/* ---------- Shopify policy pages (/policies/*) ----------
   Shopify renders these with its own markup (.shopify-policy__*), so they are
   styled here to match the theme's legal page section (page-legal): same column,
   same heading scale, same reading rhythm, same air above the title and before
   the footer. */
.shopify-policy__container {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-pad);
  padding-block: clamp(4rem, 6vh, 9.6rem);
}
.shopify-policy__title,
.shopify-policy__body { max-width: 78rem; margin-inline: auto; }
.shopify-policy__title {
  text-align: start;
  margin-block-end: 4rem;
  padding-block-end: 2.8rem;
  border-block-end: 1px solid var(--color-border);
}
.shopify-policy__title h1 {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: clamp(3.2rem, 2rem + 3vw, 4.8rem);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0;
  color: var(--color-text);
}
.shopify-policy__body .rte {
  font-family: var(--font-base);
  font-size: 1.7rem;
  line-height: 1.85;
  color: var(--color-text);
  max-width: none;
}
.shopify-policy__body .rte > * + * { margin-block-start: 1.8rem; }
.shopify-policy__body .rte h2 { font-family: var(--font-display); font-weight: 400; font-size: 2.6rem; line-height: 1.25; margin-block-start: 4.8rem; }
.shopify-policy__body .rte h3 { font-family: var(--font-display); font-weight: 400; font-size: 2rem; line-height: 1.3; margin-block-start: 3.6rem; }
.shopify-policy__body .rte h4 { font-size: 1.7rem; font-weight: 700; margin-block-start: 2.8rem; }
.shopify-policy__body .rte h2:first-child,
.shopify-policy__body .rte h3:first-child,
.shopify-policy__body .rte > div > :first-child { margin-block-start: 0; }
.shopify-policy__body .rte h2 + p,
.shopify-policy__body .rte h3 + p,
.shopify-policy__body .rte h4 + p,
.shopify-policy__body .rte h2 + ul,
.shopify-policy__body .rte h3 + ul { margin-block-start: 1.2rem; }
.shopify-policy__body .rte > div > * + * { margin-block-start: 1.8rem; }
.shopify-policy__body .rte > div > h2 { margin-block-start: 4.8rem; }
.shopify-policy__body .rte > div > h2 + p,
.shopify-policy__body .rte > div > h2 + ul { margin-block-start: 1.2rem; }
.shopify-policy__body .rte p:empty { display: none; }
.shopify-policy__body .rte ul,
.shopify-policy__body .rte ol { padding-inline-start: 2.6rem; }
.shopify-policy__body .rte li + li { margin-block-start: 1rem; }
.shopify-policy__body .rte li > ul,
.shopify-policy__body .rte li > ol { margin-block-start: 1rem; }
.shopify-policy__body .rte a { color: var(--color-primary); text-decoration: underline; text-underline-offset: .25em; text-decoration-thickness: 1px; transition: color var(--transition); }
.shopify-policy__body .rte a:hover { color: var(--color-primary-600); }
.shopify-policy__body .rte strong { font-weight: 700; }
.shopify-policy__body .rte hr { border: 0; height: 1px; background: var(--color-border); margin-block: 3.2rem; }
.shopify-policy__body .rte table { width: 100%; border-collapse: collapse; font-size: 1.5rem; }
.shopify-policy__body .rte th,
.shopify-policy__body .rte td { padding: 1rem 1.2rem; border: 1px solid var(--color-border); text-align: start; }

/* ---------- 404 ---------- */
.fk-page.template-404 .title,
.fk-page .404-page { font-family: var(--fk-font-head); }

/* ---------- customer pages (login / register / account / addresses) ---------- */
.customer h1,
.customer h2,
.customer .order-number { font-family: var(--fk-font-head); font-weight: 400; color: var(--fk-ink); }
.customer .field__input,
.customer input[type='email'],
.customer input[type='password'],
.customer input[type='text'] { border-radius: var(--fk-r); border-color: var(--fk-line); font-family: var(--fk-font-body); }
.customer a { color: var(--fk-accent); }

/* ---------- header + announcement (FK branding) ---------- */
.announcement-bar { background: var(--fk-accent) !important; }
.announcement-bar__message { color: #fff; font-family: var(--fk-font-book); letter-spacing: 0.04em; }
.header__heading-link,
.header__heading-link .h2,
.header__heading-logo { font-family: var(--fk-font-head); }
.header__heading-link {
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--fk-ink);
  font-weight: 400;
}
.header__menu-item,
.header__active-menu-item,
.header .list-menu__item { font-family: var(--fk-font-book); }
.header__menu-item:hover,
.header__menu-item--active { color: var(--fk-accent); }
.header__icon { color: var(--fk-ink); }
.header__icon:hover { color: var(--fk-accent); }

/* ---------- a11y + motion ---------- */
.card-wrapper a:focus-visible,
.facets a:focus-visible,
.facets button:focus-visible,
.customer a:focus-visible,
.pagination__item:focus-visible { outline: 3px solid var(--fk-accent); outline-offset: 2px; border-radius: 0.4rem; }

@media (prefers-reduced-motion: reduce) {
  .card-wrapper { transition: none; }
}
