/* V8: calm office-first curation and accessibility upgrades */
.visual{position:relative;isolation:isolate}
.visual img{display:block;filter:brightness(.86) contrast(1.045);object-fit:cover}
.visual:after{content:"";position:absolute;inset:45% 0 0;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(0,0,0,.52));z-index:0}
.visual .visual-caption{position:relative;z-index:1}
.mar-gallery img{display:block;object-fit:cover;object-position:center;image-rendering:auto}
/* The arrow keeps its warm gold outline while fill inverts across bright/dark surfaces. */
@media(pointer:fine){
:root{--cursor-light:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='27' viewBox='0 0 32 32'%3E%3Cpath d='M5 3V27L11 20L16 29L20 27L15 18L25 17Z' fill='white' stroke='%23d5ab6a' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E");--cursor-dark:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='27' viewBox='0 0 32 32'%3E%3Cpath d='M5 3V27L11 20L16 29L20 27L15 18L25 17Z' fill='%23101010' stroke='%23d5ab6a' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E")}
body,body *{cursor:var(--cursor-light) 4 3,auto!important}
.intro,.references,.brands,.service-content,.contact,.intro *,.references *,.brands *,.service-content *,.contact *{cursor:var(--cursor-dark) 4 3,auto!important}
}
@media(hover:none),(pointer:coarse){body,body *{cursor:auto!important}}
@media(prefers-reduced-motion:reduce){.mar-gallery img,.mar-gallery article{animation:none!important;transition:none!important}}
