/* ====== Components used in your HTML ====== */
.pill{
  display:inline-block;
  padding:6px 12px;
  border-radius:999px;
  background: rgba(255,255,255,.12);
  color:#e5e7eb;
  font-size:13px;
  letter-spacing:.02em;
  margin-bottom:14px;
}

.leadDark{ font-size:18px; margin: 10px 0 8px; max-width: 52ch; }
.miniDark{ font-size:13px; opacity:.9; }

.section{ padding: 36px 0; border-top: 1px solid rgba(255,255,255,.08); }
.section h2{ margin: 0 0 14px; font-size:22px; }

.ctaRow{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin: 18px 0 10px;
}

.btn.ghost{
  background: rgba(255,255,255,.14);
  color:#e5e7eb;
}

.triple{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
  margin-top: 14px;
}
@media (max-width: 860px){
  .triple{ grid-template-columns: 1fr; }
}

.card{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  padding: 16px;
}

.priceGrid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 14px;
}
@media (max-width: 860px){
  .priceGrid{ grid-template-columns: 1fr; }
}

.priceCard{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  padding: 18px;
}

.priceCard.highlight{
  background: rgba(34,197,94,.12);
  border-color: rgba(34,197,94,.35);
}

.tag{
  display:inline-block;
  font-size:12px;
  padding:4px 10px;
  border-radius:999px;
  background: rgba(255,255,255,.12);
  margin: 0 0 10px;
}

.price{
  font-size: 28px;
  margin: 0;
}
.price span{
  font-size: 12px;
  opacity: .85;
  margin-right: 6px;
}

.footer{
  padding: 24px 0 40px;
  opacity: .75;
  border-top: 1px solid rgba(255,255,255,.08);
}
