:root{
  --night:#141d27; --night2:#1f2a33; --ink:#22282e; --ink2:#4f5459; --muted:#6b7177;
  --line:#e3e6e9; --soft:#f5f6f7; --paper:#ffffff;
  --blue:#0079b0; --cyan:#53c6d6; --teal:#00b0cf; --orange:#f86e2e; --amber:#f99f32; --yellow:#fcb540;
  --grad:linear-gradient(90deg,#f86e2e,#f99f32,#fcb540,#53c6d6,#0079b0);
  --head:'Figtree',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --text:'Source Sans 3',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --r:14px; --wrap:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%}
body{margin:0; font-family:var(--text); font-size:18px; line-height:1.6; color:var(--ink); background:var(--paper)}
img{max-width:100%; height:auto; display:block}
a{color:var(--blue)}
h1,h2,h3{font-family:var(--head); line-height:1.12; margin:0; letter-spacing:-.01em}
p{margin:0}
.wrap{max-width:var(--wrap); margin:0 auto; padding:0 20px}
.eyebrow{font-family:var(--head); font-weight:700; font-size:13px; letter-spacing:.16em; text-transform:uppercase; color:var(--blue); margin-bottom:14px}
.bar{width:56px; height:5px; border-radius:3px; background:var(--grad); margin:0 0 22px}
section{padding:88px 0}
.center{text-align:center}
.center .bar{margin-left:auto; margin-right:auto}
.h2{font-size:clamp(28px,4vw,42px); font-weight:800; color:var(--night2); max-width:760px}
.center .h2{margin:0 auto}
.lead{font-size:19px; color:var(--ink2); max-width:680px; margin-top:16px}
.center .lead{margin-left:auto; margin-right:auto}

/* botões */
.btn{display:inline-flex; align-items:center; justify-content:center; gap:10px; font-family:var(--head); font-weight:800; font-size:17px;
  padding:17px 30px; border-radius:999px; border:0; cursor:pointer; text-decoration:none; transition:transform .15s, box-shadow .15s, background .15s}
.btn-primary{background:var(--orange); color:#fff; box-shadow:0 10px 26px rgba(248,110,46,.35)}
.btn-primary:hover{transform:translateY(-2px); box-shadow:0 14px 30px rgba(248,110,46,.45)}
.btn-primary:disabled{opacity:.7; cursor:wait; transform:none}
.btn-ghost{background:transparent; color:#fff; border:1.5px solid rgba(255,255,255,.35)}
.btn svg{width:20px; height:20px; flex:none}

/* topo */
.top{position:sticky; top:0; z-index:20; background:rgba(20,29,39,.92); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); border-bottom:1px solid rgba(255,255,255,.06)}
.top .wrap{display:flex; align-items:center; justify-content:space-between; height:64px; gap:12px}
.top .logo img{height:30px; width:auto}
.top .right{display:flex; align-items:center; gap:10px}
.lang{display:inline-flex; background:rgba(255,255,255,.08); border-radius:999px; padding:3px}
.lang button{font-family:var(--head); font-weight:700; font-size:13px; color:#cfd8de; background:none; border:0; padding:7px 12px; border-radius:999px; cursor:pointer}
.lang button[aria-pressed="true"]{background:#fff; color:var(--night2)}
.top .btn{padding:10px 18px; font-size:14px; box-shadow:none}

/* hero */
.hero{background:radial-gradient(1200px 600px at 85% -10%, rgba(83,198,214,.18), transparent 60%), radial-gradient(900px 500px at -10% 110%, rgba(248,110,46,.14), transparent 60%), var(--night);
  color:#fff; padding:72px 0 96px; overflow:hidden}
.hero .grid{display:grid; grid-template-columns:1.1fr .9fr; gap:56px; align-items:center}
.hero .eyebrow{color:var(--cyan)}
.hero h1{font-size:clamp(38px,6vw,64px); font-weight:800}
.hero h1 em{font-style:normal; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent}
.hero .sub{font-size:20px; color:#cfd8de; margin:22px 0 32px; max-width:560px}
.hero .note{font-size:15px; color:#9fb0bb; margin-top:18px}
.hero .trust{display:flex; gap:12px; align-items:flex-start; margin-top:30px; padding-top:24px; border-top:1px solid rgba(255,255,255,.1); font-size:15px; color:#b8c5ce; max-width:560px}
.hero .trust svg{flex:none; width:22px; height:22px; color:var(--cyan); margin-top:2px}
.cover{position:relative; justify-self:center; max-width:400px; width:100%}
.cover img{border-radius:6px 12px 12px 6px; box-shadow:0 40px 80px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.06); transform:perspective(1600px) rotateY(-8deg); transition:transform .5s}
.cover:hover img{transform:perspective(1400px) rotateY(-4deg)}
.cover .badge{position:absolute; right:-8px; top:24px; background:var(--yellow); color:var(--night2); font-family:var(--head); font-weight:800; font-size:15px; padding:10px 16px; border-radius:999px; box-shadow:0 10px 24px rgba(0,0,0,.3); transform:rotate(6deg)}

/* dor */
.pain{background:var(--soft)}
.quotes{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:40px 0}
.quotes blockquote{margin:0; background:#fff; border-radius:var(--r); padding:26px 24px; font-family:var(--head); font-weight:700; font-size:20px; line-height:1.3; color:var(--night2); border-left:5px solid var(--orange); box-shadow:0 1px 0 var(--line)}
.quotes blockquote:nth-child(2){border-color:var(--amber)}
.quotes blockquote:nth-child(3){border-color:var(--cyan)}
.pain .txt{max-width:760px}
.pain .txt p{font-size:19px; color:var(--ink2); margin-bottom:16px}
.pain .txt strong{color:var(--night2)}

/* método */
.cards3{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:44px}
.card{background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:28px}
.card .ic{width:48px; height:48px; border-radius:12px; display:grid; place-items:center; margin-bottom:18px; color:#fff}
.card .ic svg{width:24px; height:24px}
.card h3{font-size:20px; font-weight:800; color:var(--night2); margin-bottom:8px}
.card p{font-size:17px; color:var(--ink2)}

/* capítulos */
.chapters{background:var(--night); color:#fff}
.chapters .eyebrow{color:var(--cyan)}
.chapters .h2{color:#fff}
.chapters .lead{color:#b8c5ce}
.chlist{list-style:none; padding:0; margin:48px 0 0; display:grid; grid-template-columns:1fr 1fr; gap:16px}
.ch{display:flex; gap:20px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); border-radius:var(--r); padding:24px; transition:background .2s, border-color .2s}
.ch:hover{background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.16)}
.ch .n{flex:none; width:54px; height:54px; border-radius:50%; display:grid; place-items:center; font-family:var(--head); font-weight:800; font-size:24px; color:#fff; background:var(--c,var(--orange))}
.ch .n.sm{font-size:13px; letter-spacing:.06em}
.ch .lbl{font-family:var(--head); font-weight:700; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--c,var(--orange)); margin-bottom:6px}
.ch h3{font-size:19px; font-weight:700; line-height:1.3; margin-bottom:8px}
.ch p{font-size:16px; color:#b8c5ce; line-height:1.5}
.ch.wide{grid-column:1 / -1}

/* por dentro */
.inside .grid{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center}
.pages{position:relative; height:520px}
.pages img{position:absolute; width:58%; border-radius:6px; box-shadow:0 18px 40px rgba(20,29,39,.22); border:1px solid var(--line); background:#fff}
.pages img:nth-child(1){left:0; top:40px; transform:rotate(-5deg)}
.pages img:nth-child(2){left:21%; top:0; z-index:2}
.pages img:nth-child(3){right:0; top:60px; transform:rotate(5deg); z-index:1}
.feats{list-style:none; padding:0; margin:32px 0 0; display:grid; grid-template-columns:1fr 1fr; gap:22px 26px}
.feats li{display:flex; gap:14px}
.feats .ic{flex:none; width:40px; height:40px; border-radius:10px; background:var(--soft); color:var(--orange); display:grid; place-items:center}
.feats .ic svg{width:20px; height:20px}
.feats h3{font-size:17px; font-weight:800; color:var(--night2); margin-bottom:3px}
.feats p{font-size:15.5px; color:var(--ink2); line-height:1.45}

/* para quem */
.who{background:var(--soft)}
.cards4{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:44px}
.cards4 .card{border-top:4px solid var(--c)}

/* autor */
.autor{background:var(--soft); padding:64px 0}
.autor-card{background:#fff; border:1px solid var(--line); border-radius:20px; padding:32px 36px; display:grid; grid-template-columns:150px 1fr; gap:32px; align-items:start; max-width:960px; margin:0 auto; box-shadow:0 10px 30px rgba(20,29,39,.06)}
.autor-foto{width:150px; height:150px; border-radius:50%; object-fit:cover; border:4px solid #fff; box-shadow:0 8px 24px rgba(20,29,39,.18); background:var(--grad); padding:3px}
.autor-txt .eyebrow{margin-bottom:8px}
.autor-txt h2{font-size:26px; font-weight:800; color:var(--night2)}
.autor-txt .role{font-family:var(--head); font-weight:700; font-size:15.5px; color:var(--blue); margin:6px 0 14px}
.autor-txt .bio{font-size:16.5px; color:var(--ink2); margin-bottom:10px}
.quote .author{display:none}

/* citação + comissão */
.quote .grid{display:grid; grid-template-columns:1.25fr .75fr; gap:48px; align-items:start}
.quote blockquote{margin:0; font-family:var(--head); font-weight:700; font-size:clamp(22px,2.6vw,30px); line-height:1.35; color:var(--night2)}
.quote .by{margin-top:22px; display:flex; align-items:center; gap:14px}
.quote .by .av{width:48px; height:48px; border-radius:50%; background:var(--grad); flex:none}
.quote .by b{display:block; font-family:var(--head); font-size:17px; color:var(--night2)}
.quote .by span{font-size:15px; color:var(--muted)}
.quote .author{margin-top:40px; padding-top:28px; border-top:1px solid var(--line)}
.quote .author h3{font-size:18px; margin-bottom:8px; color:var(--night2)}
.quote .author p{font-size:17px; color:var(--ink2)}
.board{background:var(--soft); border-radius:var(--r); padding:26px}
.board h3{font-size:14px; letter-spacing:.14em; text-transform:uppercase; color:var(--blue); margin-bottom:12px}
.board ul{list-style:none; margin:0; padding:0}
.board li{display:flex; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--line); font-size:16px}
.board li:last-child{border-bottom:0}
.board li span{color:var(--muted); font-size:14.5px}

/* formulário */
.signup{background:radial-gradient(900px 500px at 100% 0%, rgba(83,198,214,.16), transparent 60%), var(--night); color:#fff}
.signup .grid{display:grid; grid-template-columns:.85fr 1.15fr; gap:56px; align-items:center}
.signup .eyebrow{color:var(--cyan)}
.signup .h2{color:#fff}
.signup .lead{color:#b8c5ce}
.signup .mini{max-width:280px; margin-top:32px}
.signup .mini img{border-radius:4px 10px 10px 4px; box-shadow:0 30px 60px rgba(0,0,0,.5)}
form.lead-form{background:#fff; color:var(--ink); border-radius:20px; padding:34px; box-shadow:0 30px 70px rgba(0,0,0,.35)}
.field{margin-bottom:18px}
.field label{display:block; font-family:var(--head); font-weight:700; font-size:15px; color:var(--night2); margin-bottom:7px}
.field input, .field select{width:100%; font:inherit; font-size:17px; padding:14px 15px; border:1.5px solid #d4d9dd; border-radius:10px; background:#fff; color:var(--ink); outline:none; transition:border-color .15s, box-shadow .15s}
.field input:focus, .field select:focus{border-color:var(--blue); box-shadow:0 0 0 4px rgba(0,121,176,.12)}
.field.invalid input{border-color:#d93a2b}
.field .err{display:none; color:#c0392b; font-size:14px; margin-top:6px}
.field.invalid .err{display:block}
.phone{display:flex; gap:8px}
.phone select{width:auto; flex:none; padding-right:8px}
.field label.check{font-family:var(--text); font-weight:400; font-size:15px; color:var(--ink2); margin:0}
.check{display:flex; gap:12px; align-items:flex-start; font-size:15px; color:var(--ink2); line-height:1.45; cursor:pointer}
.check input{width:20px; height:20px; margin:2px 0 0; flex:none; accent-color:var(--orange)}
.field.invalid .check{color:#c0392b}
form .btn{width:100%; margin-top:8px; font-size:18px; padding:19px}
.form-safe{display:flex; gap:8px; align-items:center; justify-content:center; font-size:14px; color:var(--muted); margin-top:14px; text-align:center}
.form-safe svg{width:16px; height:16px; flex:none}
.form-msg{display:none; margin-top:14px; padding:12px 14px; border-radius:10px; background:#fdecea; color:#a3281b; font-size:15px}
.form-msg.show{display:block}
.hp{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}

/* FAQ */
.faq .list{max-width:800px; margin:40px auto 0}
.faq details{border-bottom:1px solid var(--line); padding:4px 0}
.faq summary{list-style:none; cursor:pointer; padding:20px 40px 20px 0; position:relative; font-family:var(--head); font-weight:700; font-size:19px; color:var(--night2)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:""; position:absolute; right:6px; top:50%; width:12px; height:12px; border-right:2.5px solid var(--orange); border-bottom:2.5px solid var(--orange); transform:translateY(-70%) rotate(45deg); transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{padding:0 0 22px; color:var(--ink2); font-size:17px}

/* final */
.final{background:var(--grad); color:#fff; padding:72px 0}
.final .wrap{display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap}
.final h2{font-size:clamp(26px,3.6vw,38px); font-weight:800; text-shadow:0 1px 2px rgba(0,0,0,.12)}
.final p{font-size:19px; margin-top:8px; opacity:.95}
.final .btn{background:var(--night2); color:#fff; box-shadow:0 12px 30px rgba(20,29,39,.35)}

/* rodapé */
footer{padding:48px 0; background:#fff; border-top:1px solid var(--line)}
footer .wrap{display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap}
footer .logos{display:flex; align-items:center; gap:26px; flex-wrap:wrap}
footer .logos img{height:40px; width:auto}
footer .logos .sep{width:1px; height:34px; background:var(--line)}
footer .ig{font-size:15px; color:var(--muted)}
footer .ig a{font-family:var(--head); font-weight:700; text-decoration:none}

/* página de download */
.dl-hero{background:var(--night); color:#fff; padding:64px 0 120px; text-align:center}
.dl-hero .check-ic{width:68px; height:68px; border-radius:50%; background:rgba(83,198,214,.15); color:var(--cyan); display:grid; place-items:center; margin:0 auto 22px}
.dl-hero .check-ic svg{width:34px; height:34px}
.dl-hero h1{font-size:clamp(30px,4.6vw,46px); font-weight:800}
.dl-hero p{color:#b8c5ce; font-size:19px; margin-top:12px}
.dl-main{margin-top:-80px; padding:0 0 72px}
.dl-box{background:#fff; border-radius:20px; box-shadow:0 30px 70px rgba(20,29,39,.18); padding:32px; max-width:900px; margin:0 auto}
.seg-label{font-family:var(--head); font-weight:700; font-size:14px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); text-align:center; margin-bottom:12px}
.seg{display:flex; justify-content:center; gap:10px; margin-bottom:28px}
.seg button{display:flex; align-items:center; gap:10px; font-family:var(--head); font-weight:700; font-size:17px; padding:12px 22px; border-radius:999px; border:1.5px solid var(--line); background:#fff; color:var(--ink2); cursor:pointer}
.seg button[aria-pressed="true"]{border-color:var(--night2); background:var(--night2); color:#fff}
.seg .flag{font-size:20px; line-height:1}
.fmts{display:grid; grid-template-columns:1fr 1fr; gap:18px}
.fmt{border:1.5px solid var(--line); border-radius:16px; padding:26px; display:flex; flex-direction:column}
.fmt .tag{display:inline-flex; align-self:flex-start; font-family:var(--head); font-weight:800; font-size:13px; letter-spacing:.1em; padding:6px 12px; border-radius:8px; color:#fff; margin-bottom:16px}
.fmt.pdf .tag{background:var(--orange)} .fmt.epub .tag{background:var(--blue)}
.fmt h3{font-size:22px; font-weight:800; color:var(--night2); margin-bottom:8px}
.fmt p{font-size:16px; color:var(--ink2); flex:1}
.fmt .btn{margin-top:20px}
.fmt.epub .btn{background:var(--blue); box-shadow:0 10px 24px rgba(0,121,176,.3)}
.fmt .size{font-size:14px; color:var(--muted); margin-top:10px; text-align:center}
.fmt.soon{background:var(--soft); border-style:dashed}
.fmt.soon .btn{background:#c7cdd2; box-shadow:none; cursor:not-allowed}
.soon-note{display:none; margin-top:18px; padding:14px 16px; border-radius:12px; background:#fff7e6; color:#7a5200; font-size:15.5px}
.soon-note.show{display:block}
.kindle{margin-top:24px; background:var(--soft); border-radius:16px; padding:24px 26px; display:grid; grid-template-columns:auto 1fr; gap:20px}
.kindle .ic{width:46px; height:46px; border-radius:12px; background:var(--night2); color:#fff; display:grid; place-items:center}
.kindle .ic svg{width:24px; height:24px}
.kindle h3{font-size:19px; color:var(--night2); margin-bottom:10px}
.kindle ol{margin:0; padding-left:20px; color:var(--ink2); font-size:16px}
.kindle ol li{margin-bottom:6px}
.kindle .alt{font-size:15px; color:var(--muted); margin-top:8px}
.share{margin-top:24px; text-align:center; padding-top:24px; border-top:1px solid var(--line)}
.share p{font-family:var(--head); font-weight:700; color:var(--night2); margin-bottom:14px}
.btn-wa{background:#25d366; color:#fff; box-shadow:0 10px 24px rgba(37,211,102,.3)}
.back{display:block; text-align:center; margin-top:22px; font-size:15px}
.toast{position:fixed; left:50%; bottom:24px; transform:translate(-50%,120px); background:var(--night2); color:#fff; padding:12px 20px; border-radius:999px; font-size:15px; transition:transform .3s, opacity .3s; z-index:50; opacity:0; pointer-events:none}
.toast.show{transform:translate(-50%,0); opacity:1}

/* Amazon */
.amz{margin-top:24px; display:grid; grid-template-columns:auto 1fr auto; gap:20px; align-items:center; padding:24px 26px; border-radius:16px; background:linear-gradient(135deg,#232f3e,#1a2533); color:#fff}
.amz[hidden]{display:none}
.amz-ic{width:50px; height:50px; border-radius:12px; background:#ff9900; color:#232f3e; display:grid; place-items:center}
.amz-ic svg{width:26px; height:26px}
.amz h3{font-size:20px; margin-bottom:6px}
.amz p{font-size:15.5px; color:#c9d3db; line-height:1.45}
.btn-amz{background:#ff9900; color:#1a2533; box-shadow:0 10px 24px rgba(255,153,0,.3); white-space:nowrap}
.btn-amz:hover{transform:translateY(-2px)}

/* animação de entrada */
.reveal{opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease}
.reveal.in{opacity:1; transform:none}
@media (prefers-reduced-motion:reduce){ .reveal{opacity:1; transform:none; transition:none} .cover img{transform:none} html{scroll-behavior:auto} }

/* responsivo */
@media (max-width:960px){
  section{padding:64px 0}
  .hero{padding:48px 0 64px}
  .hero .grid, .inside .grid, .quote .grid, .signup .grid{grid-template-columns:1fr; gap:40px}
  .cover{max-width:300px; order:-1}
  .cover img{transform:none}
  .cover .badge{top:auto; bottom:18px; right:-6px}
  .quotes, .cards3{grid-template-columns:1fr}
  .cards4{grid-template-columns:1fr 1fr}
  .chlist{grid-template-columns:1fr}
  .pages{height:420px; max-width:520px; margin:0 auto; width:100%}
  .signup .mini{display:none}
}
@media (max-width:620px){
  body{font-size:17px}
  .top .btn{display:none}
  .hero .sub{font-size:18px}
  .cards4, .feats, .fmts{grid-template-columns:1fr}
  .autor-card{grid-template-columns:1fr; justify-items:center; text-align:center; padding:28px 22px}
  .autor-foto{width:120px; height:120px}
  .pages{height:330px}
  form.lead-form, .dl-box{padding:24px 20px}
  .ch{padding:20px; gap:16px}
  .ch .n{width:44px; height:44px; font-size:20px}
  .kindle{grid-template-columns:1fr}
  .amz{grid-template-columns:1fr; text-align:left}
  .btn-amz{width:100%}
  .final .wrap{flex-direction:column; align-items:flex-start}
  footer .logos img{height:32px}
}
.fmt p.size{flex:none}
