/* Matrice comparatif forfaits - site tarifs */
.plan-matrix-wrap { overflow-x: auto; margin-top: 2rem; }
.plan-matrix {
  width: 100%; min-width: 720px; border-collapse: separate; border-spacing: 0;
  background: var(--bg); border: 1px solid var(--line); border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm); overflow: hidden;
}
.plan-matrix th, .plan-matrix td {
  padding: 12px 16px; border-bottom: 1px solid var(--line); font-size: 0.875rem; text-align: center;
}
.plan-matrix th:first-child, .plan-matrix td:first-child { text-align: left; font-weight: 600; color: var(--ink-2); }
.plan-matrix thead th { background: var(--bg-soft); font-size: 0.8125rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ink-3); }
.plan-matrix .col-starter { background: rgba(255,255,255,0.5); }
.plan-matrix .col-pro { background: var(--accent-soft); }
.plan-matrix tr.cat td { background: var(--bg-soft); font-weight: 700; font-size: 0.8125rem; color: var(--accent-deep); text-transform: uppercase; letter-spacing: 0.05em; }
.plan-matrix .yes { color: var(--accent); font-weight: 700; }
.plan-matrix .no { color: var(--ink-4); opacity: 0.45; }
.price-card .btn-signup-plan { width: 100%; justify-content: center; margin-top: 4px; }

/* Dépliants comparatif (portails métier) */
.ld-plan-details{
  margin: 14px 0 12px;
  border: 1px solid #e7e4dd;
  border-radius: 12px;
  background: #fafaf8;
  text-align: left;
}
.ld-plan-details summary{
  cursor: pointer;
  list-style: none;
  padding: 12px 14px;
  font-size: .88rem;
  font-weight: 600;
  color: #0f0f1a;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.ld-plan-details summary::-webkit-details-marker{display:none}
.ld-plan-details summary::after{
  content: "";
  width: 8px; height: 8px;
  border-right: 2px solid #ff5e2e;
  border-bottom: 2px solid #ff5e2e;
  transform: rotate(45deg);
  transition: transform .15s ease;
  flex-shrink: 0;
}
.ld-plan-details[open] summary::after{transform: rotate(225deg); margin-top: 4px;}
.ld-plan-details-body{padding: 0 12px 14px; max-height: 280px; overflow: auto;}
.ld-plan-cat{
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #9a3412;
  margin: 12px 0 6px;
}
.ld-plan-cat:first-child{margin-top: 0;}
.ld-plan-feat{
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: .84rem;
  color: #334155;
  padding: 4px 0;
  line-height: 1.35;
}
.ld-plan-feat .ok{color: #16a34a; font-weight: 700; flex-shrink: 0;}
.ld-plan-feat .no{color: #cbd5e1; font-weight: 700; flex-shrink: 0;}
.ld-plan-feat.is-out{color: #94a3b8;}
.price-card.featured .ld-plan-details{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.18);
}
.price-card.featured .ld-plan-details summary{color: #fff;}
.price-card.featured .ld-plan-cat{color: #ffb088;}
.price-card.featured .ld-plan-feat{color: #cbd5e1;}
.price-card.featured .ld-plan-feat.is-out{color: #64748b;}
.price-card .ld-plan-details{position: relative; z-index: 2;}
