/* =====================================================
   HOTBOYS · cena.php — FIRE DESIGN SYSTEM 🔥
   v3.0  |  Dark + Fire Identity
   Paleta: #0B0C0F (bg) + #E2382F→#FF6A00 (fire gradient)
   ===================================================== */

/* ——— 1. DESIGN TOKENS ————————————————————————————— */
:root {
  /* Backgrounds — ultra-dark */
  --hb-bg:          #0B0C0F;
  --hb-bg2:         #111216;
  --hb-bg3:         #181a1f;
  --hb-bg-card:     rgba(18,20,24,.92);
  --hb-bg-hover:    #1e2028;

  /* Fire Palette */
  --hb-red:         #E2382F;
  --hb-red-dark:    #b02923;
  --hb-red-glow:    rgba(226,56,47,0.55);
  --hb-orange:      #FF6A00;
  --hb-amber:       #FFC857;
  --hb-fire:        linear-gradient(90deg, #E2382F 0%, #FF6A00 100%);
  --hb-fire-soft:   linear-gradient(135deg, #E2382F 0%, #FF8A32 60%, #FFB347 100%);

  /* Text */
  --hb-text:        #F1F1F1;
  --hb-text-sec:    #9CA3AF;
  --hb-muted:       #6B7280;

  /* Grays */
  --hb-gray-100:    #e5e5e5;
  --hb-gray-200:    #b3b3b3;
  --hb-gray-300:    #808080;
  --hb-gray-400:    #666;
  --hb-gray-500:    #454545;

  /* Borders */
  --hb-border:      rgba(255,255,255,0.07);
  --hb-border-h:    rgba(255,255,255,0.15);

  /* Shadows */
  --hb-shadow-s:    0 2px 8px rgba(0,0,0,0.5);
  --hb-shadow-m:    0 4px 20px rgba(0,0,0,0.6);
  --hb-shadow-l:    0 8px 40px rgba(0,0,0,0.7);
  --hb-shadow-fire: 0 4px 24px rgba(226,56,47,0.30);
  --hb-glow-fire:   0 0 30px rgba(226,56,47,0.35), 0 0 60px rgba(255,106,0,0.15);

  /* Radius */
  --hb-r-sm:  4px;
  --hb-r-md:  8px;
  --hb-r-lg:  14px;

  /* Typography */
  --hb-font:    'Poppins', 'Roboto', Arial, sans-serif;
  --hb-heading: 'Poppins', 'Roboto', Arial, sans-serif;

  /* Motion */
  --hb-ease:   cubic-bezier(0.4,0,0.2,1);
  --hb-t-fast: 150ms;
  --hb-t-base: 250ms;
  --hb-t-slow: 400ms;

  /* Success */
  --hb-green: #4ade80;
}

/* ——— 2. GLOBAL BASE ——————————————————————————————— */
body.fundo-preto {
  background: var(--hb-bg) !important;
  color: var(--hb-text);
  font-family: var(--hb-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

*, *::before, *::after { box-sizing: border-box; }

.container.cena-nao-vip {
  background: transparent;
  padding: 0;
  max-width: 100%;
  width: 100%;
}

/* Hide legacy decorative elements */
a > img[src*="assine-cena"] { display: none !important; }
.icone-pimenta-titulo { display: none; }
.borda-rodape-linha { display: none; }

/* Legacy section titles — Fire accent */
h1.cena-titulo {
  font-family: var(--hb-heading);
  font-size: clamp(1.2rem, 3vw, 1.6rem);
  font-weight: 700;
  color: var(--hb-text);
  padding: 0 0 16px;
  margin: 0 0 24px;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-image: var(--hb-fire) 1 !important;
  border-left: none !important;
  display: flex;
  align-items: center;
  gap: 10px;
  letter-spacing: -0.01em;
}
h1.cena-titulo::before {
  content: '';
  width: 4px;
  height: 1.2em;
  background: var(--hb-fire);
  border-radius: 2px;
  flex-shrink: 0;
}

/* ——— 3. FULL-WIDTH LAYOUT ————————————————————————— */
.texto-cena {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}
.cena-video-espaco-largura-cheia {
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
}
.texto-cena > .col-lg-12 {
  padding: 0 !important;
}
.texto-cena .cena-apresentacao-texto {
  padding: 0 !important;
  max-width: 1200px;
  margin: 0 auto;
}
/* Player takes full inner width (remove sidebar split) */
.texto-cena .col-lg-8,
.texto-cena .col-md-7 {
  width: 100% !important;
  float: none !important;
  padding: 0 16px !important;
  max-width: 100% !important;
}
/* Sidebar (plans) moves below player — full width strip */
.cena-box-descricao {
  width: 100% !important;
  float: none !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: 24px 16px !important;
  background: transparent !important;
}
.icones-assine {
  padding: 0 !important;
}
.pd-10, .info-video {
  padding: 0 !important;
}

/* ——— 4. PLAYER ——————————————————————————————————— */
.hb-player-wrapper {
  position: relative;
  max-width: 1000px;
  margin: 0 auto 0;
  border-radius: 0;
  overflow: hidden;
  background: #000;
}
.hb-player-wrapper--desktop {
  border-radius: var(--hb-r-md);
  box-shadow: var(--hb-shadow-l);
  margin-bottom: 0;
}
.hb-player-wrapper--mobile {
  border-radius: 0;
  margin: 0 -15px;
  max-width: calc(100% + 30px);
}
.hb-player-container {
  position: relative;
  width: 100%;
  border-radius: inherit;
  overflow: hidden;
  background: #000;
}
.hb-player-wrapper--desktop .hb-player-container {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
}
.hb-player-wrapper--desktop .hb-player-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.hb-player-iframe {
  border: none;
  display: block;
}
.video-sprout { position: relative; }
.jmvplayer { border-radius: inherit; }

/* ——— 5. SCENE HEADER ————————————————————————————— */
.hb-scene-header {
  max-width: 1000px;
  margin: 0 auto;
  padding: 28px 0 20px;
  border: none;
  border-radius: 0;
  background: transparent;
}
.hb-scene-header--mobile {
  padding: 20px 4px 16px;
}
.hb-scene-title {
  font-family: var(--hb-heading);
  font-size: clamp(1.25rem, 4vw, 2rem);
  font-weight: 700;
  color: var(--hb-text);
  margin: 0 0 10px;
  line-height: 1.25;
  letter-spacing: -0.02em;
}
.hb-scene-excerpt {
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--hb-gray-200);
  margin: 0 0 16px;
  max-height: 3em;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  transition: max-height var(--hb-t-slow) var(--hb-ease);
}
.hb-scene-excerpt.has-more::after {
  content: 'Ler mais';
  position: absolute;
  bottom: 0;
  right: 0;
  padding-left: 40px;
  background: linear-gradient(90deg, transparent, var(--hb-bg) 30%);
  color: var(--hb-orange);
  font-weight: 600;
  font-size: 0.85rem;
}
.hb-scene-excerpt.expanded {
  max-height: none !important;
}
.hb-scene-excerpt.expanded::after {
  content: 'Ler menos';
  position: static;
  background: none;
  padding-left: 8px;
  display: inline;
}
.hb-scene-meta {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.hb-scene-meta__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.85rem;
  color: var(--hb-gray-300);
  padding: 6px 14px;
  background: var(--hb-bg2);
  border: 1px solid var(--hb-border);
  border-radius: 20px;
  transition: all var(--hb-t-base) var(--hb-ease);
}
.hb-scene-meta__item:hover {
  border-color: var(--hb-border-h);
  background: var(--hb-bg-hover);
}
.hb-scene-meta__icon {
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-size: 0.9em;
}
.hb-scene-meta__value {
  font-weight: 500;
}

/* ——— 6. SUBSCRIPTION PLANS — Fire CTA Strip ———————— */
.cena-mobile-plans {
  width: 100%;
  float: none;
  margin: 0;
  padding: 0;
  font-family: var(--hb-font);
}
.cena-mobile-plans__box {
  border-radius: var(--hb-r-lg);
  border: 1px solid var(--hb-border);
  background: var(--hb-bg2);
  padding: 24px;
  box-shadow: var(--hb-shadow-m);
  position: relative;
  overflow: hidden;
}
/* Subtle fire glow at top */
.cena-mobile-plans__box::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--hb-fire);
}
.cena-mobile-plans__title {
  text-align: center;
  font-family: var(--hb-heading);
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--hb-text);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin: 0 0 20px;
}
.cena-mobile-plans__title::after {
  content: '';
  display: block;
  width: 40px;
  height: 3px;
  background: var(--hb-fire);
  margin: 10px auto 0;
  border-radius: 2px;
}
.cena-mobile-plans__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 14px;
}
.cena-mobile-plans__card {
  background: var(--hb-bg3);
  border-radius: var(--hb-r-md);
  border: 1px solid var(--hb-border);
  padding: 18px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  transition: all var(--hb-t-base) var(--hb-ease);
  position: relative;
  overflow: hidden;
}
.cena-mobile-plans__card:hover {
  border-color: var(--hb-red);
  transform: translateY(-2px);
  box-shadow: var(--hb-shadow-fire);
}
.cena-mobile-plans__label {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--hb-gray-200);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.cena-mobile-plans__price {
  font-family: var(--hb-heading);
  font-size: 1.5rem;
  font-weight: 800;
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1.1;
}
.cena-mobile-plans__note {
  font-size: 0.7rem;
  color: var(--hb-gray-400);
  letter-spacing: 0.03em;
  margin-bottom: 10px;
}
.cena-mobile-plans__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 14px;
  border-radius: var(--hb-r-sm);
  font-weight: 700;
  font-size: 0.85rem;
  color: #fff;
  text-decoration: none;
  background: var(--hb-fire);
  letter-spacing: 0.08em;
  min-height: 44px;
  transition: all var(--hb-t-base) var(--hb-ease);
  box-shadow: none;
  border: none;
}
.cena-mobile-plans__cta:hover {
  filter: brightness(1.1);
  box-shadow: var(--hb-shadow-fire);
  color: #fff;
  text-decoration: none;
  transform: translateY(-1px);
}
@media (max-width: 360px) {
  .cena-mobile-plans__grid { grid-template-columns: 1fr; }
}

/* ——— 7. ELENCO / CAST — Horizontal Scroll Strip —— */
.hb-elenco-section {
  background: var(--hb-bg);
  padding: 48px 0 40px;
  position: relative;
  border-top: 1px solid var(--hb-border);
}
.hb-elenco-section::before { display: none; }
.hb-elenco-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.hb-elenco-header {
  margin-bottom: 28px;
}
.hb-elenco-titulo {
  font-family: var(--hb-heading);
  font-size: clamp(1.2rem, 3vw, 1.5rem);
  font-weight: 700;
  color: var(--hb-text);
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  background: transparent;
  border-radius: 0;
  border: none;
  margin: 0;
}
.hb-elenco-titulo i {
  font-size: 0.9em;
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
/* Horizontal scroll */
.hb-elenco-grid {
  display: flex;
  flex-wrap: nowrap;
  gap: 20px;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 12px;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scrollbar-color: var(--hb-gray-500) transparent;
  -webkit-overflow-scrolling: touch;
}
.hb-elenco-grid::-webkit-scrollbar { height: 4px; }
.hb-elenco-grid::-webkit-scrollbar-track { background: transparent; }
.hb-elenco-grid::-webkit-scrollbar-thumb { background: var(--hb-gray-500); border-radius: 2px; }
.hb-elenco-card {
  flex: 0 0 auto;
  text-align: center;
  scroll-snap-align: start;
}
.hb-elenco-link,
.hb-elenco-link-disabled {
  display: block;
  text-decoration: none;
  transition: transform var(--hb-t-base) var(--hb-ease);
}
.hb-elenco-link:hover {
  transform: translateY(-4px);
  text-decoration: none;
}
.hb-elenco-avatar-wrap {
  position: relative;
  width: 120px;
  height: 120px;
  margin: 0 auto 12px;
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid var(--hb-gray-500);
  background: #000;
  transition: all var(--hb-t-base) var(--hb-ease);
  box-shadow: var(--hb-shadow-s);
  animation: none !important;
}
.hb-elenco-link:hover .hb-elenco-avatar-wrap {
  border-color: var(--hb-orange);
  box-shadow: 0 0 0 4px rgba(255,106,0,0.35), var(--hb-shadow-m);
}
.hb-elenco-avatar {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transition: transform var(--hb-t-slow) var(--hb-ease);
}
.hb-elenco-link:hover .hb-elenco-avatar {
  transform: scale(1.08);
}
.hb-elenco-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(226,56,47,0.75), rgba(255,106,0,0.75));
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--hb-t-base) var(--hb-ease);
}
.hb-elenco-link:hover .hb-elenco-overlay { opacity: 1; }
.hb-elenco-overlay i {
  font-size: 2.2rem;
  color: #fff;
}
.hb-elenco-nome {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--hb-gray-100);
  margin: 0;
  max-width: 120px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  transition: color var(--hb-t-fast);
}
.hb-elenco-link:hover .hb-elenco-nome { color: var(--hb-amber); }
.hb-elenco-link-disabled .hb-elenco-nome { color: var(--hb-gray-400); }

@media (max-width: 768px) {
  .hb-elenco-section { padding: 32px 0 28px; }
  .hb-elenco-wrap { padding: 0 16px; }
  .hb-elenco-avatar-wrap { width: 96px; height: 96px; }
  .hb-elenco-nome { font-size: 0.78rem; max-width: 96px; }
}
@media (max-width: 480px) {
  .hb-elenco-avatar-wrap { width: 80px; height: 80px; border-width: 2px; }
  .hb-elenco-nome { font-size: 0.72rem; max-width: 80px; }
}

/* ——— 8. TAGS — Fire Pill Design ——————————————————— */
.hb-tags-section {
  background: var(--hb-bg);
  padding: 40px 0;
  position: relative;
  border-top: 1px solid var(--hb-border);
}
.hb-tags-section::before { display: none; }
.hb-tags-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.hb-tags-header { margin-bottom: 24px; }
.hb-tags-titulo {
  font-family: var(--hb-heading);
  font-size: clamp(1.2rem, 3vw, 1.5rem);
  font-weight: 700;
  color: var(--hb-text);
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  margin: 0;
}
.hb-tags-titulo i {
  font-size: 0.9em;
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hb-tags-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.hb-tag-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  background: var(--hb-bg2);
  border: 1px solid var(--hb-border);
  border-radius: 20px;
  color: var(--hb-gray-200);
  font-size: 0.85rem;
  font-weight: 500;
  text-decoration: none;
  transition: all var(--hb-t-base) var(--hb-ease);
}
.hb-tag-item i { font-size: 0.8em; color: var(--hb-gray-400); transition: color var(--hb-t-fast); }
.hb-tag-item:hover {
  background: var(--hb-fire);
  border-color: transparent;
  color: #fff;
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: var(--hb-shadow-fire);
}
.hb-tag-item:hover i { color: #fff; }
@media (max-width: 768px) {
  .hb-tags-section { padding: 28px 0; }
  .hb-tags-wrap { padding: 0 16px; }
  .hb-tag-item { font-size: 0.78rem; padding: 6px 12px; }
}

/* ——— 9. LEGACY CONTENT SECTIONS (Series, Photos) —— */
.card-img-top-cena,
.card-img-top-cenas {
  width: 100%;
  border-radius: var(--hb-r-md);
  transition: transform var(--hb-t-slow) var(--hb-ease), opacity var(--hb-t-base);
  aspect-ratio: 16/9;
  object-fit: cover;
}
.inicial_box_conteudo {
  margin-bottom: 20px;
  padding: 0 8px;
  float: left;
}
.inicial_box_conteudo > div {
  background: var(--hb-bg-card);
  border: 1px solid var(--hb-border);
  border-radius: var(--hb-r-md);
  overflow: hidden;
  transition: all var(--hb-t-base) var(--hb-ease);
}
.inicial_box_conteudo > div:hover {
  border-color: rgba(226,56,47,0.3);
  transform: translateY(-3px);
  box-shadow: var(--hb-shadow-m);
}
.inicial_box_conteudo > div:hover .card-img-top-cena {
  transform: scale(1.05);
}
.paginas-titulo-visualizacoes {
  padding: 12px 14px;
  background: var(--hb-bg-card);
}
.paginas-titulo {
  margin: 0;
}
.titulo-contos-home {
  font-family: var(--hb-font);
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--hb-gray-100) !important;
  text-decoration: none !important;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.titulo-contos-home:hover { color: var(--hb-text) !important; }
.titulo-contos-home h4 {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  margin: 0;
}
.cenas-total-icones {
  margin-top: 8px;
}
.cenas-duracao-video,
.cenas-visualizacao {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--hb-gray-300);
  font-size: 0.8rem;
}
.cenas-duracao-video i,
.cenas-visualizacao i {
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-size: 0.85em;
}
.cenas-duracao-video .texto,
.cenas-visualizacao .texto { margin: 0; font-size: inherit; }

/* Photos gallery */
#cena_fotos a {
  display: block;
  border-radius: var(--hb-r-md);
  overflow: hidden;
}
.maisfotos { position: relative; }
.total-assine-liberar {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.7);
  border-radius: var(--hb-r-md);
}
.quant-fotos-assine {
  font-size: 1.1rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 8px;
}
.assine-liberar {
  font-size: 0.8rem;
  color: var(--hb-gray-200);
  display: flex;
  align-items: center;
  gap: 6px;
}
.assine-liberar img { width: 16px; height: auto; filter: brightness(2); }
.imagem-random-modelo { position: relative; }
.imagem-random-modelo .fundo { display: none; }

/* Item video preview */
.item-video { position: relative; display: block; overflow: hidden; border-radius: var(--hb-r-md); }
.item-video span.far {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
  color: rgba(255,255,255,0.85); z-index: 3; transition: opacity var(--hb-t-base);
  text-shadow: 0 2px 8px rgba(0,0,0,0.6);
}
.item-video:hover span.far { opacity: 0; }
.item-video video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 2; }
.item-video-gif { position: relative; display: block; overflow: hidden; border-radius: var(--hb-r-md); }
.preview-video-gif {
  position: absolute; inset: 0; width: 100% !important; height: 100% !important;
  object-fit: cover; z-index: 2;
}

/* ——— 10. MODELO CENAS SECTION ————————————————————— */
.hb-modelo-cenas-section {
  background: var(--hb-bg);
  padding: 48px 0;
  position: relative;
  border-top: 1px solid var(--hb-border);
}
.hb-modelo-cenas-section::before { display: none; }
.hb-modelo-cenas-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.hb-modelo-cenas-header { margin-bottom: 24px; }
.hb-modelo-cenas-info-row {
  display: flex;
  align-items: center;
  gap: 16px;
}
.hb-modelo-cenas-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid var(--hb-gray-500);
  box-shadow: var(--hb-shadow-s);
  flex-shrink: 0;
  transition: border-color var(--hb-t-base);
}
.hb-modelo-cenas-info-row:hover .hb-modelo-cenas-avatar {
  border-color: var(--hb-orange);
}
.hb-modelo-cenas-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.hb-modelo-cenas-info-text {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}
.hb-modelo-cenas-titulo {
  font-family: var(--hb-heading);
  font-size: clamp(1.1rem, 2.5vw, 1.35rem);
  font-weight: 700;
  color: var(--hb-text);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  line-height: 1.2;
}
.hb-modelo-cenas-titulo i {
  font-size: 0.85em;
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hb-modelo-cenas-badge {
  font-size: 0.8rem;
  font-weight: 600;
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hb-modelo-cenas-grid {
  display: flex;
  flex-wrap: nowrap;
  gap: 16px;
  overflow-x: auto;
  padding-bottom: 8px;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scrollbar-color: var(--hb-gray-500) transparent;
  -webkit-overflow-scrolling: touch;
}
.hb-modelo-cenas-grid::-webkit-scrollbar { height: 4px; }
.hb-modelo-cenas-grid::-webkit-scrollbar-track { background: transparent; }
.hb-modelo-cenas-grid::-webkit-scrollbar-thumb { background: var(--hb-gray-500); border-radius: 2px; }
.hb-modelo-cena-card {
  flex: 0 0 auto;
  min-width: 0;
  padding: 0;
  scroll-snap-align: start;
}
.hb-modelo-cena-card.col-lg-3 {
  flex: 0 0 240px;
  max-width: 240px;
}
.hb-modelo-cena-link {
  display: block;
  text-decoration: none;
  background: var(--hb-bg-card);
  border: 1px solid var(--hb-border);
  border-radius: var(--hb-r-md);
  overflow: hidden;
  transition: all var(--hb-t-base) var(--hb-ease);
  height: 100%;
}
.hb-modelo-cena-link:hover {
  border-color: rgba(226,56,47,0.3);
  transform: translateY(-3px) scale(1.02);
  box-shadow: var(--hb-shadow-m);
  text-decoration: none;
}
.hb-modelo-cena-thumb {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  overflow: hidden;
  background: #000;
}
.hb-modelo-cena-img {
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform var(--hb-t-slow) var(--hb-ease);
}
.hb-modelo-cena-link:hover .hb-modelo-cena-img { transform: scale(1.08); }
.hb-modelo-cena-video {
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  z-index: 2;
}
.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.is-visible { opacity: 1; visibility: visible; transition: opacity 0.3s ease-in-out; }
.hb-modelo-cena-thumb video,
.hb-modelo-cena-thumb .preview-video-gif {
  position: absolute !important; top: 0 !important; left: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important;
}
.hb-modelo-cena-thumb video[width] { width: 100% !important; height: 100% !important; }
.hb-modelo-cena-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(226,56,47,0.4), rgba(255,106,0,0.3));
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--hb-t-base) var(--hb-ease);
  z-index: 5;
}
.hb-modelo-cena-link:hover .hb-modelo-cena-overlay { opacity: 1; }
.hb-modelo-cena-overlay i {
  font-size: 2.8rem;
  color: #fff;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.5));
}
.hb-modelo-header-badge {
  display: inline-flex;
  align-items: center;
  background: var(--hb-fire);
  color: #fff;
  font-size: 0.8rem;
  font-weight: 700;
  padding: 8px 16px;
  border-radius: var(--hb-r-sm);
  box-shadow: var(--hb-shadow-fire);
}
.hb-modelo-cena-info { padding: 14px; }
.hb-modelo-cena-titulo {
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--hb-gray-100);
  margin: 0 0 8px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.3em;
}
.hb-modelo-cena-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.78rem;
  color: var(--hb-gray-300);
}
.hb-modelo-cena-meta span { display: inline-flex; align-items: center; gap: 4px; }
.hb-modelo-cena-meta i {
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

@media (max-width: 768px) {
  .hb-modelo-cenas-section { padding: 32px 0; }
  .hb-modelo-cenas-wrap { padding: 0 16px; }
  .hb-modelo-cenas-avatar { width: 52px; height: 52px; }
  .hb-modelo-cena-card.col-xs-12 { flex: 0 0 85vw !important; max-width: 85vw !important; }
  .hb-modelo-cena-card.col-xs-6 { flex: 0 0 45vw !important; max-width: 45vw !important; }
  .hb-modelo-cena-card .hb-modelo-cena-img { display: block !important; visibility: visible !important; opacity: 1 !important; }
  .hb-modelo-cena-info { padding: 10px; }
  .hb-modelo-cena-titulo { font-size: 0.82rem; }
}
@media (max-width: 480px) {
  .hb-modelo-cenas-avatar { width: 44px; height: 44px; }
  .hb-modelo-cena-card.col-xs-6 { flex: 0 0 42vw !important; max-width: 42vw !important; }
}

/* ——— 11. ASSISTA TAMBÉM — Fire Row ——————————————— */
.hb-assista-tambem-section {
  background: var(--hb-bg);
  padding: 48px 0;
  position: relative;
  border-top: 1px solid var(--hb-border);
}
.hb-assista-tambem-section::before { display: none; }
.hb-assista-tambem-header {
  text-align: left;
  margin-bottom: 24px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px;
}
.hb-assista-tambem-titulo {
  font-family: var(--hb-heading);
  font-size: clamp(1.2rem, 3vw, 1.5rem);
  font-weight: 700;
  color: var(--hb-text);
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  margin: 0;
}
.hb-assista-tambem-titulo i {
  font-size: 0.9em;
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hb-assista-tambem-grid {
  display: flex;
  flex-wrap: nowrap;
  gap: 14px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px 12px;
  overflow-x: auto;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scrollbar-color: var(--hb-gray-500) transparent;
  -webkit-overflow-scrolling: touch;
}
.hb-assista-tambem-grid::-webkit-scrollbar { height: 4px; }
.hb-assista-tambem-grid::-webkit-scrollbar-track { background: transparent; }
.hb-assista-tambem-grid::-webkit-scrollbar-thumb { background: var(--hb-gray-500); border-radius: 2px; }
.hb-assista-card {
  flex: 0 0 auto;
  min-width: 0;
  padding: 0;
  scroll-snap-align: start;
}
.hb-assista-card.col-lg-4 {
  flex: 0 0 280px;
  max-width: 280px;
}
.hb-assista-link {
  display: block;
  text-decoration: none;
  background: var(--hb-bg-card);
  border: 1px solid var(--hb-border);
  border-radius: var(--hb-r-md);
  overflow: hidden;
  transition: all var(--hb-t-base) var(--hb-ease);
  height: 100%;
}
.hb-assista-link:hover {
  border-color: rgba(226,56,47,0.3);
  transform: translateY(-3px) scale(1.02);
  box-shadow: var(--hb-shadow-m);
  text-decoration: none;
}
.hb-assista-thumb {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  overflow: hidden;
  background: #000;
}
.hb-assista-img {
  position: absolute;
  top: 0; left: 0; width: 100%; height: 100%;
  object-fit: cover;
  transition: transform var(--hb-t-slow) var(--hb-ease);
}
.hb-assista-thumb video,
.hb-assista-thumb .preview-video-gif {
  position: absolute !important; top: 0 !important; left: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important;
}
.hb-assista-thumb video[width] { width: 100% !important; height: 100% !important; }
.hb-assista-link:hover .hb-assista-img { transform: scale(1.08); }
.hb-assista-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(226,56,47,0.4), rgba(255,106,0,0.3));
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--hb-t-base) var(--hb-ease);
  z-index: 5;
}
.hb-assista-link:hover .hb-assista-overlay { opacity: 1; }
.hb-assista-overlay i {
  font-size: 2.8rem;
  color: #fff;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.5));
}
.hb-assista-info { padding: 14px; }
.hb-assista-titulo {
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--hb-gray-100);
  margin: 0 0 8px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.3em;
}
.hb-assista-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 0.78rem;
  color: var(--hb-gray-300);
}
.hb-assista-meta span { display: inline-flex; align-items: center; gap: 4px; }
.hb-assista-meta i {
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-size: 0.9em;
}
.hb-assista-comentarios,
.hb-assista-duracao { transition: color var(--hb-t-fast); }
.hb-assista-link:hover .hb-assista-meta span { color: var(--hb-gray-200); }

@media (max-width: 768px) {
  .hb-assista-tambem-section { padding: 32px 0; }
  .hb-assista-tambem-grid { padding: 0 16px 10px; gap: 12px; }
  .hb-assista-tambem-header { padding: 0 16px; }
  .hb-assista-card.col-xs-12 { flex: 0 0 85vw; max-width: 85vw; }
  .hb-assista-card.col-xs-6 { flex: 0 0 45vw; max-width: 45vw; }
  .hb-assista-card .hb-assista-img { display: block !important; visibility: visible !important; opacity: 1 !important; }
  .hb-assista-info { padding: 10px; }
  .hb-assista-titulo { font-size: 0.82rem; min-height: auto; }
}
@media (max-width: 480px) {
  .hb-assista-tambem-grid { gap: 10px; }
  .hb-assista-card.col-xs-6 { flex: 0 0 42vw; max-width: 42vw; }
}

/* ——— 12. COMMENTS ————————————————————————————————— */
.hb-comentarios-section {
  background: var(--hb-bg);
  padding: 48px 0 64px;
  position: relative;
  border-top: 1px solid var(--hb-border);
}
.hb-comentarios-section::before { display: none; }
.hb-comentarios-wrap {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 20px;
}
.hb-comentarios-header { margin-bottom: 28px; }
.hb-comentarios-titulo {
  font-family: var(--hb-heading);
  font-size: clamp(1.2rem, 3vw, 1.5rem);
  font-weight: 700;
  color: var(--hb-text);
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  margin: 0;
}
.hb-comentarios-titulo i {
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: none !important;
}
.hb-comentarios-lista {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 28px;
}
.hb-comentario-item {
  display: flex;
  gap: 14px;
  background: var(--hb-bg2);
  border: 1px solid var(--hb-border);
  border-radius: var(--hb-r-md);
  padding: 18px;
  transition: border-color var(--hb-t-base);
  position: relative;
}
.hb-comentario-item::before { display: none; }
.hb-comentario-item:hover { border-color: var(--hb-border-h); }
.hb-comentario-avatar { flex-shrink: 0; width: 40px; height: 40px; }
.hb-avatar-img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--hb-gray-500);
}
.hb-comentario-conteudo { flex: 1; min-width: 0; }
.hb-comentario-header-user {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.hb-comentario-nome { font-size: 0.9rem; font-weight: 700; color: var(--hb-text); }
.hb-comentario-badge {
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 3px 8px;
  background: var(--hb-fire);
  border-radius: var(--hb-r-sm);
  color: #fff;
  text-transform: uppercase;
}
.hb-comentario-local {
  font-size: 0.75rem;
  color: var(--hb-gray-400);
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.hb-comentario-local i {
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-size: 0.85em;
}
.hb-comentario-texto {
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--hb-gray-200);
  margin-bottom: 10px;
  word-wrap: break-word;
}
.hb-comentario-footer {
  display: flex;
  align-items: center;
  gap: 14px;
}
.hb-comentario-tempo { font-size: 0.72rem; color: var(--hb-gray-400); }
.hb-comentario-responder {
  background: none;
  border: none;
  color: var(--hb-orange);
  font-size: 0.8rem;
  font-weight: 600;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: var(--hb-r-sm);
  transition: background var(--hb-t-fast);
}
.hb-comentario-responder:hover { background: rgba(226,56,47,0.1); }
.hb-comentario-resposta {
  display: flex;
  gap: 10px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--hb-border);
  margin-left: 8px;
}
.hb-comentario-resposta .hb-comentario-avatar { width: 32px; height: 32px; }
.hb-comentario-resposta .hb-comentario-texto { font-size: 0.85rem; }
.hb-comentarios-load-more { text-align: center; margin: 28px 0; }
.hb-load-more-btn {
  background: var(--hb-bg3);
  border: 1px solid var(--hb-border);
  color: var(--hb-text);
  font-size: 0.88rem;
  font-weight: 600;
  padding: 12px 28px;
  border-radius: var(--hb-r-md);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all var(--hb-t-base) var(--hb-ease);
}
.hb-load-more-btn .btn-text,
.hb-load-more-btn .btn-loading { display: flex; align-items: center; gap: 6px; }
.hb-load-more-btn .comentarios-restantes { font-size: 0.8rem; opacity: 0.6; }
.hb-load-more-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.hb-load-more-btn:not(:disabled):hover {
  background: var(--hb-bg-hover);
  border-color: var(--hb-border-h);
  transform: translateY(-1px);
}
.hb-comentarios-empty {
  text-align: center;
  padding: 48px 20px;
  background: var(--hb-bg2);
  border-radius: var(--hb-r-md);
  border: 1px solid var(--hb-border);
  margin-bottom: 24px;
}
.hb-comentarios-empty-icon { font-size: 3rem; color: var(--hb-gray-500); margin-bottom: 16px; }
.hb-comentarios-empty-title { font-size: 1.3rem; font-weight: 700; color: var(--hb-text); margin-bottom: 8px; }
.hb-comentarios-empty-text { font-size: 0.9rem; color: var(--hb-gray-300); margin: 0; }
.hb-comentarios-cta {
  background: var(--hb-bg2);
  border: 1px solid var(--hb-border);
  border-radius: var(--hb-r-lg);
  padding: 28px 24px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.hb-comentarios-cta::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: var(--hb-fire);
}
.hb-comentarios-cta-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.hb-comentarios-cta-icon {
  width: 56px;
  height: 56px;
  background: var(--hb-fire);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  color: #fff;
  box-shadow: var(--hb-shadow-fire);
}
.hb-comentarios-cta-text h3 { font-size: 1.2rem; font-weight: 700; color: var(--hb-text); margin: 0 0 4px; }
.hb-comentarios-cta-text p { font-size: 0.9rem; color: var(--hb-gray-300); margin: 0; }
.hb-comentarios-cta-btn {
  background: var(--hb-fire);
  border: none;
  color: #fff;
  font-size: 0.95rem;
  font-weight: 700;
  padding: 14px 32px;
  border-radius: var(--hb-r-sm);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all var(--hb-t-base) var(--hb-ease);
}
.hb-comentarios-cta-btn:hover {
  filter: brightness(1.1);
  transform: translateY(-2px);
  box-shadow: var(--hb-shadow-fire);
}
/* Comments Modal */
.hb-comentarios-modal .modal-content {
  background: var(--hb-bg2);
  border: 1px solid var(--hb-border-h);
  border-radius: var(--hb-r-lg);
  color: var(--hb-text);
}
.hb-comentarios-modal .modal-header {
  border-bottom: 1px solid var(--hb-border);
  padding: 20px 24px;
}
.hb-comentarios-modal .modal-title {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--hb-text);
  display: flex;
  align-items: center;
  gap: 8px;
}
.hb-comentarios-modal .modal-title i {
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hb-comentarios-modal .close { color: var(--hb-text); opacity: 0.5; text-shadow: none; }
.hb-comentarios-modal .close:hover { opacity: 1; }
.hb-comentarios-modal .modal-body { padding: 24px; }
.hb-comentarios-modal .modal-body p { font-size: 0.95rem; line-height: 1.6; color: var(--hb-gray-200); margin-bottom: 16px; }
.hb-modal-benefits { list-style: none; padding: 0; margin: 0; }
.hb-modal-benefits li {
  display: flex; align-items: center; gap: 10px;
  padding: 8px 0; font-size: 0.9rem; color: var(--hb-gray-200);
}
.hb-modal-benefits li i { color: var(--hb-green); }
.hb-comentarios-modal .modal-footer {
  border-top: 1px solid var(--hb-border);
  padding: 16px 24px;
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}
.hb-comentarios-modal .btn-secondary {
  background: var(--hb-bg3);
  border: 1px solid var(--hb-border);
  color: var(--hb-text);
  padding: 10px 20px;
  border-radius: var(--hb-r-sm);
}
.hb-modal-assine-btn {
  background: var(--hb-fire) !important;
  border: none !important;
  color: #fff !important;
  font-weight: 700;
  padding: 10px 24px;
  border-radius: var(--hb-r-sm);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  text-decoration: none;
  transition: all var(--hb-t-base) var(--hb-ease);
}
.hb-modal-assine-btn:hover { filter: brightness(1.1); box-shadow: var(--hb-shadow-fire); }

@media (max-width: 768px) {
  .hb-comentarios-section { padding: 32px 0 48px; }
  .hb-comentarios-wrap { padding: 0 16px; }
  .hb-comentario-item { padding: 14px; gap: 10px; }
  .hb-comentario-avatar { width: 36px; height: 36px; }
  .hb-comentario-header-user { flex-direction: column; align-items: flex-start; gap: 4px; }
  .hb-comentarios-cta { padding: 20px 16px; }
}

/* ——— 13. EXTERNAL CONVERSION MODAL ——————————————— */
.hb-external-conversion-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, visibility 0.35s ease;
  pointer-events: none;
}
.hb-external-conversion-modal.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.hb-external-conversion-modal::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.hb-external-conversion-container {
  position: relative;
  z-index: 1;
  background: var(--hb-bg2);
  border: 1px solid var(--hb-border-h);
  border-radius: var(--hb-r-lg);
  padding: 40px 32px 36px;
  max-width: 420px;
  width: 100%;
  text-align: center;
  transform: scale(0.92) translateY(20px);
  transition: transform 0.35s cubic-bezier(0.34,1.56,0.64,1);
  box-shadow: var(--hb-shadow-l), 0 0 80px rgba(226,56,47,0.1);
  overflow: hidden;
}
/* Fire accent line at top of modal */
.hb-external-conversion-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--hb-fire);
}
.hb-external-conversion-modal.active .hb-external-conversion-container {
  transform: scale(1) translateY(0);
}
.hb-external-close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 32px;
  height: 32px;
  cursor: pointer;
  z-index: 10;
  border-radius: 50%;
  background: var(--hb-bg3);
  border: 1px solid var(--hb-border);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--hb-t-fast);
}
.hb-external-close:hover { background: var(--hb-bg-hover); }
.hb-external-close::before,
.hb-external-close::after {
  content: '';
  position: absolute;
  width: 14px;
  height: 2px;
  background: var(--hb-gray-200);
  border-radius: 1px;
}
.hb-external-close::before { transform: rotate(45deg); }
.hb-external-close::after { transform: rotate(-45deg); }
.hb-external-header { margin-bottom: 28px; }
.hb-external-icon {
  width: 56px;
  height: 56px;
  background: var(--hb-fire);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 18px;
  box-shadow: var(--hb-glow-fire);
  animation: hb-icon-pulse 2.5s ease-in-out infinite;
}
.hb-external-icon i { font-size: 1.5rem; color: #fff; }
.hb-external-title {
  font-family: var(--hb-heading);
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--hb-text);
  margin: 0 0 10px;
  line-height: 1.25;
}
.hb-external-subtitle {
  font-size: 0.9rem;
  color: var(--hb-gray-300);
  line-height: 1.5;
  margin: 0;
}
.hb-external-body {}
.hb-external-social {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.82rem;
  color: var(--hb-gray-300);
  padding: 8px 18px;
  background: var(--hb-bg3);
  border: 1px solid var(--hb-border);
  border-radius: 20px;
  margin-bottom: 24px;
}
.hb-external-social i {
  background: var(--hb-fire);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-size: 0.9em;
}
.hb-external-social strong { color: var(--hb-text); }
.hb-external-ctas {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 20px;
}
.hb-conversion-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 16px 20px;
  border-radius: var(--hb-r-md);
  text-decoration: none;
  font-weight: 700;
  transition: all var(--hb-t-base) var(--hb-ease);
  gap: 4px;
}
.hb-conversion-btn:hover { text-decoration: none; transform: translateY(-2px); }
.hb-conversion-trial {
  background: var(--hb-fire);
  color: #fff;
  box-shadow: var(--hb-shadow-fire);
  animation: hb-cta-glow 2s ease-in-out infinite;
}
.hb-conversion-trial:hover {
  filter: brightness(1.1);
  box-shadow: 0 6px 28px rgba(226,56,47,0.5);
  color: #fff;
}
.hb-conversion-monthly {
  background: var(--hb-bg3);
  border: 1px solid var(--hb-border);
  color: var(--hb-text);
}
.hb-conversion-monthly:hover {
  border-color: var(--hb-border-h);
  background: var(--hb-bg-hover);
  color: var(--hb-text);
}
.hb-conversion-btn-label { font-size: 1rem; }
.hb-conversion-btn-price { font-size: 0.8rem; opacity: 0.75; font-weight: 500; }
.hb-external-trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 0.75rem;
  color: var(--hb-gray-400);
  margin-bottom: 20px;
}
.hb-external-trust i { color: var(--hb-green); }
.hb-external-continue {
  background: none;
  border: none;
  color: var(--hb-gray-400);
  font-size: 0.82rem;
  cursor: pointer;
  padding: 8px;
  transition: color var(--hb-t-fast);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.hb-external-continue:hover { color: var(--hb-gray-200); }

@media (max-width: 480px) {
  .hb-external-conversion-container { padding: 32px 20px 28px; }
  .hb-external-title { font-size: 1.25rem; }
  .hb-external-subtitle { font-size: 0.82rem; }
  .hb-conversion-btn { padding: 14px 16px; }
  .hb-conversion-btn-label { font-size: 0.9rem; }
}
@media (max-height: 600px) {
  .hb-external-icon { width: 44px; height: 44px; margin-bottom: 12px; }
  .hb-external-icon i { font-size: 1.2rem; }
  .hb-external-header { margin-bottom: 16px; }
  .hb-external-title { font-size: 1.2rem; }
  .hb-external-subtitle br { display: none; }
}
@media (max-width: 768px) and (orientation: landscape) {
  .hb-external-ctas { flex-direction: row; }
  .hb-external-ctas .hb-conversion-btn { flex: 1; }
}

/* ——— 14. CONVERSION OVERLAY (On Player) ——————————— */
.hb-conversion-overlay {
  position: absolute;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.8);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease;
  border-radius: inherit;
}
.hb-conversion-overlay.active { opacity: 1; visibility: visible; }
.hb-conversion-overlay__content {
  text-align: center;
  padding: 32px;
  max-width: 400px;
}
.hb-conversion-overlay__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 36px;
  height: 36px;
  cursor: pointer;
  background: rgba(255,255,255,0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  color: #fff;
  font-size: 1.2rem;
  z-index: 10;
  transition: background var(--hb-t-fast);
}
.hb-conversion-overlay__close:hover { background: rgba(255,255,255,0.2); }

/* ——— 15. REPORT ERROR MODAL —————————————————————— */
.modal-fade .modal-content,
#exampleModal .modal-content {
  background: var(--hb-bg2);
  border: 1px solid var(--hb-border);
  border-radius: var(--hb-r-lg);
  color: var(--hb-text);
}
#exampleModal .modal-header {
  border-bottom: 1px solid var(--hb-border);
}
.contato_email-titulo {
  font-family: var(--hb-heading);
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--hb-text);
}
.botao-vermelho-enviar input {
  background: var(--hb-fire);
  border: none;
  color: #fff;
  padding: 12px 28px;
  border-radius: var(--hb-r-sm);
  font-weight: 700;
  cursor: pointer;
  transition: filter var(--hb-t-fast);
}
.botao-vermelho-enviar input:hover { filter: brightness(1.1); }

/* ——— 16. FOOTER SPACING ——————————————————————————— */
.mt-12 { margin-top: 0 !important; }

/* ——— 17. ANIMATIONS & FIRE EFFECTS ——————————————— */

/* Subtle fire icon pulse */
@keyframes hb-icon-pulse {
  0%, 100% { box-shadow: 0 0 20px rgba(226,56,47,0.3), 0 0 40px rgba(255,106,0,0.1); }
  50% { box-shadow: 0 0 35px rgba(226,56,47,0.5), 0 0 70px rgba(255,106,0,0.2); }
}

/* CTA glow pulse */
@keyframes hb-cta-glow {
  0%, 100% { box-shadow: 0 4px 20px rgba(226,56,47,0.3); }
  50% { box-shadow: 0 4px 30px rgba(226,56,47,0.5), 0 0 50px rgba(255,106,0,0.15); }
}

/* Section fade in */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

.hb-elenco-section,
.hb-tags-section,
.hb-modelo-cenas-section,
.hb-assista-tambem-section,
.hb-comentarios-section {
  animation: fadeInUp 0.5s var(--hb-ease) forwards;
}

/* Smooth page scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--hb-bg); }
::-webkit-scrollbar-thumb {
  background: var(--hb-gray-500);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover { background: var(--hb-gray-400); }
html { scrollbar-width: thin; scrollbar-color: var(--hb-gray-500) var(--hb-bg); }

/* Focus visible for accessibility */
*:focus-visible {
  outline: 2px solid var(--hb-orange);
  outline-offset: 2px;
}

/* Override any remaining inline theme colors */
[style*="background-color: #262626"] {
  background-color: transparent !important;
}

/* ——— 18. INLINE STYLE OVERRIDES FOR CTA BUTTONS —— */
/* Override legacy inline gradient on CTA buttons */
a.cena-mobile-plans__cta[style] {
  background: var(--hb-fire) !important;
  border: none !important;
}
a.cena-mobile-plans__cta[style]:hover {
  filter: brightness(1.1) !important;
  box-shadow: var(--hb-shadow-fire) !important;
}
