.dmp-seo-guide {
    box-sizing: border-box;
    width: min(1080px, calc(100% - 32px));
    margin: clamp(28px, 5vw, 64px) auto;
    padding: clamp(18px, 4vw, 44px);
    border: 1px solid #dce8f8;
    border-radius: 24px;
    background: #f8fbff;
    color: #22364f;
    font-family: inherit;
    text-align: left;
}
.dmp-seo-guide :is(h2,h3,p,li) { overflow-wrap: anywhere; }
.dmp-seo-guide__header {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(16px, 3vw, 32px);
}
.dmp-seo-guide__header--text-only { display: block; }
.dmp-seo-guide__header h2 {
    margin: 0 0 12px;
    color: #122a4a;
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.2;
}
.dmp-seo-guide p { margin: 0 0 12px; font-size: 15px; line-height: 1.7; }
.dmp-seo-guide .dmp-seo-guide__kicker {
    color: #0c4c9e;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.dmp-seo-guide .dmp-seo-guide__image {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 16px;
}
.dmp-seo-guide__toc {
    margin: 24px 0;
    padding: 16px 20px;
    border: 1px solid #d6e5f8;
    border-radius: 14px;
    background: #fff;
}
.dmp-seo-guide__toc p { margin-bottom: 6px; }
.dmp-seo-guide__toc ol,
.dmp-seo-guide__links {
    display: grid;
    gap: 7px;
    margin: 0;
    padding-inline-start: 1.25em;
}
.dmp-seo-guide__sections > section {
    scroll-margin-top: 128px;
    padding: 18px 0;
    border-top: 1px solid #dce8f8;
}
.dmp-seo-guide__sections h3 { margin: 0 0 10px; color: #163c71; font-size: clamp(18px, 2vw, 22px); line-height: 1.3; }
.dmp-seo-guide :is(.dmp-seo-guide__toc,.dmp-seo-guide__links) a { color: #09498c; text-decoration: underline; text-underline-offset: 2px; }
.dmp-seo-guide :is(.dmp-seo-guide__toc,.dmp-seo-guide__links) a:focus-visible { outline: 2px solid #1d65b4; outline-offset: 3px; }
@media (max-width: 680px) {
    .dmp-seo-guide__header { grid-template-columns: minmax(0, 1fr); }
}
