:root {
  --reid-bg: #080a0f;
  --reid-bg-2: #0d1118;
  --reid-surface: #111722;
  --reid-surface-2: #151d29;
  --reid-text: #f6f8fb;
  --reid-muted: #9ba7b7;
  --reid-line: rgba(255,255,255,.09);
  --reid-accent: #6ea8fe;
  --reid-accent-2: #48dfc2;
  --reid-shadow: 0 24px 80px rgba(0,0,0,.34);
  --reid-radius: 22px;
  --reid-max: 1180px;
}

html { scroll-behavior: smooth; }

body.reid-intelligence-site {
  background: var(--reid-bg);
  color: var(--reid-text);
}

.reid-wrap {
  width: min(calc(100% - 40px), var(--reid-max));
  margin-inline: auto;
}

.reid-section {
  position: relative;
  padding: 96px 0;
  overflow: hidden;
}

.reid-section--tight { padding: 58px 0; }
.reid-section--alt { background: var(--reid-bg-2); }

.reid-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  color: #dbe8ff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.reid-eyebrow::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--reid-accent-2);
  box-shadow: 0 0 24px rgba(72,223,194,.75);
}

.reid-title,
.reid-section h2,
.reid-section h3 {
  color: var(--reid-text);
  letter-spacing: -.03em;
}

.reid-title {
  margin: 0;
  max-width: 980px;
  font-size: clamp(46px, 7vw, 86px);
  line-height: .98;
  font-weight: 800;
}

.reid-gradient-text {
  background: linear-gradient(90deg, #ffffff 0%, var(--reid-accent) 48%, var(--reid-accent-2) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.reid-lead {
  max-width: 760px;
  margin: 28px 0 0;
  color: var(--reid-muted);
  font-size: clamp(18px, 2.2vw, 23px);
  line-height: 1.55;
}

.reid-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

.reid-btn,
.et_pb_button.reid-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 24px !important;
  border: 1px solid var(--reid-line) !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.reid-btn:hover,
.et_pb_button.reid-btn:hover {
  transform: translateY(-2px);
}

.reid-btn--primary,
.et_pb_button.reid-btn--primary {
  color: #071019 !important;
  background: linear-gradient(90deg, var(--reid-accent), var(--reid-accent-2)) !important;
  border-color: transparent !important;
}

.reid-btn--ghost,
.et_pb_button.reid-btn--ghost {
  color: var(--reid-text) !important;
  background: rgba(255,255,255,.04) !important;
}

.reid-hero {
  min-height: 760px;
  display: grid;
  align-items: center;
  background:
    radial-gradient(circle at 75% 20%, rgba(110,168,254,.18), transparent 28%),
    radial-gradient(circle at 20% 70%, rgba(72,223,194,.10), transparent 24%),
    var(--reid-bg);
}

.reid-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(360px, .94fr);
  align-items: center;
  gap: 64px;
}

.reid-product-frame {
  position: relative;
  padding: 12px;
  border: 1px solid var(--reid-line);
  border-radius: 28px;
  background: rgba(255,255,255,.035);
  box-shadow: var(--reid-shadow);
  backdrop-filter: blur(18px);
}

.reid-product-frame__bar {
  height: 38px;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 0 12px;
}

.reid-product-frame__bar span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,.25);
}

.reid-product-frame__screen {
  min-height: 410px;
  display: grid;
  place-items: center;
  padding: 32px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 18px;
  color: var(--reid-muted);
  text-align: center;
  background:
    linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.01)),
    #0d121a;
}

.reid-proof-grid,
.reid-card-grid,
.reid-steps,
.reid-pricing-grid {
  display: grid;
  gap: 20px;
}

.reid-proof-grid { grid-template-columns: repeat(4, 1fr); }
.reid-card-grid { grid-template-columns: repeat(3, 1fr); }
.reid-steps { grid-template-columns: repeat(4, 1fr); }
.reid-pricing-grid { grid-template-columns: repeat(3, 1fr); align-items: stretch; }

.reid-proof,
.reid-card,
.reid-step,
.reid-price-card {
  border: 1px solid var(--reid-line);
  border-radius: var(--reid-radius);
  background: rgba(255,255,255,.025);
}

.reid-proof { padding: 24px; }
.reid-proof strong { display:block; color: var(--reid-text); font-size: 28px; }
.reid-proof span { color: var(--reid-muted); }

.reid-card,
.reid-step { padding: 30px; }

.reid-card h3,
.reid-step h3 { margin-top: 0; }
.reid-card p,
.reid-step p { color: var(--reid-muted); line-height: 1.65; }

.reid-card__icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  margin-bottom: 26px;
  border-radius: 14px;
  border: 1px solid var(--reid-line);
  background: rgba(110,168,254,.10);
  font-size: 22px;
}

.reid-demo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 54px;
  align-items: center;
}

.reid-demo__video {
  aspect-ratio: 16 / 9;
  display: grid;
  place-items: center;
  border: 1px solid var(--reid-line);
  border-radius: 26px;
  background: linear-gradient(135deg, #131923, #0b0f16);
  box-shadow: var(--reid-shadow);
  color: var(--reid-muted);
}

.reid-price-card {
  position: relative;
  padding: 34px;
}

.reid-price-card--featured {
  border-color: rgba(110,168,254,.45);
  box-shadow: 0 0 0 1px rgba(110,168,254,.12), 0 24px 80px rgba(20,88,170,.15);
}

.reid-price-badge {
  position: absolute;
  top: 18px;
  right: 18px;
  padding: 7px 11px;
  border-radius: 999px;
  color: #061315;
  background: var(--reid-accent-2);
  font-size: 12px;
  font-weight: 800;
}

.reid-price {
  margin: 16px 0 4px;
  color: var(--reid-text);
  font-size: 46px;
  font-weight: 800;
  letter-spacing: -.04em;
}

.reid-price small {
  color: var(--reid-muted);
  font-size: 15px;
  font-weight: 500;
}

.reid-list {
  list-style: none;
  padding: 0;
  margin: 26px 0;
}

.reid-list li {
  position: relative;
  padding: 8px 0 8px 24px;
  color: var(--reid-muted);
}

.reid-list li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: var(--reid-accent-2);
  font-weight: 800;
}

.reid-faq details {
  margin-bottom: 12px;
  padding: 22px 24px;
  border: 1px solid var(--reid-line);
  border-radius: 16px;
  background: rgba(255,255,255,.025);
}

.reid-faq summary {
  cursor: pointer;
  color: var(--reid-text);
  font-weight: 700;
}

.reid-faq p { color: var(--reid-muted); }

.reid-footer-note {
  color: var(--reid-muted);
  font-size: 13px;
}

/* Utility classes you can assign directly to Divi modules/rows */
.reid-glass { background: rgba(255,255,255,.035) !important; border: 1px solid var(--reid-line) !important; backdrop-filter: blur(18px); }
.reid-rounded { border-radius: var(--reid-radius) !important; overflow: hidden; }
.reid-shadow { box-shadow: var(--reid-shadow) !important; }
.reid-muted { color: var(--reid-muted) !important; }
.reid-center { text-align: center; }

@media (max-width: 980px) {
  .reid-section { padding: 78px 0; }
  .reid-hero { min-height: auto; padding: 110px 0 80px; }
  .reid-hero__grid,
  .reid-demo { grid-template-columns: 1fr; }
  .reid-proof-grid,
  .reid-steps { grid-template-columns: repeat(2, 1fr); }
  .reid-card-grid,
  .reid-pricing-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .reid-wrap { width: min(calc(100% - 26px), var(--reid-max)); }
  .reid-section { padding: 64px 0; }
  .reid-proof-grid,
  .reid-steps { grid-template-columns: 1fr; }
  .reid-product-frame__screen { min-height: 300px; }
  .reid-actions { flex-direction: column; }
  .reid-btn { width: 100%; }
}
