@font-face { font-family: "Source Serif 4"; src: url("../assets/fonts/SourceSerif4-Semibold.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Sans 3"; src: url("../assets/fonts/SourceSans3-Regular.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Sans 3"; src: url("../assets/fonts/SourceSans3-Semibold.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: swap; }
:root { --petroleo:#153F46; --marfim:#F5F2EA; --marfim-forte:#ebe7dc; --tijolo:#C64F3D; --linha:rgba(21,63,70,.18); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { min-width:320px; margin:0; color:var(--petroleo); background:var(--marfim); font:18px/1.62 "Source Sans 3",Arial,sans-serif; }
a { color:inherit; text-decoration-color:var(--tijolo); text-underline-offset:.24rem; }
a:focus-visible { outline:3px solid var(--tijolo); outline-offset:4px; }
.wrap { width:min(100% - 3rem, 74rem); margin:auto; }
.header { border-bottom:1px solid var(--linha); }
.header-inner { min-height:5.2rem; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; }
.brand { color:var(--petroleo); text-decoration:none; }
.brand strong { display:block; font:600 1.45rem/.95 "Source Serif 4",Georgia,serif; }
.brand span { display:block; margin-top:.3rem; font-size:.65rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.back { font-size:.9rem; font-weight:600; }
.hero { padding:clamp(4.2rem,10vw,9rem) 0 clamp(3.5rem,8vw,7rem); color:var(--marfim); background:var(--petroleo); }
.hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(14rem,.5fr); gap:2rem; align-items:end; }
.label { display:flex; align-items:center; gap:.7rem; margin:0 0 1.2rem; color:#f49a87; font-size:.73rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
.label::before { width:2.2rem; height:.14rem; content:""; background:var(--tijolo); }
h1,h2,h3 { font-family:"Source Serif 4",Georgia,serif; font-weight:600; letter-spacing:-.045em; line-height:.97; }
h1 { max-width:15ch; margin:0; font-size:clamp(3.2rem,6.4vw,6.3rem); }
.dek { max-width:38rem; margin:1.7rem 0 0; font-size:clamp(1.13rem,1.6vw,1.35rem); line-height:1.48; }
.hero-note { align-self:stretch; display:flex; flex-direction:column; justify-content:end; padding:1.35rem; border-left:1px solid rgba(245,242,234,.35); color:#d6e0db; font-size:.91rem; }
.hero-note strong { display:block; margin-bottom:.45rem; color:var(--marfim); }
.article { width:min(100% - 3rem, 46rem); margin:0 auto; padding:clamp(3.5rem,8vw,6.5rem) 0; }
.article > * + * { margin-top:1.5rem; }
.article h2 { margin-top:3rem; font-size:clamp(2rem,4vw,3.2rem); }
.article h3 { margin-top:2.2rem; font-size:1.6rem; }
.article p { margin-bottom:0; }
.article ul { padding-left:1.25rem; }
.article li + li { margin-top:.55rem; }
.callout { margin-top:2.4rem !important; padding:1.4rem 1.5rem; border-left:4px solid var(--tijolo); background:var(--marfim-forte); }
.callout strong { display:block; margin-bottom:.35rem; }
.sources { margin-top:3.4rem !important; padding-top:2rem; border-top:1px solid var(--linha); }
.sources h2 { margin-top:0; font-size:2rem; }
.sources ol { margin:1rem 0 0; padding-left:1.3rem; }
.sources li + li { margin-top:.8rem; }
.article-footer { padding:2.2rem 0; color:#c4d2ce; background:#0e3036; font-size:.9rem; }
.article-footer .wrap { display:flex; flex-wrap:wrap; justify-content:space-between; gap:1rem; }
.article-footer a { color:var(--marfim); }
@media (max-width:640px) { body{font-size:16px}.wrap,.article{width:min(100% - 2.25rem,74rem)}.header-inner{min-height:4.7rem}.hero-grid{grid-template-columns:1fr}.hero-note{padding:1.1rem 0 0;border-top:1px solid rgba(245,242,234,.35);border-left:0}.article{padding-block:3.4rem} }
