/*!
 * Ascend Solutions : Immersive Services page styles (generated).
 * Source: design-handoff/design/services.css. Regenerate via build-immersive-assets.cjs.
 */
/* ============================================================
   Ascend - Services page styles (built on styles.css tokens)
   Loads after styles.css + refine.css.
   ============================================================ */

/* ---- Page hero ---- */
.shero{ position:relative; background:var(--navy-900); color:#fff; overflow:hidden; isolation:isolate;
  padding:calc(var(--nav-h) + var(--space-10)) 0 var(--space-10); }
.shero__bg{ position:absolute; inset:0; z-index:-1;
  background:
    radial-gradient(58% 50% at 16% 8%, rgba(15,163,177,.28), transparent 60%),
    radial-gradient(50% 46% at 90% 6%, rgba(212,168,67,.14), transparent 60%),
    linear-gradient(180deg, var(--navy-950), var(--navy-900) 55%, var(--navy-800)); }
.shero__range{ position:absolute; inset:auto 0 0 0; width:100%; height:62%; z-index:-1; }
.shero__inner{ position:relative; }
.shero__eyebrow{ margin-bottom:var(--space-4); }
.shero h1{ font-family:var(--font-display); font-weight:var(--fw-black); color:#fff;
  font-size:clamp(2.6rem,6vw,var(--text-5xl)); line-height:1.02; letter-spacing:var(--tracking-tight); max-width:16ch; }
.shero h1 .grad-teal{ background:linear-gradient(120deg,var(--teal-400),var(--teal-300)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.shero__sub{ margin-top:var(--space-5); max-width:58ch; color:rgba(234,241,251,.8);
  font-size:clamp(1.05rem,1.6vw,var(--text-lg)); line-height:var(--leading-relaxed); }
.shero__jump{ margin-top:var(--space-7); display:flex; flex-wrap:wrap; gap:var(--space-3); }
.shero__chip{ display:inline-flex; align-items:center; gap:.5em; font-family:var(--font-display);
  font-weight:var(--fw-semibold); font-size:var(--text-sm); color:rgba(234,241,251,.86);
  padding:.6em 1em; border-radius:var(--radius-pill); border:1.5px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.04); transition:border-color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out); }
.shero__chip:hover{ border-color:var(--teal-400); background:rgba(255,255,255,.08); transform:translateY(-2px); }
.shero__chip .n{ font-size:var(--text-2xs); color:var(--teal-300); font-weight:var(--fw-bold); }
.shero__chip--gold .n{ color:var(--gold-300); }
.shero__chip--gold:hover{ border-color:var(--gold-400); }

/* ---- Service blocks ---- */
.svc{ padding:var(--section-y) 0; border-bottom:1px solid var(--border); scroll-margin-top:var(--nav-h); }
.svc:nth-child(even){ background:var(--surface-card); }
.svc__grid{ display:grid; grid-template-columns:1.05fr 1fr; gap:var(--space-9); align-items:center; }
.svc:nth-child(even) .svc__grid{ grid-template-columns:1fr 1.05fr; }
.svc:nth-child(even) .svc__copy{ order:2; }

.svc__no{ font-family:var(--font-display); font-weight:var(--fw-black); font-size:var(--text-2xs);
  letter-spacing:var(--tracking-eyebrow); text-transform:uppercase; color:var(--accent-strong); margin:0 0 var(--space-3);
  display:flex; align-items:center; gap:.7em; }
.svc__no .stagepill{ color:var(--text-muted); font-weight:var(--fw-semibold); }
.svc--gold .svc__no{ color:var(--premium-strong); }
.svc h2{ font-size:clamp(1.9rem,3.6vw,var(--text-2xl)); letter-spacing:var(--tracking-tight); color:var(--text-strong); }
.svc__lead{ margin-top:var(--space-4); color:var(--text-body); font-size:var(--text-md); line-height:var(--leading-relaxed); max-width:50ch; }
.svc__feats{ list-style:none; margin:var(--space-6) 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:var(--space-3) var(--space-5); }
.svc__feats li{ display:flex; gap:.6em; align-items:flex-start; font-size:var(--text-sm); color:var(--text-body); line-height:1.45; }
.svc__feats .pk{ flex:0 0 auto; margin-top:.15em; color:var(--teal-500); font-size:.72em; }
.svc--gold .svc__feats .pk{ color:var(--gold-500); }
.svc__cta{ margin-top:var(--space-7); display:flex; flex-wrap:wrap; gap:var(--space-3) var(--space-5); align-items:center; }
/* Tertiary "Next: ..." climb cue: a light text link, subordinate to the
   Book / Learn more buttons so the section has one clear primary action. */
.svc__next{ color:var(--text-muted); font-size:var(--text-sm); font-weight:600; letter-spacing:var(--tracking-tight);
  text-decoration:none; white-space:nowrap; transition:color .2s ease; }
.svc__next:hover{ color:var(--teal-500); }
.svc--gold .svc__next:hover{ color:var(--gold-500); }

/* ---- Service visual panels ---- */
.svis{ position:relative; border-radius:var(--radius-xl); padding:var(--space-6); overflow:hidden;
  background:linear-gradient(180deg, var(--navy-900), var(--navy-950)); border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow-lg); min-height:340px; display:flex; flex-direction:column; gap:var(--space-4); color:#fff; }
.svc--gold .svis{ border-color:rgba(212,168,67,.28); }
.svis::after{ content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(70% 60% at 82% 0%, rgba(15,196,212,.16), transparent 60%); }
.svc--gold .svis::after{ background:radial-gradient(70% 60% at 82% 0%, rgba(212,168,67,.18), transparent 60%); }
.svis__tag{ font-family:var(--font-display); font-size:var(--text-2xs); letter-spacing:var(--tracking-eyebrow);
  text-transform:uppercase; color:rgba(234,241,251,.6); position:relative; }
.svis__rows{ display:grid; gap:10px; position:relative; }
.svis__row{ display:flex; align-items:center; justify-content:space-between; gap:var(--space-4);
  padding:.7em .9em; border-radius:var(--radius-md); background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.07); }
.svis__row span{ font-size:var(--text-sm); color:rgba(234,241,251,.78); display:inline-flex; align-items:center; gap:.6em; }
.svis__row b{ font-family:var(--font-display); font-weight:var(--fw-bold); color:#fff; font-variant-numeric:tabular-nums; font-size:var(--text-sm); }
.svis__dot{ width:8px; height:8px; border-radius:2px; background:var(--teal-400); }
.svis__dot--ok{ background:var(--success-500); } .svis__dot--gold{ background:var(--gold-400); }
.svis__bars{ display:flex; align-items:flex-end; gap:9px; height:120px; position:relative; }
.svis__bars span{ flex:1; border-radius:4px 4px 0 0; background:linear-gradient(180deg,var(--teal-400),rgba(15,196,212,.2)); }
.svc--gold .svis__bars span{ background:linear-gradient(180deg,var(--gold-400),rgba(212,168,67,.2)); }
.svis__chip{ display:inline-flex; align-items:center; gap:.5em; align-self:flex-start; font-family:var(--font-display);
  font-weight:var(--fw-bold); font-size:var(--text-xs); color:var(--success-500); background:rgba(22,163,127,.16);
  border:1px solid rgba(22,163,127,.3); padding:.3em .7em; border-radius:var(--radius-pill); position:relative; }
.svis__foot{ margin-top:auto; font-size:var(--text-2xs); color:rgba(234,241,251,.4); letter-spacing:.04em; position:relative; }
.svis__flow{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; position:relative; }
.svis__node{ flex:1 1 auto; text-align:center; font-family:var(--font-display); font-weight:var(--fw-semibold);
  font-size:var(--text-2xs); color:rgba(234,241,251,.82); padding:.7em .5em; border-radius:var(--radius-md);
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08); }
.svis__arrow{ color:var(--teal-300); font-size:var(--text-sm); }
.svis__browser{ border-radius:var(--radius-lg); overflow:hidden; border:1px solid rgba(255,255,255,.1); position:relative; }
.svis__bartop{ display:flex; align-items:center; gap:6px; padding:.6em .8em; background:rgba(255,255,255,.06); }
.svis__bartop i{ width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,.25); }
.svis__screen{ height:150px; background:linear-gradient(135deg, rgba(15,196,212,.18), rgba(11,29,58,.4)); display:grid; place-items:center; }
.svis__screen .peak{ width:54px; height:54px; opacity:.9; }

/* ---- closing CTA band (reuse .cta styles from styles.css) ---- */
.svc-mid{ background:var(--surface-page); padding:var(--space-10) 0; text-align:center; }
.svc-mid__inner{ display:flex; flex-direction:column; align-items:center; gap:var(--space-3); }
.svc-mid h2{ font-size:clamp(1.7rem,3.2vw,var(--text-2xl)); color:var(--text-strong); letter-spacing:var(--tracking-tight); }
.svc-mid p{ color:var(--text-muted); max-width:50ch; }


@media (max-width: 900px){
  .svc__grid, .svc:nth-child(even) .svc__grid{ grid-template-columns:1fr; gap:var(--space-7); }
  .svc:nth-child(even) .svc__copy{ order:0; }
  .svis{ min-height:0; }
}
@media (max-width: 640px){
  .svc__feats{ grid-template-columns:1fr; }
  .shero__jump{ gap:var(--space-2); }
}

