:root{
  --purple:#3b0b4a;
  --deep:#200022;
  --gold:#c79a2b;
  --light:#f4e9ff;
}
*{box-sizing:border-box}
body{font-family:Montserrat, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; margin:0; background:linear-gradient(180deg,#120017 0%, #1e0029 100%); color:var(--light)}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.hero{padding:60px 0;display:flex;align-items:center}
.hero-inner{display:flex;gap:40px;align-items:center}
.hero-left{flex:1}
.hero-right{flex:1;text-align:center}
.hero h1{font-family:Playfair Display, serif;font-size:3rem;color:var(--gold);margin-bottom:10px}
.lead{font-family:Dancing Script, cursive;color:#e7d7ff;font-size:1.2rem;margin-bottom:20px}
.btn-primary{background:linear-gradient(90deg,var(--gold), #ffd966);color:#1a0015;padding:12px 20px;border-radius:30px;text-decoration:none;font-weight:700}
.quick-info{list-style:none;margin-top:18px;padding-left:0;color:#e3d6ff}
.quick-info li{margin-bottom:8px}
.consultor-img{width:320px;height:auto;border-radius:12px;border:6px solid rgba(255,255,255,0.04);box-shadow:0 10px 30px rgba(0,0,0,0.6)}

section{padding:40px 0}
.about h2, .how h2, .packages h2, .gallery h2, .faq h2, .questions h2{font-family:Playfair Display, serif;color:var(--gold);font-size:2rem;margin-bottom:18px}
.about p{color:#dfd1ff}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:18px}

.steps{list-style:none;padding-left:0}
.steps li{background:rgba(255,255,255,0.03);padding:14px;border-left:4px solid var(--gold);margin-bottom:12px;border-radius:6px}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.card{background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.05));padding:20px;border-radius:12px;border:1px solid rgba(255,215,0,0.06)}
.card h3{font-family:Playfair Display, serif;color:var(--gold);margin-bottom:6px}
.price{font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:10px}
.card ul{color:#e9dbff;margin-bottom:12px}
.btn-secondary{display:inline-block;padding:10px 14px;background:var(--gold);color:#2a0014;border-radius:8px;text-decoration:none;font-weight:700}
.popular{position:relative;border:2px solid rgba(255,215,0,0.12)}
.popular .tag{position:absolute;top:-12px;right:12px;background:var(--gold);color:#1a0015;padding:6px 10px;border-radius:18px;font-weight:700}

.questions .q-list{columns:2;list-style:none;padding-left:0}
.q-list li{background:rgba(255,255,255,0.02);padding:10px;margin-bottom:8px;border-radius:8px}

.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.gallery-grid img{width:100%;height:220px;object-fit:cover;border-radius:10px;border:4px solid rgba(255,255,255,0.02)}

.faq-item{background:rgba(255,255,255,0.02);padding:14px;border-radius:8px;margin-bottom:10px}

.test-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.test-grid blockquote{background:rgba(255,255,255,0.03);padding:14px;border-left:4px solid var(--gold);border-radius:6px;color:#fff}

.site-footer{padding:28px 0;text-align:center;border-top:1px solid rgba(255,255,255,0.03);color:#c9bde6}
.site-footer a{color:var(--gold);text-decoration:none}

.whatsapp-float{position:fixed;right:22px;bottom:22px;background:#25d366;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:9999;box-shadow:0 8px 30px rgba(0,0,0,0.4)}
.whatsapp-float svg{width:30px;height:30px}

@media(max-width:800px){.hero-inner{flex-direction:column}.questions .q-list{columns:1}.about-grid{grid-template-columns:1fr}.test-grid{grid-template-columns:1fr}.consultor-img{width:260px}}


/* --- Hero banner override: use Banner_topo.png and centered title --- */
.hero{background-image:url('images/Banner_topo.png') !important;background-size:cover;background-position:center;min-height:40vh;display:flex;align-items:center;justify-content:center;position:relative}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,4,12,0.45), rgba(10,4,12,0.55));}
.hero-center{position:relative;z-index:2;text-align:center}
.hero-center h1{font-family:'Dancing Script', 'Playfair Display', serif; color: #c79a2b; font-size:3.2rem; margin:0; padding:6px 18px; background:rgba(0,0,0,0.12); border-radius:8px; letter-spacing:1.2px}
@media(max-width:900px){.hero-center h1{font-size:2.2rem;padding:6px 12px}}


/* Restored hero-main section styles */
.hero-main{padding:44px 0}
.hero-inner{display:flex;gap:40px;align-items:center}
.hero-left{flex:1}
.hero-right{flex:0 0 360px;text-align:center}
.lead{font-family:'Dancing Script', cursive;color:#e7d7ff;font-size:1.14rem;margin-bottom:18px}
.btn-primary{background:linear-gradient(90deg,#c79a2b, #ffd966);color:#1a0015;padding:12px 20px;border-radius:30px;text-decoration:none;font-weight:700;display:inline-block}
.quick-info{list-style:none;padding-left:0;margin-top:14px;color:#e3d6ff}
.consultor-img{width:320px;border-radius:12px;border:6px solid rgba(255,255,255,0.04);box-shadow:0 10px 30px rgba(0,0,0,0.6)}
@media(max-width:900px){.hero-inner{flex-direction:column}.consultor-img{width:220px}}


/* Accessibility and spacing adjustments requested by user */
section{padding:48px 0 !important}
h2{font-size:2.1rem !important;line-height:1.15 !important}
h3{font-size:1.25rem !important}
.hero-center h1{font-size:3.6rem !important}
body{line-height:1.6}
.lead{font-size:1.22rem;line-height:1.5}
.container{padding-top:6px;padding-bottom:6px}
.card{padding:20px}

/* ensure emojis (stars) have slight margin for legibility */
h2 .emoji, h3 .emoji{margin:0 6px}


/* User request: enlarge lead text close to main title and increase banner title */
/* Increase banner title (Leitura Cigana) */
.hero-center h1 {
  font-size: 5.2rem !important;
  line-height: 1.02 !important;
  letter-spacing: 1px !important;
}

/* Increase main hero left title (Consultas com Baralho Cigano) */
.hero-main .hero-left h1, .hero-left h1 {
  font-size: 3.8rem !important;
  line-height: 1.02 !important;
}

/* Make the lead (cursive 'Clareza...') much larger, approaching the main title size */
.lead {
  font-size: 2.8rem !important;
  line-height: 1.15 !important;
  margin-top: 10px !important;
}

/* Buttons and price scaling to remain proportional */
.btn-primary, .btn-secondary {
  font-size: 1.15rem !important;
  padding: 14px 28px !important;
}

/* Responsive adjustments for small screens */
@media (max-width: 900px) {
  .hero-center h1 { font-size: 3.0rem !important; }
  .hero-main .hero-left h1, .hero-left h1 { font-size: 2.4rem !important; }
  .lead { font-size: 1.4rem !important; }
}


/* Medium font size adjustments per user request */
/* Main section title */
.hero-main .hero-left h1, .hero-left h1 {
  font-size: 2.6rem !important;
  line-height: 1.06 !important;
}

/* Lead (cursive) larger but not as large as before */
.lead {
  font-size: 1.6rem !important;
  line-height: 1.4 !important;
  margin-top: 8px !important;
}

/* Slightly reduce the banner title if it was scaled previously */
.hero-center h1 {
  font-size: 3.6rem !important;
}

@media (max-width: 900px) {
  .hero-main .hero-left h1, .hero-left h1 { font-size: 2.0rem !important; }
  .lead { font-size: 1.15rem !important; }
  .hero-center h1 { font-size: 2.6rem !important; }
}


/* Make banner title (Leitura Cigana) much larger as requested */
.hero-center h1 {
  font-size: 6rem !important;
  line-height: 1 !important;
  letter-spacing: 1px;
  text-shadow: 0 6px 20px rgba(0,0,0,0.6);
}
@media (max-width: 900px) {
  .hero-center h1 { font-size: 3.8rem !important; }
}


/* Packages new two-column layout: image left, two stacked small cards right, two bottom cards under image */
.packages-layout{display:grid;grid-template-columns:1fr 320px;gap:22px;align-items:start;margin-top:18px}
.packages-left .packages-image img{width:100%;max-width:520px;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,0.5)}
.packages-right .side-cards{display:flex;flex-direction:column;gap:16px}
.card.small{padding:18px;border-radius:12px;background:linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));box-shadow:0 6px 20px rgba(0,0,0,0.45)}
.card.small .price{font-size:1.4rem;margin-top:6px}
.card.small .btn-secondary{padding:8px 14px;font-size:0.98rem;margin-top:8px}

.bottom-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:22px}
@media(max-width:1000px){
  .packages-layout{grid-template-columns:1fr;}
  .packages-right{order:3}
  .bottom-cards{grid-template-columns:1fr}
}


/* Packages layout following user sketch */
.packages-layout{display:grid;grid-template-columns:520px 340px;gap:24px;align-items:start;margin-top:18px}
.packages-left .packages-image img{width:100%;max-width:520px;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,0.5)}
.packages-right .side-cards{display:flex;flex-direction:column;gap:16px}
.card.small{padding:18px;border-radius:12px;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));box-shadow:0 6px 20px rgba(0,0,0,0.45);max-width:320px}
.card.small .price{font-size:1.35rem;margin-top:6px}
.card.small .card-desc{font-size:0.95rem;color:rgba(255,255,255,0.85);margin-top:8px}
.card.small .btn-secondary{padding:8px 14px;font-size:0.98rem;margin-top:10px}

.bottom-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:22px}
.bottom-cards .card{min-height:160px}

@media(max-width:1000px){
  .packages-layout{grid-template-columns:1fr;}
  .packages-right{order:3}
  .bottom-cards{grid-template-columns:1fr}
  .card.small{max-width:100%}
}
