body{ background:linear-gradient(180deg,#f6f8ff 0%,#eef4ff 40%,#f8fafc 100%); }
.page-hero{
  border-radius:1.4rem;
  border:0;
  color:#fff;
  background:
    radial-gradient(circle at top right, rgba(96,165,250,.24), transparent 36%),
    linear-gradient(145deg,#0f172a,#162338);
  box-shadow:0 1rem 2.4rem rgba(15,23,42,.16);
}
.section-kicker{
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#475569;
  margin-bottom:.5rem;
}
.compare-card,.note-card,.choice-card,.visual-card{
  border:1px solid rgba(15,23,42,.08);
  border-radius:1.1rem;
  background:#fff;
  box-shadow:0 .75rem 1.9rem rgba(15,23,42,.07);
}
.proof-row{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  margin:0 0 1rem;
}
.proof-row span{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  padding:.38rem .72rem;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:.82rem;
}
.decision-line{
  margin:0 0 1rem;
  font-size:1.05rem;
  font-weight:600;
  color:#e2e8f0;
}
.compare-hero-visual{
  border-radius:1.1rem;
  border:1px dashed rgba(255,255,255,.18);
  padding:1rem;
  min-height:300px;
  background:rgba(255,255,255,.04);
}
.visual-note{
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,.68);
  margin-bottom:.75rem;
}
.decision-map{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.8rem;
}
.decision-column{
  padding:.95rem;
  border-radius:1rem;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.9);
  color:#0f172a;
  box-shadow:0 .65rem 1.6rem rgba(15,23,42,.12);
}
.decision-column small{
  display:block;
  color:#64748b;
  margin-bottom:.35rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.decision-column ul{
  padding-left:1rem;
  margin:0;
}
.decision-column li{ margin:.3rem 0; }
.decision-rto{
  border-color:rgba(96,165,250,.45);
  background:linear-gradient(180deg,#eff6ff 0%,#ffffff 100%);
  box-shadow:0 .9rem 2rem rgba(59,130,246,.18);
}
.decision-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:.65rem;
  padding:.32rem .7rem;
  border-radius:999px;
  background:#0f172a;
  color:#f8fafc;
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.compare-visual-caption{
  margin-top:.9rem;
  color:rgba(255,255,255,.84);
  font-size:.92rem;
  line-height:1.5;
}
.compare-table thead th{
  background:#0f172a;
  color:#fff;
  border-color:#23314d;
  font-size:.92rem;
}
.compare-table td,.compare-table th{
  vertical-align:top;
  border-color:rgba(15,23,42,.08);
}
.fit-yes{ color:#166534; font-weight:600; }
.fit-some{ color:#92400e; font-weight:600; }
.fit-no{ color:#9f1239; font-weight:600; }
.tag{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  border-radius:999px;
  padding:.3rem .65rem;
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
  font-size:.8rem;
  color:#334155;
}
.choice-list,.strength-list,.limits-list{
  padding-left:1.1rem;
  margin-bottom:0;
}
.choice-list li,.strength-list li,.limits-list li{ margin:.45rem 0; }


/* 2026 hero lighten pass */
.page-hero{
  color:#0f172a;
  border:1px solid rgba(15,23,42,.08);
  background:
    radial-gradient(circle at top right, rgba(96,165,250,.16), transparent 36%),
    linear-gradient(180deg,#ffffff 0%,#f7fbff 60%,#f1f6ff 100%);
  box-shadow:0 1rem 2.4rem rgba(15,23,42,.08);
}
.page-hero .small,
.page-hero .small-muted,
.page-hero .lead,
.page-hero p{ color:#475569!important; }
.page-hero .d-inline-flex{
  border-color:rgba(37,99,235,.12)!important;
  background:rgba(37,99,235,.06)!important;
  color:#1d4ed8!important;
}
.proof-row span,
.platform-inline span{
  border:1px solid rgba(37,99,235,.10);
  background:#eff6ff;
  color:#1e3a8a;
}
.platform-inline span.pending{ background:#f8fafc; color:#475569; }
.subhero-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.subhero-card{
  border:1px solid rgba(15,23,42,.08);
  border-radius:1.1rem;
  background:#fff;
  box-shadow:0 .75rem 1.9rem rgba(15,23,42,.06);
  padding:1.15rem;
}
.subhero-card p{ color:#64748b; margin-bottom:0; }
.subhero-title{
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#475569;
  margin-bottom:.55rem;
}
.subhero-list{ display:flex; flex-wrap:wrap; gap:.45rem; margin:0; padding:0; list-style:none; }
.subhero-list li{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  padding:.35rem .65rem;
  border-radius:999px;
  border:1px solid rgba(37,99,235,.10);
  background:#eff6ff;
  color:#1e3a8a;
  font-size:.82rem;
}
@media (max-width: 991.98px){
  .subhero-grid{ grid-template-columns:1fr; }
}


/* 2026 hero button pass */
.hero-shell .btn-outline-light,
.page-hero .btn-outline-light,
.hero .btn-outline-light{
  color:#1d4ed8;
  border-color:rgba(37,99,235,.18);
  background:#ffffff;
}
.hero-shell .btn-outline-light:hover,
.page-hero .btn-outline-light:hover,
.hero .btn-outline-light:hover{
  color:#1d4ed8;
  border-color:rgba(37,99,235,.28);
  background:#eff6ff;
}
.compare-col{min-width:220px;}
.compare-nocode-card{
  border:1px solid rgba(13,110,253,.13);
  border-radius:28px;
  padding:clamp(1.2rem,3vw,2rem);
  background:
    radial-gradient(720px 320px at 0% 0%, rgba(13,110,253,.12), transparent 58%),
    linear-gradient(135deg,#ffffff,#f3f8ff);
  box-shadow:0 1rem 2.5rem rgba(15,23,42,.07);
}
.compare-nocode-card p{color:#64748b;max-width:58rem;line-height:1.58;}

/* compare hub/editorial expansion */
.market-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;}
.market-card{display:block;border:1px solid rgba(15,23,42,.08);border-radius:1.1rem;background:#fff;box-shadow:0 .75rem 1.9rem rgba(15,23,42,.06);padding:1.15rem;color:#0f172a;text-decoration:none;height:100%;}
.market-card h3{font-size:1.05rem;margin-bottom:.55rem;}
.market-card p{color:#475569;margin-bottom:.55rem;}
.link-card span{display:inline-flex;margin-top:.35rem;font-weight:700;color:#1d4ed8;}
.link-card:hover{border-color:rgba(37,99,235,.22);transform:translateY(-1px);transition:transform .16s ease,border-color .16s ease;}
.deep-grid,.source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;}
.deep-grid a,.source-grid a{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.85rem 1rem;border-radius:.9rem;border:1px solid rgba(15,23,42,.08);background:#fff;text-decoration:none;color:#0f172a;font-weight:650;box-shadow:0 .45rem 1.1rem rgba(15,23,42,.05);}
.deep-grid a:hover,.source-grid a:hover{border-color:rgba(37,99,235,.22);background:#f8fbff;}
.small-muted{color:#64748b;}
@media (max-width: 991.98px){.market-grid,.deep-grid,.source-grid{grid-template-columns:1fr;}}
.rtoBest {background-color:#FFD;}
.rtoWeak{background-color:#FED;}
.rtoStrong{background-color:#EFE;}
.compare-source-btn {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  border-radius: 999px;
  font-weight: 600;
}

.compare-source-btn .compare-source-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.35em;
  height: 1.35em;
  border-radius: 50%;
  font-size: .85em;
  background: rgba(255,255,255,.22);
}

.compare-source-external {
  background: #0f766e;
  border-color: #0f766e;
  color: #fff;
}

.compare-source-doc {
  background: #2563eb;
  border-color: #2563eb;
  color: #fff;
}

.compare-source-api {
  background: #7c3aed;
  border-color: #7c3aed;
  color: #fff;
}

.compare-source-site {
  background: #334155;
  border-color: #334155;
  color: #fff;
}

.compare-source-btn:hover {
  filter: brightness(1.08);
  color: #fff;
}

/* 2026 source buttons polish */
.source-grid a.compare-source-btn{
  justify-content:flex-start;
  gap:.78rem;
  min-height:60px;
  padding:1.02rem 1.18rem;
  border:0;
  border-radius:1.05rem;
  font-size:1.02rem;
  line-height:1.25;
  color:#fff;
  overflow:hidden;
  position:relative;
  box-shadow:0 .75rem 1.55rem rgba(15,23,42,.10);
}
.source-grid a.compare-source-btn::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.28),rgba(255,255,255,0) 38%,rgba(255,255,255,.16));
  opacity:.58;
  pointer-events:none;
}
.source-grid a.compare-source-btn:hover{
  color:#fff;
  filter:none;
  transform:translateY(-2px);
  box-shadow:0 1rem 2rem rgba(15,23,42,.16);
}
.source-grid a.compare-source-btn .compare-source-icon{
  flex:0 0 2.15rem;
  width:2.15rem;
  height:2.15rem;
  z-index:1;
  border-radius:999px;
  font-size:1.08rem;
  background:rgba(255,255,255,.25);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 .25rem .7rem rgba(15,23,42,.14);
}
.source-grid a.compare-source-btn .compare-source-label{
  display:block;
  z-index:1;
  font-weight:800;
  letter-spacing:-.01em;
}
.source-grid a.compare-source-external{
  background:linear-gradient(135deg,#0f766e 0%,#14b8a6 58%,#2dd4bf 100%);
}
.source-grid a.compare-source-doc{
  background:linear-gradient(135deg,#1d4ed8 0%,#3b82f6 58%,#60a5fa 100%);
}
.source-grid a.compare-source-api{
  background:linear-gradient(135deg,#6d28d9 0%,#8b5cf6 58%,#a78bfa 100%);
}
.source-grid a.compare-source-site{
  background:linear-gradient(135deg,#334155 0%,#475569 58%,#64748b 100%);
}
@media (max-width: 991.98px){
  .source-grid a.compare-source-btn{
    min-height:56px;
    font-size:1rem;
    padding:.95rem 1.05rem;
  }
  .source-grid a.compare-source-btn .compare-source-icon{
    flex-basis:2rem;
    width:2rem;
    height:2rem;
  }
}

