.engagements-page .hero .tagline { max-width: 760px; }
.engagements-intro { max-width: 820px; margin: 0 auto 2.25rem; text-align: center; }
.engagement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.engagement-card { display: flex; flex-direction: column; padding: clamp(1.35rem, 2vw, 1.85rem); border: 1px solid var(--border-color, #dce5eb); border-radius: 18px; background: #fff; box-shadow: 0 14px 36px rgba(13, 27, 42, 0.07); }
.engagement-card h3 { margin: 0 0 0.6rem; }
.engagement-price { margin: 0 0 1rem; color: #126789; font-weight: 750; font-size: 1.08rem; }
.engagement-card p:last-child { margin-bottom: 0; }
.engagement-map-frame { max-width: 820px; margin: 0 auto; padding: 0.75rem; border: 1px solid #d6e1e8; border-radius: 22px; background: #f6f9fc; box-shadow: 0 18px 46px rgba(13, 27, 42, 0.08); }
.engagement-map-frame img { display: block; width: 100%; height: auto; }
.engagement-map-frame { overflow-x: auto; }
.engagement-map-frame img { min-width: 700px; }
.engagement-map-frame:focus-visible { outline: 3px solid #16759a; outline-offset: 3px; }
.engagement-map figcaption { max-width: 760px; margin: 0.85rem auto 0; color: var(--muted, #526a7a); text-align: center; font-size: 0.92rem; }
.scope-drivers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.9rem; list-style: none; padding: 0; margin: 2rem 0 0; }
.scope-drivers li { padding: 1rem 1.05rem; border-left: 3px solid #3ab4f2; border-radius: 8px; background: #f5f9fc; font-weight: 650; }
.engagement-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; counter-reset: steps; }
.engagement-step { position: relative; padding: 1.4rem; border: 1px solid #dce5eb; border-radius: 16px; background: #fff; }
.engagement-step::before { counter-increment: steps; content: "0" counter(steps); display: block; margin-bottom: 0.7rem; color: #16759a; font-weight: 800; letter-spacing: 0.08em; }
.engagement-step h3 { margin-top: 0; }
.engagement-note { max-width: 780px; margin: 1.8rem auto 0; padding: 1rem 1.2rem; border-radius: 12px; background: #eaf5fa; color: #173d51; text-align: center; }
@media (max-width: 800px) { .engagement-grid, .engagement-steps { grid-template-columns: 1fr; } .scope-drivers { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .scope-drivers { grid-template-columns: 1fr; } .engagement-map-frame { padding: 0.35rem; border-radius: 14px; } }
