/* Catalogue image controls: translucent surfaces, opaque and legible symbols. */
:is(.image-expand,.texture-preview-image>span,.vescom-product .vp-expand,
 .vescom-product .vp-image-code,.vescom-product .vp-prev,.vescom-product .vp-next,
 .vescom-product .vp-lightbox button,.image-lightbox button,.partner-gallery-frame button){
 background:rgb(255 255 255 / 50%);
 color:#181818;
}

/* Chevrons replace arrow shafts; accessible button names remain unchanged. */
:is(.vescom-product .vp-prev,.vescom-product .vp-next,
 .image-lightbox [data-lightbox-prev],.image-lightbox [data-lightbox-next],
 .partner-gallery-frame button){
 display:inline-flex;
 align-items:center;
 justify-content:center;
 line-height:0;
 padding:0;
 border:0;
 font-size:0;
}
:is(.vescom-product .vp-prev,.vescom-product .vp-next,
 .image-lightbox [data-lightbox-prev],.image-lightbox [data-lightbox-next],
 .partner-gallery-frame button)::before{
 content:"";
 display:block;
 width:9px;
 height:9px;
 border-top:1.5px solid currentColor;
 border-right:1.5px solid currentColor;
 transform:rotate(45deg);
}
:is(.vescom-product .vp-prev,.image-lightbox [data-lightbox-prev],
 .partner-gallery-frame button[data-project-step="-1"])::before{transform:rotate(-135deg)}

/* The corner indicates enlargement without a second opening action. */
:is(.image-expand,.texture-preview-image>span[aria-hidden="true"],.vescom-product .vp-expand){
 top:12px;
 bottom:auto;
}
:is(.image-expand,.texture-preview-image>span,.vescom-product .vp-expand){
 display:inline-flex;
 align-items:center;
 justify-content:center;
 line-height:0;
 width:36px;
 height:36px;
 padding:0;
 font-size:0;
}
:is(.image-expand,.texture-preview-image>span,.vescom-product .vp-expand)::before{
 content:"";
 width:10px;
 height:10px;
 border-top:1.5px solid currentColor;
 border-right:1.5px solid currentColor;
}

/* Reserve the opening frame while showing every subsequent photograph in full. */
.product-overview[data-fitted-media]:not(.neolith-product) .gallery-main>img,
.nc-configurator[data-fitted-media] .nc-official-preview img{
 aspect-ratio:var(--product-media-ratio);
 width:100%;height:auto;max-height:none;
 object-fit:contain;object-position:center;
}
@media(min-width:761px){
 .neolith-product.product-overview[data-fitted-media] .gallery-main>img{aspect-ratio:var(--product-media-ratio)}
}
.nc-configurator[data-fitted-media] .nc-sample-stage{
 aspect-ratio:var(--product-media-ratio);height:auto;min-height:0;
}
.nc-configurator[data-fitted-media] .nc-sample-stage img{width:100%;height:100%;min-height:0;object-position:center}
.gallery-main[data-stable-gallery],.texture-preview-image[data-stable-gallery]{display:block;aspect-ratio:var(--gallery-ratio)}
.gallery-main[data-stable-gallery]>img,.texture-preview-image[data-stable-gallery]>img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:contain}
.vescom-product .vp-lightbox{width:calc(85vw + 48px)}
.vescom-product .vp-lightbox img{width:100%;max-width:100%}
:is(.gallery-main,.vp-stage,.nc-sample-stage,.nc-official-preview,.partner-gallery-frame,.texture-preview-image){position:relative;overflow-anchor:none}
.gallery-status{position:absolute;left:12px;right:12px;bottom:12px;padding:8px;background:rgb(255 255 255 / 90%);color:#171717;font-size:12px;line-height:1.4;text-align:center;z-index:2}

/* Keep the complete gallery, including thumbnails and credit, in the opening screen. */
.product-overview[data-fitted-media] .gallery-main{height:var(--product-media-height)}
main:has(.product-overview,.nc-configurator) header.collection-intro.product-intro-compact{padding-top:12px;padding-bottom:10px}
.product-overview .gallery-track{padding-top:10px;padding-bottom:8px}
.product-overview .collection-gallery .credit{margin-top:6px;margin-bottom:0}
@media(min-width:761px){
 .product-overview .product-summary>.product-offer-action{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-bottom:12px}
 .product-overview .product-summary>.product-offer-action .product-offer-note{flex-basis:100%}
 .product-overview .product-summary>.product-material{padding-bottom:8px;margin-bottom:12px}
 .product-overview .product-summary>h2{margin-bottom:8px}
 .product-overview .product-summary>.product-description{margin-bottom:12px}
 .product-overview .product-summary>.collection-finishes{margin:10px 0;padding-top:10px}
 .product-overview .product-summary>.collection-finishes h2{margin-bottom:8px}
 .product-overview .product-summary>.collection-finishes .zumtobel-tags{margin-top:10px;gap:8px}
 .product-overview .product-summary>.product-disclosure>summary{padding-top:12px;padding-bottom:12px}
 .product-overview .product-summary>.text-link{margin-top:10px;padding-top:6px;padding-bottom:6px}
}

/* Lighting cards continue directly into documents and related products. */
.product-overview.lighting-product{padding-bottom:16px}
.lighting-product .product-summary>.product-material{padding-bottom:8px;margin-bottom:10px}
.lighting-product .product-summary>h2{margin-bottom:6px}
.lighting-product .product-summary>.lede{margin-bottom:10px}
.lighting-product .product-summary>.collection-finishes{margin:8px 0;padding-top:8px}
.lighting-product .product-summary>.collection-finishes h2{margin-bottom:6px}
.lighting-product .product-summary>.collection-finishes .zumtobel-tags{margin-top:8px;gap:8px}
.lighting-product .product-summary>.product-disclosure>summary{padding-top:10px;padding-bottom:10px}
.lighting-product .product-summary>.text-link{margin-top:8px;padding-top:4px;padding-bottom:4px}
main:has(>.lighting-product) [data-compact-details]>.product-disclosure>summary{padding-top:12px;padding-bottom:12px}
main:has(>.lighting-product) [data-compact-details] .product-disclosure-content{padding-bottom:12px}
main:has(>.lighting-product) [data-compact-details] .product-disclosure-content>:is(p,h3,.document-grid){margin-top:10px;margin-bottom:10px}
main:has(>.lighting-product) [data-compact-details] .product-disclosure-content>:first-child{margin-top:0}
main:has(>.lighting-product)>.zumtobel-catalogue{padding-top:24px;padding-bottom:32px}
main:has(>.lighting-product)>.zumtobel-catalogue>h2{margin-bottom:16px}
