.cms-section .wrap > .lead{max-width:850px;margin:18px 0 24px;white-space:pre-line}
.cms-section__image{width:100%;max-height:520px;object-fit:cover;border-radius:14px;margin:28px 0 0}
.cms-section__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin-top:32px}
.cms-section__card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--shadow-sm);padding:22px}
.cms-section__card img{width:calc(100% + 44px);height:190px;object-fit:cover;margin:-22px -22px 16px}
.cms-section__card h3{color:var(--navy);font-size:19px;margin-bottom:8px}
.cms-section__card p{color:var(--muted);font-size:15px;margin:0}
.cms-section__gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:30px}
.cms-section__gallery figure{margin:0}.cms-section__gallery img{width:100%;height:230px;object-fit:cover;border-radius:12px}
.cms-section__gallery figcaption{color:var(--muted);font-size:14px;margin-top:8px}
.cms-section .btn{margin-top:12px}.cms-section.section--navy .lead{color:#e4f1fb}
section[hidden]{display:none!important}
.doc-grid>.events__empty,.prog-grid>.events__empty,.gal>.events__empty{grid-column:1/-1}
.gal__date{display:block;margin-top:14px;font-size:13px;font-weight:700;color:var(--cyan-600)}
.gal__date+h3{margin-top:4px}
