.hero-bg-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.page-heading h1 { margin: 8px 0 12px; font-size: clamp(2rem, 4vw, 3.25rem); }
.content-section { margin-top: 42px; }
.section-heading { display: flex; align-items: center; justify-content: space-between; }
.section-heading h2, .content-section h2 { font-size: 1.5rem; }
.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; margin-top: 18px; }
.card { min-height: 150px; padding: 20px; border: 1px solid #e5e5e5; border-radius: 6px; background: #fff; }
.card h3 { line-height: 1.35; }
.card p { line-height: 1.6; }
.card-image { width: 100%; max-height: 210px; margin-bottom: 14px; border-radius: 4px; object-fit: cover; }
.headline-panel, .custom-section { margin-top: 22px; padding: 22px; border: 1px solid #e5e5e5; border-radius: 6px; background: #fff; }
.headline-panel ul { display: grid; gap: 10px; margin-top: 14px; list-style: disc; padding-left: 22px; }

@media (max-width: 640px) {
    .hero { padding: 28px; }
}
