/* Styles for Projektfeuerwehr teaser and detail page */
.pm-alert-section { margin: 18px auto; max-width: 980px; padding: 0 20px; }
/* Treat the teaser as a normal content element inside .content: no break-out hacks */
.pm-alertbox {
    display: flex;
    gap: 16px;
    background: #FFF4D6;
    border-left: 6px solid #FFA500;
    padding: 16px 20px;
    border-radius: 10px;
    align-items: flex-start;
    margin: 20px 0;
    margin-left: 16px; /* leichte Einrückung nach rechts */
    box-sizing: border-box;
    width: calc(100% - 16px);
    max-width: 820px;
}
.pm-alertbox.pm-alertbox--wide {
    margin-left: 0;
    width: 100%;
    max-width: 100%;
}
.pm-alert-icon { flex: 0 0 48px; display:flex; align-items:center; justify-content:center; }
.pm-alert-content { flex: 1; color: inherit; font-size: inherit; line-height: inherit; }
.pm-alert-content h2 { margin:0 0 6px 0; font-size:2rem; font-weight:700; color:var(--gray-900); }
.pm-alert-content p { margin:0 0 8px 0; color:var(--gray-800); font-size:1.05rem; }
.pm-alert-cta .cta-link { color:#3a72c4; font-weight:600; text-decoration:none; }

/* Detail page basics */
.de .hero { padding:28px; background:#f7f8fb; }
.de .hero .lead { margin:12px 0; }
.prices { width:100%; border-collapse:collapse; margin:16px 0; }
.prices th, .prices td { padding:8px 10px; border:1px solid #eee; text-align:left; }

/* CTA button reuse */
.cta-big-btn { display:inline-block; padding:10px 16px; background:#3a72c4; color:#fff; border-radius:6px; text-decoration:none; }

@media (max-width:700px) {
    .pm-alertbox { flex-direction:column; }
    .pm-alert-icon { margin-bottom:6px; }
}
