/**
 * Default template: Product specification partial only.
 * Uses design-system vars: --card-bg, --card-border, --color-text-primary, --color-text-muted, --glass, --line2.
 */
/* Section container: same style as contact-cta-box */
.default-product-spec {
  padding: var(--default-spacing-xl);
  border-radius: var(--r, 20px);
  background: var(--service-section-bg, var(--card-bg));
  border: 1px solid var(--card-border);
  margin-bottom: var(--default-spacing-xl);
}

.default-product-spec__heading {
  margin: 0 0 var(--default-spacing-lg);
  font-size: var(--default-font-size-h2);
  font-weight: 700;
  color: var(--service-heading-color, var(--color-text-primary));
}

.default-product-spec__list {
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--default-spacing-sm);
}

/* Each row = one key/value pair; glass card using our vars (no white cards) */
.default-product-spec__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--default-spacing-md);
  padding: var(--default-spacing-md);
  background: var(--glass);
  border-radius: var(--r, 12px);
  border: 1px solid var(--card-border);
}

@media (max-width: 639px) {
  .default-product-spec__row {
    grid-template-columns: 1fr;
  }
}

/* Label (dt): muted so value stands out */
.default-product-spec__term {
  margin: 0;
  font-weight: 600;
  color: var(--service-heading-color, var(--color-text-muted));
  font-size: var(--default-font-size-base);
}

/* Value (dd): primary text */
.default-product-spec__detail {
  margin: 0;
  font-size: var(--default-font-size-base);
  color: var(--service-text-color, var(--color-text-primary));
  line-height: 1.5;
}

.default-product-spec__empty {
  margin: 0;
  font-size: var(--default-font-size-base);
  color: var(--service-text-color, var(--color-text-primary));
}

/* Nested structure: cards and blocks – all use design-system vars */
.default-product-spec__cards {
  display: flex;
  flex-direction: column;
  gap: var(--default-spacing-xl);
}

.default-product-spec__card {
  padding: var(--default-spacing-lg);
  border-radius: var(--r, 20px);
  background: var(--glass);
  border: 1px solid var(--card-border);
}

.default-product-spec__card-title {
  margin: 0 0 var(--default-spacing-md);
  font-size: var(--default-font-size-lg);
  font-weight: 700;
  color: var(--service-heading-color, var(--color-text-primary));
}

.default-product-spec__block {
  margin-top: var(--default-spacing-md);
}

.default-product-spec__block:first-child {
  margin-top: 0;
}

.default-product-spec__block-title {
  margin: 0 0 var(--default-spacing-sm);
  font-size: var(--default-font-size-base);
  font-weight: 600;
  color: var(--service-heading-color, var(--color-text-muted));
}

/* Rows inside nested cards: same glass + vars as top-level rows */
.default-product-spec__card .default-product-spec__row {
  background: var(--glass);
  border-color: var(--line2);
}

.default-product-spec__card .default-product-spec__term {
  color: var(--color-text-muted);
}

.default-product-spec__card .default-product-spec__detail {
  color: var(--service-text-color, var(--color-text-primary));
}
