/* Fato Público · Anuncie in the portal's identity (public/portal/portal.css): white, black text, the yellow only as a
   mark. It loads after app.css and turns its tokens light; the top and the footer are the portal's. Grid of 4 px */
html.pt {
  --bg: #ffffff; --alt: #f6f6f4; --card: #ffffff; --card-2: #f6f6f4;
  --ink: #0a0a0a; --ink-2: #4a4a48; --muted: #6b6b65; --line: #e6e6e1; --line-2: #d6d6d0;
  --sun: #ffd400; --f-sans: 'Inter', system-ui, sans-serif;
  color-scheme: light; background: var(--bg);
}
html.pt body { background: var(--bg); color: var(--ink); font: 400 16px/24px var(--f-sans); letter-spacing: 0; font-feature-settings: 'ss01', 'cv11'; }
.pt :focus-visible { outline: none; box-shadow: 0 0 0 3px #0a0a0a, 0 0 0 5px #ffd400; border-radius: 8px; }

/* the top, as the portal's: the brand, the sections and one action */
.pt-topo { position: sticky; top: 0; z-index: 60; height: calc(64px + env(safe-area-inset-top, 0px)); padding-top: env(safe-area-inset-top, 0px); background: rgba(255, 255, 255, .92); backdrop-filter: saturate(1.4) blur(12px); -webkit-backdrop-filter: saturate(1.4) blur(12px); border-bottom: 1px solid var(--line); }
.pt-in { max-width: 1120px; height: 100%; margin: 0 auto; padding: 0 16px; display: flex; align-items: center; gap: 24px; }
.pt-marca { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--ink); text-decoration: none; font-weight: 800; font-size: 18px; letter-spacing: -0.02em; white-space: nowrap; }
.pt-ico { width: 28px; height: 28px; border-radius: 8px; background: var(--sun); display: grid; place-items: center; }
.pt-ico svg { width: 18px; height: 18px; fill: none; stroke: var(--ink); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.pt-nav { display: none; gap: 4px; margin: 0 auto; }
.pt-nav a { font-size: 15px; font-weight: 600; color: var(--ink-2); padding: 8px 12px; border-radius: 999px; text-decoration: none; }
.pt-nav a:hover { color: var(--ink); background: var(--alt); }
.pt-cta { margin-left: auto; display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 12px; background: var(--ink); color: #fff; font-size: 14px; font-weight: 700; text-decoration: none; white-space: nowrap; }
@media (min-width: 900px) { .pt-nav { display: flex; } .pt-cta { margin-left: 0; } }

/* the page: flat buttons, light cards, one yellow mark in the heading */
.pt .anv main { padding: 48px 0 0; }
.pt-grifo { box-shadow: inset 0 -0.16em var(--sun); }
.pt .anv .btn { min-height: 48px; padding: 0 20px; border-radius: 12px; background: var(--sun); color: #0a0a0a; box-shadow: none; font: 700 15px/1 var(--f-sans); letter-spacing: 0; text-decoration: none; }
.pt .anv .btn::after { display: none; }
.pt .anv .btn.ghost { background: transparent; color: var(--ink); box-shadow: inset 0 0 0 1.5px var(--ink); }
.pt .t2-eye { color: var(--muted); font-size: 12px; line-height: 16px; letter-spacing: .04em; text-transform: uppercase; }
.pt .mk-tile.is-sun { background: var(--ink); color: #fff; box-shadow: none; }
.pt .mk-tile.is-sun dt, .pt .mk-tile.is-sun dd small { color: #b9b9b2; }
.pt .mk-grp b { color: var(--ink); }
.pt .anv-sub a { text-decoration: underline; text-underline-offset: 2px; }
.pt .anv-lead { background: var(--alt); box-shadow: none; }
.pt .anv-lead input:not(.an-hp) { background: #fff; border-color: var(--line-2); }
.pt .anv-lead input:focus { border-color: var(--ink); }

/* the charts in black and grey: the yellow stays a mark, never a surface */
.pt .ch .bar { fill: var(--ink); }
.pt .ch .bar.is-dim { fill: var(--line-2); }
.pt .ch .b:hover .bar { fill: var(--muted); }
.pt .ch .ln { stroke: var(--ink-2); }
.pt .ch .ar { fill: rgba(10, 10, 10, .06); }
.pt .mk-bl i::after { background: var(--ink); }
.pt .mk-chips li { background: var(--alt); }

/* the footer, black, as the portal's */
.pt-rod { margin-top: 80px; padding: 48px 0 calc(32px + env(safe-area-inset-bottom, 0px)); background: var(--ink); color: #b9b9b2; font-size: 14px; line-height: 20px; }
.pt-rod .wrap { max-width: 1120px; }
.pt-rod a { color: #ecece7; text-decoration: none; }
.pt-rod a:hover { color: #fff; text-decoration: underline; text-underline-offset: 2px; }
.pt-rod-marca { display: grid; gap: 12px; max-width: 46ch; padding-bottom: 32px; border-bottom: 1px solid #2a2a28; }
.pt-rod-marca .pt-marca { color: #fff; }
.pt-rod-marca p { margin: 0; }
.pt-rod-marca b { color: #fff; font-weight: 600; }
.pt-rod-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; padding: 32px 0; border-bottom: 1px solid #2a2a28; }
.pt-rod-col { display: grid; align-content: start; }
.pt-rod-t { margin: 0 0 4px; font-size: 12px; line-height: 16px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--sun); }
.pt-rod-col a { display: flex; align-items: center; min-height: 40px; }
.pt-rod .foot-legal { margin-top: 0; border-top: 0; color: #b9b9b2; }
.pt-rod .foot-legal a { color: #ecece7; }
@media (min-width: 900px) { .pt-rod-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 819px) { .pt .anv main { padding-top: 32px; } }
