/* Returns Tool marketing site (marketing/index.html). Same look as the
   Einstein Tools marketing pages: navy/blue, Schibsted Grotesk + Bricolage
   Grotesque. Self-contained: nothing here touches the app's custom.css. */
:root {
  --rt-navy:#1B3764; --rt-navy-deep:#14294A; --rt-blue:#2B7DE0; --rt-blue-hover:#1D66BF;
  --rt-ink:#17233B; --rt-ink-m:#1B2437; --rt-body:#4B5568; --rt-body-strong:#374151;
  --rt-sub:#5B6B84; --rt-muted:#8B99B0; --rt-line:#E2E8F1; --rt-line-soft:#EDF1F7;
  --rt-bg:#F4F6FA; --rt-tint:#F8FAFD; --rt-green:#1E8A4C; --rt-mint:#7FE0A7;
  --rt-on-navy:#C6D5EC; --rt-on-navy-dim:#8FA5C6; --rt-on-navy-link:#DFE9F8;
  --rt-font:'Schibsted Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --rt-display:'Bricolage Grotesque',var(--rt-font);
  --rt-shadow:0 18px 44px rgba(27,55,100,.10);
}
*, *::before, *::after { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:76px; }
body.rtm { margin:0; background:#fff; color:var(--rt-ink-m); font-family:var(--rt-font); -webkit-font-smoothing:antialiased; }
.rtm a { color:var(--rt-blue); }
.rtm a:hover { color:var(--rt-blue-hover); }
.rtm svg { flex:none; }
.rtm-skip { position:absolute; left:-9999px; }
.rtm-skip:focus { left:12px; top:12px; z-index:20; background:#fff; padding:10px 14px; border-radius:8px; }
.rtm-wrap { max-width:1180px; margin:0 auto; padding-left:24px; padding-right:24px; }
.rtm-wrap.w-1020 { max-width:1020px; }
.rtm-center { text-align:center; }

/* header */
.rtm-header { position:sticky; top:0; z-index:10; background:rgba(255,255,255,.96); border-bottom:1px solid var(--rt-line); backdrop-filter:blur(8px); }
.rtm-header-inner { min-height:64px; display:flex; align-items:center; gap:26px; flex-wrap:wrap; padding-top:10px; padding-bottom:10px; }
.rtm-brand { display:flex; align-items:center; gap:10px; text-decoration:none; }
.rtm-mark { width:34px; height:34px; border-radius:9px; background:var(--rt-navy); display:flex; align-items:center; justify-content:center; }
.rtm-wordmark { font-family:var(--rt-display); font-weight:700; font-size:18px; letter-spacing:.04em; color:var(--rt-navy); }
.rtm-wordmark span { color:var(--rt-blue); }
.rtm-nav { display:flex; align-items:center; gap:22px; margin-left:auto; flex-wrap:wrap; }
.rtm .rtm-navlink { text-decoration:none; color:var(--rt-body-strong); font-weight:500; font-size:15.5px; }
.rtm .rtm-navlink:hover { color:var(--rt-navy); }

/* buttons */
.rtm .rtm-btn { display:inline-flex; align-items:center; gap:8px; height:48px; padding:0 22px; border-radius:12px; border:1px solid transparent; background:var(--rt-blue); color:#fff; font-weight:600; font-size:17px; text-decoration:none; transition:background .15s, box-shadow .15s, transform .15s; }
.rtm .rtm-btn:hover { background:var(--rt-blue-hover); color:#fff; transform:translateY(-1px); box-shadow:0 6px 16px rgba(43,125,224,.28); }
.rtm .rtm-btn.is-ghost { background:#fff; color:var(--rt-navy); border-color:#D4DDEA; }
.rtm .rtm-btn.is-ghost:hover { background:#fff; color:var(--rt-navy); border-color:var(--rt-navy); box-shadow:0 6px 16px rgba(27,55,100,.10); }
.rtm .rtm-btn.is-sm { height:44px; padding:0 16px; border-radius:8px; font-size:15.5px; }

/* type */
.rtm-eyebrow { font-size:14px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--rt-blue); }
.rtm-h1 { margin:0; font-family:var(--rt-display); font-weight:700; font-size:54px; line-height:1.04; letter-spacing:-.02em; color:var(--rt-navy); }
.rtm-h2 { margin:0; font-family:var(--rt-display); font-weight:700; font-size:36px; line-height:1.1; letter-spacing:-.015em; color:var(--rt-navy); }
.rtm-lead { margin:0; font-size:19px; line-height:1.55; color:var(--rt-body); max-width:560px; }
.rtm-lead.is-sm { font-size:17px; }

/* hero */
.rtm-hero { padding-top:72px; padding-bottom:56px; display:flex; flex-wrap:wrap; align-items:center; gap:48px; }
.rtm-hero-copy { flex:1 1 440px; min-width:0; display:flex; flex-direction:column; gap:18px; }
.rtm-ctarow { display:flex; flex-wrap:wrap; gap:12px; margin-top:12px; }
.rtm-hero-note { font-size:14.5px; color:var(--rt-sub); }
.rtm-hero-media { flex:1 1 420px; min-width:0; display:flex; flex-direction:column; }
.rtm-vignette { background:#fff; border:1px solid var(--rt-line); border-radius:16px; box-shadow:var(--rt-shadow); overflow:hidden; }
.rtm-vignette-head { display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:14px 18px; background:#F1F5FA; border-bottom:1px solid var(--rt-line); font-size:14px; color:var(--rt-sub); }
.rtm-vignette-head b { color:var(--rt-ink); }
.rtm-vignette-head span:last-child { margin-left:auto; font-family:var(--rt-display); font-weight:600; }
.rtm-dot { width:9px; height:9px; border-radius:50%; background:var(--rt-green); }
.rtm-vignette-body { padding:18px; display:flex; flex-direction:column; gap:12px; }
.rtm-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.rtm-fact { border:1px solid var(--rt-line); border-radius:10px; padding:12px 14px; }
.rtm-key { font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--rt-sub); font-weight:600; }
.rtm-fact b { display:block; color:var(--rt-ink); margin-top:4px; }
.rtm-fact small { font-size:13.5px; color:var(--rt-sub); }
.rtm-actions { display:flex; flex-direction:column; gap:8px; padding:12px 14px; border-radius:10px; background:var(--rt-tint); border:1px solid var(--rt-line-soft); }
.rtm-actions div { display:flex; align-items:flex-start; gap:10px; font-size:15px; color:var(--rt-ink); }
.rtm-actions svg { margin-top:1px; }
.rtm-vignette-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:13.5px; color:var(--rt-sub); }
.rtm-pill { display:inline-flex; align-items:center; height:38px; padding:0 16px; border-radius:8px; background:var(--rt-green); color:#fff; font-weight:600; font-size:15px; }
.rtm-badge { align-self:flex-end; margin-top:-22px; margin-right:18px; background:var(--rt-navy); color:#fff; border-radius:12px; padding:12px 18px; box-shadow:0 14px 30px rgba(20,41,73,.35); position:relative; }
.rtm-badge-label { font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--rt-on-navy); font-weight:600; }
.rtm-badge-value { font-family:var(--rt-display); font-weight:700; font-size:26px; color:var(--rt-mint); }

/* bands */
.rtm-join { background:var(--rt-navy); color:#fff; }
.rtm-join p { margin:0; padding:22px 0; text-align:center; font-size:19px; line-height:1.5; }
.rtm-join b { color:var(--rt-mint); }
.rtm-imsbar { background:var(--rt-bg); border-bottom:1px solid var(--rt-line); }
.rtm-imsbar-inner { padding-top:16px; padding-bottom:16px; display:flex; align-items:center; justify-content:center; gap:28px; flex-wrap:wrap; }
.rtm-imsbar-label { font-size:15px; font-weight:500; color:var(--rt-sub); }
.rtm-ims { font-family:var(--rt-display); font-weight:700; font-size:20px; color:var(--rt-navy); }

/* sections */
.rtm-section { padding-top:72px; padding-bottom:24px; display:flex; flex-direction:column; gap:32px; }
.rtm-props { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.rtm-prop { display:flex; flex-direction:column; gap:12px; }
.rtm-icontile { width:48px; height:48px; border-radius:12px; background:#EAF2FD; display:flex; align-items:center; justify-content:center; }
.rtm-prop-title { font-weight:700; font-size:20px; color:var(--rt-ink); }
.rtm-prop-body { font-size:16px; line-height:1.55; color:var(--rt-body); }
.rtm-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin:0; padding:0; list-style:none; }
.rtm-step { border:1px solid var(--rt-line); border-radius:14px; padding:22px; display:flex; flex-direction:column; gap:10px; }
.rtm-step-num { font-family:var(--rt-display); font-weight:700; font-size:30px; color:var(--rt-blue); }
.rtm-step-title { font-weight:700; font-size:18px; color:var(--rt-ink); }
.rtm-step-body { font-size:15px; line-height:1.5; color:var(--rt-body); }

/* compare */
.rtm-tablebox { overflow-x:auto; }
.rtm-compare { width:100%; min-width:640px; border-collapse:collapse; font-size:15.5px; }
.rtm-compare th, .rtm-compare td { text-align:left; padding:14px; vertical-align:top; }
.rtm-compare thead th { padding:12px 14px; color:var(--rt-sub); font-weight:600; font-size:13px; text-transform:uppercase; letter-spacing:.06em; border-bottom:2px solid var(--rt-line); }
.rtm-compare thead th:last-child { color:var(--rt-navy); font-weight:700; }
.rtm-compare tbody tr + tr { border-top:1px solid var(--rt-line-soft); }
.rtm-compare tbody th { font-weight:600; color:var(--rt-ink); }
.rtm-compare td { color:var(--rt-body); }
.rtm-compare td:last-child { color:var(--rt-ink); font-weight:500; }

/* proof */
.rtm-proof { background:var(--rt-navy); border-radius:20px; padding:44px 40px; display:flex; flex-direction:column; gap:28px; color:#fff; margin-top:48px; }
.rtm-proof .rtm-eyebrow { color:var(--rt-on-navy); font-size:13px; }
.rtm-proof-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.rtm-proof-num { font-family:var(--rt-display); font-weight:700; font-size:46px; line-height:1; color:var(--rt-mint); }
.rtm-proof-cap { margin-top:10px; font-size:15.5px; line-height:1.5; color:var(--rt-on-navy); }
.rtm-proof-src { font-size:14px; color:var(--rt-on-navy); }

/* settings */
.rtm-split { padding-top:72px; padding-bottom:24px; display:flex; flex-wrap:wrap; align-items:center; gap:48px; }
.rtm-split-copy { flex:1 1 400px; min-width:0; display:flex; flex-direction:column; gap:14px; }
.rtm-split-copy .rtm-lead { max-width:none; }
.rtm-list { margin:0; padding-left:20px; font-size:16px; line-height:1.7; color:var(--rt-body-strong); }
.rtm-settings { flex:1 1 380px; min-width:0; background:var(--rt-tint); border:1px solid var(--rt-line); border-radius:16px; padding:22px; }
.rtm-settings-head { font-weight:700; font-size:15px; color:var(--rt-ink); display:flex; align-items:center; gap:8px; margin-bottom:6px; }
.rtm-setting { display:flex; justify-content:space-between; gap:12px; padding:11px 0; font-size:15px; color:var(--rt-sub); }
.rtm-setting + .rtm-setting { border-top:1px solid var(--rt-line); }
.rtm-setting b { color:var(--rt-ink); white-space:nowrap; }

/* contact */
.rtm-contact { padding-top:72px; padding-bottom:80px; display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center; }
.rtm-contact .rtm-lead { max-width:640px; }
.rtm-contact-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:14px; width:100%; max-width:720px; text-align:left; }
.rtm-contact-card { border:1px solid var(--rt-line); border-radius:14px; padding:20px; box-shadow:var(--rt-shadow); background:#fff; }
.rtm .rtm-contact-phone { display:block; margin-top:6px; font-family:var(--rt-display); font-weight:700; font-size:26px; color:var(--rt-navy); text-decoration:none; }
.rtm-contact-card p { margin:6px 0 0; font-size:15px; line-height:1.5; color:var(--rt-sub); }

/* footer */
.rtm-footer { background:var(--rt-navy-deep); color:var(--rt-on-navy); }
.rtm-footer-cols { padding-top:44px; padding-bottom:24px; display:flex; flex-wrap:wrap; gap:36px; justify-content:space-between; }
.rtm-footer-cols > div { display:flex; flex-direction:column; gap:10px; font-size:15px; }
.rtm-footer-cols > div:first-child { flex:1 1 280px; line-height:1.5; }
.rtm-footer .rtm-wordmark { color:#fff; }
.rtm-footer .rtm-wordmark span { color:#7FB2F0; }
.rtm-footer-head { font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--rt-on-navy-dim); font-weight:600; }
.rtm .rtm-footer a { color:var(--rt-on-navy-link); text-decoration:none; }
.rtm .rtm-footer a:hover { color:#fff; text-decoration:underline; }
.rtm-footer-legal { border-top:1px solid rgba(255,255,255,.12); }
.rtm-footer-legal .rtm-wrap { padding-top:16px; padding-bottom:16px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; font-size:14px; color:var(--rt-on-navy); }

@media (max-width:900px) {
  .rtm-props, .rtm-proof-stats { grid-template-columns:minmax(0,1fr); }
  .rtm-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rtm-h1 { font-size:42px; }
  .rtm-h2 { font-size:30px; }
}
@media (max-width:600px) {
  .rtm-wrap { padding-left:16px; padding-right:16px; }
  .rtm-nav { gap:14px; margin-left:0; }
  .rtm-nav .rtm-navlink { display:none; }
  .rtm-hero { padding-top:44px; gap:32px; }
  .rtm-h1 { font-size:36px; }
  .rtm-steps, .rtm-facts, .rtm-contact-cards { grid-template-columns:minmax(0,1fr); }
  .rtm-proof { padding:32px 22px; }
  .rtm-proof-num { font-size:38px; }
  .rtm-join p { font-size:17px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .rtm .rtm-btn { transition:none; } }
