/* A shared product identity and one selector for the existing 3D stage. */
.hero-product-selector {
  position: absolute;
  z-index: 8;
  left: 40%;
  right: 14%;
  bottom: 22%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  transition: opacity .25s;
}
.hero-product-choice {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 7px;
  padding: 12px 13px 10px;
  border: 1px solid #93bbaa35;
  border-radius: 12px;
  background: #0c1514d9;
  color: #b7cdc3;
  cursor: pointer;
  transition: border-color .2s, background .2s, transform .2s;
}
.hero-product-choice img { display: block; width: 100%; height: 36px; object-fit: contain; }
.hero-product-choice span { font-size: 10px; line-height: 1.2; letter-spacing: .04em; }
.hero-product-choice:hover { background: #183128e6; border-color: #97d9bd90; transform: translateY(-2px); }
.hero-product-choice.is-active { background: #17372bcf; border-color: #9ee9c4a0; color: #e5fff0; box-shadow: inset 0 0 0 1px #b8f5d516, 0 6px 30px #0004; }
.hero-product-choice:focus-visible { outline: 2px solid #caf8df; outline-offset: 4px; }
.hero-switches[hidden], .expand-product[hidden], .product-image-action[hidden], .mode-counter[hidden], .hero-product-info[hidden] { display: none; }
.world-fallback { aspect-ratio: 720 / 168; overflow: visible; }
.world-fallback img { width: 100%; }

.site-polished .product-logo-mark { width: 100%; height: 54px; background: transparent; justify-content: flex-start; }
.site-polished .product-logo-mark > img { position: static; inset: auto; transform: none; display: block; width: 100%; max-width: 200px; height: auto; max-height: 54px; }
.site-polished .product-logo-signature { position: static; height: auto; aspect-ratio: 720 / 168; background: transparent; overflow: visible; }
.site-polished .product-logo-signature > img { position: static; inset: auto; transform: none; width: 100%; height: auto; }
.site-polished .product-logo-signature[hidden] { display: none; }

.product-reveal.is-placeholder { background: #0f1b17; color: #e6f3eb; border: 1px solid #94c4a950; }
.product-reveal.is-placeholder .product-topline { background: #14251e; }
.product-reveal.is-placeholder .demo-indicator { color: #c0ddc8; }
.product-reveal.is-placeholder .actual-detail { color: #bbd2c3; }
.hero-product-info { padding: 35px 32px 29px; min-height: 230px; background: radial-gradient(ellipse at 30% 0, #295b423b, transparent 75%); }
.hero-product-info > img { display: block; width: min(100%, 330px); height: auto; margin-bottom: 24px; }
.hero-product-info p { font-size: 16px; line-height: 1.5; }
.hero-product-info > span { display: block; max-width: 390px; margin-top: 12px; font-size: 12px; line-height: 1.7; color: #aec9b9; }
.hero-information-link { display: inline-flex; margin-top: 24px; font-size: 12px; color: #b8f1cb; border-bottom: 1px solid #95bcaa70; padding-bottom: 5px; }

@media (max-width: 1100px) and (min-width: 701px) {
  .hero-product-selector { left: 37%; right: 13%; }
}
@media (max-width: 700px) {
  .hero-product-selector { left: 7%; right: 7%; bottom: 15%; gap: 7px; }
  .experience-stage:not(.is-open) .hero-switches { top: 38%; }
  .hero-product-choice { border-radius: 9px; padding: 8px 8px 7px; gap: 5px; }
  .hero-product-choice img { height: 28px; }
  .hero-product-choice span { font-size: 9px; }
  .site-polished .product-logo-mark { height: 42px; }
  .site-polished .product-logo-mark > img { max-height: 42px; }
  .hero-product-info { min-height: 175px; padding: 24px 20px; }
  .hero-product-info > img { width: min(100%, 260px); margin-bottom: 18px; }
  .hero-product-info p { font-size: 13px; }
  .hero-product-info > span { font-size: 11px; margin-top: 9px; }
  .hero-information-link { font-size: 11px; margin-top: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-product-selector, .hero-product-choice { transition: none; }
  .hero-product-choice:hover { transform: none; }
}
