/* Shared content cards: keep copy, actions and media in document flow. */
.site-frame :is(.capability-card, .article-card, .metric-card, .about-card) {
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding: 24px;
    gap: 14px;
}
.site-frame :is(.capability-card, .article-card, .metric-card, .about-card)::after { display: none; }
.site-frame :is(.capability-card, .article-card, .metric-card, .about-card) > :not(.home-card-media):not(.content-card-media):not(.hero-actions) {
    margin: 0;
}
.site-frame :is(.capability-card, .article-card, .metric-card, .about-card) :is(.home-card-media, .content-card-media) {
    position: static;
    inset: auto;
    order: 2;
    width: 100%;
    height: auto;
    aspect-ratio: 780 / 500;
    margin: 4px 0 0;
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
}
.site-frame :is(.capability-card, .article-card, .metric-card, .about-card) .hero-actions {
    display: flex;
    position: static;
    inset: auto;
    margin: 0;
    padding-top: 12px;
    justify-content: flex-start;
    gap: 10px;
}
.site-frame .about-card-primary { background: var(--brand, #a91e2c); color: #fff; }
.site-frame .about-card-primary :is(h2, h3, p, .eyebrow) { color: #fff; }
.contact-direct-card { padding: 24px; margin: 24px 0; background: #fff; border: 1px solid var(--line); border-radius: 20px; }
.contact-direct-card h2 { margin-top: 0; }
.contact-direct-card a { overflow-wrap: anywhere; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid #a91e2c; outline-offset: 4px; }
@media (max-width: 720px) {
    .site-frame :is(.capability-card, .article-card, .metric-card, .about-card) { padding: 20px; }
    .contact-direct-card .hero-actions { align-items: stretch; flex-direction: column; }
}

/* Solid card buttons avoid unnecessary backdrop compositing. */
.site-frame :is(.capability-card, .article-card, .metric-card, .about-card) .hero-actions .btn {
    backdrop-filter: none;
    background: #fff;
    border: 1px solid rgba(206, 27, 40, .24);
    box-shadow: none;
}
.channel-hero-contact .contact-direct-card { margin: 0; }
