.seo-fallback,
.seo-guide {
  box-sizing: border-box;
  width: min(1080px, calc(100% - 40px));
  margin: 40px auto;
  padding: clamp(22px, 4vw, 44px);
  color: #353247;
  background: #fff;
  border: 1px solid #e6e1ed;
  border-radius: 24px;
  font-family: "Noto Sans KR", system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.9;
  overflow-wrap: anywhere;
  text-align: left;
}
.seo-fallback { min-height: 240px; }
.seo-fallback h1 { font-size: clamp(24px, 4vw, 36px); line-height: 1.4; }
.seo-brand { font-size: 17px; font-weight: 800; }
.seo-loading { color: #696273; font-size: 12px; }
.seo-guide h2 { margin: 0 0 12px; color: #30263e; font-size: 17px; font-weight: 750; line-height: 1.55; letter-spacing: -.035em; }
.seo-guide p { margin: 0 0 12px; }
.seo-guide ul { padding-left: 20px; }
.seo-guide li { margin: 5px 0; }
.seo-guide a, .seo-fallback a { color: #6a4287; text-decoration: underline; text-underline-offset: 4px; }
.seo-guide a:focus-visible, .seo-fallback a:focus-visible { outline: 3px solid #8a5fbc; outline-offset: 4px; border-radius: 2px; }
.seo-breadcrumb { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; font-size: 12px; color: #756b80; }
.seo-guide .seo-guide-intro { max-width: 820px; margin-bottom: 28px; color: #615a6a; }
.seo-guide-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 36px; }
.seo-guide-grid > section { scroll-margin-top: 24px; }
.seo-related { margin-top: 26px; padding-top: 24px; border-top: 1px solid #ece7f1; }
.seo-related ul { display: flex; flex-wrap: wrap; gap: 8px 22px; padding: 0; list-style: none; }
.seo-policy { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 24px; font-size: 12px; }
@media (max-width: 620px) {
  .seo-fallback, .seo-guide { width: calc(100% - 24px); margin: 24px auto; padding: 24px 20px; border-radius: 20px; }
  .seo-guide-grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
}
@media print { .seo-guide { break-before: page; } }
