/* 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;
}

/* Keep hardware anchor targets clear of both fixed navigation bars. */
.store-products-page .hardware-product-group[id],
.store-products-page .hardware-product-card[id]{scroll-margin-top:calc(var(--site-header-height) + var(--store-navigation-height) + 40px)}

.store-use-case-country { display: block; margin-top: 28px; font-size: 14px; font-weight: 600; }
.store-use-case-country > span { display: block; margin-bottom: 8px; }
.store-use-case-country select { display: block; width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #c6ccd1; border-radius: 10px; background: #fff; color: #17212b; font: inherit; font-size: 16px; font-weight: 400; }
.store-use-case-country select:focus-visible { outline: 2px solid #0071ce; outline-offset: 2px; }

.store-service-options{margin-top:24px}.store-service-options legend{font-size:18px;font-weight:600;margin-bottom:16px}.store-services .store-note{margin-top:24px}

.store-download-configuration{width:100%;background:#fff;color:#0071ce;border:1px solid #b8c5d0}.store-dialog__actions{flex-wrap:wrap}.store-dialog__actions [data-request-action]{min-width:150px}.store-field input[readonly]{background:#f7f7f8;color:#51595f}

.store-dialog [data-request-content]>.store-note{padding:0;background:none;border:0;font-size:13px;line-height:1.6}

/* Quote directly in the configuration column, matching Software. */
.store-inline-request{margin-top:24px;padding-top:24px;border-top:1px solid #e1e3e5}.store-inline-request header h3{margin:0 0 18px;font-size:20px;line-height:1.3}.store-inline-fields{display:grid;gap:16px}.store-inline-request .store-field{display:grid;gap:8px;font-size:14px;font-weight:400;line-height:1.5}.store-inline-request input,.store-inline-request textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #bdc2c6;border-radius:9px;padding:12px;background:#fff;color:#15191d;font:inherit;font-size:14px}.store-inline-request input{min-height:46px}.store-inline-request textarea{resize:vertical;min-height:90px}.store-inline-request input[readonly]{background:#f7f7f8;color:#51595f}.store-inline-request details{margin-top:20px;font-size:13px}.store-inline-request details summary{color:#0071ce;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.store-inline-project .store-field{margin-top:16px}.store-inline-request .store-inline-privacy{margin:18px 0;font-size:13px;line-height:1.6;color:#59626b}.store-inline-request .store-inline-privacy a{color:#0071ce}.store-inline-request [data-request-action]{width:100%;margin-top:4px}.store-inline-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.store-inline-secondary .store-button{width:100%;min-width:0;margin:0;min-height:48px;padding:12px 14px;box-sizing:border-box;font-size:14px;line-height:1.3;text-align:center;display:flex;align-items:center;justify-content:center}.store-inline-request [data-configuration-preview]{font:12px/1.6 Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}.store-inline-request [data-request-feedback][hidden]{display:none}@media(max-width:540px){.store-inline-secondary{grid-template-columns:1fr}}
.store-spatial-page .store-config-summary:has([data-request-inline]){position:static;align-self:start;max-height:none;overflow:hidden}

/* Remove forced card heights and tighten the hardware layout. */
.store-products-page [data-store-configurator="hardware"] .hardware-product-grid{grid-auto-rows:auto}
.store-products-page [data-store-configurator="hardware"] .hardware-product-card{min-height:0;padding:16px}
.store-products-page [data-store-configurator="hardware"] .hardware-product-card:has(input:checked){padding:15.5px}
.store-products-page [data-store-configurator="hardware"] .hardware-product-group{padding-top:20px}
.store-products-page [data-store-configurator="hardware"] .hardware-product-group:first-of-type{padding-top:0}
.store-products-page [data-store-configurator="hardware"] .hardware-product-group+.hardware-product-group{margin-top:20px}
.store-products-page [data-store-configurator="hardware"] .store-config-summary__list>div{padding-block:8px}
.store-products-page [data-store-configurator="hardware"] .store-config-summary__list>.store-config-summary__group{padding-top:14px;padding-bottom:6px;border-bottom:0}
.store-products-page [data-store-configurator="hardware"] .store-config-summary__list>.store-config-summary__group:first-child{padding-top:0}
.store-products-page [data-store-configurator="hardware"] .store-inline-fields{gap:12px}
.store-products-page [data-store-configurator="hardware"] .store-inline-request{margin-top:20px;padding-top:20px}
.hardware-pending summary{cursor:pointer;font-size:13px;font-weight:600;color:#526173}

/* Compact hardware content while keeping all choices visible. */
.store-products-page [data-store-configurator="hardware"] .store-configurator__builder{gap:20px}
.store-products-page [data-store-configurator="hardware"] .store-config-section{padding:24px}
.store-products-page [data-store-configurator="hardware"] .store-config-section__header{margin-bottom:18px}
.store-products-page [data-store-configurator="hardware"] .store-config-section__header h3{margin-bottom:6px}
.store-products-page [data-store-configurator="hardware"] .store-option{min-height:0;padding:14px}
.store-products-page [data-store-configurator="hardware"] .store-option:has(input:checked){padding:13.5px}
.store-products-page [data-store-configurator="hardware"] .hardware-product-card{padding:14px}
.store-products-page [data-store-configurator="hardware"] .hardware-product-card:has(input:checked){padding:13.5px}
.store-products-page [data-store-configurator="hardware"] .hardware-product-group{padding-top:16px}
.store-products-page [data-store-configurator="hardware"] .hardware-product-group:first-of-type{padding-top:0}
.store-products-page [data-store-configurator="hardware"] .hardware-product-group+.hardware-product-group{margin-top:16px}
.store-products-page [data-store-configurator="hardware"] .store-service-options{margin-top:18px}
.store-products-page [data-store-configurator="hardware"] .store-service-options legend{margin-bottom:12px}
@media(min-width:901px){
 .store-spatial-page .store-config-summary:has([data-request-inline]){position:sticky;top:calc(var(--site-header-height) + var(--store-navigation-height) + 20px);max-height:calc(100dvh - var(--site-header-height) - var(--store-navigation-height) - 40px);display:flex;flex-direction:column;overflow:hidden}
 .store-config-summary:has([data-request-inline])>.store-config-summary__header{flex:0 0 auto}
 .store-config-summary:has([data-request-inline])>.store-config-summary__body{min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#aab7c3 transparent}
 .store-config-summary:has([data-request-inline])>.store-config-summary__body::-webkit-scrollbar{width:6px}
 .store-config-summary:has([data-request-inline])>.store-config-summary__body::-webkit-scrollbar-thumb{background:#aab7c3;border-radius:6px}
}
@media(min-width:901px){.store-config-summary:has([data-request-inline])>.store-config-summary__body{padding-bottom:64px}}

.store-config-summary:has([data-request-inline]) .store-config-summary__list>div{padding-block:8px}.store-config-summary:has([data-request-inline]) .store-config-summary__list>.store-config-summary__group{padding-top:14px;padding-bottom:6px;border-bottom:0}.store-config-summary:has([data-request-inline]) .store-inline-fields{gap:12px}

.hardware-price-notice{box-sizing:border-box;width:min(1200px,calc(100% - 80px));margin:0 auto 24px;padding:20px 24px;background:#edf6fd;border:1px solid #a9cfee;border-radius:14px;color:#254965}.hardware-price-notice h2{margin:0 0 8px;font-size:18px;line-height:1.3;color:#005a9f}.hardware-price-notice p{margin:0;font-size:15px;line-height:1.6}.hardware-price-notice a{color:#005a9f;font-weight:600;text-decoration:underline;text-underline-offset:3px}@media(max-width:1050px){.hardware-price-notice{width:calc(100% - 56px)}}@media(max-width:700px){.hardware-price-notice{width:calc(100% - 40px);padding:18px 20px}}

[data-floor-plan-status]{overflow-wrap:anywhere}
