/* ===========================================================
   Bodo Schäfer – Bücher  |  Recriação fiel (Elementor → estático)
   Tokens extraídos de post-5.css / post-8.css (kit do Elementor)
   =========================================================== */
:root{
  --blue:#3478E3;
  --blue-hover:#9f8354;
  --gray:#ECECEC;
  --white:#FFFFFF;
  --text:#090F25;
  --container:1140px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:"Poppins",sans-serif;
  font-weight:400;
  color:var(--text);
  background:var(--white);
  line-height:1.6;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}

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

/* ---------- Cabeçalho ---------- */
.site-header{
  text-align:center;
  padding:40px 20px 10px;
}
.site-header .logo{
  width:50%;
  max-width:320px;
  margin:0 auto 24px;
}
.headline{
  font-family:"Roboto",sans-serif;
  font-weight:800;
  font-size:35px;
  line-height:1.2em;
  color:var(--blue);
  margin:0 auto 14px;
  max-width:900px;
}
.headline .free{color:#e63946;}
.subhead{
  font-family:"Roboto",sans-serif;
  font-weight:400;
  font-size:28px;
  margin:0 auto 8px;
  color:var(--text);
}

/* ---------- Grade de seleção (5 banners) ---------- */
.book-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:24px;
  padding:30px 0 60px;
}
.book-grid a{
  flex:0 0 calc(50% - 24px);
  max-width:calc(50% - 24px);
  transition:transform .25s ease;
}
.book-grid a:hover{transform:translateY(-6px);}
.book-grid img{
  width:100%;
  border-radius:15px;
  box-shadow:0 0 10px 1px rgba(0,0,0,.5);
}

/* ---------- Seções de livro ---------- */
.feature{padding:70px 0;}
.feature.gray{background:var(--gray);}
.feature.white{background:var(--white);}
.feature .row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:40px;
}
.feature .col{flex:1 1 0;min-width:300px;}
.feature.reverse .row{flex-direction:row-reverse;}

.feature h2{
  font-family:"Poppins",sans-serif;
  font-weight:500;
  font-size:40px;
  line-height:1.2;
  margin:0 0 6px;
}
.feature .blue-sub{
  font-family:"Poppins",sans-serif;
  font-weight:600;
  color:var(--blue);
  font-size:22px;
  margin:0 0 18px;
}
.feature p{margin:0 0 16px;}

.checklist{list-style:none;margin:0 0 20px;padding:0;}
.checklist li{
  position:relative;
  padding-left:28px;
  margin-bottom:8px;
  font-weight:600;
  color:var(--blue);
}
.checklist li::before{
  content:"";
  position:absolute;left:0;top:.45em;
  width:14px;height:14px;
  background:var(--blue);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.2 0z'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.2 0z'/></svg>") center/contain no-repeat;
}
.offer{font-size:19px;font-weight:400;margin-bottom:24px;}

/* ---------- Botão ---------- */
.btn{
  display:inline-block;
  background:var(--blue);
  color:#fff;
  font-weight:600;
  font-size:17px;
  padding:16px 30px;
  border-radius:6px;
  text-align:center;
  transition:background .3s ease;
  line-height:1.3;
}
.btn:hover,.btn:focus{background:var(--blue-hover);}

/* ---------- Carrossel ---------- */
.carousel{position:relative;}
.carousel .track{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  gap:0;
  -ms-overflow-style:none;scrollbar-width:none;
}
.carousel .track::-webkit-scrollbar{display:none;}
.carousel .track img{
  flex:0 0 100%;
  scroll-snap-align:center;
  border-radius:25px;
  object-fit:contain;
}
.carousel button{
  position:absolute;top:50%;transform:translateY(-50%);
  width:48px;height:48px;border:none;border-radius:50%;
  background:rgba(0,0,0,.55);color:#fff;font-size:24px;
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background .2s;z-index:2;
}
.carousel button:hover{background:var(--blue);}
.carousel .prev{left:8px;}
.carousel .next{right:8px;}

/* ---------- Sobre o autor ---------- */
.author{padding:70px 0;}
.author h2{
  text-align:center;
  font-family:"Poppins",sans-serif;
  font-weight:500;
  font-size:40px;
  margin:0 0 40px;
}
.author .row{
  display:flex;flex-wrap:wrap;gap:40px;align-items:center;
}
.author .row img{flex:0 1 480px;min-width:0;width:100%;height:auto;border-radius:15px;}
.author .row .txt{flex:1 1 360px;min-width:0;font-family:"Roboto",sans-serif;font-size:17px;}

/* ---------- Intro (conteúdo original) ---------- */
.intro{padding:60px 0;background:#fff;}
.intro h2{
  font-family:"Poppins",sans-serif;font-weight:500;font-size:34px;
  text-align:center;margin:0 0 20px;
}
.intro p{max-width:820px;margin:0 auto 16px;text-align:center;}

/* ---------- Tabela comparativa ---------- */
.compare{padding:70px 0;background:#fff;}
.compare h2{
  font-family:"Poppins",sans-serif;font-weight:500;font-size:40px;
  text-align:center;margin:0 0 12px;
}
.compare-intro{text-align:center;max-width:760px;margin:0 auto 30px;}
.table-wrap{
  max-width:960px;margin:0 auto 26px;
  overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.compare table{
  width:100%;border-collapse:collapse;min-width:640px;background:#fff;
  border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px #e3e3e3;
}
.compare th,.compare td{
  padding:14px 18px;text-align:left;vertical-align:top;
  border-bottom:1px solid #ececec;font-size:15px;
}
.compare thead th{
  background:var(--blue);color:#fff;
  font-family:"Poppins",sans-serif;font-weight:600;
}
.compare tbody td:first-child{font-weight:600;color:var(--text);}
.compare tbody tr:nth-child(even){background:#f6f8fc;}
.compare tbody tr:last-child td{border-bottom:none;}
.compare-tip{
  max-width:860px;margin:0 auto;
  background:#f6f8fc;border-left:4px solid var(--blue);
  padding:16px 20px;border-radius:8px;
}

/* ---------- Prinzipien (conteúdo original) ---------- */
.section-lead{text-align:center;max-width:760px;margin:0 auto 34px;}
.principles{padding:70px 0;background:var(--gray);}
.principles h2{
  font-family:"Poppins",sans-serif;font-weight:500;font-size:40px;
  text-align:center;margin:0 0 12px;
}
.principles .grid{
  display:flex;flex-wrap:wrap;gap:20px;
  max-width:980px;margin:0 auto;
}
.principles .card{
  flex:1 1 280px;background:#fff;border-radius:12px;
  padding:24px;box-shadow:0 0 0 1px #e3e3e3;
}
.principles .num{
  display:inline-flex;width:38px;height:38px;border-radius:50%;
  background:var(--blue);color:#fff;font-weight:600;
  align-items:center;justify-content:center;margin-bottom:14px;
  font-family:"Poppins",sans-serif;font-size:17px;
}
.principles h3{font-family:"Poppins",sans-serif;font-weight:600;font-size:18px;margin:0 0 8px;}
.principles .card p{margin:0;font-size:15px;}

/* ---------- Häufige Fehler (conteúdo original) ---------- */
.mistakes{padding:70px 0;background:#fff;}
.mistakes h2{
  font-family:"Poppins",sans-serif;font-weight:500;font-size:40px;
  text-align:center;margin:0 0 12px;
}
.mistakes .item{
  max-width:860px;margin:0 auto 14px;background:#fff;
  border:1px solid #e3e3e3;border-left:4px solid var(--blue);
  border-radius:8px;padding:16px 22px;
}
.mistakes .item h3{font-family:"Poppins",sans-serif;font-weight:600;font-size:17px;margin:0 0 6px;color:var(--text);}
.mistakes .item p{margin:0;font-size:15px;}

/* ---------- Blog / Ratgeber ---------- */
.article{max-width:820px;padding:48px 20px 60px;}
.article h1{font-size:34px;line-height:1.22;margin:0 0 10px;}
.article .meta{color:#888;font-size:14px;margin:0 0 26px;}
.article h2{font-family:"Poppins",sans-serif;font-weight:600;font-size:25px;margin:34px 0 12px;}
.article p{margin:0 0 16px;}
.article ul{padding-left:22px;} .article li{margin-bottom:8px;}
.article a{color:var(--blue);font-weight:600;}
.blog-book{display:flex;gap:18px;align-items:flex-start;background:#f6f8fc;border:1px solid #e3e9f5;border-radius:12px;padding:18px 20px;margin:20px 0;}
.blog-book img{width:78px;height:auto;border-radius:6px;flex:0 0 auto;}
.blog-book .b-body{flex:1;min-width:0;}
.blog-book h3{font-family:"Poppins",sans-serif;font-size:19px;margin:0 0 6px;}
.blog-book p{margin:0 0 8px;font-size:15px;}
.blog-book .b-cta{display:inline-block;color:var(--blue);font-weight:600;}
.ratgeber{padding:60px 0;background:#fff;}
.ratgeber h2{text-align:center;font-family:"Poppins",sans-serif;font-weight:500;font-size:34px;margin:0 0 8px;}
.ratgeber .lead{text-align:center;max-width:700px;margin:0 auto 30px;}
.ratgeber .cards{display:flex;flex-wrap:wrap;gap:20px;max-width:900px;margin:0 auto;}
.ratgeber .card{flex:1 1 340px;background:#fff;border:1px solid #e6e6e6;border-radius:12px;padding:24px;box-shadow:0 2px 10px rgba(0,0,0,.04);}
.ratgeber .card h3{font-family:"Poppins",sans-serif;font-size:19px;margin:0 0 8px;}
.ratgeber .card p{font-size:15px;margin:0 0 12px;}
.ratgeber .card a{color:var(--blue);font-weight:600;}
@media(max-width:767px){.article h1{font-size:26px;}.ratgeber h2{font-size:27px;}}

/* ---------- FAQ ---------- */
.faq{padding:70px 0;background:var(--gray);}
.faq h2{
  text-align:center;
  font-family:"Poppins",sans-serif;
  font-weight:500;
  font-size:40px;
  margin:0 0 36px;
}
.faq .item{
  max-width:820px;
  margin:0 auto 14px;
  border:1px solid #dcdcdc;
  border-radius:10px;
  background:#fff;
  overflow:hidden;
}
.faq summary{
  cursor:pointer;
  list-style:none;
  padding:18px 22px;
  font-weight:600;
  font-size:18px;
  color:var(--text);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{
  content:"+";
  color:var(--blue);
  font-size:28px;
  line-height:1;
  font-weight:400;
  flex:0 0 auto;
}
.faq details[open] summary::after{content:"\2013";}
.faq .answer{padding:0 22px 20px;}
.faq .answer p{margin:0;}

/* ---------- Rodapé (3 colunas, escuro) ---------- */
.site-footer{
  background:#191715;
  color:#c9c2b8;
  padding:60px 20px 28px;
}
.footer-grid{
  max-width:1140px;margin:0 auto;
  display:flex;flex-wrap:wrap;gap:40px;
}
.footer-col{flex:1 1 260px;min-width:220px;}
.footer-brand h3{
  font-family:Georgia,"Times New Roman",serif;
  color:#c2a15b;font-size:23px;font-weight:700;margin:0 0 14px;
}
.footer-brand p{
  font-size:14px;line-height:1.7;color:#a89f92;
  max-width:330px;margin:0;
}
.footer-col h4{
  color:#c2a15b;font-family:"Poppins",sans-serif;font-weight:600;
  font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;
}
.footer-col ul{list-style:none;margin:0;padding:0;}
.footer-col li{margin-bottom:12px;}
.footer-col a{color:#cfc7bb;font-size:15px;transition:color .2s;}
.footer-col a:hover{color:#fff;}
.footer-bottom{
  max-width:1140px;margin:40px auto 0;padding-top:22px;
  border-top:1px solid #332f2a;
}
.footer-bottom .disclosure{
  font-size:12px;color:#8a8175;margin:0 0 10px;line-height:1.6;
}
.footer-bottom .copyright{font-size:13px;color:#8a8175;margin:0;}

/* ---------- Página de termos ---------- */
.legal{padding:60px 0;max-width:860px;}
.legal h1{font-size:34px;margin:0 0 10px;}
.legal h2,.legal h3{font-family:"Poppins",sans-serif;margin:30px 0 10px;}
.legal a{color:var(--blue);}
.legal ul{padding-left:22px;}

/* ---------- Navegação global ---------- */
.site-nav{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:6px 26px;
  margin:0 auto;padding:0 10px;
  max-width:var(--container);
}
.site-nav a{
  font-family:"Poppins",sans-serif;
  font-weight:500;font-size:15px;
  color:var(--text);text-decoration:none;
  padding:6px 2px;border-bottom:2px solid transparent;
  transition:color .18s,border-color .18s;
}
.site-nav a:hover{color:var(--blue);border-bottom-color:var(--blue);}
.site-nav a[aria-current="page"]{color:var(--blue);border-bottom-color:var(--blue);}

/* ---------- Breadcrumb ---------- */
.breadcrumb{
  max-width:820px;margin:0 auto;padding:16px 20px 0;
  font-size:14px;color:#888;
}
.breadcrumb a{color:#888;text-decoration:none;}
.breadcrumb a:hover{color:var(--blue);text-decoration:underline;}
.breadcrumb span{margin:0 6px;}

/* ---------- Tabelas dentro de artigos ---------- */
.article .table-wrap{margin:0 0 24px;}
.article table{
  width:100%;border-collapse:collapse;min-width:560px;background:#fff;
  border-radius:12px;overflow:hidden;box-shadow:0 0 0 1px #e3e3e3;
}
.article th,.article td{
  padding:12px 16px;text-align:left;vertical-align:top;
  border-bottom:1px solid #ececec;font-size:15px;
}
.article thead th{
  background:var(--blue);color:#fff;
  font-family:"Poppins",sans-serif;font-weight:600;
}
.article tbody td:first-child{font-weight:600;}
.article tbody tr:nth-child(even){background:#f6f8fc;}
.article tbody tr:last-child td{border-bottom:none;}

/* ---------- FAQ dentro de artigos ---------- */
.article-faq{margin:34px 0 0;}
.article-faq .item{
  margin:0 0 12px;border:1px solid #dcdcdc;
  border-radius:10px;background:#fff;overflow:hidden;
}
.article-faq summary{
  cursor:pointer;list-style:none;padding:15px 18px;
  font-weight:600;font-size:16px;
}
.article-faq summary::-webkit-details-marker{display:none;}
.article-faq summary::after{content:"+";float:right;color:var(--blue);font-weight:700;}
.article-faq details[open] summary::after{content:"–";}
.article-faq .answer{padding:0 18px 16px;}
.article-faq .answer p{margin:0;}

/* ---------- Caixa de destaque ---------- */
.note{
  background:#f6f8fc;border-left:4px solid var(--blue);
  padding:16px 20px;border-radius:8px;margin:0 0 22px;
}
.note p:last-child{margin-bottom:0;}

/* ===========================================================
   Responsivo
   =========================================================== */
@media(max-width:1024px){
  .book-grid a{flex:0 0 calc(50% - 16px);max-width:calc(50% - 16px);}
}
@media(max-width:767px){
  .headline{font-size:30px;}
  .subhead{font-size:22px;}
  .site-header .logo{width:100%;max-width:260px;}
  .book-grid{gap:16px;}
  .book-grid a{flex:0 0 100%;max-width:100%;}
  .feature{padding:45px 0;}
  .feature .row,.feature.reverse .row{flex-direction:column;}
  .feature h2,.author h2,.faq h2,.intro h2,.compare h2,.principles h2,.mistakes h2{font-size:28px;}
  .faq summary{font-size:16px;}
  .author .row{flex-direction:column;text-align:center;}
  .site-nav{gap:4px 16px;}
  .site-nav a{font-size:13.5px;}
  .article h1{font-size:28px;}
}
