/* Homepage carousel: the first image also works without JavaScript. */
.hero-gallery{isolation:isolate;touch-action:pan-y pinch-zoom}
.gallery-slide{position:absolute;inset:0;margin:0}
.hero-gallery.is-ready .gallery-slide{opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s}
.hero-gallery.is-ready .gallery-slide.is-active{opacity:1;visibility:visible;z-index:1}
.hero-gallery.is-ready figcaption{padding-bottom:82px}
.hero-gallery figcaption .gallery-title{font-size:11px;letter-spacing:1px;opacity:1;margin:0}
.gallery-controls{position:absolute;z-index:2;bottom:16px;left:20px;right:20px;display:flex;align-items:center;gap:8px;color:#fff}
.gallery-controls[hidden]{display:none}
.gallery-controls button{display:inline-flex;justify-content:center;align-items:center;min-width:44px;min-height:44px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(7,24,42,.65);color:#fff;cursor:pointer;font:inherit;touch-action:manipulation}
.gallery-controls button:hover{background:#0c2845}
.gallery-controls button:focus-visible{outline:3px solid #fff;outline-offset:3px}
.gallery-arrow{font-size:22px!important}
.gallery-dots{display:flex;align-items:center;gap:0}
.gallery-controls .gallery-dot{min-width:32px;width:32px;border:0;background:transparent;border-radius:4px}
.gallery-dot span{width:7px;height:7px;border:1px solid #fff;border-radius:50%;background:transparent;transition:background .2s}
.gallery-dot[aria-pressed=true] span{background:#fff}
.gallery-controls .gallery-pause{margin-left:auto;padding:0 14px;border-radius:24px;font-size:12px}
.gallery-pause .play-text,.gallery-pause[data-paused=true] .pause-text{display:none}
.gallery-pause[data-paused=true] .play-text{display:inline}
@media(max-width:380px){.gallery-controls{left:12px;right:12px;gap:4px}.gallery-controls .gallery-dot{min-width:26px;width:26px}.gallery-controls .gallery-pause{padding:0 10px}}
@media(prefers-reduced-motion:reduce){.hero-gallery.is-ready .gallery-slide,.gallery-dot span{transition:none}}

/* Seven-image controls and uncropped sample photographs. */
.gallery-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px;left:12px;right:12px;bottom:12px}
.gallery-controls[hidden]{display:none}
.gallery-dots{justify-content:center;min-width:0}
.gallery-controls .gallery-dot{min-width:24px;width:24px;flex:0 0 24px}
.gallery-controls .gallery-pause{grid-column:2;justify-self:center;margin:0;padding:0 16px}
.hero-gallery.is-ready figcaption{padding-bottom:118px}
.gallery-sample{background:#eceeea}
.hero-gallery .gallery-sample img{top:12px;left:12px;width:calc(100% - 24px);height:calc(100% - 194px);object-fit:contain}
.hero-gallery .gallery-sample figcaption{background:#0c2845;padding-top:14px}
@media(max-width:800px){.hero-gallery{min-height:500px;max-height:none;aspect-ratio:auto}}
