/* Preserve the editorial palette and composition; add optical depth. */
/* Keep the optical finish without four continuously repainted blur layers. */
@media (min-width: 641px) and (prefers-reduced-motion: no-preference) {
  .veil span { display: none; }
  .veil span:first-child { display: block; --b: 3px; --hold: 0%; --fade: 90%; }
}
.reel:not([data-reel-active='true']) .card { will-change: auto; }

.studio-notice {
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.23);
  border-radius: 14px;
  background: rgba(12,11,22,.78);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
  margin-block: 20px;
  max-width: 100%;
}
.studio-notice[hidden], .studio-pause-label[hidden] { display: none; }
.studio-notice h2 { font-size: 17px; font-weight: 500; color: #fff; margin-bottom: 8px; }
.studio-notice p + p { margin-top: 7px; }
.studio-notice__available { color: #fff; }
.studio-notice a { display: inline-block; margin-top: 10px; text-decoration: underline; text-underline-offset: 4px; color: #fff; }
.studio-notice a:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
.studio-pause-label { display: inline-block; margin-left: 6px; padding: 1px 6px; border: 1px solid rgba(255,255,255,.35); border-radius: 20px; font-size: 11px; color: #fff; }
@media (min-width: 900px) {
  .studio-notice { position: absolute; top: calc(var(--gutter) + 46px); right: var(--gutter); width: min(40vw, 480px); margin: 0; }
}
.card-glass[data-availability='paused'] { border-style: dashed; }
.card-glass[data-availability='paused'] .card-glass__pitch { opacity: .8; }
.svc__pause p { max-width: 55ch; line-height: 1.6; }
.svc__pause p + p { margin-top: 18px; }
.svc__pause .btn-line { margin-top: 28px; cursor: pointer; font: inherit; }

.tile, .card-glass, .mate {
  --depth-x: 0deg;
  --depth-y: 0deg;
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .tile, .card-glass {
    transform: perspective(1200px) rotateX(var(--depth-x)) rotateY(var(--depth-y));
    transition: transform 420ms var(--ease), box-shadow 420ms var(--ease);
  }
  .tile[data-depth='true'], .card-glass[data-depth='true'] {
    transition-duration: 120ms;
    box-shadow: 0 22px 45px -28px rgba(0,0,0,.45);
  }
  .tile::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(ellipse at var(--light-x,50%) var(--light-y,50%), rgba(255,255,255,.13), transparent 58%);
    opacity: 0;
    transition: opacity 400ms;
  }
  .tile[data-depth='true']::after { opacity: 1; }
  .card-glass[data-depth='true'] {
    background-image: radial-gradient(ellipse at var(--light-x,50%) var(--light-y,50%), rgba(255,255,255,.08), transparent 65%);
  }
}
.tile:focus-visible, .card-glass:focus-visible, .svc-tier__cta:focus-visible,
.dock a:focus-visible, .skip-link:focus-visible { outline: 2px solid var(--beam); outline-offset: 5px; }
.skip-link { position: fixed; top: 12px; left: 12px; z-index: 1000; padding: 12px 18px; background: #fff; color: #121212; transform: translateY(-160%); }
.skip-link:focus { transform: none; }
.card-glass__hint { display: block; color: inherit; opacity: .8; font-size: 12px; margin-top: 5px; }
.svc-tier { display: flex; flex-direction: column; }
.svc-tier__cta { align-self: flex-start; margin-top: auto; padding: 18px 0 3px; color: inherit; text-decoration: underline; text-underline-offset: 5px; font-size: 13px; }
.svc-tier__list { margin-bottom: 24px; }
.svc__meta dd { overflow-wrap: anywhere; }
.svc-tier__price { font-variant-numeric: tabular-nums; }
.svc-tier__price span { white-space: normal; }
.tile__bar { z-index: 2; }
.lightbox__caption { padding-bottom: env(safe-area-inset-bottom,0px); }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  [data-reveal] { opacity: 1 !important; transform: none !important; }
  .mate, .tile, .card-glass { transform: none !important; }
}
