.category-grid{align-items:start}
.category-gallery-cta{align-self:stretch}
.selected-grid{--selected-gap:clamp(18px,2.2vw,32px);grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--selected-gap);align-items:start}
.selected-grid.selected-grid-balanced{grid-template-columns:calc((100% - var(--selected-gap)) * var(--selected-left-share) + var(--selected-gap) * var(--selected-gap-share)) minmax(0,1fr)}
.selected-grid .selected-photo{min-width:0;width:100%;margin:0;grid-column:auto;grid-row:auto}
.selected-grid-balanced .selected-1{grid-column:1;grid-row:1 / span 2}
.selected-grid-balanced .selected-2{grid-column:2;grid-row:1}
.selected-grid-balanced .selected-3{grid-column:2;grid-row:2}
.selected-grid .selected-photo:only-child{grid-column:1 / -1;max-width:760px;justify-self:center}
@media(max-width:650px){.selected-grid,.selected-grid.selected-grid-balanced{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.selected-grid .selected-photo{grid-column:auto;grid-row:auto}.selected-grid .selected-2{margin-top:50px}.selected-grid .selected-3{grid-column:1 / -1;width:85%;margin:3px auto 0}}
.category-grid .category-card .category-photo,
.selected-grid .selected-photo,
.services-list .service-image,
.contact-details .contact-image{aspect-ratio:auto}
:is(.category-photo,.selected-photo,.service-image,.contact-image) picture{display:block;width:100%;height:auto;aspect-ratio:auto}
:is(.category-photo,.selected-photo,.service-image,.contact-image) img{display:block;width:100%;height:auto;object-fit:contain;transform:none}
.category-card:hover .category-photo img{transform:none}
.hero.is-landscape,.hero .hero-slide.landscape{background:#102330}
.hero .hero-slide.landscape img{object-fit:cover;object-position:var(--fx,50%) var(--fy,50%)}
.hero .hero-slide.portrait img{object-fit:contain;object-position:center}
.intro-stage .hero-slide img,
.about-visuals .about-slideshow-stage .hero-slide img,
.enquiry-background .hero-slide img{object-fit:contain;object-position:center}
.js .hero .hero-slide.portrait.is-active img,
.js :is(.intro-slideshow,.about-slideshow,.enquiry-section) .hero-slide.is-active img{animation-name:photograph-breathe;transform-origin:center}
@keyframes photograph-breathe{from{transform:scale(.975)}to{transform:scale(1)}}
@media(max-width:650px){.hero.is-landscape,.hero .hero-slide.landscape{background:var(--pale)}.hero .hero-slide.landscape img{object-position:var(--mx,50%) var(--my,50%)}.hero .hero-slide.portrait img{object-position:center}}
