.seo-intro,
.seo-info,
.seo-faq {
  width: calc(100% - 80px);
  max-width: var(--container);
  margin-inline: auto;
}

.seo-intro { margin-top: 16px; }
.seo-intro h1 {
  margin: 0 0 4px;
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: normal;
  font-weight: 600;
  color: var(--text);
}

.seo-info { margin-top: 24px; margin-bottom: 8px; }
.seo-info h2 {
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.4;
  font-weight: 600;
  color: var(--text);
}

.seo-intro p,
.seo-info p,
.seo-faq p {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--muted);
}

.seo-faq { margin-bottom: 24px; }
.seo-faq details { border-bottom: 1px solid var(--line); }
.seo-faq summary {
  padding: 12px 0;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 500;
  color: var(--text);
  cursor: pointer;
}
.seo-faq summary:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
.seo-faq p { padding-bottom: 12px; }

@media (max-width: 760px) {
  .seo-intro, .seo-info, .seo-faq { width: calc(100% - 40px); }
  .seo-intro { margin-top: 12px; }
  .seo-intro h1 { font-size: 18px; }
  .seo-info { margin-top: 24px; }
}

@media (max-width: 370px) {
  .seo-intro, .seo-info, .seo-faq { width: calc(100% - 32px); }
}

.seo-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  margin-top: 12px;
  font-size: 14px;
}
.seo-nav a { color: var(--muted); text-decoration: underline; text-underline-offset: 3px; }
.seo-nav a:hover, .seo-nav a[aria-current="page"] { color: var(--text); }
