/* ============================================================
   STOXGEAR CINEMA MOTION (content-driven)
   - Professional, calm, "recording-like" choreography
   - No silly effects
   - Runs every time (replays on re-enter)
   ============================================================ */

:root{
  --sg-ease: cubic-bezier(.2,.9,.2,1);
  --sg-dur: 720ms;
  --sg-dur-fast: 520ms;
  --sg-stagger: 90ms;
  --sg-blur: 0px;
}

/* Overlay brand reveal */
.sg-intro{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  background:#fff;
  pointer-events:none;
  opacity:1;
  transition: opacity 420ms var(--sg-ease);
}
.sg-intro__wrap{
  width:min(520px, 86vw);
  text-align:center;
}
.sg-intro__logos{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
}
.sg-intro__logos img{
  height:52px;
  width:auto;
  object-fit:contain;
  filter: drop-shadow(0 12px 22px rgba(0,0,0,.10));
}
@media (max-width:520px){
  .sg-intro__logos img{ height:44px; }
  .sg-intro__logos img.sg-partner{ display:none; }
}
.sg-intro__line{
  margin:14px auto 0;
  width: min(360px, 70vw);
  height: 2px;
  background: #c9a646;
  transform: scaleX(0);
  transform-origin: left center;
  border-radius: 999px;
  box-shadow: 0 10px 22px rgba(201,166,70,.24);
}
.sg-intro__ring{
  width: 92px;
  height: 92px;
  border-radius: 50%;
  border: 2px solid rgba(201,166,70,.45);
  margin: 18px auto 0;
  position: relative;
  box-shadow: 0 18px 38px rgba(0,0,0,.10);
}
.sg-intro__ring:before{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius:50%;
  border: 2px solid rgba(201,166,70,.22);
  transform: scale(.88);
  animation: sgPulse 1.6s var(--sg-ease) infinite;
}
@keyframes sgPulse{
  0%{ opacity:.25; transform: scale(.90); }
  55%{ opacity:.65; transform: scale(1.05); }
  100%{ opacity:.20; transform: scale(1.12); }
}

.sg-intro.is-hidden{ opacity:0; }

/* Content reveal helpers (set by JS) */
.sg-anim{
  opacity:0;
  transform: translateY(14px);
  filter: blur(var(--sg-blur));
  will-change: transform, opacity, filter;
}
.sg-left{ transform: translateX(-18px); }
.sg-right{ transform: translateX(18px); }
.sg-up{ transform: translateY(18px); }
.sg-down{ transform: translateY(-14px); }
.sg-scale{ transform: scale(.985); }

.sg-animated{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
}

/* Underline draw for important headings */
.sg-underline{
  position:relative;
  display:inline-block;
}
.sg-underline:after{
  content:"";
  position:absolute;
  left:0;
  bottom:-10px;
  height:2px;
  width:100%;
  background:#c9a646;
  transform: scaleX(0);
  transform-origin:left;
  border-radius:999px;
  opacity:.95;
}
.sg-underline.sg-animated:after{
  transform: scaleX(1);
  transition: transform 780ms var(--sg-ease);
}
