:root {
  --checkout-bg: #06070b;
  --checkout-panel: rgba(15, 17, 25, 0.94);
  --checkout-panel-soft: rgba(20, 22, 32, 0.82);
  --checkout-line: rgba(255, 255, 255, 0.10);
  --checkout-line-strong: rgba(255, 255, 255, 0.18);
  --checkout-text: #f7f8fb;
  --checkout-muted: #a7adbc;
  --checkout-pink: #ff155b;
  --checkout-pink-2: #ff4d82;
  --checkout-green: #37d78f;
  --checkout-radius: 22px;
  --checkout-radius-sm: 14px;
  --accent: var(--checkout-pink);
  --accent-2: #c90d43;
  --muted: var(--checkout-muted);
  --text: var(--checkout-text);
  --success: var(--checkout-green);
  --border: var(--checkout-line);
  --radius: 14px;
  --radius-lg: 22px;
  --glass: rgba(255, 255, 255, 0.045);
  --button-gradient: linear-gradient(135deg, var(--checkout-pink), var(--checkout-pink-2));
}

html {
  background: var(--checkout-bg);
  color-scheme: dark;
  overflow-x: clip;
}

body.checkout-preview {
  min-height: 100%;
  margin: 0;
  color: var(--checkout-text);
  background:
    radial-gradient(circle at 77% 5%, rgba(255, 21, 91, 0.15), transparent 27rem),
    radial-gradient(circle at 10% 32%, rgba(74, 61, 255, 0.12), transparent 32rem),
    linear-gradient(180deg, #080911 0%, #06070b 42%, #090a10 100%);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow-x: clip;
}

body.checkout-preview::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.52), transparent 72%);
}

.checkout-preview .theme-toggle,
.checkout-preview .logo-dark {
  display: none !important;
}

.checkout-preview .container {
  width: min(1240px, calc(100% - 40px));
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 0 54px;
}

.checkout-header {
  padding: 20px 0 30px !important;
  text-align: left !important;
}

.checkout-nav {
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.checkout-brand {
  display: inline-flex;
  align-items: center;
}

.checkout-brand img {
  width: 142px;
  height: auto !important;
  display: block;
  border-radius: 0 !important;
}

.checkout-back {
  color: #d6d9e2;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  font-size: 14px;
  font-weight: 650;
  transition: .22s ease;
}

.checkout-back:hover {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.22);
  transform: translateY(-1px);
}

.checkout-hero-copy {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr);
  gap: 38px 72px;
  align-items: end;
  padding: 62px 0 30px;
  position: relative;
}

.checkout-hero-copy::after {
  content: "Assine em poucos passos";
  grid-column: 2;
  grid-row: 1 / span 3;
  align-self: stretch;
  min-height: 220px;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  padding: 32px;
  border-radius: 28px;
  color: rgba(255,255,255,.72);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .02em;
  background:
    linear-gradient(180deg, rgba(7,8,13,.02), rgba(7,8,13,.72)),
    url('/assets/imagens/slider1-desk.webp') center / cover no-repeat,
    linear-gradient(135deg, #25283c, #10111a 58%, #07080d);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 30px 80px rgba(0,0,0,.36);
}

.checkout-kicker {
  grid-column: 1;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: max-content;
  padding: 8px 11px;
  border: 1px solid rgba(255, 77, 130, .34);
  background: rgba(255, 21, 91, .09);
  border-radius: 999px;
  color: #ff7ca4;
  font-size: 12px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.checkout-preview .checkout-hero-copy h1 {
  grid-column: 1;
  margin: 15px 0 0;
  max-width: 720px;
  color: #fff;
  font-family: Manrope, Inter, sans-serif;
  font-size: clamp(46px, 5.7vw, 82px);
  line-height: .98;
  font-weight: 800;
  letter-spacing: -.06em;
}

.checkout-preview .checkout-hero-copy .subtitle {
  grid-column: 1;
  max-width: 690px;
  margin: 0;
  color: #b8bdca;
  font-size: 17px;
  line-height: 1.7;
  text-align: left;
}

.checkout-trust {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 2px;
}

.checkout-trust span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 13px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  color: #c8ccd6;
  font-size: 13px;
  font-weight: 650;
}

.checkout-trust i { color: #ff5d8e; }

.checkout-preview .card {
  margin-top: 0;
  padding: 26px;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(19,21,31,.98), rgba(11,12,18,.98));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 40px 100px rgba(0,0,0,.44), inset 0 1px rgba(255,255,255,.035);
  backdrop-filter: blur(18px);
}

.checkout-preview .card::before {
  height: 1px;
  background: linear-gradient(90deg, transparent 4%, rgba(255,21,91,.9), rgba(121,91,255,.7), transparent 96%);
}

.checkout-preview .progresso {
  margin: 0 0 28px;
  padding: 7px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.025);
}

.checkout-preview .progresso-desktop { gap: 6px; }

.checkout-preview .passo {
  margin: 0 !important;
  padding: 13px 12px;
  border-radius: 12px;
  background: transparent;
  color: #888f9f;
  font-size: 13px;
  font-weight: 700;
}

.checkout-preview .passo i { margin-right: 7px; }

.checkout-preview .passo.ativo {
  color: #fff;
  background: linear-gradient(135deg, rgba(255,21,91,.96), rgba(217,13,72,.96));
  box-shadow: 0 8px 24px rgba(255,21,91,.24);
}

.checkout-preview .passo.concluido {
  color: #dffbed;
  background: rgba(55,215,143,.14);
}

.checkout-preview #form-title,
.checkout-preview .secao > h2 {
  color: #fff;
  font-family: Manrope, Inter, sans-serif !important;
  font-size: clamp(24px, 2.3vw, 34px);
  line-height: 1.12;
  letter-spacing: -.035em;
}

.checkout-preview .secao > .subtitle {
  max-width: none;
  color: #9ca3b2;
  font-size: 15px;
}

.checkout-preview .planos-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 24px;
}

.checkout-preview .plano-card {
  min-width: 0;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255,255,255,.055), transparent 15rem),
    linear-gradient(180deg, rgba(26,28,40,.96), rgba(15,16,24,.96));
  box-shadow: none;
  overflow: hidden;
}

.checkout-preview .plano-card[data-plano="full"] {
  border-color: rgba(255,58,116,.38);
  background:
    radial-gradient(circle at 100% 0%, rgba(255,21,91,.17), transparent 18rem),
    linear-gradient(180deg, rgba(31,25,39,.98), rgba(15,16,24,.98));
}

.checkout-preview .plano-card:hover {
  transform: translateY(-3px);
  border-color: rgba(255,255,255,.22);
  box-shadow: 0 22px 48px rgba(0,0,0,.28);
}

.checkout-preview .plano-card.selecionado {
  border-color: var(--checkout-pink);
  background:
    radial-gradient(circle at 100% 0%, rgba(255,21,91,.22), transparent 18rem),
    linear-gradient(180deg, rgba(32,24,39,.98), rgba(14,15,22,.98));
  box-shadow: 0 0 0 2px rgba(255,21,91,.12), 0 24px 52px rgba(255,21,91,.12);
}

.checkout-preview .plano-card.plano-indicado::after {
  content: "Plano selecionado na página anterior";
  display: block;
  position: absolute;
  inset: auto 18px 18px;
  padding: 8px 10px;
  border-radius: 10px;
  color: #ffd6e3;
  background: rgba(255,21,91,.14);
  border: 1px solid rgba(255,21,91,.28);
  font-size: 11px;
  font-weight: 700;
  text-align: center;
  pointer-events: none;
  opacity: .01;
}

.checkout-preview .plan-eyebrow {
  margin-bottom: 8px;
  color: #ff729d;
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.checkout-preview .plano-card h3 {
  margin: 0;
  color: #fff;
  font-family: Manrope, Inter, sans-serif;
  font-size: 24px;
  letter-spacing: -.025em;
}

.checkout-preview .plano-badge {
  top: 22px;
  right: 22px;
  padding: 6px 9px;
  color: #f2f3f7;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.10);
  font-size: 10px;
  letter-spacing: .08em;
}

.checkout-preview .plano-card[data-plano="full"] .plano-badge {
  color: #fff;
  background: linear-gradient(135deg, #ff155b, #ff4d82);
  border-color: transparent;
}

.checkout-preview .plano-preco {
  margin: 19px 0 20px;
  color: #fff;
  font-family: Manrope, Inter, sans-serif;
  font-size: clamp(30px, 3vw, 42px);
  line-height: 1;
  font-weight: 800;
  letter-spacing: -.045em;
}

.checkout-preview .plano-badge-dispositivos,
.checkout-preview .plano-badge-funcionalidades {
  margin: 0;
  color: #dfe3eb;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0;
}

.checkout-preview .plano-badge-dispositivos {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
  font-size: 12px;
  text-align: left;
}

.checkout-preview .plano-badge-funcionalidades {
  display: grid;
  gap: 0;
  padding: 0;
}

.checkout-preview .funcionalidade-item {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: #dfe3eb;
  background: transparent !important;
  font-size: 12px;
  font-weight: 700;
  text-align: left;
}

.checkout-preview .funcionalidade-item i { color: #ff5d8e; }

.checkout-preview .plano-descricao {
  min-height: 48px;
  margin: 14px 0 18px;
  color: #9da4b3;
  font-size: 13px;
  line-height: 1.55;
}

.checkout-preview .plano-opcoes {
  margin-top: 4px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  background: rgba(255,255,255,.025);
}

.checkout-preview .plano-opcoes h4 {
  margin: 0 0 12px;
  color: #c9ced9;
  font-size: 12px;
  text-align: left;
  letter-spacing: .02em;
}

.checkout-preview .opcoes-grid { gap: 10px; }

.checkout-preview .opcao-btn {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 13px;
  background: rgba(255,255,255,.035);
  color: #fff;
  text-align: left;
}

.checkout-preview .opcao-btn:hover {
  border-color: rgba(255,255,255,.22);
  transform: translateY(-1px);
}

.checkout-preview .opcao-btn.selecionado {
  border-color: var(--checkout-pink);
  background: rgba(255,21,91,.10);
  box-shadow: 0 0 0 2px rgba(255,21,91,.08);
}

.checkout-preview .opcao-logo {
  width: 100%;
  height: 58px;
  object-fit: contain;
  padding: 6px;
  border-radius: 10px;
  background: #fff;
}

.checkout-preview .opcao-btn > div {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-top: 9px;
  font-size: 12px;
}

.checkout-preview .opcao-btn > div strong { font-size: 12px; }
.checkout-preview .opcao-btn > div span { color: #9fa5b3; font-size: 10px; }

.checkout-preview .plano-botoes {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 10px;
  margin-top: 16px;
}

.checkout-preview .btn {
  justify-content: center;
  min-height: 48px;
  margin-bottom: 0;
  padding: 13px 18px;
  border-radius: 13px;
  background: linear-gradient(135deg, #ff155b, #ff4d82);
  box-shadow: 0 11px 28px rgba(255,21,91,.20);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.checkout-preview .btn:hover {
  transform: translateY(-2px);
  filter: brightness(1.06);
  box-shadow: 0 15px 35px rgba(255,21,91,.28);
}

.checkout-preview .btn.secondary,
.checkout-preview .btn.ghost,
.checkout-preview .btn-voltar {
  color: #e5e7ee;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.11);
  box-shadow: none;
}

.checkout-preview .btn:disabled {
  opacity: .42;
  filter: grayscale(.35);
  cursor: not-allowed;
  transform: none;
}

.checkout-preview label {
  color: #d7dbe4;
  font-size: 13px;
}

.checkout-preview .input-strong,
.checkout-preview .select-strong {
  color: #fff;
  border: 1px solid rgba(255,255,255,.11);
  background-color: rgba(255,255,255,.045);
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}

.checkout-preview .input-strong::placeholder { color: #747b8c; }

.checkout-preview .input-strong:focus,
.checkout-preview .select-strong:focus {
  border-color: rgba(255,65,121,.9);
  box-shadow: 0 0 0 4px rgba(255,21,91,.12);
}

.checkout-preview .input-strong[readonly] {
  color: #bac0cc;
  background: rgba(255,255,255,.025);
}

.checkout-preview .erro-validacao { color: #ff789f; }

.checkout-preview .navegacao {
  gap: 12px;
  align-items: center;
  margin-top: 26px;
}

.checkout-preview .cep-alternative-button {
  color: #ff6d99;
}

.checkout-preview .cep-warning {
  color: #ffd082;
  background: rgba(255,183,65,.08);
  border-color: rgba(255,183,65,.20);
}

.checkout-preview .checkout-assurance {
  display: flex;
  align-items: center;
  gap: 13px;
  margin: 18px 4px 0;
  padding: 15px 18px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  color: #aeb4c0;
  background: rgba(255,255,255,.025);
}

.checkout-preview .checkout-assurance > i {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  color: #ff6b98;
  background: rgba(255,21,91,.12);
}

.checkout-preview .checkout-assurance div { display: flex; flex-direction: column; gap: 2px; }
.checkout-preview .checkout-assurance strong { color: #e7e9ef; font-size: 13px; }
.checkout-preview .checkout-assurance span { font-size: 12px; }

.checkout-preview .footer {
  color: #747b89;
  border-top-color: rgba(255,255,255,.07);
}

.checkout-preview .modal,
.checkout-preview .date-picker-modal,
.checkout-preview .cep-search-modal {
  background: rgba(2,3,7,.82);
  backdrop-filter: blur(14px);
}

.checkout-preview .modal .content,
.checkout-preview .date-picker-content,
.checkout-preview .cep-search-content {
  color: #fff;
  background: #141620;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 30px 90px rgba(0,0,0,.58);
}

.checkout-preview .modal-header,
.checkout-preview .date-picker-header {
  background: rgba(255,255,255,.025);
  border-bottom-color: rgba(255,255,255,.08);
}

.checkout-preview .date-picker-select {
  color: #fff;
  background: #1b1d28;
  border-color: rgba(255,255,255,.12);
}

.checkout-preview .date-picker-calendar td:hover,
.checkout-preview .date-picker-calendar td.selected {
  background: var(--checkout-pink);
}

.checkout-preview .tab {
  color: #b7bdc9;
  background: rgba(255,255,255,.035);
}

.checkout-preview .tab.active {
  color: #fff;
  background: var(--checkout-pink);
}

.checkout-preview .pix-qrcode {
  padding: 12px;
  border-radius: 16px;
  background: #fff;
}

.checkout-preview .pix-qrcode img { display: block; max-width: 100%; }

.checkout-preview .canais-grid .canal-item,
.checkout-preview .canal-card {
  color: #f1f2f6;
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.08);
}

@media (max-width: 900px) {
  .checkout-preview .container { width: min(100% - 28px, 760px); }
  .checkout-hero-copy { grid-template-columns: 1fr; gap: 22px; padding-top: 38px; }
  .checkout-hero-copy::after { display: none; }
  .checkout-trust { grid-column: 1; }
  .checkout-preview .planos-grid { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .checkout-preview .container { width: 100%; padding: 0 14px 32px; }
  .checkout-header { padding: 10px 2px 22px !important; }
  .checkout-nav { min-height: 58px; }
  .checkout-brand img { width: 114px; }
  .checkout-back { padding: 9px 11px; font-size: 12px; }
  .checkout-hero-copy { padding: 34px 0 20px; }
  .checkout-preview .checkout-hero-copy h1 { font-size: clamp(42px, 13.5vw, 60px); }
  .checkout-preview .checkout-hero-copy .subtitle { font-size: 15px; line-height: 1.62; }
  .checkout-trust { gap: 7px; }
  .checkout-trust span { flex: 1 1 calc(50% - 7px); justify-content: center; padding: 9px 8px; font-size: 11px; }
  .checkout-preview .card { padding: 14px; border-radius: 22px; }
  .checkout-preview .progresso { padding: 5px; margin-bottom: 22px; }
  .checkout-preview .progresso-desktop { display: none; }
  .checkout-preview .progresso-mobile {
    display: block;
    padding: 12px 14px;
    color: #fff;
    background: rgba(255,21,91,.12);
    border: 1px solid rgba(255,21,91,.25);
  }
  .checkout-preview .plano-card { padding: 21px 18px; }
  .checkout-preview .plano-badge { top: 18px; right: 18px; }
  .checkout-preview .plano-preco { font-size: 34px; }
  .checkout-preview .plano-botoes { grid-template-columns: 1fr; }
  .checkout-preview .form-row { flex-direction: column; gap: 0; align-items: stretch; }
  .checkout-preview .form-row > div[style] { width: 100% !important; flex: 1 1 auto !important; }
  .checkout-preview .navegacao { flex-direction: column-reverse; }
  .checkout-preview .navegacao .btn { width: 100%; }
  .checkout-preview .checkout-assurance { align-items: flex-start; margin-inline: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .checkout-preview *, .checkout-preview *::before, .checkout-preview *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    transition-duration: .01ms !important;
  }
}

/* Neutraliza os badges legados sem alterar a lógica que os gera. */
.checkout-preview .plano-badge-dispositivos {
  animation: none !important;
  box-shadow: none !important;
}
.checkout-preview .funcionalidade-item {
  justify-content: flex-start !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}


/* PACKTV-WEB-10-CHECKOUT-CONTENT-EDITOR-PREMIUM-R1
   Camada clean: uma superfície por plano, sem caixas aninhadas. */
.checkout-hero-copy{
  grid-template-columns:minmax(0,1.06fr) minmax(330px,.94fr);
  align-items:center;
  gap:48px 72px;
}
.checkout-hero-copy::after{display:none!important;content:none!important}
.checkout-hero-main{min-width:0}
.checkout-kicker,.checkout-preview .checkout-hero-copy h1,.checkout-preview .checkout-hero-copy .subtitle,.checkout-trust{grid-column:auto}
.checkout-hero-media{
  margin:0;
  position:relative;
  min-height:420px;
  aspect-ratio:1/1;
  border-radius:26px;
  overflow:hidden;
  background:#0e1017;
  box-shadow:0 28px 80px rgba(0,0,0,.32);
}
.checkout-hero-media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 62%,rgba(4,5,9,.72));
}
.checkout-hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.checkout-hero-media figcaption{
  position:absolute;
  z-index:2;
  left:22px;
  right:22px;
  bottom:20px;
  color:rgba(255,255,255,.78);
  font-size:12px;
  font-weight:700;
}

/* A jornada deixa de ser uma caixa-mãe. */
.checkout-preview .card{
  padding:8px 0 0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  overflow:visible;
}
.checkout-preview .card::before{display:none!important}

/* Progresso leve, sem cápsula dentro de cápsula. */
.checkout-preview .progresso{
  margin:0 0 36px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.checkout-preview .progresso-desktop{
  gap:0;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.checkout-preview .passo{
  min-height:48px;
  padding:14px 10px 13px;
  border-radius:0;
  border-bottom:2px solid transparent;
  background:transparent!important;
  box-shadow:none!important;
  color:#71798a;
}
.checkout-preview .passo.ativo{
  color:#fff;
  border-bottom-color:var(--checkout-pink);
}
.checkout-preview .passo.concluido{
  color:#9ddfc2;
  border-bottom-color:rgba(55,215,143,.72);
}

/* Título e planos respiram diretamente na página. */
.checkout-preview #secao-planos{padding:0 0 10px}
.checkout-preview #form-title{font-size:clamp(25px,2.4vw,36px)}
.checkout-preview .planos-grid{
  width:min(100%,980px);
  margin:28px auto 0;
  gap:22px;
}

/* Uma única superfície por plano. */
.checkout-preview .plano-card{
  padding:30px 28px 24px;
  border:1px solid rgba(255,255,255,.095);
  border-radius:20px;
  background:rgba(16,18,27,.72);
  box-shadow:0 20px 55px rgba(0,0,0,.16);
}
.checkout-preview .plano-card[data-plano="full"]{
  border-color:rgba(255,255,255,.095);
  background:rgba(16,18,27,.72);
}
.checkout-preview .plano-card:hover{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 24px 58px rgba(0,0,0,.22);
}
.checkout-preview .plano-card.selecionado,
.checkout-preview .plano-card[data-plano="full"].selecionado{
  border-color:rgba(255,21,91,.72);
  background:linear-gradient(180deg,rgba(255,21,91,.055),rgba(16,18,27,.78));
  box-shadow:0 0 0 1px rgba(255,21,91,.12),0 24px 58px rgba(0,0,0,.24);
}
.checkout-preview .plano-card[data-plano="full"] .plano-badge{
  background:rgba(255,21,91,.12);
  border-color:rgba(255,21,91,.24);
  color:#ff8bad;
}
.checkout-preview .plano-badge{
  top:24px;
  right:24px;
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.08);
}
.checkout-preview .plano-preco{margin:18px 0 18px}
.checkout-preview .plano-badge-dispositivos{border-top:1px solid rgba(255,255,255,.07);border-bottom:0}
.checkout-preview .funcionalidade-item{border-bottom:1px solid rgba(255,255,255,.07)}
.checkout-preview .plano-descricao{min-height:0;margin:14px 0 8px}

/* Adicionais em linhas, sem container com borda e sem cards internos. */
.checkout-preview .plano-opcoes{
  margin:20px 0 0;
  padding:18px 0 0;
  border:0;
  border-top:1px solid rgba(255,255,255,.08);
  border-radius:0;
  background:transparent;
}
.checkout-preview .plano-opcoes h4{
  margin:0 0 7px;
  color:#d7dbe4;
  font-size:12px;
  font-weight:750;
}
.checkout-preview .opcoes-grid{display:grid;grid-template-columns:1fr;gap:0}
.checkout-preview .opcao-btn{
  min-height:72px;
  padding:11px 0;
  display:grid;
  grid-template-columns:54px minmax(0,1fr) auto 24px;
  gap:12px;
  align-items:center;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.07);
  border-radius:0;
  background:transparent;
  color:#fff;
  text-align:left;
  transform:none!important;
  box-shadow:none!important;
}
.checkout-preview .opcao-btn:last-child{border-bottom:0}
.checkout-preview .opcao-btn:hover{background:transparent;color:#fff}
.checkout-preview .opcao-btn.selecionado{
  margin:0 -9px;
  padding-left:9px;
  padding-right:9px;
  border-color:transparent;
  border-radius:11px;
  background:rgba(255,21,91,.075);
  color:#fff;
}
.checkout-preview .opcao-logo{
  width:54px;
  height:40px;
  margin:0;
  padding:4px;
  border-radius:8px;
  object-fit:contain;
  background:#fff;
  transform:none!important;
}
.checkout-preview .opcao-copy{
  min-width:0;
  margin:0!important;
  display:grid!important;
  gap:3px!important;
}
.checkout-preview .opcao-copy strong{font-size:12px!important}
.checkout-preview .opcao-copy small{color:#858d9d;font-size:10px;line-height:1.35}
.checkout-preview .opcao-valor{white-space:nowrap;color:#bcc2ce;font-size:10px;font-weight:700}
.checkout-preview .opcao-check{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50%;
  color:transparent;
  font-size:9px;
}
.checkout-preview .opcao-btn.selecionado .opcao-check{
  border-color:var(--checkout-pink);
  background:var(--checkout-pink);
  color:#fff;
}

/* Ação secundária vira link visual; Selecionar é o único botão cheio. */
.checkout-preview .plano-botoes{grid-template-columns:auto minmax(150px,1fr);align-items:center;margin-top:18px}
.checkout-preview .btn-ver-canais{
  min-height:44px!important;
  padding:10px 4px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#aeb5c3!important;
}
.checkout-preview .btn-ver-canais:hover{transform:none!important;color:#fff!important;box-shadow:none!important}
.checkout-preview .btn-selecionar{min-height:46px}

/* Dados e endereço ganham uma única superfície quando entram em cena. */
.checkout-preview .secao:not(#secao-planos){
  width:min(100%,820px);
  margin:0 auto;
  padding:28px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:20px;
  background:rgba(15,17,25,.72);
}

@media(max-width:900px){
  .checkout-hero-copy{grid-template-columns:1fr;gap:24px}
  .checkout-hero-media{display:none}
}
@media(max-width:680px){
  .checkout-preview .card{padding-top:0}
  .checkout-preview .progresso{margin-bottom:24px}
  .checkout-preview .progresso-mobile{
    border:0;
    border-bottom:1px solid rgba(255,255,255,.09);
    border-radius:0;
    background:transparent;
    color:#dfe3eb;
    text-align:left;
  }
  .checkout-preview .plano-card{padding:23px 19px 19px;border-radius:18px}
  .checkout-preview .plano-badge{top:19px;right:18px}
  .checkout-preview .opcao-btn{grid-template-columns:48px minmax(0,1fr) 20px;gap:10px}
  .checkout-preview .opcao-logo{width:48px;height:36px}
  .checkout-preview .opcao-valor{grid-column:2;font-size:10px;margin-top:-4px}
  .checkout-preview .opcao-check{grid-column:3;grid-row:1 / span 2}
  .checkout-preview .plano-botoes{grid-template-columns:1fr}
  .checkout-preview .btn-ver-canais{order:2}
  .checkout-preview .secao:not(#secao-planos){padding:20px 16px;border-radius:17px}
}


/* PACKTV-WEB-10-ASSINAR-EDITOR-PREMIUM-R2 — adicionais mais limpos e marca maior. */
.checkout-preview .opcao-btn{
  grid-template-columns:72px minmax(0,1fr) 24px;
  gap:14px;
  min-height:82px;
  padding:13px 0;
}
.checkout-preview .opcao-logo{
  width:72px;
  height:54px;
  padding:0;
  border:0;
  border-radius:12px;
  background:transparent;
  box-shadow:none;
  object-fit:contain;
}
.checkout-preview .opcao-copy{gap:4px!important}
.checkout-preview .opcao-copy strong{font-size:13px!important}
.checkout-preview .opcao-copy small{font-size:10.5px;line-height:1.42}
.checkout-preview .opcao-valor{
  display:block;
  margin-top:2px;
  color:#aeb5c2;
  font-size:10px;
  font-weight:700;
}
.checkout-preview .opcao-check{grid-column:3}
@media(max-width:760px){
  .checkout-preview .opcao-btn{
    grid-template-columns:64px minmax(0,1fr) 22px;
    gap:11px;
    min-height:76px;
  }
  .checkout-preview .opcao-logo{width:64px;height:48px}
  .checkout-preview .opcao-valor{grid-column:auto;margin-top:2px}
  .checkout-preview .opcao-check{grid-column:3;grid-row:1}
}
