/*
 * ESTILOS COMPARTILHADOS PELOS ARTIGOS E PELA POLÍTICA DE PRIVACIDADE.
 * Mantém identidade editorial, leitura confortável e comportamento responsivo.
 */
:root {
  --ink:#0d100e;
  --panel:#151a16;
  --paper:#f4f6f2;
  --green:#49e62e;
  --muted:#687068;
  --line:rgba(17,17,17,.14);
  --display:"Barlow Condensed",sans-serif;
  --body:"Inter",sans-serif;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:#171917; font-family:var(--body); }
a { color:inherit; }
/* Cabeçalho editorial e navegação de retorno ao conteúdo principal. */
.article-header {
  min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:28px;
  padding:12px clamp(20px,5vw,78px); background:var(--ink); color:white;
}
.article-brand img { width:175px; height:58px; display:block; object-fit:contain; filter:grayscale(1) invert(1); }
.article-nav { display:flex; align-items:center; gap:28px; }
.article-nav a { font-size:11px; font-weight:700; text-decoration:none; text-transform:uppercase; }
.article-nav .article-contact { padding:13px 17px; border:1px solid var(--green); }
/* Capa textual, metadados e fotografia de abertura. */
.article-hero { padding:100px clamp(20px,9vw,150px) 70px; background:var(--ink); color:white; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:40px; color:#899089; font-size:10px; text-transform:uppercase; }
.breadcrumbs a { text-decoration:none; }
.article-category { display:block; margin-bottom:22px; color:var(--green); font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.article-hero h1 {
  max-width:1050px; margin:0; font:800 clamp(58px,8vw,126px)/.86 var(--display);
  letter-spacing:-.03em; text-transform:uppercase;
}
.article-lead { max-width:760px; margin:35px 0 0; color:#b7bdb8; font-size:17px; line-height:1.75; }
.article-meta {
  display:flex; flex-wrap:wrap; gap:14px 28px; margin-top:38px; padding-top:24px;
  border-top:1px solid #303630; color:#909790; font-size:10px; text-transform:uppercase;
}
.article-banner {
  position:relative; overflow:hidden; min-height:clamp(360px,56vw,720px); margin:0; background:#202520;
}
.article-banner img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.article-banner::after {
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(5,8,6,.08),rgba(5,8,6,.68));
}
.article-banner figcaption {
  position:absolute; z-index:1; right:clamp(20px,5vw,80px); bottom:35px;
  color:white; font:800 clamp(62px,12vw,190px)/.75 var(--display); opacity:.18;
}
/* Corpo de leitura em conjunto com o box lateral de conversão. */
.article-layout {
  display:grid; grid-template-columns:minmax(0,760px) minmax(230px,310px);
  justify-content:center; gap:clamp(55px,8vw,120px); padding:95px clamp(20px,6vw,100px);
}
.article-body p { margin:0 0 28px; color:#3e443f; font-size:17px; line-height:1.9; }
.article-body h2 {
  margin:62px 0 22px; font:800 clamp(38px,4vw,58px)/.95 var(--display);
  text-transform:uppercase;
}
.article-body h2:first-child { margin-top:0; }
.article-aside { align-self:start; position:sticky; top:30px; padding:28px; border:1px solid var(--line); background:white; }
.article-aside strong { display:block; font:800 25px/1 var(--display); text-transform:uppercase; }
.article-aside p { color:var(--muted); font-size:12px; line-height:1.65; }
.article-aside a,.article-cta a {
  display:block; padding:15px 18px; border:1px solid var(--green); background:var(--ink); color:white;
  font-size:10px; font-weight:800; text-align:center; text-decoration:none; text-transform:uppercase;
}
.article-cta {
  margin-top:70px; padding:40px; border-left:5px solid var(--green); background:#e3e8e1;
}
.article-cta h2 { margin:0 0 15px; }
.article-cta p { margin-bottom:25px; }
.article-cta a { display:inline-block; min-width:260px; }
/* Recomendações de leitura e rodapé. */
.related { padding:85px clamp(20px,6vw,100px); background:#171c18; color:white; }
.related h2 { margin:0 0 38px; font:800 clamp(42px,5vw,70px)/.9 var(--display); text-transform:uppercase; }
.related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.related a { min-height:180px; display:flex; align-items:end; padding:25px; border:1px solid #343a35; text-decoration:none; }
.related span { color:var(--green); font-size:9px; text-transform:uppercase; }
.related strong { display:block; margin-top:12px; font:700 25px/1 var(--display); text-transform:uppercase; }
.article-footer {
  display:flex; justify-content:space-between; gap:25px; padding:32px clamp(20px,5vw,78px);
  background:#0d100e; color:#8d948e; font-size:10px;
}
.whatsapp-float {
  position:fixed; z-index:20; right:22px; bottom:22px; width:58px; height:58px;
  display:grid; place-items:center; border:2px solid white; border-radius:50%;
  background:#25d366; color:white; box-shadow:0 10px 28px rgba(0,0,0,.3);
}
.whatsapp-float svg { width:30px; fill:currentColor; }
/* Consentimento compartilhado com a página principal. */
.cookie-banner {
  position:fixed; z-index:100; right:clamp(14px,3vw,34px); bottom:clamp(14px,3vw,34px);
  width:min(620px,calc(100% - 28px)); display:grid; grid-template-columns:1fr auto; gap:24px;
  padding:24px; border:1px solid #343a35; background:#101411; color:white;
  box-shadow:0 20px 55px rgba(0,0,0,.38);
}
.cookie-banner strong { font:800 22px/1 var(--display); text-transform:uppercase; }
.cookie-banner p { margin:9px 0 7px; color:#b8beb9; font-size:12px; line-height:1.55; }
.cookie-banner a { color:var(--green); font-size:11px; font-weight:700; }
.cookie-actions { display:flex; align-items:center; gap:8px; }
.cookie-actions button {
  padding:12px 14px; border:1px solid #59605a; background:transparent; color:white;
  font:700 10px/1 var(--body); text-transform:uppercase; cursor:pointer;
}
.cookie-actions .cookie-accept { border-color:var(--green); background:var(--green); color:var(--ink); }
/* Estrutura tipográfica da política de privacidade. */
.privacy-page { max-width:900px; margin:auto; padding:90px clamp(20px,6vw,75px); }
.privacy-page h1 { margin:0 0 28px; font:800 clamp(54px,8vw,100px)/.85 var(--display); text-transform:uppercase; }
.privacy-page h2 { margin:50px 0 15px; font:800 34px/1 var(--display); text-transform:uppercase; }
.privacy-page p,.privacy-page li { color:#414842; font-size:16px; line-height:1.8; }
.privacy-page .privacy-updated { color:var(--muted); font-size:12px; text-transform:uppercase; }
/* Tablet e mobile: leitura em uma coluna. */
@media (max-width:800px) {
  .article-header { flex-wrap:wrap; }
  .article-nav { width:100%; flex-wrap:wrap; justify-content:space-between; gap:14px; }
  .article-hero { padding-top:75px; }
  .article-layout { grid-template-columns:1fr; }
  .article-aside { position:static; }
  .related-grid { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .article-header { padding-inline:17px; }
  .article-brand img { width:145px; }
  .article-nav { display:grid; grid-template-columns:1fr 1fr; gap:0 16px; }
  .article-nav a { padding:12px 0; border-bottom:1px solid #303630; text-align:center; }
  .article-nav .article-contact { padding:11px; }
  .article-hero { padding:65px 18px 50px; }
  .article-hero h1 { font-size:54px; }
  .article-lead { font-size:15px; }
  .article-banner { min-height:440px; }
  .article-layout { padding:65px 18px; }
  .article-body p { font-size:16px; }
  .article-cta { padding:30px 24px; }
  .article-cta a { min-width:0; width:100%; }
  .article-footer { flex-direction:column; }
  .cookie-banner { grid-template-columns:1fr; gap:17px; }
  .cookie-actions { display:grid; grid-template-columns:1fr 1fr; }
}
