/* Scoped AI editorial refinement. No catalog, header or footer selectors. */
.ai-media-image { display:block; width:100%; max-width:100%; height:auto; object-fit:cover; }
.ai-hero-photo { width:100%; min-width:0; margin:0 0 22px; overflow:hidden; border-radius:18px; }
.ai-hero-photo .ai-media-image { aspect-ratio:2.1; object-fit:cover; }
.ai-editorial-page .kg-hero .kg-visual { display:block; }
.extract-page .extract-visual__label { position:static; width:fit-content; margin-bottom:16px; }
.extract-page .extract-visual { backdrop-filter:none; }
.ai-visual-story { padding:64px 24px; background:#fff; color:#3B4173; font:400 17px/1.65 Roboto,sans-serif; }
.ai-visual-story * { box-sizing:border-box; }
.ai-visual-story__grid { display:grid; grid-template-columns:1.15fr 1fr; grid-template-rows:auto auto; gap:22px; max-width:1268px; margin:auto; }
.ai-visual-story__image { grid-row:1 / 3; min-width:0; margin:0; overflow:hidden; border-radius:25px; background:#F7F7FA; display:flex; flex-direction:column; }
.ai-visual-story__image .ai-media-image { flex:1; min-height:0; aspect-ratio:4/3; object-fit:cover; }
.ai-visual-story__image figcaption { padding:18px 24px; color:#3B4173; font-size:15px; }
.ai-visual-story__copy { padding:34px 34px 12px; }
.ai-visual-story .ai-visual-story__copy h2 { max-width:600px; margin:0 0 22px; color:#3B4173; font:700 clamp(28px,2.8vw,40px)/1.15 Roboto,sans-serif; letter-spacing:-.025em; text-wrap:balance; }
.ai-visual-story .ai-visual-story__copy p { margin:0; color:#3B4173; font-size:17px; line-height:1.7; }
.ai-visual-story .ai-visual-story__tags { display:flex; flex-wrap:wrap; gap:10px; padding:0; margin:24px 0 0; list-style:none; }
.ai-visual-story .ai-visual-story__tags li { margin:0; padding:7px 13px; border-radius:9px; background:#F7F7FA; color:#3B4173; font-size:14px; }
.ai-visual-story .ai-visual-story__note { padding:26px 34px; border-radius:25px; background:#C1492E; }
.ai-visual-story .ai-visual-story__note strong { display:block; margin-bottom:8px; color:#fff !important; font-size:21px; }
.ai-visual-story .ai-visual-story__note p { margin:0; color:#fff !important; font-size:16px; line-height:1.6; }
.seo-guide h1,.seo-guide h2,.seo-guide h3 { text-wrap:balance; }
.seo-guide .sg-hero { gap:48px; margin-bottom:44px; }
.seo-guide .sg-art { padding:0; border:0; border-radius:25px; overflow:hidden; background:#F7F7FA; }
.seo-guide .sg-art .ai-media-image { aspect-ratio:3/2; object-fit:cover; }
.seo-guide[class*="converter"] .sg-art .ai-media-image { aspect-ratio:16/9; }
.seo-guide .sg-art figcaption { padding:20px 24px; margin:0; font-size:15px; text-align:left; }
.seo-guide .sg-flow-labels { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 24px; border-top:1px solid #DEDFE9; color:#3B4173; font-size:15px; font-weight:700; }
.seo-guide .sg-flow-labels span { overflow-wrap:anywhere; }
.seo-guide .sg-flow-line { height:1px; flex:1; min-width:20px; background:#C1492E; }
.seo-guide .sg-status { border:0; background:#F7F7FA; }
.seo-guide .sg-section { padding-top:80px; }
.seo-guide .sg-card { border:0; border-radius:25px; padding:30px; }
.seo-guide .sg-card:first-child { background:#F0F0F7; }
.seo-guide .sg-mini-art { width:100px; margin-bottom:24px; }
.seo-guide .sg-process-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:48px; align-items:center; }
.seo-guide .sg-process-art { padding:24px; border-radius:25px; background:#F7F7FA; }
.seo-guide .sg-process-art svg { width:100%; height:auto; display:block; }
.seo-guide .sg-steps { display:flex; flex-direction:column; gap:0; }
.seo-guide .sg-steps li { display:flex; padding:24px 0; gap:22px; border-bottom:1px solid #DEDFE9; }
.seo-guide .sg-steps li:first-child { padding-top:0; }
.seo-guide .sg-steps li:last-child { padding-bottom:0; border-bottom:0; }
.seo-guide .sg-step-number { margin:0; }
.seo-guide .sg-focus { padding:44px; margin-top:80px; }
.seo-guide .sg-example { grid-template-columns:1fr 1.15fr; padding:0; gap:0; overflow:hidden; margin-top:80px; border-radius:25px; background:#F7F7FA; }
.seo-guide .sg-example-art { width:auto; min-width:0; height:100%; }
.seo-guide .sg-example-art .ai-media-image { height:100%; min-height:300px; aspect-ratio:4/3; object-fit:cover; }
.seo-guide .sg-example-copy { padding:38px; align-self:center; }
.seo-guide .sg-example h2 { font-size:32px; }
.seo-guide .sg-faq details { padding:5px 24px; border:1px solid #DEDFE9; border-radius:16px; margin-bottom:12px; }
.seo-guide .sg-faq details[open] { background:#F7F7FA; }
.seo-guide .sg-bottom { background:#C1492E; }
.seo-guide .sg-bottom .sg-button-light { color:#3B4173; background:#fff; }
.seo-guide .sg-bottom a:focus-visible { outline-color:#fff; }
.seo-guide ::selection,.ai-visual-story ::selection { color:#fff; background:#3B4173; }
@media(max-width:1000px) {
    .seo-guide .sg-hero { gap:30px; }
    .seo-guide .sg-art .ai-media-image { aspect-ratio:3/2; }
    .ai-visual-story__copy { padding:18px 16px; }
    .ai-visual-story .ai-visual-story__note { padding:24px; }
}
@media(max-width:700px) {
    .ai-visual-story { padding:40px 18px; }
    .ai-visual-story__grid { grid-template-columns:1fr; gap:18px; }
    .ai-visual-story__image { grid-row:auto; }
    .ai-visual-story__image .ai-media-image { aspect-ratio:3/2; }
    .ai-visual-story__copy { padding:12px 4px; }
    .ai-visual-story .ai-visual-story__copy h2 { font-size:28px; }
    .seo-guide .sg-section { padding-top:48px; }
    .seo-guide .sg-process-layout { grid-template-columns:1fr; gap:28px; }
    .seo-guide .sg-process-art { padding:8px; }
    .seo-guide .sg-focus { margin-top:48px; padding:28px 24px; }
    .seo-guide .sg-example { grid-template-columns:1fr; margin-top:48px; }
    .seo-guide .sg-example-art .ai-media-image { min-height:0; height:auto; aspect-ratio:3/2; }
    .seo-guide .sg-example-copy { padding:26px; }
    .seo-guide .sg-example h2 { font-size:27px; }
    .seo-guide .sg-card { padding:26px; }
    .seo-guide .sg-mini-art { width:100px; }
    .seo-guide .sg-hero { gap:28px; }
    .seo-guide .sg-faq details { padding:3px 18px; }
}

/* Minimal production wave: editorial hierarchy, real media and no micro-labels. */
.seo-guide--minimal {
    padding-bottom:96px;
    background:#fff;
}
.seo-guide--minimal .sg-shell {
    width:min(1180px, calc(100% - 48px));
}
.seo-guide--minimal .sg-hero {
    grid-template-columns:minmax(0, 1.04fr) minmax(380px, .96fr);
    gap:72px;
    min-height:560px;
    margin-bottom:48px;
}
.seo-guide--minimal h1 {
    max-width:720px;
    font-size:clamp(44px, 4.6vw, 68px);
    line-height:1.04;
    letter-spacing:-.04em;
}
.seo-guide--minimal .sg-lead {
    max-width:660px;
    color:#3B4173;
    font-size:19px;
    line-height:1.65;
}
.seo-guide--minimal .sg-status {
    max-width:620px;
    padding:17px 0;
    border-top:1px solid #DEDFE9;
    border-bottom:1px solid #DEDFE9;
    border-radius:0;
    background:transparent;
}
.seo-guide--minimal .sg-button {
    min-height:52px;
    border-radius:14px;
    box-shadow:none;
}
.seo-guide--minimal .sg-art {
    display:flex;
    min-height:390px;
    align-items:center;
    justify-content:center;
    padding:24px;
    overflow:visible;
    border-radius:24px;
    background:#F7F7FA;
}
.seo-guide--minimal .sg-art .ai-media-image {
    width:100%;
    height:auto;
    max-height:500px;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center;
    border-radius:14px;
}
.seo-guide--minimal .sg-toc {
    gap:24px;
    padding:18px 0;
}
.seo-guide--minimal .sg-toc a {
    padding:0;
    border-radius:0;
    background:transparent;
    color:#3B4173;
    font-size:14px;
    text-decoration:underline;
    text-decoration-color:#C9CBD8;
    text-underline-offset:5px;
}
.seo-guide--minimal .sg-toc a:hover {
    background:transparent;
    text-decoration-color:#C1492E;
}
.seo-guide--minimal .sg-section {
    padding-top:88px;
}
.seo-guide--minimal .sg-grid-three {
    gap:14px;
}
.seo-guide--minimal .sg-card {
    padding:30px;
    border:0;
    border-radius:16px;
    background:#F7F7FA;
}
.seo-guide--minimal .sg-card:first-child {
    background:#F7F7FA;
}
.seo-guide--minimal .sg-card h3 {
    margin-bottom:12px;
    font-size:22px;
}
.seo-guide--minimal .sg-process-layout {
    display:block;
}
.seo-guide--minimal .sg-process-art {
    display:none;
}
.seo-guide--minimal .sg-steps {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:0;
    border-top:1px solid #DEDFE9;
    border-bottom:1px solid #DEDFE9;
}
.seo-guide--minimal .sg-steps li {
    display:block;
    padding:30px;
    border-right:1px solid #DEDFE9;
    border-bottom:0;
}
.seo-guide--minimal .sg-steps li:first-child,
.seo-guide--minimal .sg-steps li:last-child {
    padding:30px;
}
.seo-guide--minimal .sg-steps li:last-child {
    border-right:0;
}
.seo-guide--minimal .sg-step-number {
    width:auto;
    height:auto;
    margin:0 0 22px;
    justify-content:flex-start;
    color:#C1492E;
    background:transparent;
    font-size:14px;
}
.seo-guide--minimal .sg-focus {
    grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr);
    gap:64px;
    margin-top:88px;
    padding:44px;
    border-radius:18px;
    color:#3B4173;
    background:#F7F7FA;
}
.seo-guide--minimal .sg-focus h2,
.seo-guide--minimal .sg-focus p,
.seo-guide--minimal .sg-focus li {
    color:#3B4173;
}
.seo-guide--minimal .sg-focus li {
    padding-left:0;
    border-bottom-color:#DEDFE9;
}
.seo-guide--minimal .sg-focus li::before {
    content:none;
}
.seo-guide--minimal .sg-table-wrap {
    border-radius:16px;
}
.seo-guide--minimal .sg-example {
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
    margin-top:88px;
    overflow:visible;
    border:0;
    border-radius:0;
    background:#F7F7FA;
}
.seo-guide--minimal .sg-example-art {
    display:flex;
    min-width:0;
    align-items:center;
    justify-content:center;
    padding:24px;
}
.seo-guide--minimal .sg-example-art .ai-media-image {
    width:100%;
    height:auto;
    min-height:0;
    max-height:430px;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center;
    border-radius:14px;
}
.seo-guide--minimal .sg-example-copy {
    padding:48px;
}
.seo-guide--minimal .sg-faq details {
    margin:0;
    padding:22px 0;
    border:0;
    border-bottom:1px solid #DEDFE9;
    border-radius:0;
}
.seo-guide--minimal .sg-faq details[open] {
    background:transparent;
}
.seo-guide--minimal .sg-rights {
    padding:24px 0;
    border-top:1px solid #DEDFE9;
    border-bottom:1px solid #DEDFE9;
    border-radius:0;
    background:transparent;
}
.seo-guide--minimal .sg-bottom {
    margin-top:88px;
    padding:42px 44px;
    border-radius:18px;
    box-shadow:none;
}
.seo-guide--minimal .ai-route-nav--production-30 {
    margin-bottom:24px;
}

@media(max-width:1000px) {
    .seo-guide--minimal .sg-hero {
        grid-template-columns:1fr 1fr;
        gap:36px;
        min-height:0;
    }
    .seo-guide--minimal h1 {
        font-size:48px;
    }
}

@media(max-width:760px) {
    .seo-guide--minimal {
        padding-bottom:56px;
    }
    .seo-guide--minimal .sg-shell {
        width:calc(100% - 32px);
    }
    .seo-guide--minimal .sg-hero {
        grid-template-columns:1fr;
        gap:30px;
        margin-bottom:34px;
    }
    .seo-guide--minimal h1 {
        font-size:40px;
    }
    .seo-guide--minimal .sg-art {
        min-height:0;
        padding:14px;
    }
    .seo-guide--minimal .sg-toc {
        gap:12px 20px;
    }
    .seo-guide--minimal .sg-section {
        padding-top:58px;
    }
    .seo-guide--minimal .sg-steps {
        grid-template-columns:1fr;
    }
    .seo-guide--minimal .sg-steps li,
    .seo-guide--minimal .sg-steps li:first-child,
    .seo-guide--minimal .sg-steps li:last-child {
        padding:24px 0;
        border-right:0;
        border-bottom:1px solid #DEDFE9;
    }
    .seo-guide--minimal .sg-steps li:last-child {
        border-bottom:0;
    }
    .seo-guide--minimal .sg-focus,
    .seo-guide--minimal .sg-example {
        grid-template-columns:1fr;
        gap:0;
        margin-top:58px;
    }
    .seo-guide--minimal .sg-focus {
        gap:20px;
        padding:28px 24px;
    }
    .seo-guide--minimal .sg-example-art {
        padding:14px;
    }
    .seo-guide--minimal .sg-example-copy {
        padding:28px 24px;
    }
    .seo-guide--minimal .sg-bottom {
        margin-top:58px;
        padding:30px 24px;
    }
}
