/* =========================================================
   LSPB Public CSS — Gutenberg fallback layout styles
   These only apply to pages generated WITHOUT a page template
   (i.e. the assemble_blocks_pretty() Gutenberg fallback path).
   When using a universal template the lspb-* classes are used
   as slot markers only — these styles must not interfere.
   ========================================================= */

:root {
    --lspb-primary: #1e40af;
    --lspb-accent:  #06b6d4;
}

/* Hero block — Gutenberg fallback only */
.lspb-hero {
    min-height: 340px;
    background: linear-gradient(135deg, var(--lspb-primary), var(--lspb-accent));
    color: #fff;
    border-radius: 12px;
    overflow: hidden;
}
.lspb-hero .wp-block-button__link {
    background: #fff;
    color: #111;
    padding: .75rem 1.25rem;
    border-radius: 8px;
    font-weight: 600;
}
.lspb-subhead    { opacity: .95; margin-top: .5rem; }
.lspb-sep        { margin: 24px 0; }
.lspb-trust      { padding: 16px 0; }
.lspb-bottom-cta { padding: 24px; background: #f7fafc; border-radius: 12px; margin-top: 28px; }
.lspb-bottom-cta .wp-block-button__link { padding: .75rem 1.25rem; border-radius: 8px; }
.lspb-city .wp-block-button__link       { border-radius: 8px; }

@media (min-width: 782px) {
    .lspb-hero { min-height: 420px; }
}

/* =========================================================
   Slot marker class reset
   When lspb-intro, lspb-about, etc. are used as placeholder
   class markers in a universal template, ensure they don't
   carry any visible styling from this sheet.
   ========================================================= */
.lspb-intro, .lspb-about, .lspb-details, .lspb-why,
.lspb-process, .lspb-coverage, .lspb-faqs {
    /* intentionally unstyled — these are injection target markers */
}
