.cs-banner {
  display: grid; grid-template-columns: 84px minmax(0, 1fr) auto; align-items: center; gap: 22px;
  margin: 40px 0 !important; padding: 22px 26px; border-radius: 18px;
  border: 1px solid #2F3670; background: linear-gradient(120deg, #1A1F4D 0%, var(--card) 75%);
}
.cs-banner img { width: 84px; height: 84px; border-radius: 16px; display: block; }
.cs-banner-h { margin: 0 !important; font: 700 21px/1.25 var(--font-head, inherit); color: #fff; }
.cs-banner-text p { margin: 6px 0 0; font-size: 16px; line-height: 1.55; color: #C9CCE6; }
.cs-banner-text .cs-banner-h { margin: 0; }
.cs-banner-cta { display: grid; gap: 10px; justify-items: stretch; text-align: center; }
.cs-price { font-size: 15px; color: #C9CCE6; }
.cs-price b { color: #fff; font-size: 24px; font-weight: 800; letter-spacing: -.01em; }
.prose .cs-banner a.btn { text-decoration: none; color: #14162E; }
.prose .cs-banner a.btn:hover { color: #14162E; }

.cs-final .b-plans-card { position: relative; overflow: hidden; isolation: isolate; }
.cs-final .b-plans-card::before {
  content: ""; position: absolute; inset: 0; z-index: -1; opacity: .22;
  background: url("../juegos/arte/counter-strike-2/fondo.webp") center / cover no-repeat;
}
.cs-final .b-plans-text p + p { margin-top: 10px; }
.cs-final .b-plans-text strong { color: #fff; }
.cs-final .cs-final-cta { display: grid; gap: 10px; justify-items: stretch; }
.cs-final .cs-final-cta .btn-secondary { text-align: center; }

.tbl { overflow-x: auto; border-radius: 14px; border: 1px solid var(--line); background: var(--card); }
.prose .tbl table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.45; min-width: 480px; }
.prose .tbl th, .prose .tbl td { padding: 10px 11px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
.prose .tbl th { color: #fff; font-weight: 700; background: rgba(110, 123, 255, .08); }
.prose .tbl tr:last-child td { border-bottom: 0; }
.prose .tbl td code { white-space: nowrap; }

@media (max-width: 760px) {
  .cs-banner { grid-template-columns: 64px minmax(0, 1fr); padding: 18px; gap: 16px; }
  .cs-banner img { width: 64px; height: 64px; border-radius: 12px; }
  .cs-banner-cta { grid-column: 1 / -1; }
  .cs-banner-h { font-size: 19px; }
}

.pg-entrada .prose :not(pre) > code { overflow-wrap: anywhere; }
.pg-entrada .prose .tbl td code { overflow-wrap: normal; }
.pg-entrada .prose li, .pg-entrada .prose p { overflow-wrap: break-word; min-width: 0; }
