/* Home: scroll-pinned O₂ + O → O₃ formation over the standard hero. */

.ogx-pin{
  position:relative;
  height:235vh;
  background:var(--surface,#faf9f5);
  pointer-events:none;
}
.ogx-pin .og-hero{
  pointer-events:auto;
}
body.theme.og-home .ogx-pin .og-hero{
  position:sticky;
  top:var(--ogx-top,78px);
  height:max(640px,calc(100svh - var(--ogx-top,78px)))!important;
  max-height:none;
}
body.theme.og-home .ogx-pin .og-hero-field{
  transform-origin:62% 50%;
  will-change:transform,opacity;
}
body.theme.og-home .ogx-pin .og-hero-bg{
  will-change:transform,translate;
}
body.theme.og-home .ogx-pin .og-hero-copy,
body.theme.og-home .ogx-pin .hero-card,
body.theme.og-home .ogx-pin .shelf,
body.theme.og-home .ogx-pin .shelf-cap{
  transition:none;
}
body.theme.og-home .ogx-pin .shelf{
  transform-origin:80% 100%;
  will-change:transform,opacity;
}

.ogx-o3{
  position:absolute;inset:0;
  z-index:3;
  width:100%;height:100%;
  pointer-events:none;
}
body.theme.og-home .og-hero.ogx-reacting:after{opacity:.55}

.ogx-scroll-hint{
  position:absolute;
  z-index:7;
  left:50%;
  bottom:clamp(18px,3.5vh,34px);
  transform:translateX(-50%);
  margin:0;
  display:inline-flex;
  align-items:center;
  gap:10px;
  pointer-events:none;
  font:600 12px/1 var(--f-sans,inherit);
  letter-spacing:.08em;
  color:var(--ink-2,#57563f);
  white-space:nowrap;
}
.ogx-scroll-hint span{
  text-transform:uppercase;
  font-size:10.5px;
  letter-spacing:.16em;
  color:var(--gold-deep,#8c6a00);
}
.ogx-scroll-hint i{
  width:1px;height:26px;
  background:linear-gradient(180deg,var(--gold,#c99700),transparent);
  animation:ogx-hint-drip 1.8s ease-in-out infinite;
  transform-origin:top;
}
@keyframes ogx-hint-drip{
  0%{transform:scaleY(0);opacity:0}
  35%{opacity:1}
  100%{transform:scaleY(1);opacity:0}
}

@media (max-width:760px){
  .ogx-pin{height:190vh}
  body.theme.og-home .ogx-pin .og-hero{
    height:auto!important;
    min-height:calc(100svh - var(--ogx-top,68px));
    max-height:none;
  }
  .ogx-scroll-hint{bottom:14px;font-size:11px}
}
@media (prefers-reduced-motion:reduce){
  .ogx-pin{height:auto;background:none}
  body.theme.og-home .ogx-pin .og-hero{position:relative;top:auto;height:max(640px,calc(100svh - 110px))!important}
  .ogx-o3,.ogx-scroll-hint{display:none!important}
}
