/* ── AGB HERO ──────────────────────────────────────────── */
#agb-hero {
  background: linear-gradient(135deg, #bfdbfe 0%, #bae6fd 42%, #99f6e4 100%);
  padding: 120px 5vw 64px;
  position: relative; overflow: hidden;
}
#agb-hero::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 60% 80% at 80% 40%, rgba(56,189,248,0.2) 0%, transparent 60%);
  pointer-events: none;
}
.agb-hero-inner {
  max-width: 1100px; margin: 0 auto; position: relative; z-index: 1;
}
.agb-title {
  font-size: clamp(28px, 4vw, 44px); font-weight: 800;
  line-height: 1.15; color: #0f172a; margin-bottom: 14px;
}
.agb-sub {
  font-size: 15px; color: #475569; line-height: 1.7;
}

/* ── CONTENT ───────────────────────────────────────────── */
#agb-content { background: white; }
.agb-article {
  max-width: 780px;
  font-size: 15px; color: #374151; line-height: 1.8;
}
.agb-article h2 {
  font-size: 19px; font-weight: 700; color: #0f172a;
  margin-top: 48px; margin-bottom: 14px;
  padding-top: 48px; border-top: 1px solid #f1f5f9;
}
.agb-article h2:first-of-type { border-top: none; padding-top: 0; }
.agb-article p { margin-bottom: 12px; }
.agb-article a {
  color: #2563eb; font-weight: 500; text-decoration: none;
}
.agb-article a:hover { text-decoration: underline; }

/* Inhaltsverzeichnis */
.agb-toc {
  background: #f8fafc; border: 1px solid #e2e8f0;
  border-radius: 12px; padding: 22px 28px; margin-bottom: 8px;
}
.agb-toc-title {
  font-size: 12px; font-weight: 700; letter-spacing: .08em;
  color: #94a3b8; text-transform: uppercase; margin-bottom: 14px;
}
.agb-toc ol {
  padding-left: 20px; display: flex; flex-direction: column; gap: 7px;
}
.agb-toc li { font-size: 14px; color: #374151; line-height: 1.5; }
.agb-toc a { color: #2563eb; text-decoration: none; font-weight: 500; }
.agb-toc a:hover { text-decoration: underline; }

/* Adressblock */
.agb-address {
  background: #f8fafc; border: 1px solid #e2e8f0;
  border-radius: 10px; padding: 18px 22px;
  margin: 10px 0 16px; font-size: 14px;
  color: #374151; line-height: 1.9;
}

/* ── RESPONSIVE ──────────────────────────────────────── */
@media (max-width: 820px) {
  #agb-hero { padding: 100px 5vw 48px; }
  .agb-article { font-size: 14.5px; }
}
@media (max-width: 480px) {
  .agb-article h2 { font-size: 17px; margin-top: 36px; padding-top: 36px; }
  .agb-toc { padding: 18px 20px; }
  .agb-address { padding: 14px 16px; }
}
