@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,700;1,400&display=swap');

:root{
  /* Colors */
  --bg-color:#05070a;
  --surface-color:#0f1218;
  --surface-2:#0b0e13;
  --text-primary:#f8f9fa;
  --text-secondary:#a0a0a0;
  --border-color:#2c2c2c;
  --gold:#d4af37;

  /* CTA */
  --accent-color:#e67e22;      /* laranja de alto contraste */
  --accent-hover:#d35400;

  /* Spacing */
  --section-padding:120px 20px;
  --container-width:1100px;

  /* Radius / Shadow */
  --r-lg:20px;
  --r-md:14px;
  --shadow:0 20px 40px rgba(0,0,0,.45);
  --shadow-soft:0 12px 24px rgba(0,0,0,.28);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg-color);
  color:var(--text-primary);
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  line-height:1.7;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,.serif{font-family:'Playfair Display',serif;}
h2{letter-spacing:-0.01em;}
a{color:inherit;}
img{max-width:100%;display:block;border-radius:12px;}

.container{
  max-width:var(--container-width);
  margin:0 auto;
  padding:0 20px;
}

section{padding:var(--section-padding);}

.center{text-align:center;}
.lead{max-width:860px;margin:18px auto 0;color:var(--text-secondary);font-size:1.12rem;}
.muted{color:var(--text-secondary);}
.strike{text-decoration:line-through;color:var(--text-secondary);}

/* Tags */
.section-tag{
  color:var(--gold);
  text-transform:uppercase;
  font-size:.85rem;
  font-weight:700;
  letter-spacing:.12em;
  display:block;
  margin-bottom:16px;
}

/* HERO */
.hero{
  min-height:92vh;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:
    linear-gradient(rgba(5,7,10,.82), rgba(5,7,10,.86)),
    radial-gradient(1200px 600px at 50% 0%, rgba(212,175,55,.08), transparent 60%),
    url('assets/hero.png');
  background-size:cover;
  background-position:center;
  position:relative;
}

.hero h1{
  font-size:clamp(2.35rem, 5vw, 4rem);
  margin-bottom:22px;
  font-weight:700;
  letter-spacing:-0.02em;
}

.hero p{
  font-size:1.2rem;
  color:var(--text-secondary);
  max-width:820px;
  margin:0 auto 34px;
}

.hero-cta{display:flex;flex-direction:column;gap:14px;align-items:center;}
.microcopy{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;color:var(--text-secondary);font-size:.95rem;}
.microcopy i{color:var(--gold);margin-right:8px;}

/* Buttons */
.cta-button{
  display:inline-block;
  padding:18px 42px;
  background:var(--accent-color);
  color:#fff;
  text-decoration:none;
  border-radius:999px;
  font-weight:700;
  font-size:1.05rem;
  transition:transform .25s ease, box-shadow .25s ease, background-color .25s ease;
  box-shadow:0 10px 22px rgba(230,126,34,.22);
  border:1px solid rgba(255,255,255,.06);
}
.cta-button:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 16px 32px rgba(230,126,34,.28);}
.cta-button--full{width:100%;text-align:center;}
.cta-button--sm{padding:12px 18px;font-size:.95rem;}

.secure-note{
  margin-top:14px;
  color:var(--text-secondary);
  font-size:.95rem;
}
.secure-note i{color:var(--gold);margin-right:8px;}

/* Layout helpers */
.two-col{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:60px;
  align-items:start;
}

/* Pain section */
.pain-section{background:var(--surface-color);}
.pain-section h2{font-size:2.55rem;margin-bottom:18px;}
.callout{
  margin-top:26px;
  padding:18px 18px;
  border:1px solid rgba(212,175,55,.22);
  background:rgba(212,175,55,.06);
  border-radius:var(--r-md);
  display:flex;
  flex-direction:column;
  gap:6px;
}
.callout strong{color:var(--text-primary);}
.callout span{color:var(--text-secondary);}

.icon-panel{
  background:rgba(255,255,255,.03);
  border:1px solid var(--border-color);
  border-radius:var(--r-lg);
  padding:18px;
}
.icon-panel__item{
  display:flex;
  gap:14px;
  padding:14px 10px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.icon-panel__item:last-child{border-bottom:none;}
.icon-panel__item i{color:var(--gold);font-size:1.2rem;margin-top:2px;min-width:22px;}
.icon-panel__item strong{display:block;}
.icon-panel__item span{display:block;color:var(--text-secondary);font-size:.95rem;}

.placeholder-img{
  margin-top:22px;
  height:280px;
  border-radius:var(--r-lg);
  background:rgba(255,255,255,.03);
  border:1px solid var(--border-color);
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:var(--shadow-soft);
}
.placeholder-img i{font-size:4.5rem;color:var(--gold);opacity:.55;}
.img-caption{margin-top:12px;color:var(--text-secondary);font-size:.95rem;}

/* Solution cards */
.solution-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:26px;
  margin-top:56px;
}
.degree-card{
  background:rgba(255,255,255,.03);
  border:1px solid var(--border-color);
  padding:38px 34px;
  border-radius:16px;
  transition:transform .25s ease, border-color .25s ease;
  box-shadow:0 10px 25px rgba(0,0,0,.18);
}
.degree-card:hover{transform:translateY(-8px);border-color:rgba(212,175,55,.55);}
.degree-card i{font-size:1.9rem;color:var(--gold);margin-bottom:14px;}
.degree-card h3{color:var(--gold);margin-bottom:12px;}
.testimonial{color:var(--text-secondary);font-style:italic;}
.byline{margin-top:16px;font-weight:700;}

.pill-row{margin-top:34px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;}
.pill{
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.02);
  color:var(--text-secondary);
  font-size:.95rem;
}
.pill i{color:var(--gold);margin-right:8px;}

/* Authority */
.authority-section{background:linear-gradient(to bottom, var(--bg-color), var(--surface-2));}
.quote-box{
  margin-top:22px;
  padding:22px 22px;
  border-radius:var(--r-lg);
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  box-shadow:var(--shadow-soft);
}
.quote-box p{font-size:1.15rem;color:var(--text-secondary);font-style:italic;}
.quote-box__meta{display:block;margin-top:10px;color:var(--gold);font-weight:700;font-size:.95rem;}

.trust-cards{display:grid;grid-template-columns:1fr;gap:14px;}
.trust-card{
  padding:18px 18px;
  border-radius:var(--r-md);
  background:rgba(255,255,255,.03);
  border:1px solid var(--border-color);
}
.trust-card strong{display:block;margin-bottom:6px;}
.trust-card span{color:var(--text-secondary);}

.note{
  margin-top:18px;
  color:var(--text-secondary);
  font-size:.95rem;
  padding:14px 14px;
  border:1px dashed rgba(255,255,255,.14);
  border-radius:var(--r-md);
}

/* Offer */
.offer-section{background:linear-gradient(to bottom, var(--bg-color), var(--surface-color));}
.portal-mockup{
  background:rgba(255,255,255,.05);
  backdrop-filter:blur(10px);
  border-radius:var(--r-lg);
  padding:16px;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:var(--shadow);
}
.offer-list{list-style:none;margin:26px 0 18px;}
.offer-item{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom:14px;
  color:var(--text-primary);
}
.offer-item i{color:var(--gold);margin-top:4px;}

.price-box{
  margin:18px 0 18px;
  padding:18px 18px;
  border-radius:var(--r-md);
  background:rgba(230,126,34,.05);
  border:1px solid rgba(230,126,34,.22);
}
.price-line,.price-main{display:flex;justify-content:space-between;align-items:baseline;gap:14px;}
.price-main{margin-top:10px;}
.price{font-size:2.2rem;font-weight:800;color:var(--gold);}
.fineprint{margin-top:10px;color:var(--text-secondary);font-size:.93rem;}

/* For who section */
.forwho-section{background:var(--surface-2);}
.panel{
  border-radius:var(--r-lg);
  padding:24px 22px;
  border:1px solid var(--border-color);
  background:rgba(255,255,255,.03);
}
.panel h3{margin-bottom:12px;}
.panel ul{margin-left:18px;color:var(--text-secondary);}
.panel li{margin-bottom:10px;}
.panel.good{border-color:rgba(212,175,55,.22);}
.panel.bad{border-color:rgba(230,126,34,.18);}

/* FAQ */
.faq-section{background:var(--bg-color);}
.faq-container{max-width:900px;margin:44px auto 0;}
.faq-item{
  border-bottom:1px solid rgba(255,255,255,.08);
  padding:18px 0;
}
.faq-question{
  width:100%;
  background:transparent;
  border:none;
  color:var(--text-primary);
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-weight:700;
  font-size:1.05rem;
  cursor:pointer;
  text-align:left;
  padding:10px 0;
}
.faq-question i{transition:transform .2s ease;color:var(--gold);}
.faq-answer{
  max-height:0;
  overflow:hidden;
  transition:max-height .28s ease;
  color:var(--text-secondary);
}
.faq-item.active .faq-answer{max-height:260px;margin-top:10px;}
.faq-item.active .faq-question i{transform:rotate(180deg);}

/* Final CTA */
.final-cta{background:var(--surface-color);text-align:center;}
.urgency{
  margin:20px auto 24px;
  display:inline-flex;
  gap:10px;
  align-items:center;
  padding:12px 14px;
  border-radius:999px;
  background:rgba(212,175,55,.08);
  border:1px solid rgba(212,175,55,.20);
  color:var(--text-secondary);
}
.urgency i{color:var(--gold);}

/* Footer */
.footer{
  padding:36px 20px;
  border-top:1px solid rgba(255,255,255,.08);
  text-align:center;
  color:var(--text-secondary);
  font-size:.92rem;
}
.footer-note{margin-top:8px;opacity:.9;}

/* Sticky CTA */
.sticky-cta{
  position:fixed;
  left:0; right:0; bottom:0;
  padding:12px 14px;
  background:rgba(5,7,10,.75);
  backdrop-filter:blur(12px);
  border-top:1px solid rgba(255,255,255,.10);
  z-index:50;
  display:none; /* only mobile */
}
.sticky-cta__inner{
  max-width:var(--container-width);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.sticky-cta__text span{display:block;color:var(--text-secondary);font-size:.9rem;margin-top:2px;}

/* Reveal animation */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease, transform .6s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}

/* Responsive */
@media (max-width: 980px){
  .two-col{grid-template-columns:1fr;gap:34px;}
  .solution-grid{grid-template-columns:1fr;gap:18px;}
  section{padding:90px 20px;}
}
@media (max-width: 768px){
  .hero{min-height:88vh;}
  .sticky-cta{display:block;}
  .price{font-size:2rem;}
}
.mistake-section {
    background: linear-gradient(to bottom, var(--surface-color), var(--bg-color));
}

.mistake-section h2 {
    font-size: clamp(2rem, 4vw, 3rem);
    margin-bottom: 10px;
}

.mistake-section p {
    color: var(--text-primary);
}

.mistake-section .section-tag {
    margin-bottom: 14px;
}
