/* VAZA ÓLEO — 2019 / 2026 */

:root{
  --bg:#f4ede2;
  --bg-alt:#ece3d4;
  --ink:#0c0c0c;
  --muted:#4a4540;
  --accent:#0c0c0c;
  --line:rgba(12,12,12,.18);
  --max:680px;
  --max-wide:1100px;
  --serif:"Playfair Display", Georgia, serif;
  --sans:"Inter", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--sans);
  font-weight:400;
  font-size:18px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}

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

/* MASTHEAD */
.masthead{
  padding:48px 0 28px;
  border-bottom:1px solid var(--line);
}
.masthead .container{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
.brand{
  font-family:var(--serif);
  font-weight:900;
  font-size:clamp(40px, 11vw, 86px);
  line-height:.95;
  letter-spacing:-.01em;
  display:flex;
  align-items:baseline;
  gap:.05em;
  flex-wrap:wrap;
  justify-content:center;
}
.brand .hash{font-weight:400;opacity:.55}
.brand .word{display:inline-block}
.tagline{
  font-family:var(--sans);
  font-size:14px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--muted);
  margin:0;
}

/* HERO */
.hero{margin:0;padding:0}
.hero img{width:100%;max-height:88vh;object-fit:cover}

/* BLOCOS DE TEXTO */
.block{padding:72px 0}
.block.alt{background:var(--bg-alt)}
.block.dark{background:var(--ink);color:#f4ede2}
.block.dark h2{color:#f4ede2}
.block.dark a{color:#f4ede2}

.block h2{
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(26px, 5vw, 38px);
  line-height:1.15;
  letter-spacing:-.01em;
  margin:0 0 24px;
}
.block h3{
  font-family:var(--sans);
  font-weight:700;
  font-size:13px;
  letter-spacing:.22em;
  text-transform:uppercase;
  margin:36px 0 10px;
  color:var(--muted);
}
.block.dark h3{color:#d9cdb8}
.block p{margin:0 0 18px;font-size:17px;line-height:1.65}
.block p.lead{font-size:20px;line-height:1.5;font-weight:500}
.block .kicker{
  font-size:12px;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--muted);
  margin:0 0 12px;
}
.block .center{text-align:center}
.block.alt .center,
.block .container.center{text-align:center}

/* PULL QUOTE / DESTAQUE */
.pull{
  font-family:var(--serif);
  font-size:clamp(22px, 4.5vw, 30px);
  line-height:1.3;
  font-style:italic;
  margin:28px 0;
  padding:24px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  font-weight:400;
}
.pull strong{font-style:normal;font-weight:700}

/* NÚMERO GIGANTE */
.big-stat{
  background:var(--ink);
  color:#f4ede2;
  padding:80px 0;
  text-align:center;
}
.big-stat .number{
  font-family:var(--serif);
  font-weight:900;
  font-size:clamp(140px, 30vw, 240px);
  line-height:.9;
  letter-spacing:-.03em;
  margin:0;
}
.big-stat .caption{
  font-family:var(--sans);
  font-size:14px;
  letter-spacing:.18em;
  text-transform:uppercase;
  max-width:420px;
  margin:18px auto 0;
  line-height:1.5;
}
.big-stat .source{
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin-top:24px;
  opacity:.55;
}

/* FIGURAS */
figure{margin:0}
figure.full img{
  width:100%;
  max-height:90vh;
  object-fit:cover;
}
.dual{
  display:grid;
  grid-template-columns:1fr;
  gap:2px;
}
.dual figure img{width:100%;height:100%;object-fit:cover;min-height:280px}
@media (min-width:720px){
  .dual{grid-template-columns:1fr 1fr}
}

/* BULLETS COMO PARÁGRAFOS COM RÉGUA */
.bullets p{
  border-left:2px solid var(--ink);
  padding-left:18px;
  margin:14px 0;
}
.bullets.tight p{margin:8px 0;font-size:16px}

.block .warn{
  font-weight:700;
  font-size:16px;
  margin-top:24px;
  padding:14px 18px;
  background:#e8dcc7;
  border-left:3px solid var(--ink);
}

/* HASHTAG GRANDE */
.cta-line{
  font-family:var(--serif);
  font-style:italic;
  font-size:clamp(20px, 4vw, 26px);
  margin:32px 0 12px;
}
.hashtag{
  font-family:var(--serif);
  font-weight:900;
  font-size:clamp(38px, 9vw, 64px);
  letter-spacing:-.01em;
  margin:18px 0 0;
  line-height:1;
}

/* EPÍLOGO */
.epilogo{
  background:var(--bg);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.epilogo h2{margin-bottom:10px}

/* PARCEIROS — LOGO WALL TIPOGRÁFICO */
.logo-wall{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:1px;
  background:var(--line);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin:40px 0 32px;
}
.logo-wall .logo{
  background:var(--bg);
  padding:40px 20px;
  text-align:center;
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(20px, 4vw, 26px);
  line-height:1.1;
  letter-spacing:-.01em;
  color:var(--ink);
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:120px;
  transition:background .3s ease;
}
.logo-wall .logo:hover{background:var(--bg-alt)}
.logo-wall .logo span{
  display:block;
  font-family:var(--sans);
  font-weight:400;
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--muted);
  margin-top:6px;
  line-height:1.4;
}
.partners-note{
  font-size:15px;
  line-height:1.7;
  color:var(--muted);
  font-style:italic;
  margin-top:24px;
}
@media (min-width:720px){
  .logo-wall{grid-template-columns:repeat(5, 1fr)}
}

/* REDES */
#redes p{font-size:17px;margin:8px 0}
.creditos{
  margin-top:36px;
  font-size:13px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
  line-height:1.7;
}

/* FOOTER */
footer{
  background:var(--ink);
  color:#a89e8c;
  padding:32px 0;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-align:center;
}
footer p{margin:0}

/* TIPO TABLET / DESKTOP — leitura mais larga */
@media (min-width:900px){
  body{font-size:19px}
  .block{padding:96px 0}
  .container{padding:0 32px}
}

/* PREFERS REDUCED MOTION */
@media (prefers-reduced-motion:no-preference){
  .hero img{transition:transform .8s ease}
}
