/* TM CMS page */
.tmi-page {
  --tmi-bg: #0a1019;
  --tmi-bg-2: #0d1426;
  --tmi-surface: #111c33;
  --tmi-surface-2: #15213c;
  --tmi-border: rgba(255,255,255,.10);
  --tmi-text: #eaf0fb;
  --tmi-muted: #9fb0cc;
  --tmi-faint: #6b7b99;
  --tmi-accent: #2fe6c2;
  --tmi-accent-2: #4f9dff;
  --tmi-amber: #ffb454;
  --tmi-maxw: 1100px;
  --tmi-font: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --tmi-display: "Sora", var(--tmi-font);
  --tmi-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;
  font-family: var(--tmi-font);
  color: var(--tmi-text);
  background: radial-gradient(1000px 600px at 85% -5%, rgba(47,230,194,.14), transparent 60%), radial-gradient(900px 700px at 5% 2%, rgba(79,157,255,.12), transparent 55%), linear-gradient(180deg, var(--tmi-bg-2), var(--tmi-bg));
  position: relative;
  overflow: hidden;
}
.tmi-page *, .tmi-page *::before, .tmi-page *::after { box-sizing: border-box; }
.tmi-page::before { content:""; position:absolute; inset:0; background-image: linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px); background-size: 48px 48px; -webkit-mask-image: radial-gradient(140% 60% at 50% 0%, #000 30%, transparent 75%); mask-image: radial-gradient(140% 60% at 50% 0%, #000 30%, transparent 75%); pointer-events:none; }
.tmi-wrap { max-width: var(--tmi-maxw); margin:0 auto; padding:0 26px; position:relative; z-index:1; }

/* ─── Mobile padding fix ─────────────────────── */
@media (max-width: 600px) {
  .tmi-wrap { padding: 0 20px; }
  .tmi-step-copy, .tmi-step:nth-child(even) .tmi-step-copy { padding-right: 8px; }
  .tmi-step-visual, .tmi-step:nth-child(even) .tmi-step-visual { padding-right: 8px; }
  .tmi-trig { padding: 28px 18px; }
  .tmi-cta-box { padding: 36px 20px; }
  .tmi-beyond { padding: 60px 0 50px; }
}

.tmi-grad { background:linear-gradient(100deg,var(--tmi-accent),var(--tmi-accent-2)); -webkit-background-clip:text; background-clip:text; color:transparent; }

.tmi-phero { text-align:center; padding:84px 0 30px; }
.tmi-breadcrumb { font-family:var(--tmi-mono); font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--tmi-faint); margin-bottom:22px; }
.tmi-breadcrumb a { color:var(--tmi-faint); text-decoration:none; }
.tmi-breadcrumb a:hover { color:var(--tmi-accent); }
.tmi-eyebrow { display:inline-flex; align-items:center; gap:9px; font-family:var(--tmi-mono); font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--tmi-accent); border:1px solid var(--tmi-border); background:rgba(47,230,194,.06); padding:7px 14px; border-radius:999px; }
.tmi-eyebrow .tmi-dot { width:7px; height:7px; border-radius:50%; background:var(--tmi-accent); box-shadow:0 0 0 4px rgba(47,230,194,.18); }
.tmi-ph-h1 { font-family:var(--tmi-display); font-weight:800; font-size:clamp(36px,5.2vw,60px); line-height:1.04; letter-spacing:-.02em; margin:24px auto 0; max-width:760px; }
.tmi-ph-sub { color:var(--tmi-muted); font-size:clamp(16px,1.5vw,19px); line-height:1.6; max-width:600px; margin:20px auto 0; }
.tmi-scrollcue { margin:46px auto 0; width:26px; height:42px; border:2px solid var(--tmi-border); border-radius:14px; position:relative; }
.tmi-scrollcue::after { content:""; position:absolute; left:50%; top:8px; width:4px; height:8px; border-radius:2px; background:var(--tmi-accent); transform:translateX(-50%); animation:tmi-scroll 1.8s ease-in-out infinite; }

.tmi-flowstrip { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px; margin:50px auto 0; max-width:920px; }
.tmi-flowpill { display:inline-flex; align-items:center; gap:8px; font-size:13.5px; font-weight:600; color:var(--tmi-text); background:var(--tmi-surface); border:1px solid var(--tmi-border); padding:9px 14px; border-radius:10px; }
.tmi-flowpill .n { font-family:var(--tmi-mono); font-size:11px; color:#04231e; background:var(--tmi-accent); width:18px; height:18px; border-radius:5px; display:grid; place-items:center; }
.tmi-flowarrow { color:var(--tmi-faint); font-size:15px; }

.tmi-section { padding:80px 0; }
.tmi-sec-head { max-width:680px; margin:0 auto 14px; text-align:center; }
.tmi-kicker { font-family:var(--tmi-mono); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--tmi-accent); }
.tmi-h2 { font-family:var(--tmi-display); font-weight:800; font-size:clamp(28px,3.6vw,42px); letter-spacing:-.02em; margin:14px 0 14px; color:var(--tmi-text); }
.tmi-lead { color:var(--tmi-muted); font-size:17px; line-height:1.65; }

.tmi-problem-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:46px; }
.tmi-pcard { border:1px solid var(--tmi-border); border-radius:16px; padding:26px; background:linear-gradient(180deg,var(--tmi-surface-2),var(--tmi-surface)); }
.tmi-pcard.bad { border-color:rgba(255,120,120,.25); }
.tmi-pcard.good { border-color:rgba(47,230,194,.3); }
.tmi-pcard h3 { font-family:var(--tmi-display); font-size:19px; margin:0 0 8px; display:flex; align-items:center; gap:9px; }
.tmi-pcard.bad h3 { color:#ff9b9b; }
.tmi-pcard.good h3 { color:var(--tmi-accent); }
.tmi-pcard p { color:var(--tmi-muted); font-size:14.5px; line-height:1.6; margin:0; }

.tmi-timeline { position:relative; margin-top:60px; }
.tmi-spine { position:absolute; left:50%; top:0; bottom:0; width:2px; transform:translateX(-50%); background:linear-gradient(180deg, transparent, var(--tmi-accent-2) 6%, var(--tmi-accent) 94%, transparent); opacity:.5; }
.tmi-spine::after { content:""; position:absolute; left:50%; top:0; transform:translateX(-50%); width:8px; height:8px; border-radius:50%; background:var(--tmi-accent); box-shadow:0 0 14px 2px var(--tmi-accent); animation:tmi-travel 6s linear infinite; }
.tmi-step { display:grid; grid-template-columns:1fr 86px 1fr; align-items:center; margin:14px 0; opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s ease; }
.tmi-step.in { opacity:1; transform:none; }
.tmi-step-copy { padding:24px 38px; }
.tmi-step:nth-child(even) .tmi-step-copy { order:3; }
.tmi-step:nth-child(even) .tmi-step-visual { order:1; }
.tmi-step-num { grid-column:2; justify-self:center; width:62px; height:62px; border-radius:50%; display:grid; place-items:center; font-family:var(--tmi-display); font-weight:800; font-size:24px; color:#04231e; background:linear-gradient(135deg,var(--tmi-accent),var(--tmi-accent-2)); box-shadow:0 0 0 7px var(--tmi-bg), 0 10px 30px -8px rgba(47,230,194,.6); z-index:2; }
.tmi-tooltag { font-family:var(--tmi-mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--tmi-accent); }
.tmi-step-copy h3 { font-family:var(--tmi-display); font-weight:700; font-size:24px; margin:8px 0 10px; letter-spacing:-.01em; color:var(--tmi-text); }
.tmi-step-copy p { color:var(--tmi-muted); font-size:15px; line-height:1.65; margin:0; }
.tmi-step-visual { padding:18px 30px; }

.tmi-mock { background:linear-gradient(180deg,var(--tmi-surface-2),var(--tmi-surface)); border:1px solid var(--tmi-border); border-radius:14px; padding:14px; box-shadow:0 30px 60px -28px rgba(0,0,0,.7); }
.tmi-mock-bar { display:flex; align-items:center; gap:6px; padding-bottom:11px; margin-bottom:12px; border-bottom:1px solid var(--tmi-border); }
.tmi-mock-bar i { width:9px; height:9px; border-radius:50%; background:var(--tmi-faint); opacity:.5; display:inline-block; }
.tmi-mock-url { margin-left:8px; font-family:var(--tmi-mono); font-size:10.5px; color:var(--tmi-faint); }
.tmi-track-row { display:flex; align-items:center; justify-content:space-between; padding:7px 0; font-size:12.5px; color:var(--tmi-muted); }
.tmi-track-row .bar { flex:1; height:6px; margin:0 12px; border-radius:4px; background:rgba(255,255,255,.06); position:relative; overflow:hidden; }
.tmi-track-row .bar span { position:absolute; left:0; top:0; bottom:0; border-radius:4px; background:linear-gradient(90deg,var(--tmi-accent-2),var(--tmi-accent)); }
.tmi-track-row .hits { font-family:var(--tmi-mono); font-size:11px; color:var(--tmi-accent); }
.tmi-livedot { display:inline-flex; align-items:center; gap:6px; font-family:var(--tmi-mono); font-size:10.5px; color:var(--tmi-accent); }
.tmi-livedot b { width:7px; height:7px; border-radius:50%; background:var(--tmi-accent); animation:tmi-pulse 1.6s ease-in-out infinite; }
.tmi-field { height:34px; border:1px solid var(--tmi-border); border-radius:8px; display:flex; align-items:center; padding:0 11px; font-size:12.5px; color:var(--tmi-muted); margin-bottom:9px; background:rgba(255,255,255,.02); }
.tmi-msg { min-height:78px; border:1px solid var(--tmi-border); border-radius:8px; padding:10px 11px; font-size:12.5px; color:var(--tmi-muted); line-height:1.5; background:rgba(255,255,255,.02); margin-bottom:10px; }
.tmi-formbtn { display:inline-block; font-size:12px; font-weight:700; color:#04231e; background:var(--tmi-accent); padding:8px 14px; border-radius:8px; }
.tmi-agent { text-align:center; padding:6px 0 2px; }
.tmi-agent-core { width:72px; height:72px; margin:4px auto 14px; border-radius:50%; display:grid; place-items:center; background:radial-gradient(circle at 50% 40%, rgba(47,230,194,.25), rgba(79,157,255,.12)); border:1px solid rgba(47,230,194,.4); position:relative; }
.tmi-agent-core::before, .tmi-agent-core::after { content:""; position:absolute; inset:-10px; border-radius:50%; border:1px solid rgba(47,230,194,.25); animation:tmi-ring 2.6s ease-out infinite; }
.tmi-agent-core::after { animation-delay:1.3s; }
.tmi-agent-in { display:flex; flex-wrap:wrap; gap:6px; justify-content:center; margin-bottom:12px; }
.tmi-agent-in span { font-size:11px; color:var(--tmi-muted); background:rgba(255,255,255,.05); border:1px solid var(--tmi-border); padding:4px 8px; border-radius:6px; }
.tmi-agent-out { font-size:12.5px; color:var(--tmi-text); background:rgba(47,230,194,.08); border:1px solid rgba(47,230,194,.3); border-radius:9px; padding:10px 12px; text-align:left; }
.tmi-agent-out b { color:var(--tmi-accent); display:block; font-family:var(--tmi-mono); font-size:10px; letter-spacing:.08em; text-transform:uppercase; margin-bottom:4px; }
.tmi-phone { width:200px; margin:0 auto; border:8px solid #1c2944; border-radius:30px; background:#0a1019; padding:16px 12px 24px; box-shadow:0 30px 60px -24px rgba(0,0,0,.8); position:relative; }
.tmi-phone::before { content:""; position:absolute; top:10px; left:50%; transform:translateX(-50%); width:54px; height:5px; border-radius:3px; background:#1c2944; }
.tmi-notif { margin-top:18px; background:var(--tmi-surface-2); border:1px solid var(--tmi-border); border-radius:13px; padding:12px; animation:tmi-bob 3.6s ease-in-out infinite; }
.tmi-notif-top { display:flex; align-items:center; gap:8px; font-size:10.5px; color:var(--tmi-faint); font-family:var(--tmi-mono); margin-bottom:8px; }
.tmi-notif-top .ic { width:18px; height:18px; border-radius:5px; background:var(--tmi-accent); color:#04231e; display:grid; place-items:center; font-size:10px; font-weight:700; }
.tmi-notif h4 { margin:0 0 4px; font-size:13px; font-family:var(--tmi-display); color:var(--tmi-text); }
.tmi-notif p { margin:0; font-size:11.5px; color:var(--tmi-muted); line-height:1.4; }
.tmi-notif .link { margin-top:8px; font-size:11px; font-weight:700; color:var(--tmi-accent); }
.tmi-record-row { display:flex; align-items:center; justify-content:space-between; padding:9px 0; border-bottom:1px solid var(--tmi-border); font-size:12.5px; }
.tmi-record-row:last-child { border-bottom:none; }
.tmi-record-row .k { color:var(--tmi-faint); font-family:var(--tmi-mono); font-size:11px; }
.tmi-record-row .v { color:var(--tmi-text); font-weight:600; }
.tmi-synced { display:inline-flex; align-items:center; gap:6px; margin-top:12px; font-family:var(--tmi-mono); font-size:10.5px; color:var(--tmi-accent); }

.tmi-deliver { background:linear-gradient(180deg, transparent, rgba(79,157,255,.05)); }
.tmi-bigcard { max-width:560px; margin:46px auto 0; background:linear-gradient(180deg,var(--tmi-surface-2),var(--tmi-surface)); border:1px solid var(--tmi-border); border-radius:18px; padding:26px; box-shadow:0 50px 90px -34px rgba(0,0,0,.75); }
.tmi-bc-head { display:flex; align-items:center; justify-content:space-between; padding-bottom:16px; border-bottom:1px solid var(--tmi-border); }
.tmi-bc-title { display:flex; align-items:center; gap:11px; font-weight:700; font-size:16px; color:var(--tmi-text); }
.tmi-bell { width:32px; height:32px; border-radius:9px; display:grid; place-items:center; background:rgba(255,180,84,.14); }
.tmi-badge { font-family:var(--tmi-mono); font-size:11px; font-weight:600; letter-spacing:.06em; color:#04231e; background:var(--tmi-accent); padding:5px 10px; border-radius:6px; }
.tmi-bc-lead { display:flex; align-items:center; gap:13px; margin:18px 0 4px; }
.tmi-avatar { width:42px; height:42px; border-radius:50%; background:linear-gradient(135deg,var(--tmi-accent-2),var(--tmi-accent)); display:grid; place-items:center; font-weight:800; color:#04231e; }
.tmi-bc-lead .nm { font-weight:700; font-size:16px; color:var(--tmi-text); }
.tmi-bc-lead .mt { font-size:12.5px; color:var(--tmi-faint); }
.tmi-bc-label { font-family:var(--tmi-mono); font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--tmi-faint); margin:18px 0 10px; }
.tmi-bc-chips { display:flex; flex-wrap:wrap; gap:8px; }
.tmi-bc-chips span { font-size:12.5px; color:var(--tmi-muted); background:rgba(255,255,255,.05); border:1px solid var(--tmi-border); padding:6px 11px; border-radius:8px; }
.tmi-bc-steps { list-style:none; margin:10px 0 0; padding:0; }
.tmi-bc-steps li { display:flex; gap:11px; align-items:flex-start; font-size:13.5px; color:var(--tmi-muted); padding:7px 0; line-height:1.5; }
.tmi-bc-steps .n { flex:0 0 20px; height:20px; border-radius:6px; background:rgba(47,230,194,.14); color:var(--tmi-accent); font-family:var(--tmi-mono); font-size:11px; font-weight:600; display:grid; place-items:center; margin-top:1px; }

.tmi-beyond { position:relative; padding:90px 0 80px; }
.tmi-beyond::before { content:""; position:absolute; left:50%; top:0; transform:translateX(-50%); width:min(900px,90%); height:1px; background:linear-gradient(90deg, transparent, var(--tmi-accent), transparent); }
.tmi-beyond-head { text-align:center; max-width:880px; margin:0 auto; }
.tmi-bignote { display:inline-flex; align-items:center; gap:8px; font-family:var(--tmi-mono); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--tmi-amber); border:1px solid rgba(255,180,84,.3); background:rgba(255,180,84,.08); padding:7px 14px; border-radius:999px; }
.tmi-beyond-h2 { font-family:var(--tmi-display); font-weight:800; font-size:clamp(28px,4.2vw,50px); line-height:1.08; letter-spacing:-.02em; margin:22px auto 0; max-width:900px; color:var(--tmi-text); }
.tmi-beyond-h2 .hot { background:linear-gradient(100deg,var(--tmi-amber),var(--tmi-accent)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.tmi-beyond-sub { color:var(--tmi-muted); font-size:18px; line-height:1.6; max-width:620px; margin:18px auto 0; }
.tmi-lanes { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:56px; align-items:start; }
.tmi-lane { border:1px solid var(--tmi-border); border-radius:18px; padding:26px; }
.tmi-lane.stop { background:rgba(255,255,255,.02); }
.tmi-lane.go { background:linear-gradient(180deg, rgba(47,230,194,.07), var(--tmi-surface)); border-color:rgba(47,230,194,.35); box-shadow:0 30px 70px -34px rgba(47,230,194,.45); }
.tmi-lane-label { font-family:var(--tmi-display); font-weight:700; font-size:18px; }
.tmi-lane.stop .tmi-lane-label { color:var(--tmi-faint); }
.tmi-lane.go .tmi-lane-label { color:var(--tmi-accent); }
.tmi-lane-sub { font-size:13px; color:var(--tmi-faint); margin:4px 0 18px; }
.tmi-lane-node { display:flex; align-items:center; gap:10px; padding:11px 13px; border:1px solid var(--tmi-border); border-radius:10px; font-size:13.5px; margin-bottom:9px; background:var(--tmi-surface-2); color:var(--tmi-text); }
.tmi-lane-node .ic { width:24px; height:24px; border-radius:7px; display:grid; place-items:center; background:rgba(255,255,255,.06); flex:0 0 auto; color:var(--tmi-muted); }
.tmi-lane.go .tmi-lane-node.hot .ic { background:rgba(47,230,194,.18); }
.tmi-lane-arrow { text-align:center; color:var(--tmi-faint); font-size:15px; margin:0 0 9px; }
.tmi-lane.go .tmi-lane-arrow { color:var(--tmi-accent); }
.tmi-deadend { margin-top:4px; text-align:center; padding:14px; border:1px dashed rgba(255,120,120,.4); border-radius:10px; color:#ff9b9b; font-size:13px; font-weight:600; }
.tmi-gohint { margin-top:4px; text-align:center; color:var(--tmi-accent); font-family:var(--tmi-mono); font-size:12px; }
.tmi-keepgoing { text-align:center; margin:34px 0 0; color:var(--tmi-accent); }
.tmi-keepgoing .down { display:inline-block; font-size:26px; animation:tmi-bob 2s ease-in-out infinite; }
.tmi-trig { margin-top:30px; border:1px solid var(--tmi-border); border-radius:22px; padding:40px 32px; background:radial-gradient(120% 120% at 50% 0%, rgba(79,157,255,.08), transparent 55%), linear-gradient(180deg,var(--tmi-surface-2),var(--tmi-surface)); }
.tmi-trig-head { text-align:center; max-width:660px; margin:0 auto 36px; }
.tmi-trig-head h3 { font-family:var(--tmi-display); font-weight:800; font-size:clamp(24px,3vw,34px); margin:10px 0 10px; letter-spacing:-.01em; color:var(--tmi-text); }
.tmi-trig-head p { color:var(--tmi-muted); font-size:16px; line-height:1.6; margin:0; }
.tmi-ifthen { display:grid; grid-template-columns:300px 1fr; gap:22px; align-items:start; }
.tmi-if { border:1px solid rgba(79,157,255,.35); border-radius:16px; padding:22px; background:rgba(79,157,255,.06); }
.tmi-rule-tag { font-family:var(--tmi-mono); font-size:12px; font-weight:700; letter-spacing:.1em; }
.tmi-if .tmi-rule-tag { color:var(--tmi-accent-2); }
.tmi-then .tmi-rule-tag { color:var(--tmi-accent); }
.tmi-rule-chip { display:flex; align-items:center; gap:9px; background:var(--tmi-surface-2); border:1px solid var(--tmi-border); border-radius:10px; padding:11px 13px; font-size:13.5px; margin-top:12px; color:var(--tmi-text); }
.tmi-rule-chip .ic { color:var(--tmi-muted); }
.tmi-and { text-align:center; font-family:var(--tmi-mono); font-size:11px; color:var(--tmi-faint); margin:9px 0; letter-spacing:.1em; }
.tmi-then-tag { display:block; margin-bottom:12px; }
.tmi-actions { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.tmi-action { border:1px solid var(--tmi-border); border-radius:13px; padding:16px; background:var(--tmi-surface-2); position:relative; }
.tmi-action .aic { width:34px; height:34px; border-radius:9px; display:grid; place-items:center; background:rgba(47,230,194,.14); margin-bottom:10px; }
.tmi-action h4 { font-family:var(--tmi-display); font-size:15px; margin:0 0 5px; color:var(--tmi-text); }
.tmi-action p { font-size:12.5px; color:var(--tmi-muted); line-height:1.5; margin:0; }
.tmi-action.feature { grid-column:1 / -1; border-color:rgba(255,180,84,.45); background:linear-gradient(180deg, rgba(255,180,84,.08), var(--tmi-surface-2)); }
.tmi-action.feature .aic { background:rgba(255,180,84,.18); }
.tmi-fire { position:absolute; top:13px; right:14px; font-family:var(--tmi-mono); font-size:10px; color:var(--tmi-accent); }
.tmi-offermock { margin-top:14px; border:1px solid var(--tmi-border); border-radius:11px; overflow:hidden; background:#0a1019; }
.tmi-offerbar { display:flex; align-items:center; gap:6px; padding:8px 11px; border-bottom:1px solid var(--tmi-border); }
.tmi-offerbar i { width:8px; height:8px; border-radius:50%; background:var(--tmi-faint); opacity:.5; }
.tmi-offerbar .u { margin-left:6px; font-family:var(--tmi-mono); font-size:10px; color:var(--tmi-faint); }
.tmi-offerbody { padding:14px; }
.tmi-offerbody .pg { height:8px; border-radius:4px; background:rgba(255,255,255,.06); margin-bottom:8px; }
.tmi-offerbody .pg.s { width:55%; }
.tmi-offer-banner { margin-top:10px; border:1px solid rgba(255,180,84,.5); background:linear-gradient(100deg, rgba(255,180,84,.2), rgba(47,230,194,.12)); border-radius:10px; padding:13px; display:flex; align-items:center; gap:12px; animation:tmi-pop .6s ease both; }
.tmi-offer-banner .tag { flex-shrink:0; }
.tmi-offer-banner b { font-size:13.5px; display:block; color:var(--tmi-text); margin-bottom:2px; }
.tmi-offer-banner .sm { font-size:11.5px; color:var(--tmi-muted); }
.tmi-injected { display:inline-flex; align-items:center; gap:6px; margin-top:11px; font-family:var(--tmi-mono); font-size:10.5px; color:var(--tmi-amber); }
.tmi-trig-foot { text-align:center; margin-top:30px; font-family:var(--tmi-display); font-weight:700; font-size:clamp(18px,2.2vw,24px); letter-spacing:-.01em; color:var(--tmi-text); }
.tmi-trig-foot .hot { background:linear-gradient(100deg,var(--tmi-amber),var(--tmi-accent)); -webkit-background-clip:text; background-clip:text; color:transparent; }

.tmi-builton-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:44px; }
.tmi-bo { border:1px solid var(--tmi-border); border-radius:14px; padding:22px; background:var(--tmi-surface); transition:border-color .25s ease, transform .25s ease; }
.tmi-bo:hover { border-color:rgba(47,230,194,.4); transform:translateY(-4px); }
.tmi-bo .ic-svg { margin-bottom:12px; display:block; }
.tmi-bo h4 { font-family:var(--tmi-display); font-size:16px; margin:0 0 6px; color:var(--tmi-text); }
.tmi-bo p { font-size:13px; color:var(--tmi-muted); line-height:1.55; margin:0; }

.tmi-cta { text-align:center; padding:90px 0 100px; }
.tmi-cta-box { max-width:760px; margin:0 auto; border:1px solid var(--tmi-border); border-radius:22px; padding:54px 30px; background:radial-gradient(120% 140% at 50% 0%, rgba(47,230,194,.1), transparent 60%), linear-gradient(180deg,var(--tmi-surface-2),var(--tmi-surface)); }
.tmi-cta-box h2 { font-family:var(--tmi-display); font-weight:800; font-size:clamp(26px,3.4vw,40px); letter-spacing:-.02em; margin:0 0 14px; color:var(--tmi-text); }
.tmi-cta-box p { color:var(--tmi-muted); font-size:17px; margin:0 auto 28px; max-width:520px; line-height:1.6; }
.tmi-btn { display:inline-flex; align-items:center; gap:9px; font-weight:700; font-size:15px; text-decoration:none; padding:15px 26px; border-radius:12px; transition:transform .18s ease, box-shadow .18s ease, background .18s ease; }
.tmi-btn-primary { color:#04231e; background:linear-gradient(100deg,var(--tmi-accent),#66f0d4); box-shadow:0 12px 34px -12px rgba(47,230,194,.6); }
.tmi-btn-primary:hover { transform:translateY(-2px); box-shadow:0 18px 44px -12px rgba(47,230,194,.75); }
.tmi-btn-ghost { color:var(--tmi-text); background:rgba(255,255,255,.04); border:1px solid var(--tmi-border); margin-left:10px; }
.tmi-btn-ghost:hover { background:rgba(255,255,255,.09); transform:translateY(-2px); }

@keyframes tmi-scroll { 0%{ transform:translate(-50%,0); opacity:1;} 70%{ transform:translate(-50%,12px); opacity:0;} 100%{ opacity:0;} }
@keyframes tmi-travel { 0%{ top:0; } 100%{ top:100%; } }
@keyframes tmi-pulse { 0%,100%{ transform:scale(1); opacity:1;} 50%{ transform:scale(1.5); opacity:.5;} }
@keyframes tmi-ring { 0%{ transform:scale(.7); opacity:.7;} 100%{ transform:scale(1.35); opacity:0;} }
@keyframes tmi-bob { 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-6px);} }
@keyframes tmi-pop { 0%{ transform:scale(.94); opacity:0;} 100%{ transform:scale(1); opacity:1;} }

@media (max-width:860px) {
  .tmi-problem-grid { grid-template-columns:1fr; }
  .tmi-builton-grid { grid-template-columns:1fr; }
  .tmi-lanes { grid-template-columns:1fr; }
  .tmi-ifthen { grid-template-columns:1fr; }
  .tmi-actions { grid-template-columns:1fr; }
  .tmi-spine { left:31px; }
  .tmi-step { grid-template-columns:62px 1fr; }
  .tmi-step-num { grid-column:1; justify-self:center; }
  .tmi-step-copy, .tmi-step:nth-child(even) .tmi-step-copy { order:2; padding:6px 0 6px 22px; }
  .tmi-step-visual, .tmi-step:nth-child(even) .tmi-step-visual { order:3; grid-column:2; padding:14px 0 18px 22px; }
  .tmi-step { margin:26px 0; }
}