/* ============================================================
   RP /resell-ai/ shim — loaded via mu-plugin rp-resellai-shim.php
   Edit this file directly; no DB or PHP run needed.
   ============================================================ */

/* ===== Page + no horizontal overflow ===== */
html, body { overflow-x: hidden !important; max-width: 100vw !important; }
body, .elementor-location-single, .single-product { background: #faf5fc !important; }
.elementor-section-wrap > .elementor-section:not(.elementor-location-header):not(.elementor-location-footer) { background: transparent !important; max-width: 100vw !important; overflow-x: hidden; }
.elementor-widget-html, .elementor-widget-container { max-width: 100% !important; overflow-x: hidden; }
* { box-sizing: border-box; }

/* ===== HERO ===== */
.hero {
  background: linear-gradient(rgba(15,3,30,.92), rgba(15,3,30,.92)),
              url(https://resellportal.com/wp-content/uploads/hero-bg-waves-20260605_044407.jpg) center/cover no-repeat, #08010f !important;
  position: relative !important; overflow: hidden !important;
  padding: 100px 5% 80px !important; margin: 0 !important;
  border-radius: 0 !important; box-shadow: none !important; max-width: 100vw !important;
}
.hero::before { display: none !important; }
.hero::after {
  content: '' !important; position: absolute !important; inset: 0 !important;
  background-image: radial-gradient(rgba(255,255,255,.04) 1px, transparent 1px) !important;
  background-size: 22px 22px !important;
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 30%, #000, transparent 75%) !important;
          mask-image: radial-gradient(ellipse 70% 60% at 50% 30%, #000, transparent 75%) !important;
  pointer-events: none !important; z-index: 0;
}
.hero-inner { position: relative; z-index: 1; max-width: 1400px !important; margin: 0 auto !important; text-align: left !important; }
.hero-badge {
  display: inline-flex !important; align-items: center !important; gap: 8px !important;
  font-family: 'Geist','Inter',sans-serif !important; font-size: .76rem !important; font-weight: 600 !important;
  color: #b69bff !important;
  background: rgba(139,60,255,.12) !important; border: 1px solid rgba(139,60,255,.28) !important;
  padding: 8px 16px !important; border-radius: 100px !important;
  margin: 0 0 26px 0 !important; line-height: 1.2 !important;
}
.hero-badge .pulse-dot { width: 6px !important; height: 6px !important; }
.hero h1 {
  font-family: 'Geist','Inter',sans-serif !important;
  font-size: clamp(2.4rem, 5.5vw, 4.3rem) !important;
  font-weight: 800 !important; line-height: 1.05 !important; letter-spacing: -.035em !important;
  color: #fff !important; margin: 0 0 22px 0 !important; text-align: left !important;
}
.hero h1 em {
  font-style: normal !important;
  background: linear-gradient(115deg, #b69bff, #8b3cff 60%, #6011EE) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important; color: transparent !important;
}
.hero-sub { font-size: 1.15rem !important; line-height: 1.7 !important; color: #fff !important; margin: 0 0 24px 0 !important; max-width: 620px !important; text-align: left !important; }
.hero-sub strong { color: #fff !important; }
.hero-checks { justify-content: flex-start !important; }
.hero-checks li { color: #fff !important; }
.hero-checks li i { color: #a78bfa !important; }
.hero-cta-group { justify-content: flex-start !important; gap: 14px !important; display: flex !important; flex-wrap: wrap !important; }
.hero-micro { text-align: left !important; color: #fff !important; }
.hero-micro span { color: #fff !important; }
.hero-micro i { color: #a78bfa !important; }
.hero .btn { padding: 15px 28px !important; height: auto !important; font-size: .92rem !important; border-radius: 10px !important; font-weight: 700 !important; gap: 10px !important; box-shadow: none !important; white-space: nowrap !important; }
.hero a.btn-primary, .hero .btn-primary { background: linear-gradient(135deg, #6011EE, #8b3cff) !important; color: #fff !important; border: none !important; }
.hero a.btn-primary:hover { background: linear-gradient(135deg, #4e0dbe, #7c3aed) !important; }
.hero a.btn-ghost { background: rgba(255,255,255,.06) !important; color: #fff !important; border: 1px solid rgba(255,255,255,.16) !important; }
.hero a.btn-ghost:hover { background: rgba(255,255,255,.12) !important; border-color: rgba(255,255,255,.28) !important; }
.btn-pulse { animation: none !important; }

/* ===== PROMO BAR — exact homepage copy ===== */
.promo { background: linear-gradient(90deg, #6011EE, #4f46e5) !important; padding: 0 !important; margin: 0 !important; text-align: center !important; position: relative !important; overflow: hidden !important; width: 100% !important; max-width: 100vw !important; border-radius: 0 !important; box-shadow: none !important; }
.promo-in { display: flex !important; align-items: center !important; justify-content: center !important; gap: 16px !important; position: relative !important; padding: 13px 52px 13px 24px !important; flex-wrap: nowrap !important; max-width: none !important; margin: 0 !important; }
.promo-close { position: absolute !important; right: 12px !important; top: 50% !important; transform: translateY(-50%) !important; background: rgba(255,255,255,.18) !important; border: none !important; color: #fff !important; width: 28px !important; height: 28px !important; border-radius: 50% !important; font-size: 1rem !important; cursor: pointer !important; display: flex !important; align-items: center !important; justify-content: center !important; line-height: 1 !important; padding: 0 !important; flex-shrink: 0 !important; }
.promo-close:hover { background: rgba(255,255,255,.32) !important; }
.promo-tag { background: rgba(255,255,255,.18) !important; padding: 4px 10px !important; border-radius: 4px !important; font-size: .68rem !important; font-weight: 800 !important; text-transform: uppercase !important; letter-spacing: .07em !important; color: #fff !important; font-family: 'Inter',sans-serif !important; white-space: nowrap !important; flex-shrink: 0 !important; border: none !important; }
.promo-text { font-size: .93rem !important; color: #fff !important; font-weight: 500 !important; white-space: nowrap !important; flex-shrink: 1 !important; min-width: 0 !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.promo-text strong { font-weight: 800 !important; color: #fff !important; }
.promo-btn { background: #fff !important; color: #6011EE !important; padding: 7px 18px !important; border-radius: 6px !important; font-size: .8rem !important; font-weight: 700 !important; font-family: 'Inter',sans-serif !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 6px !important; border: none !important; white-space: nowrap !important; flex-shrink: 0 !important; text-decoration: none !important; }
.promo-btn:hover { background: #ede5ff !important; color: #4e0dbe !important; }
.promo-btn i { font-size: .7em !important; }

/* ===== SECTIONS — rounded cards ===== */
section.light-section, section.white-section {
  background: #fff !important;
  margin: 0 0 10px 0 !important;
  border-radius: 24px !important;
  padding: 100px 5% !important;
  box-shadow: 0 4px 32px rgba(96,17,238,.08), 0 1px 3px rgba(96,17,238,.04) !important;
  border: none !important;
  width: 100% !important;
  max-width: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
section.dark-section {
  background: #08010f !important;
  margin: 0 0 10px 0 !important;
  border-radius: 24px !important;
  padding: 100px 5% !important;
  box-shadow: 0 4px 32px rgba(96,17,238,.18) !important;
  border: none !important;
  width: 100% !important;
  max-width: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
section.final-cta {
  background: #fff !important;
  margin: 0 0 10px 0 !important;
  border-radius: 24px !important;
  padding: 100px 5% !important;
  box-shadow: 0 4px 32px rgba(96,17,238,.08) !important;
  border: none !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
section.final-cta::before { display: none !important; }
.final-cta-inner { text-align: left !important; max-width: 1400px !important; margin: 0 auto !important; }
.final-cta h2 { color: #0a0a0f !important; text-align: left !important; }
.final-cta p { color: #4a4a55 !important; text-align: left !important; }
.final-cta-btns { justify-content: flex-start !important; margin-bottom: 18px !important; }
.final-trust { text-align: left !important; color: #6a6a75 !important; }

/* Force-fit all section children — eliminate width overflow */
section.light-section > *, section.white-section > *, section.dark-section > *, section.final-cta > * {
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* ===== SECTION HEADERS — left aligned ===== */
.section-top { text-align: left !important; max-width: 1400px !important; margin: 0 auto 32px auto !important; }
.section-top .eyebrow, .eyebrow.center, .eyebrow {
  justify-content: flex-start !important; text-align: left !important;
  margin-bottom: 14px !important; font-size: .72rem !important; font-weight: 700 !important;
  letter-spacing: .16em !important; text-transform: uppercase !important;
  display: flex !important; align-items: center !important; gap: 8px !important;
  background: none !important; padding: 0 !important; border: none !important; border-radius: 0 !important;
}
section.light-section .eyebrow, section.white-section .eyebrow, section.final-cta .eyebrow { color: #6011EE !important; }
section.dark-section .eyebrow { color: #a78bfa !important; }

.sec-h {
  text-align: left !important;
  font-family: 'Geist','Inter',sans-serif !important;
  font-size: clamp(1.7rem, 3.2vw, 2.4rem) !important;
  font-weight: 800 !important; letter-spacing: -.035em !important; line-height: 1.15 !important;
  margin: 0 0 14px 0 !important;
}
section.light-section .sec-h, section.white-section .sec-h { color: #0a0a0f !important; }
section.dark-section .sec-h { color: #fff !important; }
.sec-h em {
  font-style: normal !important;
  background: linear-gradient(115deg, #6011EE, #8b3cff) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important; color: transparent !important;
}
section.dark-section .sec-h em {
  background: linear-gradient(115deg, #b69bff, #8b3cff) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.sec-p { text-align: left !important; font-size: 1rem !important; line-height: 1.7 !important; margin: 0 !important; max-width: 760px !important; }
section.light-section .sec-p, section.white-section .sec-p { color: #4a4a55 !important; }
section.dark-section .sec-p { color: #fff !important; }
.section-top *[style*="margin:0 auto"], .section-top *[style*="margin: 0 auto"] { margin-left: 0 !important; }

/* ===== TOOL CARDS — inline icon next to title ===== */
.tools-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}
.tool-category {
  grid-column: 1 / -1 !important; display: flex !important; align-items: center !important; gap: 10px !important;
  font-family: 'Geist','Inter',sans-serif !important; font-size: .88rem !important; font-weight: 700 !important;
  padding: 16px 0 6px !important; margin-bottom: 4px !important;
}
section.light-section .tool-category, section.white-section .tool-category { color: #0a0a0f !important; border-bottom: 1px solid #e3e3ea !important; }
section.dark-section .tool-category { color: #fff !important; border-bottom: 1px solid rgba(255,255,255,.1) !important; }
.tool-category i { color: #6011EE !important; }
section.dark-section .tool-category i { color: #a78bfa !important; }
.tool-category .cnt { font-size: .7rem !important; font-weight: 600 !important; padding: 2px 10px !important; border-radius: 20px !important; }
section.light-section .tool-category .cnt, section.white-section .tool-category .cnt { background: #f3f0fa !important; color: #6a6a75 !important; }
section.dark-section .tool-category .cnt { background: rgba(255,255,255,.08) !important; color: rgba(255,255,255,.7) !important; }

.tool-card {
  display: grid !important;
  grid-template-areas: "ico title" "desc desc" !important;
  grid-template-columns: 32px 1fr !important;
  gap: 6px 12px !important; align-items: center !important;
  padding: 24px 20px !important; border-radius: 14px !important;
  background: #fff !important; border: 1px solid #e3e3ea !important;
  cursor: pointer !important; position: relative !important; overflow: hidden !important;
  min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important;
}
section.dark-section .tool-card { background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.08) !important; }
.tool-card::after { display: none !important; }
.tool-card:hover { border-color: #6011EE !important; box-shadow: 0 4px 16px rgba(96,17,238,.08) !important; }
.tool-card a { position: absolute !important; inset: 0 !important; z-index: 1 !important; }
.tool-emoji {
  grid-area: ico !important;
  width: 32px !important; height: 32px !important; aspect-ratio: 1/1 !important;
  background: linear-gradient(135deg, #6011EE, #8b3cff) !important;
  border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  color: #fff !important; font-size: .85rem !important; margin: 0 !important; flex-shrink: 0 !important;
}
.tool-emoji i { color: #fff !important; font-size: .9rem !important; }
.tool-name { grid-area: title !important; align-self: center !important; font-family: 'Geist','Inter',sans-serif !important; font-size: .9rem !important; font-weight: 700 !important; margin: 0 !important; min-width: 0 !important; overflow-wrap: anywhere !important; }
section.light-section .tool-name, section.white-section .tool-name { color: #0a0a0f !important; }
section.dark-section .tool-name { color: #fff !important; }
.tool-desc { grid-area: desc !important; font-size: .78rem !important; line-height: 1.5 !important; margin-top: 2px !important; min-width: 0 !important; overflow-wrap: anywhere !important; }
section.light-section .tool-desc, section.white-section .tool-desc { color: #4a4a55 !important; }
section.dark-section .tool-desc { color: #fff !important; }

/* ===== HOW-STEPS ===== */
.how-steps { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 16px !important; margin-top: 36px !important; width: 100% !important; }
.how-steps::before { display: none !important; }
.how-step {
  background: #fff !important; border: 1px solid #e3e3ea !important; border-radius: 16px !important;
  padding: 36px 28px !important; text-align: left !important; position: relative !important; z-index: 1 !important;
  min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important;
}
section.dark-section .how-step { background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.08) !important; }
.how-step:hover { border-color: #6011EE !important; box-shadow: 0 4px 16px rgba(96,17,238,.08) !important; }
.how-step-num {
  width: 32px !important; height: 32px !important; aspect-ratio: 1/1 !important;
  background: linear-gradient(135deg, #6011EE, #8b3cff) !important;
  border: none !important; border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-family: 'Geist','Inter',sans-serif !important; font-size: .85rem !important; font-weight: 800 !important; color: #fff !important;
  margin: 0 0 14px 0 !important;
}
.how-step:hover .how-step-num { background: linear-gradient(135deg, #4e0dbe, #7c3aed) !important; color: #fff !important; }
.how-step h4 { font-size: .98rem !important; margin-bottom: 6px !important; }
section.light-section .how-step h4, section.white-section .how-step h4 { color: #0a0a0f !important; }
section.dark-section .how-step h4 { color: #fff !important; }
.how-step p { font-size: .83rem !important; line-height: 1.55 !important; margin: 0 !important; }
section.light-section .how-step p, section.white-section .how-step p { color: #4a4a55 !important; }
section.dark-section .how-step p { color: #fff !important; }

/* ===== TWIN CARDS / PROFIT / INSET ===== */
.twin-cards { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 20px !important; width: 100% !important; }
.profit-card, .inset-card {
  background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 20px !important; padding: 32px 24px !important; position: relative !important; overflow: hidden !important;
  min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important;
}
section.light-section .profit-card, section.white-section .profit-card,
section.light-section .inset-card, section.white-section .inset-card {
  background: #fff !important; border: 1px solid #e3e3ea !important;
}
.profit-card::before, .inset-card::before { display: none !important; }
.profit-header h4 { font-family: 'Geist','Inter',sans-serif !important; font-weight: 800 !important; }
.profit-header { font-family: 'Geist','Inter',sans-serif !important; font-size: .72rem !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .16em !important; margin-bottom: 16px !important; }
section.dark-section .profit-header, section.dark-section .profit-header h4 { color: #a78bfa !important; }
section.light-section .profit-header, section.white-section .profit-header { color: #6011EE !important; }
section.dark-section .profit-highlight { color: #fff !important; }
section.dark-section .profit-label, section.dark-section .profit-row { color: #fff !important; }
section.dark-section .profit-val { color: #fff !important; }
.inset-card-label { font-family: 'Geist','Inter',sans-serif !important; font-size: .7rem !important; text-transform: uppercase !important; letter-spacing: .14em !important; font-weight: 700 !important; }
section.light-section .inset-card-label, section.white-section .inset-card-label { color: #6011EE !important; }
section.dark-section .inset-card-label { color: #a78bfa !important; }
.inset-card-title { font-family: 'Geist','Inter',sans-serif !important; font-weight: 800 !important; }
section.light-section .inset-card-title, section.white-section .inset-card-title { color: #0a0a0f !important; }
section.dark-section .inset-card-title { color: #fff !important; }
section.light-section .inset-card-sub, section.white-section .inset-card-sub { color: #4a4a55 !important; }
section.dark-section .inset-card-sub { color: #fff !important; }

/* ===== CALCULATOR on light ===== */
.calc-wrap { max-width: 760px !important; margin: 0 auto !important; width: 100% !important; }
.calc-inner { background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.08) !important; border-radius: 20px !important; padding: 32px !important; }
section.light-section .calc-label, section.white-section .calc-label { color: #0a0a0f !important; }
section.light-section .calc-val, section.white-section .calc-val { color: #6011EE !important; }
section.light-section .calc-slider, section.white-section .calc-slider { background: #e3e3ea !important; }
section.light-section .calc-result, section.white-section .calc-result { background: #f5f0fa !important; border: 1px solid rgba(96,17,238,.18) !important; }
section.light-section .calc-result-label, section.white-section .calc-result-label { color: #6011EE !important; }
section.light-section .calc-result-value, section.white-section .calc-result-value { color: #0a0a0f !important; }
section.light-section .calc-result-note, section.white-section .calc-result-note { color: #6a6a75 !important; }

/* ===== TESTIMONIALS ===== */
.testi-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 18px !important; width: 100% !important; }
.testi-card { background: #fff !important; border: 1px solid #e3e3ea !important; border-radius: 16px !important; padding: 32px !important; min-width: 0 !important; max-width: 100% !important; box-sizing: border-box !important; }
.testi-card::after { display: none !important; }
.testi-card:hover { border-color: #6011EE !important; box-shadow: 0 4px 16px rgba(96,17,238,.08) !important; }
section.light-section .testi-text, section.white-section .testi-text { color: #4a4a55 !important; }
section.light-section .testi-name, section.white-section .testi-name { color: #0a0a0f !important; }
section.light-section .testi-role, section.white-section .testi-role { color: #6a6a75 !important; }
.testi-stars i { color: #fbbf24 !important; }

/* ===== FAQ ===== */
.faq-grid { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 14px !important; margin-top: 32px !important; width: 100% !important; }
.faq-item { background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.08) !important; border-radius: 14px !important; padding: 24px 20px !important; min-width: 0 !important; box-sizing: border-box !important; }
section.light-section .faq-item, section.white-section .faq-item { background: #fff !important; border: 1px solid #e3e3ea !important; }
.faq-q { font-family: 'Geist','Inter',sans-serif !important; font-weight: 700 !important; font-size: .98rem !important; margin-bottom: 6px !important; }
section.dark-section .faq-q { color: #fff !important; }
section.light-section .faq-q, section.white-section .faq-q { color: #0a0a0f !important; }
.faq-a { font-size: .88rem !important; line-height: 1.6 !important; }
section.dark-section .faq-a { color: #fff !important; }
section.light-section .faq-a, section.white-section .faq-a { color: #4a4a55 !important; }

/* ===== STATS-STRIP (between hero and first section) — homepage .stats-row exact ===== */
.stats-strip { background: transparent !important; border: none !important; padding: 56px 5% !important; margin: 0 !important; }
.stats-grid { max-width: 1400px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 16px !important; text-align: left !important; }
.stat-block { text-align: left !important; border-right: none !important; padding: 0 !important; }
.stat-num { color: #0a0a0f !important; font-family: 'Geist','Inter',sans-serif !important; font-weight: 800 !important; }
.stat-label { color: #6a6a75 !important; }

/* ===== TRUST BAR (wrapped in .light-section.trust-bar-wrap) ===== */
.trust-bar { background: transparent !important; border: none !important; padding: 0 !important; margin: 0 !important; text-align: left !important; }
.trust-bar-label { color: #6a6a75 !important; text-align: left !important; font-family: 'Geist','Inter',sans-serif !important; font-size: .72rem !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .16em !important; margin-bottom: 18px !important; }
.trust-logos { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; justify-content: flex-start !important; }
.trust-logo-item { display: inline-flex !important; align-items: center !important; gap: 8px !important; background: #fff !important; border: 1px solid #e3e3ea !important; border-radius: 100px !important; padding: 8px 14px !important; color: #0a0a0f !important; font-size: .82rem !important; font-weight: 600 !important; filter: none !important; }
.trust-logo-item i { color: #6011EE !important; }

/* ===== BONUS GRID ===== */
.bonus-scroll-wrap { position: relative !important; }
.bonus-grid { display: flex !important; gap: 12px !important; overflow-x: auto !important; overflow-y: hidden !important; scroll-snap-type: x proximity !important; scrollbar-width: none !important; padding: 6px 0 !important; margin: 0 !important; }
.bonus-grid::-webkit-scrollbar { display: none !important; }
.bonus-pill { display: inline-flex !important; align-items: center !important; gap: 10px !important; background: #fff !important; border: 1px solid #e3e3ea !important; border-radius: 100px !important; padding: 6px 14px 6px 6px !important; font-size: .82rem !important; font-weight: 600 !important; color: #0a0a0f !important; white-space: nowrap !important; flex-shrink: 0 !important; scroll-snap-align: start !important; }
section.dark-section .bonus-pill { background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.12) !important; color: #fff !important; }
.bonus-emoji { width: 26px !important; height: 26px !important; aspect-ratio: 1/1 !important; background: linear-gradient(135deg, #6011EE, #8b3cff) !important; border-radius: 50% !important; color: #fff !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; font-size: .72rem !important; flex-shrink: 0 !important; }
.bonus-emoji i { color: #fff !important; }

/* ===== BUTTONS ===== */
.btn { display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 10px !important; padding: 14px 24px !important; border-radius: 10px !important; font-weight: 700 !important; font-size: .92rem !important; cursor: pointer !important; white-space: nowrap !important; text-decoration: none !important; border: none !important; }
.btn-primary { background: linear-gradient(135deg, #6011EE, #8b3cff) !important; color: #fff !important; border: none !important; }
.btn-primary:hover { background: linear-gradient(135deg, #4e0dbe, #7c3aed) !important; }
.btn-outline-dark { background: #fff !important; color: #0a0a0f !important; border: 1px solid #e3e3ea !important; }
.btn-outline-dark:hover { border-color: #6011EE !important; color: #6011EE !important; }
.btn-ghost { background: rgba(255,255,255,.06) !important; color: #fff !important; border: 1px solid rgba(255,255,255,.16) !important; }
section.light-section .btn-ghost, section.white-section .btn-ghost, section.final-cta .btn-ghost { background: #fff !important; color: #0a0a0f !important; border: 1px solid #e3e3ea !important; }
section.light-section .btn-ghost:hover, section.white-section .btn-ghost:hover, section.final-cta .btn-ghost:hover { border-color: #6011EE !important; color: #6011EE !important; }

/* Force-left button containers (desktop AND mobile) */
.hero-cta-group, .final-cta-btns, .final-trust, .hero-micro,
.section-cta, .reveal.section-cta, div.section-cta, .reveal[class*="cta"] {
  justify-content: flex-start !important;
  text-align: left !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}
.section-cta .btn, .reveal.section-cta .btn { width: auto !important; justify-content: center !important; flex: 0 0 auto !important; }
.inset-card { text-align: left !important; }
.inset-card .btn { margin: 0 !important; }
/* Override inline text-align:center on section .reveal containers */
section.light-section [style*="text-align:center"]:not(.eyebrow):not(.btn),
section.white-section [style*="text-align:center"]:not(.eyebrow):not(.btn),
section.dark-section [style*="text-align:center"]:not(.eyebrow):not(.btn),
section.final-cta [style*="text-align:center"]:not(.eyebrow):not(.btn) { text-align: left !important; }
/* Inline margin:0 auto inside section-tops should not center */
.section-top *[style*="margin:0 auto"], .section-top *[style*="margin: 0 auto"] { margin-left: 0 !important; margin-right: 0 !important; }

/* Kill Elementor red focus/active outline on all buttons */
.btn, .btn-primary, .btn-outline-dark, .btn-ghost, .promo-btn, .promo-close, .rp-scroll-arrows button {
  outline: none !important;
}
.btn:focus, .btn:active, .btn:focus-visible,
.btn-primary:focus, .btn-primary:active, .btn-primary:focus-visible,
.btn-outline-dark:focus, .btn-outline-dark:active, .btn-outline-dark:focus-visible,
.btn-ghost:focus, .btn-ghost:active, .btn-ghost:focus-visible,
.promo-btn:focus, .promo-btn:active, .promo-btn:focus-visible {
  outline: none !important; box-shadow: none !important;
}
.btn-outline-dark:focus, .btn-outline-dark:active, .btn-outline-dark:focus-visible {
  background: #fff !important; color: #0a0a0f !important; border-color: #e3e3ea !important;
}
.btn-outline-dark:hover { background: #fff !important; border-color: #6011EE !important; color: #6011EE !important; }
.btn-primary:focus, .btn-primary:active, .btn-primary:focus-visible {
  background: linear-gradient(135deg,#6011EE,#8b3cff) !important; color: #fff !important;
}

/* ===== Scroll arrows — IDENTICAL in every state, no dimming ===== */
.rp-scroll-arrows { display: none; }
@media (max-width: 768px) {
  .rp-scroll-arrows {
    display: flex !important; gap: 8px; justify-content: flex-start; margin: 14px 0 0 0;
  }
  /* Light-section default — all states identical */
  .rp-scroll-arrows button,
  .rp-scroll-arrows button:disabled,
  .rp-scroll-arrows button[disabled],
  .rp-scroll-arrows button:focus,
  .rp-scroll-arrows button:active,
  .rp-scroll-arrows button:focus-visible {
    width: 36px !important; height: 36px !important; border-radius: 8px !important;
    background: #fff !important; border: 1px solid #d6d6dc !important; color: #0a0a0f !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    font-size: .7rem !important; padding: 0 !important; flex-shrink: 0 !important; cursor: pointer !important;
    outline: none !important; box-shadow: none !important; opacity: 1 !important;
    filter: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
  }
  .rp-scroll-arrows button:hover { border-color: #6011EE !important; color: #6011EE !important; }
  .rp-scroll-arrows button:disabled,
  .rp-scroll-arrows button[disabled] { cursor: not-allowed !important; }

  /* Dark-section override — all states identical */
  section.dark-section .rp-scroll-arrows button,
  section.dark-section .rp-scroll-arrows button:disabled,
  section.dark-section .rp-scroll-arrows button[disabled],
  section.dark-section .rp-scroll-arrows button:focus,
  section.dark-section .rp-scroll-arrows button:active,
  section.dark-section .rp-scroll-arrows button:focus-visible {
    background: rgba(255,255,255,.14) !important;
    border: 1px solid rgba(255,255,255,.32) !important;
    color: #fff !important;
    opacity: 1 !important;
    filter: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
  }
  section.dark-section .rp-scroll-arrows button:hover {
    border-color: rgba(167,139,250,.7) !important; color: #fff !important; background: rgba(255,255,255,.20) !important;
  }
  section.dark-section .rp-scroll-arrows button i,
  section.dark-section .rp-scroll-arrows button:disabled i,
  section.dark-section .rp-scroll-arrows button[disabled] i,
  section.dark-section .rp-scroll-arrows button:focus i,
  section.dark-section .rp-scroll-arrows button:active i {
    color: #fff !important; opacity: 1 !important; text-shadow: none !important;
  }
}

/* Footer dark */
footer, .elementor-location-footer { background: #0f172a !important; }

/* ===== MOBILE ===== */
@media (max-width: 1100px) {
  section.light-section, section.white-section, section.dark-section, section.final-cta {
    padding: 72px 5% !important; margin: 0 0 10px 0 !important;
  }
  .tools-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .how-steps { grid-template-columns: repeat(2, 1fr) !important; }
  .testi-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 768px) {
  .hero { padding: 80px 20px 60px !important; }
  .hero-inner { padding: 0 !important; display: block !important; grid-template-columns: none !important; }
  .hero-inner > .fade-up.fade-up-d2:last-child { display: none !important; }
  .hero h1 { font-size: clamp(1.95rem, 8vw, 2.6rem) !important; line-height: 1.1 !important; }
  .hero-sub { font-size: 1rem !important; line-height: 1.65 !important; }
  .hero-badge { font-size: .7rem !important; padding: 7px 14px !important; margin-bottom: 18px !important; }
  .hero-cta-group { flex-direction: column !important; flex-wrap: nowrap !important; gap: 10px !important; align-items: stretch !important; width: 100% !important; }
  .hero-cta-group .btn { flex: 0 0 auto !important; width: 100% !important; padding: 13px 18px !important; font-size: .9rem !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }

  section.light-section, section.white-section, section.dark-section, section.final-cta {
    margin: 0 0 10px 0 !important; border-radius: 18px !important; padding: 56px 20px !important; max-width: 100vw !important;
  }
  .section-top { margin-bottom: 24px !important; }
  .sec-h { font-size: clamp(1.5rem, 6vw, 1.95rem) !important; }
  .sec-p { font-size: .94rem !important; }

  .tools-grid { grid-template-columns: 1fr !important; gap: 10px !important; }
  .how-steps { grid-template-columns: 1fr !important; gap: 12px !important; }
  .faq-grid { grid-template-columns: 1fr !important; gap: 12px !important; margin-top: 22px !important; }
  .twin-cards { grid-template-columns: 1fr !important; gap: 14px !important; }
  .profit-cols { grid-template-columns: 1fr !important; }
  .testi-grid { grid-template-columns: 1fr !important; gap: 14px !important; }

  .calc-inner { padding: 22px 16px !important; }
  .calc-label { flex-direction: column !important; align-items: flex-start !important; gap: 4px !important; }
  .calc-result { text-align: left !important; }
  .calc-result-label, .calc-result-note { text-align: left !important; }
  .calc-result-value { font-size: 2rem !important; }

  .stats-strip { margin: 0 !important; padding: 40px 20px !important; overflow: visible !important; }
  .stats-grid {
    display: flex !important; grid-template-columns: none !important; flex-wrap: nowrap !important;
    overflow-x: auto !important; overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important;
    gap: 22px !important; max-height: none !important;
  }
  .stats-grid::-webkit-scrollbar { display: none !important; }
  .stat-block { flex: 0 0 auto !important; min-width: 100px !important; }
  .stat-num { font-size: 1.5rem !important; }

  /* Tools grid → horizontal scroll on mobile, like homepage long-list pattern */
  .tools-grid {
    display: flex !important; grid-template-columns: none !important; flex-wrap: nowrap !important;
    overflow-x: auto !important; overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important;
    scroll-snap-type: x mandatory !important;
    gap: 12px !important; padding: 4px 0 !important; margin: 0 !important;
  }
  .tools-grid::-webkit-scrollbar { display: none !important; }
  .tools-grid > .tool-card {
    flex: 0 0 78% !important; max-width: 78% !important; min-width: 78% !important;
    scroll-snap-align: start !important;
  }
  /* Hide category dividers inside the horizontal scroll — they break the flow */
  .tools-grid > .tool-category { display: none !important; }

  /* How-steps horizontal scroll */
  .how-steps {
    display: flex !important; grid-template-columns: none !important; flex-wrap: nowrap !important;
    overflow-x: auto !important; overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important;
    scroll-snap-type: x mandatory !important;
    gap: 12px !important;
    margin: 24px 0 0 0 !important; padding: 4px 0 !important;
  }
  .how-steps::-webkit-scrollbar { display: none !important; }
  .how-steps > .how-step {
    flex: 0 0 80% !important; max-width: 80% !important; min-width: 80% !important;
    scroll-snap-align: start !important;
  }

  /* Testimonials horizontal scroll */
  .testi-grid {
    display: flex !important; grid-template-columns: none !important; flex-wrap: nowrap !important;
    overflow-x: auto !important; overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important; scrollbar-width: none !important;
    scroll-snap-type: x mandatory !important;
    gap: 12px !important;
    margin: 0 !important; padding: 4px 0 !important;
  }
  .testi-grid::-webkit-scrollbar { display: none !important; }
  .testi-grid > .testi-card {
    flex: 0 0 82% !important; max-width: 82% !important; min-width: 82% !important;
    scroll-snap-align: start !important;
  }

  .final-cta-btns { flex-direction: column !important; flex-wrap: nowrap !important; gap: 10px !important; align-items: stretch !important; width: 100% !important; }
  .final-cta-btns .btn { flex: 0 0 auto !important; width: 100% !important; padding: 13px 18px !important; font-size: .9rem !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }

  .promo { padding: 0 !important; margin: 0 !important; }
  .promo-in { flex-wrap: nowrap !important; justify-content: center !important; align-items: center !important; gap: 10px !important; padding: 11px 44px 11px 16px !important; }
  .promo-tag { display: none !important; }
  .promo-text { font-size: .8rem !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; min-width: 0 !important; flex-shrink: 1 !important; }
  .promo-btn { font-size: .75rem !important; padding: 6px 13px !important; }
  .promo-close { right: 8px !important; width: 24px !important; height: 24px !important; font-size: .85rem !important; }
}
@media (max-width: 480px) {
  .hero { padding: 64px 16px 48px !important; }
  .hero h1 { font-size: 1.8rem !important; }
  section.light-section, section.white-section, section.dark-section, section.final-cta { padding: 48px 16px !important; margin: 0 0 10px 0 !important; max-width: 100vw !important; }
}
