/* ============================================================
   Lumo — fintech-style landing page
   Dark theme, violet accent, mint-green for money figures
   ============================================================ */

:root{
  --bg:        #0A0A0F;
  --bg-2:      #0E0C16;
  --card:      #14121F;
  --card-2:    #191627;
  --line:      rgba(255,255,255,.085);
  --line-soft: rgba(255,255,255,.05);
  --ink:       #F5F3FF;
  --ink-2:     #A9A4BD;
  --ink-3:     #7C7691;
  --violet:    #8B5CF6;
  --violet-2:  #A78BFA;
  --violet-3:  #6D28D9;
  --green:     #22D3A6;
  --green-2:   #34E0B4;
  --radius:    18px;
  --radius-sm: 12px;
  --shadow:    0 24px 60px -20px rgba(0,0,0,.85);
  --glow-v:    0 0 0 1px rgba(139,92,246,.35), 0 18px 46px -14px rgba(139,92,246,.55);
}

*,*::before,*::after{ box-sizing:border-box; }

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
section[id], .reviews, .final-cta{ scroll-margin-top:88px; }

body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:"Inter","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,"Noto Sans","Noto Sans Arabic","Noto Sans JP","Noto Sans KR","Noto Sans SC",sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img,svg{ max-width:100%; }
h1,h2,h3{ margin:0; line-height:1.1; letter-spacing:-.025em; }
p{ margin:0; }

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

/* ---------------- buttons ---------------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  border:0; cursor:pointer; font:inherit; font-weight:650; letter-spacing:-.01em;
  color:#fff; background:linear-gradient(135deg,var(--violet) 0%,var(--violet-3) 100%);
  border-radius:999px; padding:.82rem 1.55rem;
  box-shadow:0 10px 26px -10px rgba(139,92,246,.75);
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease;
  text-decoration:none;
}
.btn:hover{ transform:translateY(-1px); box-shadow:0 16px 34px -12px rgba(139,92,246,.9); filter:brightness(1.06); }
.btn:active{ transform:translateY(0); }
.btn:focus-visible{ outline:2px solid var(--violet-2); outline-offset:3px; }

.btn-sm{ padding:.58rem 1.05rem; font-size:.9rem; }
.btn-lg{ padding:1.02rem 1.95rem; font-size:1.02rem; }

.btn-invert{
  background:#fff; color:#160C2E;
  box-shadow:0 14px 34px -12px rgba(0,0,0,.6);
}
.btn-invert:hover{ box-shadow:0 18px 42px -12px rgba(0,0,0,.7); }

/* ---------------- nav ---------------- */
.site-nav{
  position:sticky; top:0; z-index:60;
  display:flex; align-items:center; gap:1.6rem;
  padding:.85rem clamp(1rem,4vw,2.6rem);
  background:rgba(10,10,15,.72);
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  border-bottom:1px solid var(--line-soft);
}

.brand{
  display:inline-flex; align-items:center; gap:.6rem;
  color:var(--ink); text-decoration:none;
  font-weight:800; letter-spacing:-.02em; font-size:1.06rem;
}
.brand-mark{
  width:30px; height:30px; border-radius:9px; flex:0 0 auto;
  background:linear-gradient(135deg,var(--violet-2),var(--violet-3));
  position:relative;
  box-shadow:0 6px 18px -6px rgba(139,92,246,.85);
}
.brand-mark::after{
  content:"L"; position:absolute; inset:0;
  display:grid; place-items:center;
  color:#fff; font-weight:800; font-size:.92rem; line-height:1;
}

.nav-links{ display:flex; align-items:center; gap:1.5rem; margin-inline-start:.6rem; }
.nav-links a{
  color:var(--ink-2); text-decoration:none; font-size:.92rem; font-weight:520;
  transition:color .15s ease;
}
.nav-links a:hover{ color:var(--ink); }

.nav-right{ margin-inline-start:auto; display:flex; align-items:center; gap:.7rem; }

.lang-wrap{ display:inline-flex; }
.lang-select{
  appearance:none; -webkit-appearance:none;
  background:var(--card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5L6 6.5l5-5' stroke='%23A9A4BD' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right .7rem center;
  background-size:11px auto;
  color:var(--ink-2); border:1px solid var(--line); border-radius:999px;
  padding:.5rem 1.9rem .5rem .85rem;
  font:inherit; font-size:.83rem; cursor:pointer;
  max-width:9.2rem;
}
[dir="rtl"] .lang-select{
  background-position:left .7rem center;
  padding:.5rem .85rem .5rem 1.9rem;
}
.lang-select:focus-visible{ outline:2px solid var(--violet-2); outline-offset:2px; }

/* ---------------- hero ---------------- */
.hero{
  position:relative;
  padding:clamp(2.4rem,6vw,5.5rem) clamp(1rem,4vw,2.6rem) clamp(2rem,4vw,3.4rem);
  overflow:hidden;
  background:
    radial-gradient(1100px 620px at 78% -8%, rgba(139,92,246,.20), transparent 62%),
    radial-gradient(760px 520px at 12% 6%, rgba(34,211,166,.10), transparent 60%),
    linear-gradient(180deg,var(--bg) 0%,var(--bg-2) 100%);
}
.hero-glow{
  position:absolute; inset:auto -10% -30% -10%; height:60%;
  background:radial-gradient(60% 100% at 50% 0%, rgba(139,92,246,.14), transparent 70%);
  pointer-events:none;
}

.hero-inner{
  position:relative;
  max-width:1240px; margin:0 auto;
  display:grid; grid-template-columns:1.04fr .96fr;
  gap:clamp(1.5rem,4vw,3.6rem); align-items:center;
}

.hero-copy{ max-width:36rem; }

.pill{
  display:inline-flex; align-items:center; gap:.55rem;
  background:rgba(139,92,246,.12);
  border:1px solid rgba(139,92,246,.32);
  color:#D8CEFF; border-radius:999px;
  padding:.42rem .95rem; font-size:.8rem; font-weight:560;
  letter-spacing:.01em;
}
.pill .dot{
  width:7px; height:7px; border-radius:50%; background:var(--green);
  box-shadow:0 0 0 3px rgba(34,211,166,.18);
  animation:pulse 2.4s ease-in-out infinite;
}
@keyframes pulse{
  0%,100%{ box-shadow:0 0 0 3px rgba(34,211,166,.18); }
  50%{ box-shadow:0 0 0 6px rgba(34,211,166,.05); }
}

.hero h1{
  margin:1.15rem 0 0;
  font-size:clamp(2.15rem,4.6vw,3.85rem);
  font-weight:820;
  letter-spacing:-.035em;
  line-height:1.04;
  background:linear-gradient(180deg,#FFFFFF 32%,#C9BEFA 100%);
  -webkit-background-clip:text; background-clip:text;
  color:transparent;
}

.lead{
  margin:1.05rem 0 0;
  color:var(--ink-2);
  font-size:clamp(.98rem,1.5vw,1.12rem);
  line-height:1.62;
  max-width:33rem;
}

.cta-row{
  display:flex; flex-wrap:wrap; align-items:center; gap:.85rem 1.05rem;
  margin-top:1.85rem;
}
.micro{ color:var(--ink-3); font-size:.83rem; letter-spacing:.01em; }

.social-row{
  display:flex; align-items:center; gap:.75rem;
  margin-top:1.7rem;
  padding-top:1.5rem;
  border-top:1px solid var(--line-soft);
}
.avatars{ display:flex; }
.avatars i{
  width:28px; height:28px; border-radius:50%;
  border:2px solid var(--bg);
  margin-inline-start:-9px;
  background:linear-gradient(135deg,#4C1D95,#8B5CF6);
}
.avatars i:first-child{ margin-inline-start:0; background:linear-gradient(135deg,#0F766E,#22D3A6); }
.avatars i:nth-child(2){ background:linear-gradient(135deg,#7C2D12,#F59E0B); }
.avatars i:nth-child(3){ background:linear-gradient(135deg,#1E3A8A,#60A5FA); }
.social-txt{ display:flex; flex-direction:column; line-height:1.35; }
.stars{ color:#FBBF24; font-size:.82rem; letter-spacing:.14em; }
.social-txt > span:last-child{ color:var(--ink-3); font-size:.8rem; }

/* ---------------- hero art ---------------- */
.hero-art{
  position:relative;
  min-height:clamp(380px,44vw,520px);
  display:grid; place-items:center;
}

.spark{
  position:absolute; inset:6% -6% 8% -6%;
  width:112%; height:86%;
  opacity:.85; pointer-events:none;
}
.spark-line{
  stroke-dasharray:1000; stroke-dashoffset:1000;
  animation:draw 2.2s ease-out .25s forwards;
}
@keyframes draw{ to{ stroke-dashoffset:0; } }

.phone{
  position:relative; z-index:2;
  width:clamp(198px,24vw,272px);
  aspect-ratio:9/18.6;
  border-radius:34px;
  background:linear-gradient(170deg,#26212F,#100D18);
  border:1px solid rgba(255,255,255,.11);
  padding:9px;
  box-shadow:var(--shadow), inset 0 1px 0 rgba(255,255,255,.09);
  transform:rotate(-2.2deg);
}
.phone-notch{
  position:absolute; top:14px; left:50%; transform:translateX(-50%);
  width:34%; height:15px; border-radius:999px; background:#08070C; z-index:3;
}
.phone-screen{
  height:100%; border-radius:26px; overflow:hidden;
  background:linear-gradient(180deg,#161021,#0C0A13);
  border:1px solid rgba(255,255,255,.045);
  display:flex; flex-direction:column;
  padding:34px 12px 10px;
}

.ph-top{ display:flex; flex-direction:column; gap:2px; padding:0 3px; }
.ph-hi{ color:var(--ink-3); font-size:.585rem; text-transform:uppercase; letter-spacing:.1em; }
.ph-bal{ color:#fff; font-size:1.28rem; font-weight:800; letter-spacing:-.02em; line-height:1.15; }
.ph-delta{ color:var(--green); font-size:.585rem; font-weight:600; }

.ph-chart{ margin:.5rem 0 .1rem; height:44px; }
.ph-chart svg{ width:100%; height:100%; display:block; }

.ph-rows{ display:flex; flex-direction:column; gap:5px; margin-top:.35rem; }
.ph-row{
  display:flex; align-items:center; gap:7px;
  background:rgba(255,255,255,.045);
  border-radius:9px; padding:6px 7px;
}
.ph-dot{
  width:16px; height:16px; border-radius:5px; flex:0 0 auto;
  background:linear-gradient(135deg,var(--violet-2),var(--violet-3));
}
.ph-dot.alt{ background:linear-gradient(135deg,#0EA5A0,#22D3A6); }
.ph-lines{ display:flex; flex-direction:column; gap:3px; flex:1; min-width:0; }
.ph-lines i{ display:block; height:3px; border-radius:2px; background:rgba(255,255,255,.20); }
.ph-lines i.short{ width:56%; background:rgba(255,255,255,.12); }
.ph-row em{ font-style:normal; color:var(--green); font-size:.55rem; font-weight:700; }

.ph-tabs{
  margin-top:auto; display:flex; justify-content:space-around; align-items:center;
  padding-top:8px; border-top:1px solid rgba(255,255,255,.06);
}
.ph-tabs span{ width:15px; height:4px; border-radius:2px; background:rgba(255,255,255,.14); }
.ph-tabs span.on{ background:var(--violet-2); }

.float-card{
  position:absolute; z-index:3;
  display:flex; align-items:center; gap:.55rem;
  background:rgba(24,20,36,.82);
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:.6rem .8rem;
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  box-shadow:0 18px 40px -16px rgba(0,0,0,.9);
  animation:floaty 5.5s ease-in-out infinite;
}
.float-card b{ display:block; font-size:.86rem; font-weight:750; letter-spacing:-.01em; }
.float-card small{ display:block; color:var(--ink-3); font-size:.62rem; text-transform:uppercase; letter-spacing:.08em; }
.fc-ico{
  width:26px; height:26px; border-radius:8px; flex:0 0 auto;
  display:grid; place-items:center;
  background:rgba(34,211,166,.15); color:var(--green);
  font-size:.8rem; font-weight:800;
}
.fc-ico.alt{ background:rgba(139,92,246,.18); color:var(--violet-2); }
.fc-earn{ top:8%; inset-inline-start:-4%; }
.fc-payout{ bottom:11%; inset-inline-end:-3%; animation-delay:-2.6s; }

@keyframes floaty{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-9px); }
}

/* ---------------- stats ---------------- */
.stats{
  max-width:1240px; margin:0 auto;
  display:grid; grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:var(--line-soft);
  border-block:1px solid var(--line-soft);
}
.stat{
  background:var(--bg-2);
  padding:clamp(1.1rem,2.4vw,1.7rem) 1rem;
  text-align:center;
}
.stat b{
  display:block; font-size:clamp(1.35rem,2.6vw,1.95rem);
  font-weight:820; letter-spacing:-.03em; line-height:1.15;
}
.stat span{ color:var(--ink-3); font-size:.78rem; letter-spacing:.02em; }
.green{ color:var(--green-2) !important; }

/* ---------------- sections ---------------- */
.section{
  max-width:1240px; margin:0 auto;
  padding:clamp(3rem,6vw,5rem) clamp(1rem,4vw,2.6rem);
}
.section > h2{
  font-size:clamp(1.55rem,3.1vw,2.45rem);
  font-weight:800; letter-spacing:-.03em;
  text-align:center;
}
.section > .sub{
  margin:.7rem auto 0; max-width:38rem;
  color:var(--ink-2); text-align:center; font-size:.97rem;
}

.section-alt{
  max-width:none;
  background:var(--bg-2);
  border-block:1px solid var(--line-soft);
}
.section-alt > *{ max-width:1240px; margin-inline:auto; }
.section-alt > h2{ max-width:1240px; }

/* ---------------- calculator ---------------- */
.calc-section > h2{ margin-bottom:0; }

.calc-card{
  max-width:640px; margin:2.1rem auto 0;
  background:linear-gradient(170deg,var(--card-2),var(--card));
  border:1px solid var(--line);
  border-radius:24px;
  padding:clamp(1.3rem,3vw,2.1rem);
  box-shadow:var(--shadow);
  text-align:center;
}
.calc-head{
  display:flex; align-items:baseline; justify-content:space-between;
  gap:1rem;
}
.calc-head label{
  color:var(--ink-2); font-size:.88rem; font-weight:560;
}
.calc-head output{
  font-size:1.55rem; font-weight:820; letter-spacing:-.03em;
  color:#fff;
}

.range{
  width:100%; margin:1.1rem 0 .4rem;
  -webkit-appearance:none; appearance:none;
  height:6px; border-radius:999px; cursor:pointer;
  background:linear-gradient(90deg,var(--violet) 0%,var(--violet) 18%,rgba(255,255,255,.11) 18%,rgba(255,255,255,.11) 100%);
  outline:none;
}
.range::-webkit-slider-thumb{
  -webkit-appearance:none; appearance:none;
  width:24px; height:24px; border-radius:50%;
  background:#fff; border:4px solid var(--violet);
  box-shadow:0 6px 18px -4px rgba(139,92,246,.9);
  cursor:grab;
}
.range::-moz-range-thumb{
  width:24px; height:24px; border-radius:50%;
  background:#fff; border:4px solid var(--violet);
  box-shadow:0 6px 18px -4px rgba(139,92,246,.9);
  cursor:grab;
}
.range:focus-visible{ box-shadow:0 0 0 3px rgba(139,92,246,.35); }

.calc-out{
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:.6rem; margin:1.5rem 0 0;
}
.calc-cell{
  background:rgba(255,255,255,.035);
  border:1px solid var(--line-soft);
  border-radius:14px;
  padding:.85rem .5rem;
}
.calc-cell span{
  display:block; color:var(--ink-3); font-size:.72rem;
  text-transform:uppercase; letter-spacing:.07em;
}
.calc-cell b{
  display:block; margin-top:.3rem;
  font-size:clamp(1.12rem,2.4vw,1.5rem);
  font-weight:820; letter-spacing:-.03em;
}
.calc-note{
  margin:1.15rem 0 1.4rem;
  color:var(--ink-3); font-size:.75rem; line-height:1.55;
  text-align:start;
}

/* ---------------- steps ---------------- */
.steps{
  list-style:none; margin:2.4rem 0 0; padding:0;
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:clamp(.9rem,2.2vw,1.5rem);
}
.steps li{
  background:var(--card);
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  padding:1.5rem 1.35rem;
  position:relative;
}
.step-num{
  display:grid; place-items:center;
  width:34px; height:34px; border-radius:11px;
  background:rgba(139,92,246,.16);
  border:1px solid rgba(139,92,246,.32);
  color:var(--violet-2); font-weight:800; font-size:.92rem;
  margin-bottom:.95rem;
}
.steps h3{ font-size:1.05rem; font-weight:700; letter-spacing:-.015em; }
.steps p{ margin-top:.5rem; color:var(--ink-2); font-size:.9rem; line-height:1.6; }

/* ---------------- cards ---------------- */
.grid-3{
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:clamp(.9rem,2.2vw,1.5rem);
  margin-top:2.4rem;
}
.card{
  background:var(--card);
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  padding:1.65rem 1.45rem;
  transition:border-color .2s ease, transform .2s ease;
}
.card:hover{ border-color:rgba(139,92,246,.34); transform:translateY(-3px); }

.ico{
  width:44px; height:44px; border-radius:13px;
  display:grid; place-items:center;
  margin-bottom:1.05rem;
  background:rgba(139,92,246,.14);
  color:var(--violet-2);
  border:1px solid rgba(139,92,246,.22);
}
.ico svg{ width:21px; height:21px; }
.ico-1{ background:rgba(34,211,166,.13); color:var(--green); border-color:rgba(34,211,166,.24); }
.ico-3{ background:rgba(96,165,250,.13); color:#93C5FD; border-color:rgba(96,165,250,.24); }

.card h3{ font-size:1.05rem; font-weight:700; letter-spacing:-.015em; }
.card p{ margin-top:.5rem; color:var(--ink-2); font-size:.9rem; line-height:1.62; }

/* ---------------- safety ---------------- */
.safety-grid{
  display:grid; grid-template-columns:repeat(4,1fr);
  gap:clamp(.7rem,1.8vw,1.1rem);
  margin-top:2.3rem;
}
.safety-item{
  background:linear-gradient(170deg,var(--card-2),var(--card));
  border:1px solid var(--line-soft);
  border-radius:var(--radius-sm);
  padding:1.25rem 1.05rem;
  text-align:center;
}
.s-ico{
  width:38px; height:38px; margin:0 auto .8rem;
  border-radius:11px; display:grid; place-items:center;
  background:rgba(34,211,166,.11);
  color:var(--green);
  border:1px solid rgba(34,211,166,.2);
}
.s-ico svg{ width:18px; height:18px; }
.safety-item h3{
  font-size:.88rem; font-weight:650; letter-spacing:-.005em;
  color:var(--ink); line-height:1.4;
}

/* ---------------- reviews ---------------- */
.review{
  margin:0;
  background:var(--card);
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  padding:1.5rem 1.4rem;
  display:flex; flex-direction:column; gap:.75rem;
}
.review blockquote{
  margin:0; color:var(--ink); font-size:.95rem; line-height:1.6;
}
.review figcaption{
  display:flex; align-items:center; gap:.55rem;
  margin-top:auto; padding-top:.35rem;
  font-size:.82rem; color:var(--ink-3);
}
.review figcaption b{ color:var(--ink); font-weight:650; }
.review figcaption span::before{ content:"·"; margin-inline-end:.4rem; }

/* ---------------- faq ---------------- */
.faq-list{
  max-width:760px; margin:2.1rem auto 0;
  display:flex; flex-direction:column; gap:.6rem;
}
.faq-list details{
  background:var(--card);
  border:1px solid var(--line-soft);
  border-radius:var(--radius-sm);
  padding:.1rem 1.15rem;
  transition:border-color .18s ease;
}
.faq-list details[open]{ border-color:rgba(139,92,246,.3); }
.faq-list summary{
  cursor:pointer; list-style:none;
  padding:.95rem 0; font-weight:650; font-size:.95rem;
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.faq-list summary::-webkit-details-marker{ display:none; }
.faq-list summary::after{
  content:"+"; color:var(--violet-2); font-weight:700; font-size:1.15rem;
  transition:transform .2s ease; flex:0 0 auto;
}
.faq-list details[open] summary::after{ transform:rotate(45deg); }
.faq-list p{
  padding:0 0 1rem; color:var(--ink-2); font-size:.9rem; line-height:1.62;
}

/* ---------------- final cta ---------------- */
.final-cta{
  max-width:1240px; margin:0 auto;
  padding:clamp(2.6rem,5vw,4.2rem) clamp(1rem,4vw,2.6rem) clamp(3rem,6vw,5rem);
  text-align:center;
}
.final-cta > *{ position:relative; z-index:1; }

.final-cta{
  position:relative;
}
.final-cta::after{
  content:""; position:absolute; inset:0 clamp(1rem,4vw,2.6rem);
  border-radius:28px;
  background:
    radial-gradient(120% 160% at 20% 0%, rgba(139,92,246,.42), transparent 62%),
    linear-gradient(135deg,#2A1A5E 0%,#3B2A8C 45%,#1B1236 100%);
  border:1px solid rgba(167,139,250,.28);
  z-index:0;
}
.final-cta h2{
  font-size:clamp(1.5rem,3.2vw,2.4rem);
  font-weight:820; letter-spacing:-.03em;
  max-width:24ch; margin:0 auto clamp(1.3rem,3vw,1.9rem);
  color:#fff;
}
.final-note{
  margin-top:1rem; color:rgba(255,255,255,.62); font-size:.8rem;
}

/* ---------------- footer ---------------- */
.site-footer{
  border-top:1px solid var(--line-soft);
  padding:clamp(2rem,4vw,3rem) clamp(1rem,4vw,2.6rem);
  text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:1rem;
}
.foot-brand{
  display:inline-flex; align-items:center; gap:.55rem;
  font-weight:750; letter-spacing:-.02em; font-size:.98rem;
}
.foot-links{ display:flex; gap:1.4rem; }
.foot-links a{
  color:var(--ink-3); text-decoration:none; font-size:.85rem;
  transition:color .15s ease;
}
.foot-links a:hover{ color:var(--ink); }
.disclaimer{
  max-width:42rem; color:var(--ink-3); font-size:.73rem;
  line-height:1.6; margin:0;
}
.copy{ color:var(--ink-3); font-size:.75rem; }

/* ---------------- legal pages ---------------- */
.legal{
  max-width:760px; margin:0 auto;
  padding:clamp(2rem,5vw,3.5rem) clamp(1rem,4vw,2.6rem);
  color:var(--ink-2);
}
.legal h1{
  color:var(--ink); font-size:clamp(1.7rem,4vw,2.4rem);
  font-weight:820; letter-spacing:-.03em; margin-bottom:.6rem;
}
.legal .meta{ color:var(--ink-3); font-size:.82rem; margin-bottom:2rem; }
.legal h2{
  color:var(--ink); font-size:1.05rem; font-weight:700;
  margin:2rem 0 .6rem; letter-spacing:-.015em;
}
.legal p{ margin:.7rem 0; font-size:.92rem; line-height:1.72; }
.legal ul{ margin:.7rem 0; padding-inline-start:1.25rem; font-size:.92rem; line-height:1.72; }
.legal li{ margin:.35rem 0; }
.legal a{ color:var(--violet-2); text-decoration:none; }
.legal a:hover{ text-decoration:underline; }
.legal strong{ color:var(--ink); font-weight:650; }

/* ---------------- RTL ---------------- */
[dir="rtl"] .nav-links{ margin-inline-start:0; margin-inline-end:.6rem; }
[dir="rtl"] .nav-right{ margin-inline-start:0; margin-inline-end:auto; }
[dir="rtl"] .spark{ transform:scaleX(-1); }
[dir="rtl"] .phone{ transform:rotate(2.2deg); }
[dir="rtl"] .fc-earn{ inset-inline-start:auto; inset-inline-end:-4%; }
[dir="rtl"] .fc-payout{ inset-inline-end:auto; inset-inline-start:-3%; }
[dir="rtl"] .faq-list summary::after{ order:-1; }
[dir="rtl"] .review figcaption span::before{ content:""; }
[dir="rtl"] .review figcaption span::after{ content:"·"; margin-inline-start:.4rem; }
[dir="rtl"] .ph-row em,
[dir="rtl"] .calc-note{ text-align:start; }

/* keep money and percentages reading left-to-right inside RTL layouts */
[dir="rtl"] .ph-bal,
[dir="rtl"] .ph-delta,
[dir="rtl"] .ph-row em,
[dir="rtl"] .stat b,
[dir="rtl"] .calc-out b,
[dir="rtl"] .fc-earn b,
[dir="rtl"] #minutes-out{ direction:ltr; unicode-bidi:isolate; display:inline-block; }

/* ---------------- responsive ---------------- */
@media (max-width:1060px){
  .nav-links{ display:none; }
  .hero-inner{ grid-template-columns:1fr; }
  .hero-copy{ max-width:none; order:0; }
  .hero-art{ order:1; min-height:clamp(330px,58vw,430px); margin-top:1rem; }
  .fc-earn{ inset-inline-start:2%; }
  .fc-payout{ inset-inline-end:2%; }
  .safety-grid{ grid-template-columns:repeat(2,1fr); }
}

@media (max-width:900px){
  .steps{ grid-template-columns:1fr; }
  .grid-3{ grid-template-columns:1fr; }
  .stats{ grid-template-columns:repeat(2,1fr); }
}

@media (max-width:700px){
  .nav-right{ gap:.45rem; }
  .nav-right .btn{ padding:.55rem .85rem; font-size:.8rem; }
  .float-card{ display:none; }
  .hero h1{ font-size:clamp(2rem,8.4vw,2.7rem); }
  .calc-out{ grid-template-columns:1fr; }
  .calc-cell{ display:flex; align-items:baseline; justify-content:space-between; }
  .calc-cell b{ margin-top:0; }
  .final-cta::after{ inset:0 .7rem; }
}

@media (max-width:560px){
  .hero-art{ min-height:390px; }
  .phone{ width:min(206px,54vw); }
  .float-card{ padding:.5rem .65rem; }
  .float-card b{ font-size:.78rem; }
  .safety-grid{ grid-template-columns:1fr; }
  .avatars i{ width:25px; height:25px; }
}

@media (prefers-reduced-motion:reduce){
  *{ animation:none !important; transition:none !important; }
  html{ scroll-behavior:auto; }
  .spark-line{ stroke-dasharray:none; stroke-dashoffset:0; }
}
