/* ============================================================
   MALVA — estilo das páginas institucionais (legais/conteúdo)
   ============================================================ */
:root {
  --cream: #FFFFFF; --graphite: #17140F; --wood: #E0552B; --greige: #6F6B63;
  --paper: #F7F5F1; --line: #E7E3DC; --moss: #2F6B4A; --dark: #1B1A18;
  --serif: "Sora", system-ui, -apple-system, sans-serif;
  --sans: "Inter", system-ui, -apple-system, sans-serif;
  --maxw: 820px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { font-family: var(--sans); color: var(--graphite); background: var(--cream); line-height: 1.65; font-size: 16px; }
a { color: var(--wood); text-decoration: none; }
a:hover { text-decoration: underline; }

/* Header */
.ph { position: sticky; top: 0; background: rgba(255,255,255,.9); backdrop-filter: blur(8px); border-bottom: 1px solid var(--line); z-index: 10; }
.ph__in { max-width: var(--maxw); margin: 0 auto; padding: 13px 20px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.ph__logo { display: inline-flex; align-items: center; gap: 10px; color: var(--graphite); }
.ph__logo svg { width: 30px; height: 30px; flex: none; }
.ph__logo .w { font-family: var(--serif); font-weight: 800; font-size: 1.25rem; letter-spacing: .04em; line-height: 1; display: block; }
.ph__logo .s { font-size: .5rem; letter-spacing: .3em; text-transform: uppercase; color: var(--greige); margin-top: 2px; display: block; }
.ph__back { font-size: .9rem; font-weight: 600; white-space: nowrap; }

/* Documento */
.doc { max-width: var(--maxw); margin: 0 auto; padding: 46px 20px 60px; }
.doc__eyebrow { font-size: .72rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--moss); margin-bottom: 10px; }
.doc h1 { font-family: var(--serif); font-weight: 800; font-size: clamp(1.9rem, 5vw, 2.6rem); letter-spacing: -.02em; line-height: 1.1; margin-bottom: 8px; }
.doc__upd { color: var(--greige); font-size: .9rem; margin-bottom: 28px; }
.doc .lead { font-size: 1.1rem; color: #463f37; margin-bottom: 26px; }
.doc h2 { font-family: var(--serif); font-weight: 700; font-size: 1.32rem; margin: 36px 0 10px; letter-spacing: -.01em; }
.doc h3 { font-weight: 700; font-size: 1.02rem; margin: 20px 0 6px; }
.doc p { margin: 0 0 14px; }
.doc ul, .doc ol { margin: 0 0 16px; padding-left: 22px; }
.doc li { margin-bottom: 7px; }
.doc strong { font-weight: 600; }
.doc .box { background: var(--paper); border: 1px solid var(--line); border-radius: 14px; padding: 16px 20px; margin: 0 0 22px; }
.doc .box h3 { margin-top: 0; }
.doc .box p:last-child, .doc .box ul:last-child { margin-bottom: 0; }
.doc .fill { background: rgba(224,85,43,.09); border: 1px dashed rgba(224,85,43,.45); border-radius: 6px; padding: 1px 7px; font-size: .92em; color: #9b4a52; white-space: nowrap; }
.doc hr { border: none; border-top: 1px solid var(--line); margin: 34px 0; }

/* Rodapé */
.pf { background: var(--dark); color: rgba(255,255,255,.75); }
.pf__in { max-width: var(--maxw); margin: 0 auto; padding: 34px 20px; text-align: center; }
.pf__links { display: flex; flex-wrap: wrap; gap: 8px 22px; justify-content: center; margin-bottom: 16px; }
.pf__links a { color: rgba(255,255,255,.85); font-size: .9rem; font-weight: 500; }
.pf p { font-size: .82rem; color: rgba(255,255,255,.6); line-height: 1.6; }
.pf a { color: rgba(255,255,255,.85); }
