/* Close-up archive composition, independent from the wormhole's focal offset. */
.hero:is([data-hero-effect=floppy],[data-hero-effect=cube],[data-hero-effect=sheet]) .hero-shade{opacity:.38;background:linear-gradient(90deg,color-mix(in srgb,var(--hero-bg) 50%,transparent),transparent 55%)}
@media(max-width:760px){.hero:is([data-hero-effect=floppy],[data-hero-effect=cube],[data-hero-effect=sheet]) .hero-shade{opacity:.55;background:linear-gradient(to bottom,color-mix(in srgb,var(--hero-bg) 60%,transparent),transparent 72%)}}

/* Reference composition: quiet copy on the left, illuminated archives on the right. */
@media(min-width:1001px){
 .hero[data-hero-effect=sheet] .hero-content{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;align-content:center}
 .hero[data-hero-effect=sheet] .hero-content>*{grid-column:1;justify-self:start}
 .hero[data-hero-effect=sheet] .hero-content .hero-description{max-width:100%}
 .hero[data-hero-effect=sheet] .hero-shade{opacity:.65;background:linear-gradient(90deg,transparent 25%,color-mix(in srgb,var(--hero-bg) 65%,transparent) 65%,var(--hero-bg))}
}

/* Sheet shader owns graded defocus and copy protection; avoid double darkening. */
.hero[data-hero-effect=sheet] .hero-shade{opacity:0}

/* A crisp boundary; its local hover glow sits outside the clipped hero canvas. */
.hero[data-hero-effect=sheet]::after{content:none}
.hero-divider{position:relative;z-index:3;height:1px;background:#c5c5c533;pointer-events:none;--divider-x:50%;--divider-strength:0}
html[data-theme=light] .hero-divider{background:#c5c5c580}
.hero-divider::before,.hero-divider::after{content:"";position:absolute;pointer-events:none;opacity:var(--divider-strength);transition:opacity .18s ease}
.hero-divider::before{inset:-12px 0;background:radial-gradient(ellipse 200px 12px at var(--divider-x) 50%,#fff9 0%,#fff3 26%,#fff1 52%,transparent 100%)}
.hero-divider::after{inset:0;background:radial-gradient(ellipse 230px 1px at var(--divider-x) 50%,#fff 0%,#ffff 8%,#fffa 30%,#fff4 60%,transparent 100%)}
@media(prefers-reduced-motion:reduce){.hero-divider::before,.hero-divider::after{transition:none}}
