/* Shared marketing layouts: explicit rhythm survives Elementor typography resets. */
.tt-source-page .ttx-section{--tt-section-space:56px;--tt-heading-gap:24px;padding-block:var(--tt-section-space)}
.tt-source-page .ttx-section h2{margin-top:0;margin-bottom:var(--tt-heading-gap)}
.tt-source-page .ttx-section .ttx-kicker{margin-top:0;margin-bottom:14px}
.tt-source-page .ttx-cards{gap:20px;margin-top:0;padding-bottom:0}
.tt-source-page .ttx-cards>a{min-height:0;padding:24px 24px 16px}
.tt-source-page .ttx-cards h3{font-size:18px;line-height:1.4;margin:0 18px 9px 0;color:var(--ttx-navy);letter-spacing:-.02em}
.tt-source-page .ttx-cards h3+p{margin-top:12px}
.tt-source-page .ttx-section .ttx-wrap>p:last-child{margin-bottom:0}
.tt-source-page .ttx-section .ttx-editorial{row-gap:28px}
.tt-source-page main .cta h2{margin-top:0;margin-bottom:16px}
.tt-source-page main .cta p{margin-top:0;margin-bottom:0}
@media(max-width:700px){.tt-source-page .ttx-section{--tt-section-space:36px;--tt-heading-gap:20px}.tt-source-page .ttx-cards{gap:16px}.tt-source-page .ttx-cards>a{padding:20px 20px 14px}}
@media print{.tt-source-page .ttx-section{--tt-section-space:20px}}

/* Related-card introductions: measured space on both sides of the description. */
.tt-source-page .ttx-section h2:has(+p+.ttx-cards){margin-bottom:16px}
.tt-source-page .ttx-section .ttx-wrap>p:has(+.ttx-cards){margin-top:0;margin-bottom:0}
.tt-source-page .ttx-section .ttx-wrap>p+.ttx-cards{margin-top:24px}
@media(max-width:700px){.tt-source-page .ttx-section .ttx-wrap>p+.ttx-cards{margin-top:20px}}

/* Keep the last FAQ row divider; avoid another line on the following section. */
body.tt-source-page .tt-page section#faq+section.s{border-top:0}

.tt-source-page .ttx-cards>a:is(:hover,:focus-visible) h3{color:#fff}
