.fmp-gallery-section { clear: both; width: 100%; margin-block: 2.5rem; }
.fmp-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: .85rem; }
.fmp-gallery a { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #171b2b; }
.fmp-gallery img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .2s ease; }
.fmp-gallery a:hover img, .fmp-gallery a:focus-visible img { transform: scale(1.04); }
.fmp-gallery a:focus-visible { outline: 3px solid #e86f3b; outline-offset: 3px; }
.fmp-gallery-error { clear: both; padding: .9rem 1rem; border-left: 4px solid #ee823f; background: #fff3e9; color: #76235f; font: 700 .9rem/1.4 Arial, sans-serif; }
.fmp-related { clear: both; margin: 3rem 0 1rem; border-top: 4px solid #ee823f; }
.fmp-related>h2 { margin: 0; padding: 1rem 1.25rem; background: #76235f; color: #fff; font: 800 clamp(1.15rem, 2.5vw, 1.45rem)/1.2 Arial, sans-serif; }
.fmp-related__article { display: flow-root; padding: 1.5rem 0 2rem; border-bottom: 1px solid #e6c7dc; }
.fmp-related__article h3 { margin: 0 0 1rem; font-size: clamp(1.3rem, 2.8vw, 1.9rem); line-height: 1.2; }
.fmp-related__article h3 a { color: #76235f; text-decoration-thickness: 2px; text-underline-offset: .15em; }
.fmp-related__article h3 a:hover, .fmp-related__article h3 a:focus-visible { color: #c05c32; }
.fmp-related__body { display: flow-root; line-height: 1.7; }
.fmp-related__body p { margin: 0 0 1rem; }
.fmp-related__body h2 { margin: 1.8rem 0 .7rem; font-size: 1.3rem; color: #76235f; }
.fmp-related__error { color: #9c3d28; font: 700 .85rem/1.4 Arial, sans-serif; }
.fmp-feature-image { float: right; width: min(46%, 420px); margin: .15rem 0 1.4rem 1.8rem; }
.fmp-feature-image a { display: block; border: 1px solid #ead7e5; background: #fff8fc; box-shadow: 0 10px 26px #171b2b22; }
.fmp-feature-image img { display: block; width: 100%; height: auto; max-height: 460px; object-fit: contain; }
.fmp-feature-image a:hover, .fmp-feature-image a:focus-visible { outline: 3px solid #ee823f; outline-offset: 3px; }
@media (max-width: 650px) {
  .fmp-feature-image { float: none; width: min(100%, 440px); margin: 0 auto 1.5rem; }
}
