<style nonce="{{ csp_nonce }}">
    /* ═══════════════════════════════════════════════════════════
       HERO
       ═══════════════════════════════════════════════════════════ */
    .hero {
        padding: 80px 0 60px;
        text-align: center;
    }
    .hero h1 {
        font-size: clamp(32px, 5vw, 56px);
        font-weight: 800;
        letter-spacing: -0.03em;
        line-height: 1.08;
        margin-bottom: 16px;
        color: var(--text);
    }
    .hero .subtitle {
        font-size: clamp(16px, 2vw, 19px);
        color: var(--text-muted);
        max-width: 560px;
        margin: 0 auto 32px;
        line-height: 1.5;
    }
    .hero .hero-actions {
        display: flex;
        gap: 12px;
        justify-content: center;
        flex-wrap: wrap;
    }

    /* FEATURES GRID */
    .features-grid {
        display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
    }
    .feature {
        background: var(--bg-card);
        border: 1px solid var(--border);
        border-radius: 10px;
        padding: 28px 24px;
        transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
        box-shadow: 0 1px 3px rgba(0,0,0,0.04);
    }
    .feature:hover {
        border-color: var(--border-light);
        box-shadow: 0 4px 12px rgba(0,0,0,0.06);
        transform: translateY(-2px);
    }
    .feature-icon {
        width: 44px; height: 44px; border-radius: 10px;
        background: var(--accent-dim);
        display: flex; align-items: center;
        justify-content: center; margin-bottom: 16px;
        font-size: 18px; color: var(--accent);
    }
    .feature h3 { font-size: 16px; font-weight: 600; color: var(--text); margin-bottom: 6px; }
    .feature p { font-size: 14px; color: var(--text-muted); line-height: 1.5; }

    /* STEPS */
    .steps {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
    }
    .step {
        text-align: center;
        padding: 24px;
    }
    .step-number {
        width: 48px; height: 48px; border-radius: 50%;
        background: var(--accent); color: white;
        display: flex; align-items: center; justify-content: center;
        font-size: 20px; font-weight: 700;
        margin: 0 auto 16px;
    }
    .step h3 { font-size: 16px; font-weight: 600; margin-bottom: 8px; }
    .step p { font-size: 14px; color: var(--text-muted); line-height: 1.5; }

    /* CODE BLOCK */
    .code-section { padding: 60px 0; }
    .code-block {
        background: #1e1e2e;
        border: 1px solid #313244;
        border-radius: 10px;
        overflow: hidden;
        max-width: 640px; margin: 0 auto;
        box-shadow: 0 4px 16px rgba(0,0,0,0.12);
    }
    .code-header {
        display: flex; align-items: center; gap: 8px;
        padding: 10px 20px;
        border-bottom: 1px solid #313244;
        background: #181825;
    }
    .code-lang {
        font-size: 12px; color: #89b4fa;
        font-family: var(--mono);
        font-weight: 500;
    }
    pre {
        padding: 24px; overflow-x: auto; font-family: var(--mono);
        font-size: 13.5px; line-height: 1.65; color: #cdd6f4;
    }
    pre .kw { color: #cba6f7; }
    pre .str { color: #a6e3a1; }
    pre .cm { color: #6c7086; }
    pre .fn { color: #89b4fa; }
    pre .num { color: #f9e2af; }

    /* PRICING GRID */
    .pricing-grid {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 20px;
    }
    .pricing-grid .feature {
        text-align: center;
    }
    .pricing-grid .feature h3 {
        font-size: 13px;
        text-transform: none;
        letter-spacing: 0;
        margin-bottom: 8px;
        font-family: var(--font);
    }

    /* ═══════════════════════════════════════════════════════════
       MOBILE
       ═══════════════════════════════════════════════════════════ */
    @media (max-width: 768px) {
        .nav-links { gap: 16px; }
        .nav-links a.hide-mobile { display: none; }
        .steps { grid-template-columns: 1fr; gap: 16px; }
        .features-grid { grid-template-columns: 1fr; }
        .pricing-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    }

    @media (max-width: 480px) {
        .nav-links .btn { padding: 7px 14px; font-size: 13px; }
        .pricing-grid { grid-template-columns: 1fr; }
    }
</style>
