.k-pdp { display: grid; grid-template-columns: 1.2fr 1fr; gap: 56px; }
@media (max-width: 992px) { .k-pdp { grid-template-columns: 1fr; gap: 32px; } }

.k-gallery { position: relative; }
.k-gallery-main {
  position: relative;
  background: var(--k-offwhite);
  height: 560px;
  display: flex; align-items: center; justify-content: center;
  overflow: hidden;
}
.k-gallery-main i { font-size: 160px; color: var(--k-beige-300); }
.k-gallery .k-badge { position: absolute; top: 16px; inset-inline-start: 16px; }
.k-gallery .k-wish-btn { position: absolute; top: 16px; inset-inline-end: 16px; }

.k-gallery-img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

.k-thumbs {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 16px;
}
.k-thumb {
  background: var(--k-offwhite);
  height: 100px;
  overflow: hidden;
  display: flex; align-items: center; justify-content: center;
  border: 1.5px solid transparent;
  cursor: pointer;
  transition: border-color 0.2s;
}
.k-thumb img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.k-thumb i { font-size: 40px; color: var(--k-beige-300); }
.k-thumb.active { border-color: var(--k-black); }
.k-thumb:hover { border-color: var(--k-gray-400); }

.k-pdp-title { font-size: 28px; margin: 8px 0 10px; }
.k-pdp-price { display: flex; align-items: baseline; gap: 12px; margin: 16px 0; }
.k-pdp-price .now { font-size: 22px; font-weight: 600; }
.k-pdp-price .old { font-size: 16px; color: var(--k-gray-300); text-decoration: line-through; }

.k-option-block { margin: 24px 0; }
.k-option-block .row {
  display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;
}
.k-option-block .row .label {
  font-size: 12px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; color: var(--k-gray-700);
}
.k-option-block .row a { font-size: 12px; color: var(--k-beige-700); text-decoration: underline; }

.k-sizes, .k-colors { display: flex; gap: 8px; flex-wrap: wrap; }

.k-pdp-actions {
  display: grid; grid-template-columns: 1fr auto; gap: 8px; margin-top: 28px;
}
.k-pdp-actions .qty-ctrl { grid-column: 1/-1; margin-bottom: 4px; }

.k-tabs { margin-top: 64px; border-top: var(--k-border); }
.k-tabs-head { display: flex; gap: 0; border-bottom: var(--k-border); }
.k-tabs-head button {
  padding: 18px 24px;
  background: 0; border: 0; border-bottom: 1px solid transparent;
  font-family: inherit; font-size: 13px; font-weight: 500;
  letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--k-gray-500);
  cursor: pointer; transition: var(--k-trans);
}
.k-tabs-head button.active { color: var(--k-black); border-bottom-color: var(--k-black); }
.k-tab-panel { display: none; padding: 32px 0; }
.k-tab-panel.active { display: block; }

.k-review { padding: 20px 0; border-bottom: var(--k-border); }
.k-review .head { display: flex; gap: 12px; align-items: center; margin-bottom: 8px; }
.k-review .stars { color: var(--k-beige-500); letter-spacing: 1px; }
.k-review .author { font-weight: 600; font-size: 14px; }
.k-review .date { font-size: 12px; color: var(--k-gray-500); margin-inline-start: auto; }