/* Premium finish: restrained light, depth and one shared reveal rhythm. */
.site-main { position:relative; isolation:isolate; overflow:clip; }
/* Page-wide glows now live per section in fx.css. */

.work--slider,
.services,
.why,
.quality,
.final-cta { position:relative; }
.service-tile,
.project-slide__figure,
.community {
  transition:transform var(--duration-normal) var(--ease-out), border-color var(--duration-normal), box-shadow var(--duration-normal);
}
.service-tile:hover {
  transform:translateY(-4px);
  box-shadow:0 18px 44px -24px rgba(103,48,201,.7);
}
.project-slide__figure { box-shadow:0 20px 48px -34px rgba(0,0,0,.9); }
.project-slide__image img {
  transition:filter 220ms var(--ease-out);
}
@media (hover:hover) and (pointer:fine) {
  .project-slide:hover .project-slide__figure {
    box-shadow:0 26px 56px -32px rgba(103,48,201,.45);
  }
  .project-slide:hover .project-slide__image img {
    filter:saturate(1.03);
  }
}
.community:hover {
  transform:translateY(-3px);
  border-color:var(--color-border-strong);
  box-shadow:0 22px 48px -30px rgba(103,48,201,.55);
}
.button--primary { position:relative; overflow:hidden; isolation:isolate; }
.button--primary::after {
  content:'';
  position:absolute;
  inset:-40% auto -40% -35%;
  width:24%;
  background:rgba(255,255,255,.22);
  transform:translateX(-180%) rotate(18deg);
  transition:transform 650ms var(--ease-out);
  pointer-events:none;
}
.button--primary:hover::after { transform:translateX(620%) rotate(18deg); }
[data-reveal='pending'] { opacity:1; transform:translateY(22px); }
[data-reveal='visible'] { opacity:1; transform:none; transition:opacity 650ms var(--ease-out), transform 800ms var(--ease-out); }
@keyframes signature-glow { from { transform:scale(.96); opacity:.7; } to { transform:scale(1.04); opacity:1; } }

@media (prefers-reduced-motion:reduce) {
  .service-tile:hover,
  .project-slide:hover .project-slide__figure,
  .community:hover { transform:none; }
}
@media (max-width:899px) {
}
