/* Background values are supplied by each flexible content row. */
.gal-dynamic-section { background-image: var(--gal-row-bg, none); background-size: cover; background-position: center; }
.gal-dynamic-section.gal-partner { background-image:var(--gal-row-bg, none); }
.gal-dynamic-section.gal-capabilities::after { background-image:var(--gal-watermark, none); }
.gal-dynamic-section .gal-hero__media { background-image:var(--gal-row-bg, none); }
.gal-hero__banner { position:relative; z-index:3; padding-block:2rem; background:rgba(5,9,19,.7); }
.gal-hero__banner h1 { font-size:clamp(1.4rem,3vw,3rem); }
.gal-video-toggle, .gal-youtube-play { position:absolute; z-index:4; right:2rem; bottom:2rem; min-height:44px; }
.gal-youtube-frame { width:100%; height:100%; border:0; }
.gal-site-header__brand img { width:104px; height:35px; object-fit:contain; }
.gal-footer__identity img { width:125px; height:42px; object-fit:contain; }
.gal-capability-card:focus-visible .gal-capability-card__copy { opacity:1; transform:none; }
.gal-capability-card:focus-visible .gal-capability-card__overlay { opacity:1; }
.gal-dynamic-section a:focus-visible, .gal-dynamic-section button:focus-visible { outline:3px solid #d3ba59; outline-offset:4px; }
.gal-social__gallery figure > a { display:block; width:100%; height:100%; }
.gal-social__gallery figcaption { position:absolute; bottom:0; padding:1rem; background:rgba(5,9,19,.8); font-size:.85rem; z-index:2; }
@media (hover:none) { .gal-capability-card .gal-capability-card__copy { opacity:1; transform:none; } }
@media (max-width:767px) { .gal-dynamic-section, .gal-dynamic-section.gal-partner, .gal-dynamic-section .gal-hero__media { background-image:var(--gal-row-mobile-bg,var(--gal-row-bg,none)); } }
@media (prefers-reduced-motion:reduce) { .gal-dynamic-section *, .gal-dynamic-section::after { animation:none!important; transition:none!important; } }
