/* [project]/app/globals.css [app-client] (css) */
:root {
  --teal-primary: #169287;
  --cream-bg: #f8fafc;
  --cream-soft: #fff;
  --pine-dark: #0f172a;
  --cyan-bright: #06b6d4;
  --cyan-deep: #0284c7;
  --white: #fff;
  --cyan: var(--teal-primary);
  --teal-accent: #169287;
  --amber-gold: var(--teal-primary);
  --amber-bright: var(--cyan-bright);
  --bg-slate: #f8fafc;
  --text-dark: #0f172a;
  --text-muted: #64748b;
  --border-light: #0f172a12;
  --border-glass: #ffffffe6;
  --logo-gradient: linear-gradient(135deg, #169287 0%, #0d9488 50%, #06b6d4 100%);
  --btn-gradient: linear-gradient(135deg, #169287 0%, #0f172a 100%);
  --btn-gradient-hover: linear-gradient(135deg, #1fa399 0%, #1e293b 100%);
  --btn-amber-gradient: linear-gradient(135deg, #169287 0%, #0d9488 100%);
  --btn-amber-hover: linear-gradient(135deg, #1fa399 0%, #14b8a6 100%);
  --card-dark-gradient: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);
  --bar-gradient: linear-gradient(90deg, #10b981 0%, #14b8a6 50%, #06b6d4 100%);
  --font-display: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-body: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-numeric: "Plus Jakarta Sans", "Inter", sans-serif;
  --font-serif: "Plus Jakarta Sans", sans-serif;
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-xl: 30px;
  --radius-full: 9999px;
  --shadow-premium: 0 12px 36px -10px #0f172a0f;
  --shadow-card: 0 25px 50px -12px #0f172a14;
  --shadow-glow: 0 0 30px #16928740;
  --shadow-gold: 0 10px 30px #1692874d;
  --glass-bg: #ffffffbf;
  --glass-bg-hover: #fffffff2;
  --glass-bg-card: linear-gradient(135deg, #ffffffe6 0%, #ffffffb8 100%);
  --glass-bg-modal: linear-gradient(145deg, #fffffffa 0%, #f8fafcf2 100%);
  --glass-bg-input: #ffffffa6;
  --glass-blur: 18px;
  --glass-blur-heavy: 24px;
  --glass-border: 1px solid #ffffffd9;
  --glass-border-subtle: 1px solid #fff9;
  --glass-border-hover: 1px solid #16928773;
  --glass-shadow: 0 12px 36px #0f172a0f, inset 0 1.5px 2px #fffffff2;
  --glass-shadow-hover: 0 20px 48px #1692871f, inset 0 2px 2.5px #fff;
}

body.theme-cyber-dark {
  --bg-slate: #0a0e17;
  --text-dark: #f8fafc;
  --text-muted: #94a3b8;
  --border-light: #ffffff14;
  --border-glass: #ffffff0a;
  --card-dark-gradient: linear-gradient(135deg, #111827 0%, #0a0e17 100%);
  --cyan: #42c1a6;
  --purple: #11325d;
  --glass-bg: #0f172aa6;
  --glass-bg-hover: #0f172ad9;
  --glass-bg-card: linear-gradient(135deg, #1e293ba6 0%, #0f172abf 100%);
  --glass-bg-modal: linear-gradient(145deg, #0f172af2 0%, #0a0e17eb 100%);
  --glass-bg-input: #0f172a8c;
  --glass-border: 1px solid #ffffff1f;
  --glass-border-subtle: 1px solid #ffffff14;
  --glass-border-hover: 1px solid #0ea5e980;
  --glass-shadow: 0 12px 32px #00000080, inset 0 1px 1px #ffffff1f;
  --glass-shadow-hover: 0 20px 48px #000000a6, 0 0 25px #0ea5e933, inset 0 1px 1.5px #fff3;
  --font-display: "Satoshi", sans-serif;
  --font-body: "Radio Canada Big", sans-serif;
  --font-numeric: "Satoshi", sans-serif;
  background-color: var(--bg-slate);
}

body.theme-cyber-dark:before {
  background: radial-gradient(circle at 50% -100px, #0ea5e914, #0000 70%) 0 0 / 100% 100%, radial-gradient(circle at 80% 30%, #9333ea0a, #0000 50%) 0 0 / 100% 100%, linear-gradient(#ffffff01 1px, #0000 1px) 0 0 / 50px 50px, linear-gradient(90deg, #ffffff01 1px, #0000 1px) 0 0 / 50px 50px;
}

body.theme-cyber-dark header {
  box-shadow: none !important;
  background: none !important;
  border-bottom: none !important;
}

body.theme-cyber-dark .card {
  background: #111827;
  border-color: #ffffff0f;
  box-shadow: 0 20px 40px #00000073;
}

body.theme-cyber-dark .card:hover {
  border-color: #0ea5e940;
  box-shadow: 0 0 35px #4f46e50f, 0 20px 40px #00000080;
}

body.theme-cyber-dark input {
  color: #f8fafc;
  background: #0d121f;
  border-color: #ffffff1a;
}

body.theme-cyber-dark input:focus {
  border-color: var(--cyan);
  background: #0f1626;
  box-shadow: 0 0 0 4px #0ea5e926;
}

body.theme-cyber-dark .opt {
  color: #94a3b8;
  background: #ffffff05;
  border-color: #ffffff0f;
}

body.theme-cyber-dark .opt:hover {
  border-color: var(--cyan);
  color: #f8fafc;
  background: #ffffff0a;
}

body.theme-cyber-dark .opt.active {
  background: var(--logo-gradient);
  color: #fff;
  border-color: #0000;
  box-shadow: 0 8px 25px #4f46e540;
}

body.theme-cyber-dark .prod {
  background: #111827;
  border-color: #ffffff0f;
}

body.theme-cyber-dark .prod:hover {
  background: #151e2e;
  border-color: #0ea5e940;
}

body.theme-cyber-dark .side {
  background: #0e1320;
  border-color: #ffffff0a;
}

body.theme-cyber-dark .side .pct {
  background: var(--logo-gradient);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
}

body.theme-cyber-dark th {
  color: #f8fafc;
  background: #0ea5e914;
  border-bottom-color: #ffffff14;
}

body.theme-cyber-dark td {
  border-bottom: 1px solid #ffffff0f;
}

body.theme-cyber-dark td b {
  color: #fff;
}

body.theme-cyber-dark tr:hover {
  background: #ffffff04;
}

body.theme-cyber-dark footer {
  background: #0a0e17;
  border-top: 1px solid #ffffff14;
}

body.theme-cyber-dark footer .foot-brand, body.theme-cyber-dark .foot div {
  color: #fff;
}

body.theme-cyber-dark .chip {
  color: #94a3b8;
  background: #ffffff08;
  border-color: #ffffff0f;
}

body.theme-cyber-dark .chip:hover {
  color: #f8fafc;
  border-color: var(--cyan);
  background: #ffffff0f;
}

body.theme-cyber-dark .credit-card-art {
  box-shadow: 0 15px 35px #00000080;
}

body.theme-editorial-minimal {
  --bg-slate: #faf9f6;
  --text-dark: #111;
  --text-muted: #555;
  --border-light: #111;
  --border-glass: #111;
  --card-dark-gradient: linear-gradient(135deg, #111 0%, #222 100%);
  --cyan: #111;
  --indigo: #333;
  --purple: #222;
  --logo-gradient: linear-gradient(90deg, #111 0%, #111 100%);
  --btn-gradient: linear-gradient(135deg, #111 0%, #222 100%);
  --btn-gradient-hover: linear-gradient(135deg, #333 0%, #333 100%);
  --font-display: "Playfair Display", serif;
  --font-body: "Plus Jakarta Sans", sans-serif;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 6px;
  --radius-xl: 8px;
  --shadow-card: none;
  --shadow-premium: none;
  --bar-gradient: linear-gradient(90deg, #333 0%, #111 100%);
  background-color: var(--bg-slate);
}

body.theme-editorial-minimal:before {
  display: none;
}

body.theme-editorial-minimal header {
  box-shadow: none !important;
  background: none !important;
  border-bottom: none !important;
}

body.theme-editorial-minimal .brand-text .air-part {
  background: none;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: initial;
  color: #111;
}

body.theme-editorial-minimal .card {
  box-shadow: none;
  background: #fff;
  border: 1.5px solid #111;
}

body.theme-editorial-minimal .card:hover {
  border-color: #111;
  box-shadow: 4px 4px #111;
}

body.theme-editorial-minimal input {
  border-radius: var(--radius-sm);
  color: #111;
  background: #fff;
  border: 1.5px solid #111;
}

body.theme-editorial-minimal input:focus {
  box-shadow: none;
  background: #f1f5f9;
  border-color: #111;
}

body.theme-editorial-minimal .opt {
  color: #111;
  border-radius: var(--radius-sm);
  background: #fff;
  border: 1.5px solid #111;
}

body.theme-editorial-minimal .opt:hover {
  background: #f1f5f9;
}

body.theme-editorial-minimal .opt.active {
  color: #fff;
  box-shadow: none;
  background: #111;
  border-color: #111;
}

body.theme-editorial-minimal .prod {
  border-radius: var(--radius-md);
  background: #fff;
  border: 1.5px solid #111;
}

body.theme-editorial-minimal .prod:hover {
  transform: none;
  box-shadow: 6px 6px #111;
}

body.theme-editorial-minimal .side {
  border-radius: var(--radius-sm);
  background: #faf9f6;
  border: 1.5px solid #111;
}

body.theme-editorial-minimal .side .pct {
  background: none;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: initial;
  color: #111;
}

body.theme-editorial-minimal th {
  color: #fff;
  background: #111;
  border-bottom: 2px solid #111;
  font-weight: 700;
}

body.theme-editorial-minimal td {
  border-bottom: 1.5px solid #111;
}

body.theme-editorial-minimal tr:hover {
  background: #faf9f6;
}

body.theme-editorial-minimal footer {
  background: #faf9f6;
  border-top: 2px solid #111;
}

body.theme-editorial-minimal .chip {
  color: #111;
  border-radius: var(--radius-sm);
  background: #fff;
  border: 1.5px solid #111;
}

body.theme-editorial-minimal .chip:hover {
  color: #fff;
  background: #111;
}

body.theme-editorial-minimal .credit-card-art {
  box-shadow: none;
  border-radius: var(--radius-sm);
  border: 1.5px solid #111;
  color: #111 !important;
  background: #fff !important;
}

body.theme-editorial-minimal .card-chip {
  background: #111;
}

body.theme-playful-pastel {
  --bg-slate: #fefcf3;
  --text-dark: #1e293b;
  --text-muted: #475569;
  --border-light: #1e293b;
  --border-glass: #1e293b;
  --card-dark-gradient: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  --cyan: #fb7185;
  --indigo: #fb923c;
  --purple: #fbbf24;
  --logo-gradient: linear-gradient(90deg, #fb7185 0%, #fb923c 100%);
  --btn-gradient: linear-gradient(135deg, #fb7185 0%, #fb923c 100%);
  --btn-gradient-hover: linear-gradient(135deg, #f43f5e 0%, #ea580c 100%);
  --font-display: "Quicksand", sans-serif;
  --font-body: "Quicksand", sans-serif;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --shadow-card: 6px 6px 0px #1e293b;
  --shadow-premium: 4px 4px 0px #1e293b;
  --bar-gradient: linear-gradient(90deg, #34d399 0%, #f472b6 100%);
  background-color: var(--bg-slate);
}

body.theme-playful-pastel:before {
  background: radial-gradient(circle at 0 0, #fb718514, #0000 35%), radial-gradient(circle at 80% 20%, #fbbf2414, #0000 40%);
}

body.theme-playful-pastel header {
  box-shadow: none !important;
  background: none !important;
  border-bottom: none !important;
}

body.theme-playful-pastel .brand-text .air-part {
  background: var(--logo-gradient);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
}

body.theme-playful-pastel .card {
  background: #fff;
  border: 3px solid #1e293b;
  box-shadow: 6px 6px #1e293b;
}

body.theme-playful-pastel .card:hover {
  transform: translate(-4px, -4px);
  box-shadow: 10px 10px #1e293b;
}

body.theme-playful-pastel input {
  border-radius: var(--radius-md);
  color: #1e293b;
  background: #fff;
  border: 3px solid #1e293b;
}

body.theme-playful-pastel input:focus {
  background: #fff;
  border-color: #1e293b;
  box-shadow: 4px 4px #1e293b;
}

body.theme-playful-pastel .opt {
  color: #1e293b;
  border-radius: var(--radius-md);
  background: #fff;
  border: 3px solid #1e293b;
  box-shadow: 3px 3px #1e293b;
}

body.theme-playful-pastel .opt:hover {
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px #1e293b;
}

body.theme-playful-pastel .opt.active {
  color: #fff;
  background: #fb7185;
  box-shadow: 3px 3px #1e293b;
}

body.theme-playful-pastel .prod {
  border-radius: var(--radius-lg);
  background: #fff8f8;
  border: 3px solid #1e293b;
  box-shadow: 6px 6px #1e293b;
}

body.theme-playful-pastel .prod:hover {
  transform: translate(-4px, -4px);
  box-shadow: 10px 10px #1e293b;
}

body.theme-playful-pastel .side {
  border-radius: var(--radius-md);
  box-shadow: none;
  background: #fef9c3;
  border: 3px solid #1e293b;
}

body.theme-playful-pastel .side .pct {
  background: var(--logo-gradient);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
}

body.theme-playful-pastel th {
  color: #fff;
  background: #1e293b;
  border-bottom: 3px solid #1e293b;
}

body.theme-playful-pastel td {
  border-bottom: 3px solid #1e293b;
}

body.theme-playful-pastel tr:hover {
  background: #fffbeb;
}

body.theme-playful-pastel footer {
  background: #fefcf3;
  border-top: 3px solid #1e293b;
}

body.theme-playful-pastel .chip {
  color: #1e293b;
  border-radius: var(--radius-sm);
  background: #fff;
  border: 3px solid #1e293b;
  box-shadow: 2px 2px #1e293b;
}

body.theme-playful-pastel .chip:hover {
  transform: translate(-2px, -2px);
  box-shadow: 4px 4px #1e293b;
}

body.theme-playful-pastel .credit-card-art {
  border: 3px solid #1e293b;
  box-shadow: 4px 4px #1e293b;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-body);
  background-color: var(--bg-slate);
  color: var(--text-dark);
  -webkit-font-smoothing: antialiased;
  flex-direction: column;
  min-height: 100vh;
  line-height: 1.5;
  display: flex;
  position: relative;
  overflow-x: hidden;
}

main {
  flex: 1 0 auto;
  width: 100%;
}

body:before {
  content: "";
  pointer-events: none;
  z-index: -1;
  background: radial-gradient(circle at 12% 10%, #16928733, #0000 45%), radial-gradient(circle at 18% 55%, #14b8a629, #0000 42%), radial-gradient(circle at 8% 85%, #16928724, #0000 40%), linear-gradient(to right, #0000 0%, #fffc 45%, #fff 70% 100%);
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
}

.wrap {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
}

.glass-panel, .glass-card {
  background: var(--glass-bg-card);
  -webkit-backdrop-filter: blur(var(--glass-blur));
  border: var(--glass-border);
  box-shadow: var(--glass-shadow);
  border-radius: var(--radius-lg);
  transition: all .35s cubic-bezier(.16, 1, .3, 1);
}

.glass-panel:hover, .glass-card:hover {
  background: var(--glass-bg-hover);
  border-color: var(--glass-border-hover);
  box-shadow: var(--glass-shadow-hover);
  transform: translateY(-3px);
}

h1 {
  font-family: var(--font-display);
  letter-spacing: -.04em;
  color: var(--text-dark);
  margin-bottom: 20px;
  font-size: 58px;
  font-weight: 800;
  line-height: 1.05;
}

h2.sectionTitle {
  font-family: var(--font-display);
  letter-spacing: -.03em;
  color: var(--text-dark);
  margin-bottom: 8px;
  font-size: 36px;
  font-weight: 700;
}

h3 {
  font-family: var(--font-display);
  letter-spacing: -.02em;
  color: var(--text-dark);
  font-size: 22px;
  font-weight: 700;
}

p.lead {
  color: var(--text-muted);
  margin-bottom: 24px;
  font-size: 18px;
  line-height: 1.6;
}

p.disc {
  color: var(--text-muted);
  font-size: 12px;
  line-height: 1.5;
}

a {
  color: inherit;
  text-decoration: none;
  transition: all .2s;
}

header, header.scrolled, body header, body.home-page header, html.home-page header, body.theme-cyber-dark header, body.theme-dark header, body.home-page.theme-cyber-dark header, body.home-page.theme-dark header {
  transition: all .3s;
  top: 0;
  z-index: 99999 !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  background: none !important;
  border: none !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  height: 83px !important;
  min-height: 83px !important;
  max-height: 83px !important;
  margin: 0 auto !important;
  padding: 15px 36px 0 !important;
  display: flex !important;
  position: relative !important;
}

.brand, header .brand {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  text-decoration: none;
  display: flex;
}

.brand-logo-img, header .brand img, .brand img {
  object-fit: contain !important;
  width: auto !important;
  max-width: 200px !important;
  height: 56px !important;
  max-height: 56px !important;
  margin: 0 auto !important;
  display: block !important;
}

header nav {
  display: none !important;
}

.nav-text-desktop {
  display: inline;
}

.header-actions {
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  display: flex;
}

.header-actions .btn {
  border-radius: 9999px !important;
  align-items: center !important;
  height: 34px !important;
  padding: 6px 16px !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  display: inline-flex !important;
}

@media (max-width: 860px) {
  header {
    justify-content: center !important;
    height: 83px !important;
    min-height: 83px !important;
    max-height: 83px !important;
    padding: 15px 16px 0 !important;
  }

  header nav, .header-actions {
    display: none !important;
  }

  .brand-logo-img, header .brand img, .brand img {
    width: auto !important;
    max-width: 200px !important;
    height: 56px !important;
    max-height: 56px !important;
    margin: 0 auto !important;
  }
}

nav a:hover:after {
  width: 100%;
}

nav a.active {
  color: var(--text-dark);
}

nav a.active:after {
  width: 100%;
}

.btn {
  border-radius: var(--radius-full);
  cursor: pointer;
  color: #fff;
  background: linear-gradient(135deg, #169287f2 0%, #1c3735f2 100%);
  border: 1px solid #ffffff59;
  justify-content: center;
  align-items: center;
  padding: 12px 24px;
  font-weight: 700;
  transition: all .3s cubic-bezier(.16, 1, .3, 1);
  display: inline-flex;
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 1px 1.5px #fff9, 0 10px 25px #16928747;
}

.btn:before {
  content: "";
  opacity: 0;
  z-index: 1;
  background: linear-gradient(135deg, #1aa499 0%, #169287 50%, #1f423f 100%);
  width: 100%;
  height: 100%;
  transition: opacity .3s;
  position: absolute;
  top: 0;
  left: 0;
}

.btn span {
  z-index: 2;
  position: relative;
}

.btn:hover {
  transform: translateY(-2px);
  box-shadow: inset 0 1.5px 2px #fff, 0 12px 30px #16928766;
}

.btn:hover:before {
  opacity: 1;
}

.btn:active {
  transform: translateY(0);
}

.btn.dark {
  color: #fff;
  background: linear-gradient(135deg, #169287f2 0%, #1c3735f2 100%);
  border: 1px solid #ffffff59;
  box-shadow: inset 0 1px 1.5px #fff9, 0 10px 25px #16928747;
}

.btn.dark:before {
  background: linear-gradient(135deg, #1aa499 0%, #169287 50%, #1f423f 100%);
}

.btn.dark:hover {
  box-shadow: inset 0 1.5px 2px #fff, 0 12px 30px #16928766;
}

.btn.out, .btn-outline, .btn.btn-outline {
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  background: #ffffffd9;
  box-shadow: inset 0 1px 1px #fff, 0 4px 14px #16928714;
  color: var(--pine-dark, #1c3735) !important;
  border: 1.5px solid var(--teal-primary, #169287) !important;
}

.btn.out:before, .btn-outline:before {
  background: #fff6;
}

.btn.out:hover, .btn-outline:hover, .btn.btn-outline:hover {
  transform: translateY(-2px);
  border-color: var(--teal-primary, #169287) !important;
  color: var(--pine-dark, #1c3735) !important;
  background: #fff !important;
  box-shadow: inset 0 1.5px 2px #fff, 0 8px 20px #1692872e !important;
}

.hero {
  grid-template-columns: 1.1fr .9fr;
  align-items: center;
  gap: 48px;
  padding: 80px 0 48px;
  display: grid;
}

.badge {
  border-radius: var(--radius-full);
  color: #0369a1;
  background: #fff;
  border: 1.5px solid #0ea5e91f;
  margin-bottom: 24px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 700;
  display: inline-flex;
  box-shadow: 0 2px 10px #0ea5e905;
}

.card {
  background: var(--glass-bg-card);
  -webkit-backdrop-filter: blur(var(--glass-blur));
  border: var(--glass-border);
  border-radius: var(--radius-md);
  box-shadow: var(--glass-shadow);
  padding: 24px;
  transition: all .35s cubic-bezier(.16, 1, .3, 1);
}

.card:hover {
  background: var(--glass-bg-hover);
  box-shadow: var(--glass-shadow-hover);
  border-color: var(--glass-border-hover);
  transform: translateY(-3px);
}

.scoreBox {
  background: var(--card-dark-gradient);
  color: #fff;
  border-radius: var(--radius-md);
  -webkit-backdrop-filter: blur(var(--glass-blur));
  border: 1px solid #ffffff1f;
  padding: 28px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 18px 40px #0f172a33, inset 0 1px 1.5px #ffffff26;
}

.scoreBox:before {
  content: "";
  pointer-events: none;
  background: radial-gradient(circle, #9333ea26 0%, #0000 70%);
  width: 200px;
  height: 200px;
  position: absolute;
  top: -80px;
  right: -80px;
}

.score {
  font-family: var(--font-numeric);
  letter-spacing: -.04em;
  color: #fff;
  font-size: 64px;
  font-weight: 700;
  line-height: 1.1;
}

.score-glow {
  text-shadow: 0 0 20px #0ea5e940;
}

.bar {
  border-radius: var(--radius-full);
  background: #ffffff1a;
  height: 8px;
  margin: 20px 0;
  overflow: hidden;
}

.fill {
  background: var(--bar-gradient);
  border-radius: var(--radius-full);
  width: 0%;
  height: 100%;
  transition: width 1.2s cubic-bezier(.16, 1, .3, 1);
}

.chips {
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 32px;
  display: flex;
}

.chip {
  -webkit-backdrop-filter: blur(12px);
  border-radius: var(--radius-full);
  color: #475569;
  background: #ffffffa6;
  border: 1px solid #ffffffb3;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 600;
  transition: all .25s;
  box-shadow: 0 2px 8px #00000008;
}

.chip:hover {
  color: var(--text-dark);
  background: #fffffff2;
  border-color: #16928759;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px #1692871a;
}

.grid2 {
  grid-template-columns: 1.1fr 1.3fr;
  gap: 36px;
  padding: 64px 0;
  display: grid;
}

.formgrid {
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 28px;
  display: grid;
}

.form-group {
  flex-direction: column;
  display: flex;
}

.form-group.col-span-2 {
  grid-column: 1 / -1;
}

label {
  font-family: var(--font-body);
  color: var(--pine-dark, #0f172a);
  letter-spacing: -.01em;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 700;
}

input, textarea, select {
  -webkit-backdrop-filter: blur(12px);
  border-radius: var(--radius-md);
  width: 100%;
  font-family: var(--font-body);
  color: var(--text-dark, #0f172a);
  background: #ffffffd9;
  border: 1.5px solid #0f172a17;
  outline: none;
  padding: 14px 16px;
  font-size: 15px;
  font-weight: 500;
  transition: all .25s cubic-bezier(.16, 1, .3, 1);
  box-shadow: inset 0 1px 2px #0f172a05;
}

select {
  appearance: none;
  cursor: pointer;
  background: #fff;
  padding-right: 42px;
}

select option {
  color: #0f172a;
  background: #fff;
  padding: 10px 14px;
  font-size: 14px;
  font-weight: 500;
}

body.theme-dark select, body.theme-cyber select {
  color: #fff;
  background: #0f172a;
  border-color: #ffffff26;
}

body.theme-dark select option, body.theme-cyber select option {
  color: #fff;
  background: #0f172a;
}

input::placeholder, textarea::placeholder {
  color: #94a3b8;
  font-weight: 400;
}

input:focus, textarea:focus, select:focus {
  border-color: var(--teal-primary, #169287);
  background: #fff;
  box-shadow: 0 0 0 3.5px #16928726, inset 0 1px 1px #fff;
}

.select-wrapper {
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.select-chevron {
  pointer-events: none;
  color: #64748b;
  justify-content: center;
  align-items: center;
  transition: transform .2s, color .2s;
  display: flex;
  position: absolute;
  right: 16px;
}

.select-wrapper:focus-within .select-chevron {
  color: var(--teal-primary, #169287);
  transform: rotate(180deg);
}

textarea {
  resize: vertical;
  min-height: 120px;
  line-height: 1.5;
}

.input-with-suffix {
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.input-with-suffix input {
  padding-right: 140px;
}

.input-suffix-tag {
  color: #0f172a;
  pointer-events: none;
  font-size: 14px;
  font-weight: 600;
  font-family: var(--font-body);
  position: absolute;
  right: 16px;
}

.btn-send {
  color: #fff;
  font-family: var(--font-display);
  cursor: pointer;
  background: #145348;
  border: none;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: fit-content;
  padding: 12px 32px;
  font-size: 15px;
  font-weight: 700;
  transition: all .25s;
  display: inline-flex;
  box-shadow: 0 4px 14px #14534840;
}

.btn-send:hover {
  background: #0f3f37;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px #14534859;
}

.q {
  margin-top: 24px;
}

.qTitle {
  font-family: var(--font-display);
  color: var(--text-dark);
  margin-bottom: 12px;
  font-size: 15px;
  font-weight: 700;
}

.options {
  gap: 10px;
  display: grid;
}

.opt {
  -webkit-backdrop-filter: blur(12px);
  color: #475569;
  border-radius: var(--radius-md);
  text-align: left;
  font-family: var(--font-body);
  cursor: pointer;
  background: #ffffffa6;
  border: 1.5px solid #ffffffa6;
  padding: 14px 18px;
  font-size: 14px;
  font-weight: 700;
  transition: all .3s cubic-bezier(.16, 1, .3, 1);
  box-shadow: 0 4px 12px #00000005, inset 0 1px 1px #fffc;
}

.opt:hover {
  color: var(--text-dark);
  background: #ffffffeb;
  border-color: #16928766;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px #16928714, inset 0 1.5px 1.5px #fff;
}

.opt.active {
  background: var(--logo-gradient);
  color: #fff;
  border-color: #0000;
  box-shadow: 0 8px 25px #1692874d;
}

.products {
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 28px;
  display: grid;
}

.prod {
  -webkit-backdrop-filter: blur(20px);
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg, #ffffffe0 0%, #ffffffa6 100%);
  border: 1px solid #ffffffbf;
  flex-direction: column;
  justify-content: flex-start;
  padding: 22px;
  transition: all .35s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 30px #1c37350f, inset 0 1.5px 2px #ffffffd9;
}

.prod:hover {
  background: #fffffff2;
  border-color: #16928773;
  transform: translateY(-4px);
  box-shadow: 0 20px 48px #1c37351f, inset 0 2px 2.5px #fff, 0 0 24px #16928726;
}

.prod .prod-primary {
  flex-direction: column;
  width: 100%;
  display: flex;
}

.prod .card-artwork-wrap {
  aspect-ratio: 1.586;
  background: #0f172a;
  border: 1.5px solid #ffffffe6;
  border-radius: 12px;
  width: 100%;
  margin-bottom: 14px;
  overflow: hidden;
  box-shadow: 0 10px 24px #00000029;
}

.match-bar-box {
  width: 100%;
  margin-top: 6px;
  margin-bottom: 12px;
}

.match-bar-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  display: flex;
}

.match-badge-text {
  color: #115e59;
  background: #16928714;
  border: 1px solid #16928733;
  border-radius: 9999px;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  display: inline-flex;
}

.match-bullet {
  background: #14b8a6;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  display: inline-block;
  box-shadow: 0 0 6px #14b8a6;
}

.match-pct-num {
  font-family: var(--font-numeric);
  color: #0f766e;
  font-size: 12px;
  font-weight: 800;
}

.match-pct-lbl {
  color: #115e59;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: 10px;
  font-weight: 700;
}

.bank-pill-tag {
  color: var(--text-muted);
  background: #0000000a;
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 700;
}

.match-bar-track {
  background: #0f172a0f;
  border-radius: 9999px;
  width: 100%;
  height: 6px;
  position: relative;
  overflow: hidden;
}

.match-bar-fill {
  background: linear-gradient(90deg, #10b981 0%, #14b8a6 50%, #06b6d4 100%);
  border-radius: 9999px;
  width: 0%;
  height: 100%;
  animation: 1.1s cubic-bezier(.16, 1, .3, 1) .15s forwards fillMatchProgress;
  box-shadow: 0 0 8px #14b8a673;
}

@keyframes fillMatchProgress {
  from {
    width: 0%;
  }

  to {
    width: var(--match-width);
  }
}

.prod h3 {
  margin: 12px 0 8px;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.35;
}

.prod .prod-overlay {
  z-index: 10;
  -webkit-backdrop-filter: blur(24px);
  border-radius: var(--radius-lg);
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(145deg, #fffffffa 0%, #f8fafcf5 100%);
  border: 1.5px solid #16928759;
  flex-direction: column;
  justify-content: space-between;
  padding: 22px;
  transition: opacity .3s cubic-bezier(.16, 1, .3, 1), transform .3s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  position: absolute;
  inset: 0;
  overflow-y: auto;
  transform: translateY(8px);
  box-shadow: inset 0 1.5px 2px #fff, 0 12px 35px #0f172a14;
}

.prod:hover .prod-overlay {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.tags {
  flex-wrap: wrap;
  gap: 6px;
  margin: 8px 0 0;
  display: flex;
}

.tag {
  border-radius: var(--radius-full);
  -webkit-backdrop-filter: blur(10px);
  color: #475569;
  background: #ffffffbf;
  border: 1px solid #ffffffd9;
  padding: 5px 11px;
  font-size: 11px;
  font-weight: 700;
  box-shadow: 0 2px 6px #00000008;
}

.side {
  border-top: 1px solid var(--border-light);
  text-align: left;
  background: none;
  border-radius: 0;
  margin-top: 10px;
  padding: 10px 0 0;
}

.side .pct {
  font-family: var(--font-numeric);
  background: var(--logo-gradient);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  font-size: 36px;
  font-weight: 700;
}

.side small {
  text-transform: uppercase;
  color: var(--text-muted);
  letter-spacing: .05em;
  font-size: 10px;
  font-weight: 700;
}

.side b {
  color: var(--text-dark);
  margin: 4px 0 14px;
  font-size: 13px;
  line-height: 1.4;
  display: block;
}

.prod .actions {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 14px;
  display: grid;
}

.prod .actions .btn {
  text-align: center;
  white-space: nowrap;
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 700;
  display: flex;
}

.prod .actions .btn.out {
  -webkit-backdrop-filter: blur(12px);
  color: var(--text-dark);
  background: #ffffffd1;
  border: 1.5px solid #fffffff2;
  box-shadow: inset 0 1px 1px #fff, 0 4px 12px #0000000a;
}

.prod .actions .btn.out:hover {
  border-color: var(--cyan);
  color: var(--cyan);
  background: #fffffff5;
  box-shadow: inset 0 1px 1.5px #fff, 0 6px 16px #1692871f;
}

body.theme-cyber-dark .prod-overlay {
  background: #0f172af7;
  box-shadow: inset 0 0 0 1.5px #0ea5e966;
}

body.theme-cyber-dark .prod-overlay h4, body.theme-cyber-dark .prod-overlay p {
  color: #f1f5f9 !important;
}

body.theme-cyber-dark .prod-overlay .btn.out {
  color: #f1f5f9;
  background: #1e293b;
  border-color: #ffffff26;
}

.metrics {
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 16px;
  display: grid;
}

.metric {
  border-radius: var(--radius-md);
  background: #ffffff0f;
  border: 1px solid #ffffff0d;
  padding: 12px 16px;
}

.metric small {
  color: #fff9;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: 11px;
  font-weight: 700;
}

.metric b {
  margin-top: 4px;
  font-size: 16px;
  font-weight: 700;
  display: block;
}

table {
  border-collapse: collapse;
  width: 100%;
  font-size: 14px;
}

tr {
  transition: background .2s;
}

tr:hover {
  background: #f8fafccc;
}

th {
  color: var(--text-dark);
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: .05em;
  text-align: left;
  background: #0ea5e90f;
  font-size: 12px;
  font-weight: 700;
}

td, th {
  border-bottom: 1px solid #0f172a0d;
  padding: 16px;
}

td b {
  color: var(--text-dark);
}

.bank {
  background: var(--card-dark-gradient);
  color: #fff;
  border-radius: var(--radius-md);
  border: 1px solid #ffffff0f;
  margin: 64px 0 32px;
  padding: 48px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 25px 60px #0f172a40;
}

.bank:before {
  content: "";
  pointer-events: none;
  background: radial-gradient(circle, #0ea5e91a 0%, #0000 70%);
  width: 400px;
  height: 400px;
  position: absolute;
  bottom: -150px;
  left: -150px;
}

.bankgrid {
  grid-template-columns: .95fr 1.05fr;
  align-items: center;
  gap: 48px;
  display: grid;
}

.tiles {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}

.tile {
  border-radius: var(--radius-md);
  background: #ffffff0a;
  border: 1px solid #ffffff0f;
  padding: 24px;
  transition: all .3s;
}

.tile:hover {
  background: #ffffff14;
  border-color: #ffffff1f;
  transform: translateY(-2px);
}

.tile b {
  font-family: var(--font-display);
  color: #fff;
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 700;
  display: block;
}

.tile p {
  color: #cbd5e1;
  font-size: 13px;
  line-height: 1.5;
}

footer {
  -webkit-backdrop-filter: blur(var(--glass-blur));
  background: #ffffffbf;
  border-top: 1px solid #fffc;
  flex-shrink: 0;
  width: 100%;
  margin-top: auto;
  padding: 20px 0;
  box-shadow: 0 -4px 20px #00000005, inset 0 1px #fffc;
}

.foot {
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  display: flex;
}

.foot-brand {
  align-items: center;
  gap: 10px;
  display: flex;
}

.credit-card-art {
  aspect-ratio: 1.586;
  color: #fff;
  border-radius: 12px;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  padding: 20px;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 25px #00000026;
}

.card-art-enbd {
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 60%, #0c4a6e 100%);
  border: 1px solid #ffffff1a;
}

.card-art-liv {
  background: linear-gradient(135deg, #09090b 0%, #18181b 50%, #4c1d95 100%);
  border: 1px solid #ffffff1a;
}

.card-art-tamayaz {
  background: linear-gradient(135deg, #18181b 0%, #27272a 40%, #854d0e 100%);
  border: 1px solid #ffffff1a;
}

.card-logo-container {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.card-bank-name {
  font-family: var(--font-display);
  letter-spacing: .05em;
  opacity: .8;
  font-size: 12px;
  font-weight: 800;
}

.card-network {
  opacity: .9;
  font-size: 14px;
  font-style: italic;
  font-weight: 800;
}

.card-chip {
  background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
  border-radius: 4px;
  width: 32px;
  height: 24px;
  margin-top: 10px;
  position: relative;
  overflow: hidden;
}

.card-number {
  font-family: var(--font-numeric);
  letter-spacing: .12em;
  word-spacing: .05em;
  margin-top: 15px;
  font-size: 18px;
}

.card-holder {
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: .1em;
  opacity: .8;
  font-size: 11px;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-fade-in {
  animation: .8s cubic-bezier(.16, 1, .3, 1) forwards fadeInUp;
}

.delay-100 {
  animation-delay: .1s;
}

.delay-200 {
  animation-delay: .2s;
}

.delay-300 {
  animation-delay: .3s;
}

@media (max-width: 992px) {
  .hero {
    grid-template-columns: 1fr;
    gap: 40px;
    padding-top: 48px;
  }

  .grid2 {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .bankgrid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  h1 {
    font-size: 46px;
  }
}

@media (max-width: 1120px) {
  .products {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

@media (max-width: 768px) {
  header {
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
    height: 83px !important;
    min-height: 83px !important;
    max-height: 83px !important;
    padding: 15px 16px 0 !important;
    display: flex !important;
  }

  header .brand, .brand {
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    display: flex !important;
  }

  header .brand img, .brand img {
    width: auto !important;
    max-width: 200px !important;
    height: 56px !important;
    max-height: 56px !important;
    margin: 0 auto !important;
  }

  header .header-actions, header > div:last-child, nav {
    display: none !important;
  }

  .formgrid, .tiles {
    grid-template-columns: 1fr;
  }

  .products {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .foot {
    text-align: center;
    flex-direction: column;
    gap: 16px;
  }

  .foot > div {
    text-align: center !important;
    justify-content: center !important;
  }

  html.assessment-page, body.assessment-page {
    height: auto;
    max-height: none;
    overflow-y: auto !important;
  }

  body.assessment-page .wrap.assessment-wrap {
    height: auto;
    min-height: auto;
    padding: 16px 12px 36px;
    overflow-y: visible;
  }

  body.assessment-page .assessment-inputs, body.assessment-page .assessment-questions {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  body.assessment-page label {
    white-space: normal;
  }
}

.theme-sidebar {
  width: 300px;
  -webkit-backdrop-filter: blur(var(--glass-blur));
  z-index: 1000;
  background: #ffffffe6;
  border: 1px solid #0f172a14;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  padding: 28px 24px;
  transition: all .4s cubic-bezier(.16, 1, .3, 1);
  position: fixed;
  top: 120px;
  right: -300px;
  box-shadow: -10px 0 40px #0f172a0f;
}

.theme-sidebar.open {
  background: #fff;
  border-color: #0f172a1f;
  right: 0;
}

body.theme-cyber-dark .theme-sidebar {
  background: #0a0e17e6;
  border-color: #ffffff14;
  box-shadow: -10px 0 40px #00000080;
}

body.theme-cyber-dark .theme-sidebar.open {
  background: #0a0e17;
}

body.theme-editorial-minimal .theme-sidebar {
  box-shadow: none;
  background: #faf9f6;
  border: 2px solid #111;
  border-radius: 0;
}

body.theme-playful-pastel .theme-sidebar {
  background: #fff;
  border: 3px solid #1e293b;
  box-shadow: -6px 6px #1e293b;
}

.theme-sidebar-toggle {
  cursor: pointer;
  width: 48px;
  height: 48px;
  color: var(--text-dark);
  background: #fff;
  border: 1px solid #0f172a14;
  border-right: none;
  border-top-left-radius: 12px;
  border-bottom-left-radius: 12px;
  justify-content: center;
  align-items: center;
  transition: all .3s;
  display: flex;
  position: absolute;
  top: 20px;
  left: -48px;
  box-shadow: -5px 5px 15px #00000008;
}

body.theme-cyber-dark .theme-sidebar-toggle {
  color: #fff;
  background: #0a0e17;
  border-color: #ffffff14;
}

body.theme-editorial-minimal .theme-sidebar-toggle {
  box-shadow: none;
  background: #faf9f6;
  border: 2px solid #111;
  border-right: none;
  border-radius: 0;
  left: -50px;
}

body.theme-playful-pastel .theme-sidebar-toggle {
  box-shadow: none;
  background: #fff;
  border: 3px solid #1e293b;
  border-right: none;
  border-top-left-radius: 12px;
  border-bottom-left-radius: 12px;
  left: -51px;
}

.theme-sidebar-toggle:hover {
  color: var(--cyan);
}

.theme-sidebar-toggle svg {
  animation: 12s linear infinite rotateGear;
}

@keyframes rotateGear {
  from {
    transform: rotate(0);
  }

  to {
    transform: rotate(360deg);
  }
}

.theme-options {
  gap: 12px;
  margin-top: 20px;
  display: grid;
}

.theme-opt-btn {
  cursor: pointer;
  text-align: left;
  color: #0f172a;
  background: #f8fafccc;
  border: 1.5px solid #0f172a0a;
  border-radius: 12px;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 14px 18px;
  transition: all .2s;
  display: flex;
}

body.theme-cyber-dark .theme-opt-btn {
  color: #cbd5e1;
  background: #0d121f;
  border-color: #ffffff0f;
}

body.theme-editorial-minimal .theme-opt-btn {
  color: #111;
  background: #fff;
  border: 1.5px solid #111;
  border-radius: 0;
}

body.theme-playful-pastel .theme-opt-btn {
  color: #1e293b;
  background: #fff;
  border: 3px solid #1e293b;
  border-radius: 12px;
  box-shadow: 2px 2px #1e293b;
}

.theme-opt-btn:hover {
  background: #fff;
  border-color: #0ea5e940;
  transform: translateX(-3px);
}

body.theme-cyber-dark .theme-opt-btn:hover {
  color: #fff;
  background: #111827;
  border-color: #0ea5e940;
}

body.theme-editorial-minimal .theme-opt-btn:hover {
  background: #faf9f6;
}

body.theme-playful-pastel .theme-opt-btn:hover {
  transform: translate(-2px, -2px);
  box-shadow: 4px 4px #1e293b;
}

.theme-opt-btn.active {
  background: var(--logo-gradient);
  color: #fff;
  border-color: #0000;
  box-shadow: 0 4px 15px #4f46e533;
}

body.theme-editorial-minimal .theme-opt-btn.active {
  color: #fff;
  box-shadow: none;
  background: #111;
  border-color: #111;
}

body.theme-playful-pastel .theme-opt-btn.active {
  color: #fff;
  background: #fb7185;
  box-shadow: 2px 2px #1e293b;
}

.theme-opt-btn.active small {
  color: #fffc;
}

.why-choose-section {
  border-radius: 0;
  width: 100%;
  margin: 70px 0 80px;
  padding: 30px 0 50px;
  position: relative;
  overflow: hidden;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  background: none !important;
  border: none !important;
}

.why-choose-section:before {
  display: none !important;
}

.why-choose-header {
  z-index: 3;
  text-align: center;
  margin-bottom: 24px;
  position: relative;
}

.why-choose-title {
  font-family: var(--font-display, "Plus Jakarta Sans", sans-serif);
  color: #0f172a;
  letter-spacing: -.03em;
  margin-bottom: 12px;
  font-size: clamp(2rem, 3.8vw, 3rem);
  font-weight: 800;
  line-height: 1.18;
}

.why-choose-title em {
  background: linear-gradient(135deg, #0284c7 0%, #3b82f6 50%, #c026d3 100%);
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 20px #3b82f640);
  -webkit-background-clip: text;
  padding: 0 4px;
  font-style: normal;
  display: inline-block;
}

.why-choose-subtitle {
  font-family: var(--font-body, "Plus Jakarta Sans", sans-serif);
  color: #64748b;
  max-width: 660px;
  margin: 0 auto;
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1.6;
}

.why-choose-stage {
  justify-content: center;
  align-items: center;
  min-height: 640px;
  margin-top: 10px;
  display: flex;
  position: relative;
}

.why-choose-backdrop {
  pointer-events: none;
  z-index: 1;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0;
}

.stairs-svg {
  object-fit: cover;
  width: 100%;
  max-width: 1050px;
  height: 100%;
}

.vertical-card-wrapper {
  z-index: 2;
  justify-content: center;
  align-items: center;
  animation: 5s ease-in-out infinite cardFloat;
  display: flex;
  position: relative;
}

@keyframes cardFloat {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

.vertical-credit-card {
  box-sizing: border-box;
  background: linear-gradient(155deg, #fff 0%, #f8fafc 55%, #e2e8f0 100%);
  border: 1.5px solid #fffffff2;
  border-radius: 20px;
  flex-direction: column;
  justify-content: space-between;
  width: 250px;
  height: 385px;
  padding: 26px 22px;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 25px 60px -10px #2563eb2e, 0 0 1px #00000014;
}

.vertical-credit-card:before {
  content: "";
  pointer-events: none;
  background: linear-gradient(45deg, #0000 40%, #fff9 50%, #0000 60%);
  width: 200%;
  height: 200%;
  position: absolute;
  top: -50%;
  right: -50%;
}

.vcard-top {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.vcard-chip {
  background: linear-gradient(135deg, #e5b966 0%, #c49742 50%, #f3d489 100%);
  border: 1px solid #00000026;
  border-radius: 6px;
  width: 44px;
  height: 34px;
  position: relative;
  box-shadow: inset 0 1px 2px #fff9, 0 2px 4px #0000001a;
}

.vcard-chip .chip-lines {
  border: 1px solid #0003;
  border-radius: 3px;
  position: absolute;
  inset: 4px;
}

.vcard-chip .chip-lines:before {
  content: "";
  background: #0003;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
}

.vcard-chip .chip-lines:after {
  content: "";
  background: #0003;
  width: 1px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
}

.vcard-brand {
  text-align: right;
}

.visa-text {
  letter-spacing: -.05em;
  color: #0b3fa8;
  font-family: Outfit, sans-serif;
  font-size: 26px;
  font-style: italic;
  font-weight: 900;
}

.vcard-middle {
  flex-direction: column;
  gap: 6px;
  margin: 30px 0;
  display: flex;
}

.vcard-security-code {
  font-family: var(--font-numeric);
  color: #0284c7;
  letter-spacing: .05em;
  font-size: 20px;
  font-weight: 800;
}

.vcard-dots {
  font-family: var(--font-numeric);
  color: #64748b;
  letter-spacing: .18em;
  font-size: 15px;
  font-weight: 700;
}

.vcard-bottom {
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.vcard-holder {
  flex-direction: column;
  display: flex;
}

.vcard-name {
  font-family: var(--font-display);
  color: #0f172a;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 800;
}

.vcard-valid {
  text-align: right;
  flex-direction: column;
  display: flex;
}

.vcard-valid label {
  font-family: var(--font-body);
  color: #64748b;
  letter-spacing: .05em;
  font-size: 8px;
  font-weight: 700;
}

.vcard-valid span {
  font-family: var(--font-numeric);
  color: #1e293b;
  font-size: 12px;
  font-weight: 700;
}

.feature-glass-badge {
  z-index: 3;
  -webkit-backdrop-filter: blur(16px);
  box-sizing: border-box;
  background: #ffffffd9;
  border: 1.5px solid #fffffff2;
  border-radius: 18px;
  align-items: center;
  gap: 14px;
  width: 225px;
  padding: 14px 18px;
  transition: all .3s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  position: absolute;
  box-shadow: 0 12px 30px #0f172a14, 0 0 1px #0000000d;
}

.feature-glass-badge:hover {
  background: #fff;
  border-color: #38bdf8;
  transform: translateY(-5px)scale(1.02);
  box-shadow: 0 18px 40px #0f172a1f, 0 0 25px #38bdf840;
}

.badge-icon-box {
  color: #0284c7;
  background: linear-gradient(135deg, #0284c71a, #c026d31a);
  border: 1px solid #0284c733;
  border-radius: 12px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  display: flex;
}

.badge-text-content {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.badge-title-gold {
  font-family: var(--font-display);
  color: #0284c7;
  letter-spacing: -.01em;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
}

.badge-desc-white {
  font-family: var(--font-body);
  color: #0f172a;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
}

.badge-pos-topleft {
  top: 12%;
  left: 6%;
}

.badge-pos-topright {
  top: 6%;
  right: 8%;
}

.badge-pos-midright {
  top: 42%;
  right: 5%;
}

.badge-pos-botleft {
  top: 58%;
  left: 5%;
}

.badge-pos-botright {
  top: 68%;
  right: 8%;
}

.why-choose-cta {
  z-index: 4;
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
}

.btn-amber-gold {
  color: #fff;
  font-family: var(--font-display);
  border-radius: var(--radius-full);
  cursor: pointer;
  white-space: nowrap;
  background: linear-gradient(135deg, #0284c7 0%, #2563eb 100%);
  border: 1px solid #ffffff59;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 16px 36px;
  font-size: 15px;
  font-weight: 800;
  text-decoration: none;
  transition: all .3s cubic-bezier(.16, 1, .3, 1);
  display: inline-flex;
  box-shadow: 0 12px 35px #2563eb59, 0 0 25px #0284c740;
}

.btn-amber-gold:hover {
  color: #fff;
  background: linear-gradient(135deg, #0369a1 0%, #1d4ed8 100%);
  transform: scale(1.05)translateY(-2px);
  box-shadow: 0 16px 40px #2563eb80, 0 0 35px #0284c766;
}

@media (max-width: 1024px) {
  .why-choose-title {
    font-size: 40px;
  }

  .why-choose-stage {
    min-height: 580px;
  }

  .feature-glass-badge {
    width: 190px;
    padding: 12px 14px;
  }

  .badge-pos-topleft {
    top: 8%;
    left: 2%;
  }

  .badge-pos-topright {
    top: 4%;
    right: 2%;
  }

  .badge-pos-midright {
    top: 40%;
    right: 2%;
  }

  .badge-pos-botleft {
    top: 60%;
    left: 2%;
  }

  .badge-pos-botright {
    top: 70%;
    right: 2%;
  }
}

@media (max-width: 768px) {
  .why-choose-section {
    margin: 36px 0;
    padding: 44px 16px 36px;
  }

  .why-choose-title {
    font-size: 32px;
  }

  .why-choose-stage {
    flex-direction: column;
    gap: 24px;
    min-height: auto;
    padding: 20px 0 60px;
  }

  .why-choose-backdrop {
    display: none;
  }

  .vertical-credit-card {
    width: 220px;
    height: 340px;
  }

  .feature-glass-badge {
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
    position: static;
  }

  .why-choose-cta {
    margin-top: 16px;
    position: static;
    transform: none;
  }
}

.ambient-bg {
  pointer-events: none;
  z-index: -2;
  background: radial-gradient(circle at 10% 25%, #16928738 0%, #0000 50%), radial-gradient(circle at 18% 70%, #14b8a62e 0%, #0000 46%), radial-gradient(circle at 8% 90%, #16928726 0%, #0000 40%), #fff linear-gradient(90deg, #0000 0%, #ffffffb3 40%, #fff 65% 100%);
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
}

header, header.scrolled, body.theme-dark header.scrolled, body.theme-cyber header.scrolled {
  z-index: 99999;
  width: 100%;
  max-width: 100%;
  top: 0;
  -webkit-backdrop-filter: none !important;
  height: 83px !important;
  min-height: 83px !important;
  max-height: 83px !important;
  box-shadow: none !important;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 auto !important;
  padding: 15px 36px 0 !important;
  display: flex !important;
  position: relative !important;
}

.brand-mark {
  color: #fff;
  background: linear-gradient(135deg, #3b82f6, #ec4899);
  border-radius: 10px;
  place-items: center;
  width: 32px;
  height: 32px;
  font-size: .88rem;
  font-weight: 900;
  display: grid;
  box-shadow: 0 4px 12px #3b82f64d;
}

.orbital-hero-section {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-height: auto;
  margin-bottom: 0;
  padding-top: 36px;
  padding-bottom: 36px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.animated-rays-container {
  z-index: 0;
  pointer-events: none;
  opacity: .6;
  --stripe-color: #ffffffbf;
  width: 100vw;
  height: 100vh;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.animated-rays-bg {
  background-image: repeating-linear-gradient(105deg,
      var(--stripe-color) 0%,
      var(--stripe-color) 6%,
      transparent 9%,
      transparent 12%,
      var(--stripe-color) 16%),
    repeating-linear-gradient(105deg,
      #169287 0%,
      #0284c7 12%,
      #0f766e 22%,
      #38bdf8 32%,
      #10b981 42%,
      #1e40af 54%,
      #169287 65%);
  filter: blur(14px) saturate(160%);
  opacity: .6;
  background-position: 50%, 50%;
  background-size: 500%, 300%;
  position: absolute;
  inset: 0;
  -webkit-mask-image: radial-gradient(at 85% 15%, #000 45%, #0000 85%);
  mask-image: radial-gradient(at 85% 15%, #000 45%, #0000 85%);
}

body.theme-dark .animated-rays-bg, body.theme-cyber .animated-rays-bg {
  filter: blur(14px) opacity(60%) saturate(220%);
  --stripe-color: #0f172acc;
  opacity: .6;
}

.animated-rays-overlay {
  background-image: repeating-linear-gradient(105deg,
      var(--stripe-color) 0%,
      var(--stripe-color) 6%,
      transparent 9%,
      transparent 12%,
      var(--stripe-color) 16%),
    repeating-linear-gradient(105deg,
      #169287 0%,
      #0284c7 12%,
      #0f766e 22%,
      #38bdf8 32%,
      #10b981 42%,
      #1e40af 54%,
      #169287 65%);
  mix-blend-mode: soft-light;
  opacity: .6;
  background-size: 500%, 250%;
  background-attachment: fixed;
  animation: 45s linear infinite aurora-bg;
  position: absolute;
  inset: 0;
}

@keyframes aurora-bg {
  0% {
    background-position: 50%, 50%;
  }

  100% {
    background-position: 550%, 550%;
  }
}

.light-lines-container {
  pointer-events: none;
  z-index: 1;
  opacity: .5;
  width: 100vw;
  height: 100vh;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.light-lines-svg {
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.light-lines-svg .line {
  opacity: .12;
}

.light-lines-svg .light {
  will-change: transform;
}

body header, body main, body footer {
  z-index: 2;
  position: relative;
}

.hero-light-lines-container {
  pointer-events: none;
  z-index: 0;
  opacity: .8;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  -webkit-mask-image: radial-gradient(#000 45%, #0000 90%);
  mask-image: radial-gradient(#000 45%, #0000 90%);
}

.hero-light-lines-svg {
  object-fit: cover;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.hero-light-lines-container .lines {
  opacity: .08;
}

.hero-light-lines-container .line {
  fill: var(--teal-primary, #169287);
}

.hero-light-lines-container .lights {
  opacity: .65;
}

.hero-light-lines-container .light {
  fill: var(--teal-primary, #169287);
  filter: none !important;
}

.hero-header-top {
  text-align: center;
  z-index: 30;
  max-width: 900px;
  margin-top: 0;
  margin-bottom: clamp(4px, 1vh, 10px);
  padding-left: 16px;
  padding-right: 16px;
  position: relative;
  padding-top: 4px !important;
}

.hero-header-bottom {
  text-align: center;
  z-index: 30;
  width: 100%;
  max-width: 650px;
  margin-top: clamp(6px, 1.2vh, 16px);
  margin-bottom: 4px;
  padding: 0 16px;
  position: relative;
}

.orbital-title {
  font-family: var(--font-display, "Plus Jakarta Sans", sans-serif);
  letter-spacing: -.035em;
  color: var(--pine-dark, #1c3735);
  margin: 0;
  font-size: clamp(1.85rem, 3.2vw, 2.75rem);
  font-weight: 800;
  line-height: 1.15;
}

.orbital-title .accent-text {
  background: linear-gradient(135deg, var(--teal-primary, #169287) 0%, #0d9488 40%, var(--cyan-bright, #06b6d4) 100%);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
}

body.theme-dark .orbital-title, body.theme-cyber .orbital-title {
  color: #fff;
}

.orbital-desc {
  color: var(--text-muted, #4e6563);
  max-width: 600px;
  margin: 0 auto 8px;
  font-size: clamp(.78rem, 1.05vw, .86rem);
  font-weight: 500;
  line-height: 1.4;
}

.orbital-desc b {
  color: var(--pine-dark, #1c3735);
  font-weight: 700;
}

body.theme-dark .orbital-desc b, body.theme-cyber .orbital-desc b {
  color: #fff;
}

.hero-ctas-orbital {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 12px;
  display: flex;
}

.hero-ctas-orbital .btn {
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  background: linear-gradient(135deg, #169287f2 0%, #1c3735f2 100%);
  border: 1px solid #ffffff59;
  box-shadow: inset 0 1px 1.5px #fff9, 0 10px 26px #16928752;
}

.hero-ctas-orbital .btn.out, .hero-ctas-orbital .btn.btn-outline, .hero-ctas-orbital .btn-outline {
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  background: #ffffffd9;
  box-shadow: inset 0 1.5px 1px #fffffff2, 0 4px 14px #16928714;
  border: 1.5px solid var(--teal-primary, #169287) !important;
  color: var(--pine-dark, #1c3735) !important;
}

.hero-ctas-orbital .btn.out:hover, .hero-ctas-orbital .btn.btn-outline:hover, .hero-ctas-orbital .btn-outline:hover {
  background: #fff;
  transform: translateY(-2px);
  box-shadow: inset 0 1.5px 1px #fff, 0 8px 20px #1692872e;
  border-color: var(--teal-primary, #169287) !important;
}

.hero-powered-by {
  font-family: var(--font-display, "Plus Jakarta Sans", sans-serif);
  letter-spacing: -.01em;
  -webkit-user-select: none;
  user-select: none;
  justify-content: center;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  padding-bottom: 6px;
  font-size: .78rem;
  display: inline-flex;
  padding-top: 30px !important;
}

.hero-powered-by .powered-label {
  color: var(--pine-dark, #1c3735);
  font-weight: 800;
}

body.theme-dark .hero-powered-by .powered-label, body.theme-cyber .hero-powered-by .powered-label {
  color: #94a3b8;
}

.powered-by-logo-img {
  vertical-align: middle;
  object-fit: contain;
  width: auto;
  height: 14px;
  display: inline-block;
}

html.home-page, body.home-page {
  height: 100dvh;
  max-height: 100dvh;
  overflow: hidden !important;
}

body.home-page .wrap {
  box-sizing: border-box;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: calc(100dvh - 64px);
  max-height: calc(100dvh - 64px);
  padding: 4px 20px 8px;
  display: flex;
  overflow: hidden;
}

.orbital-hero-section {
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1280px;
  height: 100%;
  margin: 0 auto;
  padding: 0;
  display: flex;
}

.flow-wrap {
  flex-direction: column;
  flex: 1 0 auto;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-height: auto;
  padding: 16px 20px 32px;
  display: flex;
}

.flow-section {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.flow-main-card {
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  background: #fffffff0;
  border: 1.5px solid #fffffff2;
  border-radius: 20px;
  flex-direction: column;
  display: flex;
  box-shadow: 0 12px 36px #0f172a0d, inset 0 1px 2px #fff;
  padding: 24px 30px !important;
}

.flow-header-block {
  margin-bottom: 14px;
}

.flow-badge-kicker {
  letter-spacing: .05em;
  color: var(--teal-primary, #169287);
  text-transform: uppercase;
  background: #16928714;
  border: 1px solid #16928733;
  border-radius: 9999px;
  align-items: center;
  gap: 5px;
  margin-bottom: 6px;
  padding: 3px 10px;
  font-size: 10px;
  font-weight: 800;
  display: inline-flex;
}

.flow-header-block h1.sectionTitle, .flow-header-block h2.sectionTitle, .flow-header-block .sectionTitle, .flow-main-card h1.sectionTitle, .flow-main-card h2.sectionTitle, .flow-main-card .sectionTitle, body.assessment-page h1.sectionTitle, body.assessment-page h2.sectionTitle, body.benefits-page h1.sectionTitle, body.benefits-page h2.sectionTitle, body.eligibility-page h1.sectionTitle, body.eligibility-page h2.sectionTitle, body.eid-page h1.sectionTitle, body.eid-page h2.sectionTitle, body.review-page h1.sectionTitle, body.review-page h2.sectionTitle, body.submit-page h1.sectionTitle, body.submit-page h2.sectionTitle {
  font-family: var(--font-display);
  letter-spacing: -.02em !important;
  color: var(--pine-dark, #0f172a) !important;
  margin: 0 0 3px !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

.flow-header-block .lead, .flow-main-card .lead {
  color: #64748b !important;
  margin-bottom: 0 !important;
  font-size: 12.5px !important;
  line-height: 1.4 !important;
}

.floating-flow-segment {
  transition: bottom 50ms ease-out;
  bottom: 24px;
  z-index: 9999 !important;
  pointer-events: none !important;
  width: auto !important;
  max-width: 95vw !important;
  box-shadow: none !important;
  background: none !important;
  border: none !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  position: fixed !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}

.floating-segment-inner {
  pointer-events: auto !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
  background: #fffffff0 !important;
  border: 1.5px solid #fffffffa !important;
  border-radius: 9999px !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  padding: 5px 6px !important;
  display: inline-flex !important;
  box-shadow: 0 10px 30px #0f172a1f, 0 2px 8px #0000000a !important;
}

footer {
  background: #ffffffb3 !important;
  border-top: 1px solid #0f172a0f !important;
  width: 100% !important;
  padding: 15px 0 !important;
  position: relative !important;
}

footer .wrap.foot, footer .foot, .footer-two-column, .footer-three-column {
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  display: flex !important;
  position: relative !important;
}

.footer-left-brand, .footer-center-brand {
  align-items: center !important;
  margin: 0 !important;
  display: flex !important;
}

.footer-serv-logo {
  object-fit: contain !important;
  border-radius: 4px !important;
  width: auto !important;
  height: 38px !important;
  display: block !important;
}

.footer-right-powered, .footer-left-powered {
  color: var(--text-dark, #0f172a) !important;
  white-space: nowrap !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  display: inline-flex !important;
}

.footer-right-powered img, .footer-left-powered img, .footer-powered-img {
  vertical-align: middle !important;
  height: 15px !important;
  display: inline-block !important;
}

.footer-right-desc {
  display: none !important;
}

.flow-wrap {
  padding-bottom: 110px !important;
}

.floating-segment-inner .btn, .primary-flow-btn, .assessment-btn {
  text-align: center !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  border-radius: 9999px !important;
  justify-content: center !important;
  align-items: center !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 22px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform .15s, box-shadow .15s !important;
  display: inline-flex !important;
}

.floating-segment-inner .btn span {
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  line-height: 1 !important;
  display: inline-block !important;
  overflow: hidden !important;
}

.floating-segment-inner .btn.out {
  border: 1.5px solid var(--teal-primary, #169287) !important;
  color: var(--pine-dark, #1c3735) !important;
  background: #fff !important;
  box-shadow: 0 1px 2px #0000000a !important;
}

.floating-segment-inner .btn.out:hover {
  transform: translateY(-1px);
  border-color: var(--teal-primary, #169287) !important;
  background: #fff !important;
  box-shadow: 0 4px 12px #16928724 !important;
}

.primary-flow-btn, .assessment-btn, .floating-segment-inner .primary-flow-btn {
  color: #fff !important;
  background: linear-gradient(135deg, #18988d 0%, #135d51 100%) !important;
  border: 1.5px solid #ffffff59 !important;
  box-shadow: 0 4px 16px #16928747 !important;
}

.primary-flow-btn:hover, .assessment-btn:hover, .floating-segment-inner .primary-flow-btn:hover {
  transform: translateY(-1px);
  background: linear-gradient(135deg, #1ba99d 0%, #166e60 100%) !important;
  box-shadow: 0 6px 20px #16928761 !important;
}

.journey-stepper-container {
  width: 100%;
  max-width: 900px;
  margin: 0 auto 12px;
  padding: 0 4px;
}

.journey-stepper {
  -webkit-backdrop-filter: blur(16px);
  background: #ffffffeb;
  border: 1px solid #fffffff2;
  border-radius: 9999px;
  justify-content: space-between;
  align-items: center;
  padding: 7px 16px;
  display: flex;
  box-shadow: 0 4px 14px #0f172a0a;
}

.stepper-step {
  color: #94a3b8;
  white-space: nowrap;
  align-items: center;
  gap: 5px;
  font-size: 11.5px;
  font-weight: 600;
  display: flex;
}

.stepper-step.active {
  color: var(--teal-primary, #169287);
  font-weight: 800;
}

.stepper-step.completed {
  color: #10b981;
}

.stepper-step.success {
  color: #169287;
  font-weight: 800;
}

.step-circle {
  color: #64748b;
  background: #0f172a0f;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  font-size: 11px;
  font-weight: 800;
  display: flex;
}

.stepper-step.active .step-circle {
  background: var(--teal-primary, #169287);
  color: #fff;
  box-shadow: 0 0 8px #16928766;
}

.stepper-step.completed .step-circle {
  color: #fff;
  background: #10b981;
}

.stepper-line {
  background: #0f172a14;
  flex: 1;
  min-width: 12px;
  height: 2px;
  margin: 0 8px;
}

.stepper-line.completed {
  background: #10b981;
}

@media (max-width: 860px) {
  .journey-stepper-container {
    margin: 0 auto 10px !important;
    padding: 0 2px !important;
  }

  .journey-stepper {
    border-radius: 9999px !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 6px 10px !important;
    overflow: hidden !important;
  }

  .journey-stepper .stepper-step span:not(.step-circle) {
    display: none !important;
  }

  .journey-stepper .stepper-step.active span:not(.step-circle) {
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    max-width: 85px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    display: inline !important;
    overflow: hidden !important;
  }

  .journey-stepper .step-circle {
    flex-shrink: 0 !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 10px !important;
  }

  .journey-stepper .stepper-line {
    min-width: 6px !important;
    height: 2px !important;
    margin: 0 3px !important;
  }
}

.feature-category-header {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  display: flex;
}

.feature-cat-pills-quick {
  align-items: center;
  gap: 10px;
  display: flex;
}

.fcat-guide-text {
  color: #64748b;
  font-size: 12px;
  font-weight: 600;
}

.feature-category-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  width: 100%;
  margin: 10px 0 24px;
  display: grid;
}

@media (max-width: 900px) {
  .feature-category-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
  }
}

@media (max-width: 640px) {
  .feature-category-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    margin: 8px 0 20px;
  }
}

.feature-cat-card {
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  text-align: left;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  background: #ffffffe6;
  border: 1.5px solid #e2e8f0e6;
  border-radius: 14px;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  padding: 12px 14px;
  transition: all .25s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 14px #0f172a0a, inset 0 1px 1px #fff;
}

.feature-cat-card:before {
  content: "";
  background: linear-gradient(180deg, var(--teal-primary, #169287), var(--cyan-bright, #06b6d4));
  opacity: 0;
  width: 3.5px;
  transition: opacity .25s;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}

.feature-cat-card:hover {
  border-color: var(--teal-primary, #169287);
  background: #fff;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px #1692871f, inset 0 1px 1px #fff;
}

.feature-cat-card:hover:before, .feature-cat-card.active:before {
  opacity: 1;
}

.feature-cat-card.active {
  border-color: var(--teal-primary, #169287);
  box-shadow: 0 0 0 2px var(--teal-primary, #169287), 0 8px 20px #16928729, inset 0 1px 1px #fff;
  background: #fff;
}

.feature-3d-icon {
  width: 38px;
  height: 38px;
  color: var(--teal-primary, #169287);
  background: linear-gradient(135deg, #f0fdfa 0%, #ccfbf1 100%);
  border: 1.2px solid #16928740;
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  transition: transform .3s cubic-bezier(.16, 1, .3, 1), background .3s, color .3s;
  display: flex;
  position: relative;
  box-shadow: inset 0 1.5px 2px #fff, 0 4px 12px #16928714;
}

.feature-3d-icon svg {
  width: 19px;
  height: 19px;
}

.feature-cat-card:hover .feature-3d-icon, .feature-cat-card.active .feature-3d-icon {
  background: linear-gradient(135deg, var(--teal-primary, #169287) 0%, #0d9488 100%);
  color: #fff;
  border-color: #fff6;
  transform: scale(1.06);
  box-shadow: 0 6px 16px #16928747;
}

.feature-cat-title {
  font-family: var(--font-display, "Plus Jakarta Sans", sans-serif);
  color: var(--pine-dark, #0f172a);
  letter-spacing: -.01em;
  text-align: left;
  flex: 1;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

.feature-cat-card.active .feature-cat-title {
  color: var(--teal-primary, #169287);
  font-weight: 800;
}

.benefit-filters-row {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 18px 0 24px;
  display: flex;
}

.filter-btn {
  color: #334155;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  background: #fffc;
  border: 1.2px solid #0f172a17;
  border-radius: 9999px;
  align-items: center;
  gap: 6px;
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 700;
  transition: all .2s cubic-bezier(.16, 1, .3, 1);
  display: inline-flex;
  box-shadow: 0 2px 8px #0f172a08, inset 0 1px 1px #fff;
}

.filter-btn:hover {
  color: var(--teal-primary, #169287);
  background: #fff;
  border-color: #16928759;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px #1692871a;
}

.filter-btn.active {
  color: var(--teal-primary, #169287);
  background: #1692871a;
  border: 1.5px solid #16928773;
  box-shadow: 0 4px 12px #1692871f, inset 0 1px 1px #fff;
}

.benefits-catalog-grid {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}

.benefit-card-tile {
  background: #ffffffe0;
  border: 1.2px solid #0f172a14;
  border-radius: 16px;
  gap: 14px;
  padding: 16px;
  transition: transform .2s, box-shadow .2s, border-color .2s;
  display: flex;
}

.benefit-card-tile:hover {
  border-color: #16928759;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #0f172a0f;
}

.benefit-card-tile.selectable-card {
  cursor: pointer;
  position: relative;
}

.benefit-card-tile.selected-card {
  transform: translateY(-3px);
  border: 2px solid var(--teal-primary, #169287) !important;
  background: #fffffffa !important;
  box-shadow: 0 0 0 4px #1692872e, 0 10px 28px #16928724 !important;
}

.selected-check-indicator {
  background: var(--teal-primary, #169287);
  color: #fff;
  border-radius: 9999px;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 800;
  display: none;
  position: absolute;
  top: 12px;
  right: 14px;
  box-shadow: 0 2px 8px #16928759;
}

.benefit-card-tile.selected-card .selected-check-indicator {
  display: inline-flex;
}

.bank-redirect-overlay {
  -webkit-backdrop-filter: blur(8px);
  z-index: 99999;
  opacity: 0;
  visibility: hidden;
  background: #0f172aa6;
  justify-content: center;
  align-items: center;
  transition: opacity .3s, visibility .3s;
  display: flex;
  position: fixed;
  inset: 0;
}

.bank-redirect-overlay.active {
  opacity: 1;
  visibility: visible;
}

.bank-redirect-modal {
  text-align: center;
  background: #fff;
  border: 1.5px solid #16928740;
  border-radius: 20px;
  width: 90%;
  max-width: 480px;
  padding: 36px 32px;
  transition: transform .3s cubic-bezier(.16, 1, .3, 1);
  transform: scale(.92);
  box-shadow: 0 20px 50px #00000040;
}

.bank-redirect-overlay.active .bank-redirect-modal {
  transform: scale(1);
}

.redirect-spinner-ring {
  border: 4px solid #16928726;
  border-top-color: var(--teal-primary, #169287);
  border-radius: 50%;
  width: 52px;
  height: 52px;
  margin: 0 auto 18px;
  animation: .9s linear infinite redirectSpin;
}

@keyframes redirectSpin {
  100% {
    transform: rotate(360deg);
  }
}

.bcard-visual {
  flex-direction: column;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  width: 100px;
  display: flex;
}

.bcard-img {
  border-radius: 8px;
  width: 100%;
  height: auto;
  box-shadow: 0 4px 12px #00000026;
}

.bcard-tag-pill {
  color: var(--teal-primary, #169287);
  white-space: nowrap;
  background: #1692871f;
  border-radius: 9999px;
  padding: 2px 6px;
  font-size: 9.5px;
  font-weight: 800;
}

.bcard-content {
  flex-direction: column;
  flex: 1;
  justify-content: space-between;
  min-width: 0;
  display: flex;
}

.bcard-bank {
  display: none;
}

.bcard-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  margin: 0 0 2px;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.25;
}

.bcard-subtitle {
  color: #64748b;
  margin: 0 0 8px;
  font-size: 11.5px;
  font-weight: 500;
  line-height: 1.35;
}

.bcard-perks-list {
  flex-direction: column;
  gap: 4px;
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
  display: flex;
}

.bcard-perks-list li {
  color: #334155;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  line-height: 1.35;
  display: flex;
}

.bcard-perks-list li:before {
  content: "";
  background: var(--teal-primary, #169287);
  border-radius: 50%;
  flex-shrink: 0;
  width: 5px;
  height: 5px;
}

.bcard-meta-row {
  border-top: 1px solid #0f172a0d;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 6px;
  display: flex;
}

.bcard-chip {
  color: #475569;
  white-space: nowrap;
  background: #0f172a0a;
  border-radius: 6px;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 700;
}

.bcard-chip.free {
  color: #0d9488;
  background: #1692871a;
  font-weight: 800;
}

.eligibility-pillars-grid {
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 18px;
  display: grid;
}

.criteria-pillar-card {
  background: #f8fafcd9;
  border: 1px solid #0f172a0f;
  border-radius: 16px;
  flex-direction: column;
  gap: 6px;
  padding: 16px 18px;
  display: flex;
}

.pillar-icon-box {
  width: 38px;
  height: 38px;
  color: var(--teal-primary, #169287);
  background: #1692871f;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  display: flex;
}

.pillar-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  margin: 0;
  font-size: 15px;
  font-weight: 800;
}

.pillar-text {
  color: #475569;
  margin: 0;
  font-size: 12.5px;
  line-height: 1.45;
}

.pillar-highlight-tag {
  color: var(--teal-primary, #169287);
  margin-top: 4px;
  font-size: 10.5px;
  font-weight: 700;
}

.eligibility-calc-banner {
  background: linear-gradient(135deg, #16928712 0%, #1453480a 100%);
  border: 1.2px solid #16928738;
  border-radius: 16px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 18px 22px;
  display: flex;
}

.calc-banner-left {
  flex: 300px;
}

.calc-badge {
  text-transform: uppercase;
  color: var(--teal-primary, #169287);
  letter-spacing: .05em;
  margin-bottom: 2px;
  font-size: 10.5px;
  font-weight: 800;
}

.calc-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  margin: 0 0 4px;
  font-size: 16.5px;
  font-weight: 800;
}

.calc-desc {
  color: #64748b;
  margin: 0;
  font-size: 12px;
}

.calc-banner-right {
  gap: 12px;
  display: flex;
}

.calc-status-box {
  background: #ffffffe6;
  border: 1px solid #0f172a14;
  border-radius: 12px;
  flex-direction: column;
  align-items: flex-start;
  padding: 10px 14px;
  display: flex;
}

.calc-status-box.success {
  background: #10b9810f;
  border-color: #10b9814d;
}

.calc-stat-label {
  text-transform: uppercase;
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
}

.calc-stat-val {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-size: 17px;
  font-weight: 900;
  line-height: 1.2;
}

.calc-status-box.success .calc-stat-val {
  color: #10b981;
}

.calc-stat-sub {
  color: #64748b;
  font-size: 10.5px;
  font-weight: 500;
}

.eid-scanner-grid {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 18px;
  display: grid;
}

.eid-slot-card {
  background: #f8fafcd9;
  border: 1.2px solid #0f172a14;
  border-radius: 16px;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  transition: border-color .25s, box-shadow .25s;
  display: flex;
}

.eid-slot-card.uploaded {
  border-color: #16928766;
  box-shadow: 0 4px 16px #1692870f;
}

.eid-slot-card.verified {
  border-color: #10b981;
  box-shadow: 0 4px 16px #10b9811f;
}

.eid-slot-header {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.eid-slot-tag {
  color: var(--teal-primary, #169287);
  background: #1692871f;
  border-radius: 4px;
  padding: 2px 6px;
  font-size: 9.5px;
  font-weight: 800;
}

.eid-slot-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-size: 13.5px;
  font-weight: 800;
}

.eid-slot-state-badge {
  color: #64748b;
  background: #94a3b826;
  border-radius: 9999px;
  margin-left: auto;
  padding: 2px 8px;
  font-size: 10px;
  font-weight: 700;
  transition: all .2s;
}

.eid-slot-state-badge.ready {
  color: var(--teal-primary, #169287);
  background: #16928726;
}

.eid-slot-state-badge.verified {
  color: #059669;
  background: #10b98126;
}

.eid-dropzone {
  cursor: pointer;
  background: #fff;
  border: 2px dashed #16928759;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  min-height: 155px;
  padding: 12px;
  transition: all .2s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.eid-dropzone:hover {
  border-color: var(--teal-primary, #169287);
  background: #16928708;
}

.eid-scanner-laser {
  opacity: 0;
  pointer-events: none;
  z-index: 15;
  background: linear-gradient(90deg, #0000, #22c55e, #169287, #0000);
  width: 100%;
  height: 3px;
  position: absolute;
  top: 0;
  left: 0;
  box-shadow: 0 0 12px #22c55e;
}

.eid-scanner-laser.scanning {
  opacity: 1;
  animation: 1.5s ease-in-out infinite alternate scanLaser;
}

@keyframes scanLaser {
  0% {
    top: 5%;
  }

  100% {
    top: 95%;
  }
}

.eid-placeholder-content {
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  display: flex;
}

.eid-icon-circ {
  width: 44px;
  height: 44px;
  color: var(--teal-primary, #169287);
  background: #1692871a;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  margin-bottom: 2px;
  display: flex;
}

.eid-upload-prompt {
  color: var(--pine-dark, #0f172a);
  font-size: 12.5px;
}

.eid-upload-sub {
  color: #64748b;
  font-size: 11px;
}

.eid-preview-card {
  background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
  border: 1px solid #94a3b8;
  border-radius: 8px;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  min-height: 125px;
  padding: 10px 12px;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 1px 1px #fff;
}

.eid-preview-card.back {
  background: linear-gradient(135deg, #cbd5e1 0%, #94a3b8 100%);
}

.eid-uploaded-img-preview {
  object-fit: cover;
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.eid-preview-card-inner {
  z-index: 2;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  display: flex;
  position: relative;
}

.eid-status-ribbon {
  color: #fff;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  z-index: 5;
  background: #0f172abf;
  border-radius: 4px;
  padding: 2px 7px;
  font-size: 9px;
  font-weight: 700;
  position: absolute;
  bottom: 6px;
  left: 8px;
}

.eid-status-ribbon.ready {
  background: #169287e0;
}

.eid-status-ribbon.scanning {
  color: #000;
  background: #eab308e6;
}

.eid-status-ribbon.verified {
  background: #10b981eb;
}

.eid-sim-chip {
  background: linear-gradient(135deg, #f59e0b, #d97706);
  border: 1px solid #b45309;
  border-radius: 4px;
  width: 24px;
  height: 18px;
}

.eid-sim-text {
  flex-direction: column;
  line-height: 1.2;
  display: flex;
}

.sim-country {
  color: #334155;
  letter-spacing: .05em;
  font-size: 8px;
  font-weight: 800;
}

.sim-label {
  color: #64748b;
  font-size: 7.5px;
}

.sim-id-num {
  font-family: var(--font-display);
  color: #0f172a;
  margin-top: 2px;
  font-size: 12px;
  font-weight: 800;
}

.sim-name {
  font-family: var(--font-display);
  color: #1e293b;
  font-size: 11px;
  font-weight: 700;
}

.eid-verified-stamp {
  color: #fff;
  z-index: 6;
  background: #10b981;
  border-radius: 4px;
  padding: 3px 7px;
  font-size: 8.5px;
  font-weight: 800;
  position: absolute;
  top: 8px;
  right: 8px;
  box-shadow: 0 2px 8px #10b98180;
}

.hidden, .eid-verified-stamp.hidden, .eid-preview-card.hidden {
  display: none !important;
}

.eid-sim-mrz {
  color: #0f172a;
  letter-spacing: .1em;
  flex-direction: column;
  gap: 2px;
  margin-top: auto;
  font-family: monospace;
  font-size: 8px;
  display: flex;
}

.eid-slot-actions {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  width: 100%;
  display: grid;
}

.eid-upload-trigger-btn {
  height: 38px !important;
  color: var(--pine-dark, #0f172a) !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  background: #fff !important;
  border: 1.2px solid #0f172a1f !important;
  border-radius: 8px !important;
  justify-content: center !important;
  align-items: center !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  display: inline-flex !important;
}

.eid-upload-trigger-btn:hover {
  border-color: var(--teal-primary, #169287) !important;
  color: var(--teal-primary, #169287) !important;
}

.eid-action-btn {
  white-space: nowrap !important;
  border-radius: 8px !important;
  justify-content: center !important;
  align-items: center !important;
  height: 38px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  transition: all .2s !important;
  display: inline-flex !important;
}

.eid-action-btn.disabled {
  opacity: .55 !important;
  color: #94a3b8 !important;
  cursor: pointer !important;
  background: #f1f5f9cc !important;
  border-color: #94a3b84d !important;
}

.eid-action-btn.ready-to-scan {
  animation: 2s infinite alternate pulseScanBtn;
  opacity: 1 !important;
  color: #fff !important;
  background: linear-gradient(135deg, #169287 0%, #0d9488 100%) !important;
  border-color: #0000 !important;
  box-shadow: 0 4px 12px #16928740 !important;
}

@keyframes pulseScanBtn {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.02);
  }
}

.eid-action-btn.scanned-success {
  color: #059669 !important;
  background: #10b9811f !important;
  border-color: #10b981 !important;
}

.eid-ocr-results-box {
  background: linear-gradient(135deg, #1692870f 0%, #14534808 100%);
  border: 1.2px solid #16928733;
  border-radius: 14px;
  padding: 16px 18px;
}

.ocr-header-row {
  border-bottom: 1px solid #16928726;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
  padding-bottom: 8px;
  display: flex;
}

.ocr-title-wrap {
  color: var(--teal-primary, #169287);
  align-items: center;
  gap: 8px;
  display: flex;
}

.ocr-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-size: 13.5px;
  font-weight: 800;
}

.ocr-status-badge {
  border-radius: 9999px;
  align-items: center;
  gap: 5px;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 800;
  display: inline-flex;
}

.ocr-status-badge.verified {
  color: #10b981;
  background: #10b9811f;
  border: 1px solid #10b98140;
}

.ocr-fields-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  display: grid;
}

.ocr-field-item {
  background: #ffffffd9;
  border: 1px solid #0f172a0f;
  border-radius: 10px;
  flex-direction: column;
  padding: 8px 12px;
  display: flex;
}

.ocr-field-label {
  text-transform: uppercase;
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
}

.ocr-field-val {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-top: 1px;
  font-size: 13px;
  font-weight: 700;
  overflow: hidden;
}

.review-hero-lockup {
  margin-bottom: 16px;
  display: block;
}

.review-card-match-box {
  background: #f8fafce0;
  border: 1.2px solid #0f172a14;
  border-radius: 16px;
  flex-direction: column;
  padding: 16px 20px;
  display: flex;
}

.rscore-label, .rmatch-label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #64748b;
  margin-bottom: 4px;
  font-size: 10.5px;
  font-weight: 800;
}

.rscore-val-row {
  align-items: baseline;
  gap: 8px;
  margin-bottom: 6px;
  display: flex;
}

.rscore-num {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-size: 32px;
  font-weight: 900;
  line-height: 1;
}

.rscore-max {
  color: #94a3b8;
  font-size: 13px;
  font-weight: 700;
}

.rscore-metrics-row {
  color: #475569;
  gap: 8px;
  font-size: 12px;
  display: flex;
}

.rmatch-card-row {
  align-items: center;
  gap: 12px;
  margin-top: 2px;
  display: flex;
}

.rmatch-img {
  border-radius: 6px;
  flex-shrink: 0;
  width: 74px;
  height: auto;
  box-shadow: 0 4px 10px #0000001f;
}

.rmatch-info {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.rmatch-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  margin: 0;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.2;
}

.rmatch-sub {
  color: #64748b;
  margin: 1px 0 4px;
  font-size: 11.5px;
}

.rmatch-limit-badge {
  color: var(--teal-primary, #169287);
  background: #1692871a;
  border-radius: 6px;
  width: fit-content;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
}

.review-details-grid {
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 16px;
  display: grid;
}

.review-card-panel {
  background: #f8fafcd9;
  border: 1px solid #0f172a0f;
  border-radius: 14px;
  padding: 14px 16px;
}

.rpanel-header {
  border-bottom: 1px solid #0f172a0f;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  padding-bottom: 6px;
  display: flex;
}

.rpanel-tag {
  color: var(--teal-primary, #169287);
  background: #1692871f;
  border-radius: 4px;
  padding: 2px 6px;
  font-size: 9px;
  font-weight: 800;
}

.rpanel-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-size: 13px;
  font-weight: 800;
}

.rpanel-table {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.rpanel-row {
  justify-content: space-between;
  align-items: center;
  font-size: 12.5px;
  display: flex;
}

.rp-key {
  color: #64748b;
  font-weight: 600;
}

.rp-val {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-weight: 700;
}

.review-consent-box {
  background: #1692870a;
  border: 1.2px solid #16928733;
  border-radius: 12px;
  padding: 12px 16px;
}

.consent-checkbox-label {
  cursor: pointer;
  align-items: flex-start;
  gap: 10px;
  display: flex;
}

.consent-checkbox-label input {
  accent-color: var(--teal-primary, #169287);
  width: 16px;
  height: 16px;
  margin-top: 3px;
}

.consent-text {
  color: #334155;
  font-size: 12px;
  line-height: 1.5;
}

.submission-pipeline-box {
  text-align: left;
  background: linear-gradient(135deg, #16928714 0%, #1453480a 100%);
  border: 1.5px solid #16928740;
  border-radius: 18px;
  justify-content: center;
  align-items: center;
  gap: 20px;
  padding: 36px 24px;
  display: flex;
}

.pipeline-loader-spinner {
  border: 3.5px solid #16928733;
  border-top-color: var(--teal-primary, #169287);
  border-radius: 50%;
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  animation: .8s linear infinite spin;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.pipeline-text-col {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.pipeline-status-badge {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--teal-primary, #169287);
  font-size: 10px;
  font-weight: 800;
}

.pipeline-headline {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  margin: 0;
  font-size: 18px;
  font-weight: 800;
}

.pipeline-sub {
  color: #64748b;
  margin: 0;
  font-size: 12.5px;
}

.approval-success-dashboard {
  flex-direction: column;
  gap: 16px;
  display: none;
}

.approval-success-dashboard.active {
  display: flex;
}

.approval-hero-banner {
  background: linear-gradient(135deg, #10b9811f 0%, #16928714 100%);
  border: 1.5px solid #10b9814d;
  border-radius: 18px;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px;
  padding: 22px 26px;
  display: flex;
}

.approval-check-icon {
  color: #fff;
  background: #10b981;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  display: flex;
  box-shadow: 0 4px 16px #10b98159;
}

.approval-hero-info {
  flex: 280px;
}

.approval-kicker-tag {
  letter-spacing: .06em;
  color: #059669;
  text-transform: uppercase;
  font-size: 10.5px;
  font-weight: 800;
}

.approval-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  margin: 2px 0 3px;
  font-size: 22px;
  font-weight: 900;
}

.approval-desc {
  color: #334155;
  margin: 0;
  font-size: 13px;
}

.app-ref-box {
  text-align: right;
  background: #fff;
  border: 1px solid #0f172a14;
  border-radius: 12px;
  flex-direction: column;
  align-items: flex-end;
  padding: 10px 16px;
  display: flex;
}

.app-ref-label {
  text-transform: uppercase;
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
}

.app-ref-code {
  font-family: var(--font-display);
  color: var(--teal-primary, #169287);
  font-size: 16px;
  font-weight: 800;
}

.app-ref-status {
  color: #10b981;
  font-size: 10.5px;
  font-weight: 700;
}

.approved-card-summary-row {
  background: #f8fafcd9;
  border: 1.2px solid #0f172a0f;
  border-radius: 16px;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  display: flex;
}

.approved-card-visual {
  flex-shrink: 0;
  width: 110px;
}

.approved-card-img {
  border-radius: 8px;
  width: 100%;
  box-shadow: 0 6px 16px #00000026;
}

.approved-terms-grid {
  flex: 1;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  display: grid;
}

.app-term-tile {
  background: #fff;
  border: 1px solid #0f172a0f;
  border-radius: 10px;
  flex-direction: column;
  padding: 10px 12px;
  display: flex;
}

.term-lbl {
  text-transform: uppercase;
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
}

.term-val {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  margin-top: 2px;
  font-size: 14.5px;
  font-weight: 800;
}

.term-val.highlight {
  color: var(--teal-primary, #169287);
}

.delivery-timeline-card {
  background: #f8fafcd9;
  border: 1px solid #0f172a0f;
  border-radius: 16px;
  padding: 16px 20px;
}

.dtimeline-header {
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  display: flex;
}

.dtimeline-tag {
  color: var(--teal-primary, #169287);
  background: #1692871f;
  border-radius: 4px;
  padding: 2px 6px;
  font-size: 9.5px;
  font-weight: 800;
}

.dtimeline-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-size: 14px;
  font-weight: 800;
}

.dtimeline-steps-row {
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  display: grid;
}

.dstep-item {
  align-items: flex-start;
  gap: 10px;
  display: flex;
}

.dstep-dot {
  color: #64748b;
  background: #0f172a14;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  font-size: 11px;
  font-weight: 800;
  display: flex;
}

.dstep-item.done .dstep-dot {
  color: #fff;
  background: #10b981;
}

.dstep-item.active .dstep-dot {
  background: var(--teal-primary, #169287);
  color: #fff;
  box-shadow: 0 0 8px #16928766;
}

.dstep-text {
  flex-direction: column;
  line-height: 1.25;
  display: flex;
}

.dstep-text strong {
  color: var(--pine-dark, #0f172a);
  font-size: 12px;
}

.dstep-text span {
  color: #64748b;
  font-size: 10.5px;
}

@media (max-width: 860px) {
  .benefits-catalog-grid, .eligibility-pillars-grid, .eid-scanner-grid, .review-hero-lockup, .review-details-grid {
    grid-template-columns: 1fr;
  }

  .approved-terms-grid, .dtimeline-steps-row, .ocr-fields-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .flow-wrap {
    padding: 14px 12px 28px;
  }

  .flow-main-card {
    border-radius: 18px;
    padding: 20px 16px !important;
  }

  .journey-stepper {
    padding: 8px 12px;
  }

  .stepper-step .step-label {
    display: none;
  }

  .stepper-step.active .step-label {
    font-size: 11px;
    display: inline;
  }

  .benefit-card-tile {
    text-align: center;
    flex-direction: column;
    align-items: center;
  }

  .bcard-visual {
    width: 140px;
  }

  .bcard-meta-row {
    justify-content: center;
  }

  .approved-terms-grid, .dtimeline-steps-row, .ocr-fields-grid {
    grid-template-columns: 1fr;
  }

  .flow-footer-actions {
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .flow-footer-actions .btn, .action-btn-group .btn {
    text-align: center !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    border-radius: 9999px !important;
    flex: 1 1 0 !important;
    justify-content: center !important;
    align-items: center !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    padding: 0 12px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
  }

  .flow-footer-actions .btn.out, .action-btn-group .btn.out {
    flex: .85 1 0 !important;
  }

  .flow-footer-actions .primary-flow-btn, .action-btn-group .primary-flow-btn {
    flex: 1.15 1 0 !important;
    padding: 0 10px !important;
    font-size: 11.5px !important;
  }

  .flow-footer-actions .btn span, .action-btn-group .btn span {
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    overflow: hidden !important;
  }
}

body.assessment-page .wrap.assessment-wrap {
  flex-direction: column;
  flex: 1 0 auto;
  justify-content: center;
  align-items: center;
  min-height: auto;
  padding: 24px 20px 36px;
  display: flex;
}

body.assessment-page .assessment-section {
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
}

body.assessment-page .assessment-card {
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  background: #ffffffe6;
  border: 1.5px solid #fffffff2;
  border-radius: 22px;
  box-shadow: 0 16px 45px #0f172a12, inset 0 1px 2px #fff;
  padding: 34px 40px !important;
}

.assessment-kicker-badge {
  letter-spacing: .06em;
  color: var(--teal-primary, #169287);
  text-transform: uppercase;
  background: #16928714;
  border: 1px solid #16928738;
  border-radius: 9999px;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 800;
  display: inline-flex;
}

body.assessment-page .assessment-header-block {
  margin-bottom: 12px;
}

body.assessment-page .sectionTitle {
  line-height: 1.2;
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-weight: 800;
  margin: 0 0 4px !important;
  font-size: 26px !important;
}

body.assessment-page .lead {
  color: #64748b;
  line-height: 1.45;
  margin-bottom: 0 !important;
  font-size: 14px !important;
}

.form-section-header {
  border-bottom: 1.2px solid #0f172a14;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  margin-bottom: 12px;
  padding-bottom: 6px;
  display: flex;
}

.section-num {
  font-family: var(--font-display);
  color: var(--teal-primary, #169287);
  letter-spacing: .04em;
  background: #1692871f;
  border: 1px solid #16928740;
  border-radius: 6px;
  padding: 2px 7px;
  font-size: 10.5px;
  font-weight: 800;
}

.section-title-text {
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--pine-dark, #0f172a);
  font-size: 12px;
  font-weight: 800;
}

body.assessment-page .assessment-inputs, body.assessment-page .assessment-questions {
  border-top: none;
  grid-template-columns: 1fr 1fr;
  gap: 12px 20px;
  margin-top: 0;
  padding-top: 0;
  display: grid;
}

body.assessment-page .form-group {
  flex-direction: column;
  margin-bottom: 0;
  display: flex;
}

body.assessment-page label {
  font-family: var(--font-body);
  color: #334155;
  letter-spacing: -.01em;
  margin-bottom: 5px;
  font-size: 12.5px;
  font-weight: 700;
}

body.assessment-page input, body.assessment-page select {
  color: #0f172a;
  background: #fffffffa;
  border: 1.5px solid #0f172a1a;
  border-radius: 12px;
  width: 100%;
  height: 44px;
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  box-shadow: inset 0 1px 1.5px #0f172a05;
}

body.assessment-page input:focus, body.assessment-page select:focus {
  border-color: var(--teal-primary, #169287);
  background: #fff;
  box-shadow: 0 0 0 3.5px #16928724, inset 0 1px 1px #fff;
}

body.assessment-page .assessment-footer-actions {
  border-top: 1.2px solid #0f172a14;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin-top: 24px;
  padding-top: 20px;
  display: flex;
}

.assessment-security-note {
  color: #64748b;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
}

.assessment-security-note svg {
  color: var(--teal-primary, #169287);
  flex-shrink: 0;
}

body.assessment-page .assessment-btn {
  background: linear-gradient(135deg, #169287fa 0%, #145348 100%);
  box-shadow: 0 8px 24px #16928747;
  border-radius: 9999px !important;
  padding: 12px 30px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

@media (max-width: 640px) {
  body.assessment-page .wrap.assessment-wrap {
    padding: 16px 14px 28px;
  }

  body.assessment-page .assessment-card {
    border-radius: 18px;
    padding: 22px 18px !important;
  }

  body.assessment-page .sectionTitle {
    font-size: 22px !important;
  }

  body.assessment-page .lead {
    font-size: 13px !important;
  }

  body.assessment-page .assessment-inputs, body.assessment-page .assessment-questions {
    gap: 12px;
    grid-template-columns: 1fr !important;
  }

  body.assessment-page .col-span-2 {
    grid-column: 1 / -1;
  }

  body.assessment-page label {
    margin-bottom: 4px;
    font-size: 12px;
  }

  body.assessment-page input, body.assessment-page select {
    height: 44px;
    padding: 8px 14px;
    font-size: 13.5px;
  }

  body.assessment-page .assessment-footer-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    margin-top: 18px !important;
    padding-top: 16px !important;
  }

  .assessment-security-note {
    text-align: center !important;
    justify-content: center !important;
    margin-bottom: 2px !important;
    font-size: 11.5px !important;
  }

  body.assessment-page .action-btn-group {
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    display: flex !important;
  }

  body.assessment-page .action-btn-group .btn {
    text-align: center !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    border-radius: 9999px !important;
    justify-content: center !important;
    align-items: center !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    padding: 0 12px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
  }

  body.assessment-page .action-btn-group .btn.out {
    flex: .85 1 0 !important;
  }

  body.assessment-page .action-btn-group .assessment-btn {
    flex: 1.15 1 0 !important;
    padding: 0 10px !important;
    font-size: 11.5px !important;
  }

  body.assessment-page .action-btn-group .btn span {
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    overflow: hidden !important;
  }
}

body.score-page .wrap.score-wrap {
  flex-direction: column;
  flex: 1 0 auto;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-height: auto;
  padding: 24px 20px 36px;
  display: flex;
}

.score-dashboard {
  flex-direction: column;
  gap: 18px;
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  display: flex;
}

.score-hero-card {
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  background: #ffffffe0;
  border: 1.5px solid #fffffff2;
  border-radius: 20px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  display: flex;
  box-shadow: 0 16px 40px #0f172a0f, inset 0 1px 2px #fff;
  padding: 28px 36px !important;
}

.score-hero-left {
  flex: 380px;
  align-items: center;
  gap: 20px;
  display: flex;
}

.score-avatar-wrap {
  flex-shrink: 0;
  position: relative;
}

.score-avatar-circle {
  width: 64px;
  height: 64px;
  color: var(--teal-primary, #169287);
  background: linear-gradient(135deg, #16928729 0%, #14534840 100%);
  border: 2px solid #16928766;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  display: flex;
  box-shadow: 0 4px 16px #1692871f;
}

.score-avatar-badge {
  color: #fff;
  background: #169287;
  border: 2px solid #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  display: flex;
  position: absolute;
  bottom: -2px;
  right: -2px;
  box-shadow: 0 2px 6px #00000026;
}

.score-user-meta {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.score-status-kicker {
  letter-spacing: .08em;
  color: var(--teal-primary, #169287);
  text-transform: uppercase;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 800;
  display: flex;
}

.pulse-dot {
  background: #22c55e;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  display: inline-block;
  box-shadow: 0 0 8px #22c55e;
}

.score-user-fullname {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  letter-spacing: -.02em;
  margin: 0;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.15;
}

.score-chips-row {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  display: flex;
}

.score-chip {
  color: #64748b;
  background: #0f172a0a;
  border: 1px solid #0f172a0f;
  border-radius: 6px;
  padding: 3px 10px;
  font-size: 11.5px;
  font-weight: 600;
}

.score-chip.highlight {
  color: var(--teal-primary, #169287);
  background: #16928714;
  border-color: #16928733;
}

.score-hero-right {
  flex-shrink: 0;
  align-items: center;
  display: flex;
}

.score-dial-box {
  background: #ffffffb3;
  border: 1.5px solid #16928733;
  border-radius: 16px;
  min-width: 290px;
  padding: 16px 24px;
  box-shadow: inset 0 1px 1px #fff, 0 4px 18px #0f172a0a;
}

.score-dial-label {
  letter-spacing: .08em;
  color: #64748b;
  text-transform: uppercase;
  margin-bottom: 4px;
  font-size: 10.5px;
  font-weight: 800;
}

.score-dial-number-row {
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;
  display: flex;
}

.score-dial-big-val {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  letter-spacing: -.03em;
  font-size: 40px;
  font-weight: 900;
  line-height: 1;
}

.score-dial-max {
  color: #94a3b8;
  font-size: 14px;
  font-weight: 700;
}

.score-scale-track {
  background: #0f172a14;
  border-radius: 999px;
  width: 100%;
  height: 7px;
  margin-bottom: 5px;
  position: relative;
  overflow: hidden;
}

.score-scale-fill {
  background: linear-gradient(90deg, #f59e0b 0%, #06b6d4 50%, #169287 100%);
  border-radius: 999px;
  height: 100%;
  transition: width .8s cubic-bezier(.4, 0, .2, 1);
}

.score-scale-labels {
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: .02em;
  justify-content: space-between;
  font-size: 9.5px;
  font-weight: 700;
  display: flex;
}

.score-kpi-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  display: grid;
}

.score-kpi-card {
  -webkit-backdrop-filter: blur(16px);
  background: #ffffffd9;
  border: 1.2px solid #fffffff2;
  border-radius: 16px;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 18px;
  transition: transform .2s, box-shadow .2s;
  display: flex;
  box-shadow: 0 4px 18px #0f172a0a, inset 0 1px 1px #fff;
}

.score-kpi-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px #0f172a14;
}

.kpi-icon-wrap {
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  display: flex;
}

.kpi-icon-wrap.income-icon {
  color: #169287;
  background: #1692871f;
}

.kpi-icon-wrap.dbr-icon {
  color: #10b981;
  background: #10b9811f;
}

.kpi-icon-wrap.util-icon {
  color: #0284c7;
  background: #0284c71f;
}

.kpi-icon-wrap.limit-icon {
  color: #9333ea;
  background: #9333ea1f;
}

.kpi-info {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
}

.kpi-label {
  letter-spacing: .06em;
  color: #64748b;
  text-transform: uppercase;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-bottom: 2px;
  font-size: 10.5px;
  font-weight: 800;
  overflow: hidden;
}

.kpi-label-row {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4px;
  display: flex;
}

.kpi-val {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  font-size: 19px;
  font-weight: 800;
  line-height: 1.2;
}

.kpi-badge-val {
  font-family: var(--font-display);
  border-radius: 999px;
  padding: 1px 7px;
  font-size: 13px;
  font-weight: 800;
}

.kpi-badge-val.green {
  color: #10b981;
  background: #10b9811f;
}

.kpi-badge-val.teal {
  color: #169287;
  background: #1692871f;
}

.kpi-progress-bar {
  background: #0f172a14;
  border-radius: 999px;
  width: 100%;
  height: 5px;
  margin: 3px 0 4px;
  overflow: hidden;
}

.kpi-bar-fill {
  border-radius: 999px;
  height: 100%;
  transition: width .6s;
}

.kpi-bar-fill.green {
  background: #10b981;
}

.kpi-bar-fill.teal {
  background: #169287;
}

.kpi-subtext {
  color: #64748b;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-top: 1px;
  font-size: 11px;
  font-weight: 500;
  overflow: hidden;
}

.score-content-grid {
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  display: grid;
}

.score-details-card, .score-ai-insights-card {
  -webkit-backdrop-filter: blur(20px);
  background: #ffffffe0;
  border: 1.5px solid #fffffff2;
  border-radius: 20px;
  flex-direction: column;
  display: flex;
  box-shadow: 0 12px 36px #0f172a0d, inset 0 1px 1.5px #fff;
  padding: 26px 28px !important;
}

.score-card-header {
  border-bottom: 1.2px solid #0f172a14;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  padding-bottom: 16px;
  display: flex;
}

.card-header-icon {
  color: #475569;
  background: #0f172a0d;
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: flex;
}

.card-header-icon.ai-sparkle-icon {
  color: #169287;
  background: #1692871f;
}

.card-header-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  margin: 0;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.2;
}

.card-header-sub {
  color: #64748b;
  margin: 2px 0 0;
  font-size: 11.5px;
  font-weight: 500;
}

.ai-kicker-tag {
  letter-spacing: .06em;
  color: var(--teal-primary, #169287);
  text-transform: uppercase;
  margin-bottom: 2px;
  font-size: 10.5px;
  font-weight: 800;
}

.params-table-grid {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}

.param-row-item {
  background: #f8fafcd9;
  border: 1px solid #0f172a0f;
  border-radius: 12px;
  flex-direction: column;
  gap: 2px;
  padding: 11px 14px;
  display: flex;
}

.param-row-item.full-width-row {
  background: #1692870a;
  border-color: #1692872e;
  flex-direction: row;
  grid-column: 1 / -1;
  justify-content: space-between;
  align-items: center;
}

.p-row-label {
  letter-spacing: .05em;
  color: #64748b;
  text-transform: uppercase;
  font-size: 10.5px;
  font-weight: 800;
}

.p-row-value {
  font-family: var(--font-display);
  color: var(--pine-dark, #0f172a);
  word-break: break-all;
  font-size: 14.5px;
  font-weight: 700;
}

.status-badge {
  border-radius: 999px;
  align-items: center;
  width: fit-content;
  padding: 4px 12px;
  font-size: 12.5px;
  font-weight: 800;
  display: inline-flex;
}

.status-badge.green {
  color: #16a34a;
  background: #22c55e1f;
  border: 1px solid #22c55e40;
}

.status-badge.teal-gold {
  color: #169287;
  background: linear-gradient(135deg, #16928726 0%, #1453481a 100%);
  border: 1.2px solid #16928759;
}

.ai-narrative-box {
  background: linear-gradient(135deg, #1692870f 0%, #1c37350a 100%);
  border: 1.2px solid #1692872e;
  border-radius: 14px;
  margin-bottom: 16px;
  padding: 16px 18px;
}

.ai-narrative-text {
  color: #334155;
  margin: 0;
  font-size: 13.5px;
  line-height: 1.6;
}

.ai-pillars-row {
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-bottom: 16px;
  display: grid;
}

.ai-pillar-item {
  background: #f8fafcd9;
  border: 1px solid #0f172a0f;
  border-radius: 12px;
  flex-direction: column;
  gap: 3px;
  padding: 10px 12px;
  display: flex;
}

.pillar-top {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.pillar-label {
  letter-spacing: .04em;
  color: #64748b;
  text-transform: uppercase;
  font-size: 9.5px;
  font-weight: 800;
}

.pillar-score {
  font-family: var(--font-display);
  color: var(--teal-primary, #169287);
  font-size: 11px;
  font-weight: 800;
}

.pillar-bar {
  background: #0f172a14;
  border-radius: 999px;
  width: 100%;
  height: 4px;
  margin: 2px 0;
  overflow: hidden;
}

.pillar-bar-fill {
  background: linear-gradient(90deg, #06b6d4, #169287);
  border-radius: 999px;
  height: 100%;
}

.pillar-sub {
  color: #64748b;
  font-size: 9.5px;
  font-weight: 600;
}

.persona-tag-wrap {
  border-top: 1px solid #0f172a0f;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
  padding-top: 12px;
  display: flex;
}

.persona-indicator-label {
  color: #64748b;
  font-size: 11.5px;
  font-weight: 700;
}

.persona-pill {
  color: var(--teal-primary, #169287);
  background: #1692871f;
  border: 1px solid #16928740;
  border-radius: 999px;
  align-items: center;
  padding: 4px 14px;
  font-size: 12px;
  font-weight: 800;
  display: inline-flex;
}

.score-bottom-actions {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 16px 0 0;
  display: flex;
}

body.theme-dark .score-hero-card, body.theme-dark .score-kpi-card, body.theme-dark .score-details-card, body.theme-dark .score-ai-insights-card, body.theme-cyber .score-hero-card, body.theme-cyber .score-kpi-card, body.theme-cyber .score-details-card, body.theme-cyber .score-ai-insights-card {
  background: #0f172abf;
  border-color: #ffffff1f;
}

body.theme-dark .score-user-fullname, body.theme-dark .score-dial-big-val, body.theme-dark .kpi-val, body.theme-dark .card-header-title, body.theme-dark .p-row-value, body.theme-cyber .score-user-fullname, body.theme-cyber .score-dial-big-val, body.theme-cyber .kpi-val, body.theme-cyber .card-header-title, body.theme-cyber .p-row-value {
  color: #fff;
}

body.theme-dark .param-row-item, body.theme-dark .ai-pillar-item, body.theme-cyber .param-row-item, body.theme-cyber .ai-pillar-item {
  background: #ffffff0d;
  border-color: #ffffff14;
}

body.theme-dark .ai-narrative-text, body.theme-cyber .ai-narrative-text {
  color: #cbd5e1;
}

@media (max-width: 960px) {
  .score-kpi-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .score-content-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .score-hero-card {
    padding: 20px !important;
  }

  .score-hero-left {
    flex-direction: column;
    align-items: flex-start;
  }

  .score-hero-right {
    width: 100%;
  }

  .score-dial-box {
    width: 100%;
    min-width: 0;
  }

  .score-kpi-grid, .params-table-grid, .ai-pillars-row {
    grid-template-columns: 1fr;
  }

  .score-bottom-actions {
    flex-direction: column;
    width: 100%;
  }

  .score-bottom-actions .btn {
    text-align: center;
    justify-content: center;
    width: 100%;
  }
}

body.home-page .orbital-hero-section {
  flex-direction: column;
  justify-content: space-evenly;
  align-items: center;
  height: 100%;
  max-height: 100%;
  margin: 0 auto;
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  overflow: hidden;
}

.orbital-stage {
  perspective: 1200px;
  width: 100%;
  max-width: 1100px;
  height: 330px;
  transform-style: preserve-3d;
  justify-content: center;
  align-items: flex-end;
  margin: 6px auto 0;
  display: flex;
  position: relative;
}

.hero-feature-badge {
  z-index: 25;
  -webkit-backdrop-filter: blur(28px) saturate(200%);
  pointer-events: auto;
  -webkit-user-select: none;
  user-select: none;
  background: #ffffffd1;
  border: 1.5px solid #fffffff2;
  border-radius: 16px;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  transition: transform .25s cubic-bezier(.16, 1, .3, 1), box-shadow .25s, border-color .25s, background .25s;
  animation: 5s ease-in-out infinite alternate heroBadgeFloat;
  display: flex;
  position: absolute;
  box-shadow: inset 0 1.5px 2px #ffffffe6, 0 10px 24px #16928717, 0 2px 6px #00000008;
}

.hero-feature-badge:hover {
  border-color: var(--teal-primary, #169287);
  background: #fff;
  transform: translateY(-3px)scale(1.02);
  box-shadow: inset 0 2px 2px #fff, 0 14px 32px #1692872e, 0 0 16px #16928738;
}

@keyframes heroBadgeFloat {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(-5px);
  }
}

.hero-badge-tl {
  animation-delay: 0s;
  top: 38px;
  left: 2.5%;
}

.hero-badge-bl {
  animation-delay: 1.8s;
  bottom: 50px;
  left: 2.5%;
}

.hero-badge-tr {
  animation-delay: .8s;
  top: 38px;
  right: 2.5%;
}

.hero-badge-br {
  animation-delay: 2.4s;
  bottom: 50px;
  right: 2.5%;
}

.hbadge-icon-box {
  width: 34px;
  height: 34px;
  color: var(--teal-primary, #169287);
  z-index: 1;
  background: linear-gradient(135deg, #1692871a 0%, #06b6d414 100%);
  border: 1px solid #16928733;
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
  box-shadow: inset 0 1px 1px #fff;
}

.hbadge-text {
  text-align: left;
  z-index: 1;
  flex-direction: column;
  line-height: 1.25;
  display: flex;
  position: relative;
}

.hbadge-tag {
  font-family: var(--font-display);
  color: var(--teal-primary, #169287);
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: .62rem;
  font-weight: 800;
}

.hbadge-title {
  font-family: var(--font-display);
  color: var(--pine-dark, #1c3735);
  white-space: nowrap;
  font-size: .78rem;
  font-weight: 800;
}

.center-man-container {
  pointer-events: none;
  justify-content: center;
  align-items: flex-end;
  width: min(270px, 55vw);
  height: 100%;
  max-height: 385px;
  display: flex;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 30 !important;
}

.center-man-img {
  object-fit: contain;
  object-position: bottom center;
  filter: drop-shadow(0 10px 24px #00000052) drop-shadow(0 0 24px #1692874d);
  width: 100%;
  height: 100%;
}

.lifestyle-scene-layer {
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 40 !important;
}

.scene-item {
  pointer-events: none;
  will-change: transform;
  position: absolute;
}

.scene-img {
  object-fit: contain;
  filter: drop-shadow(0 8px 18px #0000002e);
  width: 100%;
  height: 100%;
}

.item-balloon-blue {
  width: 68px;
  animation: 5s ease-in-out infinite alternate balloonFloatLeft;
  top: 25px;
  left: calc(50% - 190px);
}

.item-cart {
  width: 95px;
  animation: 5.2s ease-in-out infinite alternate cartFloat;
  top: 98px;
  left: calc(50% - 260px);
}

.item-cart .scene-img, .item-cart img {
  transform: scaleX(-1);
}

.item-balloon-teal {
  width: 65px;
  animation: 5.5s ease-in-out infinite alternate balloonFloatRight;
  top: 30px;
  left: calc(50% + 145px);
}

.item-flight {
  width: 105px;
  animation: 6s ease-in-out infinite alternate planeHover;
  top: 102px;
  left: calc(50% + 145px);
}

.item-flight .scene-img, .item-flight img {
  transform: scaleX(-1);
}

.scene-cloud {
  pointer-events: none;
  filter: blur(6px);
  background: radial-gradient(#ffffffd9 0%, #ffffff73 55%, #0000 75%);
  border-radius: 50%;
  position: absolute;
}

.scene-cloud-1 {
  width: 140px;
  height: 45px;
  animation: 8s ease-in-out infinite alternate cloudDrift1;
  top: 80px;
  left: calc(50% - 230px);
}

.scene-cloud-2 {
  width: 140px;
  height: 45px;
  animation: 9s ease-in-out infinite alternate cloudDrift2;
  top: 80px;
  left: calc(50% + 130px);
}

.scene-cloud-3 {
  opacity: .55;
  width: 130px;
  height: 42px;
  top: 35px;
  left: calc(50% - 95px);
}

@keyframes balloonFloatLeft {
  0% {
    transform: translateY(0)rotate(-2deg);
  }

  50% {
    transform: translateY(-12px)rotate(1.5deg)scale(1.03);
  }

  100% {
    transform: translateY(0)rotate(-2deg);
  }
}

@keyframes balloonFloatRight {
  0% {
    transform: translateY(0)rotate(1.5deg);
  }

  50% {
    transform: translateY(-14px)rotate(-2deg)scale(1.03);
  }

  100% {
    transform: translateY(0)rotate(1.5deg);
  }
}

@keyframes planeHover {
  0% {
    transform: translate(0)rotate(0);
  }

  50% {
    transform: translate(-6px, -8px)rotate(-1.5deg);
  }

  100% {
    transform: translate(0)rotate(0);
  }
}

@keyframes cartFloat {
  0% {
    transform: translateY(0)rotate(0);
  }

  50% {
    transform: translateY(-7px)rotate(1.2deg);
  }

  100% {
    transform: translateY(0)rotate(0);
  }
}

@keyframes cloudDrift1 {
  0% {
    opacity: .65;
    transform: translateX(0);
  }

  100% {
    opacity: .9;
    transform: translateX(12px);
  }
}

@keyframes cloudDrift2 {
  0% {
    opacity: .6;
    transform: translateX(0);
  }

  100% {
    opacity: .85;
    transform: translateX(-14px);
  }
}

.energy-ribbons-back, .energy-ribbons-front {
  pointer-events: none;
  width: 620px;
  height: 440px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.energy-ribbons-back {
  z-index: 8;
}

.energy-ribbons-front {
  z-index: 14;
}

.energy-ribbon-svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.streamer-glow-outer {
  stroke-dasharray: 180 35;
  filter: drop-shadow(0 0 10px #169287) drop-shadow(0 0 20px #169287cc);
  animation: 5s linear infinite streamFlow;
}

.streamer-glow-secondary {
  stroke-dasharray: 130 25;
  filter: drop-shadow(0 0 8px #fff) drop-shadow(0 0 16px #fffc);
  animation: 6s linear infinite streamFlowRev;
}

.streamer-core {
  stroke-dasharray: 160 40;
  filter: drop-shadow(0 0 3px #fff);
  animation: 5s linear infinite streamFlow;
}

@keyframes streamFlow {
  from {
    stroke-dashoffset: 440px;
  }

  to {
    stroke-dashoffset: 0;
  }
}

@keyframes streamFlowRev {
  from {
    stroke-dashoffset: 0;
  }

  to {
    stroke-dashoffset: 470px;
  }
}

.neon-ring {
  transform-style: preserve-3d;
  pointer-events: none;
  border-radius: 50%;
  position: absolute;
  top: 66%;
  left: 50%;
  box-shadow: 0 0 20px #169287, inset 0 0 20px #169287;
}

.ring-1 {
  z-index: 9;
  border: 2.5px solid #169287;
  width: 380px;
  height: 118px;
  animation: 3s ease-in-out infinite alternate pulseGlow;
  transform: translate(-50%, -50%)rotateX(72deg)rotateZ(-12deg);
}

.ring-2 {
  z-index: 11;
  border: 2px solid #06b6d4;
  width: 320px;
  height: 100px;
  animation: 4s ease-in-out infinite alternate pulseGlow2;
  transform: translate(-50%, -50%)rotateX(76deg)rotateZ(18deg);
  box-shadow: 0 0 20px #06b6d4;
}

@keyframes pulseGlow {
  0% {
    opacity: .7;
    filter: drop-shadow(0 0 8px #169287);
  }

  100% {
    opacity: 1;
    filter: drop-shadow(0 0 20px #169287);
  }
}

@keyframes pulseGlow2 {
  0% {
    opacity: .6;
    filter: drop-shadow(0 0 10px #06b6d4);
  }

  100% {
    opacity: 1;
    filter: drop-shadow(0 0 24px #06b6d4);
  }
}

.card-orbit-track {
  width: 0;
  height: 0;
  transform-style: preserve-3d;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
}

.orbit-card {
  color: #fff;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: auto;
  will-change: transform, opacity;
  background: #1c3735;
  border: 1.5px solid #ffffff59;
  border-radius: 10px;
  width: 172px;
  height: 108px;
  transition: border-color .3s, box-shadow .3s;
  position: absolute;
  top: -54px;
  left: -86px;
  overflow: hidden;
  box-shadow: 0 10px 25px #00000073, 0 0 16px #1692874d;
}

.orbit-card:hover {
  border-color: #06b6d4;
  box-shadow: 0 15px 35px #000000b3, 0 0 24px #06b6d4b3;
}

.orbit-card img.orbit-card-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

@media (max-width: 1440px) and (min-width: 1281px) {
  .orbital-stage {
    max-width: 1200px;
    height: clamp(310px, 42vh, 360px);
  }

  .hero-feature-badge {
    border-radius: 14px;
    gap: 8px;
    padding: 6px 12px;
  }

  .hbadge-icon-box {
    border-radius: 9px;
    width: 30px;
    height: 30px;
  }

  .hbadge-icon-box svg {
    width: 16px;
    height: 16px;
  }

  .hbadge-tag {
    font-size: .6rem;
  }

  .hbadge-title, .hbadge-desc {
    font-size: .72rem;
  }

  .hero-badge-tl {
    top: 20px;
    left: 1.5%;
  }

  .hero-badge-bl {
    bottom: 25px;
    left: 1.5%;
  }

  .hero-badge-tr {
    top: 20px;
    right: 1.5%;
  }

  .hero-badge-br {
    bottom: 25px;
    right: 1.5%;
  }
}

@media (max-width: 1280px) and (min-width: 1025px) {
  .orbital-title {
    font-size: clamp(2.1rem, 3.1vw, 2.8rem) !important;
  }

  .orbital-stage {
    max-width: 1100px;
    height: clamp(290px, 40vh, 330px);
  }

  .hero-feature-badge {
    border-radius: 12px;
    gap: 7px;
    padding: 5px 10px;
  }

  .hbadge-icon-box {
    border-radius: 8px;
    width: 26px;
    height: 26px;
  }

  .hbadge-icon-box svg {
    width: 14px;
    height: 14px;
  }

  .hbadge-tag {
    font-size: .56rem;
  }

  .hbadge-title, .hbadge-desc {
    font-size: .68rem;
  }

  .hero-badge-tl {
    top: 15px;
    left: 1%;
  }

  .hero-badge-bl {
    bottom: 20px;
    left: 1%;
  }

  .hero-badge-tr {
    top: 15px;
    right: 1%;
  }

  .hero-badge-br {
    bottom: 20px;
    right: 1%;
  }
}

@media (max-width: 1024px) and (min-width: 769px) {
  .orbital-title {
    font-size: clamp(1.9rem, 2.8vw, 2.4rem) !important;
  }

  .orbital-stage {
    max-width: 1000px;
    height: clamp(270px, 38vh, 305px);
  }

  .hero-feature-badge {
    border-radius: 10px !important;
    gap: 6px !important;
    padding: 4px 8px !important;
    display: flex !important;
  }

  .hbadge-icon-box {
    border-radius: 6px !important;
    width: 22px !important;
    height: 22px !important;
  }

  .hbadge-icon-box svg {
    width: 12px !important;
    height: 12px !important;
  }

  .hbadge-tag {
    font-size: .5rem !important;
  }

  .hbadge-title, .hbadge-desc {
    font-size: .62rem !important;
  }

  .hero-badge-tl {
    top: 10px !important;
    left: .5% !important;
  }

  .hero-badge-bl {
    bottom: 15px !important;
    left: .5% !important;
  }

  .hero-badge-tr {
    top: 10px !important;
    right: .5% !important;
  }

  .hero-badge-br {
    bottom: 15px !important;
    right: .5% !important;
  }

  .hero-header-bottom {
    margin-top: 2px !important;
    margin-bottom: 0 !important;
  }

  .orbital-desc {
    margin-bottom: 6px !important;
    font-size: .76rem !important;
    line-height: 1.35 !important;
  }

  .hero-ctas-orbital .btn {
    height: 34px !important;
    padding: 6px 14px !important;
    font-size: 11.5px !important;
  }
}

@media (max-height: 750px) and (min-width: 769px) {
  header {
    justify-content: center !important;
    height: 68px !important;
    min-height: 68px !important;
    padding: 0 20px !important;
  }

  body.home-page .wrap {
    min-height: calc(100dvh - 56px) !important;
    padding: 4px 16px 10px !important;
  }

  .orbital-hero-section {
    min-height: calc(100dvh - 72px) !important;
  }

  .hero-header-top {
    margin-bottom: 2px !important;
  }

  .hero-header-bottom {
    margin-top: 4px !important;
    margin-bottom: 2px !important;
  }

  .orbital-desc {
    margin-bottom: 6px !important;
  }

  .hero-powered-by {
    margin-top: 4px !important;
    padding-top: 30px !important;
  }
}

.hero-mobile-features {
  display: none;
}

@media (max-width: 860px) {
  .nav-item-home, header nav a[href="index.html"], header nav a.nav-item-home {
    display: none !important;
  }

  header {
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    height: 83px !important;
    min-height: 83px !important;
    max-height: 83px !important;
    padding: 15px 16px 0 !important;
    display: flex !important;
    position: relative !important;
  }

  header nav, header .header-actions, header > div:last-child {
    display: none !important;
  }

  body.home-page {
    flex-direction: column;
    justify-content: space-between;
    height: 100dvh;
    min-height: 100dvh;
    display: flex;
    overflow-x: hidden;
    overflow-y: auto !important;
  }

  body.home-page .wrap {
    flex-direction: column;
    flex: auto;
    justify-content: space-between;
    align-items: center;
    height: auto;
    min-height: calc(100dvh - 83px);
    display: flex;
    overflow: visible;
    padding: 6px 16px 20px !important;
  }

  body.home-page .orbital-hero-section {
    flex-direction: column;
    flex: auto;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 100%;
    min-height: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    overflow: visible;
  }

  .hero-feature-badge {
    display: none;
  }

  .hero-header-top {
    text-align: center;
    flex-shrink: 0;
    margin-bottom: 8px;
    padding-bottom: 0;
    padding-left: 4px;
    padding-right: 4px;
    margin-top: 40px !important;
    padding-top: 0 !important;
  }

  .hero-tagline {
    align-items: center;
    gap: 6px;
    margin-top: 0;
    margin-bottom: 8px;
    padding: 4px 14px;
    font-size: .72rem;
    display: inline-flex;
  }

  .orbital-title {
    margin-bottom: 0;
    font-weight: 800;
    line-height: 1.22;
    font-size: clamp(1.4rem, 5.8vw, 1.75rem) !important;
  }

  .orbital-stage {
    perspective: 800px;
    flex: auto;
    justify-content: center;
    align-items: flex-end;
    width: 100%;
    max-width: 480px;
    height: clamp(330px, 46vh, 400px);
    margin: 4px auto;
    display: flex;
    position: relative;
    transform: none;
  }

  .center-man-container {
    z-index: 30 !important;
    pointer-events: none !important;
    justify-content: center !important;
    align-items: flex-end !important;
    width: min(300px, 75vw) !important;
    height: 100% !important;
    max-height: 385px !important;
    margin: 0 auto !important;
    display: flex !important;
    position: absolute !important;
    bottom: 100px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  .card-orbit-track {
    top: calc(50% + 50px) !important;
    left: 50% !important;
  }

  .center-man-img {
    object-fit: contain;
    object-position: bottom center;
    width: 100%;
    max-width: 280px;
    height: 100%;
    margin: 0 auto;
    display: block;
  }

  .character-aura-glow {
    width: 320px;
    height: 320px;
    top: calc(50% + 50px) !important;
  }

  .lifestyle-scene-layer {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 110px;
    left: 0;
    overflow: visible;
    z-index: 40 !important;
  }

  .item-balloon-blue {
    z-index: 45 !important;
    width: clamp(60px, 17vw, 78px) !important;
    top: 15px !important;
    left: clamp(2%, 50% - 170px, 10%) !important;
  }

  .item-cart {
    z-index: 45 !important;
    width: clamp(70px, 21vw, 90px) !important;
    top: 135px !important;
    left: clamp(1%, 50% - 185px, 8%) !important;
  }

  .item-balloon-teal {
    z-index: 45 !important;
    width: clamp(55px, 16vw, 74px) !important;
    top: 20px !important;
    left: auto !important;
    right: clamp(2%, 50% - 160px, 10%) !important;
  }

  .item-flight {
    z-index: 45 !important;
    width: clamp(76px, 23vw, 96px) !important;
    top: 135px !important;
    left: auto !important;
    right: clamp(1%, 50% - 175px, 8%) !important;
  }

  .scene-cloud-1 {
    width: 90px;
    height: 28px;
    top: 55px;
    left: calc(50% - 140px);
  }

  .scene-cloud-2 {
    width: 95px;
    height: 30px;
    top: 48px;
    left: calc(50% + 55px);
  }

  .scene-cloud-3 {
    width: 70px;
    height: 20px;
    top: 70px;
    left: calc(50% - 45px);
  }

  .orbit-card {
    border-radius: 9px;
    width: clamp(120px, 32vw, 146px);
    height: clamp(75px, 20vw, 92px);
    top: -45px;
    left: -72px;
    overflow: hidden;
    box-shadow: 0 12px 28px #0000006b;
  }

  .orbit-card-img {
    object-fit: cover;
    border-radius: 9px;
    width: 100%;
    height: 100%;
    display: block;
  }

  .hero-header-bottom {
    text-align: center;
    flex-direction: column;
    flex-shrink: 0;
    align-items: center;
    width: 100%;
    max-width: 390px;
    margin-top: auto;
    margin-bottom: 0;
    padding: 8px 8px 0;
    display: flex;
    transform: translateY(-25px);
  }

  .orbital-desc {
    color: #475569;
    max-width: 370px;
    margin: 0 auto 12px;
    font-size: .85rem;
    line-height: 1.45;
  }

  .hero-ctas-orbital {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10px;
    width: 100%;
    max-width: 370px;
    margin: 0 auto;
    display: flex;
  }

  .hero-ctas-orbital .btn {
    text-align: center;
    white-space: nowrap;
    border-radius: 9999px;
    flex: 1 1 0;
    justify-content: center;
    align-items: center;
    min-width: 0;
    height: 44px;
    padding: 10px 12px;
    font-size: .84rem;
    font-weight: 700;
    display: inline-flex;
  }

  .hero-powered-by {
    color: #64748b;
    justify-content: center;
    align-items: center;
    gap: 6px;
    width: 100%;
    font-size: .74rem;
    margin-top: 39px !important;
    padding: 6px 0 2px !important;
    display: flex !important;
  }

  .powered-label {
    color: #64748b;
    font-size: .74rem;
    font-weight: 600;
  }

  .powered-by-logo-img {
    object-fit: contain;
    display: block;
    width: auto !important;
    height: 14px !important;
    max-height: 14px !important;
  }

  .nav-text-desktop {
    display: inline !important;
  }

  .nav-text-mobile, header nav a[href="index.html"] {
    display: none !important;
  }

  header {
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    height: 83px !important;
    min-height: 83px !important;
    max-height: 83px !important;
    padding: 15px 16px 0 !important;
    position: relative !important;
  }

  header .brand, .brand {
    flex-shrink: 0 !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    display: flex !important;
  }

  header .brand img, .brand img {
    object-fit: contain !important;
    width: auto !important;
    max-width: 200px !important;
    height: 56px !important;
    max-height: 56px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  header nav, header .header-actions {
    display: none !important;
  }

  .floating-flow-segment, .flow-footer-actions, .assessment-footer-actions {
    max-width: calc(100vw - 20px) !important;
  }

  .floating-segment-inner {
    gap: 8px !important;
    padding: 5px 8px !important;
  }

  .floating-segment-inner .btn, .flow-footer-actions .btn, .assessment-footer-actions .btn, .action-btn-group .btn, .primary-flow-btn, .assessment-btn {
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 0 16px !important;
    font-size: 12.5px !important;
  }

  footer {
    text-align: center !important;
    padding: 20px 0 16px !important;
  }

  footer .wrap.foot, footer .foot, .footer-three-column {
    text-align: center !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 0 16px !important;
  }

  .footer-center-brand, footer .brand, footer a.brand {
    order: 1 !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    display: flex !important;
    position: static !important;
    transform: none !important;
  }

  .footer-serv-logo, footer .brand img {
    height: 48px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  .footer-left-powered {
    text-align: center !important;
    order: 2 !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    display: inline-flex !important;
  }

  .footer-right-desc {
    text-align: center !important;
    white-space: normal !important;
    order: 3 !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    font-size: 11.5px !important;
    display: flex !important;
  }

  .theme-sidebar {
    z-index: 1000 !important;
    width: 280px !important;
    top: auto !important;
    bottom: 12px !important;
    right: -280px !important;
  }

  .theme-sidebar.open {
    right: 0 !important;
  }

  .theme-sidebar-toggle {
    border-radius: 10px 0 0 10px !important;
    width: 38px !important;
    height: 38px !important;
    top: auto !important;
    bottom: 0 !important;
    left: -38px !important;
  }
}

.hero-container {
  z-index: 10;
  grid-template-columns: 1.15fr .85fr;
  align-items: center;
  gap: 40px;
  max-width: 1240px;
  min-height: calc(100vh - 120px);
  margin: 0 auto;
  padding: 30px 24px 50px;
  display: grid;
  position: relative;
}

.hero-left {
  max-width: 600px;
}

.hero-right {
  perspective: 1200px;
  justify-content: center;
  align-items: center;
  height: 520px;
  display: flex;
  position: relative;
}

.card-deck {
  width: 340px;
  height: 215px;
  transform-style: preserve-3d;
  cursor: pointer;
  transition: transform .15s cubic-bezier(.1, .8, .2, 1);
  position: relative;
}

.credit-card {
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  will-change: transform, opacity, filter;
  -webkit-user-select: none;
  user-select: none;
  background: #0f172a;
  border: 1.5px solid #ffffffd9;
  border-radius: 18px;
  transition: transform .65s cubic-bezier(.2, .8, .25, 1), opacity .65s, filter .65s;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  box-shadow: 0 20px 45px -10px #0f172a4d, inset 0 1px 2px #fff9, inset 0 -1px 2px #0000004d;
}

.credit-card img.deck-card-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.credit-card img.deck-card-img.is-vertical {
  object-fit: contain;
  background: linear-gradient(145deg, #ffffff1a, #0b1426e6);
  padding: 6px 16px;
}

.credit-card.dropping {
  pointer-events: none;
  opacity: 0 !important;
  filter: blur(10px) !important;
  transform: translateY(240px)translateZ(80px)rotateX(-22deg)scale(.92) !important;
}

.pos-0 {
  opacity: 1;
  z-index: 6;
  filter: blur();
  transform: translateY(0)translateZ(0)scale(1);
}

.pos-1 {
  opacity: .88;
  z-index: 5;
  filter: blur(.4px);
  transform: translateY(-28px)translateZ(-50px)scale(.93);
}

.pos-2 {
  opacity: .7;
  z-index: 4;
  filter: blur(1px);
  transform: translateY(-56px)translateZ(-100px)scale(.86);
}

.pos-3 {
  opacity: .45;
  z-index: 3;
  filter: blur(1.8px);
  transform: translateY(-84px)translateZ(-150px)scale(.79);
}

.pos-hidden {
  opacity: 0;
  z-index: 1;
  filter: blur(3px);
  pointer-events: none;
  transform: translateY(-105px)translateZ(-200px)scale(.72);
}

@media (max-width: 968px) {
  .hero-container {
    text-align: center;
    grid-template-columns: 1fr;
    padding-top: 40px;
  }

  .hero-left {
    margin: 0 auto;
  }

  .hero-ctas {
    justify-content: center;
  }

  .hero-right {
    height: 400px;
  }
}

.card-glass:not(.with-image):before {
  content: "";
  opacity: .65;
  pointer-events: none;
  background-image: radial-gradient(#ffffff73 1px, #0000 1px);
  background-size: 8px 8px;
  position: absolute;
  inset: 0;
}

.card-top {
  z-index: 2;
  justify-content: space-between;
  align-items: center;
  display: flex;
  position: relative;
}

.card-chip {
  background: linear-gradient(135deg, #ffffffd9, #ffffff40);
  border: 1px solid #ffffffe6;
  border-radius: 4px;
  width: 30px;
  height: 22px;
}

.card-network {
  letter-spacing: .06em;
  color: #fffffffa;
  text-transform: uppercase;
  text-shadow: 0 1px 3px #0003;
  font-size: .74rem;
  font-weight: 800;
}

.card-mid {
  z-index: 2;
  position: relative;
}

.card-perk {
  color: #fff;
  text-shadow: 0 2px 5px #0003;
  font-size: .86rem;
  font-weight: 700;
  line-height: 1.25;
}

.card-bottom {
  z-index: 2;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
  position: relative;
}

.card-name {
  color: #fffffff2;
  letter-spacing: .02em;
  font-size: .72rem;
  font-weight: 700;
}

.card-digits {
  color: #ffffffd9;
  font-family: monospace;
  font-size: .68rem;
  font-weight: 600;
}

.tint-blue-1 .card-glass {
  background: linear-gradient(145deg, #3b82f673, #06b6d44d);
}

.tint-blue-2 .card-glass {
  background: linear-gradient(145deg, #3b82f68c, #6366f166);
}

.tint-blue-3 .card-glass {
  background: linear-gradient(145deg, #60a5fa80, #3b82f666);
}

.tint-cyan .card-glass {
  background: linear-gradient(145deg, #06b6d48c, #3b82f659);
}

.tint-purple .card-glass {
  background: linear-gradient(145deg, #a855f78c, #3b82f666);
}

.tint-pink-1 .card-glass {
  background: linear-gradient(145deg, #ec48998c, #a855f766);
}

.tint-pink-2 .card-glass {
  background: linear-gradient(145deg, #f43f5e99, #ec489980);
}

.fin-card:hover {
  border-color: #fff;
  box-shadow: 0 35px 70px -10px #3b82f673, 0 0 35px #fffffff2;
  z-index: 100 !important;
}

@media (max-width: 768px) {
  header {
    height: 83px !important;
    min-height: 83px !important;
    max-height: 83px !important;
    padding: 15px 16px 0 !important;
  }

  .cards-stage {
    height: 360px;
    transform: scale(.68);
  }
}

.card-artwork-wrap {
  aspect-ratio: 1.586;
  background: #0f172a;
  border: 1.5px solid #ffffffd9;
  border-radius: 14px;
  width: 100%;
  margin-bottom: 18px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 14px 32px #0000002e;
}

.card-artwork-wrap img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .4s cubic-bezier(.16, 1, .3, 1);
  display: block;
}

.card.prod:hover .card-artwork-wrap img {
  transform: scale(1.04);
}

.fin-card .card-glass.with-image {
  background: #0b1426;
  border: 1.5px solid #ffffffd9;
  border-radius: 16px;
  padding: 0;
  overflow: hidden;
  box-shadow: 0 22px 50px #00000059;
}

.fin-card .card-glass.with-image:before {
  display: none !important;
}

.fin-card-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.fin-card-img.is-vertical {
  object-fit: contain;
  background: linear-gradient(145deg, #ffffff1a, #0b1426d9);
  padding: 6px 16px;
}

.card-glass-overlay {
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(to top, #030712e0 0%, #03071233 45%, #0000 100%);
  flex-direction: column;
  justify-content: space-between;
  padding: 14px 16px;
  transition: opacity .3s;
  display: flex;
  position: absolute;
  inset: 0;
}

.fin-card:hover .card-glass-overlay {
  opacity: 1;
}

.card-glass-hover-badge {
  -webkit-backdrop-filter: blur(12px);
  color: #fff;
  text-align: center;
  background: #ffffff47;
  border: 1px solid #ffffffb3;
  border-radius: 9999px;
  align-self: flex-start;
  padding: 6px 14px;
  font-size: 12px;
  font-weight: 700;
  box-shadow: 0 4px 16px #00000059;
}

.card-glass-hover-name {
  color: #fff;
  text-shadow: 0 2px 8px #000000b3;
  letter-spacing: -.01em;
  font-size: 14px;
  font-weight: 800;
}

/*# sourceMappingURL=app_globals_0yg4wg8.css.map*/