/* v4.1.10: Flyers Media supplied service visuals. */
#division-flyers .fm4110-gallery-frame { background: #09182d; }
#division-flyers .fm4110-gallery-frame .dv-main { object-fit: contain; }
.fm4110-figure { margin: 0; min-width: 0; border: 1px solid #3c506b; border-radius: 13px; overflow: hidden; background: #0d1b2e; }
.fm4110-image-button { display: block; position: relative; width: 100%; padding: 0; border: 0; background: #0a1729; color: #fff; cursor: zoom-in; }
.fm4110-image-button img { display: block; width: 100%; height: auto; }
.fm4110-image-button:focus-visible { outline: 3px solid #ff9d4e; outline-offset: -4px; }
.fm4110-zoom-hint { position: absolute; right: 12px; top: 12px; padding: 7px 10px; border: 1px solid #ffffff35; border-radius: 6px; background: #071322df; color: #eef4ff; font-size: 11px; line-height: 1.4; }
.fm4110-figure figcaption { padding: 12px 16px; border-top: 1px solid #34465e; color: #c4d3e7; font-size: 12px; line-height: 1.6; }
.fm4110-hero-visual { align-self: center; }
.fm4110-option-link { display: inline-block; margin-top: 18px; font-size: 13px; }
.fm4110-planning { margin-bottom: 30px; }
.fm4110-planning > div { min-width: 0; }
.fm4110-planning .r31-note { font-size: 12px; line-height: 1.6; }
.fm4110-scene-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.fm4110-scene { overflow: hidden; border: 1px solid #ccd7e4; border-radius: 13px; background: #fff; min-width: 0; }
.fm4110-scene .fm4110-figure { border: 0; border-radius: 0; }
.fm4110-scene .fm4110-image-button img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; }
.fm4110-scene .fm4110-figure figcaption { padding: 9px 18px; background: #edf2f7; color: #50647b; border: 0; font-size: 11px; }
.fm4110-scene-copy { padding: 22px 24px 25px; }
body[data-design=v4] .fm4110-scene-copy h3 { font-size: 24px; line-height: 1.2; margin: 0 0 12px; color: #102239; }
.fm4110-scene-copy p { font-size: 15px; line-height: 1.65; color: #50647b; margin: 0; }
.fm4110-wide-hero-layout { grid-template-columns: minmax(0, 1fr); }
.fm4110-wide-hero-layout > div { max-width: 820px; }
.fm4110-wide-banner { margin-top: 30px; }
@media (max-width: 800px) {
 .fm4110-scene-grid { gap: 18px; }
 .fm4110-scene-copy { padding: 20px; }
 body[data-design=v4] .fm4110-scene-copy h3 { font-size: 21px; }
 .fm4110-wide-banner { margin-top: 24px; }
}
@media (max-width: 700px) {
 .fm4110-scene-grid { grid-template-columns: minmax(0, 1fr); }
 .fm4110-planning { margin-bottom: 24px; }
 .fm4110-zoom-hint { font-size: 10px; padding: 6px 8px; right: 9px; top: 9px; }
}
