/* Local photo study: preserves the existing service and home section structure. */
.process-photo{display:block;width:100%;height:100%;object-fit:cover;border:0}
.home-production-photo{margin:28px 0 0;position:relative;border:1px solid var(--line);overflow:hidden;aspect-ratio:3.8}
.home-production-photo img{object-position:50% 57%}
.home-production-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:36px 22px 16px;background:linear-gradient(transparent,rgba(6,12,20,.85));color:#eef3fa;font-size:11px;letter-spacing:.02em;line-height:1.7}

/* Existing service cards retain their text/order; photography sits before the enquiry link. */
#alt-extra-services .alt-extra-service{display:flex;flex-direction:column;align-items:stretch}
#alt-extra-services .service-card-media{margin:auto 0 12px;padding-top:12px;min-width:0;width:100%}
#alt-extra-services .alt-extra-service>p{min-height:0;margin-bottom:0}
#alt-extra-services .alt-extra-service>.detail-link{align-self:flex-start;margin-top:0}
.service-card-frame,.photo-carousel-frame{position:relative;overflow:hidden;border:1px solid var(--line);background:#0b1119;aspect-ratio:1.5}
.service-card-frame .process-photo{object-position:50% 55%}
.photo-carousel-track{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory}
.photo-carousel-slide{position:relative;flex:0 0 100%;width:100%;height:100%;min-width:0;margin:0;scroll-snap-align:start}
.photo-carousel-slide .process-photo{object-position:50% 55%}
.photo-carousel[data-ready=true] .photo-carousel-track{overflow:visible;scroll-snap-type:none;transition:transform 320ms cubic-bezier(.22,.61,.36,1)}
.photo-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:grid;place-items:center;width:32px;height:44px;padding:0;border:0;background:transparent;box-shadow:none;color:#edf4ff;cursor:pointer}
.photo-carousel-arrow[hidden]{display:none}
.photo-carousel-arrow svg{width:20px;height:20px;filter:drop-shadow(0 1px 3px #000)}
.photo-carousel-prev{left:7px}.photo-carousel-next{right:7px}
.photo-carousel-arrow:hover{background:transparent;color:#fff}
.photo-carousel-arrow:focus-visible{outline:2px solid #91b4ff;outline-offset:2px}
@media(max-width:900px){.home-production-photo{aspect-ratio:2.8}}
@media(max-width:600px){
 .home-production-photo{aspect-ratio:1.65;margin-top:22px}.home-production-photo figcaption{padding:36px 16px 12px;font-size:10px}
 #alt-extra-services .service-card-media{margin:auto 0 10px;padding-top:10px}
 .service-card-frame,.service-card-media .photo-carousel-frame{aspect-ratio:1.25}
 .service-card-media .photo-carousel-arrow{width:28px;height:44px}
 .service-card-media .photo-carousel-prev{left:4px}.service-card-media .photo-carousel-next{right:4px}
}
:root[data-motion=paused] .photo-carousel[data-ready=true] .photo-carousel-track,:root[data-motion=reduced] .photo-carousel[data-ready=true] .photo-carousel-track{transition:none}
@media(prefers-reduced-motion:reduce){.photo-carousel[data-ready=true] .photo-carousel-track{transition:none}}

/* Preserve the original 16:9 photo-film stage and fill it edge to edge. */
.page-factory .alt-video-stage>img,.page-factory .alt-video-stage>video{object-fit:cover}

/* The existing three fabrication cards use the same description/photo/enquiry rhythm. */
#alt-fabrication-services .alt-extra-service{display:flex;flex-direction:column;align-items:stretch}
#alt-fabrication-services .alt-extra-service>p{min-height:0;margin-bottom:0}
#alt-fabrication-services .service-card-media{margin:auto 0 12px;padding-top:12px;min-width:0;width:100%}
#alt-fabrication-services .alt-extra-service>.detail-link{align-self:flex-start;margin-top:0}
@media(max-width:600px){#alt-fabrication-services .service-card-media{margin:auto 0 10px;padding-top:10px}}
