    /* Minimal, editorial prose styling for the rendered WYSIWYG HTML.
       Uses the same palette as landing-light so the page doesn't feel
       detached from the rest of the marketing site. */
    .sp-shell { max-width: 760px; margin: 0 auto; padding: 64px 24px 96px; }

    /* Hero Layout */
    .sp-hero {
        position: relative;
        width: 100%;
        min-height: 40vh;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        padding: 4rem 2rem;
        overflow: hidden;
        margin-bottom: 56px;
    }
    .sp-hero-bg {
        position: absolute;
        top: 0; left: 0; width: 100%; height: 100%;
        background: url('https://images.unsplash.com/photo-1497366216548-37526070297c?q=80&w=2069&auto=format&fit=crop') no-repeat center center;
        background-size: cover;
        z-index: 1;
    }
    .sp-hero-overlay {
        position: absolute;
        top: 0; left: 0; width: 100%; height: 100%;
        background: rgba(0, 0, 0, 0.7);
        z-index: 2;
    }
    .sp-hero-content {
        position: relative;
        z-index: 3;
        max-width: 800px;
        width: 100%;
    }
    
    .sp-eyebrow { display: inline-block; padding: 4px 12px; border: 1px solid rgba(255,255,255,0.2); background: rgba(255,255,255,0.1); border-radius: 999px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: #A5B4FC; font-weight: 600; margin-bottom: 18px; }
    .sp-hero .sp-title { font-size: clamp(2.5rem, 5vw, 4rem); font-weight: 800; letter-spacing: -0.025em; color: #FFFFFF; margin: 0 0 12px; line-height: 1.1; }
    .sp-hero .sp-excerpt { font-size: 1.125rem; color: #E2E8F0; line-height: 1.6; max-width: 600px; margin: 0 auto; }

    .sp-body { color: #334155; font-size: 1rem; line-height: 1.75; }
    .sp-body h2 { font-size: 1.5rem; font-weight: 700; color: #0f172a; margin: 40px 0 14px; letter-spacing: -0.015em; }
    .sp-body h3 { font-size: 1.125rem; font-weight: 700; color: #0f172a; margin: 28px 0 10px; }
    .sp-body p  { margin: 0 0 18px; }
    .sp-body ul, .sp-body ol { margin: 0 0 18px; padding-left: 24px; }
    .sp-body li { margin: 0 0 8px; }
    .sp-body a  { color: #4f46e5; text-decoration: underline; text-underline-offset: 3px; }
    .sp-body a:hover { color: #3730a3; }
    .sp-body strong { color: #0f172a; font-weight: 600; }
    .sp-body em     { color: #475569; }
    .sp-body blockquote {
        border-left: 3px solid #6366f1; padding: 2px 20px; margin: 20px 0;
        color: #475569; font-style: italic; background: #fafafb;
    }
    .sp-body code {
        font-family: ui-monospace, 'SF Mono', monospace; background: #f1f5f9;
        padding: 2px 6px; border-radius: 4px; font-size: .88em; color: #0f172a;
    }
    .sp-body pre {
        background: #0f172a; color: #e2e8f0; padding: 16px 18px;
        border-radius: 10px; overflow-x: auto; font-size: .875rem; margin: 0 0 18px;
    }
    .sp-body img { max-width: 100%; border-radius: 10px; margin: 16px 0; }
    .sp-body hr { border: 0; border-top: 1px solid #e4e4e7; margin: 36px 0; }

    .sp-updated { margin-top: 56px; padding-top: 24px; border-top: 1px solid #e4e4e7; font-size: 12px; color: #94a3b8; text-align: center; letter-spacing: .04em; text-transform: uppercase; }
