

.ws-seo-hero {
  position: relative;
  padding-block: clamp(6rem, 4rem + 8vw, 9rem) var(--sp-section);
  overflow: hidden;
}

@media (min-width: 861px) {
  .ws-seo-hero .ws-subhero-mesh--diagonal-right {
    -webkit-clip-path: polygon(54% 0, 100% 0, 100% 100%, 58% 100%);
    clip-path: polygon(54% 0, 100% 0, 100% 100%, 58% 100%);
  }
}
.ws-seo-hero::before {
  
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(60% 55% at 78% 38%, rgba(15, 23, 42, 0.05), transparent 70%);
  pointer-events: none;
}
.ws-seo-hero-inner {
  position: relative;
  z-index: 1; 
  width: 100%;
  max-width: var(--max-w);
  margin-inline: auto;
  padding-inline: 1.25rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(2.5rem, 1rem + 6vw, 4.5rem);
  align-items: center;
}
@media (min-width: 880px) {
  .ws-seo-hero-inner { grid-template-columns: 1.05fr 0.95fr; padding-inline: 2rem; }
}
.ws-seo-hero-h1 {
  font-size: clamp(2.75rem, 1.6rem + 5.2vw, 5rem);
  line-height: 1.02;
  letter-spacing: -0.04em;
  margin-bottom: var(--sp-3);
}
.ws-seo-hero-line {
  display: block;
  opacity: 0;
  transform: translateY(28px);
  animation: ws-seo-hero-rise 0.9s var(--ease-out) forwards;
}
.ws-seo-hero-line:nth-child(2) { animation-delay: 0.13s; }
@keyframes ws-seo-hero-rise {
  to { opacity: 1; transform: translateY(0); }
}
.ws-seo-hero-sub {
  font-size: clamp(1.1rem, 1rem + 0.6vw, 1.4rem);
  color: var(--c-muted);
  max-width: 34ch;
  margin-bottom: var(--sp-4);
  opacity: 0;
  animation: ws-seo-hero-rise 0.9s var(--ease-out) 0.26s forwards;
}
.ws-seo-hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2);
  margin-bottom: var(--sp-3);
  opacity: 0;
  animation: ws-seo-hero-rise 0.9s var(--ease-out) 0.38s forwards;
}
.ws-seo-hero-note {
  font-size: var(--fs-small);
  color: var(--c-muted);
  opacity: 0;
  animation: ws-seo-hero-rise 0.9s var(--ease-out) 0.48s forwards;
}

@media (max-width: 860px) {
  .ws-seo-hero canvas.ws-subhero-mesh--diagonal-right,
  .ws-seo-hero .ws-subhero-inset.ws-subhero-mesh--diagonal-right {
    -webkit-clip-path: polygon(0 70%, 100% 60%, 100% 100%, 0 100%);
    clip-path: polygon(0 70%, 100% 60%, 100% 100%, 0 100%);
  }
}

.ws-seo-hero-visual { display: flex; justify-content: center; }
.ws-seo-auth {
  position: relative;
  width: min(100%, 460px);
  aspect-ratio: 1 / 1;
  --orbit-px: 0px;
  --orbit-py: 0px;
}

.ws-seo-auth-beams { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; z-index: 1; }
.ws-seo-auth-base { stroke: rgba(15, 23, 42, 0.09); stroke-width: 2; fill: none; }
.ws-seo-auth-beam {
  fill: none; stroke-width: 3.5; stroke-linecap: round;
  stroke-dasharray: 22 340; stroke-dashoffset: 360;
  animation: ws-seo-auth-flow 3.8s var(--ease-soft) infinite;
}
.ws-seo-auth-beam[data-beam="2"] { animation-delay: 1.27s; }
.ws-seo-auth-beam[data-beam="3"] { animation-delay: 2.53s; }
@keyframes ws-seo-auth-flow {
  0% { stroke-dashoffset: 360; opacity: 0; }
  12% { opacity: 1; }
  60% { stroke-dashoffset: 36; opacity: 1; }
  76%, 100% { stroke-dashoffset: 36; opacity: 0; }
}

.ws-seo-auth-ring {
  position: absolute; left: 50%; top: 50%;
  width: 150px; height: 150px; margin: -75px 0 0 -75px;
  border-radius: 50%;
  border: 1px solid rgba(124, 58, 237, 0.30);
  opacity: 0;
  animation: ws-seo-auth-converge 5.1s var(--ease-out) infinite;
}
.ws-seo-auth-ring:nth-child(3) { animation-delay: 1.7s; }
.ws-seo-auth-ring:nth-child(4) { animation-delay: 3.4s; }
@keyframes ws-seo-auth-converge {
  0% { transform: scale(2.6); opacity: 0; }
  18% { opacity: 0.55; }
  100% { transform: scale(0.56); opacity: 0; }
}

.ws-seo-auth-core {
  position: absolute; left: 50%; top: 50%;
  width: 150px; height: 150px; margin: -75px 0 0 -75px;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
  border-radius: 50%;
  background: radial-gradient(circle at 38% 30%, #ffffff, var(--c-surface) 82%);
  border: 1px solid rgba(124, 58, 237, 0.22);
  box-shadow: 0 26px 60px -14px rgba(124, 58, 237, 0.55), 0 1px 0 rgba(255, 255, 255, 0.9) inset;
  z-index: 3;
  transform: translate(var(--orbit-px), var(--orbit-py));
  transition: transform 0.3s var(--ease-out);
}
.ws-seo-auth-core-glow {
  position: absolute; inset: -18%; border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 58, 237, 0.42), transparent 66%);
  z-index: -1; pointer-events: none;
  animation: ws-seo-auth-pulse 3.8s var(--ease-soft) infinite;
}
@keyframes ws-seo-auth-pulse {
  0%, 100% { transform: scale(0.92); opacity: 0.5; }
  50% { transform: scale(1.12); opacity: 0.92; }
}
.ws-seo-auth-mark { width: 46px; height: 46px; }
.ws-seo-auth-mark path { fill: var(--c-text); }
.ws-seo-auth-core-name {
  font-size: 0.62rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--c-muted);
}

.ws-seo-auth-seal {
  position: absolute; bottom: -13px; left: 50%;
  display: inline-flex; align-items: center; gap: 5px;
  padding: 5px 11px; border-radius: 999px;
  background: linear-gradient(120deg, #7c3aed, #ec4899 55%, #f97316);
  color: #fff; font-size: 0.62rem; font-weight: 800; letter-spacing: 0.03em; white-space: nowrap;
  box-shadow: 0 10px 24px -8px rgba(236, 72, 153, 0.6);
  transform: translateX(-50%);
  animation: ws-seo-auth-seal 3.8s var(--ease-soft) infinite;
}
.ws-seo-auth-seal svg { width: 12px; height: 12px; }
@keyframes ws-seo-auth-seal {
  0%, 50% { box-shadow: 0 10px 24px -8px rgba(236, 72, 153, 0.55); transform: translateX(-50%) scale(1); }
  62% { box-shadow: 0 10px 30px -6px rgba(236, 72, 153, 0.7), 0 0 0 6px rgba(236, 72, 153, 0.16); transform: translateX(-50%) scale(1.06); }
  80%, 100% { box-shadow: 0 10px 24px -8px rgba(236, 72, 153, 0.55); transform: translateX(-50%) scale(1); }
}

.ws-seo-auth-src {
  position: absolute; z-index: 4;
  display: inline-flex; flex-direction: column; align-items: center; gap: 5px;
  transform: translate(-50%, -50%) translate(var(--orbit-px), var(--orbit-py));
  transition: transform 0.3s var(--ease-out);
}
.ws-seo-auth-src svg {
  width: 22px; height: 22px; padding: 11px; box-sizing: content-box;
  border-radius: 50%; background: var(--c-bg);
  border: 1px solid rgba(124, 58, 237, 0.22);
  box-shadow: 0 12px 28px -8px rgba(124, 58, 237, 0.42);
  color: var(--c-violet);
}
.ws-seo-auth-src i {
  font-style: normal; font-size: 0.66rem; font-weight: 700; color: var(--c-text);
  background: var(--c-bg); padding: 2px 9px; border-radius: 999px;
  box-shadow: 0 5px 14px -5px rgba(15, 23, 42, 0.28);
}
.ws-seo-auth-src--search { left: 32%; top: 8%; }
.ws-seo-auth-src--ai { left: 88%; top: 37%; }
.ws-seo-auth-src--region { left: 28%; top: 88%; }
.ws-seo-auth-src--ai svg {
  color: var(--c-orange); border-color: rgba(249, 115, 22, 0.28);
  box-shadow: 0 12px 28px -8px rgba(249, 115, 22, 0.42);
}
.ws-seo-auth-src--region svg {
  color: #ec4899; border-color: rgba(236, 72, 153, 0.28);
  box-shadow: 0 12px 28px -8px rgba(236, 72, 153, 0.42);
}

.ws-seo-explain-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(2rem, 1rem + 4vw, 3.5rem);
  align-items: start;
}
@media (min-width: 860px) {
  .ws-seo-explain-inner { grid-template-columns: 1fr 1fr; align-items: center; }
}
.ws-seo-explain-h2 { margin-bottom: var(--sp-3); max-width: 20ch; }
.ws-seo-explain-text p { color: var(--c-muted); margin-bottom: var(--sp-3); }
.ws-seo-explain-lead { font-size: 1.05rem; }
.ws-seo-explain-q { color: var(--c-text) !important; font-weight: 600; margin-bottom: var(--sp-2) !important; }
.ws-seo-explain-points { list-style: none; display: grid; gap: 0.65rem; margin: 0 0 var(--sp-3); padding: 0; }
.ws-seo-explain-points li { position: relative; padding-left: 1.6rem; color: var(--c-muted); }
.ws-seo-explain-points li b { color: var(--c-text); font-weight: 700; }
.ws-seo-explain-points li::before {
  content: ""; position: absolute; left: 0; top: 0.45em; width: 9px; height: 9px; border-radius: 3px;
  background: linear-gradient(135deg, var(--c-violet), var(--c-pink));
}
.ws-seo-explain-geo b { color: var(--c-violet); }
.ws-seo-explain-aside {
  display: grid;
  gap: var(--sp-2);
  position: sticky;
  top: calc(var(--header-h, 88px) + 1.5rem);
}

.ws-seo-explain-viz-wrap {
  position: relative;
  width: 100%;
  max-width: 440px;
  margin-inline: auto;
  aspect-ratio: 820 / 1040;
  overflow: hidden;
  border-radius: var(--radius-lg);
}
.ws-seo-explain-viz-frame {
  position: absolute;
  top: 50%; left: 50%;
  width: 820px; height: 1040px;
  border: 0;
  pointer-events: none;
  transform-origin: center center;
  transform: translate(-50%, -50%) scale(var(--ws-seo-viz-s, 0.5));
}

.ws-seo-morph {
  background:
    radial-gradient(120% 90% at 22% 0%, rgba(124, 58, 237, 0.30), transparent 56%),
    radial-gradient(90% 80% at 100% 100%, rgba(249, 115, 22, 0.14), transparent 60%),
    var(--c-accent);
  color: var(--c-accent-on);
  overflow: hidden;
}
.ws-seo-morph-inner { max-width: 760px; text-align: center; }
.ws-seo-morph-h2 { color: var(--c-accent-on); margin-bottom: var(--sp-2); }
.ws-seo-morph-lead {
  color: rgba(255, 255, 255, 0.7);
  max-width: 46ch;
  margin-inline: auto;
  margin-bottom: var(--sp-5);
}
.ws-seo-morph-stage {
  display: grid;
  gap: 0;
  justify-items: center;
  text-align: left;
}
.ws-seo-morph-query {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  width: min(100%, 480px);
  padding: 0.85rem 1.1rem;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.92);
}
.ws-seo-morph-query-ico { color: rgba(255, 255, 255, 0.65); flex: none; }
.ws-seo-morph-query-text { font-size: var(--fs-body); min-height: 1.2em; }
.ws-seo-morph-query-caret {
  width: 2px; height: 1.1em;
  background: var(--c-accent-on);
  margin-left: -2px;
  animation: ws-seo-caret 1s steps(1) infinite;
}
@keyframes ws-seo-caret { 50% { opacity: 0; } }

.ws-seo-morph-answer {
  position: relative;
  width: min(100%, 540px);
  margin-top: 1.6rem;
  padding: 1.4rem 1.5rem;
  background: rgba(255, 255, 255, 0.97);
  color: var(--c-text);
  border-radius: var(--radius-lg);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
}
.ws-seo-morph-answer-head {
  display: flex; align-items: center; gap: 0.5rem;
  margin-bottom: 0.9rem;
}
.ws-seo-morph-answer-mark { color: var(--c-violet); font-size: 1.1rem; }
.ws-seo-morph-answer-label {
  font-size: 0.7rem; font-weight: 700; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--c-muted);
}
.ws-seo-morph-state {
  opacity: 0;
  transition: opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);
  transform: translateY(8px);
}
.ws-seo-morph-state[hidden] { display: none; }
.ws-seo-morph-state.is-active { opacity: 1; transform: translateY(0); }
.ws-seo-morph-display {
  font-size: clamp(1.3rem, 1.1rem + 1vw, 1.7rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  margin-bottom: 0.5rem;
  color: var(--c-muted);
}
.ws-seo-morph-body { color: var(--c-text); margin: 0; }
.ws-seo-morph-body--example { font-size: 1.05rem; }
.ws-seo-morph-name { position: relative; font-weight: 700; white-space: nowrap; }
.ws-seo-morph-name-mark {
  position: absolute; left: 0; right: 0; bottom: -6px; width: 100%; height: 10px;
  color: var(--c-orange);
}
.ws-seo-morph-name-mark path {
  stroke-dasharray: 210; stroke-dashoffset: 210;
  animation: ws-seo-underline 0.7s var(--ease-out) 0.25s forwards;
}
@keyframes ws-seo-underline { to { stroke-dashoffset: 0; } }
.ws-seo-morph-data {
  list-style: none;
  display: flex; flex-wrap: wrap; gap: 0.5rem;
  margin-top: 1rem;
}
.ws-seo-morph-data li {
  font-size: var(--fs-small);
  padding: 0.3rem 0.7rem;
  background: var(--c-surface);
  border: 1px solid var(--c-border);
  border-radius: 999px;
  color: var(--c-muted);
}
.ws-seo-morph-data li span { color: var(--c-amber); }

.ws-seo-morph-source {
  display: flex; flex-direction: column; align-items: center;
  width: min(100%, 320px);
  margin-top: 0.4rem;
}
.ws-seo-morph-source-line { width: 80%; height: 24px; color: rgba(255, 255, 255, 0.4); }
.ws-seo-morph-source-capsule {
  display: inline-flex; align-items: center; gap: 0.5rem;
  padding: 0.45rem 0.9rem;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  font-size: var(--fs-small);
  color: rgba(255, 255, 255, 0.92);
}
.ws-seo-morph-source-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--c-orange);
  box-shadow: 0 0 0 4px rgba(249, 115, 22, 0.25);
}
.ws-seo-morph-disclaimer {
  margin-top: var(--sp-4);
  font-size: var(--fs-small);
  color: rgba(255, 255, 255, 0.55);
  max-width: 50ch;
  margin-inline: auto;
}

.ws-seo-struct-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(2rem, 1rem + 4vw, 3.5rem);
  align-items: center;
}
@media (min-width: 920px) {
  .ws-seo-struct-inner { grid-template-columns: 0.85fr 1.15fr; }
}
.ws-seo-struct-h2 { margin-bottom: var(--sp-2); max-width: 18ch; }
.ws-seo-struct-lead { color: var(--c-muted); margin-bottom: var(--sp-3); }
.ws-seo-struct-legend { list-style: none; display: grid; gap: 0.6rem; }
.ws-seo-struct-legend li { display: flex; align-items: center; gap: 0.6rem; font-size: var(--fs-small); }
.ws-seo-struct-legend-dot { width: 12px; height: 12px; border-radius: 3px; flex: none; }
.ws-seo-struct-legend-dot[data-kind="head"] { background: var(--c-text); }
.ws-seo-struct-legend-dot[data-kind="data"] { background: var(--c-orange); }
.ws-seo-struct-legend-dot[data-kind="block"] { background: var(--c-violet); }

.ws-seo-struct-stage {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(0.75rem, 0.5rem + 1vw, 1.5rem);
  align-items: stretch;
}
.ws-seo-struct-pane {
  position: relative;
  border: 1px solid var(--c-border);
  border-radius: var(--radius-lg);
  background: var(--c-bg);
  padding: 1.6rem 1.2rem 1.2rem;
  min-height: 260px;
}
.ws-seo-struct-pane--raw { background: var(--c-surface); }
.ws-seo-struct-pane-tag {
  position: absolute; top: 0.7rem; left: 1.2rem;
  font-size: 0.65rem; font-weight: 700; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--c-muted);
}
.ws-seo-struct-lines { display: grid; gap: 0.55rem; margin-top: 1.4rem; }
.ws-seo-struct-lines span {
  display: block; height: 8px; border-radius: 4px;
  background: var(--c-border-strong, rgba(15, 23, 42, 0.16));
  width: 100%;
}
.ws-seo-struct-lines span:nth-child(3) { width: 92%; }
.ws-seo-struct-lines span:nth-child(6) { width: 96%; }
.ws-seo-struct-lines span:nth-child(9) { width: 88%; }
.ws-seo-struct-lines span:nth-child(10) { width: 70%; }

.ws-seo-struct-doc { display: grid; gap: 0.55rem; margin-top: 1.4rem; }
.ws-seo-struct-el {
  height: 12px; border-radius: 4px;
  background: var(--c-border-strong, rgba(15, 23, 42, 0.16));
  transform-origin: left center;
  
  opacity: 0;
  transform: scaleX(0.2);
  transition: opacity 0.45s var(--ease-out), transform 0.55s var(--ease-out);
}
.ws-seo-struct-el--text { height: 8px; }
.ws-seo-struct-el[data-kind="head"] { height: 16px; background: var(--c-text); width: 70%; }
.ws-seo-struct-el[data-kind="head"][data-sub="1"] { width: 50%; height: 13px; }
.ws-seo-struct-el[data-kind="data"] {
  height: 26px; background: rgba(249, 115, 22, 0.14);
  border: 1px dashed var(--c-orange); border-radius: 6px;
}
.ws-seo-struct-el[data-kind="block"] {
  height: 30px; background: rgba(124, 58, 237, 0.1);
  border: 1px dashed var(--c-violet); border-radius: 6px;
}
.ws-seo-struct-stage.is-built .ws-seo-struct-el { opacity: 1; transform: scaleX(1); }
.ws-seo-struct-stage.is-built .ws-seo-struct-el:nth-child(1) { transition-delay: 0.05s; }
.ws-seo-struct-stage.is-built .ws-seo-struct-el:nth-child(2) { transition-delay: 0.15s; }
.ws-seo-struct-stage.is-built .ws-seo-struct-el:nth-child(3) { transition-delay: 0.25s; }
.ws-seo-struct-stage.is-built .ws-seo-struct-el:nth-child(4) { transition-delay: 0.35s; }
.ws-seo-struct-stage.is-built .ws-seo-struct-el:nth-child(5) { transition-delay: 0.45s; }
.ws-seo-struct-stage.is-built .ws-seo-struct-el:nth-child(6) { transition-delay: 0.55s; }
.ws-seo-struct-stage.is-built .ws-seo-struct-el:nth-child(7) { transition-delay: 0.65s; }
.ws-seo-struct-stage.is-built .ws-seo-struct-pane--raw { opacity: 0.55; transition: opacity 0.6s var(--ease-out); }

.ws-seo-work-head { max-width: 56ch; margin-bottom: var(--sp-5); }
.ws-seo-work-h2 { margin-bottom: var(--sp-2); }
.ws-seo-work-intro { color: var(--c-muted); margin: 0; }
.ws-seo-work-grid {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 620px) { .ws-seo-work-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 960px) { .ws-seo-work-grid { grid-template-columns: repeat(3, 1fr); } }
.ws-seo-work-item {
  display: block; 
  grid-template-columns: none;
  background: var(--c-bg);
  border: 1px solid var(--c-border);
  border-radius: var(--radius-lg);
  padding: 1.5rem 1.4rem;
  transition: border-color var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);
}
.ws-seo-work-item:hover {
  border-color: var(--c-border-strong, rgba(15, 23, 42, 0.16));
  transform: translateY(-3px);
}
.ws-seo-work-ico {
  display: inline-flex; align-items: center; justify-content: center;
  width: 54px; height: 54px;
  border-radius: var(--radius);
  background: var(--c-surface);
  color: var(--c-text);
  margin-bottom: 1rem;
}
.ws-seo-work-ico svg { transition: transform 0.5s var(--ease-spring); }
.ws-seo-work-item:hover .ws-seo-work-ico svg { transform: scale(1.12) rotate(-4deg); }
.ws-seo-work-item-title { font-size: 1.1rem; margin-bottom: 0.5rem; }
.ws-seo-work-item p { color: var(--c-muted); margin: 0; font-size: 0.97rem; }

.ws-seo-expect-head { max-width: 60ch; margin-bottom: var(--sp-5); }
.ws-seo-expect-h2 { margin-bottom: var(--sp-2); }
.ws-seo-expect-sub { color: var(--c-muted); margin: 0; }
.ws-seo-expect-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 760px) { .ws-seo-expect-grid { grid-template-columns: 1fr 1fr; } }
.ws-seo-expect-col {
  border: 1px solid var(--c-border);
  border-radius: var(--radius-lg);
  padding: 1.6rem 1.6rem 1.8rem;
}
.ws-seo-expect-col--real { background: var(--c-surface); }
.ws-seo-expect-col--limit { background: var(--c-bg); }
.ws-seo-expect-col-label {
  display: block;
  font-size: var(--fs-small); font-weight: 700;
  letter-spacing: 0.04em;
  margin-bottom: 1rem;
}
.ws-seo-expect-list { list-style: none; display: grid; gap: 0.75rem; }
.ws-seo-expect-list li {
  position: relative; padding-left: 1.8rem; color: var(--c-text); font-size: 0.97rem;
}
.ws-seo-expect-list li::before {
  content: ""; position: absolute; left: 0; top: 0.35em;
  width: 14px; height: 14px;
  background: no-repeat center / contain
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");
}
.ws-seo-expect-list--limit li { color: var(--c-muted); }
.ws-seo-expect-list--limit li::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23737373' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E");
}

.ws-seo-packages-head { max-width: 58ch; margin-bottom: var(--sp-5); }
.ws-seo-packages-h2 { margin-bottom: var(--sp-2); }
.ws-seo-packages-sub { color: var(--c-muted); margin: 0; }
.ws-seo-packages-grid {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  perspective: 1200px;
}
@media (min-width: 820px) { .ws-seo-packages-grid { grid-template-columns: repeat(3, 1fr); } }
.ws-seo-package-card {
  background: var(--c-bg);
  border: 1px solid var(--c-border);
  border-radius: var(--radius-lg);
  padding: 1.8rem 1.6rem 1.9rem;
  transform-style: preserve-3d;
  transition: box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);
  will-change: transform;
}
.ws-seo-package-card--mid {
  border-color: var(--c-border-strong, rgba(15, 23, 42, 0.16));
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.07);
}
.ws-seo-package-card.is-tilting { box-shadow: 0 22px 50px rgba(15, 23, 42, 0.12); }
.ws-seo-package-title { font-size: 1.2rem; margin-bottom: 0.6rem; }
.ws-seo-package-price { display: flex; align-items: baseline; gap: 0.35rem; flex-wrap: wrap; margin-bottom: 0.9rem; }
.ws-seo-package-price-prefix { font-size: var(--fs-small); color: var(--c-muted); }
.ws-seo-package-price-amount { font-size: 1.7rem; font-weight: 700; letter-spacing: -0.02em; }
.ws-seo-package-price-suffix { font-size: var(--fs-small); color: var(--c-muted); }
.ws-seo-package-text { color: var(--c-muted); font-size: 0.97rem; margin-bottom: 1.1rem; }
.ws-seo-package-list { list-style: none; display: grid; gap: 0.6rem; }
.ws-seo-package-list li {
  position: relative; padding-left: 1.5rem; font-size: 0.95rem;
}
.ws-seo-package-list li::before {
  content: ""; position: absolute; left: 0; top: 0.45em;
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--c-text);
}
.ws-seo-packages-note {
  margin-top: var(--sp-4);
  color: var(--c-muted);
  font-size: var(--fs-small);
  max-width: 70ch;
}

.ws-seo-package-tier {
  display: flex; align-items: center; gap: 0.55rem;
  font-size: var(--fs-small); color: var(--c-muted);
  margin-bottom: 1rem;
}
.ws-seo-package-tier-no {
  font-weight: 700; color: var(--c-violet);
  padding: 0.2rem 0.6rem; border-radius: 999px;
  background: rgba(124, 58, 237, 0.10); border: 1px solid rgba(124, 58, 237, 0.25);
}

.ws-seo-package-list li.ws-seo-package-incl { color: var(--c-text); font-weight: 600; }
.ws-seo-package-list li.ws-seo-package-incl::before {
  width: 9px; height: 9px; border-radius: 3px; top: 0.42em;
  background: linear-gradient(135deg, var(--c-violet), var(--c-pink));
}

.ws-seo-faq-inner { max-width: 800px; }
.ws-seo-faq-h2 { margin-bottom: var(--sp-4); }
.ws-seo-faq-list { display: grid; gap: 0.75rem; }
.ws-seo-faq-item {
  border: 1px solid var(--c-border);
  border-radius: var(--radius);
  background: var(--c-bg);
  overflow: hidden;
}
.ws-seo-faq-q {
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  padding: 1.1rem 1.3rem;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
}
.ws-seo-faq-q::-webkit-details-marker { display: none; }
.ws-seo-faq-chev {
  position: relative; width: 14px; height: 14px; flex: none;
}
.ws-seo-faq-chev::before, .ws-seo-faq-chev::after {
  content: ""; position: absolute; top: 50%; left: 50%;
  width: 12px; height: 2px; border-radius: 2px;
  background: var(--c-text);
  transform: translate(-50%, -50%);
  transition: transform var(--dur-base) var(--ease-out);
}
.ws-seo-faq-chev::after { transform: translate(-50%, -50%) rotate(90deg); }
.ws-seo-faq-item[open] .ws-seo-faq-chev::after { transform: translate(-50%, -50%) rotate(0); }
.ws-seo-faq-a { padding: 0 1.3rem 1.2rem; }
.ws-seo-faq-a p { color: var(--c-muted); margin: 0; max-width: none; }

.ws-seo-cta {
  text-align: center;
  background:
    radial-gradient(100% 120% at 50% 0%, rgba(124, 58, 237, 0.26), transparent 55%),
    radial-gradient(70% 90% at 85% 100%, rgba(249, 115, 22, 0.12), transparent 60%),
    var(--c-accent);
}
.ws-seo-cta-inner { max-width: 640px; }
.ws-seo-cta-h2 { color: var(--c-accent-on); margin-bottom: var(--sp-2); }
.ws-seo-cta-sub { color: rgba(255, 255, 255, 0.7); margin-inline: auto; margin-bottom: var(--sp-4); max-width: 48ch; }
.ws-seo-cta-actions {
  display: flex; flex-wrap: wrap; gap: var(--sp-2);
  justify-content: center;
  margin-bottom: var(--sp-2);
}
.ws-seo-cta-tel { display: inline-flex; align-items: center; gap: 0.5rem; }
.ws-seo-cta-note { font-size: var(--fs-small); color: rgba(255, 255, 255, 0.5); margin: 0; }

.ws-seo-work, .ws-seo-expect, .ws-seo-packages, .ws-seo-faq {
  content-visibility: auto;
  contain-intrinsic-size: auto 800px;
}

@media (max-width: 619px) {
  .ws-seo-auth { width: min(100%, 360px); }
  .ws-seo-explain-aside { position: static; }
  .ws-seo-struct-stage { grid-template-columns: 1fr; }
  .ws-seo-struct-pane { min-height: 200px; }
  .ws-seo-morph-answer { padding: 1.1rem 1.1rem; }
}

.ws-seo-morph-answer-label,
.ws-seo-expect-col-label,
.ws-seo-struct-pane-tag {
  color: var(--c-violet);
}

.ws-seo-expect-col--limit .ws-seo-expect-col-label { color: var(--c-muted); }

.ws-seo-package-price-amount {
  background: var(--grad-circle);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.ws-seo-package-price-prefix,
.ws-seo-package-price-suffix { color: var(--c-muted); }

.ws-seo-package-card {
  border-color: rgba(124, 58, 237, 0.22);
  background:
    radial-gradient(120% 130% at 100% 0%, rgba(124, 58, 237, 0.07), transparent 55%),
    var(--c-bg);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.8) inset,
    0 26px 54px -30px rgba(124, 58, 237, 0.32);
}
.ws-seo-package-card--mid {
  border-color: rgba(124, 58, 237, 0.45);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.8) inset,
    0 30px 60px -28px rgba(124, 58, 237, 0.42);
}
.ws-seo-package-card.is-tilting {
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.8) inset,
    0 34px 64px -26px rgba(124, 58, 237, 0.48);
}

.ws-seo-package-list li::before { background: var(--c-violet); }

.ws-seo-work-item {
  border-color: rgba(124, 58, 237, 0.16);
  background:
    radial-gradient(120% 130% at 100% 0%, rgba(124, 58, 237, 0.06), transparent 55%),
    var(--c-bg);
}
.ws-seo-work-item:hover { border-color: rgba(124, 58, 237, 0.42); }
.ws-seo-work-ico {
  background:
    radial-gradient(120% 120% at 30% 20%, rgba(124, 58, 237, 0.14), transparent 60%),
    var(--c-surface);
  color: var(--c-violet);
}

.ws-seo-expect-col {
  border-color: rgba(124, 58, 237, 0.18);
  box-shadow: 0 18px 42px -30px rgba(124, 58, 237, 0.30);
}
.ws-seo-expect-col--real {
  background:
    radial-gradient(120% 120% at 0% 0%, rgba(124, 58, 237, 0.07), transparent 55%),
    var(--c-surface);
}

.ws-seo-expect-list li {
  border-left: 2px solid rgba(124, 58, 237, 0.16);
  margin-left: 0.1rem;
  padding-left: 1.9rem;
}
.ws-seo-expect-list--limit li { border-left-color: rgba(15, 23, 42, 0.10); }

.ws-seo-faq-item { border-color: rgba(124, 58, 237, 0.16); }
.ws-seo-faq-item:hover { border-color: rgba(124, 58, 237, 0.32); }
.ws-seo-faq-item[open] {
  border-color: rgba(124, 58, 237, 0.45);
  box-shadow: 0 18px 40px -28px rgba(124, 58, 237, 0.40);
}
.ws-seo-faq-item[open] .ws-seo-faq-q { color: var(--c-violet); }
.ws-seo-faq-item[open] .ws-seo-faq-chev::before,
.ws-seo-faq-item[open] .ws-seo-faq-chev::after { background: var(--c-violet); }

.ws-seo-struct-el[data-kind="head"] {
  background: linear-gradient(90deg, var(--c-violet), var(--c-pink));
}
.ws-seo-struct-legend-dot[data-kind="head"] {
  background: linear-gradient(135deg, var(--c-violet), var(--c-pink));
}

.ws-seo-struct-pane--clean {
  border-color: rgba(124, 58, 237, 0.22);
  background:
    radial-gradient(120% 100% at 100% 0%, rgba(124, 58, 237, 0.06), transparent 55%),
    var(--c-bg);
}

@media (prefers-reduced-motion: reduce) {
  .ws-seo-hero-line, .ws-seo-hero-sub, .ws-seo-hero-ctas, .ws-seo-hero-note {
    opacity: 1; transform: none; animation: none;
  }
  .ws-seo-auth-ring, .ws-seo-auth-beam, .ws-seo-auth-core-glow,
  .ws-seo-auth-seal { animation: none; }
  .ws-seo-auth-ring { opacity: 0; }
  .ws-seo-work-ico svg, .ws-seo-package-card { transition: none; }
}

.ws-seo-stage {
  position: relative;
  padding-block: var(--sp-section) 0;
  color: var(--c-accent-on);
  background:
    radial-gradient(120% 80% at 18% 0%, rgba(124, 58, 237, 0.30), transparent 56%),
    radial-gradient(90% 80% at 100% 100%, rgba(249, 115, 22, 0.14), transparent 60%),
    var(--c-accent);
  overflow: clip;
}
.ws-seo-stage-head { max-width: 760px; text-align: center; margin-inline: auto; }
.ws-seo-stage-h2 { color: var(--c-accent-on); margin-bottom: var(--sp-2); }
.ws-seo-stage-intro { color: rgba(255, 255, 255, 0.68); max-width: 52ch; margin-inline: auto; }

.ws-seo-stage-track { position: relative; height: 440vh; }
.ws-seo-stage-pin {
  position: sticky;
  top: 0;
  height: var(--ws-stage-vh, 100vh);
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}
.ws-seo-stage-inner {
  width: 100%;
  max-width: var(--max-w);
  margin-inline: auto;
  padding-inline: clamp(1.25rem, 1rem + 2vw, 2.5rem);
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.75rem, 1rem + 3vw, 3.5rem);
  align-items: center;
}
@media (min-width: 880px) {
  .ws-seo-stage-inner { grid-template-columns: 1.08fr 0.92fr; }
}

.ws-seo-stage-canvas {
  position: relative;
  width: 100%;
  max-width: 560px;
  margin-inline: auto;
  aspect-ratio: 1 / 1;
}
@media (min-width: 880px) { .ws-seo-stage-canvas { margin-inline: 0; } }

.ws-seo-stage-doc {
  position: absolute;
  left: 0;
  top: 50%;
  width: 66%;
  transform: translateY(-50%);
  padding: 1.1rem 1.1rem 1.3rem;
  background: rgba(255, 255, 255, 0.97);
  border-radius: var(--radius-lg);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.4);
  transition: transform 0.7s var(--ease-out), opacity 0.6s var(--ease-out);
  z-index: 2;
}
.ws-seo-stage-domain {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.7rem;
  font-weight: 700;
  color: var(--c-muted);
  margin-bottom: 0.9rem;
}
.ws-seo-stage-domain-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--c-orange); flex: none; }
.ws-seo-stage-rows { display: grid; gap: 0.5rem; }
.ws-seo-stage-row {
  display: block;
  height: 9px;
  width: 100%;
  border-radius: 4px;
  background: rgba(15, 23, 42, 0.14);
  transform-origin: left center;
  transition: height 0.5s var(--ease-out), width 0.5s var(--ease-out),
    background-color 0.5s var(--ease-out), border-color 0.5s var(--ease-out),
    opacity 0.5s var(--ease-out);
}
.ws-seo-stage-row:nth-child(2) { transition-delay: 0.04s; }
.ws-seo-stage-row:nth-child(3) { width: 80%; transition-delay: 0.08s; }
.ws-seo-stage-row:nth-child(4) { transition-delay: 0.12s; }
.ws-seo-stage-row:nth-child(5) { width: 92%; transition-delay: 0.16s; }
.ws-seo-stage-row:nth-child(6) { transition-delay: 0.20s; }
.ws-seo-stage-row:nth-child(7) { width: 86%; transition-delay: 0.24s; }
.ws-seo-stage-row:nth-child(8) { transition-delay: 0.28s; }

.ws-seo-stage-canvas:not([data-act="1"]) .ws-seo-stage-row[data-becomes="head"] {
  height: 17px; width: 66%; background: linear-gradient(90deg, var(--c-violet), var(--c-pink));
}
.ws-seo-stage-canvas:not([data-act="1"]) .ws-seo-stage-row[data-becomes="subhead"] {
  height: 13px; width: 48%; opacity: 0.85;
  background: linear-gradient(90deg, var(--c-violet), var(--c-pink));
}
.ws-seo-stage-canvas:not([data-act="1"]) .ws-seo-stage-row[data-becomes="data"] {
  height: 24px; width: 88%; background: rgba(249, 115, 22, 0.16);
  border: 1px dashed var(--c-orange); border-radius: 6px;
}
.ws-seo-stage-canvas:not([data-act="1"]) .ws-seo-stage-row[data-becomes="block"] {
  height: 30px; width: 94%; background: rgba(124, 58, 237, 0.14);
  border: 1px dashed var(--c-violet); border-radius: 7px;
}
.ws-seo-stage-canvas:not([data-act="1"]) .ws-seo-stage-row[data-becomes="text"] { background: rgba(15, 23, 42, 0.24); }

.ws-seo-stage-scan {
  position: absolute;
  left: 0;
  top: 50%;
  width: 66%;
  height: 34px;
  border-radius: 8px;
  background: linear-gradient(180deg, transparent, rgba(124, 58, 237, 0.5), transparent);
  opacity: 0;
  z-index: 3;
  pointer-events: none;
}
.ws-seo-stage-canvas[data-act="1"] .ws-seo-stage-scan { animation: ws-seo-stage-scan 2.6s var(--ease-soft) infinite; }
@keyframes ws-seo-stage-scan {
  0% { transform: translateY(-130px); opacity: 0; }
  18% { opacity: 0.85; }
  82% { opacity: 0.85; }
  100% { transform: translateY(96px); opacity: 0; }
}

.ws-seo-stage-reader {
  position: absolute;
  right: 0;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.5rem 0.8rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.18);
  font-size: var(--fs-small);
  font-weight: 600;
  color: #fff;
  white-space: nowrap;
  opacity: 0;
  transform: translateX(14px);
  transition: opacity 0.5s var(--ease-out), transform 0.5s var(--ease-out);
}
.ws-seo-stage-reader svg { width: 17px; height: 17px; flex: none; }
.ws-seo-stage-reader--search { top: 11%; }
.ws-seo-stage-reader--ai { bottom: 11%; }
.ws-seo-stage-reader--ai svg { color: var(--c-orange); }
.ws-seo-stage-canvas[data-act="3"] .ws-seo-stage-reader,
.ws-seo-stage-canvas[data-act="4"] .ws-seo-stage-reader { opacity: 1; transform: translateX(0); }

.ws-seo-stage-wires { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; }
.ws-seo-stage-wire {
  fill: none;
  stroke: rgba(124, 58, 237, 0.5);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-dasharray: 260;
  stroke-dashoffset: 260;
  transition: stroke-dashoffset 0.85s var(--ease-out);
}
.ws-seo-stage-wire[data-wire="ai"] { stroke: rgba(249, 115, 22, 0.5); transition-delay: 0.15s; }
.ws-seo-stage-canvas[data-act="3"] .ws-seo-stage-wire,
.ws-seo-stage-canvas[data-act="4"] .ws-seo-stage-wire { stroke-dashoffset: 0; }

.ws-seo-stage-answer {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 5;
  width: 72%;
  padding: 1.1rem 1.2rem 1.2rem;
  background: rgba(255, 255, 255, 0.98);
  color: var(--c-text);
  border-radius: var(--radius-lg);
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.45);
  opacity: 0;
  transform: translateY(20px) scale(0.96);
  transition: opacity 0.5s var(--ease-out), transform 0.55s var(--ease-out);
  pointer-events: none;
}
.ws-seo-stage-canvas[data-act="4"] .ws-seo-stage-answer { opacity: 1; transform: translateY(0) scale(1); }
.ws-seo-stage-answer-head {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--c-muted);
  margin-bottom: 0.6rem;
}
.ws-seo-stage-answer-mark { color: var(--c-violet); }
.ws-seo-stage-answer-body { font-size: 0.95rem; color: var(--c-text); margin: 0 0 0.9rem; line-height: 1.5; }
.ws-seo-stage-cited { position: relative; font-weight: 700; white-space: nowrap; }
.ws-seo-stage-cited-mark { position: absolute; left: 0; right: 0; bottom: -5px; width: 100%; height: 9px; color: var(--c-orange); }
.ws-seo-stage-cited-mark path { stroke-dasharray: 210; stroke-dashoffset: 210; }
.ws-seo-stage-canvas[data-act="4"] .ws-seo-stage-cited-mark path { animation: ws-seo-stage-underline 0.7s var(--ease-out) 0.25s forwards; }
@keyframes ws-seo-stage-underline { to { stroke-dashoffset: 0; } }
.ws-seo-stage-cites { display: flex; gap: 0.5rem; }
.ws-seo-stage-cite {
  position: relative;
  flex: 1;
  height: 34px;
  border-radius: 9px;
  background: var(--c-surface);
  border: 1px solid var(--c-border);
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0 0.55rem;
}
.ws-seo-stage-cite-fav { width: 13px; height: 13px; border-radius: 4px; flex: none; background: linear-gradient(180deg, var(--c-pink), var(--c-orange)); }
.ws-seo-stage-cite-label { height: 7px; border-radius: 4px; flex: 1; background: rgba(15, 23, 42, 0.14); }
.ws-seo-stage-cite--brand { border-color: rgba(124, 58, 237, 0.5); background: rgba(124, 58, 237, 0.06); }
.ws-seo-stage-cite--brand .ws-seo-stage-cite-fav { background: linear-gradient(180deg, var(--c-violet), var(--c-pink)); }
.ws-seo-stage-cite-seal {
  position: absolute;
  right: -6px;
  top: -8px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--c-violet), var(--c-pink));
  display: grid;
  place-items: center;
  box-shadow: 0 5px 12px -3px rgba(124, 58, 237, 0.6);
  transform: scale(0);
  transition: transform 0.4s var(--ease-spring);
}
.ws-seo-stage-cite-seal svg { width: 12px; height: 12px; }
.ws-seo-stage-canvas[data-act="4"] .ws-seo-stage-cite-seal { transform: scale(1); transition-delay: 0.35s; }

.ws-seo-stage-canvas[data-act="4"] .ws-seo-stage-doc { opacity: 0.4; transform: translateY(-50%) scale(0.96); }
.ws-seo-stage-canvas[data-act="4"] .ws-seo-stage-reader { opacity: 0.3; }

.ws-seo-stage-steps { list-style: none; display: grid; gap: 0.4rem; margin: 0; padding: 0; }
.ws-seo-stage-step {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 0.9rem;
  row-gap: 0.2rem;
  padding: 0.95rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  opacity: 0.3;
  transition: opacity 0.45s var(--ease-out);
}
.ws-seo-stage-step:first-child { border-top: 0; }
.ws-seo-stage-step-no {
  grid-row: span 2;
  align-self: start;
  font-size: 0.8rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.5);
  font-variant-numeric: tabular-nums;
}
.ws-seo-stage-step-title { font-size: 1.05rem; color: #fff; margin: 0; }
.ws-seo-stage-step p { color: rgba(255, 255, 255, 0.7); margin: 0; font-size: 0.95rem; }
.ws-seo-stage-step.is-active { opacity: 1; }
.ws-seo-stage-step.is-active .ws-seo-stage-step-no { color: var(--c-orange); }

.ws-seo-stage-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: rgba(255, 255, 255, 0.1); }
.ws-seo-stage-progress span {
  display: block;
  height: 100%;
  width: 100%;
  transform: scaleX(0);
  transform-origin: left center;
  background: var(--grad-rainbow);
}

@media (max-width: 879px) {
  .ws-seo-stage-track { height: 400vh; }
  .ws-seo-stage-canvas { max-width: 440px; }
  .ws-seo-stage-step { display: none; padding: 0; border-top: 0; }
  .ws-seo-stage-step.is-active { display: grid; opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .ws-seo-stage-track { height: auto; }
  .ws-seo-stage-pin { position: static; height: auto; padding-block: var(--sp-5); overflow: visible; }
  .ws-seo-stage-canvas { aspect-ratio: 1 / 1.05; }
  .ws-seo-stage-scan { display: none; }
  .ws-seo-stage-row, .ws-seo-stage-reader, .ws-seo-stage-wire, .ws-seo-stage-answer,
  .ws-seo-stage-cite-seal, .ws-seo-stage-doc { transition: none; }
  .ws-seo-stage-cited-mark path { stroke-dashoffset: 0; }
  .ws-seo-stage-step { display: grid; opacity: 1; padding: 0.95rem 0; border-top: 1px solid rgba(255, 255, 255, 0.1); }
  .ws-seo-stage-step:first-child { border-top: 0; }
}

.ws-seo-gap-inner {
  display: grid;
  gap: var(--sp-5);
}
.ws-seo-gap-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-3); }
.ws-seo-gap-lead {
  font-size: clamp(1.125rem, 1rem + 0.7vw, 1.375rem);
  line-height: 1.45; margin: 0 0 var(--sp-2); max-width: 34ch;
}
.ws-seo-gap-body { color: var(--c-muted); max-width: 52ch; margin: 0; }
.ws-seo-gap-frame {
  position: relative; border-radius: var(--radius-lg); overflow: hidden;
  background: var(--c-surface); aspect-ratio: 4 / 3;
}
.ws-seo-gap-iframe { width: 100%; height: 100%; border: 0; display: block; }

@media (min-width: 900px) {
  .ws-seo-gap-inner { grid-template-columns: 1fr 1fr; align-items: center; gap: var(--sp-6); }
  .ws-seo-gap-frame { aspect-ratio: 3 / 4; }
}

.ws-seo-old-head { max-width: 62ch; margin: 0 0 var(--sp-5); }
.ws-seo-old-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-3); }
.ws-seo-old-lead { color: var(--c-muted); margin: 0; }

.ws-seo-vs-list { display: grid; gap: var(--sp-6); }
.ws-seo-vs-pair { display: grid; gap: var(--sp-2); }
.ws-seo-vs-card {
  position: relative;
  padding: var(--sp-3);
  border-radius: var(--radius-lg);
  border: 1px solid var(--c-border);
  background: var(--c-bg);
  display: flex; flex-direction: column; gap: var(--sp-2);
}
.ws-seo-vs-card--old { background: rgba(15,23,42,0.035); border-style: dashed; }
.ws-seo-vs-card--new { box-shadow: var(--c-shadow-soft); }
.ws-seo-vs-card--new::before {
  content: ''; position: absolute; left: var(--sp-3); right: var(--sp-3); top: 0; height: 2px;
  border-radius: 0 0 2px 2px; background: var(--grad-circle);
}
.ws-seo-vs-tag {
  font-size: 0.6875rem; letter-spacing: 0.09em; text-transform: uppercase;
  color: var(--c-muted);
}
.ws-seo-vs-quote {
  margin: 0; font-size: clamp(1.0625rem, 1rem + 0.45vw, 1.25rem);
  line-height: 1.35; letter-spacing: -0.01em;
}
.ws-seo-vs-card--old .ws-seo-vs-quote { color: var(--c-muted); }
.ws-seo-vs-out { margin: 0; font-size: var(--fs-small); color: var(--c-muted); }
.ws-seo-vs-card--new .ws-seo-vs-out { color: var(--c-text); }
.ws-seo-vs-line {
  margin: var(--sp-2) 0 0; color: var(--c-muted);
  font-size: var(--fs-body); max-width: 60ch;
}

.ws-seo-vs-img { margin: 0; display: grid; gap: 0.5rem; }
.ws-seo-vs-img-inner {
  aspect-ratio: 16 / 8; border-radius: var(--radius-sm);
  background: linear-gradient(145deg, #2b3350, #4a3b63 60%, #6b4a55);
  display: grid; place-content: center; gap: 0.3rem; text-align: center;
  padding: var(--sp-2);
}
.ws-seo-vs-img-head {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(0.95rem, 0.85rem + 0.4vw, 1.15rem);
  color: rgba(255,255,255,0.95); letter-spacing: 0.02em;
}
.ws-seo-vs-img-row { font-size: 0.8125rem; color: rgba(255,255,255,0.72); }
.ws-seo-vs-img-label {
  font-size: 0.6875rem; color: var(--c-muted);
  display: inline-flex; align-items: center; gap: 0.375rem;
}
.ws-seo-vs-img-label::before {
  content: ''; width: 10px; height: 10px; border-radius: 2px;
  border: 1.5px solid currentColor; opacity: 0.6;
}
.ws-seo-vs-hours { margin: 0; display: grid; gap: 0.375rem; }
.ws-seo-vs-hours > div { display: flex; justify-content: space-between; gap: var(--sp-2); font-size: var(--fs-body); }
.ws-seo-vs-hours dt { color: var(--c-muted); margin: 0; }
.ws-seo-vs-hours dd { margin: 0; font-variant-numeric: tabular-nums; }

.ws-seo-vs-wall {
  margin: 0; font-size: 0.8125rem; line-height: 1.45;
  color: rgba(10,10,10,0.42); text-align: justify; hyphens: auto;
}
.ws-seo-vs-blocks { display: grid; gap: var(--sp-2); }
.ws-seo-vs-blocks > div { display: grid; gap: 0.25rem; }
.ws-seo-vs-blocks b { font-size: 0.9375rem; font-weight: 600; letter-spacing: -0.01em; }
.ws-seo-vs-blocks span { font-size: 0.8125rem; line-height: 1.45; color: var(--c-muted); }

.ws-seo-old-rest {
  margin: var(--sp-5) 0 0; color: var(--c-muted);
  max-width: 68ch; font-size: var(--fs-body);
}

@media (min-width: 780px) {
  .ws-seo-vs-pair { grid-template-columns: 1fr 1fr; gap: var(--sp-3); align-items: stretch; }
  .ws-seo-vs-card { padding: var(--sp-4); }
  .ws-seo-vs-card--new::before { left: var(--sp-4); right: var(--sp-4); }
}

.ws-seo-reach {
  position: relative; isolation: isolate;
  background: #000;
  color: #fff;
  padding-block: clamp(5rem, 3rem + 9vw, 9rem);
  overflow: hidden;
}
.ws-seo-reach-video {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover;
  
  object-position: 74% center;
  filter: brightness(0.58) saturate(1.08);
  z-index: -2; pointer-events: none;
}

.ws-seo-reach-scrim {
  position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(100deg, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.78) 46%, rgba(0,0,0,0.34) 72%, rgba(0,0,0,0) 96%);
}
.ws-seo-reach-inner { max-width: 46rem; }
.ws-seo-reach-h2 {
  font-size: var(--fs-role-statement); letter-spacing: -0.03em; line-height: 1.08;
  margin: 0 0 var(--sp-3); color: #fff;
}
.ws-seo-reach-body {
  color: rgba(255,255,255,0.78); margin: 0;
  font-size: clamp(1.0625rem, 1rem + 0.4vw, 1.25rem); line-height: 1.6;
}

@media (prefers-reduced-motion: reduce) {
  .ws-seo-reach-video { display: none; }
  .ws-seo-reach {
    background: #000 url('media/images/unterseiten/akzent-07-poster.webp') center / cover no-repeat;
  }
}

.ws-seo-steps-h2 {
  font-size: var(--fs-role-section); letter-spacing: -0.02em;
  margin: 0 0 var(--sp-5); max-width: 24ch;
}
.ws-seo-steps-grid { display: grid; gap: var(--sp-4); }
.ws-seo-step {
  padding: var(--sp-4);
  border: 1px solid var(--c-border);
  border-radius: var(--radius-lg);
  background: var(--c-bg);
  box-shadow: var(--c-shadow-soft);
}
.ws-seo-step--plus { border-color: var(--c-border-strong); }
.ws-seo-step-label {
  font-size: var(--fs-small); color: var(--c-muted);
  margin: 0 0 var(--sp-1); letter-spacing: 0.01em;
}
.ws-seo-step-title {
  font-size: var(--fs-h3); letter-spacing: -0.01em; margin: 0 0 var(--sp-3);
}
.ws-seo-step-list { list-style: none; margin: 0 0 var(--sp-3); padding: 0; display: grid; gap: 0.625rem; }
.ws-seo-step-list li {
  position: relative; padding-left: 1.375rem;
  font-size: var(--fs-body); line-height: 1.5;
}
.ws-seo-step-list li::before {
  content: ''; position: absolute; left: 0; top: 0.62em;
  width: 8px; height: 2px; border-radius: 2px;
  background: var(--grad-circle);
}
.ws-seo-step-note { margin: 0; color: var(--c-muted); font-size: var(--fs-small); line-height: 1.5; }

@media (min-width: 860px) {
  .ws-seo-steps-grid { grid-template-columns: repeat(2, 1fr); gap: var(--sp-5); }
  .ws-seo-step { padding: var(--sp-5); }
}

.ws-seo-honest-inner { display: grid; gap: var(--sp-4); align-items: center; }
.ws-seo-honest-text { max-width: 44rem; }
.ws-seo-honest-media {
  margin: 0; border-radius: var(--radius-lg); overflow: hidden;
  background: var(--c-surface); line-height: 0;
}
.ws-seo-honest-media img { width: 100%; height: auto; display: block; }
@media (min-width: 900px) {
  .ws-seo-honest-inner { grid-template-columns: 1fr 0.82fr; gap: var(--sp-6); }
}
.ws-seo-honest-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-3); }
.ws-seo-honest-lead {
  font-size: clamp(1.125rem, 1rem + 0.7vw, 1.375rem);
  line-height: 1.45; margin: 0 0 var(--sp-2);
}
.ws-seo-honest-body { color: var(--c-muted); margin: 0; }

@media (max-width: 899px) {
  .ws-seo-reach-video { object-position: 86% center; filter: brightness(0.46) saturate(1.05); }
  .ws-seo-reach-scrim {
    background: linear-gradient(180deg, rgba(0,0,0,0.86) 0%, rgba(0,0,0,0.72) 55%, rgba(0,0,0,0.42) 100%);
  }
}

.ws-seo-fix-inner { display: grid; gap: var(--sp-4); }
.ws-seo-fix-media {
  border-radius: var(--radius-lg); overflow: hidden;
  background: #0a0a0a; line-height: 0;
}
.ws-seo-fix-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ws-seo-fix-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-3); }
.ws-seo-fix-list {
  list-style: none; margin: 0 0 var(--sp-3); padding: 0;
  display: grid; gap: var(--sp-2); counter-reset: ws-seo-fix;
}
.ws-seo-fix-list li {
  position: relative; padding-left: 2rem;
  font-size: var(--fs-body); line-height: 1.5; color: var(--c-muted);
  counter-increment: ws-seo-fix;
}
.ws-seo-fix-list li b { color: var(--c-text); font-weight: 600; }
.ws-seo-fix-list li::before {
  content: counter(ws-seo-fix);
  position: absolute; left: 0; top: 0.1em;
  width: 1.375rem; height: 1.375rem; border-radius: 50%;
  display: grid; place-items: center;
  font-size: 0.6875rem; font-weight: 600;
  color: #fff; background: var(--c-text);
}
.ws-seo-fix-note { margin: 0; color: var(--c-muted); font-size: var(--fs-small); max-width: 52ch; }

@media (min-width: 900px) {
  .ws-seo-fix-inner { grid-template-columns: 0.85fr 1fr; gap: var(--sp-6); align-items: center; }
  .ws-seo-fix-media { aspect-ratio: 4 / 5; }
}

.ws-seo-band {
  position: relative; isolation: isolate;
  display: grid; place-items: center;
  min-height: clamp(13rem, 9rem + 14vw, 20rem);
  overflow: hidden; background: #0a0a0a;
}
.ws-seo-band-img {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center 42%;
  filter: brightness(0.62) saturate(0.85);
  z-index: -1;
}
.ws-seo-band-text {
  margin: 0; padding: var(--sp-4) var(--sp-3); text-align: center;
  max-width: 34ch; color: #fff;
  font-size: clamp(1.125rem, 1rem + 0.9vw, 1.5rem);
  line-height: 1.35; letter-spacing: -0.01em;
  text-shadow: 0 1px 24px rgba(0,0,0,0.6);
}

.ws-seo-step-media {
  margin: calc(var(--sp-3) * -1) calc(var(--sp-3) * -1) var(--sp-3);
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  overflow: hidden; background: #0a0a0a; aspect-ratio: 16 / 7;
}
.ws-seo-step-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (min-width: 860px) {
  .ws-seo-step-media { margin: calc(var(--sp-5) * -1) calc(var(--sp-5) * -1) var(--sp-4); }
}

.ws-seo-search-inner { max-width: 68rem; }
.ws-seo-search-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-3); max-width: 22ch; }
.ws-seo-search-lead { font-size: clamp(1.0625rem, 1rem + 0.5vw, 1.3rem); line-height: 1.45; margin: 0 0 var(--sp-5); max-width: 60ch; }
.ws-seo-ways { display: grid; gap: var(--sp-3); }
.ws-seo-way {
  padding: var(--sp-4); border-radius: var(--radius-lg);
  background: var(--c-bg); border: 1px solid var(--c-border);
}
.ws-seo-way--ai { border-color: var(--c-border-strong); box-shadow: var(--c-shadow-soft); }
.ws-seo-way-h3 { font-size: var(--fs-h3); letter-spacing: -0.01em; margin: 0 0 var(--sp-1); }
.ws-seo-way p { margin: 0; color: var(--c-muted); font-size: var(--fs-body); line-height: 1.55; }
.ws-seo-search-note { margin: var(--sp-4) 0 0; color: var(--c-muted); font-size: var(--fs-small); max-width: 58ch; }
@media (min-width: 780px) { .ws-seo-ways { grid-template-columns: 1fr 1fr; gap: var(--sp-4); } }

.ws-seo-truth-inner { display: grid; gap: var(--sp-4); }
.ws-seo-truth-media { border-radius: var(--radius-lg); overflow: hidden; background: #0a0a0a; line-height: 0; }
.ws-seo-truth-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ws-seo-truth-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-4); }
.ws-seo-truth-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-3); }
.ws-seo-truth-list li {
  position: relative; padding-left: 1.75rem;
  color: var(--c-muted); font-size: var(--fs-body); line-height: 1.5;
}
.ws-seo-truth-list b { color: var(--c-text); font-weight: 600; }
.ws-seo-truth-list li::before {
  position: absolute; left: 0; top: 0.05em;
  font-size: 1.05rem; line-height: 1.4;
}
.ws-seo-truth-yes::before { content: '+'; color: var(--c-violet); font-weight: 700; }
.ws-seo-truth-no::before { content: '\2212'; color: var(--c-muted); font-weight: 700; }
@media (min-width: 900px) {
  .ws-seo-truth-inner { grid-template-columns: 0.8fr 1fr; gap: var(--sp-6); align-items: center; }
  .ws-seo-truth-media { aspect-ratio: 4 / 5; }
}

.ws-seo-part-inner { max-width: 56rem; }
.ws-seo-part-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-2); }
.ws-seo-part-lead { margin: 0 0 var(--sp-4); color: var(--c-muted); max-width: 56ch; }
.ws-seo-part-list { list-style: none; margin: 0 0 var(--sp-3); padding: 0; display: grid; gap: var(--sp-3); }
.ws-seo-part-list li {
  padding-top: var(--sp-2); border-top: 1px solid var(--c-border-strong);
  color: var(--c-muted); font-size: var(--fs-body); line-height: 1.5;
}
.ws-seo-part-list b { display: block; color: var(--c-text); font-weight: 600; margin-bottom: 0.15rem; }
.ws-seo-part-note { margin: 0; font-size: var(--fs-small); color: var(--c-muted); }

.ws-seo-steps-lead { margin: calc(var(--sp-4) * -1) 0 var(--sp-5); color: var(--c-muted); max-width: 58ch; }

.ws-seo-honest-no {
  margin-top: var(--sp-5); padding: var(--sp-4);
  border-radius: var(--radius-lg); border: 1px dashed var(--c-border-strong);
  background: var(--c-bg);
}
.ws-seo-honest-no-h3 { font-size: var(--fs-h3); letter-spacing: -0.01em; margin: 0 0 var(--sp-2); }
.ws-seo-honest-no p { margin: 0; color: var(--c-muted); font-size: var(--fs-body); line-height: 1.55; }

.ws-seo-honest-no-list {
  list-style: none; margin: 0; padding: 0;
  display: grid; gap: 0.7rem;
}
.ws-seo-honest-no-list li {
  position: relative; padding-left: 1.5rem;
  color: var(--c-muted); font-size: var(--fs-body); line-height: 1.55;
}
.ws-seo-honest-no-list li::before {
  content: ''; position: absolute; left: 0; top: 0.62em;
  width: 10px; height: 2px; border-radius: 2px; background: var(--c-border-strong);
}
.ws-seo-honest-no-close {
  margin: var(--sp-3) 0 0 !important;
  padding-top: var(--sp-3); border-top: 1px solid var(--c-border);
  color: var(--c-text) !important; font-weight: 500;
}

.ws-seo-cases {
  position: relative;
  z-index: 2;
  background:
    linear-gradient(180deg,
      rgba(124, 58, 237, 0)     0,
      rgba(124, 58, 237, 0.045) 150px,
      rgba(124, 58, 237, 0)     420px),
    var(--c-bg);
}
.ws-seo-cases-head { max-width: 56ch; margin: 0 0 var(--sp-4); }
.ws-seo-cases-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-2); }
.ws-seo-cases-lead { margin: 0; color: var(--c-muted); }

.ws-seo-lagen { display: grid; }
.ws-seo-lage {
  display: grid; gap: var(--sp-2);
  padding: var(--sp-3) 0;
  border-top: 1px solid var(--c-border);
}
.ws-seo-lage:last-child { border-bottom: 1px solid var(--c-border); }
.ws-seo-lage-fall {
  margin: 0; max-width: 22ch;
  font-size: var(--fs-role-block); font-weight: 600;
  line-height: 1.18; letter-spacing: -0.02em;
  text-wrap: balance;
}
.ws-seo-lage-body p {
  margin: 0; color: var(--c-muted);
  font-size: var(--fs-body); line-height: 1.55; max-width: 46ch;
}
.ws-seo-lage-src { margin-top: var(--sp-2) !important; font-size: 0.75rem; opacity: 0.85; }

.ws-seo-lage-fig b {
  float: left; margin: 0.06em 0.5rem 0 0;
  font-size: 2.9rem; font-weight: 700; line-height: 0.86; letter-spacing: -0.03em;
  background: var(--grad-circle);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
.ws-seo-lage-fig b i { font-style: normal; font-size: 0.52em; }
@media (min-width: 820px) {
  .ws-seo-lage {
    grid-template-columns: 1fr 1fr;
    gap: var(--sp-5); align-items: start;
    padding: var(--sp-4) 0;
  }
}

.ws-seo-def-inner { display: grid; gap: var(--sp-5); }
.ws-seo-def-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-3); }
.ws-seo-def-lead { font-size: clamp(1.0625rem, 1rem + 0.5vw, 1.3rem); line-height: 1.45; margin: 0 0 var(--sp-2); max-width: 44ch; }
.ws-seo-def-body { color: var(--c-muted); margin: 0 0 var(--sp-3); max-width: 54ch; }
.ws-seo-def-note {
  margin: 0; padding-left: var(--sp-2); border-left: 2px solid var(--c-border-strong);
  color: var(--c-muted); font-size: var(--fs-small); max-width: 50ch; line-height: 1.5;
}

.ws-seo-def-frame {
  position: relative; border-radius: var(--radius-lg); overflow: hidden;
  background: var(--c-surface); aspect-ratio: 820 / 1040;
}
.ws-seo-def-iframe { width: 100%; height: 100%; border: 0; display: block; }

.ws-seo-fit .ws-seo-def-iframe {
  position: absolute; top: 0; left: 0;
  width: 820px; height: 1040px;
  transform-origin: top left;
  transform: scale(var(--ws-fit-scale, 1));
}
.ws-seo-def-inner > * { min-width: 0; }
@media (min-width: 900px) {
  
  .ws-seo-def-inner { grid-template-columns: 1fr 0.78fr; align-items: center; gap: var(--sp-6); }
}

@media (min-width: 861px) and (prefers-reduced-motion: no-preference) {
  .ws-seo-def.ws-shc-over { min-height: 100vh; display: flex; align-items: center; }
  .ws-seo-def.ws-shc-over > .ws-container { width: 100%; }
}

.ws-seo-rank { margin: 0 0 var(--sp-3); max-width: 27rem; display: grid; gap: 0.7rem; }
.ws-seo-rank-row {
  display: grid; grid-template-columns: 4.75rem 1fr auto;
  align-items: center; gap: var(--sp-2);
}
.ws-seo-rank-pos { font-size: var(--fs-small); color: var(--c-muted); }
.ws-seo-rank-track {
  display: block; height: 12px; border-radius: 999px;
  background: var(--c-surface); border: 1px solid var(--c-border); overflow: hidden;
}
.ws-seo-rank-bar {
  display: block; height: 100%; border-radius: 999px;
  width: var(--ws-rank-w); background: var(--grad-circle);
}
.ws-seo-rank-val {
  font-size: 1.45rem; font-weight: 700; letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums; min-width: 4.5ch; text-align: right;
}
.ws-seo-rank-row--low .ws-seo-rank-bar { background: var(--c-border-strong); }
.ws-seo-rank-row--low .ws-seo-rank-val { color: var(--c-muted); font-weight: 600; }
.ws-seo-rank-unit {
  margin: 0; text-align: right;
  font-size: var(--fs-small); color: var(--c-muted);
}

@media (prefers-reduced-motion: no-preference) {
  .ws-reveal.is-in-view .ws-seo-rank-bar { animation: ws-seo-rank-grow 1.05s cubic-bezier(0.22, 1, 0.36, 1) both; }
}
@keyframes ws-seo-rank-grow { from { width: 0; } to { width: var(--ws-rank-w); } }

.ws-seo-lvl-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-2); max-width: 24ch; }
.ws-seo-lvl-lead { margin: 0 0 var(--sp-5); color: var(--c-muted); max-width: 58ch; }
.ws-seo-lvl-grid { display: grid; gap: var(--sp-4); }
.ws-seo-lvl-card {
  display: flex; flex-direction: column;
  padding: var(--sp-4); border-radius: var(--radius-lg);
  background: var(--c-bg); border: 1px solid var(--c-border);
}
.ws-seo-lvl-card--plus { border-color: var(--c-border-strong); box-shadow: var(--c-shadow-soft); }
.ws-seo-lvl-media {
  margin: calc(var(--sp-4) * -1) calc(var(--sp-4) * -1) var(--sp-3);
  border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  overflow: hidden; background: #0a0a0a; aspect-ratio: 16 / 6;
}
.ws-seo-lvl-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ws-seo-lvl-label { font-size: var(--fs-small); color: var(--c-muted); margin: 0 0 var(--sp-1); }
.ws-seo-lvl-h3 { font-size: var(--fs-h3); letter-spacing: -0.01em; margin: 0 0 var(--sp-3); }
.ws-seo-lvl-list { list-style: none; margin: 0 0 var(--sp-3); padding: 0; display: grid; gap: 0.625rem; }
.ws-seo-lvl-list li {
  position: relative; padding-left: 1.375rem;
  font-size: var(--fs-body); line-height: 1.5; color: var(--c-muted);
}
.ws-seo-lvl-list li::before {
  content: ''; position: absolute; left: 0; top: 0.62em;
  width: 8px; height: 2px; border-radius: 2px; background: var(--grad-circle);
}
.ws-seo-lvl-limit {
  margin: auto 0 0; padding-top: var(--sp-3);
  border-top: 1px solid var(--c-border);
  font-size: var(--fs-small); line-height: 1.55; color: var(--c-muted);
}
.ws-seo-lvl-limit b { color: var(--c-text); display: block; margin-bottom: 0.2rem; }
@media (min-width: 900px) {
  .ws-seo-lvl-grid { grid-template-columns: 1fr 1fr; gap: var(--sp-5); }
  .ws-seo-lvl-card { padding: var(--sp-5); }
  .ws-seo-lvl-media { margin: calc(var(--sp-5) * -1) calc(var(--sp-5) * -1) var(--sp-4); aspect-ratio: 16 / 7; }
}

.ws-seo-geo {
  position: relative; isolation: isolate; background: #000; color: #fff;
  padding-block: clamp(5rem, 3rem + 9vw, 9rem); overflow: hidden;
}
.ws-seo-geo-video {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: 74% center;
  filter: brightness(0.5) saturate(1.05); z-index: -2; pointer-events: none;
}
.ws-seo-geo-scrim {
  position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(100deg, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.78) 46%, rgba(0,0,0,0.34) 72%, rgba(0,0,0,0) 96%);
}
.ws-seo-geo-inner { max-width: 48rem; }
.ws-seo-geo-h2 {
  font-size: var(--fs-role-statement); letter-spacing: -0.03em; line-height: 1.08;
  margin: 0 0 var(--sp-3); color: #fff;
}
.ws-seo-geo-lead {
  color: rgba(255,255,255,0.88); margin: 0 0 var(--sp-3);
  font-size: clamp(1.0625rem, 1rem + 0.4vw, 1.25rem); line-height: 1.55;
}
.ws-seo-geo-body { color: rgba(255,255,255,0.7); margin: 0; font-size: var(--fs-body); line-height: 1.6; }
@media (max-width: 899px) {
  .ws-seo-geo-video { object-position: 86% center; filter: brightness(0.42) saturate(1.02); }
  .ws-seo-geo-scrim { background: linear-gradient(180deg, rgba(0,0,0,0.86) 0%, rgba(0,0,0,0.72) 55%, rgba(0,0,0,0.44) 100%); }
}
@media (prefers-reduced-motion: reduce) {
  .ws-seo-geo-video { display: none; }
  .ws-seo-geo { background: #000 url('media/images/unterseiten/akzent-07-poster.webp') center / cover no-repeat; }
}

.ws-seo-geocases-inner { display: grid; gap: var(--sp-4); }
.ws-seo-geocases-h2 { font-size: var(--fs-role-section); letter-spacing: -0.02em; margin: 0 0 var(--sp-4); max-width: 22ch; }
.ws-seo-geocases-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-3); }
.ws-seo-geocases-list li {
  padding-top: var(--sp-2); border-top: 1px solid var(--c-border-strong);
  color: var(--c-muted); font-size: var(--fs-body); line-height: 1.55;
}
.ws-seo-geocases-list b { display: block; color: var(--c-text); font-weight: 600; margin-bottom: 0.25rem; }
.ws-seo-geocases-media { border-radius: var(--radius-lg); overflow: hidden; background: #0a0a0a; line-height: 0; }
.ws-seo-geocases-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (min-width: 900px) {
  .ws-seo-geocases-inner { grid-template-columns: 1fr 0.72fr; gap: var(--sp-6); align-items: center; }
  .ws-seo-geocases-media { aspect-ratio: 1 / 1; }
}
