/** Shopify CDN: Minification failed

Line 346:21 Unexpected "*"

**/
/* ============================================
   BY BROOKS — Custom Theme Overrides
   Less, but better.
   ============================================ */

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0.01em;
  line-height: 1.7;
}

/* --- Typography --- */

h1, h2, h3, h4, h5, h6,
.h0, .h1, .h2, .h3, .h4, .h5 {
  letter-spacing: 0.03em;
  line-height: 1.15;
  font-weight: 400;
}

h1, .h0, .h1 {
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: calc(var(--font-heading-scale) * 2.4rem);
}

@media screen and (min-width: 750px) {
  h1, .h0, .h1 {
    font-size: calc(var(--font-heading-scale) * 3.6rem);
  }
}

h2, .h2 {
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: calc(var(--font-heading-scale) * 1.6rem);
}

@media screen and (min-width: 750px) {
  h2, .h2 {
    font-size: calc(var(--font-heading-scale) * 2rem);
  }
}

/* --- Links --- */

a {
  transition: opacity 0.2s ease;
}

a:hover {
  opacity: 0.7;
}

/* --- Buttons — quiet confidence --- */

.button,
.shopify-challenge__button,
button.shopify-payment-button__button--unbranded {
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-family: var(--font-body-family);
  font-size: 0.8rem;
  font-weight: 400;
  padding: 1.2rem 3rem;
  transition: opacity 0.2s ease;
  border-radius: 0;
}

@media screen and (min-width: 750px) {
  .button,
  .shopify-challenge__button,
  button.shopify-payment-button__button--unbranded {
    font-size: 0.8rem;
    padding: 1.3rem 3.6rem;
  }
}

.button:hover,
button.shopify-payment-button__button--unbranded:hover {
  opacity: 0.8;
}

.button--secondary {
  border-width: 1px;
}

/* --- Cards --- */

.card {
  border: none;
  background: transparent;
}

.card__content {
  padding: 1.2rem 0 0;
  text-align: center;
}

.card__heading {
  font-family: var(--font-body-family);
  font-size: 0.8rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 400;
  text-align: center;
}

.card-information {
  text-align: center;
}

/* --- Hide prices on homepage cards --- */

.shopify-section-group-footer-group + .shopify-section .card-information .price,
.card-information .price {
  display: none;
}

/* Show prices only on collection and product pages */
.template-collection .card-information .price,
.template-product .card-information .price,
.template-search .card-information .price {
  display: block;
  font-size: 0.8rem;
  letter-spacing: 0.02em;
  opacity: 0.5;
}

/* --- Hide currency codes --- */

.money .currency-code,
.currency-code {
  display: none;
}

/* --- Hide pagination and slider artifacts --- */

.slider-counter,
.slider-counter--dots,
.slider-counter--numbers,
[class*="slider-counter"],
.slider-buttons {
  display: none !important;
}

/* --- Mobile: stack product grid, no slider --- */

@media screen and (max-width: 749px) {
  .collection-list,
  .grid--peek,
  .slider {
    overflow: visible;
    scroll-snap-type: none;
  }

  .grid--peek .grid__item,
  .slider .grid__item {
    width: 100% !important;
    scroll-snap-align: none;
  }

  .featured-collection .grid {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}

/* --- Footer centering --- */

.footer__content-top {
  text-align: center;
}

.footer .newsletter-form {
  justify-content: center;
}

.footer__column {
  text-align: center;
}

.list-social {
  justify-content: center;
}

/* --- Images — gallery-framed --- */

.card .media {
  overflow: hidden;
  outline: 1px solid rgba(var(--color-foreground), 0.06);
}

.card .media img {
  transition: transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
  object-fit: cover;
}

.card:hover .media img {
  transform: scale(1.03);
}

.product__media img {
  transition: transform 0.4s ease;
}

/* --- Product page --- */

.product__title {
  font-family: var(--font-heading-family);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.product__text {
  max-width: 55ch;
}

/* --- Rich text / page content --- */

.rich-text__blocks.center {
  text-align: center;
  align-items: center;
  margin: 0 auto;
}

.rich-text__blocks.center .rich-text__text {
  margin-left: auto;
  margin-right: auto;
}

.rich-text__blocks.center .button {
  margin-left: auto;
  margin-right: auto;
}

.rte {
  font-size: 1.05rem;
  line-height: 1.8;
  max-width: 65ch;
  margin-left: auto;
  margin-right: auto;
}

.rte h2 {
  margin-top: 3rem;
  margin-bottom: 1rem;
}

.rte p {
  margin-bottom: 1.4rem;
}

/* --- Header --- */

.header__heading-logo {
  filter: invert(1);
}

.header__heading-link {
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 400;
}

.header__menu-item {
  font-size: 0.8rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 400;
}

/* --- Footer — minimal --- */

.footer {
  border-top: 1px solid rgba(var(--color-foreground), 0.06);
}

.footer__content-bottom {
  font-size: 0.7rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.3;
}

/* --- Scrollbar --- */

::-webkit-scrollbar {
  width: 4px;
}

::-webkit-scrollbar-track {
  background: rgb(var(--color-background));
}

::-webkit-scrollbar-thumb {
  background: rgba(var(--color-foreground), 0.1);
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(var(--color-foreground), 0.2);
}

/* --- Selection --- */

::selection {
  background: rgba(var(--color-foreground), 0.1);
  color: rgb(var(--color-foreground));
}

/* --- Tables --- */

table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  letter-spacing: 0.01em;
}

table th {
  text-transform: uppercase;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  font-weight: 500;
  padding: 1.2rem 0.75rem;
  border-bottom: 1px solid rgba(var(--color-foreground), 0.15);
  text-align: left;
}

table td {
  padding: 1rem 0.75rem;
  border-bottom: 1px solid rgba(var(--color-foreground), 0.04);
}

/* --- Mobile optimizations --- */

@media screen and (max-width: 749px) {
  /* Tighter spacing on mobile */
  .section-template--*__padding {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  /* Header */
  .header {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .header__heading-logo {
    max-width: 100px;
  }

  /* Hero text */
  .banner__heading .h0 {
    font-size: calc(var(--font-heading-scale) * 2rem);
  }

  /* Rich text sections */
  .rich-text__blocks {
    padding: 0 1rem;
  }

  /* Cards — less gap */
  .featured-collection .grid {
    gap: 1.5rem;
  }

  /* Footer */
  .footer {
    padding: 2rem 1.5rem;
  }

  .newsletter-form__field-wrapper {
    max-width: 100%;
  }

  /* Page content */
  .rte {
    font-size: 0.95rem;
  }
}

/* --- Tablet refinements --- */

@media screen and (min-width: 750px) and (max-width: 989px) {
  .featured-collection .grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* --- Hide platform artifacts --- */

.announcement-bar-section {
  display: none;
}

/* Hide search icon — unnecessary for small catalog */
.header__search {
  display: none !important;
}

/* Remove hr dividers from page content — use whitespace instead */
.rte hr {
  display: none;
}

.rte section {
  margin-bottom: 3rem;
}

.rte section:last-child {
  margin-bottom: 0;
}
