/* BORONDO V5 — visual hierarchy + image fitting */

/* Safari/iOS must never paint catalog buttons/titles blue */
button,
button *,
a,
a:visited,
.product-summary,
.product-summary *,
.collection-current,
.collection-current *,
.collection-open-v4,
.collection-open-v4 *,
.variant-preview,
.variant-preview *,
.variant-accordion-head,
.variant-accordion-head * {
  color: inherit;
  -webkit-tap-highlight-color: rgba(49,95,77,.08);
}

.product-copy strong,
.collection-current b,
.collection-open-v4 b,
.variant-preview b,
.variant-accordion-head b,
.section-head b,
.modal-head h2 {
  color: var(--ink) !important;
}

.product-copy > b,
.variant-preview strong,
.variant-accordion-head strong,
.collection-open-v4 em,
.badge,
.live-strip,
.product-tabs button.active {
  color: var(--green) !important;
}

/* Never crop catalog imagery. Product/collection photos should be visible whole. */
.collection-current img,
.product-thumb,
.main-media img,
.thumbs img,
.mini-strip img,
.variant-preview img,
.variant-accordion-head img,
.variant-main,
.collection-open-v4 img,
.gallery-row img,
.picker-grid img {
  object-fit: contain !important;
  object-position: center !important;
  background: #f2f0ea;
}

/* COLLECTIONS = visual navigation cards, intentionally unlike product rows */
.collection-list-v4 {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(240px,1fr));
  gap: 14px;
}

.collection-card-v4 {
  border: 1px solid var(--line);
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 7px 24px rgba(30,28,23,.045);
}

.collection-card-v4.active {
  border-color: var(--green);
  box-shadow: 0 0 0 2px rgba(49,95,77,.12),0 9px 26px rgba(30,28,23,.06);
}

.collection-open-v4 {
  display: block;
  position: relative;
  padding: 0;
  background: #fff;
  text-align: left;
  width: 100%;
}

.collection-open-v4 img,
.collection-open-v4 .collection-empty {
  width: 100%;
  height: 180px;
  border-radius: 0;
  display: block;
  background: #f1efe9;
}

.collection-open-v4 > span {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 13px 14px 14px;
}

.collection-open-v4 b {
  font: 600 21px/1.08 Georgia,serif;
}

.collection-open-v4 small {
  order: -1;
  font-size: 9px;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--muted);
}

.collection-open-v4 em {
  display: inline-flex;
  width: max-content;
  margin-top: 3px;
  padding: 4px 7px;
  border-radius: 999px;
  background: var(--soft);
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
}

.collection-card-v4 details {
  border-top: 1px solid var(--line);
  background: #fbfaf7;
}

.collection-card-v4 summary {
  padding: 10px 14px;
}

/* Current collection selector = a navigation header, not a product row */
.collection-current {
  background: var(--soft);
  border-color: #d8e3dc;
  min-height: 82px;
}
.collection-current img,
.collection-current > .collection-empty {
  width: 66px;
  height: 66px;
  border-radius: 13px;
}
.collection-current small {
  color: var(--green);
  font-weight: 800;
}

/* PRODUCTS stay compact, data-oriented rows */
.product-list {
  border-radius: 14px;
  box-shadow: none;
}
.product-card {
  background: #fff;
}
.product-summary {
  background: #fff;
  border-radius: 0;
}
.product-summary:hover {
  background: #fbfaf7;
}
.product-thumb {
  background: #f1efe9;
  border: 1px solid #ebe7df;
}
.product-copy strong {
  font-family: Georgia,serif;
  font-weight: 600;
}

@media (max-width:820px) {
  .collection-list-v4 {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 9px;
  }
  .collection-open-v4 img,
  .collection-open-v4 .collection-empty {
    height: 128px;
  }
  .collection-open-v4 > span {
    padding: 10px;
  }
  .collection-open-v4 b {
    font-size: 17px;
  }
  .collection-open-v4 small,
  .collection-open-v4 em {
    font-size: 8px;
  }
  .main-media {
    max-height: 390px;
  }
  .main-media img {
    max-height: 390px;
  }
  .variant-main {
    max-height: 180px;
  }
}

@media (max-width:420px) {
  .collection-open-v4 img,
  .collection-open-v4 .collection-empty {
    height: 112px;
  }
}
