/* Mila — featured product buy-box (Figma 11:695) */
.mila-buybox {
  display: flex; gap: 90px; align-items: flex-start;
  padding: 100px 90px; max-width: var(--mila-container); margin: 0 auto;
}
.mila-buybox__gallery { flex: 1 1 0; min-width: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.mila-buybox__shot { height: 598px; overflow: hidden; }
.mila-buybox__shot img { width: 100%; height: 100%; object-fit: cover; }

.mila-buybox__info { flex: 0 0 420px; display: flex; flex-direction: column; gap: 20px; }
.mila-buybox__vendor { font-size: 13px; color: var(--mila-muted); margin: 0; }
.mila-buybox__title { font-family: var(--mila-font-heading); font-weight: 500; font-size: 27px; letter-spacing: 1.08px; color: var(--mila-ink); margin: 0; }
.mila-buybox__price { font-size: 18px; color: var(--mila-ink); margin: 0; }

.mila-buybox__rating { display: flex; align-items: center; gap: 6px; }
.mila-buybox__stars { --r: 0; position: relative; display: inline-block; width: 84px; height: 16px;
  background: linear-gradient(90deg, var(--mila-ink) calc(var(--r) / 5 * 100%), #d9d5cf calc(var(--r) / 5 * 100%));
  -webkit-mask: repeating-linear-gradient(90deg, #000 0 12px, transparent 12px 16.8px);
          mask: repeating-linear-gradient(90deg, #000 0 12px, transparent 12px 16.8px); }
.mila-buybox__reviews { font-size: 12px; color: var(--mila-ink); }

.mila-buybox__form { display: flex; flex-direction: column; gap: 20px; margin: 0; }
.mila-buybox__opt { display: flex; flex-direction: column; gap: 12px; }
.mila-buybox__opt-label { font-size: 15px; font-weight: 500; color: var(--mila-ink); margin: 0; }
.mila-buybox__opt-label span { font-weight: 400; }
.mila-buybox__chips { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.mila-buybox__chip {
  background: none; border: 0; padding: 4px 2px; font-size: 15px; color: var(--mila-ink);
  border-bottom: 2px solid transparent;
}
.mila-buybox__chip.is-active { border-bottom-color: var(--mila-ink); }
.mila-buybox__chips--swatch { gap: 8px; }
.mila-buybox__swatch {
  width: 64px; height: 99px; padding: 0; border: 2px solid transparent;
  background: var(--sw) center/cover no-repeat; border-radius: 0;
}
.mila-buybox__swatch.is-active { border-color: var(--mila-ink); }

.mila-buybox__actions { display: flex; gap: 10px; align-items: center; padding: 8px 0; }
.mila-buybox__qty { display: flex; align-items: center; justify-content: space-between; width: 130px; border: 1px solid #bbb; border-radius: 4px; padding: 6px 0; }
.mila-buybox__qbtn { background: none; border: 0; width: 40px; height: 32px; display: inline-flex; align-items: center; justify-content: center; color: var(--mila-ink); }
.mila-buybox__qval { width: 40px; text-align: center; border: 0; background: none; font-size: 15px; }
.mila-buybox__atc {
  flex: 1 1 0; background: var(--mila-ink); color: #fff; border: 1px solid var(--mila-ink);
  border-radius: 4px; padding: 18px 30px; font-size: 15px;
}
.mila-buybox__atc:disabled { opacity: .5; cursor: not-allowed; }
.mila-buybox__details { align-self: flex-start; font-size: 15px; color: #b79987; border-bottom: 1px solid #b79987; padding-bottom: 1px; }

@media (max-width: 1024px) { .mila-buybox { gap: 40px; padding: 72px 40px; flex-direction: column; } .mila-buybox__info { flex-basis: auto; width: 100%; } .mila-buybox__shot { height: 440px; } }
@media (max-width: 767px) {
  .mila-buybox { padding: 56px 20px; }
  .mila-buybox__gallery { grid-template-columns: 1fr; }
  .mila-buybox__shot { height: 90vw; }
  .mila-buybox__title { font-size: 22px; }
}
