/* ===================== TOKENS ===================== */
:root{
  --gold-1:#a9812f;
  --gold-2:#e9c56b;
  --gold-3:#c9a227;
  --gold-grad:linear-gradient(120deg,var(--gold-1),var(--gold-2) 45%,var(--gold-1) 100%);
  --green:#8fbfa0;
  --red:#d98c8c;
  --radius:14px;
  --maxw:1160px;
  --ease:cubic-bezier(.22,.61,.36,1);
}

body.dark{
  --bg:#070a0e;
  --bg-elevated:#0e141b;
  --bg-elevated-2:#131a22;
  --text:#f4efe3;
  --text-muted:#95a0ad;
  --border:rgba(201,162,39,.16);
  --border-strong:rgba(201,162,39,.32);
  --shadow:0 20px 60px rgba(0,0,0,.45);
}

body.light{
  --bg:#f7f4ea;
  --bg-elevated:#ffffff;
  --bg-elevated-2:#efe9d8;
  --text:#191710;
  --text-muted:#63594a;
  --border:rgba(160,120,20,.18);
  --border-strong:rgba(160,120,20,.35);
  --shadow:0 20px 50px rgba(90,70,20,.12);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important;}
}

body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:'Inter','Cairo',system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
  transition:background .35s var(--ease), color .35s var(--ease);
}

h1,h2,h3{
  font-family:'Space Grotesk','Cairo','Inter',sans-serif;
  margin:0;
  letter-spacing:-.01em;
}

html[dir="rtl"] .section-eyebrow,
html[dir="rtl"] .eyebrow,
html[dir="rtl"] .acc-num,
html[dir="rtl"] .plan-price,
html[dir="rtl"] .featured-tag{
  font-family:'JetBrains Mono','Cairo',monospace;
}

a{color:inherit;}
img{max-width:100%;display:block;}

:focus-visible{
  outline:2px solid var(--gold-2);
  outline-offset:3px;
  border-radius:4px;
}

.section{
  max-width:var(--maxw);
  margin:0 auto;
  padding:110px 32px;
}

#pricing.section{
  padding-bottom:110px;
}

/* ===================== SECTION DIVIDER ===================== */
.section-divider{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 32px;
  display:flex;
  align-items:center;
  gap:18px;
  user-select:none;
}
.section-divider::before,
.section-divider::after{
  content:"";
  flex:1 1 auto;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--border-strong) 50%,transparent);
}
.section-divider .sd-mark{
  flex:0 0 auto;
  width:9px;height:9px;
  border-radius:2px;
  background:var(--gold-grad);
  transform:rotate(45deg);
  box-shadow:0 0 16px rgba(201,162,39,.4), 0 0 0 6px color-mix(in srgb, var(--gold-2) 8%, transparent);
}
.section-divider .sd-mark::before,
.section-divider .sd-mark::after{
  content:"";
  position:absolute;
  width:3px;height:3px;
  border-radius:50%;
  background:var(--gold-3);
  opacity:.55;
}
.section-divider{position:relative;}
.section-divider .sd-mark{position:relative;}
.section-divider .sd-mark::before{inset-inline-start:-26px;top:3px;}
.section-divider .sd-mark::after{inset-inline-end:-26px;top:3px;}

.section-eyebrow{
  font-family:'JetBrains Mono',monospace;
  font-size:12.5px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--gold-3);
  margin:0 0 14px;
}
.section-title{
  font-size:clamp(28px,3.4vw,42px);
  font-weight:600;
  max-width:20ch;
}
.section-lede{
  color:var(--text-muted);
  max-width:56ch;
  font-size:17px;
  line-height:1.6;
  margin-top:14px;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 26px;
  border-radius:999px;
  font-family:'Inter',sans-serif;
  font-weight:600;
  font-size:15px;
  text-decoration:none;
  cursor:pointer;
  border:1px solid transparent;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);
}
.btn-primary{
  background:var(--gold-grad);
  color:#14110a;
  box-shadow:0 10px 30px rgba(201,162,39,.25);
}
.btn-primary:hover{transform:translateY(-2px);}
.btn-outline{
  background:transparent;
  border-color:var(--border-strong);
  color:var(--text);
}
.btn-outline:hover{border-color:var(--gold-2); transform:translateY(-2px);}

.text-link{
  color:var(--gold-3);
  font-weight:600;
  font-size:14.5px;
  text-decoration:none;
}
.text-link:hover{text-decoration:underline;}

/* ===================== NAV ===================== */
.nav{
  position:sticky;
  top:0;
  z-index:50;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.nav-inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:14px 32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.brand{display:flex;align-items:center;text-decoration:none;}
.brand-mark{height:30px;width:auto;object-fit:contain;}
.mark-light{display:none;}
body.light .mark-light{display:block;}
body.light .mark-dark{display:none;}

.nav-links{
  display:flex;
  align-items:center;
  gap:18px;
  font-size:14.5px;
  font-weight:500;
}
.nav-links a{text-decoration:none;color:var(--text-muted);transition:color .2s;}
.nav-links a:hover{color:var(--text);}
.nav-links .bar{width:1px;height:14px;background:var(--border-strong);}

.nav-actions{display:flex;align-items:center;gap:14px;}
.ghost-link{
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  color:var(--gold-3);
  white-space:nowrap;
}
.lang-toggle{
  height:38px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid var(--border-strong);
  background:var(--bg-elevated);
  color:var(--text);
  font-family:'JetBrains Mono',monospace;
  font-size:12.5px;
  font-weight:600;
  letter-spacing:.04em;
  cursor:pointer;
  flex-shrink:0;
  transition:border-color .2s, color .2s;
}
.lang-toggle:hover{border-color:var(--gold-2); color:var(--gold-3);}

.theme-toggle{
  width:38px;height:38px;
  border-radius:50%;
  border:1px solid var(--border-strong);
  background:var(--bg-elevated);
  color:var(--text);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  position:relative;
  flex-shrink:0;
}
.theme-toggle svg{position:absolute;transition:opacity .2s, transform .3s var(--ease);}
.icon-sun{opacity:0;transform:rotate(-40deg) scale(.6);}
.icon-moon{opacity:1;transform:rotate(0) scale(1);}
body.light .icon-sun{opacity:1;transform:rotate(0) scale(1);}
body.light .icon-moon{opacity:0;transform:rotate(40deg) scale(.6);}

@media (max-width:820px){
  .nav-links{display:none;}
}

.nav-toggle{
  display:none;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:5px;
  width:38px;height:38px;
  border-radius:50%;
  border:1px solid var(--border-strong);
  background:var(--bg-elevated);
  cursor:pointer;
  flex-shrink:0;
}
.nav-toggle span{
  display:block;
  width:16px;height:2px;
  background:var(--text);
  border-radius:2px;
  transition:transform .25s var(--ease), opacity .2s var(--ease);
}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

@media (max-width:820px){
  .nav-toggle{display:flex;}
}

.mobile-nav{
  display:none;
  flex-direction:column;
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 32px;
  max-height:0;
  overflow:hidden;
  transition:max-height .3s var(--ease), padding .3s var(--ease);
}
.mobile-nav a{
  padding:14px 0;
  border-bottom:1px solid var(--border);
  color:var(--text);
  text-decoration:none;
  font-size:15px;
  font-weight:500;
}
.mobile-nav a:last-child{border-bottom:none;}
.mobile-nav-free{color:var(--gold-3) !important; font-weight:600 !important;}

@media (max-width:820px){
  .mobile-nav{display:flex;}
  .mobile-nav.open{max-height:400px;padding:4px 32px 14px;}
}

/* ===================== HERO ===================== */
.hero{
  position:relative;
  overflow:hidden;
}
.hero-inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:32px 32px 40px;
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:32px;
  align-items:center;
}
.hero-copy{min-width:0;}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:'JetBrains Mono',monospace;
  font-size:12.5px;
  letter-spacing:.14em;
  color:var(--gold-3);
  border:1px solid var(--border-strong);
  padding:7px 14px;
  border-radius:999px;
  margin:0 0 26px;
}
.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(143,191,160,.18);}

.hero h1{
  font-size:clamp(32px,4.6vw,52px);
  font-weight:700;
  line-height:1.15;
  max-width:21ch;
}
.hero-points{
  list-style:none;
  padding:0;
  margin:26px 0 0;
  display:flex;
  flex-direction:column;
  gap:12px;
  max-width:54ch;
}
.hero-points li{
  position:relative;
  padding-inline-start:26px;
  font-size:15.5px;
  line-height:1.5;
  color:var(--text-muted);
}
.hero-points li::before{
  content:"✓";
  position:absolute;
  inset-inline-start:0;
  top:0;
  color:var(--gold-3);
  font-weight:700;
  font-size:14px;
}
.hero-ctas{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:32px;
}

.hero-free{
  display:inline-block;
  margin: auto 0;
  font-size:14.5px;
  font-weight:600;
  color:var(--text-muted);
  text-decoration:none;
  border-bottom:1px solid var(--border-strong);
  padding-bottom:2px;
}
.hero-free:hover{color:var(--gold-3);}

.ticker{
  position:relative;
  height:200px;
  margin-top:20px;
  overflow:hidden;
  direction:ltr; /* keep the strip's own box math in LTR so the 200%-wide track
                    always sits flush-left and loops cleanly, regardless of the
                    page's RTL direction */
  mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);
}
.ticker-svg{
  width:200%;
  height:100%;
  display:block;
  will-change:transform;
  animation:drift 26s linear infinite;
}
@keyframes drift{
  from{transform:translate3d(0,0,0);}
  to{transform:translate3d(-50%,0,0);}
}

/* ---------- Hero visual (right side) ---------- */
.hero-visual{
  position:relative;
  height:380px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-visual .glow{
  position:absolute;
  width:320px;height:320px;
  background:radial-gradient(circle,color-mix(in srgb,var(--gold-2) 32%, transparent),transparent 70%);
  filter:blur(6px);
  pointer-events:none;
}
.hero-visual .glow-2{
  width:220px;height:220px;
  background:radial-gradient(circle,color-mix(in srgb,var(--gold-3) 45%, transparent),transparent 72%);
  filter:blur(14px);
  opacity:.7;
  transform:translateY(30px);
}
.hero-visual .gold-photo{
  width:360px;
  height:auto;
  filter:drop-shadow(0 30px 40px rgba(0,0,0,.5)) saturate(1.12) contrast(1.03);
  animation:hoverFloat 6s ease-in-out infinite;
}
@keyframes hoverFloat{
  0%,100%{transform:translateY(0) rotate(0deg);}
  50%{transform:translateY(-10px) rotate(-1.2deg);}
}

.float-card{
  position:absolute;
  background:color-mix(in srgb, var(--bg-elevated) 88%, transparent);
  border:1px solid var(--border-strong);
  border-radius:12px;
  padding:14px 16px;
  backdrop-filter:blur(10px);
  box-shadow:var(--shadow);
}
.price-card{
  top:5%;
  inset-inline-end:-4%;
  width:168px;
  animation:hoverFloat 7s ease-in-out infinite;
  animation-delay:.4s;
}
.price-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
}
.pc-pair{color:var(--text-muted); letter-spacing:.04em;}
.pc-change{color:var(--green); font-weight:600;}
.pc-price{
  font-family:'JetBrains Mono',monospace;
  font-size:20px;
  font-weight:700;
  margin:8px 0 10px;
}
.pc-spark{width:100%;height:34px;display:block;}

.signal-card{
  bottom:4%;
  inset-inline-start:-6%;
  width:172px;
  animation:hoverFloat 6.4s ease-in-out infinite;
  animation-delay:1s;
}
.sc-row{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'JetBrains Mono',monospace;
  font-size:11.5px;
  padding:4px 0;
}
.sc-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.sc-dot.buy{background:var(--gold-2);}
.sc-dot.tp{background:var(--green);}
.sc-dot.sl{background:var(--red);}
.sc-label{color:var(--text-muted); width:38px;}
.sc-val{color:var(--text); font-weight:600; margin-inline-start:auto;}

.results-card{
  bottom:-20%;
  inset-inline-end:2%;
  width:284px;
  animation:hoverFloat 6.8s ease-in-out infinite;
  animation-delay:.7s;
}

/* RESULTS BARS */
.bar-100 { --h: 5%; }
.bar-150 { --h: 7.5%; }
.bar-200 { --h: 10%; }
.bar-250 { --h: 12.5%; }
.bar-300 { --h: 15%; }
.bar-350 { --h: 17.5%; }
.bar-400 { --h: 20%; }
.bar-450 { --h: 22.5%; }
.bar-500 { --h: 25%; }
.bar-550 { --h: 27.5%; }
.bar-600 { --h: 30%; }
.bar-650 { --h: 32.5%; }
.bar-700 { --h: 35%; }
.bar-750 { --h: 37.5%; }
.bar-800 { --h: 40%; }
.bar-850 { --h: 42.5%; }
.bar-900 { --h: 45%; }
.bar-950 { --h: 47.5%; }
.bar-1000 { --h: 50%; }
.bar-1050 { --h: 52.5%; }
.bar-1100 { --h: 55%; }
.bar-1150 { --h: 57.5%; }
.bar-1200 { --h: 60%; }
.bar-1250 { --h: 62.5%; }
.bar-1300 { --h: 65%; }
.bar-1350 { --h: 67.5%; }
.bar-1400 { --h: 70%; }
.bar-1450 { --h: 72.5%; }
.bar-1500 { --h: 75%; }
.bar-1550 { --h: 77.5%; }
.bar-1600 { --h: 80%; }
.bar-1650 { --h: 82.5%; }
.bar-1700 { --h: 85%; }
.bar-1750 { --h: 87.5%; }
.bar-1800 { --h: 90%; }
.bar-1850 { --h: 92.5%; }
.bar-1900 { --h: 95%; }
.bar-1950 { --h: 97.5%; }
.bar-2000 { --h: 100%; }
.bar-2050 { --h: 102.5%; }
.bar-2100 { --h: 105%; }
.bar-2150 { --h: 107.5%; }
.bar-2200 { --h: 110%; }
.bar-2250 { --h: 112.5%; }
.bar-2300 { --h: 115%; }
.bar-2350 { --h: 117.5%; }
.bar-2400 { --h: 120%; }
.bar-2450 { --h: 122.5%; }
.bar-2500 { --h: 125%; }


.rc-top{margin-bottom:10px;}
.rc-title{
  font-family:'Space Grotesk','Cairo','Inter',sans-serif;
  font-size:12.5px;
  font-weight:600;
  margin:0;
}
.rc-sub{
  font-family:'JetBrains Mono',monospace;
  font-size:9.5px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--text-muted);
  margin:2px 0 0;
}
.rc-chart{
  display:flex;
  align-items:flex-end;
  gap:7px;
}
.rc-month{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
}
.rc-month-label{
  font-family:'JetBrains Mono',monospace;
  font-size:7.5px;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--text-muted);
  margin:0;
}
.rc-bar-row{
  display:flex;
  align-items:flex-end;
  gap:4px;
  height:58px;
}
.rc-bar-col{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:3px;
  width:22px;
  height:100%;
}
.rc-bar-pip{
  font-family:'JetBrains Mono',monospace;
  font-size:6.8px;
  font-weight:700;
  color:var(--text);
  white-space:nowrap;
}
.rc-bar-fill{
  width:100%;
  height:var(--h);
  min-height:3px;
  background:var(--green);
  opacity:.55;
  border-radius:2px 2px 0 0;
}
.rc-bar-date{
  font-family:'JetBrains Mono',monospace;
  font-size:7.5px;
  color:var(--text-muted);
}
.rc-bar-col.latest .rc-bar-fill{background:var(--gold-2); opacity:1;}
.rc-bar-col.latest .rc-bar-pip{color:var(--gold-2);}
.rc-divider{
  align-self:stretch;
  width:1px;
  background:var(--border-strong);
  margin:0 1px;
}
.rc-month-totals{
  display:flex;
  justify-content:space-between;
  gap:6px;
  margin:9px 0 0;
  padding-top:8px;
  border-top:1px solid var(--border);
}
.rc-month-total{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  flex:1;
}
.rc-month-total-label{
  font-family:'JetBrains Mono',monospace;
  font-size:7.5px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--text-muted);
}
.rc-month-total-val{
  font-family:'JetBrains Mono',monospace;
  font-size:10.5px;
  font-weight:700;
  color:var(--green);
}
.rc-month-total.current .rc-month-total-val{color:var(--gold-2);}
.rc-total{
  margin:10px 0 0;
  padding-top:9px;
  border-top:1px solid var(--border);
  font-family:'JetBrains Mono',monospace;
  font-size:10.5px;
}
.rc-total-val{color:var(--green); font-weight:700; font-size:15px;}
.rc-total-label{color:var(--text-muted); margin-inline-start:4px;}

@media (prefers-reduced-motion:reduce){
  .hero-visual .gold-photo, .float-card{animation:none;}
}

@media (max-width:900px){
  .hero-inner{grid-template-columns:1fr;}
  .hero-visual{height:360px;margin-top:20px;}
  .hero-visual .gold-photo{width:300px;}
  .results-card{width:260px; padding:12px 14px;}
}
@media (max-width:520px){
  .hero-visual{height:320px;transform:scale(.85);}
}

/* Ensure hero visual background is clean in light mode */
body.light .hero {
  background: transparent; /* or whatever your light hero bg is, but not dark */
}

/* Remove or lighten glow effects in light mode */
body.light .hero-visual .glow,
body.light .hero-visual .glow-2 {
  background: radial-gradient(
    circle at 50% 50%,
    rgba(233, 197, 107, 0.25),
    rgba(233, 197, 107, 0) 60%
  );
  /* If your current glow uses dark colors, override them here */
}

/* Make sure the image itself isn’t dimmed */
body.light .gold-photo {
  filter: none;          /* remove any brightness/contrast/darken filters */
  opacity: 1;
}

/* ===================== MY STORY ===================== */
.story-timeline{
  list-style:none;
  margin:40px 0 0;
  padding:0;
  max-width:760px;
  position:relative;
}
.tl-item{
  position:relative;
  padding-inline-start:60px;
  padding-bottom:44px;
}
.tl-item:last-child{padding-bottom:0;}
.tl-item::before{
  /* connecting rail */
  content:"";
  position:absolute;
  inset-inline-start:19px;
  top:44px;
  bottom:0;
  width:1px;
  background:linear-gradient(var(--border-strong),var(--border));
}
/* .tl-item:last-child::before{display:none;} */
.tl-num{
  position:absolute;
  inset-inline-start:0;
  top:0;
  width:40px;
  height:40px;
  border-radius:50%;
  line-height: 1.4rem;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--bg-elevated);
  border:1px solid var(--border-strong);
  font-family:'JetBrains Mono',monospace;
  font-size:12.5px;
  font-weight:700;
  color:var(--gold-3);
}
.tl-title{
  font-size:1.5rem;
  font-weight:600;
  margin:6px 0 10px;
}
.tl-text{
  color:var(--text-muted);
  line-height:1.4rem;
  font-size:15.5px;
  margin:0;
}
.tl-intro{
  line-height: 1.4rem;
  font-size: 1rem;
}
.tl-points{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:9px;
  color:var(--text-muted);
  font-size:0.95rem;
  line-height:1.4;
  position:relative;
}
.tl-points::before{
  content:"";
  position:absolute;
  inset-inline-start:3px;
  top:-14px;
  bottom:9px;
  width:1px;
  background:linear-gradient(to bottom, var(--gold-3), var(--border) 88%, transparent);
  opacity:.7;
}
.tl-points li{
  position:relative;
  padding-inline-start:22px;
}
.tl-points li::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:.55em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--bg);
  border:1.5px solid var(--gold-3);
  z-index:1;
  transition:background .2s var(--ease), transform .2s var(--ease);
}
.tl-points li:hover::before{
  background:var(--gold-3);
  transform:scale(1.2);
}

.story-rules{
  list-style:none;
  padding:0;
  margin:10px 0 0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 24px;
  font-size:15px;
  color:var(--text);
}
.story-rules li{
  padding-inline-start:20px;
  position:relative;
  line-height:1.4rem;
}
.story-rules li::before{
  content:"";
  position:absolute;
  inset-inline-start:0;top:9px;
  width:8px;height:2px;
  background:var(--gold-3);
}

@media (max-width:860px){
  .story-rules{grid-template-columns:1fr;}
}
@media (max-width:600px){
  .tl-item{padding-inline-start:48px;}
  .tl-item::before{inset-inline-start:15px;}
  .tl-num{width:32px;height:32px;font-size:11px;}
  .story-photo-wrap{float:none;width:100%;max-width:260px;margin:0 auto 18px;}
}

/* ===================== RULES / ACCORDION ===================== */
.accordion{
  margin-top:44px;
  border-top:1px solid var(--border);
}
.acc-item{
  border-bottom:1px solid var(--border);
}
.acc-item summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:18px;
  padding:26px 4px;
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:19px;
}
.acc-item summary::-webkit-details-marker{display:none;}
.acc-num{
  font-family:'JetBrains Mono',monospace;
  color:var(--gold-3);
  font-size:14px;
  flex-shrink:0;
}
.acc-label{flex:1;}
.acc-icon{
  font-family:'JetBrains Mono',monospace;
  font-size:20px;
  color:var(--text-muted);
  transition:transform .3s var(--ease);
  flex-shrink:0;
}
.acc-item[open] .acc-icon{transform:rotate(45deg);}

.acc-body{
  padding:0 4px 32px;
}
.rule-list{
  margin:0;
  padding-inline-start:22px;
  display:flex;
  flex-direction:column;
  gap:16px;
  font-family:'Cairo',sans-serif;
  font-size:16.5px;
  line-height:1.6;
  color:var(--text-muted);
}
.rule-list li::marker{color:var(--gold-3);font-family:'JetBrains Mono',monospace;}

.rules-panel{
  margin-top:44px;
  background:var(--bg-elevated);
  border:1px solid var(--border-strong);
  border-radius:18px;
  padding:32px 34px 34px;
  position:relative;
  overflow:hidden;
}
.rules-panel::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:0;
  bottom:0;
  width:4px;
  background:var(--gold-grad);
}
.rules-panel-body{
  padding-inline-start:22px;
  font-size:15px;
}
@media (max-width:600px){
  .rules-panel{padding:26px 20px 28px;}
}
.disclaimer-text{
  margin:0;
  font-family:'Cairo',sans-serif;
  font-size:16.5px;
  line-height:2;
  color:var(--text-muted);
  white-space:pre-line;
}

/* ===================== PRICING ===================== */

.pricing-tabs{
  display:inline-flex;
  gap:4px;
  background:var(--bg-elevated);
  border:1px solid var(--border);
  padding:4px;
  border-radius:999px;
  margin-top:32px;
}
.tab-btn{
  border:none;
  background:transparent;
  color:var(--text-muted);
  font-family:'Inter',sans-serif;
  font-weight:600;
  font-size:14.5px;
  padding:10px 20px;
  border-radius:999px;
  cursor:pointer;
  transition:background .25s, color .25s;
}
.tab-btn.active{
  background:var(--gold-grad);
  color:#14110a;
}

.payment-inline{margin-top:40px;}
.section-subtitle{font-family:var(--font-display,inherit);font-size:20px;font-weight:600;margin:0 0 18px;}
.story-accordion{margin-top:8px;}
.pricing-panel{margin-top:32px;}
.pricing-panel[hidden]{display:none;}

.price-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
}
.price-grid.cols-4{grid-template-columns:repeat(4,1fr);}
.plan-card{
  background:linear-gradient(180deg,var(--bg-elevated),color-mix(in srgb,var(--bg-elevated) 92%, black));
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:28px 18px 24px;
  text-align:center;
  position:relative;
  overflow:hidden;
  transition:transform .28s var(--ease), border-color .28s, box-shadow .28s;
}
.plan-card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--gold-2),transparent);
  opacity:.55;
}
.plan-card:hover{
  transform:translateY(-4px);
  border-color:var(--border-strong);
  box-shadow:0 18px 40px rgba(0,0,0,.28);
}
.plan-name{
  font-size:13.5px;
  color:var(--text-muted);
  margin:0 0 14px;
  font-weight:600;
  letter-spacing:.02em;
}
.plan-price{
  font-family:'JetBrains Mono',monospace;
  font-size:27px;
  font-weight:700;
  margin:0;
  background:linear-gradient(180deg,var(--text),color-mix(in srgb,var(--text) 78%, var(--gold-2)));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.plan-note{
  font-size:12px;
  color:var(--text-muted);
  margin:10px 0 0;
  min-height:14px;
}
.plan-card.featured{
  border-color:var(--gold-2);
  background:linear-gradient(180deg,color-mix(in srgb,var(--gold-2) 14%, var(--bg-elevated)),var(--bg-elevated));
  box-shadow:0 20px 50px rgba(201,162,39,.14);
}
.plan-card.featured::before{opacity:1;}
.plan-pay-btn{
  display:block;
  width:100%;
  margin:16px 0 0;
  padding:10px 16px;
  border-radius:10px;
  border:1px solid transparent;
  background:var(--gold-grad);
  color:#14110a;
  font-family:'Inter',sans-serif;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(201,162,39,.2);
  transition:transform .2s var(--ease), box-shadow .2s var(--ease);
}
.plan-pay-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(201,162,39,.3);
}
@media (min-width:641px){
  .plan-pay-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:auto;
    min-width:140px;
    margin-inline:auto;
    margin-top:18px;
  }
}
.plan-card.featured .plan-price{
  background:var(--gold-grad);
  -webkit-background-clip:text;
  background-clip:text;
}
.featured-tag{
  position:absolute;
  top:0px;left:50%;
  transform:translateX(-50%);
  background:var(--gold-grad);
  color:#14110a;
  font-family:'JetBrains Mono',monospace;
  font-size:10.5px;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:999px;
  white-space:nowrap;
  box-shadow:0 4px 14px rgba(201,162,39,.35);
}

.pricing-cta{
  margin-top:20px;
  font-size:15px;
  color:var(--text-muted);
  line-height: 1.4rem;
}
.pricing-cta a{color:var(--gold-3);font-weight:600;text-decoration:none;}
.pricing-cta a:hover{text-decoration:underline;}

@media (max-width:900px){
  .price-grid, .price-grid.cols-4{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
  .price-grid, .price-grid.cols-4, .price-grid.cols-5{
    grid-template-columns:1fr;
    gap:12px;
  }
  .plan-card{
    padding:16px 20px 14px;
  }
  .plan-name{margin-bottom:8px;}
  .plan-price{font-size:23px;}
  .plan-note{margin-top:6px;min-height:0;}
  .plan-pay-btn{margin-top:10px;padding:9px 16px;}
  .plan-card.featured{padding-top:34px;}
  .featured-tag{top:10px;}
}

/* ===================== PAYMENT ===================== */
.payment-lead{
  margin:15px 0 50px;
  padding-inline-start:22px;
  border-inline-start:3px solid var(--gold-3);
  max-width:640px;
}
.payment-lead p{
  margin:0;
  font-family:'Space Grotesk','Cairo','Inter',sans-serif;
  font-size:clamp(17px,2.4vw,12px);
  font-weight:600;
  line-height:1.45;
  color:var(--text);
}
.payment-grid{
  margin-top:40px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
.payment-card{
  background:var(--bg-elevated);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:30px;
}
.payment-flag{font-size:26px;margin:0 0 12px;}
.payment-card h3{font-size:19px;margin-bottom:8px;margin-top:8px;}
.payment-card p{color:var(--text-muted);margin:0;line-height:1.4rem;}
.payment-card strong{color:var(--text);}
.binance-pay-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  max-width:50%;
  margin-top:20px;
  padding:14px 20px;
  font-size:15px;
}
.payment-note{
  margin-top:26px;
  color:var(--text-muted);
  font-size:15px;
  line-height: 1.4rem;
}
.payment-note a{color:var(--gold-3);font-weight:600;text-decoration:none;}
.payment-note a:hover{text-decoration:underline;}

@media (max-width:700px){
  .payment-grid{grid-template-columns:1fr;}
  .binance-pay-btn{
    min-width: 100%;
    max-width: 100%;
  }
}

/* Binance payment modal */
.binance-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9998;
}

.binance-modal {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  padding: 24px;
}

.binance-modal-content {
  background: var(--bg-elevated, #ffffff);
  color: var(--text, #111);
  border: 1px solid var(--border-strong, rgba(0,0,0,0.12));
  border-radius: 14px;
  padding: 24px 22px;
  max-width: 420px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  text-align: center;
  box-shadow: 0 20px 40px rgba(0,0,0,0.25);
}

.binance-modal-content h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
}

.binance-modal-header {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0 0 14px;
}

.binance-modal-logo {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
}

.binance-modal-logo svg {
  width: 22px;
  height: 22px;
}

.binance-modal-content p {
  margin: 10px 0;
  font-size: 14px;
  color: var(--text-muted, #555);
}

.binance-address-box {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgba(0,0,0,0.04);
  border: 1px solid var(--border-strong, rgba(0,0,0,0.12));
  border-radius: 10px;
  padding: 12px;
  margin: 14px 0 10px;
  text-align: left;
}

.binance-address {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  font-family: 'JetBrains Mono', monospace;
  font-size: 12.5px;
  word-break: break-all;
  color: var(--text, #111);
}

.binance-copy-btn {
  flex: 0 0 auto;
  position: static;
  padding: 6px 10px;
  border-radius: 8px;
  border: 1px solid var(--border-strong, rgba(0,0,0,0.15));
  background: var(--gold-3, #e9c56b);
  color: #000;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
}

.binance-note {
  font-size: 12.5px;
  margin-top: 10px !important;
}

.binance-modal-content .binance-warning {
  font-size: 10.5px;
  font-weight: 700;
  margin-top: 10px !important;
  padding: 0;
  color: rgba(220, 38, 38, 0.9);
  background: none;
  border: none;
  text-align: left;
}

.binance-warning strong {
  font-weight: 700;
  color: inherit;
}

[dir="rtl"] .binance-warning {
  text-align: right;
}

body.dark .binance-modal-content .binance-warning {
  color: rgba(252, 165, 165, 0.9);
}

.binance-after-info {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 2px solid var(--gold-3, #e9c56b);
  text-align: left;
}

[dir="rtl"] .binance-after-info {
  text-align: right;
}

.binance-after-title {
  margin: 0 0 6px !important;
  font-size: 14px !important;
  font-weight: 700;
  color: var(--text, #111) !important;
}

.binance-after-desc {
  margin: 0 0 10px !important;
  font-size: 12.5px !important;
}

.binance-after-list {
  margin: 0 0 8px;
  padding-inline-start: 16px;
  font-size: 12.5px;
  color: var(--text-muted, #555);
  list-style: none;
}

.binance-after-list li {
  margin: 8px 0;
}

.binance-after-cta {
  display: inline-block;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--gold-3, #e9c56b);
  text-decoration: none;
  border-bottom: 1px solid var(--border-strong, rgba(0,0,0,0.2));
  padding-bottom: 2px;
}

.binance-after-cta:hover {
  opacity: 0.85;
}

.binance-actions {
  margin-top: 16px;
}

.binance-open-btn,
.binance-close-btn {
  display: inline-block;
  margin: 8px 6px 0;
  padding: 10px 16px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid var(--border-strong, rgba(0,0,0,0.15));
}

.binance-open-btn {
  background: var(--gold-3, #e9c56b);
  color: #000;
  border-color: var(--gold-3, #e9c56b);
}

.binance-close-btn {
  background: transparent;
  color: var(--text-muted, #666);
}

/* Payment card after-payment info */
.payment-after-info {
  margin-top: 14px;
  padding-top: 2.5rem;
  border-top: 1px dashed var(--border-strong);
}
.payment-after-faded{
  opacity:.6;
  transition:opacity .25s var(--ease);
}
.payment-after-faded:hover,
.payment-after-faded:focus-within{
  opacity:1;
}

.payment-after-title {
  padding-bottom: 10px;
  font-size: 15x;
  font-weight: 900;
}


.payment-after-desc {
  margin: 0 0 8px;
  font-size: 13px;
  color: var(--text-muted);
}

.payment-after-list {
  margin:  10px 10px 0;
  padding-inline-start: 16px;
  font-size: 13px;
  color: var(--text-muted);
  list-style: none;
}

.payment-after-list li {
  margin: 8px 0;
}

.payment-after-cta {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  color: var(--gold-3);
  text-decoration: none;
  border-bottom: 1px solid var(--border-strong);
  padding-bottom: 2px;
}

.payment-after-cta:hover {
  opacity: 0.85;
}

/* Make payment card take full row width */
.payment-grid {
  display: block; /* remove grid/flex shrinking */
}

.payment-card {
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}


/* Dark mode compatibility via your existing CSS vars */
body.dark .binance-modal-content {
  background: var(--bg-elevated);
  color: var(--text);
}
body.dark .binance-address-box {
  background: rgba(255,255,255,0.06);
}

/* ===================== FREE BAND ===================== */
.free-band{padding-top:0;padding-bottom:0;}
.free-inner{
  background:var(--bg-elevated-2);
  border:1px solid var(--border);
  border-radius:24px;
  padding:52px 48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  flex-wrap:wrap;
}
.free-inner h2{font-size:26px;margin-bottom:8px;}
.free-inner p{color:var(--text-muted);margin:0;}

/* ===================== FOOTER ===================== */
.footer{
  border-top:1px solid var(--border);
  margin-top:0;
}
.footer-inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:40px 32px 40px;
  text-align:center;
}
.footer .brand{justify-content:center;margin-bottom:16px;}
.footer-tag{color:var(--text-muted);font-size:14.5px;margin:0 0 20px;}
.footer-links{
  display:flex;
  justify-content:center;
  gap:22px;
  font-size:14px;
  font-weight:600;
  margin-bottom:28px;
}
.footer-links a{text-decoration:none;color:var(--gold-3);}
.footer-links a:hover{text-decoration:underline;}
.footer-fine{
  color:var(--text-muted);
  font-size:12.5px;
  opacity:.7;
  margin:0;
}
.footer-disclaimer{
  color:var(--text-muted);
  font-size:11px;
  line-height:1.5;
  opacity:.45;
  max-width:520px;
  margin:10px auto 0;
}

/* ===================== FLOATING TELEGRAM BUTTON ===================== */
.telegram-float{
  position:fixed;
  right:22px;
  bottom:22px;
  width:56px;
  height:56px;
  border-radius:50%;
  background:#28a8e9;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 28px rgba(0,0,0,.35), 0 0 0 6px rgba(40,168,233,.14);
  z-index:1000;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.telegram-float:hover{
  transform:translateY(-3px) scale(1.05);
  box-shadow:0 14px 34px rgba(0,0,0,.4), 0 0 0 8px rgba(40,168,233,.18);
}
@media (max-width:600px){
  .telegram-float{right:16px; bottom:16px; width:52px; height:52px;}
}

/* ===================== MOBILE NAV ===================== */

@media (max-width:820px) {
  .nav-inner {
    direction: ltr;
  }

  /* Keep the Mario Signals logo on the left */
  .brand {
    order: 1;
    margin-inline-end: auto;
  }

  /* Keep language, theme, and hamburger controls on the right */
  .nav-actions {
    order: 2;
    margin-inline-start: auto;
  }

  /* Hide Free channel from the main navigation on mobile */
  .nav-actions .ghost-link {
    display: none;
  }

  /* Keep Free channel inside the hamburger menu */
  .mobile-nav-free {
    display: block;
  }

  .mobile-nav {
    direction: rtl;
  }
}

/* ===================== MOBILE HERO VISUAL ===================== */
/* Applies for the whole single-column range (matches the .hero-inner
   grid-template-columns:1fr breakpoint above) so cards never fall back
   to the desktop absolute/inset-inline positioning, which is what was
   causing them to hug the left in LTR and the right in RTL. */

@media (max-width:900px) {
  .hero-visual {
    height: auto;
    min-height: 560px;
    transform: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
    padding: 20px 0 30px;
  }

  .hero-visual .gold-photo {
    position: relative;
    z-index: 1;
    width: min(300px, 82vw);
    margin: 0 auto;
  }

  .hero-visual .glow,
  .hero-visual .glow-2 {
    display: none;
  }

  /* Turn the floating cards into normal mobile blocks */
  .hero-visual .float-card,
  .hero-visual .price-card,
  .hero-visual .signal-card,
  .hero-visual .results-card {
    position: relative;
    inset: auto;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    inset-inline-start: auto;
    inset-inline-end: auto;
    z-index: 2;
    width: min(300px, 86vw);
    margin: 0 auto;
    animation: none;
  }

  .hero-visual .price-card {
    order: 2;
  }

  .hero-visual .results-card {
    order: 3;
  }

  .hero-visual .signal-card {
    order: 4;
  }
}

@media (max-width:520px) {
  .hero-visual {
    min-height: 560px;
  }
}