/* Product configurators share Spatial OS's neutral visual language. */
.store-products-page .store-section-heading__title { margin-bottom: 16px; }
.store-products-page .store-section-heading__description { margin: 0; }
.store-products-page .store-application-card,
.store-products-page .hardware-product-card,
.store-products-page .simulation-package-card,
.store-products-page .simulation-option-card {
  padding: 20px;
  background: #fff;
  border: 1.5px solid #c6ccd1;
  border-radius: 14px;
  box-shadow: none;
}
.store-products-page .store-application-card:has(input:checked),
.store-products-page .hardware-product-card:has(input:checked),
.store-products-page .simulation-package-card:has(input:checked),
.store-products-page .simulation-option-card:has(input:checked) {
  padding: 19.5px;
  background: #fff;
  border: 2px solid #0071ce;
  box-shadow: none;
}
.store-products-page .store-application-card__description,
.store-products-page .hardware-product-card > small,
.store-products-page .simulation-package-card__description,
.store-products-page .simulation-option-card small {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.55;
}
.store-products-page .store-application-card__meta,
.store-products-page .hardware-product-card__action,
.store-products-page .hardware-product-card__info,
.store-products-page .hardware-product-card__status,
.store-products-page .simulation-option-card em {
  padding-top: 12px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}
.store-products-page .software-hardware-row,
.store-products-page .simulation-counter-card {
  padding: 16px;
  background: #fff;
  border-color: #c6ccd1;
  border-radius: 14px;
}
.store-products-page .software-hardware-row span,
.store-products-page .simulation-counter-card p { font-size: 13px; line-height: 1.5; }
.store-products-page .software-hardware-list,
.store-products-page .simulation-counter-grid,
.store-products-page .simulation-room-grid,
.store-products-page .store-application-grid,
.store-products-page .hardware-product-grid,
.store-products-page .simulation-package-grid,
.store-products-page .simulation-option-grid { gap: 16px; }
.store-products-page .software-spatial-note,
.store-products-page .software-hardware-link,
.store-products-page .software-advanced-note { font-size: 14px; line-height: 1.55; }
.store-products-page .software-hardware-link { padding: 16px; background: #eef1f3; border-radius: 12px; }
.store-products-page .software-advanced-group + .software-advanced-group { margin-top: 24px; padding-top: 24px; border-color: #d8dce0; }
.store-products-page .software-advanced-group > h4,
.store-products-page .simulation-option-group > h4 { margin-bottom: 8px; line-height: 1.3; }
.store-products-page .software-advanced-group > p,
.store-products-page .simulation-option-group > p { margin-bottom: 16px; font-size: 14px; line-height: 1.55; }
.store-products-page .hardware-product-group { padding-top: 0; border-top: 0; }
.store-products-page .hardware-product-group + .hardware-product-group { margin-top: 24px; }
.store-products-page .hardware-product-group legend { margin-bottom: 16px; line-height: 1.4; }
.store-products-page .hardware-product-quantity { margin-top: 16px; padding: 16px; background: #eef1f3; border-radius: 12px; }
.store-products-page .simulation-package-card__users { margin-block: 8px 0; color: #59626b; }
.store-products-page .simulation-package-card ul { padding: 16px 0 0; list-style: none; font-size: 13px; line-height: 1.5; }
.store-products-page .simulation-package-card li { margin: 0; padding-block: 8px; border-bottom: 1px solid #e5e8eb; }
.store-products-page .simulation-package-card li:last-child { border-bottom: 0; }
.store-products-page .simulation-upload--selected { background: #fff; border-color: #0071ce; }
.store-products-page .store-config-summary__group dt { flex: 1; color: #59626b; font-size: 13px; letter-spacing: 0; text-transform: none; }
.store-products-page .store-config-summary__quote--blue strong { color: #15191d; }
.store-products-page .store-related-card {
  width: min(1200px, calc(100% - 80px));
  max-width: none;
  margin: 0 auto 80px;
  padding: 32px;
  background: #f7f7f8;
  border: 1px solid #9ca4aa;
  border-radius: 18px;
  color: #15191d;
}
.store-products-page .store-related-card__content p { color: #59626b; font-size: 15px; line-height: 1.55; }
.store-products-page .store-related-card > a {
  padding: 12px 24px;
  background: #0071ce;
  color: #fff;
  border: 1px solid #0071ce;
  border-radius: 28px;
  font: 600 14px/1.5 Arial, Helvetica, sans-serif;
}
@media (hover: hover) {
  .store-products-page .store-application-card:hover,
  .store-products-page .hardware-product-card:hover,
  .store-products-page .simulation-package-card:hover,
  .store-products-page .simulation-option-card:hover { border-color: #9ca4aa; }
  .store-products-page .store-application-card:has(input:checked):hover,
  .store-products-page .hardware-product-card:has(input:checked):hover,
  .store-products-page .simulation-package-card:has(input:checked):hover,
  .store-products-page .simulation-option-card:has(input:checked):hover { border-color: #0071ce; }
  .store-products-page .store-related-card > a:hover { background: #005da9; border-color: #005da9; }
}
@media (max-width: 1050px) { .store-products-page .store-related-card { width: calc(100% - 56px); } }
@media (max-width: 700px) {
  .store-products-page .store-related-card { width: calc(100% - 40px); padding: 24px; margin-bottom: 62px; }
  .store-products-page .store-related-card > a { align-self: stretch; text-align: center; }
  .store-products-page .software-spatial-note,
  .store-products-page .software-hardware-link { align-items: flex-start; flex-direction: column; gap: 12px; }
}

/* Hardware category descriptions sit directly below their titles. */
.store-products-page .hardware-product-group legend {
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.store-products-page .hardware-product-group legend small {
  text-align: left;
}

.store-products-page .hardware-product-card__link,
.store-products-page .store-application-card__link {
  align-self: flex-start;
  margin-top: auto;
  padding-top: 12px;
  color: #0071ce;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.store-products-page .hardware-product-card__info:has(+ .hardware-product-card__link) {
  margin-top: 0;
}
