.hero-loop{align-self:start;min-width:0;padding-top:8px}
.hero-loop-media{position:relative;aspect-ratio:1;background:var(--canvas)}
.hero-loop video{display:block;width:100%;height:100%;object-fit:contain}
.hero-loop-description{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.hero-loop-toggle{position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--canvas);color:var(--ink)}
.hero-loop-toggle:hover{background:var(--white);border-color:var(--accent)}
.hero-loop-toggle .loop-pause,.hero-loop-toggle[data-playing=true] .loop-play{display:none}
.hero-loop-toggle[data-playing=true] .loop-pause{display:block}
.hero-loop figcaption{padding:18px 0 0;border-top:1px solid var(--line)}
.hero-loop-words{display:flex;flex-wrap:wrap;gap:6px 12px;font-family:var(--font-display);font-size:clamp(17px,1.7vw,22px);font-weight:600;letter-spacing:-.025em;line-height:1.3}
.hero-loop-words span{color:var(--ink);transition:color .3s ease}
.hero-loop-words .is-current{color:var(--accent)}
@media(max-width:700px){.hero-loop{padding-top:0;width:100%}.hero-loop-words{font-size:clamp(17px,4.7vw,22px)}.hero-loop figcaption{padding-top:16px}}
@media(prefers-reduced-motion:reduce){.hero-loop-words span{transition:none}}
@media print{.hero-loop-toggle{display:none}}
