/* Playful precision: small brand-led motion without changing the sales story. */
.premium-site [data-lively-surface] {
  --lively-x: 0px;
  --lively-y: 0px;
  --lively-lift: 0px;
  --lively-turn: 0deg;
}

.premium-site .brand-beacon {
  --beacon-rotate: 0deg;
  position: absolute;
  z-index: 2;
  display: grid;
  width: 50px;
  aspect-ratio: 1;
  grid-template-columns: repeat(2, 1fr);
  gap: 4px;
  padding: 6px;
  border: 1px solid #dce6e7;
  border-radius: 17px;
  background: #ffffffdb;
  box-shadow: 0 18px 48px #08243a16, 0 0 62px #f1d59d38;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(var(--lively-x), calc(var(--lively-y) + var(--lively-lift)), 0)
    rotate(calc(var(--beacon-rotate) + var(--lively-turn))) scale(.84);
  transition: opacity 520ms ease, transform 760ms cubic-bezier(.22, 1, .36, 1);
  backdrop-filter: blur(12px);
}
.premium-site .brand-beacon::after {
  content: "";
  position: absolute;
  inset: -34px;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(circle, #f1d59d36 0 18%, #75bbb426 36%, transparent 68%);
}
.premium-site .brand-beacon.is-awake { opacity: .82; transform: translate3d(var(--lively-x), calc(var(--lively-y) + var(--lively-lift)), 0) rotate(calc(var(--beacon-rotate) + var(--lively-turn))) scale(1); }
.premium-site .brand-beacon span { border-radius: 6px; animation: lively-tile 6.5s ease-in-out infinite; }
.premium-site .brand-beacon span:nth-child(1) { background: #08243a; }
.premium-site .brand-beacon span:nth-child(2) { background: #ff7354; animation-delay: -1.4s; }
.premium-site .brand-beacon span:nth-child(3) { background: #f1d59d; animation-delay: -2.8s; }
.premium-site .brand-beacon span:nth-child(4) { background: #0e7c78; animation-delay: -4.2s; }
.premium-site .brand-beacon-outcomes { top: 7%; right: -10px; --beacon-rotate: -7deg; }
.premium-site .brand-beacon-services { top: 9%; left: -10px; --beacon-rotate: 8deg; }
.premium-site .brand-beacon-process { top: 13%; right: -10px; --beacon-rotate: 5deg; }
.premium-site .brand-beacon-close { bottom: 9%; left: -10px; --beacon-rotate: -9deg; }

@keyframes lively-tile {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(0); }
  48% { transform: translate3d(0, -2px, 0) rotate(-2deg); }
  54% { transform: translate3d(1px, 0, 0) rotate(2deg); }
}

@media (hover: hover) and (pointer: fine) {
  .premium-site .cinematic-services .service-lane,
  .premium-site .bright-outcome-list article,
  .premium-site .bright-process-steps li { transition: transform 260ms cubic-bezier(.22, 1, .36, 1), box-shadow 260ms ease, background-color 220ms ease; }
  .premium-site .cinematic-services .service-lane:hover { transform: translateY(-6px); box-shadow: 0 20px 44px #08243a12; }
  .premium-site .bright-outcome-list article:hover { transform: translateY(-4px); background: linear-gradient(145deg, #fff, #f7fbfa); }
  .premium-site .bright-process-steps li:hover { transform: translateY(-5px); }
  .premium-site .button > span[aria-hidden="true"],
  .premium-site .nav-contact > span[aria-hidden="true"] { display: inline-block; transition: transform 220ms cubic-bezier(.22, 1, .36, 1); }
  .premium-site .button:hover > span[aria-hidden="true"],
  .premium-site .nav-contact:hover > span[aria-hidden="true"] { transform: translate(3px, -3px) rotate(5deg); }
  .premium-site .operational-canvas:hover .ownership-lane { transform: translateX(-4px); box-shadow: 0 16px 38px #08243a12; }
}

@media (max-width: 760px) {
  .premium-site .brand-beacon { width: 38px; gap: 3px; padding: 5px; border-radius: 12px; opacity: 0; }
  .premium-site .brand-beacon.is-awake { opacity: .58; }
  .premium-site .brand-beacon-outcomes { top: 4%; right: -7px; }
  .premium-site .brand-beacon-services { top: 4%; left: -7px; }
  .premium-site .brand-beacon-process,
  .premium-site .brand-beacon-close { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .premium-site .brand-beacon,
  .premium-site .brand-beacon.is-awake { opacity: .72; transform: none; transition: none; }
  .premium-site .brand-beacon span { animation: none; }
  .premium-site .cinematic-services .service-lane,
  .premium-site .bright-outcome-list article,
  .premium-site .bright-process-steps li,
  .premium-site .button > span[aria-hidden="true"],
  .premium-site .nav-contact > span[aria-hidden="true"] { transition: none; }
}
