.product-specifications {
  color: rgb(var(--spec-text));
  background: rgb(var(--spec-background));
  font-family: var(--spec-body-font, var(--senro-sans));
}

.product-specifications .product-specifications__inner {
  width: 100%;
  max-width: 1520px;
  padding: var(--spec-padding-top) 48px var(--spec-padding-bottom);
  margin: 0 auto;
  border-block: 1px solid rgb(var(--spec-accent) / 22%);
}

.product-specifications__main {
  display: grid;
  grid-template-columns: .85fr 1.25fr 1fr;
  gap: 64px;
  align-items: center;
}

.product-specifications__heading {
  max-width: 260px;
  margin: 0;
  font-family: var(--spec-heading-font, var(--senro-serif));
  font-size: clamp(38px, 4vw, var(--spec-heading-size));
  font-weight: 400;
  line-height: 1.05;
}

.product-specifications__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px 40px;
  padding-inline-start: 40px;
  border-inline-start: 1px solid rgb(var(--spec-accent) / 28%);
}

.product-specifications__item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-block-end: 18px;
  border-block-end: 1px solid rgb(var(--spec-accent) / 20%);
}

.product-specifications__item span {
  color: rgb(var(--spec-muted));
  font-size: 11px;
  font-weight: 400;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.product-specifications__item strong {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: .06em;
}

.product-specifications__drawing svg,
.product-specifications__drawing img {
  display: block;
  width: 100%;
  max-width: 360px;
  height: auto;
  margin: auto;
  object-fit: contain;
}

.product-specifications__drawing svg {
  overflow: visible;
  fill: none;
  stroke: rgb(var(--spec-muted) / 70%);
  stroke-width: 1.2;
}

.product-specifications__drawing text {
  fill: rgb(var(--spec-muted));
  stroke: none;
  font-family: var(--senro-sans);
  font-size: 11px;
  letter-spacing: .08em;
}

.product-specifications__features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-block-start: 64px;
  border-block-start: 1px solid rgb(var(--spec-accent) / 22%);
}

.product-specifications__feature {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: center;
  min-height: 96px;
  color: rgb(var(--spec-muted));
  font-size: 11px;
  font-weight: 400;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.product-specifications__feature + .product-specifications__feature {
  border-inline-start: 1px solid rgb(var(--spec-accent) / 22%);
}

.product-specifications__icon {
  display: inline-flex;
  width: var(--spec-icon-size);
  height: var(--spec-icon-size);
  color: rgb(var(--spec-accent));
  font-family: var(--spec-heading-font, var(--senro-serif));
  font-size: var(--spec-icon-size);
  line-height: 1;
  align-items: center;
  justify-content: center;
}

.product-specifications__icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media (max-width: 900px) {
  .product-specifications .product-specifications__inner {
    padding: min(var(--spec-padding-top), 80px) 24px min(var(--spec-padding-bottom), 80px);
  }
  .product-specifications__main { grid-template-columns: 1fr; gap: 48px; }
  .product-specifications__grid { padding-inline-start: 0; border-inline-start: 0; }
  .product-specifications__drawing svg { max-width: 300px; }
  .product-specifications__features { grid-template-columns: 1fr; }
  .product-specifications__feature + .product-specifications__feature {
    border-block-start: 1px solid rgb(var(--spec-accent) / 22%);
    border-inline-start: 0;
  }
}
