/* =========================================================================
   THEME C. AURORA
   Light and spatial. Layered depth, soft gradient light, floating product
   surfaces that tilt and drift, generous rounding, quiet colour.
   ========================================================================= */

:root{
  --bg:#FFFFFF;
  --bg-2:#F7F5FE;
  --bg-3:#F1EDFC;
  --ink:#160E29;
  --ink-2:#42385C;
  --muted:#6F6588;
  --faint:#9A93AC;
  --line:#EBE6F6;
  --line-2:#DAD2EE;
  --violet:#6D28D9;
  --violet-2:#8B5CF6;
  --violet-3:#A78BFA;
  --cyan:#15B5E0;
  --rose:#FF596A;
  --mint:#3FCB86;
  --gold:#FFC53D;

  --gutter:48px;
  --container:1240px;
  --hdr:76px;
  --r:20px;
  --r-lg:28px;

  --lift-1:0 1px 2px rgba(22,14,41,.04),0 4px 12px rgba(22,14,41,.04);
  --lift-2:0 2px 6px rgba(22,14,41,.05),0 14px 34px -8px rgba(22,14,41,.10);
  --lift-3:0 10px 24px rgba(22,14,41,.07),0 40px 80px -24px rgba(109,40,217,.24);
}

*,*::before,*::after{box-sizing:border-box}
html{overflow-x:clip;-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:100px;background:var(--bg)}
body,h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
img,svg,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}

body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  font-size:17px;line-height:1.68;color:var(--ink-2);background:var(--bg);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}

/* ---------- Type ---------------------------------------------------------- */
h1,h2,h3,h4,.dsp{font-family:'Poppins',sans-serif;color:var(--ink);font-weight:600;
  letter-spacing:-.035em;line-height:1.08}
.dsp{font-size:clamp(40px,6.2vw,88px);font-weight:600;letter-spacing:-.045em;line-height:1.04}
h1{font-size:clamp(38px,5.2vw,68px);letter-spacing:-.042em;line-height:1.06}
h2{font-size:clamp(29px,3.6vw,50px);letter-spacing:-.038em;line-height:1.12}
h3{font-size:20.5px;letter-spacing:-.02em;line-height:1.3}

.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--violet);background:var(--bg-3);border-radius:100px;
  padding:8px 16px;margin-bottom:26px}
.lead{font-size:clamp(17px,1.5vw,20px);line-height:1.62;color:var(--muted);max-width:58ch}
.body-lg{font-size:17px;line-height:1.72;color:var(--muted)}
.body-lg + .body-lg{margin-top:18px}
.small{font-size:15px;color:var(--muted)}
.micro{font-size:13px;color:var(--faint)}
.grad{background:linear-gradient(100deg,var(--violet) 10%,var(--violet-2) 46%,var(--cyan) 96%);
  -webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- Layout -------------------------------------------------------- */
.wrap{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.sec{padding-block:clamp(50px,5.4vw,86px);position:relative}
.sec--alt{background:linear-gradient(180deg,var(--bg) 0%,var(--bg-2) 22%,var(--bg-2) 78%,var(--bg) 100%)}
.sec-hd{max-width:740px;margin-bottom:clamp(28px,2.8vw,46px)}
.sec-hd.mid{margin-inline:auto;text-align:center}
.sec-hd.mid .lead{margin-inline:auto}
.sec-hd .lead{margin-top:16px}
.grid{display:grid;gap:18px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,4.4vw,72px);align-items:center}
.rule{height:1px;background:var(--line);border:0}
.gridlines{display:none}

/* ---------- Ambient aurora ------------------------------------------------ */
.aurora{position:absolute;inset:-25% -12%;pointer-events:none;z-index:0;filter:blur(80px);opacity:.75}
.aurora i{position:absolute;display:block;border-radius:50%}
.aurora i:nth-child(1){width:44vw;height:44vw;left:-4%;top:-8%;
  background:radial-gradient(circle,rgba(167,139,250,.5),transparent 68%);animation:meshA 24s ease-in-out infinite}
.aurora i:nth-child(2){width:36vw;height:36vw;right:-4%;top:6%;
  background:radial-gradient(circle,rgba(21,181,224,.34),transparent 68%);animation:meshB 29s ease-in-out infinite}
.aurora i:nth-child(3){width:32vw;height:32vw;left:40%;bottom:-16%;
  background:radial-gradient(circle,rgba(255,197,61,.24),transparent 70%);animation:meshA 35s ease-in-out infinite reverse}
.sec > .wrap,.hero > .wrap{position:relative;z-index:1}

/* ---------- Header -------------------------------------------------------- */
.progress i{background:linear-gradient(90deg,var(--violet),var(--violet-2),var(--cyan))}
.hdr{position:sticky;top:12px;z-index:100;padding-inline:var(--gutter);margin-bottom:-var(--hdr)}
.hdr .hbar{display:flex;align-items:center;gap:34px;height:var(--hdr);
  max-width:var(--container);margin-inline:auto;padding-inline:26px;border-radius:100px;
  transition:background .35s ease,box-shadow .35s ease,border-color .35s ease;
  border:1px solid transparent}
.hdr.stuck .hbar{background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(20px);
  border-color:var(--line);box-shadow:var(--lift-2)}
.logo{display:inline-flex;align-items:center;min-height:44px}
.logo img{height:27px;width:auto}
.nav{display:flex;align-items:center;gap:2px;margin-inline:auto}
.nav a{position:relative;padding:9px 15px;border-radius:100px;font-size:15px;font-weight:500;color:var(--ink-2);
  transition:color .22s,background .22s}
.nav a:hover{color:var(--ink);background:var(--bg-3)}
.nav a[aria-current]{color:var(--violet);background:var(--bg-3);font-weight:600}
.hdr-cta{display:flex;align-items:center;gap:14px}
.hdr-cta .sign{font-size:15px;font-weight:500;color:var(--ink-2)}
.hdr-cta .sign:hover{color:var(--ink)}
.burger{display:none;width:44px;height:44px;border:1px solid var(--line-2);border-radius:100px;
  align-items:center;justify-content:center;margin-left:auto;background:#fff}
.burger i{display:block;width:17px;height:1.5px;background:var(--ink);position:relative}
.burger i::before,.burger i::after{content:"";position:absolute;left:0;width:17px;height:1.5px;background:var(--ink);transition:transform .3s}
.burger i::before{top:-5.5px}.burger i::after{top:5.5px}

/* ---------- Buttons ------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding-inline:30px;
  border-radius:100px;font-size:15px;font-weight:600;white-space:nowrap;position:relative;overflow:hidden;
  transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease,background .25s,color .25s,border-color .25s}
.btn--pri{color:#fff;background:linear-gradient(120deg,var(--violet) 0%,var(--violet-2) 62%,#7BB4F0 130%);
  box-shadow:0 12px 34px -10px rgba(109,40,217,.62)}
.btn--pri:hover{box-shadow:0 20px 48px -12px rgba(109,40,217,.78)}
.btn--gho{color:var(--ink);background:#fff;border:1px solid var(--line-2);box-shadow:var(--lift-1)}
.btn--gho:hover{border-color:var(--violet-3);box-shadow:var(--lift-2)}
.btn--sm{height:44px;padding-inline:22px;font-size:14px}
.btn svg{width:15px;height:15px;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.btn:hover svg{transform:translateX(4px)}
.btns{display:flex;flex-wrap:wrap;gap:14px}
.tlink{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--violet)}
.tlink svg{width:14px;height:14px;transition:transform .3s}
.tlink:hover svg{transform:translateX(4px)}

/* ---------- Hero ---------------------------------------------------------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;
  margin-top:calc((var(--hdr) + 12px) * -1);padding-block:calc(var(--hdr) + 52px) 60px}
.hero .spot{position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(600px 600px at var(--mx,50%) var(--my,40%),rgba(167,139,250,.16),transparent 66%);
  transition:background .2s ease}
.hero .inner{display:grid;grid-template-columns:1fr;gap:0;text-align:center;max-width:900px;margin-inline:auto}
.hero .kicker{display:inline-flex;align-items:center;gap:10px;margin:0 auto 26px;padding:9px 18px;border-radius:100px;
  background:#fff;border:1px solid var(--line-2);box-shadow:var(--lift-1);
  font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
.hero .kicker b{width:7px;height:7px;border-radius:50%;background:var(--mint);position:relative}
.hero .kicker b::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--mint);
  animation:pulseRing 2.2s ease-out infinite}
.hero h1{margin-bottom:34px}
.hero .btns{justify-content:center;margin-bottom:0}
.hero .cue{justify-content:center;color:var(--faint);margin-top:46px}

/* Floating stage of product surfaces */
.stage{position:relative;margin-top:clamp(38px,4.4vw,66px);perspective:1600px}
.stage .lay{position:absolute;width:min(30vw,340px);z-index:1}
.stage .lay.l1{left:1%;top:9%;animation:drift 9s ease-in-out infinite}
.stage .lay.l2{right:1%;top:21%;animation:driftB 11s ease-in-out infinite}
.stage .mid{position:relative;z-index:2;max-width:820px;margin-inline:auto}
.stage .glow{position:absolute;left:50%;top:52%;translate:-50% -50%;width:min(84vw,900px);aspect-ratio:2/1;
  border-radius:50%;background:radial-gradient(ellipse,rgba(109,40,217,.28),transparent 66%);filter:blur(60px);z-index:0}

.hero-strip{position:relative;z-index:1;margin-top:clamp(38px,4.4vw,62px);
  border-block:1px solid var(--line);padding-block:18px}
.hero-strip .marquee li{font-family:'Poppins',sans-serif;font-size:15px;font-weight:500;color:var(--faint);letter-spacing:-.01em}
.hero-strip .marquee li em{font-style:normal;color:var(--violet)}

/* ---------- Cards --------------------------------------------------------- */
.card{position:relative;border-radius:var(--r);border:1px solid var(--line);background:#fff;padding:29px;
  box-shadow:var(--lift-1);overflow:hidden;
  transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s ease,border-color .4s}
.card::after{content:"";position:absolute;inset:0;border-radius:var(--r);pointer-events:none;opacity:0;
  background:linear-gradient(140deg,rgba(167,139,250,.14),transparent 52%);transition:opacity .45s}
.card:hover{transform:translateY(-7px);box-shadow:var(--lift-3);border-color:var(--line-2)}
.card:hover::after{opacity:1}
.card h3{margin-bottom:12px}
.card p{font-size:15.5px;line-height:1.68;color:var(--muted)}
.card .ic{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(140deg,var(--violet) 0%,var(--violet-2) 100%);color:#fff;margin-bottom:22px;
  box-shadow:0 10px 24px -8px rgba(109,40,217,.6)}
.card .ic svg{width:21px;height:21px}
.card .idx{font-family:'Poppins',sans-serif;font-size:12px;font-weight:600;letter-spacing:.18em;
  color:var(--violet);display:block;margin-bottom:20px}

/* ---------- Stats --------------------------------------------------------- */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stats > div{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:29px 26px;
  box-shadow:var(--lift-1);transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s}
.stats > div:hover{transform:translateY(-6px);box-shadow:var(--lift-3)}
.stats .v{font-family:'Poppins',sans-serif;font-size:clamp(34px,3.6vw,48px);font-weight:600;
  letter-spacing:-.045em;line-height:1;margin-bottom:12px;
  background:linear-gradient(120deg,var(--ink) 30%,var(--violet) 110%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.stats .k{font-size:14px;color:var(--muted);line-height:1.45}

/* ---------- Pinned sequence ----------------------------------------------- */
.pin-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(40px,6vw,88px);align-items:center;
  width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.pin-steps li{padding:15px 20px;border-radius:14px;transition:background .45s ease,box-shadow .45s ease}
.pin-steps li.active{background:#fff;box-shadow:var(--lift-2)}
.pin-steps .n{font-family:'Poppins',sans-serif;font-size:11.5px;font-weight:600;letter-spacing:.18em;
  color:var(--violet);display:block;margin-bottom:10px}
.pin-steps h3{font-size:clamp(20px,1.95vw,25px);letter-spacing:-.032em;margin-bottom:6px}
.pin-steps p{font-size:14.5px;line-height:1.55;color:var(--muted);max-width:42ch}
.pin-vis{position:relative;min-height:min(56vh,440px)}

/* ---------- Floating product panel ---------------------------------------- */
.panel{width:100%;border-radius:var(--r-lg);border:1px solid var(--line);background:#fff;overflow:hidden;
  box-shadow:var(--lift-3);transition:transform .5s cubic-bezier(.16,1,.3,1)}
.panel .top{display:flex;align-items:center;gap:9px;padding:16px 24px;border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,var(--bg-2),#fff)}
.panel .top i{width:9px;height:9px;border-radius:50%;background:var(--line-2)}
.panel .top span{margin-left:14px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--faint);font-weight:600}
.panel .body{padding:26px}
.panel--sm{border-radius:var(--r);box-shadow:var(--lift-2)}
.panel--sm .body{padding:20px}
.prow{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}
.prow:last-child{border-bottom:0}
.prow .lft{display:flex;align-items:center;gap:15px;min-width:0;flex:1}
.prow .lft > span:not(.av){display:block;min-width:0;flex:1}
.prow .av{width:38px;height:38px;border-radius:12px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  font-family:'Poppins',sans-serif;font-size:12.5px;font-weight:600;color:#fff;
  background:linear-gradient(140deg,var(--violet),var(--violet-2))}
.prow .nm{display:block;font-size:14.5px;font-weight:600;color:var(--ink);line-height:1.35}
.prow .rl{display:block;font-size:12.5px;color:var(--faint)}
.prow .val{font-family:'Poppins',sans-serif;font-size:20px;font-weight:600;color:var(--ink);letter-spacing:-.03em;text-align:right}
.prow .val small{display:block;font-family:'Inter',sans-serif;font-size:10px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.meter{display:block;height:6px;border-radius:100px;background:var(--bg-3);overflow:hidden;margin-top:8px}
.meter i{display:block;height:100%;border-radius:100px;background:linear-gradient(90deg,var(--violet),var(--violet-2));
  transform-origin:left;animation:barGrow 1.2s cubic-bezier(.16,1,.3,1) both}
.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.chip{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--violet);
  background:var(--bg-3);border-radius:100px;padding:7px 14px}

/* ---------- Vision -------------------------------------------------------- */
.vision{position:relative;overflow:hidden;padding-block:clamp(22px,2.8vw,44px)}
.vision .inner{position:relative;border-radius:32px;overflow:hidden;padding:clamp(54px,6.2vw,92px) clamp(30px,5vw,80px);
  background:linear-gradient(150deg,#241543 0%,#3A1D6E 46%,#1C1136 100%);text-align:center;
  box-shadow:0 40px 100px -30px rgba(36,21,67,.6)}
.vision .inner::before{content:"";position:absolute;left:50%;top:-40%;width:min(110%,1100px);aspect-ratio:1;
  translate:-50% 0;border-radius:50%;pointer-events:none;opacity:.55;
  background:conic-gradient(from 40deg,rgba(255,89,106,.4),rgba(255,197,61,.4),rgba(63,203,134,.36),rgba(21,181,224,.44),rgba(167,139,250,.5),rgba(255,89,106,.4));
  filter:blur(90px);animation:spinSlow 44s linear infinite}
.vision .inner > *{position:relative;z-index:1}
.vision .eyebrow{background:rgba(255,255,255,.12);color:#DCCFFF}
.vision h2{color:#fff;font-size:clamp(29px,4.4vw,60px);max-width:19ch;margin-inline:auto;line-height:1.08}
.vision .lead{color:rgba(255,255,255,.68);margin:26px auto 0;max-width:56ch}
.vision-marks{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px}
.vision-marks span{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#fff;
  border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);border-radius:100px;padding:11px 22px;
  backdrop-filter:blur(8px)}

/* ---------- Quotes -------------------------------------------------------- */
.quote{border:1px solid var(--line);border-radius:var(--r);padding:30px;background:#fff;box-shadow:var(--lift-1);
  transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s}
.quote:hover{transform:translateY(-7px);box-shadow:var(--lift-3)}
.quote .q{font-family:'Poppins',sans-serif;font-size:clamp(21px,2.2vw,28px);font-weight:600;letter-spacing:-.032em;
  line-height:1.24;color:var(--ink);margin-bottom:22px}
.quote .src b{display:block;font-size:15px;color:var(--ink);font-weight:600}
.quote .src{font-size:13.5px;color:var(--faint)}

/* ---------- Plans --------------------------------------------------------- */
.plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.plan{position:relative;border:1px solid var(--line);border-radius:var(--r);padding:28px;background:#fff;
  box-shadow:var(--lift-1);display:flex;flex-direction:column;
  transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s,border-color .4s}
.plan:hover{transform:translateY(-8px);box-shadow:var(--lift-3)}
.plan.hot{border-color:var(--violet-3);box-shadow:var(--lift-2)}
.plan .flag{position:absolute;top:-12px;left:32px;font-size:10.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:#fff;background:linear-gradient(120deg,var(--violet),var(--violet-2));
  padding:6px 13px;border-radius:100px;box-shadow:0 8px 20px -6px rgba(109,40,217,.6)}
.plan .pn{font-family:'Poppins',sans-serif;font-size:15px;font-weight:600;color:var(--ink);margin-bottom:20px}
.plan .pv{font-family:'Poppins',sans-serif;font-size:clamp(32px,3.4vw,42px);font-weight:600;
  letter-spacing:-.042em;color:var(--ink);line-height:1}
.plan .pp{font-size:13.5px;color:var(--faint);margin:10px 0 28px;min-height:42px}
.plan ul{margin-bottom:32px}
.plan li{position:relative;padding-left:26px;font-size:14.5px;color:var(--muted);line-height:1.55}
.plan li + li{margin-top:12px}
.plan li::before{content:"";position:absolute;left:0;top:6px;width:16px;height:16px;border-radius:50%;
  background:var(--bg-3);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 8.2l2.7 2.7L12.2 5.4' stroke='%236D28D9' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center}
.plan .btn{margin-top:auto;width:100%}

/* ---------- Table --------------------------------------------------------- */
.tbl{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:var(--r);
  overflow:hidden;background:#fff;box-shadow:var(--lift-1)}
.tbl th,.tbl td{text-align:left;padding:19px 26px;border-bottom:1px solid var(--line);font-size:15px}
.tbl thead th{background:var(--bg-2);font-family:'Poppins',sans-serif;font-weight:600;color:var(--ink);font-size:14px}
.tbl tbody td{color:var(--muted)}
.tbl tbody td:first-child{color:var(--ink);font-weight:600}
.tbl tbody tr{transition:background .3s}
.tbl tbody tr:hover{background:var(--bg-2)}
.tbl tbody tr:last-child td{border-bottom:0}

/* ---------- Checklist ----------------------------------------------------- */
.checks li{position:relative;padding-left:32px;font-size:16px;color:var(--muted);line-height:1.6}
.checks li + li{margin-top:15px}
.checks li::before{content:"";position:absolute;left:0;top:4px;width:19px;height:19px;border-radius:50%;
  background:var(--bg-3);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M5 9.3l2.7 2.7L13.2 6.4' stroke='%236D28D9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center}

/* ---------- FAQ ----------------------------------------------------------- */
.faq{display:grid;gap:14px}
.faq details{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--lift-1);
  transition:box-shadow .4s,border-color .4s}
.faq details[open]{box-shadow:var(--lift-2);border-color:var(--line-2)}
.faq summary{list-style:none;cursor:pointer;padding:24px 58px 24px 26px;position:relative;
  font-family:'Poppins',sans-serif;font-size:17.5px;font-weight:600;color:var(--ink);letter-spacing:-.022em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before,.faq summary::after{content:"";position:absolute;right:26px;top:50%;background:var(--violet);
  border-radius:2px;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.faq summary::before{width:13px;height:2px;margin-top:-1px}
.faq summary::after{width:2px;height:13px;margin-top:-6.5px;right:31.5px}
.faq details[open] summary::after{transform:rotate(90deg)}
.faq .ans{padding:0 58px 26px 26px;font-size:15.5px;line-height:1.72;color:var(--muted)}

/* ---------- People -------------------------------------------------------- */
.person{border:1px solid var(--line);border-radius:var(--r);padding:28px;background:#fff;box-shadow:var(--lift-1);
  transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s}
.person:hover{transform:translateY(-8px);box-shadow:var(--lift-3)}
.person .mk{width:68px;height:68px;border-radius:22px;display:flex;align-items:center;justify-content:center;
  font-family:'Poppins',sans-serif;font-size:21px;font-weight:600;color:#fff;margin-bottom:26px;
  background:linear-gradient(140deg,var(--violet),var(--violet-2) 60%,var(--cyan) 140%);
  box-shadow:0 14px 32px -12px rgba(109,40,217,.7)}
.person h3{font-size:19px;margin-bottom:6px}
.person .rl{font-size:14px;font-weight:600;color:var(--violet);margin-bottom:18px}
.person p{font-size:15px;color:var(--muted);line-height:1.65}

/* ---------- Page head ----------------------------------------------------- */
.phead{position:relative;overflow:hidden;padding-block:clamp(76px,8.2vw,114px) clamp(38px,4.2vw,62px)}
.phead .crumb{font-size:13px;color:var(--faint);margin-bottom:24px}
.phead .crumb a:hover{color:var(--violet)}
.phead .crumb i{font-style:normal;margin-inline:9px;color:var(--line-2)}
.phead h1{max-width:17ch;margin-bottom:22px}
.phead .lead{max-width:58ch}

/* ---------- CTA ----------------------------------------------------------- */
.cta{padding-block:clamp(16px,2.2vw,34px) clamp(58px,6.4vw,94px)}
.cta .inner{position:relative;overflow:hidden;border-radius:32px;text-align:center;
  padding:clamp(52px,6vw,88px) clamp(28px,4.4vw,72px);
  background:linear-gradient(150deg,#241543 0%,#3A1D6E 52%,#1C1136 100%);
  box-shadow:0 40px 100px -30px rgba(36,21,67,.6)}
.cta .inner::before{content:"";position:absolute;left:50%;bottom:-60%;width:min(110%,1000px);aspect-ratio:1;
  translate:-50% 0;border-radius:50%;background:radial-gradient(circle,rgba(139,92,246,.55),transparent 66%);
  filter:blur(80px);pointer-events:none}
.cta .inner > *{position:relative;z-index:1}
.cta h2{color:#fff;max-width:16ch;margin:0 auto 20px}
.cta p{color:rgba(255,255,255,.7);max-width:52ch;margin:0 auto 34px;font-size:18px}
.cta .btns{justify-content:center}
.cta .btn--gho{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);color:#fff;box-shadow:none}
.cta .btn--gho:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.5)}

/* ---------- Footer -------------------------------------------------------- */
.ft{background:var(--bg-2);border-top:1px solid var(--line)}
.ft .top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.25fr;gap:44px;padding-block:58px 44px}
.ft .bcol img{height:28px;width:auto;margin-bottom:26px}
.ft .bcol p{font-size:14.5px;color:var(--muted);line-height:1.65;max-width:34ch}
.ft h4{font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:22px}
.ft nav a,.ft address a{display:block;font-size:15px;color:var(--muted);padding-block:7px;font-style:normal;
  transition:color .22s,transform .22s}
.ft nav a:hover,.ft address a:hover{color:var(--violet);transform:translateX(3px)}
.ft address{font-style:normal;font-size:15px;line-height:1.72;color:var(--muted)}
.soc{display:flex;gap:10px;margin-top:30px}
.soc a{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:#fff;
  display:flex;align-items:center;justify-content:center;color:var(--muted);box-shadow:var(--lift-1);
  transition:color .25s,transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s}
.soc a:hover{color:var(--violet);transform:translateY(-4px);box-shadow:var(--lift-2)}
.soc svg{width:17px;height:17px}
.ft .btm{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;
  padding-block:24px;border-top:1px solid var(--line);font-size:13.5px;color:var(--faint)}
.ft .btm nav{display:flex;gap:26px}
.ft .btm nav a{padding:0;font-size:13.5px}
.spectrum{display:flex;height:4px}
.spectrum i{flex:1}
.spectrum i:nth-child(1){background:var(--rose)}
.spectrum i:nth-child(2){background:var(--cyan)}
.spectrum i:nth-child(3){background:var(--mint)}
.spectrum i:nth-child(4){background:var(--gold)}

/* ---------- Utilities ----------------------------------------------------- */
.skip{position:absolute;left:-9999px;top:0;background:#fff;color:var(--ink);padding:12px 18px;z-index:200;border-radius:10px}
.skip:focus{left:14px;top:14px;box-shadow:var(--lift-2)}
:focus-visible{outline:2px solid var(--violet);outline-offset:4px;border-radius:6px}
.mt-l{margin-top:clamp(34px,3.4vw,52px)}
.mt-m{margin-top:26px}
.note{font-size:14px;color:var(--faint);margin-top:18px}
.maxw{max-width:820px}

/* ---------- Responsive ---------------------------------------------------- */
@media (max-width:1100px){
  :root{--gutter:32px}
  .g4,.stats,.plans{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pin-grid,.split{grid-template-columns:1fr;gap:44px}
  .stage .lay{display:none}
  .ft .top{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 32px}
}
@media (max-width:860px){
  :root{--gutter:20px}
  body{font-size:16px}
  .nav,.hdr-cta .sign{display:none}
  .burger{display:flex}
  .hdr{top:8px}
  .hdr .hbar{background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-color:var(--line);box-shadow:var(--lift-1)}
  .hdr.open .nav{display:flex;flex-direction:column;align-items:stretch;gap:2px;
    position:fixed;left:0;right:0;top:calc(var(--hdr) + 16px);bottom:0;background:#fff;
    padding:26px var(--gutter);margin:0;overflow:auto}
  .hdr.open .nav a{padding:15px 0;font-size:20px;font-family:'Poppins',sans-serif;font-weight:600;
    border-bottom:1px solid var(--line);border-radius:0;background:none}
  .hdr.open .burger i{background:transparent}
  .hdr.open .burger i::before{transform:translateY(5.5px) rotate(45deg)}
  .hdr.open .burger i::after{transform:translateY(-5.5px) rotate(-45deg)}
  .g2,.g3,.g4,.stats,.plans{grid-template-columns:1fr}
  .ft .top{grid-template-columns:1fr;gap:38px}
  .faq .ans,.faq summary{padding-inline:20px}
  .faq .ans{padding-right:20px}
  .tbl th,.tbl td{padding:15px 16px;font-size:14px}
}

/* ---------- Overflow guards ---------------------------------------------- */
.tblwrap{width:100%}
@media (max-width:860px){
  .tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .tblwrap .tbl{min-width:620px}
  .js [data-reveal="right"],.js [data-reveal="left"]{transform:translate3d(0,26px,0)}
}

/* ---------- Pinned tabs, Aurora treatment -------------------------------- */
.pin-copy .eyebrow{align-self:flex-start}
.pin-copy h2{margin-bottom:14px}
.pin-lead{margin-bottom:22px;max-width:46ch}
.pin-steps{margin-top:6px}
.pin-steps li{position:relative;border:1px solid transparent}
.pin-steps li:hover{background:#fff;border-color:var(--line);box-shadow:var(--lift-1)}
.pin-steps li.active{background:#fff;border-color:var(--line-2);box-shadow:var(--lift-2)}
.pin-steps li.active::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;
  border-radius:3px;background:linear-gradient(180deg,var(--violet),var(--violet-2))}
.pin-vis .panel{min-height:100%}

.pin-steps li.active p{margin-top:7px}
.pin-steps li h3{transition:color .3s ease}

/* ---------- Panel caption ------------------------------------------------ */
.panel .foot{flex:0 0 auto;padding:16px 26px;border-top:1px solid var(--line);
  font-size:13px;line-height:1.5;color:var(--faint);background:var(--bg-2)}

/* ---------- Rhythm between adjacent sections ----------------------------- */
.sec + .sec{padding-top:clamp(40px,4.4vw,70px)}
.sec--alt + .sec,.sec + .sec--alt{padding-top:clamp(50px,5.4vw,86px)}
.phead + .sec{padding-top:clamp(40px,4.4vw,68px)}
.vision + .sec{padding-top:clamp(40px,4.4vw,68px)}

/* ---------- Page header layout and at a glance panel --------------------- */
.phead-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(34px,4.4vw,72px);align-items:center}
.phead-facts ul{border:1px solid var(--line);border-radius:var(--r);background:#fff;
  box-shadow:var(--lift-2);overflow:hidden}
.phead-facts li{display:flex;flex-direction:column;gap:5px;padding:19px 24px;border-bottom:1px solid var(--line)}
.phead-facts li:last-child{border-bottom:0}
.phead-facts b{font-family:'Poppins',sans-serif;font-size:20px;font-weight:600;color:var(--ink);
  letter-spacing:-.03em;line-height:1.1}
.phead-facts span{font-size:14px;line-height:1.5;color:var(--muted)}

/* ---------- Tap targets -------------------------------------------------- */
.hdr-cta .sign{display:inline-flex;align-items:center;min-height:40px;padding-inline:6px}
.crumb a{display:inline-block;padding-block:6px}
.tlink{padding-block:7px}
.ft .btm nav a{display:inline-flex;align-items:center;min-height:34px}
.ft nav a,.ft address a{min-height:32px}

@media (max-width:1100px){
  .phead-grid{grid-template-columns:1fr;gap:32px}
  .phead-facts ul{max-width:520px}
}

@media (max-width:860px){
  .phead-facts b{font-size:18px}
  .phead-facts li{padding:16px 20px}
  .pin-steps li{padding:14px 16px}
}

/* ---------- Team portraits ----------------------------------------------- */
.person .mug{width:104px;height:104px;object-fit:cover;object-position:50% 18%;
  border-radius:22px;margin-bottom:22px;display:block;background:var(--bg-3);
  border:1px solid var(--line);box-shadow:var(--lift-1);
  transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s}
.person:hover .mug{transform:translateY(-2px) scale(1.02);box-shadow:var(--lift-2)}
@media (max-width:860px){.person .mug{width:92px;height:92px;border-radius:20px}}
