/* LUMLUN 2026-10-30 V10.3: heading visibility and subtle scrolling reveals.
   No changes to content, products, card positioning, SEO, or pagination semantics. */
html:has(#lumlun-review-v10),html:has(#lcv8){
  scroll-padding-top:calc(var(--ll-v103-header-bottom, 115px) + 24px)!important;
}
#lumlun-review-v10 .lseo-content :is(h1,h2),
#lcv8 .lcv8-content :is(h1,h2),
#lumlun-review-v10 #lseo-products,
#lcv8 .lcv8-heading,
#lcv8 .lcv8-results{
  scroll-margin-top:calc(var(--ll-v103-header-bottom, 115px) + 24px)!important;
}
/* Restore a little air above the first standalone H1. */
#lumlun-review-v10 .lseo-shell{
  padding-top:clamp(35px,3vw,51px)!important;
}
/* V10.4 - reference-inspired editorial scroll reveal.
   3 columns on desktop, 2 on mobile. This changes gaps and motion ONLY. */
:is(#lcv8 .lcv8-grid,#lumlun-review-v10 .lseo-product-grid,#lumlun-product-grid){
  column-gap:clamp(12px,1.15vw,17px)!important;
  row-gap:19px!important;
  align-items:stretch!important;
}
/* Opacity + a 16px lift rather than layout-transform; stagger each column subtly.
   No inserted placeholders, white overlays, scripts that reposition product rows. */
@media(prefers-reduced-motion:no-preference){
  :is(#lcv8 .lcv8-grid,#lumlun-review-v10 .lseo-product-grid,#lumlun-product-grid)
  >.llc-product-card.ll-v103-reveal-pending{
    opacity:.055!important;
    translate:0 16px!important;
    transition:none!important;
    will-change:opacity,translate;
  }
  :is(#lcv8 .lcv8-grid,#lumlun-review-v10 .lseo-product-grid,#lumlun-product-grid)
  >.llc-product-card.ll-v103-reveal-visible{
    opacity:1!important;
    translate:0 0!important;
    transition:opacity .84s cubic-bezier(.22,.8,.24,1),
               translate .84s cubic-bezier(.22,.8,.24,1),
               border-color .18s ease!important;
    transition-delay:var(--ll-v104-stagger,0ms)!important;
    will-change:auto;
  }
  /* Image comes into focus as the card emerges; product specs stay in the DOM. */
  :is(#lcv8 .lcv8-grid,#lumlun-review-v10 .lseo-product-grid,#lumlun-product-grid)
  >.llc-product-card.ll-v103-reveal-pending .llc-product-media img{
    opacity:.7;
    scale:1.015;
    transition:none!important;
  }
  :is(#lcv8 .lcv8-grid,#lumlun-review-v10 .lseo-product-grid,#lumlun-product-grid)
  >.llc-product-card.ll-v103-reveal-visible .llc-product-media img{
    opacity:1;
    scale:1;
    transition:opacity .9s ease-out,scale .95s ease-out,transform .2s ease!important;
    transition-delay:var(--ll-v104-stagger,0ms)!important;
  }
}
@media(max-width:820px){
  :is(#lcv8 .lcv8-grid,#lumlun-review-v10 .lseo-product-grid,#lumlun-product-grid){
    column-gap:10px!important;
    row-gap:13px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  :is(#lcv8 .lcv8-grid,#lumlun-review-v10 .lseo-product-grid,#lumlun-product-grid)>.llc-product-card{
    opacity:1!important;translate:none!important;transition:none!important;
  }
  :is(#lcv8 .lcv8-grid,#lumlun-review-v10 .lseo-product-grid,#lumlun-product-grid) .llc-product-media img{
    opacity:1!important;scale:1!important;transition:none!important;
  }
}
