/* Robocard public SaaS experience: landing + merchant onboarding. */
:root {
  --rc-violet: #6d4aff;
  --rc-violet-deep: #4a2cd8;
  --rc-violet-soft: #eeeaff;
  --rc-coral: #ff785a;
  --rc-gold: #f2c14e;
  --rc-mint: #70e1b2;
  --rc-sky: #79c7ff;
  --rc-ink: #19142d;
  --rc-ink-2: #554f68;
  --rc-night: #100b24;
  --rc-night-2: #191032;
  --rc-cream: #f7f3ec;
  --rc-paper: #fffdf9;
  --rc-line: rgba(25, 20, 45, .12);
  --rc-white-line: rgba(255, 255, 255, .13);
  --font-display: 'Bricolage Grotesque', ui-sans-serif, system-ui, sans-serif;
  --font-body: 'Hanken Grotesk', ui-sans-serif, system-ui, sans-serif;
  --ease-spring: cubic-bezier(.2, .8, .2, 1);
  --shadow-soft: 0 24px 70px rgba(42, 25, 89, .12);
  --shadow-deep: 0 40px 120px rgba(0, 0, 0, .28);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { margin: 0; font-family: var(--font-body); color: var(--rc-ink); background: var(--rc-paper); -webkit-font-smoothing: antialiased; }
a { color: inherit; }
button, input, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
svg { display: block; }
.svg-sprite { position: fixed; width: 0; height: 0; overflow: hidden; }
.skip-link { position: fixed; z-index: 9999; left: 16px; top: 12px; padding: 12px 18px; border-radius: 12px; background: #fff; color: var(--rc-ink); font-weight: 800; transform: translateY(-140%); transition: transform .2s; }
.skip-link:focus { transform: none; }
.section-shell { width: min(1240px, calc(100% - 48px)); margin: 0 auto; position: relative; }
.section { padding: 124px 0; }
.section-dark { background: var(--rc-night); color: #fff; }
.section-cream { background: var(--rc-cream); }

.site-nav {
  position: fixed; z-index: 100; left: 50%; top: 18px; transform: translateX(-50%);
  width: min(1240px, calc(100% - 48px)); height: 68px; padding: 0 12px 0 18px;
  display: flex; align-items: center; justify-content: space-between; gap: 22px;
  color: #fff; border: 1px solid transparent; border-radius: 22px; transition: .25s var(--ease-spring);
}
.site-nav.scrolled { color: var(--rc-ink); background: rgba(255, 253, 249, .88); border-color: rgba(25, 20, 45, .1); box-shadow: 0 15px 50px rgba(22, 13, 49, .13); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; flex: none; }
.brand-mark { position: relative; width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; background: linear-gradient(135deg, var(--rc-violet), #a86dff 55%, var(--rc-coral)); box-shadow: 0 10px 26px rgba(109, 74, 255, .34); overflow: hidden; }
.brand-mark::after { content: ''; position: absolute; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; transform: translate(16px, -16px); }
.brand-mark span { position: relative; z-index: 1; color: #fff; font: 800 20px/1 var(--font-display); }
.brand-name { color: inherit; font: 800 19px/1 var(--font-display); letter-spacing: -.02em; }
.brand-name small { display: block; margin-top: 3px; color: currentColor; opacity: .58; font: 700 9px/1 var(--font-body); letter-spacing: .13em; text-transform: uppercase; }
.nav-links { display: flex; align-items: center; gap: 28px; }
.nav-links a, .nav-login { position: relative; color: inherit; text-decoration: none; font-size: 14px; font-weight: 700; opacity: .78; transition: opacity .2s; }
.nav-links a:hover, .nav-links a:focus-visible, .nav-login:hover, .nav-login:focus-visible { opacity: 1; }
.nav-links a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: -7px; height: 2px; border-radius: 4px; background: var(--rc-coral); transition: right .25s; }
.nav-links a:hover::after, .nav-links a:focus-visible::after { right: 0; }
.nav-actions { display: flex; align-items: center; gap: 18px; }
.nav-toggle { display: none; width: 44px; height: 44px; align-items: center; justify-content: center; border: 0; border-radius: 13px; background: rgba(255,255,255,.1); color: inherit; cursor: pointer; }
.nav-toggle svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; }
.nav-toggle .menu-close { display: none; }
.nav-toggle[aria-expanded="true"] .menu-open { display: none; }
.nav-toggle[aria-expanded="true"] .menu-close { display: block; }

.button { min-height: 54px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 1px solid transparent; border-radius: 16px; text-decoration: none; font-size: 15px; font-weight: 800; cursor: pointer; transition: transform .2s var(--ease-spring), box-shadow .2s, background .2s; }
.button svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2; transition: transform .2s; }
.button:hover { transform: translateY(-2px); }
.button:hover svg { transform: translateX(3px); }
.button:active { transform: translateY(0) scale(.98); }
.button:focus-visible, .nav-toggle:focus-visible, .text-link:focus-visible, .brand:focus-visible { outline: 3px solid rgba(121,199,255,.75); outline-offset: 3px; }
.button-sm { min-height: 44px; padding: 0 17px; border-radius: 13px; font-size: 13px; }
.button-light { background: #fff; color: var(--rc-ink); box-shadow: 0 10px 30px rgba(0,0,0,.13); }
.site-nav.scrolled .button-light { background: var(--rc-ink); color: #fff; }
.button-primary { color: #fff; background: linear-gradient(135deg, var(--rc-violet), #8b5bff); box-shadow: 0 16px 42px rgba(109,74,255,.38); }
.button-primary:hover { box-shadow: 0 22px 54px rgba(109,74,255,.48); }
.button-ink { background: var(--rc-ink); color: #fff; box-shadow: 0 14px 35px rgba(25,20,45,.2); }
.text-link { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; font-size: 15px; font-weight: 800; color: rgba(255,255,255,.84); }
.play-ring { width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.24); border-radius: 50%; display: grid; place-items: center; transition: background .2s, transform .2s; }
.play-ring svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.text-link:hover .play-ring { background: rgba(255,255,255,.1); transform: rotate(10deg); }

.eyebrow { display: inline-flex; align-items: center; gap: 9px; color: var(--rc-violet-deep); font-size: 12px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow.light { color: rgba(255,255,255,.68); }
.eyebrow-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--rc-coral); box-shadow: 0 0 0 5px rgba(255,120,90,.13); }
.section-heading { margin-bottom: 58px; }
.section-heading.centered { max-width: 790px; margin-left: auto; margin-right: auto; text-align: center; }
.section-heading.centered .eyebrow { justify-content: center; }
.section-heading.split { display: grid; grid-template-columns: 1.25fr .75fr; align-items: end; gap: 80px; }
.section-heading h2 { margin: 18px 0 0; font: 700 clamp(42px, 5.2vw, 76px)/.98 var(--font-display); letter-spacing: -.055em; }
.section-heading h2 span, .final-cta h2 span { color: var(--rc-violet); }
.section-heading p { margin: 22px auto 0; max-width: 640px; color: var(--rc-ink-2); font-size: 18px; line-height: 1.65; }
.section-heading.split p { margin: 0 0 4px; }
.section-heading.inverse h2 span { color: var(--rc-coral); }
.section-heading.inverse p { color: rgba(255,255,255,.62); }

.hero { position: relative; min-height: 900px; padding: 152px 0 0; overflow: hidden; isolation: isolate; }
.hero::before { content: ''; position: absolute; inset: 0; z-index: -2; opacity: .24; background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px); background-size: 62px 62px; mask-image: linear-gradient(to bottom, #000 0, transparent 75%); }
.hero-aurora { position: absolute; z-index: -1; width: 950px; height: 780px; right: -250px; top: -190px; border-radius: 50%; background: radial-gradient(circle at 45% 48%, rgba(109,74,255,.72), rgba(228,109,206,.23) 34%, rgba(255,120,90,.08) 57%, transparent 70%); filter: blur(5px); }
.hero-grid { min-height: 670px; display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 36px; }
.hero-copy { position: relative; z-index: 4; padding-bottom: 50px; }
.hero h1 { max-width: 700px; margin: 23px 0; font: 700 clamp(62px, 7vw, 108px)/.86 var(--font-display); letter-spacing: -.072em; }
.hero h1 span { color: transparent; background: linear-gradient(105deg, #fff 5%, #a99aff 43%, #ff987e 78%, #f2c14e); -webkit-background-clip: text; background-clip: text; }
.hero-lede { max-width: 610px; margin: 0; color: rgba(255,255,255,.69); font-size: 20px; line-height: 1.6; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 34px; }
.hero-proof { display: flex; align-items: center; gap: 15px; margin-top: 42px; }
.proof-avatars { display: flex; }
.proof-avatars span { width: 36px; height: 36px; margin-left: -8px; display: grid; place-items: center; border: 2px solid var(--rc-night); border-radius: 50%; color: #fff; background: #473c66; font-size: 10px; font-weight: 800; }
.proof-avatars span:first-child { margin-left: 0; background: var(--rc-coral); }
.proof-avatars span:nth-child(2) { background: var(--rc-violet); }
.proof-avatars span:nth-child(3) { background: #2f9e7b; }
.hero-proof p { margin: 0; color: rgba(255,255,255,.54); font-size: 12px; line-height: 1.45; }
.hero-proof strong { color: #fff; font-size: 13px; }

.hero-art { position: relative; min-height: 650px; perspective: 1600px; --art-rx: 0deg; --art-ry: 0deg; }
.portal-window { position: absolute; z-index: 3; width: 690px; max-width: 100%; right: -80px; top: 75px; border: 1px solid rgba(255,255,255,.18); border-radius: 28px; overflow: hidden; background: rgba(255,255,255,.96); box-shadow: var(--shadow-deep); transform: rotateY(var(--art-ry)) rotateX(var(--art-rx)) rotate(-2.4deg); transform-style: preserve-3d; transition: transform .18s ease-out; }
.window-bar { height: 42px; display: flex; align-items: center; gap: 6px; padding: 0 14px; color: #716a7f; background: #f2eef5; border-bottom: 1px solid rgba(25,20,45,.08); }
.window-bar > span { width: 8px; height: 8px; border-radius: 50%; background: #d4ccd9; }
.window-bar > span:first-child { background: #ff826b; }.window-bar > span:nth-child(2) { background: #f2c14e; }.window-bar > span:nth-child(3) { background: #70e1b2; }
.window-bar div { width: 190px; margin: auto; padding: 5px 12px; text-align: center; border-radius: 8px; background: rgba(255,255,255,.7); font-size: 9px; font-weight: 700; }
.window-body { height: 455px; display: flex; color: var(--rc-ink); }
.mini-sidebar { width: 62px; display: flex; flex-direction: column; align-items: center; gap: 18px; padding: 17px 0; background: #17102b; }
.mini-logo { width: 32px; height: 32px; display: grid; place-items: center; margin-bottom: 10px; border-radius: 11px; background: linear-gradient(135deg,var(--rc-violet),var(--rc-coral)); color: #fff; font: 800 14px var(--font-display); }
.mini-sidebar i { width: 22px; height: 5px; border-radius: 4px; background: rgba(255,255,255,.21); }
.mini-sidebar i.active { height: 22px; background: var(--rc-violet); box-shadow: 0 0 20px rgba(109,74,255,.55); }
.mini-main { flex: 1; padding: 25px; background: #f8f6fb; }
.mini-head { display: flex; align-items: center; justify-content: space-between; }
.mini-head small { display: block; color: #8b849a; font-size: 9px; font-weight: 700; }
.mini-head b { display: block; margin-top: 3px; font: 700 18px var(--font-display); }
.mini-avatar { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; background: var(--rc-violet-soft); color: var(--rc-violet-deep); font-size: 10px; font-weight: 800; }
.metric-row { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; margin: 19px 0 14px; }
.metric { position: relative; min-height: 82px; padding: 14px; border-radius: 15px; overflow: hidden; }
.metric::after { content: ''; position: absolute; right: -10px; bottom: -18px; width: 70px; height: 70px; border: 14px solid rgba(255,255,255,.38); border-radius: 50%; }
.metric.purple { background: #e8e2ff; }.metric.peach { background: #ffe5dc; }
.metric small, .metric strong, .metric span { display: block; }.metric small { color: #6e667c; font-size: 9px; font-weight: 700; }.metric strong { margin-top: 4px; font: 800 24px var(--font-display); }.metric span { position: absolute; right: 11px; top: 12px; padding: 3px 6px; border-radius: 8px; background: rgba(255,255,255,.7); color: #2c916f; font-size: 8px; font-weight: 800; }
.mini-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 13px; }
.loyalty-preview { position: relative; min-height: 185px; padding: 19px; border-radius: 21px; overflow: hidden; color: #fff; background: linear-gradient(135deg,#291a6b,#6d4aff 54%,#aa63d8); box-shadow: 0 16px 30px rgba(76,48,170,.22); }
.card-glow { position: absolute; width: 180px; height: 180px; right: -45px; top: -85px; border-radius: 50%; background: rgba(255,255,255,.18); filter: blur(2px); }
.card-top, .card-foot { position: relative; display: flex; align-items: center; justify-content: space-between; font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.contactless { font-size: 12px; transform: rotate(90deg); }
.card-points { position: relative; margin-top: 29px; }.card-points small { display: block; opacity: .6; font-size: 7px; letter-spacing: .13em; }.card-points strong { display: block; font: 800 33px var(--font-display); letter-spacing: -.05em; }
.card-progress { position: relative; height: 5px; margin: 11px 0 15px; border-radius: 9px; background: rgba(255,255,255,.18); overflow: hidden; }.card-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#fff,#f2c14e); }
.reward-panel { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 14px; text-align: center; border-radius: 20px; background: #fff; box-shadow: 0 10px 25px rgba(37,26,69,.08); }
.reward-icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 15px; color: #c25238; background: #ffe8e0; }.reward-icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.reward-panel b { margin-top: 9px; font: 700 12px var(--font-display); }.reward-panel small { margin-top: 2px; color: #7b7488; font-size: 8px; }.reward-panel > span { color: #7b7488; font-size: 7px; font-weight: 700; }
.reward-progress { width: 100%; height: 4px; margin: 13px 0 5px; border-radius: 4px; background: #ede9f1; overflow: hidden; }.reward-progress i { display: block; width: 74%; height: 100%; border-radius: inherit; background: var(--rc-coral); }
.activity-line { display: flex; align-items: center; gap: 7px; margin-top: 15px; color: #7b7488; font-size: 8px; }.activity-line b { color: #2e9875; }.pulse { width: 7px; height: 7px; border-radius: 50%; background: var(--rc-mint); box-shadow: 0 0 0 5px rgba(112,225,178,.18); }
.reward-chip { position: absolute; z-index: 6; min-width: 184px; padding: 11px 14px 11px 10px; display: flex; align-items: center; gap: 10px; border: 1px solid rgba(255,255,255,.28); border-radius: 17px; background: rgba(25,16,50,.76); box-shadow: 0 16px 42px rgba(0,0,0,.28); backdrop-filter: blur(15px); animation: float 4.5s ease-in-out infinite; }
.chip-one { left: 12px; top: 90px; }.chip-two { right: -34px; bottom: 78px; animation-delay: -2s; }
.chip-icon { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 12px; background: rgba(255,120,90,.18); color: #ff987f; }.chip-icon.points { color: #f2c14e; background: rgba(242,193,78,.15); }.chip-icon svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.reward-chip b, .reward-chip small { display: block; }.reward-chip b { font-size: 12px; }.reward-chip small { margin-top: 2px; color: rgba(255,255,255,.5); font-size: 9px; }
.coin, .cta-coin { position: absolute; z-index: 5; width: 35px; height: 35px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.38); border-radius: 50%; color: #6b5012; background: linear-gradient(135deg,#ffe79c,#f2c14e); box-shadow: 0 12px 25px rgba(0,0,0,.25); font: 800 12px var(--font-display); animation: float 5s ease-in-out infinite; }
.coin-a { right: 42px; top: 40px; }.coin-b { left: 75px; bottom: 110px; animation-delay: -1.6s; transform: scale(.75); }.coin-c { right: 160px; bottom: 18px; animation-delay: -3s; transform: scale(.6); }
.orbit { position: absolute; border: 1px solid rgba(255,255,255,.11); border-radius: 50%; }.orbit-one { width: 570px; height: 570px; right: -80px; top: 20px; }.orbit-two { width: 410px; height: 410px; right: 15px; top: 100px; }
.joy-burst i { position: absolute; z-index: 2; width: 5px; height: 15px; border-radius: 4px; background: var(--rc-coral); animation: twinkle 3s ease-in-out infinite; }.joy-burst i:nth-child(1) { left: 8%; top: 36%; }.joy-burst i:nth-child(2) { left: 21%; top: 12%; background: var(--rc-gold); transform: rotate(70deg); animation-delay:-1s; }.joy-burst i:nth-child(3) { right: 4%; top: 25%; background: var(--rc-mint); transform: rotate(-45deg); animation-delay:-2s; }.joy-burst i:nth-child(4) { right: 17%; bottom: 8%; background: var(--rc-sky); transform: rotate(35deg); }.joy-burst i:nth-child(5) { left: 25%; bottom: 4%; background: var(--rc-violet); transform: rotate(-70deg); animation-delay:-.7s; }.joy-burst i:nth-child(6) { right: 35%; top: 5%; background: #fff; transform: rotate(42deg); animation-delay:-1.7s; }
.hero-marquee { position: relative; margin-top: 30px; padding: 17px 0; overflow: hidden; border-top: 1px solid var(--rc-white-line); border-bottom: 1px solid var(--rc-white-line); color: rgba(255,255,255,.34); transform: rotate(-1deg); }
.marquee-track { width: max-content; display: flex; align-items: center; gap: 26px; animation: marquee 24s linear infinite; }.marquee-track span { font: 700 13px var(--font-display); letter-spacing: .2em; }.marquee-track i { width: 6px; height: 6px; border-radius: 50%; background: var(--rc-coral); }

.loyalty-choice { background: var(--rc-paper); overflow: hidden; }
.choice-stage { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.choice-card { min-width: 0; overflow: hidden; border: 1px solid var(--rc-line); border-radius: 36px; background: #fff; box-shadow: 0 20px 70px rgba(46,32,86,.08); transition: transform .3s var(--ease-spring), box-shadow .3s; }
.choice-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-soft); }
.choice-art { position: relative; height: 345px; display: grid; place-items: center; overflow: hidden; }
.stamp-art { background: radial-gradient(circle at 50% 40%,#ffb4a2,transparent 42%), linear-gradient(135deg,#fff0eb,#ffddd3); }
.stamp-art::before, .point-art::before { content: ''; position: absolute; inset: 0; background-image: radial-gradient(rgba(92,44,39,.1) 1px,transparent 1px); background-size: 18px 18px; }
.stamp-ticket { position: relative; width: 74%; padding: 25px; border: 1px solid rgba(117,54,45,.13); border-radius: 28px; color: #4c2721; background: rgba(255,255,255,.88); box-shadow: 0 25px 55px rgba(139,59,44,.16); transform: rotate(-3deg); }
.stamp-ticket::before, .stamp-ticket::after { content: ''; position: absolute; top: 47%; width: 24px; height: 24px; border-radius: 50%; background: #ffded5; }.stamp-ticket::before { left: -13px; }.stamp-ticket::after { right: -13px; }
.ticket-head { display: flex; justify-content: space-between; align-items: center; font-size: 9px; font-weight: 800; letter-spacing: .13em; }.ticket-head svg { width: 27px; height: 27px; fill: none; stroke: var(--rc-coral); stroke-width: 1.7; }
.stamp-ticket > strong { display: block; margin-top: 23px; font: 700 25px var(--font-display); }.stamp-ticket > small { display: block; color: #82635d; font-size: 11px; }
.stamp-dots { display: flex; justify-content: space-between; margin-top: 24px; }.stamp-dots i { width: 31px; height: 31px; display: grid; place-items: center; border: 1px dashed rgba(104,60,52,.35); border-radius: 50%; }.stamp-dots i.done { border-style: solid; background: var(--rc-coral); box-shadow: inset 0 0 0 5px #ffb19f; }.stamp-dots .gift-dot { border: 0; background: #4c2721; color: #fff; }.stamp-dots svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.point-art { background: radial-gradient(circle at 50% 45%,#9180ff,transparent 43%), linear-gradient(135deg,#eeeaff,#dcd5ff); }
.point-orbit { position: relative; width: 250px; height: 250px; display: grid; place-items: center; border: 1px solid rgba(67,42,169,.16); border-radius: 50%; animation: slow-spin 15s linear infinite; }.point-orbit::before { content: ''; position: absolute; width: 190px; height: 190px; border: 1px dashed rgba(67,42,169,.21); border-radius: 50%; }
.point-core { position: relative; z-index: 2; width: 150px; height: 150px; display: flex; flex-direction: column; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.42); border-radius: 50%; color: #fff; background: linear-gradient(145deg,#29166e,#6d4aff); box-shadow: 0 25px 60px rgba(67,42,169,.35); animation: counter-spin 15s linear infinite; }.point-core small, .point-core span { font-size: 8px; font-weight: 800; letter-spacing: .14em; opacity: .65; }.point-core strong { font: 800 35px var(--font-display); letter-spacing: -.05em; }
.point-orbit > i { position: absolute; z-index: 3; padding: 7px 10px; border-radius: 11px; color: #33216f; background: #fff; box-shadow: 0 10px 25px rgba(55,37,126,.17); font-size: 10px; font-style: normal; font-weight: 800; animation: counter-spin 15s linear infinite; }.point-orbit .p1 { left: 2px; top: 44px; }.point-orbit .p2 { right: -7px; top: 100px; }.point-orbit .p3 { left: 48px; bottom: -4px; }
.choice-body { padding: 34px 38px 38px; }.choice-kicker { color: var(--rc-violet); font-size: 10px; font-weight: 800; letter-spacing: .14em; }.stamps-card .choice-kicker { color: #c45138; }.choice-body h3 { margin: 8px 0 9px; font: 700 41px var(--font-display); letter-spacing: -.04em; }.choice-body p { min-height: 54px; margin: 0; color: var(--rc-ink-2); font-size: 16px; line-height: 1.55; }.choice-body ul { display: grid; gap: 10px; margin: 23px 0 0; padding: 0; list-style: none; color: var(--rc-ink-2); font-size: 13px; font-weight: 700; }.choice-body li { display: flex; gap: 9px; align-items: center; }.choice-body li svg { width: 18px; height: 18px; padding: 3px; border-radius: 50%; fill: none; stroke: #2f9574; stroke-width: 2.4; background: #e5f8f1; }
.choice-or { position: absolute; z-index: 5; left: 50%; top: 320px; transform: translate(-50%,-50%); width: 62px; height: 62px; display: grid; place-items: center; border: 7px solid var(--rc-paper); border-radius: 50%; color: var(--rc-ink-2); background: #fff; box-shadow: 0 8px 26px rgba(44,31,83,.13); font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.choice-cta { margin-top: 25px; padding: 18px 20px 18px 28px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-radius: 22px; background: var(--rc-violet-soft); color: #463886; font-size: 14px; font-weight: 700; }

.platform { overflow: hidden; }.bento-grid { display: grid; grid-template-columns: repeat(12,1fr); gap: 18px; }.bento { position: relative; min-height: 370px; overflow: hidden; border: 1px solid rgba(25,20,45,.08); border-radius: 30px; background: #fff; box-shadow: 0 16px 45px rgba(46,32,86,.06); }.bento-customer { grid-column: span 7; }.bento-tier { grid-column: span 5; background: #1b1433; color: #fff; }.bento-insights { grid-column: span 7; }.bento-engage { grid-column: span 5; background: #fff0ea; }.bento-ops { grid-column: span 12; min-height: 280px; display: grid; grid-template-columns: .75fr 1.25fr; align-items: center; background: #e9f7ff; }
.bento-copy { position: relative; z-index: 3; max-width: 500px; padding: 34px; }.bento-icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 15px; }.bento-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; }.bento-icon.purple { color: var(--rc-violet); background: var(--rc-violet-soft); }.bento-icon.gold { color: #805e0d; background: #ffefbd; }.bento-icon.mint { color: #167355; background: #dff8ee; }.bento-icon.coral { color: #bd4d35; background: #ffdcd2; }.bento-icon.sky { color: #20648f; background: #d8efff; }
.bento h3 { margin: 18px 0 8px; font: 700 28px/1.08 var(--font-display); letter-spacing: -.035em; }.bento p { margin: 0; max-width: 450px; color: var(--rc-ink-2); font-size: 15px; line-height: 1.55; }.bento-tier p { color: rgba(255,255,255,.56); }
.customer-stack { position: absolute; left: 34px; right: 34px; bottom: 30px; height: 150px; }.customer-row { position: absolute; left: 0; right: 0; height: 70px; padding: 12px 17px; display: flex; align-items: center; gap: 12px; border: 1px solid rgba(25,20,45,.08); border-radius: 18px; background: rgba(255,255,255,.91); box-shadow: 0 15px 32px rgba(46,32,86,.1); }.customer-row.c1 { z-index: 3; top: 0; }.customer-row.c2 { z-index: 2; top: 43px; transform: scale(.95); opacity:.72; }.customer-row.c3 { z-index: 1; top: 82px; transform: scale(.89); opacity:.46; }.avatar { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 14px; color: #fff; font-size: 11px; font-weight: 800; }.avatar.coral { background: var(--rc-coral); }.avatar.violet { background: var(--rc-violet); }.avatar.mint { background: #35a77d; }.customer-row b,.customer-row small { display:block; }.customer-row b { font-size: 13px; }.customer-row small { color: #81798d; font-size: 9px; }.customer-row em { margin-left: auto; padding: 5px 8px; border-radius: 9px; color: #238465; background: #e2f7ef; font-size: 8px; font-style: normal; font-weight: 800; }
.tier-rail { position: absolute; left: 35px; right: 35px; bottom: 46px; display: flex; align-items: center; }.tier-rail > i { flex: 1; height: 2px; background: linear-gradient(90deg,#8b5bff,#f2c14e); }.tier-node { position: relative; z-index: 2; text-align: center; }.tier-node span { width: 58px; height: 58px; display: grid; place-items: center; margin: auto; border: 1px solid rgba(255,255,255,.3); border-radius: 20px; background: linear-gradient(145deg,#352758,#201632); box-shadow: 0 15px 30px rgba(0,0,0,.3); font: 800 18px var(--font-display); transform: rotate(45deg); }.tier-node span::first-letter { transform: rotate(-45deg); }.tier-node b { display: block; margin-top: 18px; color: rgba(255,255,255,.67); font-size: 9px; }.tier-node.silver span { color:#ddd; }.tier-node.gold span { color:#f2c14e; box-shadow:0 0 32px rgba(242,193,78,.22); }
.chart-card { position: absolute; left: 34px; right: 34px; bottom: 26px; height: 180px; padding: 15px 17px 0; border-radius: 22px; background: #f7f4fc; }.chart-top { display:flex; justify-content:space-between; }.chart-top small,.chart-top strong { display:block; }.chart-top small { color:#81798d;font-size:9px;font-weight:700; }.chart-top strong { margin-top:2px;font:800 19px var(--font-display); }.chart-top em { color:#81798d;font-size:8px;font-style:normal; }.chart-card svg { width:100%;height:115px;overflow:visible; }.chart-card .area { fill:url(#chartFill); }.chart-card .line { fill:none;stroke:var(--rc-violet);stroke-width:3;vector-effect:non-scaling-stroke; }.chart-card circle { fill:#fff;stroke:var(--rc-violet);stroke-width:3; }
.engage-cards { position:absolute;left:30px;right:30px;bottom:30px;display:grid;grid-template-columns:1fr 100px;gap:12px; }.mission-card,.game-token { border:1px solid rgba(134,57,39,.09);border-radius:20px;background:rgba(255,255,255,.87);box-shadow:0 13px 30px rgba(134,57,39,.09); }.mission-card { padding:13px;display:flex;align-items:center;gap:10px; }.mission-card > span { width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#bd4d35;background:#ffdcd2; }.mission-card svg,.game-token svg { width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8; }.mission-card small,.mission-card b {display:block}.mission-card small{color:#a36d61;font-size:7px;font-weight:800;letter-spacing:.1em}.mission-card b{font-size:10px}.mission-card em{margin-left:auto;color:#bd4d35;font-size:9px;font-style:normal;font-weight:800}.game-token{padding:13px;text-align:center;color:#59420d;background:#fff3c9}.game-token svg{margin:0 auto 5px}.game-token b,.game-token small{display:block}.game-token b{font-size:10px}.game-token small{font-size:8px;color:#8b722d}
.ops-flow { margin-right: 55px; display:flex;align-items:center;justify-content:center; }.ops-flow > span { width:120px;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(32,100,143,.13);border-radius:34px;color:#20648f;background:rgba(255,255,255,.72);box-shadow:0 17px 40px rgba(32,100,143,.11); }.ops-flow svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.6}.ops-flow b{font-size:12px}.ops-flow > i{width:65px;height:2px;background:linear-gradient(90deg,#79c7ff,#6d4aff);position:relative}.ops-flow > i::after{content:'';position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:2px solid var(--rc-violet);border-right:2px solid var(--rc-violet);transform:rotate(45deg)}

.integrations { position:relative;overflow:hidden; }.integration-glow { position:absolute;width:900px;height:900px;left:50%;top:45%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(109,74,255,.25),rgba(255,120,90,.08) 38%,transparent 68%); }.integration-stage { position:relative;max-width:840px;height:560px;margin:0 auto; }.integration-orbit { position:absolute;left:50%;top:50%;border:1px solid rgba(255,255,255,.13);border-radius:50%;transform:translate(-50%,-50%); }.integration-orbit::before { content:'';position:absolute;inset:-4px;border:1px dashed rgba(255,255,255,.06);border-radius:inherit; }.integration-orbit.orbit-a{width:740px;height:310px;animation:orbit-rock 9s ease-in-out infinite}.integration-orbit.orbit-b{width:450px;height:450px;animation:orbit-rock 11s ease-in-out infinite reverse}.integration-node{position:absolute;min-width:148px;padding:14px 18px;display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.2);border-radius:17px;color:#fff;background:rgba(26,16,52,.82);box-shadow:0 18px 45px rgba(0,0,0,.25);backdrop-filter:blur(14px);font-size:11px}.integration-node svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7}.integration-node.apple{left:35px;top:-20px}.integration-node.foodics{right:34px;bottom:-20px;color:#b9f4dd}.integration-node.google{right:-65px;top:80px;color:#b9ddff}.integration-node.whatsapp{left:-62px;bottom:70px;color:#b9f4dd}.integration-core{position:absolute;z-index:3;left:50%;top:50%;width:245px;height:245px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:radial-gradient(circle at 38% 28%,#6d4aff,#29185d 65%,#170d35);box-shadow:0 0 0 20px rgba(109,74,255,.07),0 35px 90px rgba(0,0,0,.35)}.core-logo{width:46px;height:46px;display:grid;place-items:center;margin-bottom:12px;border-radius:15px;background:linear-gradient(135deg,var(--rc-coral),var(--rc-gold));font:800 20px var(--font-display)}.integration-core strong{font:700 19px/1.15 var(--font-display)}.integration-core small{margin-top:9px;color:rgba(255,255,255,.48);font-size:9px}.core-pulse{position:absolute;inset:-15px;border:1px solid rgba(139,91,255,.35);border-radius:50%;animation:pulse-ring 2.8s ease-out infinite}.integration-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border-top:1px solid var(--rc-white-line);border-bottom:1px solid var(--rc-white-line)}.integration-notes article{padding:32px 36px;border-right:1px solid var(--rc-white-line)}.integration-notes article:last-child{border-right:0}.integration-notes article>span{color:var(--rc-coral);font:700 11px var(--font-display)}.integration-notes h3{margin:12px 0 7px;font:700 21px var(--font-display)}.integration-notes p{margin:0;color:rgba(255,255,255,.5);font-size:13px;line-height:1.55}

.journey { overflow:hidden; }.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.journey-step{position:relative;min-height:420px;padding:26px;border:1px solid var(--rc-line);border-radius:30px;background:#fff;box-shadow:0 18px 55px rgba(46,32,86,.07)}.step-number{color:var(--rc-violet);font:700 11px var(--font-display);letter-spacing:.12em}.step-visual{height:220px;margin:18px 0 25px;border-radius:23px;background:var(--rc-cream);overflow:hidden}.journey-step h3{margin:0 0 7px;font:700 24px var(--font-display);letter-spacing:-.03em}.journey-step p{margin:0;color:var(--rc-ink-2);font-size:14px;line-height:1.55}.step-visual.choose{display:flex;align-items:center;justify-content:center;gap:14px;background:linear-gradient(135deg,#fff0eb,#eeeaff)}.step-visual.choose i{width:76px;height:76px;display:grid;place-items:center;border-radius:24px;box-shadow:0 18px 35px rgba(46,32,86,.14)}.step-visual.choose svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.6}.stamp-mini{color:#b94a35;background:#fff}.point-mini{color:#fff;background:var(--rc-violet)}.step-visual.choose b{color:#8a8295;font-size:10px;text-transform:uppercase}.step-visual.build{position:relative;padding:45px 35px;background:#f1edff}.step-visual.build span{display:block;height:24px;margin-bottom:13px;border-radius:9px;background:#fff;box-shadow:0 7px 16px rgba(65,44,140,.08)}.step-visual.build span:nth-child(1){width:70%}.step-visual.build span:nth-child(2){width:100%}.step-visual.build span:nth-child(3){width:84%}.step-visual.build svg{position:absolute;right:30px;bottom:25px;width:46px;height:46px;padding:13px;border-radius:15px;color:#fff;background:var(--rc-violet);fill:none;stroke:currentColor;stroke-width:2}.step-visual.launch{position:relative;display:grid;place-items:center;background:#e7f8f2}.launch-ring{position:relative;z-index:2;width:92px;height:92px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#27a177;box-shadow:0 0 0 18px rgba(39,161,119,.1),0 20px 40px rgba(39,161,119,.23)}.launch-ring svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:2}.step-visual.launch>i{position:absolute;width:7px;height:22px;border-radius:4px;background:var(--rc-coral)}.step-visual.launch>i:nth-child(2){left:30%;top:24%;transform:rotate(-35deg)}.step-visual.launch>i:nth-child(3){right:29%;top:22%;background:var(--rc-gold);transform:rotate(43deg)}.step-visual.launch>i:nth-child(4){right:24%;bottom:24%;background:var(--rc-violet);transform:rotate(-55deg)}
.trust-strip{padding:64px 0}.trust-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px}.trust-copy{display:flex;gap:18px;align-items:flex-start}.trust-copy h3{margin:2px 0 7px;font:700 25px var(--font-display)}.trust-copy p{margin:0;color:var(--rc-ink-2);font-size:14px;line-height:1.55}.trust-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.trust-stats div{padding:20px;border-left:1px solid var(--rc-line)}.trust-stats strong{display:block;font:800 38px var(--font-display);letter-spacing:-.05em}.trust-stats strong::after{content:''}.trust-stats div:first-child strong::after{content:'%'}.trust-stats span{display:block;margin-top:5px;color:var(--rc-ink-2);font-size:10px;font-weight:700;line-height:1.35}
.final-cta{position:relative;padding:115px 0;overflow:hidden}.cta-orbit{position:absolute;width:800px;height:800px;left:-300px;top:-310px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 90px rgba(109,74,255,.035),0 0 0 180px rgba(109,74,255,.025)}.final-cta-inner{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:70px}.final-cta h2{margin:17px 0 0;font:700 clamp(48px,6vw,86px)/.94 var(--font-display);letter-spacing:-.06em}.final-cta p{max-width:620px;margin:23px 0 0;color:rgba(255,255,255,.6);font-size:18px;line-height:1.6}.cta-gift{position:relative;height:390px}.gift-box{position:absolute;left:50%;top:50%;width:205px;height:180px;transform:translate(-50%,-38%) rotate(-5deg);border-radius:22px;background:linear-gradient(145deg,#7b5cff,#4b2bd1);box-shadow:0 40px 80px rgba(0,0,0,.35)}.gift-box span{position:absolute;left:-10px;right:-10px;top:-38px;height:56px;border-radius:17px;background:linear-gradient(145deg,#957cff,#5c39df)}.gift-box i{position:absolute;left:50%;top:-38px;bottom:0;width:32px;transform:translateX(-50%);background:linear-gradient(#ff967e,#ff6f51)}.gift-box svg{position:absolute;z-index:2;left:50%;top:50%;width:55px;height:55px;transform:translate(-50%,-38%);fill:none;stroke:#fff;stroke-width:1.4}.cta-coin.c1{left:15%;top:16%}.cta-coin.c2{right:12%;top:29%;transform:scale(1.3);animation-delay:-1.4s}.cta-coin.c3{right:23%;bottom:7%;transform:scale(.72);animation-delay:-2.5s}.light-link{color:rgba(255,255,255,.62)}
.site-footer{padding:42px 0;background:#090617;color:#fff}.footer-grid{display:grid;grid-template-columns:1fr auto;align-items:center;gap:25px}.footer-brand .brand-mark{width:38px;height:38px;border-radius:12px}.footer-links{display:flex;gap:24px}.footer-links a{text-decoration:none;color:rgba(255,255,255,.58);font-size:12px;font-weight:700}.footer-links a:hover{color:#fff}.footer-grid>p{grid-column:1/-1;margin:0;padding-top:20px;border-top:1px solid var(--rc-white-line);color:rgba(255,255,255,.36);font-size:11px}

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .75s var(--ease-spring), transform .75s var(--ease-spring); }
.reveal.visible { opacity: 1; transform: none; }
@keyframes float { 0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-13px) rotate(1deg)} }
@keyframes twinkle { 0%,100%{opacity:.25;transform:scale(.7) rotate(20deg)}50%{opacity:1;transform:scale(1.2) rotate(55deg)} }
@keyframes marquee { to{transform:translateX(-50%)} }
@keyframes slow-spin { to{transform:rotate(360deg)} }
@keyframes counter-spin { to{transform:rotate(-360deg)} }
@keyframes orbit-rock { 0%,100%{transform:translate(-50%,-50%) rotate(-4deg)}50%{transform:translate(-50%,-50%) rotate(4deg)} }
@keyframes pulse-ring { 0%{transform:scale(.88);opacity:.8}80%,100%{transform:scale(1.22);opacity:0} }

/* ============================================================
   LANDING MOTION SYSTEM V2 — the Robocard return loop
   Motion explains state changes. It is scroll-directed, never scroll-jacked.
   ============================================================ */
.hero-cinema {
  position: relative; min-height: 650px; overflow: hidden; border-radius: 42px;
  border: 1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 52% 46%, rgba(109,74,255,.26), transparent 31%),
    linear-gradient(155deg, rgba(255,255,255,.055), rgba(255,255,255,.015));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 50px 120px rgba(0,0,0,.26);
  isolation: isolate;
}
.hero-cinema::before { content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle at center,#000,transparent 76%) }
.hero-loop-line { position:absolute;inset:0;width:100%;height:100%;overflow:visible }
.loop-ghost,.loop-live { fill:none;stroke-linecap:round;stroke-linejoin:round }.loop-ghost{stroke:rgba(255,255,255,.075);stroke-width:1.5}.loop-live{stroke:url(#heroLoopGradient);stroke-width:2;stroke-dasharray:.16 .84;opacity:.7}
.hero-pulse-dot { opacity:.95 }
.hero-device { position:absolute;z-index:4;left:50%;top:50%;width:265px;height:522px;padding:17px 14px;overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:48px;color:var(--rc-ink);background:#f9f7fc;box-shadow:0 35px 90px rgba(0,0,0,.38),inset 0 0 0 6px #1d172b;transform:translate(-50%,-50%) rotate(-2deg);transition:transform .8s var(--ease-spring),box-shadow .8s var(--ease-spring)}
.device-island{position:absolute;z-index:8;left:50%;top:10px;width:84px;height:23px;transform:translateX(-50%);border-radius:20px;background:#15101e}.device-head{height:35px;padding:0 7px;display:flex;align-items:center;justify-content:space-between;color:#7e778c;font-size:7px;font-weight:800;letter-spacing:.08em}.device-head i{width:16px;height:7px;border-top:2px solid #322c3c;border-right:2px solid #322c3c}.device-greeting{padding:17px 5px 13px}.device-greeting small{display:block;color:#8e8799;font-size:6.5px;font-weight:800;letter-spacing:.12em}.device-greeting strong{display:block;margin-top:4px;font:700 16px var(--font-display);letter-spacing:-.03em}
.hero-wallet-card{position:relative;height:205px;padding:18px;overflow:hidden;border-radius:25px;color:#fff;background:linear-gradient(140deg,#21115d,#6d4aff 57%,#c46ec7);box-shadow:0 20px 38px rgba(73,45,166,.26);transform-origin:center;transition:transform .8s var(--ease-spring),filter .6s}.hero-wallet-card::before{content:'';position:absolute;width:210px;height:210px;right:-90px;top:-120px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.035),0 0 0 70px rgba(255,255,255,.025)}.wallet-card-head,.wallet-foot{position:relative;display:flex;justify-content:space-between;font-size:6.5px;font-weight:800;letter-spacing:.13em}.wallet-signal{font-size:9px;transform:rotate(90deg)}.wallet-balance{position:relative;margin-top:42px}.wallet-balance small{display:block;opacity:.6;font-size:6px;letter-spacing:.13em}.wallet-balance strong{position:relative;display:block;height:38px;font:800 31px var(--font-display);letter-spacing:-.05em}.wallet-balance strong span{position:absolute;left:0;top:0;transition:opacity .55s,transform .65s var(--ease-spring)}.balance-after{opacity:0;transform:translateY(15px)}.wallet-track{position:relative;height:5px;margin:8px 0 18px;border-radius:8px;background:rgba(255,255,255,.16);overflow:hidden}.wallet-track i{display:block;width:63%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#fff,#f2c14e);transition:width .85s var(--ease-spring)}
.device-reward-sheet{position:absolute;z-index:6;left:12px;right:12px;bottom:12px;height:260px;padding:28px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid rgba(25,20,45,.08);border-radius:30px;background:rgba(255,255,255,.96);box-shadow:0 -20px 55px rgba(35,20,72,.18);transform:translateY(115%);transition:transform .8s var(--ease-spring)}.sheet-gift{width:62px;height:62px;display:grid;place-items:center;margin-bottom:17px;border-radius:21px;color:#c34f37;background:#ffe4dc;box-shadow:0 14px 28px rgba(195,79,55,.15)}.sheet-gift svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6}.device-reward-sheet small{color:#bf5038;font-size:7px;font-weight:900;letter-spacing:.14em}.device-reward-sheet strong{margin-top:7px;font:700 20px var(--font-display)}.device-reward-sheet em{margin-top:5px;color:#81798d;font-size:8px;font-style:normal}
.device-return{position:absolute;z-index:7;left:14px;right:14px;bottom:15px;padding:13px;display:flex;align-items:center;gap:10px;border:1px solid rgba(25,20,45,.09);border-radius:18px;background:#fff;box-shadow:0 16px 38px rgba(35,20,72,.16);opacity:0;transform:translateY(35px) scale(.92);transition:opacity .55s,transform .75s var(--ease-spring)}.device-return>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#fff;background:#176b9b}.device-return svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.device-return div{min-width:0}.device-return small,.device-return strong{display:block}.device-return small{color:#81798d;font-size:6px;font-weight:800;letter-spacing:.1em}.device-return strong{margin-top:2px;font-size:9px}.device-return>i{margin-left:auto;color:var(--rc-violet);font-style:normal}
.hero-event{position:absolute;z-index:5;min-width:198px;padding:13px 15px 13px 11px;display:flex;align-items:center;gap:11px;border:1px solid rgba(255,255,255,.17);border-radius:18px;background:rgba(21,13,45,.82);box-shadow:0 22px 55px rgba(0,0,0,.3);backdrop-filter:blur(18px);opacity:0;transform:translateY(22px) scale(.94);transition:opacity .55s,transform .75s var(--ease-spring)}.hero-event>span{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:14px;color:#c7bfff;background:rgba(109,74,255,.2)}.hero-event svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}.hero-event small,.hero-event strong,.hero-event em{display:block}.hero-event small{color:rgba(255,255,255,.5);font-size:6px;font-weight:900;letter-spacing:.13em}.hero-event strong{margin-top:3px;font-size:11px}.hero-event em{margin-top:2px;color:rgba(255,255,255,.52);font-size:7px;font-style:normal}.event-purchase{left:4%;top:17%}.event-earned{right:3%;top:23%}.event-unlocked{right:1%;bottom:18%}.event-return{left:3%;bottom:16%}.event-purchase>span{color:#a7ddff;background:rgba(121,199,255,.15)}.event-unlocked>span{color:#ffac99;background:rgba(255,120,90,.15)}.event-return>span{color:#b9f4dd;background:rgba(112,225,178,.14)}
.hero-device,.hero-event,.story-copy,.system-asset,.flow-node,.flow-packet,.assembly-copy-stack article,.assembly-layer,.workspace-complete { will-change:transform,opacity }
.hero-cinema[data-hero-scene="0"] .event-purchase,.hero-cinema[data-hero-scene="1"] .event-earned,.hero-cinema[data-hero-scene="2"] .event-unlocked,.hero-cinema[data-hero-scene="3"] .event-return{opacity:1;transform:none}.hero-cinema[data-hero-scene="1"] .balance-before,.hero-cinema[data-hero-scene="2"] .balance-before,.hero-cinema[data-hero-scene="3"] .balance-before{opacity:0;transform:translateY(-15px)}.hero-cinema[data-hero-scene="1"] .balance-after,.hero-cinema[data-hero-scene="2"] .balance-after,.hero-cinema[data-hero-scene="3"] .balance-after{opacity:1;transform:none}.hero-cinema[data-hero-scene="1"] .wallet-track i,.hero-cinema[data-hero-scene="2"] .wallet-track i,.hero-cinema[data-hero-scene="3"] .wallet-track i{width:84%}.hero-cinema[data-hero-scene="1"] .hero-wallet-card{transform:scale(1.025);filter:saturate(1.16)}.hero-cinema[data-hero-scene="2"] .device-reward-sheet{transform:none}.hero-cinema[data-hero-scene="2"] .hero-wallet-card{transform:translateY(-32px) scale(.94);filter:blur(1px) brightness(.78)}.hero-cinema[data-hero-scene="3"] .device-return{opacity:1;transform:none}.hero-cinema[data-hero-scene="3"] .hero-device{transform:translate(-50%,-50%) rotate(1deg);box-shadow:0 45px 110px rgba(0,0,0,.42),0 0 70px rgba(112,225,178,.12),inset 0 0 0 6px #1d172b}
.hero-story-index{position:absolute;z-index:10;left:50%;bottom:16px;width:min(82%,520px);display:grid;grid-template-columns:repeat(4,1fr);gap:8px;transform:translateX(-50%);color:rgba(255,255,255,.38);font-size:7px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero-story-index span{text-align:center;transition:color .3s}.hero-story-index span.active{color:#fff}.hero-story-index>i{position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:4px;background:rgba(255,255,255,.09);overflow:hidden}.hero-story-index>i b{display:block;width:25%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--rc-sky),var(--rc-violet),var(--rc-coral));transform:translateX(var(--hero-index,0%));transition:transform .65s var(--ease-spring)}.hero-scroll-cue{height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(255,255,255,.43);font-size:8px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.hero-scroll-cue i{width:1px;height:24px;background:linear-gradient(#fff,transparent)}

.scroll-story{position:relative;height:420vh;--story-progress:0;--phase-progress:0}.story-sticky{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden}.story-shell{height:100%;padding-top:108px;padding-bottom:42px;display:flex;flex-direction:column}.customer-story{color:var(--rc-ink);background:linear-gradient(180deg,#f7f3ec,#eee9f7 58%,#f7f3ec)}.story-intro{display:flex;align-items:center;justify-content:space-between;gap:30px}.story-progress{width:190px;display:flex;align-items:center;gap:12px;color:#7a7288;font-size:8px;font-weight:800;letter-spacing:.1em}.story-progress>i{position:relative;flex:1;height:2px;border-radius:4px;background:rgba(25,20,45,.12);overflow:hidden}.story-progress>i b{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--rc-violet),var(--rc-coral));transform:scaleX(var(--story-progress));transform-origin:left}.story-layout{flex:1;min-height:0;display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:52px}.story-copy-stack{position:relative;min-height:410px}.story-copy{position:absolute;left:0;top:50%;max-width:510px;opacity:0;transform:translateY(calc(-50% + 35px));transition:opacity .5s,transform .75s var(--ease-spring);pointer-events:none}.story-copy.active{opacity:1;transform:translateY(-50%);pointer-events:auto}.story-copy>span,.assembly-copy-stack article>span{color:var(--rc-violet);font-size:9px;font-weight:900;letter-spacing:.16em}.story-copy h2{margin:15px 0 19px;font:700 clamp(42px,4.7vw,69px)/.97 var(--font-display);letter-spacing:-.055em}.story-copy h2 em{color:var(--rc-violet);font-style:normal}.story-copy p{max-width:480px;margin:0;color:var(--rc-ink-2);font-size:17px;line-height:1.65}
.customer-system{position:relative;height:min(660px,72vh);min-height:560px;perspective:1400px}.system-aura{position:absolute;left:50%;top:48%;width:520px;height:520px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(109,74,255,.17),rgba(255,120,90,.05) 44%,transparent 70%);transition:background .8s}.customer-passport{position:absolute;z-index:5;left:50%;top:50%;width:390px;padding:23px;border:1px solid rgba(25,20,45,.1);border-radius:29px;background:rgba(255,255,255,.92);box-shadow:0 35px 85px rgba(50,34,96,.17);transform:translate(-50%,-50%) rotateY(-7deg);transition:transform .85s var(--ease-spring),opacity .55s,filter .55s}.passport-top{display:flex;align-items:center;gap:12px}.passport-avatar{width:49px;height:49px;display:grid;place-items:center;border-radius:16px;color:#fff;background:linear-gradient(135deg,var(--rc-violet),#a56cea);font:800 13px var(--font-display)}.passport-top small,.passport-top strong{display:block}.passport-top small{color:#8b8497;font-size:6px;font-weight:900;letter-spacing:.13em}.passport-top strong{margin-top:3px;font:700 15px var(--font-display)}.passport-top>i{margin-left:auto;padding:5px 8px;border-radius:8px;color:#23795e;background:#dff7ee;font-size:7px;font-style:normal;font-weight:900}.passport-balance{margin-top:26px}.passport-balance small{display:block;color:#8b8497;font-size:6px;font-weight:900;letter-spacing:.13em}.passport-balance strong{display:inline-block;margin-top:2px;font:800 43px var(--font-display);letter-spacing:-.06em}.passport-balance>span{margin-left:7px;color:var(--rc-violet);font-size:8px;font-weight:900;text-transform:uppercase}.passport-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.passport-meta>span{padding:10px;border-radius:12px;background:#f3f0f8}.passport-meta small,.passport-meta b{display:block}.passport-meta small{color:#8b8497;font-size:5.5px;font-weight:900;letter-spacing:.08em}.passport-meta b{margin-top:3px;font-size:10px}.passport-live{display:flex;align-items:center;gap:8px;margin-top:15px;padding-top:13px;border-top:1px solid rgba(25,20,45,.08);color:#777083;font-size:7px}.passport-live i{width:7px;height:7px;border-radius:50%;background:var(--rc-mint);box-shadow:0 0 0 5px rgba(112,225,178,.16)}.passport-live b{margin-left:auto;color:#2f8b6d}
.system-asset{position:absolute;z-index:6;border:1px solid rgba(25,20,45,.09);background:rgba(255,255,255,.94);box-shadow:0 24px 60px rgba(50,34,96,.14);opacity:0;transition:opacity .55s,transform .8s var(--ease-spring)}.asset-visit{left:0;top:12%;min-width:245px;padding:13px;display:flex;align-items:center;gap:11px;border-radius:18px;transform:translateX(-45px) scale(.92)}.asset-visit>span,.asset-mission>span,.asset-benefit>span,.asset-gift>span{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:13px;color:var(--rc-violet);background:var(--rc-violet-soft)}.system-asset svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}.system-asset small,.system-asset strong,.system-asset em{display:block}.system-asset small{color:#8b8497;font-size:6px;font-weight:900;letter-spacing:.1em}.system-asset strong{margin-top:2px;font-size:10px}.asset-visit>b{margin-left:auto;color:#258366;font-size:11px}.customer-story[data-phase="0"] .asset-visit{opacity:1;transform:none}
.asset-tier{left:4%;right:0;bottom:7%;padding:18px;border-radius:21px;transform:translateY(45px) scale(.94)}.tier-stage-head{display:flex;align-items:center;justify-content:space-between}.tier-stage-head span{color:#8b8497;font-size:6px;font-weight:900;letter-spacing:.12em}.tier-stage-head b{padding:5px 8px;border-radius:8px;color:#795912;background:#fff0c2;font-size:7px}.tier-stage-rail{position:relative;margin:24px 15px 9px;display:flex;justify-content:space-between}.tier-stage-rail::before{content:'';position:absolute;left:5px;right:5px;top:50%;height:2px;background:#e4dfeb}.tier-stage-rail i{position:relative;z-index:2;width:14px;height:14px;border:3px solid #e4dfeb;border-radius:50%;background:#fff}.tier-stage-rail i.complete{border-color:var(--rc-violet);background:var(--rc-violet)}.tier-stage-rail i.current{border-color:var(--rc-gold);box-shadow:0 0 0 7px rgba(242,193,78,.14)}.tier-stage-labels{display:flex;justify-content:space-between;color:#81798e;font-size:6px;font-weight:800}.asset-tier p{margin:14px 0 0;color:#6c6479;font-size:8px}.customer-story[data-phase="1"] .asset-tier{opacity:1;transform:none}.customer-story[data-phase="1"] .customer-passport{transform:translate(-50%,-62%) rotateY(5deg) scale(.94)}
.asset-mission{left:0;top:9%;width:285px;padding:14px;display:flex;align-items:center;gap:10px;border-radius:18px;transform:translate(-35px,-15px) scale(.92)}.asset-mission em{margin-top:2px;color:#81798e;font-size:7px;font-style:normal}.asset-mission>i{width:52px;height:4px;margin-left:auto;border-radius:5px;background:#eee9f4;overflow:hidden}.asset-mission>i b{display:block;width:50%;height:100%;background:var(--rc-coral)}.asset-benefit{right:-2%;top:21%;padding:13px;display:flex;align-items:center;gap:10px;border-radius:18px;transform:translate(35px,-10px) scale(.92)}.asset-benefit>span{color:#8a6510;background:#fff1c7}.asset-benefit>b{margin-left:16px;padding:5px 8px;border-radius:8px;color:#76550c;background:#fff0be;font-size:7px}.asset-gift{right:4%;bottom:8%;padding:13px;display:flex;align-items:center;gap:10px;border-radius:18px;transform:translate(30px,25px) scale(.92)}.asset-gift>span{color:#c34f37;background:#ffe4dc}.customer-story[data-phase="2"] .asset-mission,.customer-story[data-phase="2"] .asset-benefit,.customer-story[data-phase="2"] .asset-gift{opacity:1;transform:none}.customer-story[data-phase="2"] .customer-passport{transform:translate(-50%,-50%) rotateY(0) scale(.9);filter:saturate(.9)}
.asset-insight{left:0;right:0;top:8%;bottom:5%;padding:25px;border-radius:27px;background:#17112c;color:#fff;transform:translateY(35px) scale(.94)}.insight-head{display:flex;align-items:flex-start;justify-content:space-between}.insight-head small,.insight-head strong{display:block}.insight-head small{color:rgba(255,255,255,.46);font-size:7px;font-weight:900;letter-spacing:.13em}.insight-head strong{margin-top:3px;font:700 22px var(--font-display)}.insight-head>span{padding:7px 9px;border-radius:9px;color:#9ff0cf;background:rgba(112,225,178,.1);font-size:9px;font-weight:900}.asset-insight>svg{width:100%;height:65%;margin-top:18px;overflow:visible}.insight-area{fill:url(#storyChartFill)}.insight-line{fill:none;stroke:var(--rc-mint);stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;vector-effect:non-scaling-stroke;transition:stroke-dashoffset 1.1s var(--ease-spring)}.insight-foot{display:flex;justify-content:space-between;color:rgba(255,255,255,.45);font-size:7px}.insight-foot span{display:flex;align-items:center;gap:7px}.insight-foot i{width:7px;height:7px;border-radius:50%;background:var(--rc-mint)}.customer-story[data-phase="3"] .asset-insight{opacity:1;transform:none}.customer-story[data-phase="3"] .insight-line{stroke-dashoffset:0}.customer-story[data-phase="3"] .customer-passport{opacity:0;transform:translate(-50%,-50%) scale(.82)}

.integration-story{height:400vh}.integration-story .story-sticky{background:radial-gradient(circle at 50% 45%,rgba(109,74,255,.17),transparent 34%),var(--rc-night)}.integration-story-shell{height:100%;padding-top:102px;padding-bottom:36px;display:flex;flex-direction:column}.integration-story-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.integration-story-heading h2{margin:12px 0 0;font:700 clamp(40px,4.6vw,66px)/.96 var(--font-display);letter-spacing:-.055em}.integration-story-heading h2 span{color:#a99aff}.light-progress{color:rgba(255,255,255,.52)}.light-progress>i{background:rgba(255,255,255,.11)}.data-flow{position:relative;flex:1;min-height:420px;margin-top:17px}.flow-lines{position:absolute;left:0;right:0;top:50%;width:100%;height:430px;transform:translateY(-50%);overflow:visible}.flow-path{fill:none;stroke:rgba(255,255,255,.1);stroke-width:2;stroke-linecap:round;vector-effect:non-scaling-stroke}.flow-path::after{content:''}.flow-node{position:absolute;z-index:3;border:1px solid rgba(255,255,255,.14);background:rgba(25,16,50,.86);box-shadow:0 30px 75px rgba(0,0,0,.3);backdrop-filter:blur(18px);transition:transform .8s var(--ease-spring),border-color .5s,box-shadow .5s}.flow-terminal{left:0;top:50%;width:235px;padding:15px;border-radius:22px;transform:translateY(-50%) scale(.96)}.terminal-bar{display:flex;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.09);font-size:7px;font-weight:900}.terminal-bar span{color:#a9dfff}.terminal-bar i{color:rgba(255,255,255,.4);font-style:normal}.receipt-line{display:flex;justify-content:space-between;margin-top:11px;color:rgba(255,255,255,.6);font-size:8px}.receipt-line b{color:#fff}.receipt-total{margin-top:14px;padding-top:12px;display:flex;align-items:end;justify-content:space-between;border-top:1px dashed rgba(255,255,255,.15)}.receipt-total span{color:rgba(255,255,255,.4);font-size:6px;font-weight:900}.receipt-total strong{font:700 14px var(--font-display)}.receipt-customer{margin-top:14px;padding:10px;display:flex;align-items:center;gap:8px;border-radius:13px;background:rgba(121,199,255,.08)}.mini-customer{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;color:#fff;background:#176b9b;font-size:8px;font-weight:900}.receipt-customer small,.receipt-customer b{display:block}.receipt-customer small{color:#8fcff8;font-size:5px;font-weight:900;letter-spacing:.09em}.receipt-customer b{margin-top:2px;font-size:8px}.receipt-customer i{width:24px;height:24px;margin-left:auto;display:grid;place-items:center;border-radius:50%;color:#83e2bc;background:rgba(112,225,178,.1)}.receipt-customer svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2}
.flow-engine{left:50%;top:50%;width:220px;height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 40% 30%,#6d4aff,#2a185f 62%,#17102e)}.engine-rings,.engine-rings i{position:absolute;inset:-12px;border:1px solid rgba(139,91,255,.2);border-radius:50%}.engine-rings i:nth-child(2){inset:-28px;opacity:.55}.engine-rings i:nth-child(3){inset:-47px;opacity:.25}.engine-mark{width:45px;height:45px;display:grid;place-items:center;margin-bottom:9px;border-radius:15px;background:linear-gradient(135deg,var(--rc-coral),var(--rc-gold));font:800 20px var(--font-display);box-shadow:0 12px 25px rgba(0,0,0,.2)}.flow-engine>small{color:rgba(255,255,255,.43);font-size:6px;font-weight:900;letter-spacing:.13em}.engine-state{position:relative;height:20px;min-width:150px;margin-top:4px;font:700 14px var(--font-display)}.engine-state span{position:absolute;left:0;right:0;opacity:0;transform:translateY(8px);transition:.5s}.integration-story[data-phase="0"] .engine-state span:nth-child(1),.integration-story[data-phase="1"] .engine-state span:nth-child(2),.integration-story[data-phase="2"] .engine-state span:nth-child(3),.integration-story[data-phase="3"] .engine-state span:nth-child(4){opacity:1;transform:none}.engine-rules{display:flex;gap:5px;margin-top:12px}.engine-rules span{padding:4px 6px;border-radius:7px;color:rgba(255,255,255,.42);background:rgba(255,255,255,.06);font-size:5px;font-weight:800}
.flow-phone{right:0;top:50%;width:210px;height:360px;padding:17px 13px;border-radius:34px;background:#f6f3f8;color:var(--rc-ink);box-shadow:0 35px 85px rgba(0,0,0,.34),inset 0 0 0 5px #20192d;transform:translateY(-50%) scale(.96)}.flow-phone-island{position:absolute;left:50%;top:9px;width:67px;height:18px;transform:translateX(-50%);border-radius:20px;background:#17121f}.flow-phone-head{height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 5px;color:#81798d;font-size:6px;font-weight:900}.flow-phone-head i{width:14px;height:6px;border-top:2px solid #393242;border-right:2px solid #393242}.wallet-pass{position:relative;height:140px;padding:16px;overflow:hidden;border-radius:20px;color:#fff;background:linear-gradient(140deg,#29156e,#6d4aff 58%,#b468cb);box-shadow:0 15px 32px rgba(72,43,160,.24)}.wallet-pass::after{content:'';position:absolute;width:140px;height:140px;right:-70px;top:-75px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.04)}.wallet-pass small,.wallet-pass b,.wallet-pass em{position:relative;z-index:1;display:block}.wallet-pass small{font-size:6px;font-weight:900;letter-spacing:.12em}.wallet-pass b{margin-top:20px;font:800 28px var(--font-display)}.wallet-pass em{font-size:6px;font-style:normal;font-weight:900;opacity:.6}.wallet-pass>span{position:absolute;right:14px;bottom:13px;font-size:6px;font-weight:900}.wallet-update,.whatsapp-update{margin-top:10px;padding:10px;display:flex;align-items:center;gap:8px;border:1px solid rgba(25,20,45,.07);border-radius:13px;background:#fff;box-shadow:0 9px 20px rgba(42,27,79,.08);opacity:.25;transform:translateY(8px);transition:opacity .55s,transform .7s var(--ease-spring)}.wallet-update svg,.whatsapp-update svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.wallet-update>svg{color:var(--rc-violet)}.whatsapp-update>svg{color:#228b68}.wallet-update small,.wallet-update b,.whatsapp-update small,.whatsapp-update b{display:block}.wallet-update small,.whatsapp-update small{color:#8b8497;font-size:5px;font-weight:900;letter-spacing:.09em}.wallet-update b,.whatsapp-update b{margin-top:2px;font-size:7px}.wallet-update>span,.whatsapp-update>span{margin-left:auto;color:#81798d;font-size:5px}.integration-story[data-phase="2"] .wallet-update,.integration-story[data-phase="3"] .wallet-update,.integration-story[data-phase="3"] .whatsapp-update{opacity:1;transform:none}
.flow-packet{position:absolute;z-index:8;padding:8px 10px;display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;background:#20143f;box-shadow:0 12px 28px rgba(0,0,0,.3);font-size:6px;font-weight:900;letter-spacing:.06em;opacity:0;transition:opacity .35s,transform .9s var(--ease-spring)}.flow-packet svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.packet-in{left:19%;top:48%;color:#a9dfff;transform:translateX(-40px)}.packet-out{right:20%;top:48%;color:#c9c1ff;transform:translateX(-70px)}.packet-message{right:17%;bottom:10%;color:#a4edcf;transform:translate(-100px,-25px)}.integration-story[data-phase="0"] .packet-in{opacity:1;transform:translateX(55px)}.integration-story[data-phase="1"] .flow-engine{border-color:rgba(139,91,255,.62);box-shadow:0 0 0 14px rgba(109,74,255,.06),0 35px 90px rgba(0,0,0,.4)}.integration-story[data-phase="1"] .packet-out,.integration-story[data-phase="2"] .packet-out{opacity:1;transform:translateX(55px)}.integration-story[data-phase="2"] .flow-phone,.integration-story[data-phase="3"] .flow-phone{border-color:rgba(112,225,178,.3);transform:translateY(-50%) scale(1)}.integration-story[data-phase="3"] .packet-message{opacity:1;transform:translate(20px,-5px)}
.integration-copy-track{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border-top:1px solid rgba(255,255,255,.11)}.integration-copy-track article{padding:18px 20px;border-right:1px solid rgba(255,255,255,.11);opacity:.34;transition:opacity .45s,background .45s}.integration-copy-track article:last-child{border-right:0}.integration-copy-track article.active{opacity:1;background:linear-gradient(180deg,rgba(109,74,255,.1),transparent)}.integration-copy-track span{color:#a99aff;font-size:6px;font-weight:900;letter-spacing:.12em}.integration-copy-track strong{display:block;margin-top:7px;font:700 12px/1.25 var(--font-display)}.integration-copy-track p{margin:6px 0 0;color:rgba(255,255,255,.5);font-size:8px;line-height:1.45}

.assembly-story{height:420vh;color:var(--rc-ink);background:linear-gradient(180deg,#fffdf9,#f2eef8 50%,#fffdf9)}.assembly-shell{height:100%;padding-top:105px;padding-bottom:40px;display:flex;flex-direction:column}.assembly-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px}.assembly-heading h2{margin:12px 0 0;font:700 clamp(40px,4.6vw,66px)/.96 var(--font-display);letter-spacing:-.055em}.assembly-heading h2 span{color:var(--rc-violet)}.assembly-layout{flex:1;min-height:0;display:grid;grid-template-columns:.72fr 1.28fr;align-items:center;gap:60px}.assembly-copy-stack{position:relative;min-height:330px}.assembly-copy-stack article{position:absolute;left:0;top:50%;max-width:420px;opacity:0;transform:translateY(calc(-50% + 28px));transition:opacity .5s,transform .75s var(--ease-spring)}.assembly-copy-stack article.active{opacity:1;transform:translateY(-50%)}.assembly-copy-stack h3{margin:14px 0 13px;font:700 clamp(28px,3vw,42px)/1.02 var(--font-display);letter-spacing:-.045em}.assembly-copy-stack p{margin:0;color:var(--rc-ink-2);font-size:15px;line-height:1.6}.assembly-stage{position:relative;height:min(640px,70vh);min-height:540px;border:1px solid rgba(25,20,45,.08);border-radius:34px;background:rgba(255,255,255,.72);box-shadow:0 35px 90px rgba(49,31,95,.12);overflow:hidden;perspective:1400px}.assembly-blueprint{position:absolute;inset:0;color:rgba(109,74,255,.24);background-image:linear-gradient(rgba(109,74,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(109,74,255,.06) 1px,transparent 1px);background-size:40px 40px}.assembly-blueprint span{position:absolute;left:24px;top:20px;font-size:6px;font-weight:900;letter-spacing:.14em}.assembly-blueprint i{position:absolute;border:1px dashed rgba(109,74,255,.13);border-radius:18px}.assembly-blueprint i:nth-child(2){left:10%;right:10%;top:19%;height:52px}.assembly-blueprint i:nth-child(3){left:10%;right:10%;top:34%;height:52px}.assembly-blueprint i:nth-child(4){left:10%;right:10%;top:49%;height:52px}.assembly-blueprint i:nth-child(5){left:10%;right:10%;top:64%;height:52px}.assembly-layer{position:absolute;z-index:4;left:11%;right:11%;height:59px;padding:0 17px;display:flex;align-items:center;gap:12px;border:1px solid rgba(25,20,45,.09);border-radius:17px;background:rgba(255,255,255,.96);box-shadow:0 16px 35px rgba(49,31,95,.1);opacity:0;transform:translate3d(0,80px,0) scale(.92);transition:opacity .5s,transform .85s var(--ease-spring)}.assembly-layer>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:var(--rc-violet);background:var(--rc-violet-soft)}.assembly-layer svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}.assembly-layer small,.assembly-layer strong{display:block}.assembly-layer small{color:#8b8497;font-size:5px;font-weight:900;letter-spacing:.12em}.assembly-layer strong{margin-top:2px;font-size:10px}.assembly-layer em{margin-left:auto;color:#a39bad;font-size:7px;font-style:normal;font-weight:900}.layer-model{top:18%}.layer-tier{top:30%}.layer-gift{top:42%}.layer-program{top:54%}.layer-branch{top:66%}.layer-owner{top:78%}.layer-gift>span{color:#c34f37;background:#ffe4dc}.layer-branch>span{color:#176b9b;background:#dff3ff}.layer-owner>span{color:#238165;background:#dff7ee}.assembly-story[data-phase="0"] .layer-model{opacity:1;transform:none}.assembly-story[data-phase="1"] .layer-model,.assembly-story[data-phase="1"] .layer-tier,.assembly-story[data-phase="1"] .layer-gift,.assembly-story[data-phase="1"] .layer-program{opacity:1;transform:none}.assembly-story[data-phase="1"] .layer-tier{transition-delay:.08s}.assembly-story[data-phase="1"] .layer-gift{transition-delay:.16s}.assembly-story[data-phase="1"] .layer-program{transition-delay:.24s}.assembly-story[data-phase="2"] .assembly-layer{opacity:1;transform:none}.assembly-story[data-phase="2"] .layer-branch{transition-delay:.08s}.assembly-story[data-phase="2"] .layer-owner{transition-delay:.16s}
.workspace-complete{position:absolute;z-index:8;left:8%;right:8%;top:50%;padding:23px;border:1px solid rgba(25,20,45,.09);border-radius:27px;background:#fff;box-shadow:0 38px 90px rgba(49,31,95,.2);opacity:0;transform:translateY(calc(-50% + 55px)) scale(.9);transition:opacity .6s,transform .9s var(--ease-spring)}.complete-top{display:flex;align-items:center;gap:11px}.complete-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--rc-violet),var(--rc-coral));font:800 17px var(--font-display)}.complete-top small,.complete-top strong{display:block}.complete-top small{color:#8b8497;font-size:5px;font-weight:900;letter-spacing:.12em}.complete-top strong{margin-top:2px;font:700 14px var(--font-display)}.complete-top>span{width:34px;height:34px;margin-left:auto;display:grid;place-items:center;border-radius:50%;color:#fff;background:#28a77c;box-shadow:0 0 0 7px rgba(40,167,124,.1)}.complete-top svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.complete-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:20px}.complete-grid div{padding:12px;border-radius:12px;background:#f5f2f8}.complete-grid small,.complete-grid b{display:block}.complete-grid small{color:#8b8497;font-size:5px;font-weight:900;letter-spacing:.09em}.complete-grid b{margin-top:4px;font-size:8px}.complete-login{margin-top:12px;padding:12px;display:flex;align-items:center;gap:10px;border-radius:14px;color:#e8e3ff;background:#1b1433}.complete-login>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:#c7bfff;background:rgba(109,74,255,.2)}.complete-login small,.complete-login b{display:block}.complete-login small{color:rgba(255,255,255,.42);font-size:5px;font-weight:900;letter-spacing:.1em}.complete-login b{margin-top:2px;font-size:8px}.complete-login em{margin-left:auto;color:#9feacb;font-size:6px;font-style:normal;font-weight:900}.assembly-story[data-phase="3"] .assembly-layer{opacity:0;transform:translateY(-20px) scale(.82)}.assembly-story[data-phase="3"] .workspace-complete{opacity:1;transform:translateY(-50%) scale(1)}

.control-section{padding:120px 0;background:#0b071a}.control-heading{display:grid;grid-template-columns:1fr .7fr;align-items:end;gap:70px}.control-heading h2{margin:14px 0 0;font:700 clamp(43px,5vw,72px)/.96 var(--font-display);letter-spacing:-.055em}.control-heading h2 span{color:#a99aff}.control-heading p{margin:0;color:rgba(255,255,255,.58);font-size:17px;line-height:1.65}.control-console{margin-top:58px;border:1px solid rgba(255,255,255,.12);border-radius:27px;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));box-shadow:0 35px 90px rgba(0,0,0,.25)}.console-top{height:56px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.45);font-size:8px;font-weight:900;letter-spacing:.08em}.console-top>span{display:flex;align-items:center;gap:8px;color:#98e8c8}.console-top>span i{width:7px;height:7px;border-radius:50%;background:var(--rc-mint);box-shadow:0 0 0 5px rgba(112,225,178,.1)}.console-top b{color:#fff;font:700 12px var(--font-display)}.console-top em{font-style:normal}.console-event{min-height:82px;padding:0 22px;display:grid;grid-template-columns:80px 1px 40px 1fr auto;align-items:center;gap:18px;border-bottom:1px solid rgba(255,255,255,.08)}.console-event:last-child{border-bottom:0}.event-time{color:rgba(255,255,255,.4);font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace}.event-line{width:1px;height:100%;background:rgba(255,255,255,.08)}.event-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#bfb5ff;background:rgba(109,74,255,.14)}.event-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}.console-event small,.console-event strong{display:block}.console-event small{color:rgba(255,255,255,.43);font-size:6px;font-weight:900;letter-spacing:.13em}.console-event strong{margin-top:4px;font-size:11px}.console-event>em{padding:6px 9px;border-radius:8px;color:#9ce9c9;background:rgba(112,225,178,.09);font-size:6px;font-style:normal;font-weight:900;letter-spacing:.09em}
.console-top,.event-time,.console-event small { color:rgba(255,255,255,.62) }

.return-loop-cta{padding:120px 0 145px;background:radial-gradient(circle at 22% 52%,rgba(109,74,255,.18),transparent 31%),var(--rc-night);overflow:hidden}.return-loop-shell{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:75px}.return-loop-visual{position:relative;aspect-ratio:1;max-width:590px}.return-loop-visual>svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.return-track,.return-live{fill:none;stroke-width:2}.return-track{stroke:rgba(255,255,255,.08)}.return-live{stroke:url(#returnGradient);stroke-linecap:round;stroke-dasharray:.72 .28;stroke-dashoffset:1;transition:stroke-dashoffset 1.8s var(--ease-spring)}.return-loop-visual.visible .return-live{stroke-dashoffset:.18}.loop-center{position:absolute;left:50%;top:50%;width:245px;height:245px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid rgba(255,255,255,.13);border-radius:50%;background:radial-gradient(circle at 40% 30%,#34206d,#17102e 67%);box-shadow:0 0 0 25px rgba(109,74,255,.035),0 30px 70px rgba(0,0,0,.3);transform:translate(-50%,-50%)}.loop-center .brand-mark{width:48px;height:48px;margin-bottom:13px}.loop-center small{color:rgba(255,255,255,.43);font-size:6px;font-weight:900;letter-spacing:.15em}.loop-center strong{margin-top:7px;font:700 20px/1.08 var(--font-display)}.loop-node{position:absolute;width:84px;height:84px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(255,255,255,.16);border-radius:25px;color:#fff;background:rgba(24,15,49,.94);box-shadow:0 20px 45px rgba(0,0,0,.28);backdrop-filter:blur(16px)}.loop-node svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.6}.loop-node b{font-size:8px}.node-join{left:4%;top:14%;color:#a9ddff}.node-earn{right:3%;top:14%;color:#c7bfff}.node-delight{right:2%;bottom:12%;color:#ffad9a}.node-return{left:4%;bottom:12%;color:#a3edcf}.return-loop-copy h2{margin:16px 0 0;font:700 clamp(53px,6vw,88px)/.92 var(--font-display);letter-spacing:-.065em}.return-loop-copy h2 span{color:var(--rc-coral)}.return-loop-copy p{max-width:580px;margin:24px 0 0;color:rgba(255,255,255,.6);font-size:18px;line-height:1.65}

/* Merchant onboarding */
body.rc-onboarding { min-height: 100vh; min-height: 100dvh; overflow-x: hidden; color: #fff; background: var(--rc-night); }
.onboard-shell { min-height: 100vh; min-height: 100dvh; display: grid; grid-template-columns: 320px 1fr; }
.onboard-aside { position: sticky; top: 0; height: 100vh; height: 100dvh; padding: 28px; display: flex; flex-direction: column; overflow: hidden; border-right: 1px solid var(--rc-white-line); background: linear-gradient(170deg,#17102f,#0d081f); }
.onboard-aside::before { content:'';position:absolute;width:420px;height:420px;left:-240px;bottom:-100px;border-radius:50%;background:radial-gradient(circle,rgba(109,74,255,.38),transparent 70%) }
.onboard-aside .brand { position:relative;z-index:2; }
.onboard-progress { position:relative;z-index:2; margin: 64px 0 0; }
.progress-label { display:flex;justify-content:space-between;color:rgba(255,255,255,.45);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase }.progress-label strong{color:#fff}.progress-track{height:4px;margin:12px 0 28px;border-radius:6px;background:rgba(255,255,255,.09);overflow:hidden}.progress-track i{display:block;width:12.5%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--rc-violet),var(--rc-coral));transition:width .45s var(--ease-spring)}
.onboard-steps{display:grid;gap:6px;margin:0;padding:0;list-style:none}.onboard-steps li{min-height:48px;padding:0 11px;display:flex;align-items:center;gap:11px;border-radius:13px;color:rgba(255,255,255,.34);font-size:12px;font-weight:700;transition:.25s}.onboard-steps li span{width:26px;height:26px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);border-radius:9px;font-size:9px}.onboard-steps li.active{color:#fff;background:rgba(255,255,255,.08)}.onboard-steps li.active span{border-color:transparent;background:var(--rc-violet);box-shadow:0 8px 20px rgba(109,74,255,.3)}.onboard-steps li.done{color:rgba(255,255,255,.67)}.onboard-steps li.done span{color:#17102f;border-color:transparent;background:var(--rc-mint)}
.aside-note{position:relative;z-index:2;margin-top:auto;padding:17px;border:1px solid rgba(255,255,255,.1);border-radius:17px;color:rgba(255,255,255,.52);background:rgba(255,255,255,.045);font-size:11px;line-height:1.5}.aside-note svg{width:18px;height:18px;margin-bottom:8px;fill:none;stroke:var(--rc-mint);stroke-width:1.8}.aside-note strong{display:block;color:#fff;font-size:12px}.onboard-exit{position:relative;z-index:2;margin-top:16px;color:rgba(255,255,255,.42);font-size:11px;font-weight:700;text-decoration:none}.onboard-exit:hover{color:#fff}
.onboard-main{position:relative;min-width:0;min-height:100vh;padding:26px 40px 40px;background:radial-gradient(circle at 85% 5%,rgba(109,74,255,.16),transparent 32%),var(--rc-night)}.onboard-topbar{max-width:960px;margin:0 auto;display:flex;justify-content:flex-end;align-items:center;gap:13px;color:rgba(255,255,255,.45);font-size:11px}.onboard-topbar a{color:#fff;font-weight:800;text-decoration:none}.onboard-stage{width:min(960px,100%);min-height:calc(100vh - 90px);margin:10px auto 0;display:flex;align-items:center;justify-content:center}.wizard-step{display:none;width:100%;animation:step-in .38s var(--ease-spring)}.wizard-step.active{display:block}.step-copy{max-width:690px;margin-bottom:30px}.step-kicker{display:flex;align-items:center;gap:9px;color:#a99aff;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.step-kicker i{width:7px;height:7px;border-radius:50%;background:var(--rc-coral);box-shadow:0 0 0 5px rgba(255,120,90,.1)}.step-copy h1{margin:13px 0 11px;font:700 clamp(40px,5vw,68px)/.95 var(--font-display);letter-spacing:-.055em}.step-copy h1 span{color:#a99aff}.step-copy p{max-width:650px;margin:0;color:rgba(255,255,255,.56);font-size:16px;line-height:1.6}.step-copy p strong{color:#fff}
.model-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.model-option{position:relative;min-height:430px;padding:28px;overflow:hidden;text-align:left;border:1px solid rgba(255,255,255,.13);border-radius:30px;color:#fff;background:rgba(255,255,255,.05);cursor:pointer;transition:.3s var(--ease-spring)}.model-option:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.075)}.model-option.selected{border-color:#a99aff;box-shadow:0 0 0 3px rgba(109,74,255,.18),0 30px 80px rgba(0,0,0,.25)}.model-option:focus-visible{outline:3px solid var(--rc-sky);outline-offset:3px}.model-badge{position:absolute;right:22px;top:22px;padding:6px 9px;border:1px solid rgba(255,255,255,.14);border-radius:9px;color:rgba(255,255,255,.48);font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.model-visual{height:158px;display:flex;align-items:center;justify-content:center}.model-visual .big-icon{width:104px;height:104px;display:grid;place-items:center;border-radius:34px;transform:rotate(-7deg);box-shadow:0 25px 50px rgba(0,0,0,.26)}.model-visual svg{width:52px;height:52px;fill:none;stroke:currentColor;stroke-width:1.35}.model-option.stamps .big-icon{color:#ffb4a2;background:linear-gradient(145deg,#74301f,#bc4f35)}.model-option.points .big-icon{color:#d9d2ff;background:linear-gradient(145deg,#3a1f91,#7658ff)}.model-option h2{margin:12px 0 7px;font:700 32px var(--font-display);letter-spacing:-.04em}.model-option>p{min-height:68px;margin:0;color:rgba(255,255,255,.56);font-size:13px;line-height:1.5}.model-best{margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}.model-best small{display:block;color:rgba(255,255,255,.34);font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.model-best strong{display:block;margin-top:5px;font-size:11px;line-height:1.5}.model-check{position:absolute;right:21px;bottom:20px;width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:50%;opacity:.5}.model-check svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.3}.model-option.selected .model-check{color:#17102f;border-color:transparent;background:var(--rc-mint);opacity:1}
.form-card{padding:28px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(255,255,255,.055);box-shadow:0 28px 80px rgba(0,0,0,.18)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{display:block}.form-field.full{grid-column:1/-1}.form-field label,.form-field>.field-label{display:flex;justify-content:space-between;margin:0 0 8px;color:rgba(255,255,255,.72);font-size:11px;font-weight:800}.form-field label small,.form-field>.field-label small{color:rgba(255,255,255,.32);font-size:9px}.form-control{width:100%;height:54px;padding:0 16px;border:1px solid rgba(255,255,255,.13);border-radius:15px;outline:0;color:#fff;background:rgba(255,255,255,.055);transition:.2s}.form-control::placeholder{color:rgba(255,255,255,.27)}.form-control:hover{border-color:rgba(255,255,255,.22)}.form-control:focus{border-color:#967fff;box-shadow:0 0 0 4px rgba(109,74,255,.16);background:rgba(255,255,255,.075)}select.form-control{appearance:none;background-image:linear-gradient(45deg,transparent 50%,rgba(255,255,255,.55) 50%),linear-gradient(135deg,rgba(255,255,255,.55) 50%,transparent 50%);background-position:calc(100% - 18px) 23px,calc(100% - 13px) 23px;background-size:5px 5px;background-repeat:no-repeat}select.form-control option{color:var(--rc-ink);background:#fff}.form-help{display:block;margin-top:7px;color:rgba(255,255,255,.34);font-size:10px;line-height:1.4}.form-error{display:none;margin-top:7px;color:#ff9a84;font-size:10px;font-weight:700}.form-field.invalid .form-control{border-color:#ff785a;box-shadow:0 0 0 3px rgba(255,120,90,.1)}.form-field.invalid .form-error{display:block}.field-with-suffix{position:relative}.field-with-suffix .form-control{padding-right:85px}.field-suffix{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.36);font-size:10px;font-weight:800}.password-toggle{position:absolute;right:7px;top:7px;width:40px;height:40px;border:0;border-radius:10px;color:rgba(255,255,255,.55);background:transparent;cursor:pointer}.password-toggle:hover{background:rgba(255,255,255,.08);color:#fff}.password-toggle svg{width:20px;height:20px;margin:auto;fill:none;stroke:currentColor;stroke-width:1.7}.password-field .form-control{padding-right:52px}.color-picker{display:flex;align-items:center;gap:9px}.color-swatch{width:38px;height:38px;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:.2s}.color-swatch.selected{border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.12)}.color-swatch:focus-visible{outline:3px solid var(--rc-sky);outline-offset:2px}.dependency-note{margin-top:18px;padding:15px 17px;display:flex;gap:12px;border:1px solid rgba(112,225,178,.14);border-radius:15px;color:rgba(255,255,255,.49);background:rgba(112,225,178,.06);font-size:11px;line-height:1.5}.dependency-note svg{width:20px;height:20px;flex:none;fill:none;stroke:var(--rc-mint);stroke-width:1.8}.dependency-note strong{display:block;color:#fff}.live-preview{margin-top:20px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(0,0,0,.12)}.live-preview-label{margin-bottom:12px;color:rgba(255,255,255,.34);font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.tier-preview{display:flex;align-items:center;gap:13px}.tier-preview-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:var(--preview-color,var(--rc-violet));box-shadow:0 10px 24px color-mix(in srgb,var(--preview-color,var(--rc-violet)) 35%,transparent)}.tier-preview-icon svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:1.8}.tier-preview b,.tier-preview small{display:block}.tier-preview small{margin-top:2px;color:rgba(255,255,255,.42);font-size:9px}.reward-preview{display:flex;align-items:center;gap:13px}.reward-preview span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;color:#ffad9b;background:rgba(255,120,90,.13)}.reward-preview svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7}.reward-preview b,.reward-preview small{display:block}.reward-preview small{margin-top:2px;color:rgba(255,255,255,.42);font-size:9px}
.portal-later{margin-top:20px;padding:22px;border:1px solid rgba(109,74,255,.22);border-radius:21px;background:linear-gradient(135deg,rgba(109,74,255,.13),rgba(255,120,90,.05))}.portal-later>span{color:#a99aff;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.portal-later h3{margin:7px 0 4px;font:700 17px var(--font-display)}.portal-later p{margin:0;color:rgba(255,255,255,.43);font-size:11px}.later-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:15px}.later-grid span{min-height:66px;padding:10px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.08);border-radius:13px;color:rgba(255,255,255,.62);background:rgba(255,255,255,.035);font-size:9px;font-weight:700}.later-grid svg{width:19px;height:19px;flex:none;fill:none;stroke:#a99aff;stroke-width:1.6}
.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.review-card{padding:17px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(255,255,255,.045)}.review-card span{display:block;color:rgba(255,255,255,.34);font-size:8px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.review-card strong{display:block;margin-top:7px;font-size:13px}.review-card small{display:block;margin-top:3px;color:rgba(255,255,255,.42);font-size:9px}.terms-note{margin-top:15px;color:rgba(255,255,255,.32);font-size:9px;line-height:1.5}.submit-error{display:none;margin-top:14px;padding:13px 15px;border:1px solid rgba(255,120,90,.24);border-radius:13px;color:#ffb09e;background:rgba(255,120,90,.08);font-size:11px;font-weight:700}.submit-error.show{display:block}
.wizard-actions{margin-top:25px;display:flex;align-items:center;justify-content:space-between;gap:14px}.wizard-back{min-height:50px;padding:0 17px;border:1px solid rgba(255,255,255,.12);border-radius:14px;color:rgba(255,255,255,.7);background:transparent;font-weight:800;cursor:pointer}.wizard-back:hover{color:#fff;background:rgba(255,255,255,.06)}.wizard-back[hidden]{visibility:hidden;display:inline-flex}.wizard-next{margin-left:auto;min-width:150px}.wizard-next[disabled]{opacity:.5;cursor:not-allowed;transform:none}.wizard-next.loading{pointer-events:none}.wizard-next.loading::before{content:'';width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}
.success-panel{text-align:center}.success-burst{position:relative;width:160px;height:160px;margin:0 auto 25px;display:grid;place-items:center}.success-ring{position:relative;z-index:2;width:106px;height:106px;display:grid;place-items:center;border-radius:36px;color:#fff;background:linear-gradient(145deg,#28a77c,#69d7ac);box-shadow:0 0 0 18px rgba(112,225,178,.08),0 28px 60px rgba(0,0,0,.28);transform:rotate(-5deg)}.success-ring svg{width:52px;height:52px;fill:none;stroke:currentColor;stroke-width:2}.success-burst i{position:absolute;width:7px;height:22px;border-radius:4px;background:var(--rc-coral)}.success-burst i:nth-child(2){left:5px;top:25px;transform:rotate(-47deg)}.success-burst i:nth-child(3){right:3px;top:31px;background:var(--rc-gold);transform:rotate(48deg)}.success-burst i:nth-child(4){left:21px;bottom:13px;background:var(--rc-violet);transform:rotate(38deg)}.success-burst i:nth-child(5){right:18px;bottom:10px;background:var(--rc-sky);transform:rotate(-34deg)}.success-panel h1{margin:0;font:700 clamp(42px,6vw,72px)/.95 var(--font-display);letter-spacing:-.055em}.success-panel>p{max-width:620px;margin:16px auto 0;color:rgba(255,255,255,.55);font-size:15px;line-height:1.6}.credentials-card{max-width:650px;margin:28px auto 0;padding:23px;text-align:left;border:1px solid rgba(255,255,255,.14);border-radius:23px;background:rgba(255,255,255,.065);box-shadow:0 25px 70px rgba(0,0,0,.2)}.credentials-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.credentials-head span{color:#a99aff;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.full-role-pill{padding:6px 9px;border-radius:9px;color:#b9f4dd;background:rgba(112,225,178,.1);font-size:8px!important}.credential-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-top:1px solid rgba(255,255,255,.08)}.credential-row span{color:rgba(255,255,255,.39);font-size:10px;font-weight:700}.credential-row strong{font-size:12px}.credential-note{margin:11px 0 0;color:rgba(255,255,255,.35);font-size:9px;line-height:1.5}.success-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:13px;margin-top:24px}.ready-list{max-width:650px;margin:20px auto 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:left;list-style:none}.ready-list li{padding:10px 12px;display:flex;gap:8px;border-radius:12px;color:rgba(255,255,255,.53);background:rgba(255,255,255,.035);font-size:9px}.ready-list svg{width:15px;height:15px;flex:none;fill:none;stroke:var(--rc-mint);stroke-width:2}
/* Functional onboarding copy stays readable even at compact helper-label sizes. */
.onboard-steps li,
.onboard-exit,
.model-best small,
.form-field label small,
.form-field > .field-label small,
.form-help,
.field-suffix,
.live-preview-label,
.tier-preview small,
.reward-preview small,
.portal-later p,
.review-card span,
.review-card small,
.terms-note,
.credential-row span,
.credential-note { color: rgba(255,255,255,.58); }
.form-control::placeholder { color: rgba(255,255,255,.5); }
@keyframes step-in{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}

@media (max-width: 1100px) {
  .nav-links { gap: 17px; }.nav-links a { font-size:12px }.hero-grid{grid-template-columns:1fr}.hero{padding-top:145px}.hero-copy{max-width:770px;padding-bottom:0}.hero-art{width:min(760px,100%);margin:0 auto;min-height:570px}.portal-window{right:0}.bento-customer,.bento-insights{grid-column:span 6}.bento-tier,.bento-engage{grid-column:span 6}.bento-ops{grid-template-columns:1fr 1.2fr}.onboard-shell{grid-template-columns:260px 1fr}.onboard-aside{padding:22px}.onboard-main{padding-left:28px;padding-right:28px}
}

@media (max-height: 760px) and (min-width: 861px) {
  .story-shell,.integration-story-shell,.assembly-shell { padding-top:84px;padding-bottom:22px }
  .story-copy-stack { min-height:330px }.story-copy h2{font-size:43px}.story-copy p{font-size:14px}
  .customer-system { height:60vh;min-height:455px }.customer-passport{transform:translate(-50%,-50%) rotateY(-7deg) scale(.9)}
  .integration-story-heading h2,.assembly-heading h2 { font-size:41px }
  .data-flow { min-height:330px }.flow-terminal{transform:translateY(-50%) scale(.86)}.flow-engine{transform:translate(-50%,-50%) scale(.86)}.flow-phone{transform:translateY(-50%) scale(.84)}
  .integration-story[data-phase="2"] .flow-phone,.integration-story[data-phase="3"] .flow-phone{transform:translateY(-50%) scale(.88)}
  .integration-copy-track article{padding:11px 12px}.integration-copy-track p{display:none}
  .assembly-stage{height:58vh;min-height:440px}.assembly-copy-stack h3{font-size:31px}.assembly-copy-stack p{font-size:13px}
}
@media (max-width: 860px) {
  .section-shell,.site-nav{width:min(100% - 32px,1240px)}.section{padding:90px 0}.site-nav{top:10px;height:60px}.brand-mark{width:38px;height:38px;border-radius:12px}.brand-name{font-size:17px}.nav-login,.site-nav .button-sm{display:none}.nav-toggle{display:inline-flex}.nav-links{position:fixed;left:16px;right:16px;top:80px;padding:18px;display:none;flex-direction:column;align-items:stretch;gap:4px;border:1px solid rgba(25,20,45,.1);border-radius:20px;color:var(--rc-ink);background:rgba(255,253,249,.97);box-shadow:0 25px 60px rgba(20,12,47,.2);backdrop-filter:blur(18px)}.nav-links.open{display:flex}.nav-links a{padding:13px;border-radius:11px;font-size:14px}.nav-links a:hover{background:var(--rc-violet-soft)}.site-nav:not(.scrolled) .nav-toggle{background:rgba(255,255,255,.1)}.site-nav.scrolled .nav-toggle{background:var(--rc-violet-soft)}.hero{min-height:0}.hero h1{font-size:clamp(58px,13vw,90px)}.portal-window{width:650px;max-width:92%;right:4%;}.chip-one{left:1%}.chip-two{right:0}.section-heading.split{grid-template-columns:1fr;gap:20px}.choice-stage{grid-template-columns:1fr}.choice-or{top:50%;}.bento-grid{display:block}.bento{margin-bottom:16px;min-height:390px}.bento-ops{display:block;min-height:440px}.ops-flow{margin:20px 30px}.integration-stage{transform:scale(.78);margin:-55px auto}.integration-notes{grid-template-columns:1fr}.integration-notes article{border-right:0;border-bottom:1px solid var(--rc-white-line)}.journey-grid{grid-template-columns:1fr}.journey-step{min-height:0}.trust-grid{grid-template-columns:1fr;gap:28px}.final-cta-inner{grid-template-columns:1fr}.cta-gift{height:300px}.footer-grid{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.onboard-shell{display:block}.onboard-aside{position:sticky;z-index:30;top:0;width:100%;height:auto;padding:13px 18px;border-right:0;border-bottom:1px solid var(--rc-white-line);background:rgba(16,11,36,.9);backdrop-filter:blur(16px)}.onboard-aside .brand-name small,.onboard-steps,.aside-note,.onboard-exit{display:none}.onboard-progress{margin:10px 0 0}.progress-track{margin:7px 0 0}.onboard-main{padding:18px}.onboard-topbar{margin-top:3px}.onboard-stage{min-height:calc(100vh - 130px);min-height:calc(100dvh - 130px);padding:38px 0}.model-option{min-height:400px}.later-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 600px) {
  .section-shell,.site-nav{width:calc(100% - 24px)}.section{padding:72px 0}.section-heading{margin-bottom:36px}.section-heading h2{font-size:42px}.section-heading p{font-size:16px}.hero{padding-top:120px}.hero-grid{display:block}.hero h1{font-size:59px}.hero-lede{font-size:17px}.hero-actions{align-items:stretch;gap:14px}.hero-actions .button{width:100%}.hero-actions .text-link{justify-content:center}.hero-proof{margin-top:30px}.hero-art{min-height:440px;margin-top:25px}.portal-window{right:-80px;top:70px;width:600px;transform:scale(.72) rotate(-2.4deg);transform-origin:left top}.reward-chip{min-width:160px}.chip-one{top:45px}.chip-two{bottom:28px;right:0}.coin-a{right:10px}.hero-marquee{margin-top:0}.choice-art{height:280px}.stamp-ticket{width:87%;padding:20px}.stamp-dots i{width:27px;height:27px}.choice-body{padding:27px}.choice-body p{min-height:0}.choice-or{width:54px;height:54px;border-width:6px}.choice-cta{align-items:stretch;flex-direction:column;padding:20px}.bento{min-height:400px}.bento-copy{padding:27px}.customer-stack{left:24px;right:24px}.bento-tier{min-height:390px}.tier-rail{left:19px;right:19px}.tier-node span{width:49px;height:49px;border-radius:17px}.chart-card{left:24px;right:24px}.engage-cards{left:22px;right:22px;grid-template-columns:1fr}.game-token{display:none}.bento-ops{min-height:550px}.ops-flow{margin:15px;flex-direction:column}.ops-flow>span{width:100%;height:84px;border-radius:22px}.ops-flow>i{width:2px;height:28px}.ops-flow>i::after{display:none}.integration-stage{height:470px;transform:scale(.58);margin:-100px auto;width:750px;left:50%;translate:-50% 0}.integration-notes{margin-top:-75px}.trust-stats{grid-template-columns:1fr}.trust-stats div{border-left:0;border-top:1px solid var(--rc-line)}.final-cta{padding:80px 0}.cta-gift{height:250px}.gift-box{transform:translate(-50%,-45%) rotate(-5deg) scale(.78)}.final-cta h2{font-size:51px}.footer-links{gap:14px}.model-grid{grid-template-columns:1fr}.model-option{min-height:360px;padding:22px}.model-visual{height:120px}.model-visual .big-icon{width:84px;height:84px;border-radius:27px}.model-visual svg{width:42px;height:42px}.model-option>p{min-height:0}.form-card{padding:20px}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.later-grid{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr}.wizard-actions{position:sticky;z-index:10;bottom:8px;padding:8px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(16,11,36,.88);backdrop-filter:blur(14px)}.step-copy h1{font-size:42px}.ready-list{grid-template-columns:1fr}.credential-row{align-items:flex-start;flex-direction:column;gap:4px}.onboard-topbar span{display:none}
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
  .portal-window { transform: rotate(-2deg); }
}

/* Motion-story responsive composition. Tablets and phones receive a composed,
   readable story rather than a miniature desktop scroll scene. */
@media (max-width: 1100px) {
  .hero-cinema { width:min(760px,100%);margin:38px auto 0 }
  .story-layout,.assembly-layout { gap:30px }
  .story-copy h2 { font-size:48px }
  .customer-passport { width:340px }
  .asset-visit { left:-3% }
  .integration-story-heading h2,.assembly-heading h2 { font-size:48px }
  .flow-terminal { width:210px }.flow-phone{width:190px}.flow-engine{width:190px;height:190px}
  .integration-copy-track article { padding:15px 12px }
  .return-loop-shell { gap:35px }
}

@media (max-width: 860px), (prefers-reduced-motion: reduce) {
  .hero-pulse-dot { display:none }
  .scroll-story { height:auto !important;padding:88px 0 }
  .story-sticky { position:relative;top:auto;height:auto;overflow:visible }
  .story-shell,.integration-story-shell,.assembly-shell { height:auto;padding-top:0;padding-bottom:0 }
  .story-intro,.integration-story-heading,.assembly-heading { align-items:flex-start;flex-direction:column }
  .story-progress { display:none }
  .story-layout,.assembly-layout { display:block }
  .story-copy-stack,.assembly-copy-stack { min-height:0;margin-top:55px }
  .story-copy,.assembly-copy-stack article { position:relative;top:auto;max-width:680px;margin-bottom:46px;opacity:1;transform:none;pointer-events:auto }
  .story-copy h2 { font-size:46px }
  .story-copy p { font-size:16px }

  .customer-system { height:640px;min-height:0;margin-top:12px }
  .customer-passport { left:50%;top:28%;width:min(390px,88%);opacity:1 !important;filter:none !important;transform:translate(-50%,-50%) rotate(-2deg) !important }
  .customer-system .system-asset { display:none }
  .customer-system .asset-insight { display:block;left:4%;right:4%;top:auto;bottom:0;height:290px;opacity:1;transform:none }
  .customer-system .asset-insight>svg { height:62% }

  .integration-story { padding-top:90px;padding-bottom:90px }
  .integration-story-heading { margin-bottom:45px }
  .data-flow { display:grid;grid-template-columns:1fr;gap:18px;min-height:0;margin:0 }
  .flow-lines,.flow-packet { display:none }
  .flow-node { position:relative;left:auto;right:auto;top:auto;width:min(100%,420px);margin:0 auto;transform:none !important }
  .flow-terminal { order:1 }
  .flow-engine { order:2;height:220px }
  .flow-phone { order:3;height:390px }
  .wallet-update,.whatsapp-update { opacity:1;transform:none }
  .integration-copy-track { grid-template-columns:1fr;margin-top:45px }
  .integration-copy-track article { padding:22px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.1);opacity:1;background:none }
  .integration-copy-track strong { font-size:16px }.integration-copy-track p{font-size:13px;max-width:620px }

  .assembly-layout { margin-top:46px }
  .assembly-stage { height:480px;min-height:0 }
  .assembly-stage .assembly-layer { display:none }
  .workspace-complete { opacity:1;transform:translateY(-50%) scale(1) }

  .control-heading { grid-template-columns:1fr;gap:22px }
  .return-loop-shell { grid-template-columns:1fr }
  .return-loop-visual { width:min(590px,100%);margin:0 auto }
  .return-loop-copy { max-width:700px;margin:0 auto;text-align:center }
  .return-loop-copy .eyebrow,.return-loop-copy .hero-actions { justify-content:center }
}

@media (max-width: 600px) {
  .hero-cinema { min-height:570px;margin-top:35px;border-radius:28px }
  .hero-loop-line { display:none }
  .hero-device { top:48%;transform:translate(-50%,-50%) rotate(-1deg) scale(.82) }
  .hero-cinema[data-hero-scene="3"] .hero-device { transform:translate(-50%,-50%) rotate(1deg) scale(.82) }
  .hero-event { min-width:158px;padding:9px;border-radius:14px }
  .hero-event>span { width:34px;height:34px;border-radius:11px }
  .hero-event strong { font-size:9px }.hero-event em{font-size:6px}
  .event-purchase { left:3%;top:6% }.event-earned{right:2%;top:7%}.event-unlocked{right:2%;bottom:10%}.event-return{left:2%;bottom:10%}
  .hero-story-index { width:90%;bottom:13px }
  .hero-scroll-cue { height:60px }

  .scroll-story { padding:72px 0 }
  .story-copy-stack,.assembly-copy-stack { margin-top:42px }
  .story-copy,.assembly-copy-stack article { margin-bottom:38px }
  .story-copy h2 { font-size:39px }.story-copy p{font-size:15px}
  .customer-system { height:580px }
  .customer-passport { width:94%;padding:18px }
  .passport-meta { gap:5px }.passport-meta>span{padding:8px}
  .customer-system .asset-insight { left:0;right:0;height:260px;padding:19px }

  .integration-story-heading h2,.assembly-heading h2 { font-size:40px }
  .flow-node { width:100% }
  .complete-grid { grid-template-columns:1fr 1fr }
  .workspace-complete { left:4%;right:4%;padding:18px }
  .complete-login { align-items:flex-start }.complete-login em{max-width:80px;text-align:right}

  .control-section { padding:80px 0 }
  .control-heading h2 { font-size:45px }.control-heading p{font-size:15px}
  .control-console { margin-top:38px }
  .console-top { padding:0 15px }.console-top>b{display:none}
  .console-event { padding:14px 15px;grid-template-columns:1px 36px 1fr;gap:12px }
  .event-time,.console-event>em { display:none }
  .event-line { grid-column:1 }.event-icon{grid-column:2}.console-event>div{grid-column:3}

  .return-loop-cta { padding:75px 0 90px }
  .return-loop-visual { transform:scale(.94) }
  .loop-center { width:190px;height:190px }.loop-center strong{font-size:17px}
  .loop-node { width:68px;height:68px;border-radius:20px }.loop-node svg{width:21px;height:21px}
  .return-loop-copy h2 { font-size:53px }.return-loop-copy p{font-size:16px}
}

@media (prefers-reduced-motion: reduce) {
  .hero-cinema { --hero-index:300% !important }
  .hero-cinema .event-purchase,.hero-cinema .event-earned,.hero-cinema .event-unlocked { display:none }
  .hero-cinema .event-return { opacity:1;transform:none }
  .hero-cinema .balance-before { opacity:0 }.hero-cinema .balance-after{opacity:1;transform:none}
  .hero-cinema .wallet-track i{width:84%}.hero-cinema .device-return{opacity:1;transform:none}
  .return-live { stroke-dashoffset:.18 }
}

/* ============================================================
   FILM — the explainer. One visit, played start to return.
   Scroll scrubs the timeline; JS feeds --pay/--earn/--rise/--gift/--ret (0..1)
   and toggles .paid/.gold/.popped at their story beats.
   ============================================================ */
.film-story{height:540vh;--pay:0;--earn:0;--rise:0;--gift:0;--ret:0}
.film-story .story-sticky{background:radial-gradient(circle at 50% 42%,rgba(109,74,255,.17),transparent 40%),#0c0719;color:#fff}
.film-words{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.film-words span{grid-area:1/1;font:800 clamp(120px,22vw,320px)/1 var(--font-display);letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.062);opacity:0;transform:translateY(70px) scale(.93);transition:opacity .55s,transform .95s var(--ease-spring)}
.film-story[data-phase="0"] .film-words span:nth-child(1),.film-story[data-phase="1"] .film-words span:nth-child(2),.film-story[data-phase="2"] .film-words span:nth-child(3),.film-story[data-phase="3"] .film-words span:nth-child(4),.film-story[data-phase="4"] .film-words span:nth-child(5){opacity:1;transform:none}
.film-shell{position:relative;height:100%;padding-top:102px;padding-bottom:30px;display:flex;flex-direction:column}
.film-head{display:flex;align-items:center;justify-content:space-between;gap:30px}
.film-stage{position:relative;flex:1;min-height:400px;margin:8px 0 14px}
.film-canvas{position:absolute;inset:0;z-index:9;width:100%;height:100%;pointer-events:none}
.film-loop{position:absolute;left:0;top:2%;z-index:1;width:100%;height:96%;overflow:visible}
.film-loop-track,.film-loop-live{fill:none;stroke-width:2;vector-effect:non-scaling-stroke;stroke-linecap:round}
.film-loop-track{stroke:rgba(255,255,255,.055)}
.film-loop-live{stroke:url(#filmLoopGradient);stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--ret));opacity:clamp(0,calc(var(--ret)*6),.85)}

.film-receipt{position:absolute;z-index:4;left:3%;top:50%;width:236px;padding:18px;border-radius:19px;color:#2b2115;background:#fffdf4;box-shadow:0 32px 75px rgba(0,0,0,.4);opacity:var(--pay);transform:translateY(-50%) translateX(calc(-150px + 150px*var(--pay))) rotate(calc(-13deg + 10deg*var(--pay)))}
.film-receipt::after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:8px;background:linear-gradient(-45deg,transparent 6px,#fffdf4 0) repeat-x left bottom/14px 8px}
.film-receipt-head{display:flex;justify-content:space-between;padding-bottom:11px;border-bottom:1px dashed rgba(43,33,21,.25);font-size:8px;font-weight:900;letter-spacing:.1em}
.film-receipt-head i{color:#93805f;font-style:normal}
.film-rline{display:flex;justify-content:space-between;margin-top:11px;color:#6f5f45;font-size:10px}
.film-rline b{color:#2b2115}
.film-rtotal{margin-top:14px;padding-top:12px;display:flex;align-items:end;justify-content:space-between;border-top:1px dashed rgba(43,33,21,.25)}
.film-rtotal span{color:#93805f;font-size:7px;font-weight:900;letter-spacing:.1em}
.film-rtotal strong{font:700 16px var(--font-display);font-variant-numeric:tabular-nums}
.film-rtotal em{font-style:normal}
.film-paid-stamp{position:absolute;right:12px;top:34px;padding:5px 9px;border:2px solid rgba(194,80,56,.55);border-radius:8px;color:rgba(194,80,56,.8);font-size:11px;font-weight:900;letter-spacing:.22em;opacity:0;transform:rotate(-12deg) scale(2.1);transition:opacity .3s,transform .45s var(--ease-spring)}
.film-story.paid .film-paid-stamp{opacity:1;transform:rotate(-12deg) scale(1)}

.film-card{position:absolute;z-index:3;left:50%;top:46%;width:min(432px,44%);padding:26px 28px;border-radius:31px;color:#fff;background:linear-gradient(140deg,#21115d,#6d4aff 57%,#c46ec7);box-shadow:0 45px 110px rgba(24,10,66,.55);transform:translate(-50%,-50%) rotate(calc(-2deg + 2deg*var(--rise))) scale(calc(.97 + .07*var(--rise) - .04*var(--ret)));transition:box-shadow .7s}
.film-card::before{content:'';position:absolute;width:280px;height:280px;right:-120px;top:-150px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.02)}
.film-story.gold .film-card{box-shadow:0 45px 110px rgba(24,10,66,.5),0 0 70px rgba(242,193,78,.22)}
.film-card-sheen{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 32%,rgba(255,230,160,.5) 50%,transparent 68%) no-repeat;background-size:250% 100%;background-position:calc(180% - var(--rise)*260%) 0;opacity:calc(var(--rise)*(1 - var(--rise))*4 * .8 + var(--rise)*.12);mix-blend-mode:screen;pointer-events:none}
.film-card-head,.film-card-foot{position:relative;display:flex;justify-content:space-between;font-size:9px;font-weight:900;letter-spacing:.15em}
.film-card-balance{position:relative;margin-top:44px}
.film-card-balance small{display:block;opacity:.62;font-size:8px;font-weight:900;letter-spacing:.15em}
.film-card-balance strong{position:relative;display:block;font:800 clamp(42px,4.5vw,58px)/1.05 var(--font-display);letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.film-earn-chip{position:absolute;right:0;bottom:14px;padding:6px 10px;border-radius:11px;color:#ffefc4;background:rgba(242,193,78,.22);border:1px solid rgba(242,193,78,.4);font-size:14px;font-weight:900;letter-spacing:.02em;opacity:calc(var(--earn)*(1 - var(--earn))*4);transform:translateY(calc(12px - 46px*var(--earn)))}
.film-card-track{position:relative;height:6px;margin:12px 0 22px;border-radius:8px;background:rgba(255,255,255,.16);overflow:hidden}
.film-card-track i{display:block;width:calc(58% + 26%*var(--earn));height:100%;border-radius:inherit;background:linear-gradient(90deg,#fff,#f2c14e)}
.film-tier{position:relative;display:inline-block;min-width:56px;height:12px;text-align:right}
.film-tier span{position:absolute;right:0;top:0;font-size:9px;font-weight:900;letter-spacing:.15em;transition:opacity .4s,transform .6s var(--ease-spring)}
.film-tier .tier-gold{color:var(--rc-gold);opacity:0;transform:translateY(13px)}
.film-story.gold .film-tier span:first-child{opacity:0;transform:translateY(-13px)}
.film-story.gold .film-tier .tier-gold{opacity:1;transform:none}

.film-gift{position:absolute;z-index:2;left:50%;top:43%;display:flex;flex-direction:column;align-items:center;gap:15px;opacity:clamp(0,calc(var(--gift)*2.2),1);transform:translate(-50%,calc(-50% - 178px*var(--gift))) scale(calc(.45 + .55*var(--gift)))}
.film-gift-box{position:relative;width:104px;height:92px;border-radius:19px;background:linear-gradient(145deg,#7b5cff,#4b2bd1);box-shadow:0 30px 65px rgba(0,0,0,.45)}
.film-gift-box .gift-ribbon{position:absolute;left:50%;top:0;bottom:0;width:20px;transform:translateX(-50%);background:linear-gradient(#ff967e,#ff6f51)}
.film-gift-box .gift-lid{position:absolute;z-index:2;left:-8px;right:-8px;top:-15px;height:30px;border-radius:11px;background:linear-gradient(145deg,#957cff,#5c39df);box-shadow:0 8px 20px rgba(0,0,0,.28);transition:transform .55s var(--ease-spring)}
.film-gift-box svg{position:absolute;z-index:1;left:50%;top:50%;width:36px;height:36px;transform:translate(-50%,-46%);fill:none;stroke:#fff;stroke-width:1.5}
.film-story.popped .film-gift-box .gift-lid{transform:translate(22px,-32px) rotate(14deg)}
@keyframes gift-pop{0%{transform:scale(1)}38%{transform:scale(1.14)}100%{transform:scale(1)}}
.film-story.popped .film-gift-box{animation:gift-pop .5s var(--ease-spring)}
.film-story.popped .film-gift{z-index:5}
.film-gift-tag{padding:10px 14px;text-align:center;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(21,13,45,.85);backdrop-filter:blur(14px);opacity:0;transform:translateY(14px);transition:opacity .4s,transform .6s var(--ease-spring)}
.film-gift-tag small{display:block;color:#ffb59f;font-size:7px;font-weight:900;letter-spacing:.16em}
.film-gift-tag b{display:block;margin-top:3px;font:700 13px var(--font-display)}
.film-story.popped .film-gift-tag{opacity:1;transform:none}

.film-return{position:absolute;z-index:4;right:2%;top:50%;min-width:232px;padding:14px 16px 14px 12px;display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.18);border-radius:19px;background:rgba(21,13,45,.85);box-shadow:0 25px 60px rgba(0,0,0,.35);backdrop-filter:blur(16px);opacity:var(--ret);transform:translateY(-50%) translateX(calc(130px - 130px*var(--ret)))}
.film-return>span{width:44px;height:44px;display:grid;place-items:center;flex:none;border-radius:14px;color:#a3edcf;background:rgba(112,225,178,.14)}
.film-return svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}
.film-return small,.film-return b{display:block}
.film-return small{color:rgba(255,255,255,.5);font-size:7px;font-weight:900;letter-spacing:.13em}
.film-return b{margin-top:3px;font-size:12px}

.film-copy-track{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;border-top:1px solid rgba(255,255,255,.11)}
.film-copy-track article{padding:17px 18px;border-right:1px solid rgba(255,255,255,.11);opacity:.34;transition:opacity .45s,background .45s}
.film-copy-track article:last-child{border-right:0}
.film-copy-track article.active{opacity:1;background:linear-gradient(180deg,rgba(109,74,255,.1),transparent)}
.film-copy-track span{color:#a99aff;font-size:7px;font-weight:900;letter-spacing:.13em}
.film-copy-track strong{display:block;margin-top:7px;font:700 13px/1.25 var(--font-display)}
.film-copy-track p{margin:6px 0 0;color:rgba(255,255,255,.55);font-size:9px;line-height:1.45}

@media (max-height:760px) and (min-width:861px){
  .film-shell{padding-top:84px;padding-bottom:20px}
  .film-stage{min-height:330px}
  .film-card{width:min(370px,42%);padding:20px 22px}
  .film-card-balance{margin-top:30px}
  .film-words span{font-size:clamp(110px,17vw,190px)}
  .film-copy-track article{padding:11px 12px}
  .film-copy-track p{display:none}
}
@media (max-width:1100px){
  .film-card{width:min(390px,46%)}
  .film-receipt{width:206px}
  .film-return{min-width:210px}
}
@media (max-width:860px),(prefers-reduced-motion:reduce){
  .film-words,.film-canvas,.film-loop{display:none}
  .film-shell{height:auto;padding:0}
  .film-stage{min-height:0;margin:42px 0 12px;display:flex;flex-direction:column;align-items:center;gap:22px}
  .film-receipt,.film-card,.film-gift,.film-return{position:relative;left:auto;right:auto;top:auto;opacity:1;transform:none}
  .film-receipt{order:1;width:min(280px,100%)}
  .film-card{order:2;width:min(432px,100%)}
  .film-gift{order:3;flex-direction:row;gap:18px}
  .film-gift-box{width:76px;height:66px;border-radius:15px}
  .film-gift-box .gift-lid{top:-11px;height:22px}
  .film-gift-box svg{width:27px;height:27px}
  .film-return{order:4}
  .film-earn-chip{opacity:1;transform:none}
  .film-card-track i{width:84%}
  .film-card-sheen{display:none}
  .film-paid-stamp{opacity:1;transform:rotate(-12deg) scale(1)}
  .film-tier span:first-child{opacity:0}
  .film-tier .tier-gold{opacity:1;transform:none}
  .film-gift-box .gift-lid{transform:translate(20px,-30px) rotate(16deg)}
  .film-gift-tag{opacity:1;transform:none}
  .film-copy-track{grid-template-columns:1fr;margin-top:38px}
  .film-copy-track article{padding:20px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.1);opacity:1;background:none}
  .film-copy-track strong{font-size:16px}
  .film-copy-track p{font-size:13px;max-width:620px}
}
@media (max-width:600px){
  .film-stage{margin-top:34px}
  .film-card{padding:20px}
  .film-card-balance{margin-top:32px}
  .film-card-balance strong{font-size:44px}
}

/* Integration chapter — the final beat is a customer return moment, not a dead-end handoff. */
.integration-story .story-sticky::before,.integration-story .story-sticky::after{content:'';position:absolute;z-index:0;pointer-events:none;border-radius:50%;filter:blur(1px)}
.integration-story .story-sticky::before{width:680px;height:680px;left:50%;top:43%;background:radial-gradient(circle,rgba(139,91,255,.15),rgba(139,91,255,.035) 43%,transparent 70%);transform:translate(-50%,-50%)}
.integration-story .story-sticky::after{width:400px;height:400px;right:-180px;top:8%;background:radial-gradient(circle,rgba(112,225,178,.1),transparent 68%)}
.integration-story-shell{position:relative;z-index:1;isolation:isolate}
.data-flow::before{content:'';position:absolute;left:22%;right:15%;top:50%;height:1px;background:linear-gradient(90deg,transparent,rgba(121,199,255,.22) 25%,rgba(139,91,255,.33) 50%,rgba(112,225,178,.22) 76%,transparent);box-shadow:0 0 28px rgba(139,91,255,.16);transform:translateY(-50%);pointer-events:none}
.flow-lines{filter:drop-shadow(0 0 13px rgba(139,91,255,.1))}
.flow-path{transition:stroke .5s,opacity .5s,stroke-dashoffset 1.1s var(--ease-spring)}
.flow-return{stroke:url(#flowGradient);stroke-width:2.5;stroke-dasharray:1;stroke-dashoffset:1;opacity:0}
.integration-story[data-phase="3"] .flow-return{stroke-dashoffset:0;opacity:.9}
.integration-story[data-phase="3"] .path-message{stroke:rgba(112,225,178,.42)}
.integration-story[data-phase="3"] .flow-terminal{border-color:rgba(121,199,255,.3);transform:translateY(-50%) scale(.92);opacity:.62}
.integration-story[data-phase="3"] .flow-engine{transform:translate(-50%,-42%) scale(.9);border-color:rgba(112,225,178,.5);background:radial-gradient(circle at 40% 30%,#7b5cff,#292052 62%,#17102e)}
.integration-story[data-phase="3"] .flow-phone{transform:translateY(-34%) scale(.9)}
.relationship-moment{position:absolute;z-index:10;right:-1%;top:3%;width:265px;padding:18px 18px 16px;overflow:hidden;border:1px solid rgba(164,237,207,.28);border-radius:23px;color:#fff;background:linear-gradient(145deg,rgba(30,70,77,.93),rgba(20,18,52,.95) 62%,rgba(65,31,90,.93));box-shadow:0 28px 75px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.1);backdrop-filter:blur(18px);opacity:0;transform:translate(40px,18px) scale(.9);transition:opacity .5s,transform .85s var(--ease-spring),box-shadow .5s}
.relationship-moment::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 88% 8%,rgba(112,225,178,.2),transparent 32%);pointer-events:none}
.relationship-moment-orbit{position:absolute;right:-18px;top:-36px;width:128px;height:128px;border-radius:50%;border:1px solid rgba(164,237,207,.19);opacity:.82}
.relationship-moment-orbit i{position:absolute;inset:13px;border:1px solid rgba(164,237,207,.15);border-radius:inherit}.relationship-moment-orbit i:nth-child(2){inset:27px;border-color:rgba(255,255,255,.1)}
.relationship-moment-orbit span{position:absolute;left:50%;top:50%;width:31px;height:31px;display:grid;place-items:center;border-radius:11px;color:#a4edcf;background:rgba(112,225,178,.14);box-shadow:0 0 0 7px rgba(112,225,178,.06);transform:translate(-50%,-50%)}
.relationship-moment-orbit svg,.relationship-moment-kicker svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}
.relationship-moment-kicker{position:relative;z-index:1;display:flex;align-items:center;gap:8px}.relationship-moment-kicker>span{width:29px;height:29px;display:grid;place-items:center;border-radius:10px;color:#ffb19f;background:rgba(255,120,90,.15)}.relationship-moment-kicker small{color:rgba(255,255,255,.56);font-size:6px;font-weight:900;letter-spacing:.14em}
.relationship-moment>strong{position:relative;z-index:1;display:block;margin-top:16px;font:700 21px/1.04 var(--font-display);letter-spacing:-.035em}.relationship-moment-foot{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:17px;padding-top:11px;border-top:1px solid rgba(255,255,255,.1);font-size:6px;font-weight:800}.relationship-moment-foot span{color:rgba(255,255,255,.49)}.relationship-moment-foot b{padding:5px 7px;border-radius:7px;color:#b8f4db;background:rgba(112,225,178,.12);font-size:6px}
.integration-story[data-phase="3"] .relationship-moment{opacity:1;transform:none;box-shadow:0 32px 86px rgba(0,0,0,.42),0 0 54px rgba(112,225,178,.1),inset 0 1px 0 rgba(255,255,255,.1)}

@media (max-width:860px),(prefers-reduced-motion:reduce){
  .integration-story .story-sticky::before,.integration-story .story-sticky::after,.data-flow::before,.flow-return{display:none}
  .relationship-moment{position:relative;right:auto;top:auto;width:min(100%,420px);margin:0 auto;opacity:1;transform:none}
  .relationship-moment-orbit{right:-4px;top:-34px}
}

/* The decision surface replaces the abstract centre orb. */
.flow-engine{width:278px;height:auto;min-height:0;padding:14px;border-radius:24px;text-align:left;align-items:stretch;justify-content:flex-start;background:linear-gradient(150deg,rgba(48,31,91,.96),rgba(22,16,49,.97));box-shadow:0 34px 86px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.1)}
.engine-window-top{display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.engine-brand{width:28px;height:28px;display:grid;place-items:center;flex:none;border-radius:9px;color:#fff;background:linear-gradient(135deg,var(--rc-coral),var(--rc-gold));font:800 13px var(--font-display);box-shadow:0 7px 16px rgba(0,0,0,.18)}.engine-window-top small{color:rgba(255,255,255,.56);font-size:5.5px;font-weight:900;letter-spacing:.12em}.engine-window-top>i{margin-left:auto;color:#a6f0cf;font-size:5.5px;font-style:normal;font-weight:900;letter-spacing:.08em}.engine-window-top>i b{display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:#70e1b2;box-shadow:0 0 0 4px rgba(112,225,178,.12)}
.engine-member{display:flex;align-items:center;gap:8px;margin-top:12px}.engine-member .mini-customer{width:31px;height:31px;border-radius:10px;background:linear-gradient(135deg,#257aa7,#5444ba)}.engine-member small,.engine-member strong{display:block}.engine-member small{color:rgba(255,255,255,.42);font-size:5px;font-weight:900;letter-spacing:.1em}.engine-member strong{margin-top:2px;color:#fff;font-size:8px}.engine-member>svg{width:15px;height:15px;margin-left:auto;padding:4px;border-radius:50%;color:#9ff0cf;background:rgba(112,225,178,.12);fill:none;stroke:currentColor;stroke-width:2}
.engine-outcome{position:relative;margin-top:12px;padding:13px 14px;border:1px solid rgba(169,154,255,.22);border-radius:15px;overflow:hidden;background:linear-gradient(115deg,rgba(109,74,255,.32),rgba(112,225,178,.1))}.engine-outcome::after{content:'';position:absolute;width:120px;height:120px;right:-64px;top:-70px;border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 0 20px rgba(255,255,255,.03)}.engine-outcome span,.engine-outcome strong,.engine-outcome em{position:relative;z-index:1;display:block}.engine-outcome span{color:rgba(255,255,255,.54);font-size:5px;font-weight:900;letter-spacing:.13em}.engine-outcome strong{margin-top:3px;font:800 27px/.95 var(--font-display);letter-spacing:-.045em}.engine-outcome em{margin-top:4px;color:#c8f4df;font-size:6px;font-style:normal;font-weight:900;letter-spacing:.1em}
.engine-rule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:10px}.engine-rule-grid>div{padding:7px 5px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.035)}.engine-rule-grid span{width:20px;height:20px;display:grid;place-items:center;border-radius:7px;color:#c7bfff;background:rgba(109,74,255,.18)}.engine-rule-grid>div:nth-child(2) span{color:#ffe199;background:rgba(242,193,78,.13)}.engine-rule-grid>div:nth-child(3) span{color:#ffad99;background:rgba(255,120,90,.12)}.engine-rule-grid svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.8}.engine-rule-grid small,.engine-rule-grid b{display:block}.engine-rule-grid small{margin-top:7px;color:rgba(255,255,255,.4);font-size:4.5px;font-weight:900;letter-spacing:.07em}.engine-rule-grid b{margin-top:3px;color:rgba(255,255,255,.86);font-size:6px;line-height:1.25}
.engine-window-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.43);font-size:5px;font-weight:800}.engine-window-foot span{display:flex;align-items:center;gap:5px}.engine-window-foot i{width:5px;height:5px;border-radius:50%;background:#70e1b2}.engine-window-foot b{color:rgba(255,255,255,.58);font-variant-numeric:tabular-nums}
.integration-story[data-phase="1"] .flow-engine,.integration-story[data-phase="2"] .flow-engine{border-color:rgba(169,154,255,.56);box-shadow:0 0 0 12px rgba(109,74,255,.06),0 34px 86px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.1)}
.integration-story[data-phase="3"] .flow-engine{transform:translate(-50%,-42%) scale(.84);background:linear-gradient(150deg,rgba(42,48,84,.96),rgba(18,30,48,.97));box-shadow:0 0 0 12px rgba(112,225,178,.05),0 34px 86px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.1)}

@media (max-width:860px),(prefers-reduced-motion:reduce){
  .flow-engine{height:auto;min-height:0}
}
