/**
 * Technoshop Main Hero Product-Stage Refinement V8
 * Product-first frame: light backdrop hugs the image; right zone stays navy.
 * Preview presentation only. Does not change selection logic.
 */

@media (min-width: 1024px) {
  /* Keep unified navy canvas from V7; ensure right zone is NOT a white half */
  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones.ts-hero__banner--product {
    grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr) !important;
  }

  /* Soft ambient spotlight behind the local product frame (restrained) */
  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones.ts-hero__banner--product::after {
    content: "" !important;
    position: absolute !important;
    top: 18% !important;
    right: 8% !important;
    bottom: 18% !important;
    width: 42% !important;
    pointer-events: none !important;
    z-index: 1 !important;
    background:
      radial-gradient(ellipse 60% 55% at 55% 50%, rgba(140, 195, 255, 0.22) 0%, rgba(7, 85, 201, 0.08) 48%, transparent 74%) !important;
  }

  /* Media zone = positioning only; transparent over navy canvas */
  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__visual--stage {
    grid-column: 2 !important;
    grid-row: 1 !important;
    position: relative !important;
    z-index: 3 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
    /* Slight bias toward content seam (~12–16px) */
    margin: 0 !important;
    padding: 1rem 1.25rem 1rem 0.65rem !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    overflow: visible !important;
    pointer-events: none;
  }

  /* Local product frame — sizes to the image, not the media zone */
  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__product-frame {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: fit-content !important;
    max-width: min(92%, 520px) !important;
    max-height: min(90%, 372px) !important;
    padding: clamp(0.75rem, 1.15vw, 1.25rem) !important; /* ~12–20px */
    border-radius: 14px !important;
    border: 1px solid rgba(190, 214, 240, 0.42) !important;
    background:
      linear-gradient(160deg, rgba(255, 255, 255, 0.94) 0%, rgba(244, 248, 252, 0.9) 100%) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.65) inset,
      0 10px 24px rgba(3, 24, 58, 0.16) !important;
    overflow: hidden !important;
  }

  /* Product image — high occupancy inside the tight frame */
  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__visual-img--product {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: min(100%, 480px) !important;
    max-height: min(78vh, 340px) !important;
    /* Within frame padding, image fills most of the useful area */
    object-fit: contain !important;
    object-position: center !important;
    /* Soft lift — not a second white box */
    filter: drop-shadow(0 6px 14px rgba(16, 33, 61, 0.14));
  }
}

@media (min-width: 1280px) {
  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__product-frame {
    max-width: min(92%, 560px) !important;
    max-height: min(92%, 380px) !important;
    padding: clamp(0.8rem, 1.1vw, 1.2rem) !important;
  }

  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__visual-img--product {
    max-width: min(100%, 520px) !important;
    max-height: 348px !important;
  }
}

@media (min-width: 1024px) and (max-width: 1279.98px) {
  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__visual--stage {
    padding: 0.85rem 1rem 0.85rem 0.5rem !important;
  }

  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__product-frame {
    max-width: min(94%, 440px) !important;
    max-height: min(88%, 330px) !important;
    padding: clamp(0.7rem, 1.1vw, 1rem) !important;
    border-radius: 12px !important;
  }

  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__visual-img--product {
    max-width: min(100%, 400px) !important;
    max-height: 300px !important;
  }
}

/* Mobile / tablet — avoid giant white dead space; keep stacked architecture */
@media (max-width: 1023.98px) {
  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__visual--stage {
    margin: 0 0.85rem 1rem !important;
    padding: 0.35rem 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    justify-content: center !important;
  }

  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__product-frame {
    display: inline-flex !important;
    width: fit-content !important;
    max-width: min(92%, 320px) !important;
    padding: 0.7rem !important;
    border-radius: 12px !important;
    border: 1px solid rgba(190, 214, 240, 0.4) !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 6px 16px rgba(3, 24, 58, 0.12) !important;
  }

  [data-storefront="technoshop"] .ts-density-v12 .ts-hero[data-ts-top="v2"] .ts-hero__banner--zones .ts-hero__visual-img--product {
    max-width: min(100%, 280px) !important;
    max-height: 220px !important;
  }
}
