.public-media{position:relative;margin:0;min-width:0;overflow:hidden;background:#62574b;aspect-ratio:8/5;isolation:isolate}
.public-media img,.public-media video{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .7s ease}
.public-media .film-poster{position:absolute;inset:0;pointer-events:none}
.public-media:has(.film-poster) video{position:relative;opacity:1}
.public-media:has(.film-poster) video.is-playing,.public-media:has(.film-poster) video:focus{opacity:1}
.cat-row>.public-media{grid-column:2;grid-row:1}
.public-media figcaption{position:absolute;inset:auto 0 0;padding:32px 20px 16px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;font-size:14px;line-height:1.5;pointer-events:none}
.public-media:has(video) figcaption{bottom:52px}
.public-media.service-media,.boarding-row>.public-media{aspect-ratio:4/5}
.hero,.cage-free,.cage-page-hero{position:relative;isolation:isolate;overflow:hidden}
.media-background{position:absolute;inset:0;z-index:-1;aspect-ratio:auto}
.media-background::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.3));pointer-events:none}
.hero:has(.media-background) .hero-frame{display:none}
.cage-free:has(.media-background){color:#fff}
.cage-free:has(.media-background) .text-link{color:#fff}
.cage-free:has(.media-background) .section-index{border-color:#ffffff60}
.media-background video{object-fit:cover}
.video-open{position:absolute;right:12px;top:12px;background:#342e29;color:white;padding:9px 12px;font-size:14px;z-index:2}
.media-background .video-open{top:auto;bottom:16px}
.media-collection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.media-collection>.public-media:only-child{grid-column:1/-1}
.connected-gallery{display:block}.connected-gallery>section{margin-bottom:56px}.connected-gallery h2{font-size:32px;margin-bottom:20px}
.gallery-empty{min-height:120px;display:flex;align-items:center;color:#665e54;background:#e6dfd4;padding:24px;margin:0}
.media-pagination{display:flex;justify-content:space-between;gap:24px;margin-top:24px}
.media-pagination a{text-underline-offset:5px}
@media(max-width:800px){.media-collection{grid-template-columns:1fr;gap:16px}.hero:has(.media-background) .hero-content{position:relative}.media-background::after{background:rgba(0,0,0,.62)}.public-media.service-media{aspect-ratio:4/5}}
@media(prefers-reduced-motion:reduce){.public-media img,.public-media video{transition:none}}

.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;padding:14px 22px;border:1px solid #fff;border-radius:30px;background:#342e29;color:#fff;font:inherit;cursor:pointer}.video-play[hidden]{display:none}.video-play:focus-visible{outline:3px solid #d7bc69;outline-offset:4px}
