/*
Theme Name: JaeJogo Child
Template: flatsome
Description: Tema filho para site de slots e cassino online JaeJogo
Author: Senior Dev
Version: 1.0
*/

/* Cores base do Brasil: verde, amarelo, azul */
:root {
  --brazil-green: #009b3a;
  --brazil-yellow: #fedf00;
  --brazil-blue: #002776;

  --neon-green: #39ff14;
  --neon-yellow: #fff700;
  --neon-blue: #00e5ff;

  --overlay-dark: rgba(0, 0, 0, 0.6);
  --card-outline-neon: var(--neon-blue);
  --cta-bold-neon-bg: var(--neon-yellow);
  --cta-bold-neon-color: var(--brazil-blue);
}

/* Reset básico para o child theme */
body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  color: var(--brazil-blue);
  background: #fff;
}

/* HERO OVERLAY SECTION */
.hero-overlay {
  position: relative;
  height: 600px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: var(--brazil-yellow);
  overflow: hidden;
}
.hero-bg-image {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background-size: cover;
  background-position: center center;
  filter: brightness(0.5) contrast(1.1);
  z-index: 1;
}
.hero-overlay::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--overlay-dark);
  z-index: 2;
}
.hero-content {
  position: relative;
  z-index: 3;
  max-width: 90%;
  max-width: 700px;
  padding: 0 20px;
}
.hero-content h1 {
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  font-size: 3.5rem;
  line-height: 1.1;
  margin-bottom: 0.5em;
  text-shadow: 0 0 12px var(--neon-yellow);
}
.hero-content p {
  font-size: 1.25rem;
  margin-bottom: 1.5em;
  text-shadow: 0 0 8px var(--neon-yellow);
  font-weight: 500;
}
.hero-content .button-cta {
  background-color: var(--cta-bold-neon-bg);
  color: var(--cta-bold-neon-color);
  font-weight: 700;
  font-size: 1.2rem;
  padding: 0.75em 2em;
  border-radius: 40px;
  box-shadow: 0 0 15px var(--neon-yellow);
  text-decoration: none;
  display: inline-block;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
.hero-content .button-cta:hover,
.hero-content .button-cta:focus {
  background-color: var(--neon-yellow);
  box-shadow: 0 0 25px var(--neon-yellow);
  color: var(--brazil-blue);
  outline: none;
}

/* BONUS EXPLAINER */
.bonus-explainer {
  background: linear-gradient(135deg, var(--brazil-green) 0%, var(--brazil-yellow) 100%);
  color: var(--brazil-blue);
  padding: 3em 1em;
  text-align: center;
}
.bonus-explainer h2 {
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  font-size: 2.75rem;
  margin-bottom: 1rem;
}
.bonus-explainer p {
  font-size: 1.2rem;
  max-width: 700px;
  margin: 0 auto 2rem auto;
}

/* BENEFITS CARDS (outline neon) */
.benefits-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
  margin: 3em 1em;
}
.benefits-cards .card {
  flex: 1 1 280px;
  border: 2px solid var(--card-outline-neon);
  border-radius: 20px;
  padding: 2em 1.5em;
  background: #00000010;
  color: var(--brazil-blue);
  box-shadow: 0 0 10px var(--card-outline-neon);
  transition: box-shadow 0.3s ease;
}
.benefits-cards .card:hover {
  box-shadow: 0 0 20px var(--card-outline-neon);
}
.benefits-cards .card h3 {
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  font-size: 1.8rem;
  margin-bottom: 0.5em;
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.benefits-cards .card p {
  font-size: 1rem;
  line-height: 1.4;
}

/* FAQ SECTION */
.faq-section {
  background: var(--brazil-blue);
  color: var(--brazil-yellow);
  padding: 3em 1em;
  max-width: 900px;
  margin: 0 auto 3em auto;
  border-radius: 15px;
}
.faq-section h2 {
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  font-size: 2.5rem;
  margin-bottom: 1.5em;
  text-align: center;
}
.faq-item {
  margin-bottom: 1.25em;
}
.faq-item summary {
  font-weight: 600;
  font-size: 1.1rem;
  cursor: pointer;
  list-style: none;
  outline: none;
  padding: 0.5em;
  border-radius: 10px;
  background: var(--neon-blue);
  color: var(--brazil-blue);
  box-shadow: 0 0 8px var(--neon-blue);
  user-select: none;
}
.faq-item[open] summary {
  background: var(--neon-yellow);
  color: var(--brazil-blue);
  box-shadow: 0 0 12px var(--neon-yellow);
}
.faq-item p {
  margin: 0.5em 0 0 1em;
  font-size: 1rem;
  color: var(--brazil-yellow);
}

/* STEPS SECTION */
.steps-section {
  background: linear-gradient(45deg, var(--brazil-yellow), var(--brazil-green));
  color: var(--brazil-blue);
  padding: 3em 1em;
  max-width: 900px;
  margin: 0 auto 3em auto;
  border-radius: 15px;
}
.steps-section h2 {
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  font-size: 2.5rem;
  margin-bottom: 2rem;
  text-align: center;
}
.steps-list {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
}
.step-item {
  background: #fff;
  border-radius: 15px;
  padding: 1.5em 1.5em 1.5em 3.5em;
  color: var(--brazil-blue);
  position: relative;
  box-shadow: 0 0 8px var(--brazil-green);
  font-weight: 600;
  font-size: 1.1rem;
}
.step-item::before {
  content: counter(step-counter);
  counter-increment: step-counter;
  position: absolute;
  left: 1em;
  top: 50%;
  transform: translateY(-50%);
  background: var(--neon-yellow);
  color: var(--brazil-blue);
  width: 2.5em;
  height: 2.5em;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.2rem;
  box-shadow: 0 0 10px var(--neon-yellow);
}
.steps-list {
  counter-reset: step-counter;
}

/* BRAND HIGHLIGHTS */
.brand-highlights {
  background: var(--brazil-green);
  color: var(--brazil-yellow);
  text-align: center;
  padding: 3em 1em;
  border-radius: 15px;
  margin-bottom: 3em;
}
.brand-highlights h2 {
  font-family: 'Orbitron', sans-serif;
  font-weight: 700;
  font-size: 2.5rem;
  margin-bottom: 1rem;
}
.brand-highlights p {
  max-width: 700px;
  margin: 0 auto;
  font-size: 1.2rem;
  font-weight: 500;
}

/* CTA FOOTER */
.cta-footer {
  background: var(--brazil-blue);
  color: var(--brazil-yellow);
  text-align: center;
  padding: 3em 1em;
}
.cta-footer a.button-cta {
  background-color: var(--neon-yellow);
  color: var(--brazil-blue);
  font-weight: 700;
  font-size: 1.3rem;
  padding: 1em 3em;
  border-radius: 50px;
  box-shadow: 0 0 20px var(--neon-yellow);
  text-decoration: none;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
.cta-footer a.button-cta:hover,
.cta-footer a.button-cta:focus {
  background-color: #fff700cc;
  box-shadow: 0 0 30px var(--neon-yellow);
  color: var(--brazil-blue);
  outline: none;
}

/* MENU STYLE cta-right */
.header-nav .nav > li:last-child {
  margin-left: auto;
}
.header-nav .nav > li:last-child > a {
  background-color: var(--neon-yellow);
  color: var(--brazil-blue);
  font-weight: 700;
  border-radius: 50px;
  padding: 0.6em 1.8em;
  box-shadow: 0 0 15px var(--neon-yellow);
  transition: background-color 0.3s ease;
}
.header-nav .nav > li:last-child > a:hover,
.header-nav .nav > li:last-child > a:focus {
  background-color: #fff700cc;
  box-shadow: 0 0 25px var(--neon-yellow);
  color: var(--brazil-blue);
}

/* RESPONSIVO MOBILE CARDS UX */
@media (max-width: 768px) {
  .benefits-cards {
    flex-direction: column;
    gap: 1.5em;
  }
  .hero-overlay {
    height: 450px;
  }
  .hero-content h1 {
    font-size: 2.5rem;
  }
  .bonus-explainer h2, .faq-section h2, .steps-section h2, .brand-highlights h2 {
    font-size: 2rem;
  }
}

/* Hide Flatsome placeholder */
.header-inner .text-left:empty,.header-inner .text-right:empty,.ux-banner .text:empty{display:none!important;}

/* === Flatsome brand overrides === */
html,body,.page,.page-wrapper,.main-content{background-color:#07182a!important;color:#d0d8ea!important}
h1,h2,h3,h4,h5,h6,.page-title,.entry-title,.product-title,.header-title{color:#eef2ff!important}
p,li,span,div,.entry-content,.page-content,article{color:#c8d0e4!important}
a{color:#2fdc70!important} a:hover{color:#ffd23f!important}
#top-bar,.header-top{background:#0b2236!important;border-bottom:1px solid rgba(255,255,255,.06)!important}
#top-bar *,.header-top *{color:rgba(255,255,255,.65)!important}
#top-bar a:hover{color:#2fdc70!important}
.header-newsletter-item,.header-social-icons,#top-bar .social-icons,#top-bar .header-newsletter-item,.tooltip.is-small{display:none!important}
.header-main,.header-bottom,.nav-dark,.header-wrapper{background:#07182a!important}
.nav>li>a,.header-nav>li>a{color:#d0d8ea!important}
.nav>li>a:hover{color:#2fdc70!important}
.footer-primary,.absolute-footer,.footer,.footer-wrapper{background:#07182a!important;color:#b7c0d8!important}
.copyright-footer{color:#b7c0d8!important;font-size:13px!important}
.copyright-footer strong{color:#2fdc70!important;font-weight:600!important}
.absolute-footer a,.footer a{color:#2fdc70!important}
.lightbox-content.lightbox-newsletter,.lightbox-by-id{display:none!important}
.is-border.is-dashed{display:none!important}
