/* Linkship – animierte Rubrik-Grafiken im Kategorie-Hero (linkship-styles).
   SVG + CSS + SMIL, kein Framework. Bewegung stoppt bei prefers-reduced-motion
   und ausserhalb des Sichtfelds (rubrik-visuals.js). */

.lsr-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(28px,4vw,64px);align-items:center;text-align:left;padding:8px 0 4px}
.lsr-hero-text{max-width:560px}
.lsr-hero-text .page-title,.lsr-hero-text h1{text-align:left;margin:0 0 14px;font-size:clamp(34px,4.2vw,52px);line-height:1.06}
.lsr-hero-text .archive-description{text-align:left;margin:0;font-size:18px;line-height:1.55;color:#C7D2E8}
.lsr-hero-text .archive-description p{margin:0}
.lsr-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;padding:6px 12px;border-radius:999px;background:rgba(255,180,84,.12);border:1px solid rgba(255,180,84,.35);color:#FFB454;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.lsr-kicker::before{content:"";width:7px;height:7px;border-radius:50%;background:#FFB454;box-shadow:0 0 0 0 rgba(255,180,84,.6);animation:lsr-dot 2s ease-out infinite}
.lsr-visual{position:relative;width:100%;max-width:620px;justify-self:end;aspect-ratio:560/360}
.lsr-visual svg{display:block;width:100%;height:auto;overflow:visible}
.wp-theme-kadence .entry-hero.post-archive-hero-section .entry-header:has(.lsr-hero){padding-top:clamp(24px,3vw,44px);padding-bottom:clamp(28px,3.4vw,52px)}
@media (max-width:900px){
  .lsr-hero{grid-template-columns:1fr;gap:18px;text-align:left}
  .lsr-visual{justify-self:center;max-width:520px}
  .lsr-hero-text .archive-description{font-size:16.5px}
}

/* Bausteine */
.lsr-svg .lsr-ring{transform-box:fill-box;transform-origin:center;animation:lsr-ring 2.6s ease-out infinite}
.lsr-svg .lsr-wave{transform-box:fill-box;transform-origin:center;animation:lsr-wave 3.3s ease-out infinite}
.lsr-svg .lsr-flow{stroke-dasharray:4 9;animation:lsr-flow 1.1s linear infinite}
.lsr-svg .lsr-flow-slow{stroke-dasharray:8 10;animation:lsr-flow 2.4s linear infinite}
.lsr-svg .lsr-bob{animation:lsr-bob 3.4s ease-in-out infinite}
.lsr-svg .lsr-spin{transform-box:fill-box;transform-origin:center;animation:lsr-spin 7s linear infinite}
.lsr-svg .lsr-eq{transform-box:fill-box;transform-origin:50% 100%;animation:lsr-eq .9s ease-in-out infinite alternate}
.lsr-svg .lsr-blink{animation:lsr-blink 1.6s ease-in-out infinite}

@keyframes lsr-ring{0%{opacity:.75;transform:scale(1)}100%{opacity:0;transform:scale(1.28)}}
@keyframes lsr-wave{0%{opacity:.55;transform:scale(1)}100%{opacity:0;transform:scale(2.6)}}
@keyframes lsr-flow{to{stroke-dashoffset:-26}}
@keyframes lsr-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes lsr-spin{to{transform:rotate(360deg)}}
@keyframes lsr-eq{from{transform:scaleY(.25)}to{transform:scaleY(1)}}
@keyframes lsr-blink{0%,100%{opacity:1}50%{opacity:.25}}
@keyframes lsr-dot{0%{box-shadow:0 0 0 0 rgba(255,180,84,.6)}100%{box-shadow:0 0 0 9px rgba(255,180,84,0)}}

/* Pause ausserhalb des Sichtfelds */
.lsr-paused .lsr-svg *,.lsr-paused.lsr-kicker::before{animation-play-state:paused!important}

/* Ruhebeduerfnis: Standbild, bewegte Punkte ausgeblendet */
@media (prefers-reduced-motion:reduce){
  .lsr-svg *,.lsr-kicker::before{animation:none!important}
  .lsr-svg .lsr-mover{display:none}
}
