
:root{
  --bg:#0b0704;
  --panel:#130c08;
  --panel2:#17100b;
  --text:#f5efe7;
  --muted:#a89c91;
  --gold:#e8bf62;
  --gold2:#b9823b;
  --line:#2b2017;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,#090604 0%,#100905 45%,#090604 100%);color:var(--text);font-family:Inter,Arial,sans-serif}
.site-header{position:sticky;top:0;z-index:20;background:rgba(9,5,3,.97);border-bottom:1px solid #21170f;backdrop-filter:blur(8px)}
.header-inner{max-width:920px;margin:auto;display:flex;align-items:center;gap:20px;padding:22px 40px}
.logo{width:74px;height:74px;flex:0 0 auto}
.brand{font-size:29px;font-weight:500}
main{overflow:hidden}
.section{max-width:920px;margin:auto;padding:74px 40px}
.hero{padding-top:92px}
.eyebrow{color:var(--gold);letter-spacing:.24em;font-size:18px;font-weight:600;line-height:1.55}
h1,h2,h3{margin:0;color:var(--text)}
h1{font-size:72px;line-height:.98;letter-spacing:-.048em;margin:38px 0 48px;font-weight:800}
h1 span{color:#b98441}
h1 b{color:#e5b956}
h2{font-size:58px;line-height:1.08;letter-spacing:-.035em;margin:20px 0 26px}
h3{font-size:38px;line-height:1.15;margin:16px 0 22px}
.lead,.bigcopy{font-size:28px;line-height:1.8}
.lead{margin:0 0 28px}
.muted{color:var(--muted)}
.small{font-size:20px;line-height:1.65}
.btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:104px;border-radius:12px;padding:22px 28px;margin:38px 0 24px;text-decoration:none;font-size:25px;font-weight:700;letter-spacing:.12em;text-align:center;border:1px solid transparent;cursor:pointer;font-family:inherit}
.btn.gold{color:#0d0905;background:linear-gradient(90deg,#b88441,#f1ce71,#d2a34b)}
.btn.outline{color:var(--text);background:transparent;border-color:var(--line)}
.outline-title{border:1px solid var(--line);border-radius:12px;padding:29px;text-align:center;font-size:25px;font-weight:700;letter-spacing:.08em;margin-bottom:48px}
.rounded-img{width:100%;display:block;border-radius:25px;border:1px solid #31241a;margin:34px 0;max-height:930px;object-fit:cover}
.mini-block{padding:26px 0 38px;border-bottom:1px solid var(--line)}
.mini-block p{font-size:23px;line-height:1.65}
.chips{display:flex;flex-wrap:wrap;gap:14px;margin:38px 0}
.chips span{border:1px solid #32251a;border-radius:999px;padding:12px 24px;color:#a99d92;font-size:18px}
.cards{display:grid;gap:48px}
.card{background:rgba(19,12,8,.55);border:1px solid #302319;border-radius:22px;padding:48px}
.card p{font-size:22px;line-height:1.65}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px 34px;font-size:20px;line-height:1.6}
.number-list,.audience-list{border:1px solid #2f2219;border-radius:24px;overflow:hidden;margin-top:42px}
.number-list>div,.audience-list>div{padding:34px 40px;border-bottom:1px solid #241910;display:grid;gap:14px}
.number-list>div:last-child,.audience-list>div:last-child{border-bottom:0}
.number-list i{font-style:normal;color:var(--gold);font-size:18px}
.number-list strong,.audience-list strong{font-size:26px}
.number-list span,.audience-list span{color:var(--muted);font-size:20px;line-height:1.5}
.clean-list{list-style:none;padding:0;margin:22px 0}
.clean-list li{font-size:21px;line-height:1.7}
.steps{margin-top:38px}
.steps>div{display:grid;grid-template-columns:70px 1fr;gap:24px;position:relative;padding-bottom:42px}
.steps>div:not(:last-child):before{content:"";position:absolute;left:34px;top:66px;bottom:0;width:1px;background:#342619}
.steps b{width:64px;height:64px;border:2px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:18px}
.steps h3{font-size:28px;margin:6px 0 10px}
.steps p{font-size:20px;line-height:1.55;margin:0}
.quality-grid{display:grid;gap:26px;margin-top:42px}
.quality-grid>div{border:1px solid #302219;border-radius:20px;padding:36px 40px}
.quality-grid p{font-size:21px;line-height:1.55}
.portfolio{display:grid;gap:34px;margin-top:40px}
.portfolio article{border:1px solid #302319;border-radius:24px;overflow:hidden;background:#120b07}
.portfolio img{width:100%;height:500px;object-fit:cover;display:block}
.portfolio article>div{padding:28px 32px 34px}
.portfolio h3{font-size:26px;margin:8px 0}
.portfolio p{font-size:20px;line-height:1.5;margin:0}
.quiz{margin-top:40px}
.quiz-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:18px}
.progress{height:7px;background:#24180f;border-radius:10px;overflow:hidden;margin:28px 0 44px}
.progress span{display:block;width:16.66%;height:100%;background:linear-gradient(90deg,#c08b40,#f0ca66)}
.q{display:none}
.q.active{display:block}
.q input,.q textarea{width:100%;background:#0e0906;border:1px solid #32241a;color:var(--text);font:inherit;font-size:20px;padding:22px;border-radius:12px;outline:none}
.q textarea{min-height:160px;resize:vertical}
.faq details{border-top:1px solid #2c2017;padding:25px 0}
.faq details:last-child{border-bottom:1px solid #2c2017}
.faq summary{font-size:24px;cursor:pointer;list-style:none;position:relative;padding-right:40px}
.faq summary:after{content:"+";position:absolute;right:0;color:var(--gold)}
.faq details[open] summary:after{content:"–"}
.faq p{font-size:19px;line-height:1.6}
.center{text-align:center}
.goldtext{color:var(--gold)}
.wa-float{position:fixed;right:28px;bottom:26px;width:76px;height:76px;border-radius:50%;background:#1bd760;color:white;text-decoration:none;display:flex;align-items:center;justify-content:center;font-size:42px;z-index:40;box-shadow:0 8px 25px rgba(0,0,0,.35)}
@media(max-width:760px){
  .header-inner{padding:20px 40px}
  .logo{width:72px;height:72px}
  .brand{font-size:28px}
  .section{padding:62px 40px}
  .hero{padding-top:86px}
  h1{font-size:72px}
}
@media(max-width:620px){
  .header-inner{padding:18px 22px;gap:14px}
  .logo{width:62px;height:62px}
  .brand{font-size:22px}
  .section{padding:52px 22px}
  .hero{padding-top:68px}
  .eyebrow{font-size:15px}
  h1{font-size:48px}
  h2{font-size:40px}
  h3{font-size:30px}
  .lead,.bigcopy{font-size:21px;line-height:1.65}
  .btn{font-size:19px;min-height:82px}
  .outline-title{font-size:20px}
  .card{padding:28px 24px}
  .two-col{grid-template-columns:1fr}
  .portfolio img{height:360px}
  .number-list>div,.audience-list>div{padding:28px 24px}
  .quality-grid>div{padding:28px 24px}
  .steps>div{grid-template-columns:58px 1fr}
  .steps b{width:52px;height:52px}
  .steps>div:not(:last-child):before{left:26px;top:55px}
  .wa-float{width:64px;height:64px;right:18px;bottom:20px;font-size:34px}
}


/* TRC — ajuste final da logo oficial no cabeçalho */
.brand {
  display: flex;
  align-items: center;
  gap: 18px;
}
.brand img,
.site-logo,
.logo {
  width: 78px !important;
  height: 78px !important;
  object-fit: contain !important;
  border-radius: 10px;
  flex: 0 0 auto;
}
.brand-name {
  font-size: clamp(20px, 2.5vw, 30px);
  line-height: 1.1;
}

@media (max-width: 640px) {
  .brand {
    gap: 14px;
  }
  .brand img,
  .site-logo,
  .logo {
    width: 74px !important;
    height: 74px !important;
  }
  .brand-name {
    font-size: 20px;
  }
}


/* TRC — tipografia mobile mais compacta */
@media (max-width: 640px) {
  body { font-size: 15px !important; }
  h1 { font-size: 42px !important; line-height: 1.03 !important; }
  h2 { font-size: 34px !important; line-height: 1.08 !important; }
  h3 { font-size: 26px !important; line-height: 1.12 !important; }
  p, li { font-size: 17px !important; line-height: 1.55 !important; }
  .eyebrow, .kicker, .section-label {
    font-size: 14px !important;
    letter-spacing: .22em !important;
  }
  button, .btn, a.btn {
    font-size: 16px !important;
  }
  .brand-name { font-size: 18px !important; }
}


/* TRC — WhatsApp flutuante afastado da marca d'água */
.wa-float {
  position: fixed !important;
  right: 22px !important;
  bottom: 105px !important;
  z-index: 9999 !important;
}
@media (max-width: 640px) {
  .wa-float {
    right: 18px !important;
    bottom: 110px !important;
  }
}

/* TRC — correção responsiva final para iPhone / telas estreitas */
html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}
*, *::before, *::after {
  box-sizing: border-box;
}
img, video, svg, canvas {
  max-width: 100%;
}
.section,
.header-inner,
.card,
.number-list,
.audience-list,
.portfolio,
.quality-grid,
.steps {
  min-width: 0;
}
.audience-list {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}
.audience-list > div {
  width: 100%;
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
}
.audience-list strong,
.audience-list span {
  display: block;
  width: 100%;
  max-width: 100%;
}
.rounded-img {
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: cover;
}

@media (max-width: 640px) {
  .section {
    width: 100%;
    max-width: 100%;
    padding-left: 22px !important;
    padding-right: 22px !important;
    overflow: hidden;
  }
  .audience-list > div,
  .number-list > div {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }
  .audience-list strong,
  .number-list strong {
    font-size: 22px !important;
    line-height: 1.2 !important;
  }
  .audience-list span,
  .number-list span {
    font-size: 17px !important;
    line-height: 1.5 !important;
  }
  .rounded-img {
    display: block !important;
    margin: 28px 0 34px !important;
    border-radius: 22px !important;
  }
}
