/* On-site production hero: editorial light composition with real AGUYB media. */
body[data-page="onsite"] .onsite-orbit-hero {
  position: relative;
  display: flex;
  min-height: 100dvh;
  align-items: center;
  overflow: hidden;
  padding: 120px 0 410px;
  background: #f7f8f6;
  color: #130a35;
}
body[data-page="onsite"] .onsite-orbit-hero .hero-bg,
body[data-page="onsite"] .onsite-orbit-hero .hero-grid { display: none; }

.onsite-orbit-hero-grid {
  position: absolute;
  inset: 0;
  opacity: .7;
  pointer-events: none;
  background-image:
    repeating-linear-gradient(0deg, rgba(19, 10, 53, .055) 0, rgba(19, 10, 53, .055) 1px, transparent 1px, transparent 52px),
    repeating-linear-gradient(90deg, rgba(19, 10, 53, .055) 0, rgba(19, 10, 53, .055) 1px, transparent 1px, transparent 52px);
}
.onsite-orbit-square {
  position: absolute;
  z-index: 0;
  border: 1px solid rgba(23, 167, 209, .22);
  border-radius: 16px;
  background: rgba(23, 167, 209, .07);
  pointer-events: none;
}
.onsite-orbit-square-one { top: 16%; left: 5%; width: 62px; height: 62px; }
.onsite-orbit-square-two { top: 11%; left: 13%; width: 44px; height: 44px; }
.onsite-orbit-square-three { top: 29%; left: 8%; width: 78px; height: 78px; }
.onsite-orbit-square-four { top: 14%; right: 6%; width: 86px; height: 86px; }
.onsite-orbit-square-five { top: 28%; right: 13%; width: 50px; height: 50px; }
.onsite-orbit-square-six { bottom: 22%; left: 19%; width: 40px; height: 40px; }
.onsite-orbit-square-seven { bottom: 27%; right: 16%; width: 55px; height: 55px; }

.onsite-orbit-hero-inner {
  position: relative;
  z-index: 2;
  max-width: 800px;
  margin: 0 auto;
  padding: 0 24px;
  text-align: center;
}
.onsite-orbit-hero-proof {
  display: inline-block;
  max-width: 420px;
  margin: 0 0 18px;
  color: #57526c;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
}
.onsite-orbit-hero h1 {
  max-width: 760px;
  margin: 0 auto;
  color: #130a35;
  font-size: clamp(42px, 5.7vw, 72px);
  font-weight: 800;
  letter-spacing: -.052em;
  line-height: 1.02;
}
.onsite-orbit-hero .onsite-orbit-hero-summary {
  max-width: 600px;
  margin: 20px auto 28px;
  color: #615c74;
  font-size: 17px;
  line-height: 1.65;
}
.onsite-orbit-hero-actions { justify-content: center; }
.onsite-orbit-hero-actions .btn { min-height: 54px; }
.onsite-orbit-hero-actions .btn-primary { color: #071126; }
.onsite-orbit-hero-actions .btn-ghost {
  border-color: rgba(19, 10, 53, .18);
  background: rgba(255, 255, 255, .74);
  color: #130a35;
}

.onsite-orbit-stat {
  position: absolute;
  z-index: 2;
  display: grid;
  gap: 1px;
  min-width: 148px;
  padding: 13px 16px;
  border: 1px solid rgba(19, 10, 53, .10);
  border-radius: 14px;
  background: rgba(255, 255, 255, .87);
  box-shadow: 0 10px 24px rgba(19, 10, 53, .07);
}
.onsite-orbit-stat b { color: #130a35; font-size: 13px; }
.onsite-orbit-stat span { color: #716c80; font-size: 11px; }
.onsite-orbit-stat-left { top: 42%; left: max(30px, calc(50% - 610px)); }
.onsite-orbit-stat-right { top: 35%; right: max(30px, calc(50% - 610px)); }

.onsite-orbit-media-row {
  position: absolute;
  z-index: 2;
  right: 24px;
  bottom: 36px;
  left: 24px;
  display: grid;
  grid-template-columns: .84fr 1.32fr .84fr;
  gap: 14px;
  max-width: 1192px;
  margin: 0 auto;
}
.onsite-orbit-media-card {
  position: relative;
  min-height: 206px;
  margin: 0;
  overflow: hidden;
  border-radius: 20px;
  background: #1a1036;
  isolation: isolate;
}
.onsite-orbit-media-card img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  transition: transform .7s var(--ease);
}
.onsite-orbit-media-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 36%, rgba(12, 3, 33, .82) 100%);
  pointer-events: none;
}
.onsite-orbit-media-card:hover img { transform: scale(1.055); }
.onsite-orbit-media-card figcaption {
  position: absolute;
  z-index: 1;
  right: 20px;
  bottom: 17px;
  left: 20px;
  color: #fff;
}
.onsite-orbit-media-card figcaption b { display: block; font-size: 15px; }
.onsite-orbit-media-card figcaption span { display: block; margin-top: 2px; color: rgba(255, 255, 255, .76); font-size: 12px; }

@media (prefers-reduced-motion: no-preference) {
  .onsite-orbit-hero-inner { animation: onsite-orbit-rise .7s var(--ease) both; }
  .onsite-orbit-media-row { animation: onsite-orbit-fade .8s .18s var(--ease) both; }
  .onsite-orbit-stat { animation: onsite-orbit-fade .7s .28s var(--ease) both; }
  .onsite-orbit-square-one, .onsite-orbit-square-four { animation: onsite-orbit-drift 7s ease-in-out infinite; }
  .onsite-orbit-square-three, .onsite-orbit-square-seven { animation: onsite-orbit-drift 8s -2s ease-in-out infinite; }
}
@keyframes onsite-orbit-rise { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes onsite-orbit-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes onsite-orbit-drift { 50% { transform: translateY(-9px); } }

@media (max-width: 1100px) {
  .onsite-orbit-stat { display: none; }
}
@media (max-width: 760px) {
  body[data-page="onsite"] .onsite-orbit-hero { min-height: auto; padding: 116px 0 36px; }
  .onsite-orbit-hero-inner { padding: 0 20px; }
  .onsite-orbit-hero h1 { font-size: clamp(39px, 11vw, 54px); }
  .onsite-orbit-hero .onsite-orbit-hero-summary { margin-top: 16px; font-size: 16px; }
  .onsite-orbit-hero-actions { display: grid; grid-template-columns: 1fr; }
  .onsite-orbit-hero-actions .btn { width: 100%; }
  .onsite-orbit-media-row { position: relative; right: auto; bottom: auto; left: auto; grid-template-columns: 1fr; padding: 34px 20px 0; }
  .onsite-orbit-media-card { min-height: 190px; }
  .onsite-orbit-media-card-small { display: none; }
  .onsite-orbit-square { opacity: .55; }
}
@media (prefers-reduced-motion: reduce) {
  .onsite-orbit-hero *, .onsite-orbit-hero *::before, .onsite-orbit-hero *::after { animation: none !important; transition-duration: .01ms !important; }
}
