.dks-rentals { margin: 0 auto; padding:100px 0; }
.dks-rentals .step { display:none; padding:14px 0; }
.dks-rentals .step.is-active { display:block; }
.dks-rentals .grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.dks-rentals label { display:block; font-weight:600; }
.dks-rentals label.radio,
.dks-rentals label.check { display:flex; align-items:center; }
.dks-rentals input,
.dks-rentals select,
.dks-rentals textarea { width:100%; padding:10px; margin-top:6px; box-sizing:border-box; background:#fff!important; }
.dks-rentals select { border:1px solid rgba(0,0,0,.25); font-weight:400; }
.dks-rentals .actions { display:flex; gap:10px; margin-top:12px; }
.dks-rentals .btn { padding:10px 14px; border:1px solid #ddd; background:#fff; cursor:pointer; }
.dks-rentals .btn.primary { border-color:#111; background:#111; color:#fff; }
.dks-rentals .step-7 .btn.primary,
.dks-rentals .btn.next { border:none; background:#28b553; color:#fff; }
.dks-rentals .box { border:1px solid #eee; padding:12px; border-radius:10px; margin:10px 0; background:#fff; }
.dks-rentals .micro { font-size:13px; opacity:.8; margin-top:6px; }
.dks-rentals .hint { font-size:13px; opacity:.8; }
.dks-rentals .radio,
.dks-rentals .check { display:flex; gap:10px; align-items:flex-start; font-weight:500; margin:6px 0; }
.dks-rentals .radio input,
.dks-rentals .check input { width:auto; margin-top:2px; }

.dks-product-picker,
.dks-category-picker {
  margin-bottom:30px;
}

.dks-product-card,
.dks-category-card {
  display:block;
  cursor:pointer;
}

.dks-rentals input[type="date"] {
  cursor: pointer;
  background: #fff!important;
}

input.is-invalid {
  border-bottom: 2px solid #d63638!important;
}

.dks-rentals label.check.is-invalid,
.dks-rentals label.required.is-invalid {
  padding: 10px 12px;
  border: 1px solid #d63638;
  border-radius: 10px;
  background: #fff5f5;
}

.dks-rentals label.check.is-invalid span,
.dks-rentals label.required.is-invalid span {
  color: #a61b1b;
}

.dks-field-error {
  border: 1px solid #d63638;
  background: #fff5f5;
  color: #a61b1b;
  margin-bottom: 16px;
}

.dks-product-card input,
.dks-category-card input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.dks-product-card__inner,
.dks-category-card__inner {
  display:block;
  border:1px solid #ddd;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  transition: box-shadow .15s ease, border-color .15s ease, transform .08s ease;
}

.dks-product-card__media,
.dks-category-card__media {
  display:block;
  height:150px;
}

.dks-product-card__media img,
.dks-category-card__media img {
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
}

.dks-product-card__placeholder,
.dks-category-card__placeholder {
  display:flex;
  height:100%;
  align-items:center;
  justify-content:center;
  color:#777;
  font-size:13px;
}

.dks-product-card__body,
.dks-category-card__body {
  display:block;
  padding:20px;
}

.dks-category-card__body {
  text-align:center;
}

.dks-product-card__title,
.dks-category-card__title {
  display:block;
  font-weight:600;
  line-height:1.2;
}

.dks-product-card__category {
  color:#999;
  font-size:.8rem;
  text-transform:capitalize;
  font-weight:400;
}

.dks-product-card__meta {
  display:block;
  margin-top:6px;
  font-size:13px;
  opacity:.8;
  font-weight:400;
}

.dks-product-card__meta .meta {
  font-weight:800;
}

.dks-product-card input:checked + .dks-product-card__inner,
.dks-category-card input:checked + .dks-category-card__inner {
  border-color:#28b553;
  box-shadow:0 6px 18px rgba(0,0,0,.12);
}

.dks-product-card:hover .dks-product-card__inner,
.dks-category-card:hover .dks-category-card__inner {
  transform:translateY(-1px);
  box-shadow:0 6px 18px rgba(0,0,0,.10);
}

.dks-rentals-layout {
  display:grid;
  grid-template-columns:minmax(0, 1fr) 320px;
  gap:32px;
  align-items:start;
}

.dks-rentals-main {
  min-width:0;
}

.dks-rentals-sidebar {
  position:relative;
}

.dks-rental-summary-card {
  position:sticky;
  top:24px;
  border:1px solid #ddd;
  border-radius:12px;
  padding:20px;
  background:#fff;
}

.dks-rental-summary-card h3 {
  margin-top:0;
  margin-bottom:16px;
}

.dks-summary-row {
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-bottom:10px;
  font-size:14px;
}

.dks-summary-row strong {
  text-align:right;
}

.dks-summary-row--total {
  font-size:16px;
  font-weight:700;
}

.dks-rentals .box.dks-terms-box {
  margin:20px 0 10px 0;
}

.dks-terms-box p {
  margin:0 0 8px;
}

.check a,
.dks-terms-box a {
  font-weight:800;
  color: #202020;
  text-decoration: underline;
}

.dks-terms-box p:last-child {
  margin-bottom:0;
}

.dks-car-selector {
  margin-top:10px;
}

.dks-car-selector .grid {
  grid-template-columns:1fr 1fr 1fr;
}

@media (max-width: 991px){
  .dks-rentals-layout {
    grid-template-columns:1fr;
  }

  .dks-rental-summary-card {
    position:static;
  }

  .dks-car-selector .grid,
  .dks-rentals .grid {
    grid-template-columns:1fr;
  }
}

.dks-product-card__highlights {
  margin: 6px 0 0 18px;
  padding: 0;
}

.dks-product-card__highlights li {
  margin: 0 0 4px 0;
}
.dks-live-lines,
.dks-product-breakdown-list {
  display:grid;
  gap:12px;
}

.dks-product-breakdown {
  display:flex;
  /* grid-template-columns:72px minmax(0,1fr); */
  gap:20px;
  align-items:start;
  padding:12px;
  border:1px solid #eee;
  border-radius:12px;
  background:#fff;
}

.dks-product-breakdown.is-compact {
  grid-template-columns:56px minmax(0,1fr);
  gap:10px;
  padding:10px;
}

.dks-product-breakdown__media {
  width:150px;
  height:150px;
  border-radius:10px;
  overflow:hidden;
  background:#f7f7f7;
  display:flex;
  align-items:center;
  justify-content:center;
}

.dks-product-breakdown.is-compact .dks-product-breakdown__media {
  width:56px;
  height:56px;
}

.dks-product-breakdown__media img {
  width:100%;
  height:100%;
  object-fit:contain;
}

.dks-product-breakdown__thumb-placeholder {
  font-size:12px;
  color:#777;
  text-align:center;
  padding:6px;
}

.dks-product-breakdown__content {
  min-width:0;
  width:100%;
}

.dks-product-breakdown__title {
  font-weight:700;
  line-height:1.3;
  margin-bottom:8px;
}

.dks-product-breakdown__row {
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin-bottom:6px;
  font-size:14px;
}

.dks-product-breakdown__row:last-child {
  margin-bottom:0;
}

.dks-product-breakdown__row strong {
  text-align:right;
}


.dks-product-breakdown.no-thumb {
  grid-template-columns:minmax(0,1fr);
}

.dks-product-breakdown.no-thumb .dks-product-breakdown__media {
  display:none;
}

.dks-product-breakdown__media {
  width:88px;
  height:88px;
}

.dks-product-breakdown.is-compact {
  grid-template-columns:minmax(0,1fr);
  gap:10px;
  padding:10px;
}

.dks-product-breakdown.is-compact .dks-product-breakdown__title {
  margin-bottom:6px;
}

.dks-product-breakdown.is-compact .dks-product-breakdown__row {
  font-size:13px;
}

.dks-live-lines .dks-product-breakdown {
  background:#fafafa;
}
