.artisan-global-continuity {
  --artisan-continuity-shift-x: 0vw;
  --artisan-continuity-shift-y: 0vh;
  --artisan-continuity-scale: 1.03;
  position: fixed;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  isolation: isolate;
  contain: strict;
}

.artisan-global-continuity__poster,
.artisan-global-continuity__poster img,
.artisan-global-continuity__canvas,
.artisan-global-continuity__core {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

body:has([data-maison-may-root]) > .artisan-global-continuity .artisan-global-continuity__poster,
.artisan-global-continuity[data-continuity-tone="light"] .artisan-global-continuity__poster {
  opacity: 0.075;
}

body:has([data-maison-may-root]) > .artisan-global-continuity .artisan-global-continuity__canvas,
.artisan-global-continuity[data-continuity-tone="light"] .artisan-global-continuity__canvas {
  opacity: 0.18;
}

body:has([data-maison-may-root]) > .artisan-global-continuity .artisan-global-continuity__core,
.artisan-global-continuity[data-continuity-tone="light"] .artisan-global-continuity__core {
  opacity: 0.18;
}

body:has(.horizon-page) > .artisan-global-continuity .artisan-global-continuity__poster {
  opacity: 0.075;
}

body:has(.horizon-page) > .artisan-global-continuity .artisan-global-continuity__canvas {
  opacity: 0.18;
}

.artisan-global-continuity__poster {
  z-index: 1;
  display: block;
  opacity: 0.2;
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0, 0, 0, 0.08) 34%,
    rgba(0, 0, 0, 0.68) 61%,
    #000 100%
  );
  mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0, 0, 0, 0.08) 34%,
    rgba(0, 0, 0, 0.68) 61%,
    #000 100%
  );
}

.artisan-global-continuity__poster img {
  display: block;
  max-width: none;
  object-fit: cover;
  object-position: center;
  transform: translate3d(
      var(--artisan-continuity-shift-x),
      var(--artisan-continuity-shift-y),
      0
    )
    scale(var(--artisan-continuity-scale));
  transform-origin: 58% 48%;
  filter: saturate(0.88) contrast(1.08);
  will-change: transform;
}

.artisan-global-continuity__canvas {
  z-index: 2;
  display: block;
  opacity: 0.82;
}

.artisan-global-continuity__core {
  z-index: 3;
  background: radial-gradient(
    circle at 58% 50%,
    rgba(255, 226, 151, 0.1),
    rgba(201, 160, 79, 0.035) 12%,
    transparent 31%
  );
}

body:has([data-studio-root]) > .artisan-global-continuity,
body:has([data-artisan-bloom-backdrop]) > .artisan-global-continuity {
  display: none;
}


body.motion-lite > .site-header {
  z-index: 50;
}


@media (max-width: 900px) and (orientation: portrait) {
  .artisan-global-continuity__poster {
    opacity: 0.18;
    -webkit-mask-image: linear-gradient(
      180deg,
      #000 0%,
      rgba(0, 0, 0, 0.72) 38%,
      rgba(0, 0, 0, 0.1) 70%,
      transparent 92%
    );
    mask-image: linear-gradient(
      180deg,
      #000 0%,
      rgba(0, 0, 0, 0.72) 38%,
      rgba(0, 0, 0, 0.1) 70%,
      transparent 92%
    );
  }

  .artisan-global-continuity__poster img {
    object-position: center top;
    transform-origin: 50% 28%;
  }

  .artisan-global-continuity__canvas {
    opacity: 0.76;
  }

  .artisan-global-continuity__core {
    background: radial-gradient(
      circle at 50% 30%,
      rgba(255, 226, 151, 0.11),
      rgba(201, 160, 79, 0.035) 13%,
      transparent 32%
    );
  }

  body:has([data-maison-may-root]) > .artisan-global-continuity .artisan-global-continuity__poster,
  .artisan-global-continuity[data-continuity-tone="light"] .artisan-global-continuity__poster {
    opacity: 0.06;
  }

  body:has([data-maison-may-root]) > .artisan-global-continuity .artisan-global-continuity__canvas,
  .artisan-global-continuity[data-continuity-tone="light"] .artisan-global-continuity__canvas {
    opacity: 0.14;
  }
}

@media (prefers-reduced-motion: reduce) {
  .artisan-global-continuity__poster img {
    transform: scale(1.0426);
    will-change: auto;
  }
}

@media (prefers-reduced-data: reduce) {
  .artisan-global-continuity__canvas {
    display: none;
  }
}

/* The shared motif is a background layer, never a screen over the page. */
body:has(> [data-artisan-global-continuity]) {
  isolation: isolate;
}

body:has(> [data-artisan-global-continuity]) > main,
body:has(> [data-artisan-global-continuity]) > footer,
body:has(> [data-artisan-global-continuity]) > [data-gallery-root],
body:has(> [data-artisan-global-continuity]) > [data-maison-may-root],
body:has(> [data-artisan-global-continuity]) > .horizon-page {
  position: relative;
  z-index: 1;
}

/* Root paint belongs below the motif; opaque media and content stay above it. */
body:has(> [data-gallery-root]) { background: #050505; }
body:has(> [data-maison-may-root]) { background: #fffbf0; }
body:has(> .horizon-page) { background: #f5e8ce; }
body:has(> [data-artisan-global-continuity]) > [data-gallery-root],
body:has(> [data-artisan-global-continuity]) > [data-maison-may-root],
body:has(> [data-artisan-global-continuity]) > .horizon-page {
  background: transparent;
}

/* Editorial breathing spaces reveal the motif beneath each showcase's copy. */
body:has(> [data-artisan-global-continuity]) [data-maison-may-root] #maison,
body:has(> [data-artisan-global-continuity]) .horizon-page .manifesto,
body.motion-lite:has(> [data-artisan-global-continuity]) #faq,
body[data-media-status]:has(> [data-artisan-global-continuity]) #gestes {
  background: transparent;
}

body[data-media-status]:has(> [data-artisan-global-continuity]) {
  background: #f2ece2;
}
body[data-media-status] > .artisan-global-continuity .artisan-global-continuity__poster {
  opacity: 0.075;
}
body[data-media-status] > .artisan-global-continuity .artisan-global-continuity__canvas,
body[data-media-status] > .artisan-global-continuity .artisan-global-continuity__core {
  opacity: 0.18;
}
