/* =========================
   GovTechWin - style.css
   Consolidado a partir de style_all.txt
   ========================= */

:root {
  --bg: #f5f7fb;
  --surface: rgba(255, 255, 255, 0.82);
  --surface-strong: #ffffff;
  --primary: #123c66;
  --primary-2: #1c5d99;
  --accent: #d4a437;
  --accent-soft: #f4e2ad;
  --text: #17212b;
  --muted: #667789;
  --border: rgba(18, 60, 102, 0.12);
  --shadow: 0 18px 50px rgba(12, 31, 53, 0.10);
  --radius: 22px;
  --transition: 220ms ease;
}

/* Reset e base */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--text);
  background:
    radial-gradient(circle at top left, rgba(212, 164, 55, 0.18), transparent 24%),
    radial-gradient(circle at bottom right, rgba(28, 93, 153, 0.15), transparent 26%),
    linear-gradient(180deg, #eef3f9 0%, #f8fafc 48%, #eef2f7 100%);
  min-height: 100vh;
}

main {
  padding: 42px 0 40px;
}

footer,
.site-footer {
  padding: 22px 0 40px;
  color: var(--muted);
  font-size: 0.94rem;
}

.container {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}

.footer-content {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  display: grid;
  gap: 4px;
}

/* Header e navegação */
.header-wrap {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  background: rgba(245, 247, 251, 0.72);
  border-bottom: 1px solid rgba(18, 60, 102, 0.06);
}

header {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 24px;
  padding: 10px 0 12px;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: inherit;
  padding: 0;
  border: none;
  box-shadow: none;
}

.logo { height: auto; width: auto; }

.logo-image {
  width: auto;
  height: 84px;
  max-width: 324px;
  object-fit: contain;
  border-radius: 0;
}

.brand-text {
  min-width: 0;
}

.brand-text h1 {
  font-size: 1.08rem;
  line-height: 1.1;
  letter-spacing: 0.01em;
}

.brand-text span {
  display: block;
  color: var(--muted);
  font-size: 0.92rem;
  margin-top: 4px;
}

.menu {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  padding: 6px;
  margin-left: auto;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(18, 60, 102, 0.08);
  border-radius: 999px;
  box-shadow: 0 10px 24px rgba(10, 24, 43, 0.05);
  flex-wrap: nowrap;
  overflow-x: auto;
  max-width: 100%;
}

.menu a,
.menu button {
  border: 0;
  background: transparent;
  color: #667789;
  padding: 13px 20px;
  border-radius: 999px;
  font-size: 0.95rem;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: transform var(--transition), background var(--transition), color var(--transition), box-shadow var(--transition);
}

.menu a:hover,
.menu button:hover {
  color: var(--primary);
  background: rgba(18, 60, 102, 0.06);
  transform: translateY(-1px);
}

.menu a.active,
.menu button.active {
  background: linear-gradient(135deg, #184c80, #245f98);
  color: #fff;
  box-shadow: 0 8px 18px rgba(18, 60, 102, 0.16);
}

/* Blocos base */
.hero-card,
.stats-card,
.section-card,
.section-shell,
.card,
.panel,
.form-card,
.page-shell,
.compare-section,
.table-shell,
.cta,
.cta-band {
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
  border-radius: var(--radius);
}

.card,
.panel,
.stat,
.metric-card,
.plan,
.flow-step {
  background: var(--surface-strong);
  border: 1px solid rgba(18, 60, 102, 0.08);
  border-radius: 18px;
}

.section-shell,
.table-shell {
  padding: 34px;
  margin-bottom: 24px;
}

.card,
.panel,
.metric-card {
  padding: 22px;
}

.badge {
  background: rgba(28, 93, 153, 0.08);
  color: var(--primary-2);
  border: 1px solid rgba(28, 93, 153, 0.14);
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 0.9rem;
  font-weight: 700;
  white-space: nowrap;
}

footer.container {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.tag {
  display: inline-flex;
  align-items: center;
  gap: 10px;

  padding: 10px 18px;
  width: fit-content;

  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: .02em;

  color: #8a6717;

  background: linear-gradient(135deg,
      rgba(212, 164, 55, 0.18),
      rgba(212, 164, 55, 0.08));

  border: 1px solid rgba(212, 164, 55, 0.35);

  border-radius: 999px;

  box-shadow: 0 6px 14px rgba(212, 164, 55, 0.18);

  margin-bottom: 22px;
}

.tag::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;

  background: #d4a437;

  box-shadow: 0 0 0 4px rgba(212, 164, 55, 0.15);
}

.btn {
  text-decoration: none;
  border-radius: 14px;
  padding: 14px 20px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform var(--transition), box-shadow var(--transition), background var(--transition);
  border: 1px solid transparent;
  font-family: inherit;
  cursor: pointer;
}

.btn:hover {
  transform: translateY(-2px);
}

.btn-primary {
  background: linear-gradient(135deg, var(--primary), var(--primary-2));
  color: #fff;
  box-shadow: 0 14px 26px rgba(18, 60, 102, 0.22);
}

.btn-secondary {
  background: rgba(18, 60, 102, 0.06);
  color: var(--primary);
  border: 1px solid rgba(18, 60, 102, 0.1);
}

.hero-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 24px;
}

.mini-title {
  color: var(--muted);
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* Grids */
.grid-2,
.grid-3,
.stats-grid,
.metrics-grid {
  display: grid;
  gap: 16px;
}

.grid-2 {
  grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
  grid-template-columns: repeat(3, 1fr);
}

.stats-grid {
  grid-template-columns: 1fr;
  gap: 14px;
}

.metrics-grid {
  grid-template-columns: repeat(4, 1fr);
  margin-top: 24px;
}

/* Hero base */
.hero {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 28px;
  align-items: stretch;
}

.hero-card {
  padding: 44px;
  position: relative;
  overflow: hidden;
  grid-column: 1 / -1;
}

.hero-card::after {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: -90px;
  top: -90px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(212, 164, 55, 0.26) 0%, rgba(212, 164, 55, 0) 70%);
}

.hero h2,
h1 {
  color: #102a46;;
  /* color: #102a46; */
}

.hero h2 {
  font-size: clamp(2.1rem, 4vw, 3.6rem);
  line-height: 1.05;
  max-width: 22ch;
  margin-bottom: 16px;
  text-wrap: balance;
}

.hero-card h1 {
  font-size: clamp(2.2rem, 5vw, 3.7rem);
  line-height: 1.04;
  margin-bottom: 16px;
  max-width: 12ch;
  color: #fff;
}

.hero p {
  max-width: 62ch;
  color: var(--muted);
  font-size: 1.02rem;
  line-height: 1.7;
  width: 100%;
}

.lead {
  color: rgba(255, 255, 255, 0.92);
  font-size: 1.05rem;
  line-height: 1.75;
  max-width: 62ch;
}

.hero-copy {
  margin-top: 16px;
  display: grid;
  gap: 10px;
  color: rgba(255, 255, 255, 0.86);
  line-height: 1.7;
}

.hero-copy p {
  color: inherit;
}

.hero .tag {
  font-weight: 800;
}

.tag:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(212, 164, 55, 0.25);
}

.stats-card {
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 18px;
}

.stat {
  padding: 18px;
}

.stat strong,
.metric-card strong {
  display: block;
  font-size: 1.6rem;
  color: var(--primary);
  margin-bottom: 6px;
}

.stat span,
.metric-card span,
.metric-card small {
  color: var(--muted);
  line-height: 1.5;
}

/* Seções */
.content {
  margin-top: 28px;
  display: grid;
  gap: 22px;
}

.section-card {
  padding: 34px;
  display: none;
  animation: fadeUp 320ms ease;
}

.section-card.active {
  display: block;
}

.section-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 24px;
  flex-wrap: wrap;
}

.section-head h2,
.section-head h3 {
  font-size: 1.7rem;
  color: #102a46;
  margin-bottom: 8px;
}

.section-head p {
  color: var(--muted);
  max-width: 74ch;
  line-height: 1.7;
}

.item {
  background: var(--surface-strong);
  border: 1px solid rgba(18, 60, 102, 0.08);
  border-radius: 18px;
  padding: 22px;
  transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}

.item:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 28px rgba(10, 24, 43, 0.08);
  border-color: rgba(28, 93, 153, 0.18);
}

.item h4,
.card h3,
.card h4,
.panel h3,
.flow-step h3 {
  color: var(--primary);
  margin-bottom: 10px;
}

.item p,
.item li,
.card p,
.card li,
.panel li,
.flow-step p,
.compare td,
.intro,
.compare-header p,
.callout p,
.founder-copy p {
  color: var(--muted);
  line-height: 1.65;
}

.intro {
  margin-bottom: 32px;
}

.item ul,
.card ul,
.panel ul,
.clean,
.leadership-list {
  padding-left: 18px;
  display: grid;
  gap: 8px;
}

/* Timeline */
.timeline {
  display: grid;
  gap: 14px;
}

.timeline-step {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 16px;
  align-items: start;
  padding: 18px;
  background: var(--surface-strong);
  border: 1px solid rgba(18, 60, 102, 0.08);
  border-radius: 18px;
}

.timeline-step strong {
  display: inline-grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(18, 60, 102, 0.12), rgba(28, 93, 153, 0.16));
  color: var(--primary);
  font-size: 1rem;
}

/* CTA */
.cta,
.cta-band {
  padding: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  background: linear-gradient(135deg, rgba(18, 60, 102, 0.97), rgba(28, 93, 153, 0.95));
  color: #fff;
  margin-top: 24px;
}

.cta h3,
.cta-band h2 {
  font-size: 1.6rem;
  margin-bottom: 8px;
}

.cta p,
.cta-band p {
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.65;
  max-width: 160ch;
}

.cta .btn-secondary,
.cta-band .btn-secondary {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.16);
  color: #fff;
}

/* Método */
.flow-strip {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
}

.flow-step {
  padding: 22px;
  min-height: 160px;
}

.flow-num {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  margin-bottom: 12px;
  background: rgba(212, 164, 55, 0.16);
  color: #8a6717;
  font-weight: 800;
}

.pillars .card {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.pillars .tese {
  font-weight: 800;
  color: var(--primary);
  margin-bottom: 10px;
}

.pillars .goal {
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid rgba(18, 60, 102, 0.08);
}

.compare-wrap {
  overflow-x: auto;
  border-radius: 18px;
}

.compare {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
  background: #fff;
}

.compare th,
.compare td {
  border-bottom: 1px solid rgba(18, 60, 102, 0.08);
  padding: 16px;
  text-align: left;
  vertical-align: top;
}

.compare th {
  color: var(--primary);
  background: rgba(18, 60, 102, 0.04);
  font-size: 0.95rem;
}

.compare .note {
  display: block;
  font-size: 0.82rem;
  color: var(--muted);
  font-weight: 400;
  margin-top: 4px;
}

.cmp {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.84rem;
  font-weight: 700;
}

.cmp-ok {
  background: rgba(28, 93, 153, 0.1);
  color: var(--primary-2);
}

.cmp-opt {
  background: rgba(212, 164, 55, 0.12);
  color: #8a6717;
}

.cmp-no {
  background: rgba(102, 119, 137, 0.12);
  color: var(--muted);
}

.faq details {
  background: #fff;
  border: 1px solid rgba(18, 60, 102, 0.08);
  border-radius: 16px;
  padding: 18px 20px;
}

.faq details+details {
  margin-top: 12px;
}

.faq summary {
  cursor: pointer;
  color: var(--primary);
  font-weight: 700;
}

.faq p {
  margin-top: 12px;
  color: var(--muted);
  line-height: 1.65;
}

/* Serviços */
.page-shell {
  padding: 40px;
}

.page-shell .tag {
  background: rgba(212, 164, 55, 0.12);
  color: #8a6717;
  border: 1px solid rgba(212, 164, 55, 0.22);
  margin-bottom: 18px;
}

.page-subtitle {
  font-size: 1.45rem;
  color: var(--primary);
  margin-bottom: 12px;
}

.plan {
  overflow: hidden;
}

.plan summary {
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 22px;
  cursor: pointer;
}

.plan summary::-webkit-details-marker {
  display: none;
}

.plan-title {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--primary);
  margin-bottom: 8px;
}

.plan-sub {
  color: var(--muted);
  line-height: 1.6;
}

.plan-badge {
  font-size: 0.78rem;
  font-weight: 800;
  padding: 5px 10px;
  border-radius: 999px;
  color: #8a6717;
  background: rgba(212, 164, 55, 0.14);
  border: 1px solid rgba(212, 164, 55, 0.24);
}

.plan-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  font-weight: 700;
  white-space: nowrap;
}

.t-open {
  display: none;
}

.plan[open] .t-open {
  display: inline;
}

.plan[open] .t-closed {
  display: none;
}

.plan[open] .t-arrow {
  transform: rotate(180deg);
}

.t-arrow {
  transition: transform var(--transition);
}

.plan-body {
  padding: 0 22px 22px;
  border-top: 1px solid rgba(18, 60, 102, 0.08);
}

.plan-body h4 {
  margin: 18px 0 12px;
  color: var(--primary);
  font-size: 1rem;
}

/* Destaque visual dos cards de planos */
.grid-3 .plan {
  background: linear-gradient(180deg, rgba(232, 242, 252, 0.95), rgba(255, 255, 255, 0.98));
  border: 1px solid rgba(28, 93, 153, 0.18);
  box-shadow: 0 14px 30px rgba(18, 60, 102, 0.08);
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.grid-3 .plan:hover {
  transform: translateY(-4px);
  border-color: rgba(28, 93, 153, 0.28);
  box-shadow: 0 20px 38px rgba(18, 60, 102, 0.12);
}

.grid-3 .plan summary {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.28), rgba(255, 255, 255, 0));
}

.grid-3 .plan-title {
  color: #0f3d68;
  font-size: 1.18rem;
}

.grid-3 .plan-sub {
  color: #4f6478;
}

.grid-3 .plan-body {
  background: rgba(255, 255, 255, 0.55);
}

.grid-3 .plan[open] {
  border-color: rgba(28, 93, 153, 0.30);
  box-shadow: 0 22px 42px rgba(18, 60, 102, 0.14);
}

.grid-3 .plan.plan-soon {
  background: linear-gradient(180deg, rgba(244, 234, 201, 0.42), rgba(232, 242, 252, 0.92));
  border: 1px solid rgba(212, 164, 55, 0.42);
}

.grid-3 .plan.plan-soon .plan-sub {
  color: #8a6717;
  font-weight: 700;
}

.mono {
  margin-top: 14px;
  color: var(--primary);
  font-weight: 700;
}

.compare-section {
  margin-top: 30px;
  padding: 28px;
}

.compare-header h2 {
  font-size: 1.7rem;
  color: #102a46;
  margin-bottom: 8px;
}

.compare-wrap {
  overflow-x: auto;
  margin-top: 18px;
  border-radius: 18px;
  background: var(--surface-strong);
  border: 1px solid rgba(18, 60, 102, 0.08);
}

.compare-section .compare {
  min-width: 860px;
}

.compare tbody tr:last-child td {
  border-bottom: 0;
}

.compare .cmp {
  justify-content: center;
  min-width: 78px;
  padding: 7px 12px;
  font-weight: 800;
}

.callout {
  margin-top: 24px;
  padding: 26px;
}

.callout h3 {
  font-size: 1.35rem;
  color: #102a46;
  margin-bottom: 14px;
}

/* Mercado / diferenciais */
.metric {
  display: grid;
  gap: 8px;
}

.metric strong {
  font-size: 1.85rem;
  color: var(--primary);
}

.note {
  display: inline-block;
  margin-top: 6px;
  color: #8a6717;
  font-size: 0.85rem;
  font-weight: 700;
}

.table-wrap {
  width: 100%;
  overflow-x: auto;
  border-radius: 18px;
  border: 1px solid rgba(18, 60, 102, 0.08);
  background: #fff;
}

table {
  width: 100%;
  border-collapse: collapse;
  min-width: 720px;
}

th {
  background: linear-gradient(135deg, var(--primary), var(--primary-2));
  color: white;
  padding: 14px 16px;
  text-align: left;
  font-size: 0.95rem;
}

td {
  padding: 14px 16px;
  border-bottom: 1px solid rgba(18, 60, 102, 0.08);
  color: var(--muted);
  vertical-align: top;
  line-height: 1.55;
}

tbody tr:hover {
  background: rgba(18, 60, 102, 0.03);
}

.legend {
  margin-top: 14px;
  color: var(--muted);
  line-height: 1.7;
  font-size: 0.95rem;
}

/* Contato */
.form-card {
  padding: 32px;
  background: rgba(255, 255, 255, 0.96);
}

.form-card h2 {
  font-size: 1.55rem;
  margin-bottom: 10px;
  color: var(--primary);
}

.form-card p {
  color: var(--muted);
  line-height: 1.7;
  margin-bottom: 18px;
}

.form-grid {
  display: grid;
  gap: 16px;
}

.field {
  display: grid;
  gap: 8px;
}

.field label {
  font-weight: 700;
  color: var(--primary);
}

.field input,
.field select,
.field textarea {
  width: 100%;
  min-height: 52px;
  border-radius: 14px;
  border: 1px solid rgba(18, 60, 102, 0.14);
  background: #fff;
  padding: 14px 16px;
  font: inherit;
  color: var(--text);
  outline: none;
  transition: border-color var(--transition), box-shadow var(--transition);
}

.field textarea {
  min-height: 120px;
  resize: vertical;
}

.field input:focus,
.field select:focus,
.field textarea:focus {
  border-color: rgba(28, 93, 153, 0.5);
  box-shadow: 0 0 0 4px rgba(28, 93, 153, 0.08);
}

.panel-white {
  margin-top: 24px;
  background: rgba(255, 255, 255, 0.98);
  color: var(--text);
  border-radius: 18px;
  padding: 24px;
}

.panel-white h2,
.panel-white h3,
.signature-name,
.founder-name {
  color: var(--primary);
}

.panel-white ul {
  padding-left: 18px;
  display: grid;
  gap: 8px;
  color: var(--muted);
  line-height: 1.65;
}

.founder-shell {
  padding: 42px;
  text-align: center;
  background: linear-gradient(135deg, rgba(18, 60, 102, 0.04), rgba(212, 164, 55, 0.08));
}

.founder-intro {
  max-width: 760px;
  margin: 0 auto;
  display: grid;
  gap: 16px;
  justify-items: center;
}

.ceo-photo-wrap {
  width: min(100%, 320px);
  padding: 10px;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(18, 60, 102, 0.08);
  box-shadow: 0 18px 40px rgba(12, 31, 53, 0.10);
}

.ceo {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: 22px;
}

.signature-block {
  display: grid;
  gap: 4px;
  justify-items: center;
  margin-top: 4px;
}

.signature-label {
  color: #8a6717;
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.signature-name {
  font-size: clamp(1.6rem, 3.2vw, 2.2rem);
  font-weight: 800;
  line-height: 1.1;
}

.signature-role {
  color: var(--muted);
  font-weight: 600;
}

.founder-copy {
  max-width: 820px;
  margin: 0 auto;
  display: grid;
  gap: 14px;
  text-align: left;
}

.leadership-list {
  max-width: 620px;
  margin: 6px auto 0;
  text-align: left;
}

.leadership-card {
  background: linear-gradient(135deg, rgba(18, 60, 102, 0.05), rgba(212, 164, 55, 0.08));
  border: 1px solid rgba(18, 60, 102, 0.08);
  border-radius: 18px;
  padding: 24px;
  display: grid;
  gap: 14px;
  height: 100%;
}

.leadership-card .kicker,
.founder-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #8a6717;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.leadership-card .kicker::before,
.founder-kicker::before {
  content: "";
  width: 34px;
  height: 2px;
  background: var(--accent);
  display: inline-block;
}

.leadership-card h3,
.founder-name {
  font-size: 1.55rem;
}

/* Animação */
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Responsivo */
@media (max-width: 980px) {
  header {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .menu {
    margin-left: 0;
    width: 100%;
    justify-content: flex-start;
  }

  .logo {
    height: 64px;
    width: auto;
  }

  .hero,
  .grid-2,
  .grid-3,
  .metrics-grid,
  .flow-strip {
    grid-template-columns: 1fr;
  }

  .founder-shell,
  .hero-card,
  .form-card,
  .section-shell,
  .table-shell,
  .page-shell,
  .compare-section,
  .cta,
  .cta-band,
  .stats-card {
    padding: 28px;
  }
}

@media (max-width: 640px) {
  .brand {
    padding: 8px 12px;
  }

  .logo {
    height: 64px;
    width: auto;
  }

  .hero-card,
  .form-card,
  .section-shell,
  .table-shell,
  .page-shell,
  .compare-section,
  .cta,
  .cta-band,
  .stats-card,
  .callout,
  .founder-shell {
    padding: 22px;
  }

  .menu a,
  .menu button {
    padding: 11px 16px;
  }

  h1,
  .hero-card h1 {
    max-width: 13ch;
  }

  .hero-actions {
    flex-direction: column;
  }

  .hero-actions .btn {
    width: 100%;
  }

  .timeline-step {
    grid-template-columns: 1fr;
  }

  .plan summary {
    flex-direction: column;
  }

  .ceo-photo-wrap {
    width: min(100%, 260px);
  }

  .founder-copy {
    text-align: left;
  }
}

/* Home premium - padrão consultoria */
.hero-premium {
  grid-template-columns: 1fr;
  margin-bottom: 34px;
}

.hero-card h2,
.hero-card p {
  text-align: justify;
  text-justify: inter-word;
}

.hero-card-premium {
  grid-column: 1 / -1;
  max-width: 100%;
  padding: 52px;
  background:
    radial-gradient(circle at top right, rgba(212, 164, 55, 0.16), transparent 22%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(255, 255, 255, 0.92));
  border: 1px solid rgba(18, 60, 102, 0.08);
  box-shadow: 0 22px 56px rgba(10, 24, 43, 0.08);
  position: relative;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* .hero-card-premium .tag, */
.hero-card-premium h2,
.hero-card-premium p {
  width: 100%;
  max-width: none;
}

.hero-card-premium::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--radius);
  pointer-events: none;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.02), rgba(18, 60, 102, 0.01));
}

.hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  color: #8a6717;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.hero-kicker::before {
  content: "";
  width: 42px;
  height: 2px;
  background: linear-gradient(90deg, #d4a437, #ead7a4);
  display: inline-block;
}

.hero-title {
  font-size: clamp(2.9rem, 5vw, 4.6rem);
  line-height: 1.02;
  letter-spacing: -0.03em;
  color: #0f2b46;
  max-width: 14ch;
  margin-bottom: 24px;
  text-wrap: balance;
}

.hero-description {
  font-size: 1.08rem;
  line-height: 1.8;
  color: #5b6b7c;
  max-width: 62ch;
}

.hero-card-premium .hero-actions {
  margin-top: 30px;
}

.hero-card-premium .btn-primary {
  background: linear-gradient(135deg, #123c66, #1c5d99);
  color: #fff;
  box-shadow: 0 14px 24px rgba(18, 60, 102, 0.18);
}

.hero-card-premium .btn-secondary {
  background: rgba(255, 255, 255, 0.92);
  color: #123c66;
  border: 1px solid rgba(18, 60, 102, 0.14);
}

@media (max-width: 980px) {
  .hero-card-premium {
    padding: 36px;
  }

  .hero-title {
    max-width: 15ch;
    font-size: clamp(2.3rem, 7vw, 3.6rem);
  }

  .hero-description {
    max-width: 100%;
  }
}

@media (max-width: 640px) {
  .hero-card-premium {
    padding: 26px;
  }

  .hero-kicker {
    font-size: 0.74rem;
    letter-spacing: 0.06em;
  }

  .hero-kicker::before {
    width: 28px;
  }

  .hero-title {
    max-width: 100%;
    font-size: clamp(2rem, 9vw, 2.8rem);
  }
}

/* Header canonico padronizado */
.header-wrap {
  position: sticky;
  top: 0;
  z-index: 60;
}
.header-wrap .container {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}
.header-wrap .brand,
.header-wrap .brand:link,
.header-wrap .brand:visited {
  display: inline-flex;
  align-items: center;
  padding: 0;
  margin: 0;
}
.header-wrap .brand img,
.header-wrap .brand .logo-image {
  width: auto !important;
  height: 93px !important;
  max-width: 357px !important;
  object-fit: contain;
}
.header-wrap .menu {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  padding: 6px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(18, 60, 102, 0.08);
  border-radius: 999px;
  box-shadow: 0 10px 24px rgba(10, 24, 43, 0.05);
}
.header-wrap .menu .nav-link {
  padding: 13px 18px;
  border-radius: 999px;
  font-size: 0.92rem;
  font-weight: 700;
  color: #667789;
  white-space: nowrap;
}
.header-wrap .menu .nav-link:hover {
  color: var(--primary);
  background: rgba(18, 60, 102, 0.06);
}
.header-wrap .menu .nav-link.active {
  background: linear-gradient(135deg, #184c80, #245f98);
  color: #fff;
  box-shadow: 0 8px 18px rgba(18, 60, 102, 0.16);
}
@media (max-width: 980px) {
  .header-wrap header {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .header-wrap .brand img,
  .header-wrap .brand .logo-image {
    height: 64px !important;
    max-width: 240px !important;
  }
  .header-wrap .menu {
    width: 100%;
    justify-content: flex-start;
    overflow-x: auto;
  }
}
:root {
  --blog-primary: #0A1B4D;
  --blog-primary-2: #123c66;
  --blog-accent: #C99A3A;
  --blog-soft: #F4F1EA;
  --blog-text: #1f2a36;
  --blog-muted: #647182;
  --blog-border: rgba(10, 27, 77, 0.12);
  --blog-shadow: 0 24px 70px rgba(10, 27, 77, 0.10);
}

.blog-site {
  background:
    radial-gradient(circle at 5% 0%, rgba(201,154,58,0.12), transparent 26%),
    radial-gradient(circle at 95% 12%, rgba(18,60,102,0.10), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f7f9fc 50%, #eef3f8 100%);
  color: var(--blog-text);
}

.blog-shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.blog-kicker, .section-kicker { display:inline-flex; align-items:center; gap:10px; color:#9a6d24; font-weight:800; letter-spacing:.16em; text-transform:uppercase; font-size:.74rem; }
.blog-kicker::before, .section-kicker::before { content:""; width:28px; height:1px; background:var(--blog-accent); }

.blog-hero { padding: 74px 0 52px; }
.blog-hero-grid { display:grid; grid-template-columns: 1fr; gap:34px; align-items:stretch; }
.blog-hero-copy, .blog-hero-panel, .bottom-cta-card, .article-insight-card, .sidebar-card, .post-card, .related-card {
  background: rgba(255,255,255,.88); border:1px solid var(--blog-border); box-shadow: var(--blog-shadow); border-radius:30px;
}
.blog-hero-copy { padding:54px; }
.blog-hero-copy-wide { width:100%; position:relative; overflow:hidden; }
.blog-hero-copy-wide::after { content:""; position:absolute; width:280px; height:280px; right:-82px; top:-96px; border-radius:999px; border:1px solid rgba(201,154,58,.25); background:radial-gradient(circle, rgba(201,154,58,.10), transparent 62%); pointer-events:none; }
.blog-hero h1 { margin:18px 0 22px; color:var(--blog-primary); font-size:clamp(2.45rem, 4vw, 4.7rem); line-height:.98; letter-spacing:-.055em; font-weight:500; max-width:980px; }
.blog-hero p { font-size:1.08rem; color:var(--blog-muted); line-height:1.85; max-width:760px; }
.blog-hero-actions, .article-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:28px; }
.blog-hero-panel { padding:34px; display:flex; flex-direction:column; justify-content:space-between; background:linear-gradient(145deg, rgba(10,27,77,.96), rgba(18,60,102,.94)); color:#fff; overflow:hidden; position:relative; }
.blog-hero-panel::after { content:""; position:absolute; width:220px; height:220px; right:-60px; bottom:-70px; border:1px solid rgba(201,154,58,.36); border-radius:999px; }
.blog-hero-panel span { color:#E7C877; font-size:.78rem; text-transform:uppercase; letter-spacing:.14em; font-weight:800; }
.blog-hero-panel strong { display:block; margin:14px 0; font-size:2.2rem; letter-spacing:-.045em; line-height:1.05; }
.blog-hero-panel p { color:rgba(255,255,255,.78); line-height:1.75; }
.blog-hero-panel ul { list-style:none; margin:28px 0 0; padding:0; display:grid; gap:12px; }
.blog-hero-panel li { padding:14px; border:1px solid rgba(255,255,255,.14); border-radius:18px; background:rgba(255,255,255,.06); }
.blog-hero-panel li a { display:block; color:#fff; font-weight:800; text-decoration:none; line-height:1.32; }
.blog-hero-panel li span { display:block; margin-top:6px; color:rgba(255,255,255,.62); letter-spacing:0; text-transform:none; }

.btn-primary, .btn-secondary, .btn-tertiary { display:inline-flex; min-height:50px; align-items:center; justify-content:center; border-radius:999px; padding:13px 22px; font-weight:800; text-decoration:none; transition:.2s ease; }
.btn-primary { background:linear-gradient(135deg,#0A1B4D,#174a7d); color:#fff; box-shadow:0 14px 28px rgba(10,27,77,.18); }
.btn-secondary { background:linear-gradient(135deg,#E7C877,#C99A3A); color:var(--blog-primary); border:1px solid rgba(154,109,36,.32); box-shadow:0 12px 24px rgba(201,154,58,.20); }
.btn-tertiary { background:rgba(255,255,255,.86); color:var(--blog-primary); border:1px solid rgba(10,27,77,.16); }
.btn-primary:hover, .btn-secondary:hover, .btn-tertiary:hover { transform:translateY(-2px); }

.blog-intro { padding:44px 0 18px; }
.intro-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:44px; align-items:start; padding:44px; border-radius:30px; background:rgba(255,255,255,.72); border:1px solid rgba(10,27,77,.08); }
.intro-grid h2, .posts-head h2, .related-section h2, .bottom-cta-card h2 { margin-top:16px; color:var(--blog-primary); font-size:clamp(1.9rem,3vw,3.1rem); line-height:1.06; letter-spacing:-.04em; font-weight:500; }
.intro-grid p { color:var(--blog-muted); line-height:1.85; }
.intro-grid p + p { margin-top:16px; }

.blog-posts-section { padding:54px 0 70px; }
.posts-head { display:grid; grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr); gap:24px; align-items:end; margin-bottom:28px; }
.blog-filter-panel { display:grid; grid-template-columns:minmax(0,1fr) 240px; gap:18px; align-items:center; padding:18px; border:1px solid rgba(10,27,77,.10); border-radius:24px; background:rgba(255,255,255,.76); box-shadow:0 14px 38px rgba(10,27,77,.06); }
.filter-panel-copy span { display:block; color:#9a6d24; font-size:.72rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; margin-bottom:6px; }
.filter-panel-copy strong { display:block; color:var(--blog-primary); font-size:1.04rem; line-height:1.2; }
.filter-panel-copy p { margin:6px 0 0; color:var(--blog-muted); font-size:.92rem; line-height:1.55; }
.filter-control { display:grid; gap:7px; }
.filter-control label { color:var(--blog-primary); font-size:.76rem; font-weight:900; letter-spacing:.10em; text-transform:uppercase; }
.blog-filter-select { width:100%; min-height:48px; border:1.5px solid rgba(201,154,58,.72); border-radius:14px; background:linear-gradient(180deg,#fff8e6 0%, #f4e6c2 100%); color:var(--blog-primary); padding:0 42px 0 14px; font-weight:900; cursor:pointer; box-shadow:inset 0 1px 0 rgba(255,255,255,.78), 0 10px 22px rgba(201,154,58,.14); }
.blog-filter-select:focus { outline:3px solid rgba(201,154,58,.26); border-color:#B58224; }
.filter-control small { color:#7b8797; font-size:.84rem; }
.posts-grid { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:20px; }
.post-card { min-height:310px; padding:26px; display:flex; flex-direction:column; justify-content:space-between; box-shadow:0 18px 45px rgba(10,27,77,.08); transition:.2s ease; }
.post-card.featured { background:linear-gradient(180deg, #fff, #fbf7ec); }
.post-card:hover { transform:translateY(-4px); box-shadow:0 26px 68px rgba(10,27,77,.13); }
.post-card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:20px; }
.post-card-top span, .post-card-top small { font-size:.76rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; color:#9a6d24; }
.post-card h2 { font-size:1.28rem; line-height:1.25; letter-spacing:-.025em; margin:0 0 14px; }
.post-card h2 a { color:var(--blog-primary); text-decoration:none; }
.post-card p { color:var(--blog-muted); line-height:1.72; margin-bottom:22px; }
.read-more, .related-card a, .sidebar-card a { color:var(--blog-primary); font-weight:900; text-decoration:none; }
.read-more::after, .related-card a::after, .sidebar-card a::after { content:" →"; }

.blog-bottom-cta { padding:0 0 72px; }
.bottom-cta-card { padding:46px; text-align:center; background:linear-gradient(145deg, rgba(10,27,77,.96), rgba(18,60,102,.92)); color:#fff; }
.bottom-cta-card span { color:#E7C877; font-weight:900; letter-spacing:.16em; text-transform:uppercase; font-size:.75rem; }
.bottom-cta-card h2 { color:#fff; max-width:780px; margin:14px auto; }
.bottom-cta-card p { color:rgba(255,255,255,.76); max-width:760px; margin:0 auto 28px; line-height:1.8; }
.bottom-cta-card .btn-primary { background:#fff; color:var(--blog-primary); }
.bottom-cta-card .btn-secondary { color:var(--blog-primary); }
.bottom-cta-card .btn-tertiary { background:rgba(255,255,255,.10); color:#fff; border-color:rgba(255,255,255,.30); }

.article-hero-new { padding:64px 0 42px; }
.article-hero-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); gap:28px; align-items:stretch; }
.article-hero-new h1 { margin:18px 0 18px; color:var(--blog-primary); font-size:clamp(2.15rem,4vw,4.15rem); line-height:1.02; letter-spacing:-.05em; font-weight:520; }
.article-description { font-size:1.08rem; color:var(--blog-muted); line-height:1.85; max-width:820px; }
.breadcrumb { display:inline-flex; color:#9a6d24; font-weight:900; text-decoration:none; margin-bottom:16px; }
.article-insight-card { padding:34px; background:linear-gradient(145deg, rgba(10,27,77,.96), rgba(18,60,102,.94)); color:#fff; }
.article-insight-card strong { display:block; font-size:1.8rem; line-height:1.12; letter-spacing:-.035em; margin-bottom:16px; }
.article-insight-card p { color:rgba(255,255,255,.75); line-height:1.78; }
.article-insight-card span { display:inline-flex; margin-top:22px; padding:10px 14px; border-radius:999px; border:1px solid rgba(231,200,119,.32); color:#E7C877; font-size:.84rem; font-weight:800; }
.article-layout { display:grid; grid-template-columns:minmax(0, 760px) 320px; gap:34px; align-items:start; padding-bottom:64px; }
.article-content-new { background:#fff; border:1px solid rgba(10,27,77,.09); border-radius:30px; padding:46px; box-shadow:0 16px 42px rgba(10,27,77,.06); }
.article-content-new h2 { margin:42px 0 16px; color:var(--blog-primary); font-size:clamp(1.55rem,2.2vw,2.25rem); line-height:1.15; letter-spacing:-.035em; }
.article-content-new h2:first-child { margin-top:0; }
.article-content-new h3 { color:var(--blog-primary); margin:28px 0 12px; }
.article-content-new p, .article-content-new li { color:#485565; font-size:1.03rem; line-height:1.88; }
.article-content-new p + p { margin-top:16px; }
.article-content-new ul { margin:18px 0 24px; padding-left:22px; display:grid; gap:8px; }
.article-content-new blockquote { margin:26px 0; padding:22px 24px; border-left:4px solid var(--blog-accent); background:#fbf7ec; color:var(--blog-primary); font-size:1.15rem; line-height:1.7; border-radius:0 18px 18px 0; }
.article-cta-new { margin-top:46px; padding:32px; border-radius:24px; background:linear-gradient(145deg, #0A1B4D, #184c80); color:#fff; }
.article-cta-new span { color:#E7C877; font-size:.75rem; letter-spacing:.14em; text-transform:uppercase; font-weight:900; }
.article-cta-new h2 { color:#fff; margin:12px 0; font-size:2rem; }
.article-cta-new p { color:rgba(255,255,255,.78); }
.article-cta-new .cta-button-row { margin-top:22px; }
.article-cta-new .btn-primary { background:#fff; color:var(--blog-primary); }
.article-cta-new .btn-secondary { color:var(--blog-primary); }
.article-cta-new .btn-tertiary { background:rgba(255,255,255,.10); color:#fff; border-color:rgba(255,255,255,.28); }
.blog-faq { margin-top:46px; }
.blog-faq details { border:1px solid rgba(10,27,77,.10); border-radius:18px; padding:18px 20px; margin-top:12px; background:#fbfcfe; }
.blog-faq summary { cursor:pointer; color:var(--blog-primary); font-weight:900; }
.blog-faq p { margin-top:12px; }
.article-sidebar { position:sticky; top:124px; display:grid; gap:16px; }
.sidebar-card { padding:24px; box-shadow:0 14px 34px rgba(10,27,77,.06); }
.sidebar-card span { color:#9a6d24; font-weight:900; letter-spacing:.1em; text-transform:uppercase; font-size:.74rem; }
.sidebar-card p { color:var(--blog-muted); line-height:1.72; margin:12px 0 0; }
.sidebar-card.highlight { background:#fbf7ec; }
.related-section { margin:0 0 72px; }
.related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:24px; }
.related-card { padding:24px; box-shadow:0 14px 34px rgba(10,27,77,.06); }
.related-card span { color:#9a6d24; font-size:.74rem; text-transform:uppercase; font-weight:900; }
.related-card h3 { margin:10px 0; color:var(--blog-primary); font-size:1.1rem; line-height:1.28; }
.related-card p { color:var(--blog-muted); line-height:1.65; margin-bottom:16px; }

.blog-site footer .footer-content { text-align:center; justify-items:center; justify-content:center; align-items:center; }
.blog-site footer { text-align:center; }

@media (max-width: 980px) {
  .blog-hero-grid, .intro-grid, .article-hero-grid, .article-layout { grid-template-columns:1fr; }
  .posts-head { display:block; }
  .blog-filter-panel { margin-top:18px; grid-template-columns:1fr; }
  .posts-grid, .related-grid { grid-template-columns:1fr 1fr; }
  .article-sidebar { position:static; }
}
@media (max-width: 680px) {
  .cta-button-row .btn-primary, .cta-button-row .btn-secondary, .cta-button-row .btn-tertiary { width:100%; }
  .blog-shell { width:min(100% - 24px, 1180px); }
  .blog-hero-copy, .intro-grid, .article-content-new { padding:28px; border-radius:22px; }
  .blog-filter-panel { padding:16px; border-radius:20px; }
  .posts-grid, .related-grid { grid-template-columns:1fr; }
  .blog-hero { padding-top:42px; }
  .blog-hero h1, .article-hero-new h1 { font-size:2.35rem; }
}


/* =========================================================
   GovTechWin Blog — ajustes consolidados sobre o CSS oficial
   style.css permanece como base global; este arquivo concentra
   somente componentes da home do blog e das páginas de artigo.
   ========================================================= */
.blog-site{
  --navy:var(--blog-primary);--navy2:var(--blog-primary-2);--gold:var(--blog-accent);
  --gold2:#E3B743;--text:var(--blog-text);--muted:var(--blog-muted);--line:#d9e2ef;
  --soft:#f3f6fb;--soft2:#edf3fa;--white:#fff;--shadow:var(--blog-shadow);--max:1180px;
  color:var(--blog-text);background:#fff;
}
.blog-site main{padding:0}.blog-site img{max-width:100%;display:block}.blog-site .site-shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.blog-header{min-height:84px}.blog-wordmark{gap:0!important;text-decoration:none!important;font-size:1.65rem;font-weight:800;letter-spacing:-.045em;color:var(--blog-primary)!important}
.blog-wordmark span{color:var(--blog-primary)}.blog-wordmark strong{color:var(--blog-accent)}
.header-wrap .menu .nav-diagnostic{background:linear-gradient(135deg,#d9ad45,#efca6a);color:#0A1B4D}.header-wrap .menu .nav-diagnostic:hover{background:linear-gradient(135deg,#c99a3a,#e5bd58);color:#0A1B4D}
.blog-site .site-footer{background:#071638;color:#fff;padding:38px 0;text-align:center}.blog-site .site-footer .footer-content{justify-items:center}.blog-site .site-footer p{color:rgba(255,255,255,.72)}.blog-site .site-footer small{color:rgba(255,255,255,.55)}
/* HOME */
.home-main{background:linear-gradient(180deg,#fff 0,#f6f8fc 50%,#eef3f8 100%)}.hero{padding:30px 0 0}.hero-box{display:grid;grid-template-columns:minmax(0,.85fr) minmax(440px,1.15fr);gap:34px;align-items:center;min-height:520px;padding:48px 48px 42px;border:1px solid var(--line);border-radius:28px 28px 0 0;background:linear-gradient(rgba(10,27,77,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(10,27,77,.025) 1px,transparent 1px),linear-gradient(120deg,#fafcff,#fff 58%,#eff4fa);background-size:40px 40px,40px 40px,auto;overflow:hidden}.kicker,.section-kicker{display:inline-flex;align-items:center;gap:10px;color:#956817;font-size:.74rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.section-kicker:before{content:"";width:30px;height:2px;background:var(--gold)}.hero h1{max-width:700px;margin:18px 0;color:var(--navy);font-size:clamp(2.55rem,4.3vw,4.15rem);line-height:.99;letter-spacing:-.055em;font-weight:500}.hero-copy>p{max-width:690px;margin:0;color:var(--muted);font-size:1.05rem;line-height:1.8}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;border-radius:999px;text-decoration:none;font-weight:800;font-size:.86rem;transition:.22s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--navy);color:#fff}.button-secondary{background:#fff;color:var(--navy);border:1px solid #bfcada}.hero-image{position:relative;opacity:0;transform:translateY(24px) scale(.98);transition:opacity .8s ease,transform .8s ease}.hero-image.is-visible{opacity:1;transform:none}.hero-image-frame{overflow:hidden;border-radius:25px;box-shadow:0 24px 54px rgba(10,27,77,.18);transition:.35s}.hero-image-frame:hover{transform:translateY(-5px);box-shadow:0 30px 70px rgba(10,27,77,.22)}.hero-image-frame img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:.5s}.hero-image-frame:hover img{transform:scale(1.015)}.benefits{display:grid;grid-template-columns:repeat(3,1fr);padding:16px 20px;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 24px 24px;box-shadow:var(--shadow)}.benefit{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:4px 22px}.benefit+.benefit{border-left:1px solid var(--line)}.benefit-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--soft2);color:var(--navy);font-weight:900}.benefit strong{display:block;color:var(--navy);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.benefit p{margin:3px 0 0;color:var(--muted);font-size:.74rem;line-height:1.5}.section{padding:68px 0}.section-title{margin:14px 0;color:var(--navy);font-size:clamp(2rem,3.4vw,3.15rem);line-height:1.07;letter-spacing:-.04em;font-weight:500}.section-copy{color:var(--muted);max-width:780px}.featured{display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.featured-image img{width:100%;height:100%;object-fit:cover}.featured-copy{padding:42px}.featured-kicker{display:inline-flex;margin-bottom:14px;padding-left:12px;border-left:3px solid var(--gold);color:#956817;font-size:.72rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.featured h2{margin:0 0 16px;color:var(--navy);font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.04;letter-spacing:-.045em;font-weight:500}.featured p{color:var(--muted);line-height:1.75}.meta-inline{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:.8rem;font-weight:400}.meta-inline svg,.card-meta svg,.article-meta svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.text-link{display:inline-flex;margin-top:20px;color:var(--navy);font-weight:850;text-decoration:none}.text-link:after{content:" →";color:var(--gold)}.journey-head{text-align:center;max-width:920px;margin:0 auto 30px}.journey-head .section-kicker:after{content:"";width:30px;height:2px;background:var(--gold)}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.journey-card{display:flex;flex-direction:column;padding:24px 26px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 14px 35px rgba(10,27,77,.06)}.journey-card .eyebrow{color:#956817;font-size:.72rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.journey-card h3{margin:14px 0 10px;color:var(--navy);font-size:1.3rem;line-height:1.25;font-weight:600}.journey-card p{margin:0;color:var(--muted);font-size:.91rem}.journey-card a{align-self:flex-start;margin-top:18px;padding:10px 15px;border-radius:10px;background:var(--navy);color:#fff;text-decoration:none;font-size:.79rem;font-weight:800}.journey-card a span{color:var(--gold2)}.trail-panel{padding:34px 38px;background:#f4f7fb;border:1px solid var(--line);border-radius:22px}.trail-panel h2{max-width:900px}.trail-question{margin:18px 0 12px;color:var(--navy);font-weight:750}.trail-filters{display:flex;flex-wrap:wrap;gap:10px}.trail-filter{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #cbd7e6;border-radius:999px;background:#fff;color:var(--navy);cursor:pointer;font-size:.82rem;font-weight:700}.trail-filter b{display:grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:999px;background:#edf3fa;font-size:.72rem}.trail-filter.is-active{background:var(--navy);color:#fff;border-color:var(--navy)}.trail-filter.is-active b{background:var(--gold2);color:var(--navy)}.filter-status{margin-top:18px;color:var(--muted);font-size:.86rem}.library-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.results-line{display:flex;align-items:center;gap:14px;color:var(--muted)}.active-trail{display:none;padding:7px 12px;border-radius:999px;background:#eaf1fa;color:var(--navy);font-size:.76rem;font-weight:750}.active-trail.show{display:inline-flex}.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.post-card{display:flex;flex-direction:column;min-height:350px;padding:24px 27px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 15px 40px rgba(10,27,77,.065);transition:.22s}.post-card:hover{transform:translateY(-4px);box-shadow:0 24px 55px rgba(10,27,77,.11)}.post-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.post-category{color:#a16f00;font-size:.72rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.card-meta{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:.78rem;font-weight:400}.post-card h3{margin:20px 0 12px;font-size:1.22rem;line-height:1.28;letter-spacing:-.025em;font-weight:600}.post-card h3 a{text-decoration:none;color:var(--navy)}.post-card .excerpt{color:var(--muted);font-size:.9rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.post-footer{margin-top:auto;padding-top:20px}.date-line{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:.78rem}.date-line svg{width:17px;height:17px;fill:none;stroke:#b77e00;stroke-width:1.8}.post-cta{display:block;margin-top:17px;padding-top:16px;border-top:1px solid var(--line);color:var(--navy);font-weight:800;text-decoration:none;font-size:.82rem}.post-cta:after{content:" →";color:var(--gold)}.home-final{padding:70px 0}.home-final-card{padding:54px 36px;border-radius:28px;background:linear-gradient(135deg,#112a60,#285782);text-align:center;color:#fff}.home-final-card span{color:#f2c853;font-size:.75rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.home-final-card h2{max-width:900px;margin:16px auto;color:#fff;font-size:clamp(2rem,3.4vw,3.35rem);line-height:1.06;letter-spacing:-.04em;font-weight:500}.home-final-card p{max-width:760px;margin:0 auto;color:rgba(255,255,255,.8)}.home-final-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
/* ARTICLE */
.article-page{background:linear-gradient(180deg,#f5f8fc,#fff 40%)}.article-hero{padding:38px 0 26px}.article-hero-card{padding:46px 54px;background:#fff;border:1px solid var(--line);border-radius:30px;box-shadow:0 14px 45px rgba(10,27,77,.06)}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 20px;padding:0;color:#956817;font-size:.76rem;font-weight:750}.breadcrumb li+li:before{content:"›";margin-right:8px;color:#aab4c4}.breadcrumb a{text-decoration:none}.article-headline{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.article-headline h1{max-width:990px;margin:0;color:var(--navy);font-size:clamp(2.45rem,4.6vw,4.2rem);line-height:1.02;letter-spacing:-.052em;font-weight:500}.article-deck{max-width:920px;margin:22px 0;color:var(--muted);font-size:1.08rem;line-height:1.8}.author-mini{display:flex;gap:12px;align-items:center;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.author-mini img{width:52px;height:52px;object-fit:cover;border-radius:50%;border:2px solid #e5bb53}.author-mini strong{display:block;color:var(--navy)}.author-mini span{display:block;color:var(--muted);font-size:.82rem}.article-meta{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-top:18px;color:var(--muted);font-size:.82rem}.article-meta>span,.article-meta>a{display:inline-flex;align-items:center;gap:7px;text-decoration:none}.article-cover{margin:26px 0 0}.article-cover img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:24px}.article-layout{display:grid;grid-template-columns:minmax(0,820px) 330px;gap:34px;align-items:start;padding:34px 0 70px}.article-content{padding:42px 46px;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:0 15px 45px rgba(10,27,77,.055)}.article-content h2{margin:42px 0 15px;color:var(--navy);font-size:clamp(1.55rem,2.3vw,2.2rem);line-height:1.14;letter-spacing:-.035em;font-weight:600}.article-content h2:first-child{margin-top:0}.article-content h3{margin:27px 0 10px;color:var(--navy);font-size:1.18rem}.article-content p,.article-content li{color:#48576b;font-size:1rem;line-height:1.88}.article-content p{margin:0 0 15px}.article-content ul,.article-content ol{padding-left:22px;margin:14px 0 24px}.article-content li+li{margin-top:6px}.article-content blockquote{margin:24px 0;padding:19px 22px;border-left:4px solid var(--gold);border-radius:0 15px 15px 0;background:#fbf7ec;color:var(--navy);font-size:1.08rem}.article-content table{width:100%;border-collapse:collapse;margin:22px 0;font-size:.9rem}.article-content th,.article-content td{padding:13px 14px;border:1px solid var(--line);vertical-align:top;text-align:left}.article-content th{background:#edf3fa;color:var(--navy)}.tool-section{margin:42px -10px 0;padding:28px 30px;border:1px solid var(--line);border-radius:20px;background:#f8fafd}.check-grid,.framework-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.check-grid>div,.framework-grid>div,.comparison-grid>div{padding:18px;background:#fff;border:1px solid var(--line);border-radius:15px}.framework-grid{grid-template-columns:repeat(3,1fr)}.framework-grid b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff}.framework-grid h3{margin:10px 0 5px}.score-grid,.three-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.score-grid>div,.three-checks>div{padding:16px;border-radius:14px;background:#fff;border:1px solid var(--line)}.score-grid strong,.three-checks strong{display:block;color:var(--navy)}.score-grid span,.three-checks span{display:block;color:var(--muted);font-size:.82rem}.note,.legal-note{padding:15px 17px;border-left:3px solid var(--gold);background:#fff8e8;border-radius:0 12px 12px 0}.metric-grid{display:flex;flex-wrap:wrap;gap:9px}.metric-grid span{padding:9px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.8rem}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.formula{margin:20px 0;padding:22px;border-radius:16px;background:var(--navy);color:#fff;text-align:center;text-transform:uppercase;font-size:.82rem;font-weight:700;letter-spacing:.04em}.formula b{color:var(--gold2);margin:0 6px}.formula strong{display:block;margin-top:10px;color:#fff}.timeline{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.timeline span{padding:9px 11px;border-radius:999px;background:var(--navy);color:#fff;font-size:.72rem;font-weight:800}.steps{counter-reset:st;list-style:none;padding:0!important}.steps li{counter-increment:st;padding:12px 12px 12px 48px;position:relative;border-bottom:1px solid var(--line)}.steps li:before{content:counter(st);position:absolute;left:8px;top:10px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;font-size:.75rem;font-weight:800}.article-sidebar{position:sticky;top:96px;display:grid;gap:18px}.sidebar-card{padding:25px 27px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 38px rgba(10,27,77,.065)}.sidebar-card h2{margin:0 0 18px;color:var(--navy);font-size:1rem;letter-spacing:.02em}.author-card img{width:112px;height:112px;object-fit:cover;border-radius:50%;border:3px solid #e5bb53}.author-card h3{margin:18px 0 2px;color:var(--navy);font-size:1.32rem}.author-card .role{margin:0;color:#44516a;font-weight:650}.author-card p{color:var(--muted);font-size:.9rem}.sidebar-link{display:block;margin-top:13px;color:#18519a;font-weight:800;text-decoration:none}.sidebar-link:after{content:" →"}.in-article ul{padding-left:18px;margin:0}.in-article li{color:var(--muted);font-size:.85rem;margin:9px 0}.trail-side-link{display:block;padding:10px 0;border-top:1px solid var(--line);color:#526079;text-decoration:none;font-size:.86rem}.trail-side-link.current{color:var(--navy);font-weight:800;border-left:3px solid var(--gold);padding-left:10px}.next-step{background:#fff8e8}.next-step span{color:#956817;font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.next-step h3{color:var(--navy);font-size:1.05rem;line-height:1.35}.next-step a{color:var(--navy);font-weight:850;text-decoration:none}.next-step a:after{content:" →"}.article-faq{margin-top:48px}.article-faq h2{margin-bottom:18px}.article-faq details{margin:12px 0;padding:17px 20px;border:1px solid var(--line);border-radius:16px;background:#fbfcfe}.article-faq summary{cursor:pointer;color:var(--navy);font-weight:700}.article-faq details p{margin:12px 0 0}.related{padding:0 0 56px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.related-card{padding:23px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 12px 34px rgba(10,27,77,.055)}.related-card span{color:#956817;font-size:.7rem;font-weight:850;text-transform:uppercase}.related-card h3{color:var(--navy);font-size:1.05rem;line-height:1.3}.related-card a{color:var(--navy);text-decoration:none;font-weight:800;font-size:.8rem}.related-card a:after{content:" →";color:var(--gold)}.article-final-cta{margin:0 0 72px;padding:42px;border-radius:28px;background:linear-gradient(135deg,#112a60,#285782);color:#fff}.article-final-cta>span{color:#f2c853;font-size:.72rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.article-final-cta h2{max-width:780px;margin:13px 0;color:#fff;font-size:clamp(1.9rem,3.3vw,3rem);line-height:1.08;font-weight:500}.article-final-cta p{max-width:760px;color:rgba(255,255,255,.8)}.final-actions{margin-top:24px}.final-actions>a{display:inline-flex}.final-actions>div{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}.cta-gold,.cta-white,.cta-outline{min-height:48px;align-items:center;justify-content:center;padding:0 19px;border-radius:14px;text-decoration:none;font-size:.82rem;font-weight:800}.cta-gold{background:var(--gold2);color:var(--navy)}.cta-white{background:#fff;color:var(--navy)}.cta-outline{border:1px solid rgba(255,255,255,.42);color:#fff;background:rgba(255,255,255,.08)}
@media(max-width:1000px){.hero-box,.featured,.article-layout{grid-template-columns:1fr}.hero-image{order:-1}.hero-image-frame img{aspect-ratio:16/9}.posts-grid,.journey-grid,.related-grid{grid-template-columns:1fr 1fr}.article-sidebar{position:static}.article-headline{display:block}.framework-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.site-shell{width:min(100% - 24px,var(--max))}.main-nav,.nav-cta{display:none}.menu-toggle{display:block}.main-nav.open{position:absolute;display:grid;top:76px;left:12px;right:12px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.hero-box{padding:28px 24px;min-height:0}.hero h1{font-size:2.45rem}.benefits{grid-template-columns:1fr;padding:14px}.benefit{padding:12px 8px}.benefit+.benefit{border-left:0;border-top:1px solid var(--line)}.section{padding:50px 0}.featured-copy{padding:28px}.journey-grid,.posts-grid,.related-grid{grid-template-columns:1fr}.trail-panel{padding:26px 22px}.library-head{display:block}.results-line{margin-top:14px}.post-card{min-height:0}.article-hero-card{padding:28px 24px;border-radius:22px}.article-headline h1{font-size:2.35rem}.article-content{padding:28px 24px;border-radius:22px}.tool-section{margin-left:0;margin-right:0;padding:22px 18px}.check-grid,.framework-grid,.score-grid,.three-checks,.comparison-grid{grid-template-columns:1fr}.article-content table{display:block;overflow-x:auto;white-space:normal}.article-final-cta{padding:32px 24px}.final-actions>a,.final-actions>div a{width:100%}.final-actions>div{display:grid}.author-mini{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.hero-image,.hero-image-frame,.hero-image-frame img,.post-card,.button{opacity:1!important;transform:none!important;transition:none!important}}


/* Ajustes finais aprovados */
.blog-site .hero{padding-top:26px}.blog-site .hero-box{min-height:470px;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);padding:42px}
.blog-site .hero h1{font-size:clamp(2.55rem,4.1vw,3.8rem);line-height:1.03;max-width:680px;font-weight:600;letter-spacing:-.045em}
.blog-site .hero-image-frame img{aspect-ratio:3/2;object-fit:cover}.blog-site .benefits{padding:12px 16px}.blog-site .benefit{grid-template-columns:32px 1fr;padding:2px 18px}.blog-site .benefit-icon{width:32px;height:32px}.blog-site .benefit p{font-size:.72rem}.blog-site .section{padding:58px 0}
.blog-site .featured-kicker{padding:0 0 7px;border-left:0;border-bottom:2px solid var(--blog-accent);border-radius:0;background:transparent;color:#956817}
.blog-site .featured h2{font-size:clamp(2rem,3vw,2.8rem)}
.blog-site .journey-grid{gap:16px}.blog-site .journey-card{padding:21px 23px;border-radius:18px;min-height:285px}.blog-site .journey-card h3{font-size:1.18rem}.blog-site .journey-card p{font-size:.87rem;line-height:1.7}.blog-site .journey-card a{margin-top:auto;border-radius:999px;padding:10px 16px;background:linear-gradient(135deg,#0A1B4D,#174a7d);box-shadow:0 10px 22px rgba(10,27,77,.16)}
.blog-site .trail-panel{padding:32px 34px;background:linear-gradient(180deg,#f7f9fc,#f0f5fa)}.blog-site .trail-panel .section-title{font-size:clamp(2rem,3vw,2.8rem)}.blog-site .trail-question{font-size:1rem}.blog-site .trail-filter{padding:10px 15px;background:#fff}.blog-site .trail-filter:hover{border-color:#9fb2ca;transform:translateY(-1px)}
.blog-site .posts-grid{gap:18px}.blog-site .post-card{min-height:0;padding:0;overflow:hidden;border-radius:20px}.blog-site .post-image{display:block;overflow:hidden;aspect-ratio:16/9;background:#e9eef5}.blog-site .post-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.blog-site .post-card:hover .post-image img{transform:scale(1.025)}.blog-site .post-card-body{display:flex;flex-direction:column;flex:1;padding:20px 22px 22px}.blog-site .post-card h3{margin:15px 0 10px;font-size:1.12rem}.blog-site .post-card .excerpt{font-size:.86rem;-webkit-line-clamp:3}.blog-site .post-footer{padding-top:16px}.blog-site .post-cta{margin-top:14px;padding-top:13px}.blog-site .date-line{font-size:.74rem}
.blog-site .home-final-card{padding:48px 34px}.blog-site .home-final-card h2{font-size:clamp(2rem,3.2vw,3rem)}
.blog-site .article-hero-card{padding:42px 48px}.blog-site .article-headline h1{font-size:clamp(2.35rem,4vw,3.55rem);line-height:1.06;font-weight:600;letter-spacing:-.045em}.blog-site .article-deck{font-size:1.04rem}.blog-site .article-layout{grid-template-columns:minmax(0,780px) 330px}.blog-site .article-content h2{font-weight:600}.blog-site .article-content p,.blog-site .article-content li{font-size:.99rem}.blog-site .article-cover img{border-radius:20px}
.blog-site .article-final-cta{padding:40px}.blog-site .article-final-cta h2{font-size:clamp(1.9rem,3vw,2.75rem)}
@media(max-width:1000px){.blog-site .hero-box{grid-template-columns:1fr}.blog-site .hero-image{order:0}.blog-site .posts-grid{grid-template-columns:1fr 1fr}.blog-site .article-layout{grid-template-columns:1fr}}
@media(max-width:720px){.blog-site .site-shell{width:min(100% - 24px,1180px)}.blog-site .hero-box{padding:26px 22px}.blog-site .hero h1{font-size:2.3rem}.blog-site .benefits{grid-template-columns:1fr}.blog-site .journey-card{min-height:0}.blog-site .posts-grid{grid-template-columns:1fr}.blog-site .article-hero-card{padding:27px 23px}.blog-site .article-headline h1{font-size:2.25rem}.blog-site .article-content{padding:27px 23px}.blog-header{min-height:0}.blog-wordmark{font-size:1.5rem}.header-wrap .menu{border-radius:18px}}


/* =========================================================
   AJUSTES APROVADOS — JULHO/2026
   O arquivo permanece autocontido dentro de /blog/assets/.
   ========================================================= */
.blog-site { background:#fff; }
.blog-site .site-shell { width:min(1180px, calc(100% - 40px)); margin-inline:auto; }
.blog-header { width:min(1180px, calc(100% - 32px)); }
.blog-header .logo-image { height:74px; width:auto; max-width:280px; object-fit:contain; }
.blog-header .menu { gap:4px; }
.blog-header .menu a { padding:12px 15px; }

/* Hero */
.blog-home .hero { padding:28px 0 30px; }
.blog-home .hero-box {
  display:grid; grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);
  gap:44px; align-items:center; min-height:500px; padding:48px;
  border:1px solid rgba(10,27,77,.13); border-radius:30px;
  box-shadow:0 22px 58px rgba(10,27,77,.10); background-color:#fff;
  background-image:linear-gradient(rgba(10,27,77,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(10,27,77,.045) 1px,transparent 1px);
  background-size:38px 38px;
}
.blog-home .hero-copy h1 { font-size:clamp(2.45rem,4vw,4.2rem); font-weight:500; line-height:1.03; letter-spacing:-.05em; max-width:13ch; }
.blog-home .hero-copy > p:not(.hero-microcopy) { max-width:58ch; }
.blog-home .hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.blog-home .hero-actions .button-primary { background:#071f53; color:#fff; }
.blog-home .hero-actions .button-secondary { background:#fff; color:#071f53; border:1px solid #d6a62a; }
.hero-microcopy { margin-top:14px; font-size:.86rem!important; line-height:1.55!important; color:#647182; }
.blog-home .hero-image-frame { border-radius:24px; overflow:hidden; box-shadow:0 20px 48px rgba(10,27,77,.14); animation:blogHeroFloat 6s ease-in-out infinite; }
.blog-home .hero-image-frame img { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; display:block; }
@keyframes blogHeroFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-7px)} }
.blog-home .benefits { padding:12px 16px; }
.blog-home .benefit { grid-template-columns:32px 1fr; padding:3px 18px; }
.blog-home .benefit-icon { width:32px; height:32px; }
.blog-home .benefit p { font-size:.74rem; }

/* Artigo em destaque */
.featured-copy h2 { font-size:clamp(1.75rem,2.65vw,2.65rem); }
.featured-image a, .featured-copy h2 a { color:inherit; text-decoration:none; display:block; }
.featured .meta-inline { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.featured-cta { display:inline-flex; align-items:center; margin-top:18px; padding:11px 18px; border-radius:999px; background:#071f53; color:#fff; font-weight:800; text-decoration:none; }
.featured-cta:hover { transform:translateY(-2px); }

/* Jornada */
.journey-head .section-title { font-size:clamp(1.9rem,3vw,2.85rem); }
.journey-card { display:flex; flex-direction:column; }
.journey-card h3 { min-height:3.2em; }
.journey-card p { min-height:5.2em; }
.journey-count { margin-top:14px; color:#8a6717; font-size:.82rem; font-weight:800; }
.journey-action { margin-top:auto!important; display:inline-flex!important; align-self:flex-start; padding:10px 16px!important; border-radius:999px!important; background:#071f53!important; color:#fff!important; font-weight:800!important; text-decoration:none; }
.journey-card:hover { transform:translateY(-4px); border-color:rgba(214,166,42,.48); }

/* Biblioteca */
.trail-panel .section-title { font-size:clamp(1.9rem,3vw,2.8rem); }
.trail-filters { display:flex; flex-wrap:wrap; gap:10px; }
.trail-filter { background:#eaf1f8; color:#071f53; border:1px solid rgba(7,31,83,.14); }
.trail-filter b { background:rgba(255,255,255,.82); color:#071f53; }
.trail-filter.is-active { background:#071f53; color:#fff; border-color:#071f53; box-shadow:0 12px 26px rgba(7,31,83,.18); }
.trail-filter.is-active b { background:#d6a62a; color:#071f53; }
.filter-result { margin-top:18px; color:#071f53; font-weight:800; }
.trail-mobile-wrap { display:none; }
.trail-select-mobile { width:100%; min-height:52px; border:1px solid #d6a62a; border-radius:14px; background:#071f53; color:#fff; padding:0 16px; font-weight:800; }
.posts-head { display:block; }
.posts-head-count, .results-line { display:none!important; }

/* Cards */
.post-card { min-height:0; }
.post-image img { aspect-ratio:16/9; object-fit:cover; }
.post-card-body { padding:22px; }
.post-card .excerpt { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.post-footer { margin-top:auto; }
.post-cta { display:block; margin-top:14px; font-weight:800; }
.post-card:hover { transform:translateY(-4px); border-color:rgba(214,166,42,.44); }

/* CTA final da Home */
.home-final-card { text-align:center; max-width:1180px; margin:auto; padding:48px; }
.home-final-card h2, .home-final-card p { max-width:900px; margin-left:auto; margin-right:auto; }
.home-final-actions { justify-content:center; }
.home-final-contact { display:block; margin-top:18px; color:#fff; font-weight:700; text-decoration:none; }

/* Cabeçalho de artigos */
.article-hero-card { padding:38px 46px; }
.article-hero-card h1 { max-width:18ch; font-size:clamp(2.35rem,4.6vw,4.25rem); line-height:1.04; letter-spacing:-.04em; }
.author-mini span { max-width:780px; }
.article-meta .article-trail-tag { padding:7px 12px; border-radius:999px; background:#eaf1f8; color:#071f53; font-weight:800; text-decoration:none; }
.breadcrumb li:last-child { color:#647182; }
.article-content h2 { scroll-margin-top:130px; }
.article-content .timeline { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.article-content .timeline span { background:#eaf1f8; color:#071f53; border:1px solid rgba(7,31,83,.1); border-radius:12px; padding:12px; text-align:center; font-weight:700; }
.sources-official { margin-top:34px; padding:22px 24px; border-left:3px solid #d6a62a; background:#fbf7ec; }
.editorial-list { display:grid; gap:0; border-top:1px solid rgba(7,31,83,.12); }
.editorial-list article { padding:18px 0; border-bottom:1px solid rgba(7,31,83,.1); }

/* Sidebar */
.author-card { padding:22px; }
.author-card > img { width:120px; height:120px; }
.author-label { display:block; color:#956817; font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; font-weight:900; margin-bottom:14px; }
.sidebar-link-secondary { font-size:.91rem; font-weight:700; }
.article-toc ol { list-style:none; padding:0; margin:0; counter-reset:toc; }
.article-toc li { counter-increment:toc; border-bottom:1px solid rgba(7,31,83,.08); }
.article-toc li:last-child { border-bottom:0; }
.article-toc a { display:grid; grid-template-columns:28px 1fr; gap:8px; padding:11px 0; color:#435166; text-decoration:none; line-height:1.45; }
.article-toc a::before { content:counter(toc,decimal-leading-zero); color:#d6a62a; font-size:.76rem; font-weight:900; }
.article-toc a.is-current, .article-toc a:hover { color:#071f53; font-weight:800; }
.sidebar-trails .current-trail { padding:14px; border-left:3px solid #d6a62a; background:#eaf1f8; border-radius:0 12px 12px 0; margin:12px 0; }
.sidebar-trails .current-trail strong, .sidebar-trails .current-trail small { display:block; }
.sidebar-trails .current-trail small { color:#7a8590; margin-top:4px; }
.sidebar-trails .trail-side-link { display:flex; justify-content:space-between; gap:10px; }
.next-step a { display:flex; width:100%; justify-content:center; padding:12px 14px; border-radius:12px; background:#071f53; color:#fff; text-decoration:none; font-weight:800; }

/* Próximas leituras */
.related-card { display:flex; flex-direction:column; }
.related-meta { display:flex; justify-content:space-between; gap:10px; }
.related-card h3 a { color:inherit; text-decoration:none; }
.related-card > a { margin-top:auto; }

/* CTA final do artigo */
.article-final-cta { text-align:center; }
.article-final-cta h2, .article-final-cta p { max-width:850px; margin-left:auto; margin-right:auto; }
.final-actions { display:flex; justify-content:center; gap:12px; flex-wrap:wrap; }
.article-final-contact { display:block; margin-top:18px; color:#fff; font-weight:700; text-decoration:none; }

@media(max-width:1060px){
  .blog-header { display:flex; flex-direction:column; align-items:center; gap:8px; }
  .blog-header .menu { margin-left:0; max-width:100%; }
  .blog-home .hero-box { grid-template-columns:1fr; }
  .blog-home .hero-copy h1 { max-width:18ch; }
}
@media(max-width:720px){
  .blog-site .site-shell { width:min(100% - 24px,1180px); }
  .blog-header .logo-image { height:62px; }
  .blog-header .menu { width:100%; justify-content:flex-start; overflow-x:auto; border-radius:16px; }
  .blog-header .menu a { padding:10px 13px; font-size:.82rem; }
  .blog-home .hero-box { padding:28px 23px; min-height:0; }
  .blog-home .hero-copy h1 { font-size:2.3rem; max-width:100%; }
  .blog-home .hero-actions .button { width:100%; }
  .blog-home .benefits { grid-template-columns:1fr; }
  .trail-filters { display:none; }
  .trail-mobile-wrap { display:block; }
  .journey-card h3, .journey-card p { min-height:0; }
  .journey-action { width:100%; justify-content:center; }
  .article-hero-card { padding:28px 24px; }
  .article-content .timeline { grid-template-columns:1fr; }
  .final-actions a { width:100%; }
  .article-sidebar { display:flex; flex-direction:column; }
  .article-sidebar .in-article { order:-2; }
  .article-sidebar .next-step { order:1; }
  .article-sidebar .author-card { order:2; }
  .article-sidebar .sidebar-trails { order:3; }
}
@media(prefers-reduced-motion:reduce){ .blog-home .hero-image-frame { animation:none; } }

/* Correção de colisões com seletores globais do style.css */
.blog-home section.hero { display:block; grid-template-columns:none; gap:0; align-items:initial; }
.blog-home .hero-copy { display:block; margin-top:0; color:inherit; line-height:normal; }
.blog-home .hero-copy p { color:var(--muted); }
.blog-home .hero-image { opacity:1; transform:none; }


/* FINAL V2 — approved corrections */
/* Only the article table of contents is sticky on desktop. */
.article-sidebar{position:static!important;top:auto!important}
.article-toc{position:sticky;top:96px;z-index:2}
.article-toc-title{margin:0 0 18px;color:#071f53;font-size:1rem;font-weight:800;letter-spacing:.02em}

/* Custom mobile topic dropdown (replaces the native select). */
.custom-trail-select{display:none;position:relative}
.trail-mobile-trigger{width:100%;min-height:54px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:0 16px;border:1px solid #d6a62a;border-radius:14px;background:#071f53;color:#fff;text-align:left;font:inherit;font-weight:800;cursor:pointer}
.trail-mobile-trigger-count,.trail-mobile-option b{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#d6a62a;color:#071f53;font-size:.78rem}
.trail-mobile-chevron{font-size:1.1rem;transition:transform .2s ease}
.trail-mobile-trigger[aria-expanded="true"] .trail-mobile-chevron{transform:rotate(180deg)}
.trail-mobile-menu{position:absolute;z-index:30;top:calc(100% + 8px);left:0;right:0;padding:8px;border:1px solid rgba(214,166,42,.75);border-radius:16px;background:#071f53;box-shadow:0 18px 40px rgba(7,31,83,.22)}
.trail-mobile-menu[hidden]{display:none}
.trail-mobile-option{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px;border:0;border-radius:11px;background:transparent;color:#fff;text-align:left;font:inherit;font-weight:700;cursor:pointer}
.trail-mobile-option:hover,.trail-mobile-option:focus-visible{background:rgba(255,255,255,.1);outline:none}
.trail-mobile-option.is-active{background:#d6a62a;color:#071f53}
.trail-mobile-option.is-active b{background:#071f53;color:#fff}

/* Related reading cards: equal height and anchored CTA. */
.related-grid{align-items:stretch}
.related-card{display:flex;flex-direction:column;height:100%}
.related-card>p{flex:1}
.related-card>a:last-child{margin-top:auto;padding-top:12px}
.related-card a:after{content:none!important}
.related-meta{display:flex;justify-content:space-between;align-items:center;gap:12px}
.related-meta small{color:#6e7a8d;font-size:.76rem}

/* Sidebar CTA has a single explicit arrow. */
.next-step a:after{content:none!important}

/* Final CTA: centered hierarchy and controlled width. */
.article-final-cta{text-align:center;padding:42px 34px}
.article-final-cta h2,.article-final-cta p{margin-left:auto;margin-right:auto}
.final-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.article-final-contact{display:inline-block;margin-top:18px;color:#fff;text-decoration:none;font-weight:750}

/* Keep the library header clean: the live result count appears only in the filter panel. */
.library-head{align-items:flex-end}

@media(max-width:760px){
  .trail-mobile-wrap.custom-trail-select{display:block}
  .article-toc{position:static}
  .final-actions{display:grid;grid-template-columns:1fr;width:100%}
  .final-actions a{width:100%}
  .article-final-cta{padding:34px 22px}
}

/* =========================================================
   CONSOLIDADO 15/07/2026 — CORREÇÕES DA HOME DO BLOG
   ========================================================= */

/* Hero: imagem com a mesma presença visual dos primeiros cards
   das páginas Método, Serviços e Diagnóstico. */
.blog-home .hero {
  padding: 28px 0 0;
}

.blog-home .hero-box {
  grid-template-columns: minmax(0, 1fr) minmax(390px, .92fr);
  align-items: stretch;
  gap: 48px;
  min-height: 610px;
  padding: 46px 48px;
  border-radius: 30px;
}

.blog-home .hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.blog-home .hero-actions {
  margin-top: 28px;
}

.blog-home .hero-microcopy {
  margin: 18px 0 0;
  line-height: 1.55 !important;
}

.blog-home .hero-image,
.blog-home .hero-image-frame {
  height: 100%;
  min-height: 518px;
}

.blog-home .hero-image-frame {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 26px 68px rgba(10, 27, 77, .17);
}

.blog-home .hero-image-frame img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: 57% center;
}

/* Faixa de benefícios independente do hero. */
.benefits-section {
  padding: 30px 0 0;
}

.blog-home .benefits-section .benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 22px 20px;
  background: #fff;
  border: 0;
  border-top: 1px solid rgba(7, 31, 83, .12);
  border-bottom: 1px solid rgba(7, 31, 83, .12);
  border-radius: 0;
  box-shadow: none;
}

.blog-home .benefits-section .benefit {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  padding: 0 28px;
}

.blog-home .benefits-section .benefit + .benefit {
  border-left: 1px solid rgba(7, 31, 83, .12);
}

.blog-home .benefits-section .benefit-icon {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
}

.blog-home .benefits-section .benefit strong {
  margin: 0 0 5px;
  color: #071f53;
  font-size: .86rem;
  line-height: 1.3;
  font-weight: 800;
}

.blog-home .benefits-section .benefit p {
  margin: 0;
  color: #647182;
  font-size: .86rem;
  line-height: 1.5;
}

/* Artigo em destaque: card compacto e imagem preenchendo toda a coluna. */
.blog-home .featured {
  grid-template-columns: minmax(0, 46%) minmax(0, 54%);
  align-items: stretch;
  min-height: 410px;
  overflow: hidden;
  border-radius: 28px;
}

.blog-home .featured-image,
.blog-home .featured-image a {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 410px;
}

.blog-home .featured-image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 410px;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: right center;
}

.blog-home .featured-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 34px 42px;
}

.blog-home .featured-copy h2 {
  margin: 14px 0 16px;
  font-size: clamp(1.95rem, 2.85vw, 3rem);
  line-height: 1.05;
}

.blog-home .featured-copy > p {
  margin: 0 0 14px;
  line-height: 1.62;
}

.blog-home .featured-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 24px;
  color: #63748a;
  font-size: .92rem;
  line-height: 1.45;
  font-weight: 400;
}

.blog-home .featured-meta-separator {
  color: #9aa5b2;
}

.blog-home .featured-cta {
  align-self: flex-start;
  margin-top: 0;
}

/* Jornada: cards mais compactos e CTAs com respiro uniforme. */
.blog-home .journey-grid {
  align-items: stretch;
}

.blog-home .journey-card {
  min-height: 0;
  padding: 26px 28px 25px;
}

.blog-home .journey-card h3 {
  min-height: 3.05em;
  margin: 16px 0 14px;
  font-size: 1.28rem;
  line-height: 1.22;
}

.blog-home .journey-card p {
  min-height: 4.8em;
  margin: 0;
  line-height: 1.58;
}

.blog-home .journey-count {
  display: block;
  margin-top: 22px;
  color: #8a6717;
  font-size: .82rem;
  font-weight: 800;
}

.blog-home .journey-action {
  margin-top: 12px !important;
  min-height: 46px;
  padding: 11px 20px !important;
}

@media (max-width: 1060px) {
  .blog-home .hero-box {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .blog-home .hero-image,
  .blog-home .hero-image-frame {
    min-height: 440px;
  }

  .blog-home .hero-image {
    order: 0;
  }

  .blog-home .featured {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .blog-home .featured-image,
  .blog-home .featured-image a,
  .blog-home .featured-image img {
    min-height: 0;
    height: auto;
    aspect-ratio: 16 / 9;
  }
}

@media (max-width: 720px) {
  .blog-home .hero-box {
    gap: 28px;
    padding: 28px 23px;
  }

  .blog-home .hero-microcopy {
    margin-top: 16px;
  }

  .blog-home .hero-image,
  .blog-home .hero-image-frame {
    min-height: 0;
    height: auto;
  }

  .blog-home .hero-image-frame img {
    height: auto;
    aspect-ratio: 4 / 3;
    object-position: 57% center;
  }

  .benefits-section {
    padding-top: 24px;
  }

  .blog-home .benefits-section .benefits {
    grid-template-columns: 1fr;
    padding: 4px 0;
  }

  .blog-home .benefits-section .benefit {
    padding: 18px 8px;
  }

  .blog-home .benefits-section .benefit + .benefit {
    border-left: 0;
    border-top: 1px solid rgba(7, 31, 83, .12);
  }

  .blog-home .featured-copy {
    padding: 28px 24px 30px;
  }

  .blog-home .featured-copy h2 {
    font-size: 2rem;
  }

  .blog-home .featured-meta {
    gap: 4px 6px;
    margin-bottom: 22px;
  }

  .blog-home .journey-card {
    padding: 24px 22px;
  }

  .blog-home .journey-card h3,
  .blog-home .journey-card p {
    min-height: 0;
  }

  .blog-home .journey-count {
    margin-top: 20px;
  }
}


/* FINAL V5 — robust topic navigation */
.trail-filter,.trail-mobile-option{text-decoration:none}
.trail-filter[aria-current="true"]{background:#071f53;color:#fff;border-color:#071f53;box-shadow:0 12px 26px rgba(7,31,83,.18)}
.trail-filter[aria-current="true"] b{background:#d6a62a;color:#071f53}
.trail-mobile-option[aria-current="true"]{background:#d6a62a;color:#071f53}
.trail-mobile-option[aria-current="true"] b{background:#071f53;color:#fff}
.post-card[hidden]{display:none!important}


/* =========================================================
   V6 — DATAS EDITORIAIS E SIDEBAR DOS ARTIGOS
   ========================================================= */

/* O sumário passa a ser compacto e não sobrepõe os cards seguintes. */
.article-page .article-sidebar {
  position: static !important;
  top: auto !important;
  align-self: start;
  display: grid;
  gap: 18px;
  overflow: visible !important;
}

.article-page .article-sidebar > .sidebar-card {
  position: relative !important;
  top: auto !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  overflow: visible;
}

.article-page .article-toc {
  position: static !important;
  top: auto !important;
  z-index: auto;
  padding: 20px 22px;
}

.article-page .article-toc-title {
  margin: 0 0 8px;
  font-size: .98rem;
  line-height: 1.25;
}

.article-page .article-toc ol {
  margin: 0;
}

.article-page .article-toc li {
  margin: 0;
}

.article-page .article-toc a {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) 14px;
  align-items: center;
  gap: 8px;
  padding: 9px 0;
  font-size: .82rem;
  line-height: 1.32;
}

.article-page .article-toc a::before {
  font-size: .73rem;
}

.article-page .article-toc a::after {
  content: "→";
  color: #071f53;
  font-size: .78rem;
  font-weight: 700;
  justify-self: end;
}

.article-page .sidebar-trails,
.article-page .next-step {
  position: relative !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

@media (max-width: 760px) {
  .article-page .article-toc {
    padding: 18px 20px;
  }
}

/* =========================================================
   V7 — ALINHAMENTO DA SIDEBAR, CTA COMPACTO E TABELAS RESPONSIVAS
   ========================================================= */

/* Trilhas laterais: uma única seta, sempre alinhada à direita. */
.article-page .sidebar-trails .trail-side-link {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto 14px;
  align-items: center;
  column-gap: 10px;
  width: 100%;
  padding: 10px 0;
  color: #071f53;
  font-size: .82rem;
  font-weight: 750;
  line-height: 1.35;
  box-sizing: border-box;
}

.article-page .sidebar-trails .trail-side-link span {
  min-width: 16px;
  color: #956817;
  font-size: .76rem;
  font-weight: 850;
  text-align: right;
  white-space: nowrap;
}

.article-page .sidebar-trails .trail-side-link::after {
  content: "→" !important;
  display: block;
  color: #071f53;
  font-size: .78rem;
  font-weight: 800;
  justify-self: end;
}

/* Próximo passo: hierarquia mais clara e CTA proporcional à sidebar. */
.article-page .next-step > span {
  display: block;
  margin: 0 0 10px;
  line-height: 1.2;
}

.article-page .next-step h3 {
  margin: 0 0 16px;
  font-size: 1.04rem;
  line-height: 1.38;
}

.article-page .next-step p {
  margin: 0 0 18px;
  font-size: .88rem;
  line-height: 1.65;
}

.article-page .next-step a {
  display: inline-flex !important;
  width: auto !important;
  max-width: 100%;
  min-height: 42px;
  align-items: center;
  justify-content: flex-start !important;
  gap: 8px;
  padding: 10px 14px !important;
  border-radius: 12px;
  font-size: .79rem;
  line-height: 1.25;
  white-space: nowrap;
  box-sizing: border-box;
}

.article-page .next-step a::after {
  content: "→" !important;
  position: static;
  flex: 0 0 auto;
  color: #d6a62a;
}

/* Lista prática da Lei 14.133: somente o título fica em negrito. */
.article-action-list {
  margin: 24px 0 30px !important;
  padding-left: 1.55rem !important;
}

.article-action-list li {
  margin: 0 0 21px !important;
  padding-left: 5px;
  color: #48576b;
  font-size: 1rem;
  line-height: 1.7;
  font-weight: 400;
}

.article-action-list li:last-child {
  margin-bottom: 0 !important;
}

.article-action-list li::marker {
  color: #071f53;
  font-weight: 850;
}

.article-action-list strong {
  display: block;
  margin: 0 0 5px;
  color: #071f53;
  font-size: 1.04rem;
  line-height: 1.4;
  font-weight: 800;
}

.article-action-list p {
  margin: 0 !important;
  color: #48576b;
  font-size: 1rem;
  line-height: 1.7;
  font-weight: 400;
}

/* Todas as tabelas respeitam a largura interna do card. */
.article-content,
.article-content .tool-section {
  min-width: 0;
  box-sizing: border-box;
}

.article-content .article-table-wrap {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 22px 0;
  overflow: hidden;
  box-sizing: border-box;
}

.article-content .article-table {
  display: table;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  border-collapse: collapse;
  table-layout: fixed;
  box-sizing: border-box;
}

.article-content .article-table th,
.article-content .article-table td {
  max-width: 0;
  padding: 12px 13px;
  vertical-align: top;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
  box-sizing: border-box;
}

.article-content .article-table-cols-2 th:first-child,
.article-content .article-table-cols-2 td:first-child {
  width: 34%;
}

.article-content .article-table-cols-2 th:last-child,
.article-content .article-table-cols-2 td:last-child {
  width: 66%;
}

.article-content .article-table-cols-3 th:first-child,
.article-content .article-table-cols-3 td:first-child {
  width: 28%;
}

.article-content .article-table-cols-3 th:nth-child(2),
.article-content .article-table-cols-3 td:nth-child(2),
.article-content .article-table-cols-3 th:nth-child(3),
.article-content .article-table-cols-3 td:nth-child(3) {
  width: 36%;
}

.article-content .article-table-cols-4 th,
.article-content .article-table-cols-4 td {
  width: 25%;
  padding-left: 11px;
  padding-right: 11px;
  font-size: .86rem;
  line-height: 1.45;
}

@media (max-width: 760px) {
  .article-page .next-step a {
    white-space: normal;
  }

  .article-content .article-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .article-content .article-table-cols-3 {
    min-width: 620px !important;
  }

  .article-content .article-table-cols-4 {
    min-width: 720px !important;
  }
}



/* V8 — bloco contextual GovTechWin por artigo */
.article-gtw-context {
  margin: 42px 0 0;
  padding: 28px 30px;
  border: 1px solid #d8e3ef;
  border-left: 4px solid #d6a62a;
  border-radius: 18px;
  background: linear-gradient(135deg, #f8fbff, #ffffff);
  box-sizing: border-box;
}
.article-gtw-context .article-gtw-eyebrow {
  display: block;
  margin: 0 0 12px;
  color: #956817;
  font-size: .72rem;
  line-height: 1.3;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.article-gtw-context h2 {
  margin: 0 0 14px !important;
  font-size: clamp(1.45rem, 2.1vw, 1.95rem) !important;
  line-height: 1.18 !important;
}
.article-gtw-context p {
  margin: 0 0 12px !important;
  line-height: 1.72 !important;
}
.article-gtw-context p:last-of-type {
  margin-bottom: 20px !important;
}
.article-gtw-cta {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 12px;
  background: #071f53;
  color: #ffffff;
  text-decoration: none;
  font-size: .82rem;
  line-height: 1.25;
  font-weight: 800;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.article-gtw-cta:hover {
  transform: translateY(-1px);
  background: #0d2c68;
  box-shadow: 0 9px 22px rgba(7,31,83,.17);
}
.article-gtw-cta:focus-visible {
  outline: 3px solid rgba(214,166,42,.45);
  outline-offset: 3px;
}
@media (max-width: 720px) {
  .article-gtw-context {
    margin-top: 32px;
    padding: 23px 20px;
  }
  .article-gtw-cta {
    width: 100%;
  }
}


/* =========================================================
   GOVTECHWIN BLOG V9 — CORREÇÕES FINAIS APROVADAS
   ========================================================= */

/* Rodapé oficial do site: remove a aparência exclusiva do blog. */
.blog-site footer.container.site-standard-footer {
  display:flex;
  justify-content:center;
  align-items:center;
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
  padding:22px 0 40px;
  color:var(--muted);
  background:transparent;
  text-align:center;
  font-size:.94rem;
}

/* Hero editorial dos artigos. */
.blog-site .article-hero { padding:30px 0 0; }
.blog-site .article-hero-card {
  padding:28px 30px 30px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(135deg,#f9fbfe 0%,#f2f6fb 100%);
  box-shadow:0 18px 48px rgba(10,27,77,.07);
}
.blog-site .article-hero-card .breadcrumb ol {
  margin:0 0 24px;
  font-size:.74rem;
}
.blog-site .article-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(340px,.85fr);
  grid-template-areas:
    "main media"
    "footer media";
  gap:24px 34px;
  align-items:stretch;
}
.blog-site .article-hero-main {
  grid-area:main;
  align-self:center;
  padding:12px 0 0 12px;
}
.blog-site .article-trail-eyebrow {
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:16px;
  color:#956817;
  text-decoration:none;
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.blog-site .article-trail-eyebrow::before {
  content:"";
  width:28px;
  height:2px;
  background:var(--gold);
}
.blog-site .article-hero-main .article-headline { display:block; }
.blog-site .article-hero-main .article-headline h1 {
  max-width:780px;
  margin:0;
  color:var(--navy);
  font-size:clamp(2.55rem,4.2vw,3.85rem);
  line-height:1.055;
  font-weight:600;
  letter-spacing:-.045em;
}
.blog-site .article-hero-main .article-deck {
  max-width:720px;
  margin:20px 0 0;
  color:var(--muted);
  font-size:1.02rem;
  line-height:1.72;
}
.blog-site .article-hero-media {
  grid-area:media;
  min-height:420px;
  margin:0;
  overflow:hidden;
  border-radius:22px;
  background:#e9eef5;
  box-shadow:0 18px 38px rgba(10,27,77,.13);
}
.blog-site .article-hero-media img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.blog-site .article-hero-footer {
  grid-area:footer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  align-self:end;
  padding:4px 0 8px 12px;
}
.blog-site .article-hero-byline {
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}
.blog-site .article-hero-byline img {
  flex:0 0 auto;
  width:48px;
  height:48px;
  object-fit:cover;
  border:2px solid #e5bb53;
  border-radius:50%;
}
.blog-site .article-hero-byline strong {
  display:block;
  color:var(--navy);
  font-size:.92rem;
}
.blog-site .article-hero-byline span {
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:.76rem;
}
.blog-site .article-hero-meta {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  flex-wrap:wrap;
  color:var(--muted);
  font-size:.78rem;
  white-space:nowrap;
}
.blog-site .article-hero-meta .meta-separator { color:#aab4c4; }

/* Hierarquia visual correta para passos e subtópicos numerados. */
.blog-site .article-content h3.article-subsection-title {
  margin:34px 0 14px;
  padding-left:16px;
  border-left:4px solid var(--gold);
  color:#173d70;
  font-size:clamp(1.35rem,2vw,1.75rem);
  line-height:1.24;
  font-weight:700;
  letter-spacing:-.018em;
}

/* Respiro entre cards/indicadores e avisos editoriais. */
.blog-site .comparison-grid + .note,
.blog-site .metric-grid + .note {
  margin-top:28px;
}

/* FAQ fora do card do artigo: seção editorial independente. */
.blog-site .article-layout { padding-bottom:34px; }
.blog-site .article-faq-section {
  width:min(820px,100%);
  margin:0 0 64px;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.blog-site .article-faq-kicker { margin-bottom:12px; }
.blog-site .article-faq-section h2 {
  max-width:760px;
  margin:0 0 24px;
  color:var(--navy);
  font-size:clamp(1.85rem,3vw,2.75rem);
  line-height:1.1;
  letter-spacing:-.035em;
  font-weight:600;
}
.blog-site .article-faq-section details {
  margin:0;
  padding:0;
  border:0;
  border-top:1px solid var(--line);
  border-radius:0;
  background:transparent;
}
.blog-site .article-faq-section details:last-child { border-bottom:1px solid var(--line); }
.blog-site .article-faq-section summary {
  position:relative;
  display:flex;
  align-items:center;
  min-height:68px;
  padding:18px 48px 18px 0;
  color:var(--navy);
  cursor:pointer;
  list-style:none;
  font-weight:700;
  line-height:1.45;
}
.blog-site .article-faq-section summary::-webkit-details-marker { display:none; }
.blog-site .article-faq-section summary::after {
  content:"→";
  position:absolute;
  right:4px;
  top:50%;
  transform:translateY(-50%) rotate(90deg);
  color:#956817;
  font-size:1.05rem;
  transition:transform .22s ease;
}
.blog-site .article-faq-section details[open] summary::after {
  transform:translateY(-50%) rotate(-90deg);
}
.blog-site .article-faq-section details p {
  max-width:760px;
  margin:0;
  padding:0 48px 22px 0;
  color:var(--muted);
  font-size:.96rem;
  line-height:1.75;
}

@media (max-width:1000px) {
  .blog-site .article-hero-grid {
    grid-template-columns:1fr;
    grid-template-areas:
      "main"
      "media"
      "footer";
    gap:24px;
  }
  .blog-site .article-hero-main { padding:6px 4px 0; }
  .blog-site .article-hero-media {
    min-height:0;
    aspect-ratio:16/9;
  }
  .blog-site .article-hero-footer { padding:0 4px 6px; }
}

@media (max-width:720px) {
  .blog-site .article-hero { padding-top:20px; }
  .blog-site .article-hero-card {
    padding:22px 20px 24px;
    border-radius:22px;
  }
  .blog-site .article-hero-card .breadcrumb ol { margin-bottom:19px; }
  .blog-site .article-hero-main .article-headline h1 {
    font-size:clamp(2.05rem,10vw,2.65rem);
    line-height:1.09;
  }
  .blog-site .article-hero-main .article-deck {
    margin-top:16px;
    font-size:.96rem;
  }
  .blog-site .article-hero-footer {
    display:grid;
    justify-content:start;
  }
  .blog-site .article-hero-meta {
    justify-content:flex-start;
    white-space:normal;
  }
  .blog-site .article-content h3.article-subsection-title {
    margin-top:28px;
    font-size:1.34rem;
  }
  .blog-site .comparison-grid + .note,
  .blog-site .metric-grid + .note { margin-top:22px; }
  .blog-site .article-faq-section { margin-bottom:52px; }
  .blog-site .article-faq-section summary {
    min-height:62px;
    padding-right:38px;
  }
  .blog-site .article-faq-section details p { padding-right:12px; }
}


/* ==========================================================
   V11 — autoria sem página editorial, fontes, autoria e conversão
   ========================================================== */
.author-name-link,
.author-card-name {
  color: inherit;
  text-decoration: none;
  font-weight: 800;
}
.author-name-link:hover,
.author-card-name:hover { color: var(--gold, #d6a62a); }
.author-photo-link { display: inline-flex; border-radius: 50%; }

.article-hero-meta { flex-wrap: wrap; row-gap: 6px; }

.gtw-insight {
  margin: 34px 0 46px;
  padding: 28px 30px;
  border: 1px solid rgba(7,31,83,.12);
  border-left: 5px solid #d6a62a;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(7,31,83,.035), rgba(214,166,42,.055));
}
.gtw-insight-eyebrow {
  display: block;
  margin-bottom: 10px;
  color: #a87808;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.gtw-insight h2 { margin: 0 0 12px !important; font-size: clamp(1.55rem,2.3vw,2rem) !important; }
.gtw-insight p { margin: 0 0 16px; }
.gtw-insight ul { margin: 0; padding-left: 1.2rem; display: grid; gap: 9px; }
.gtw-insight li::marker { color: #d6a62a; }

.sources-official {
  margin-top: 46px;
  padding-top: 30px;
  border-top: 1px solid rgba(7,31,83,.13);
}
.sources-official h2 { margin: 0 0 12px !important; font-size: clamp(1.55rem,2.2vw,1.95rem) !important; }
.sources-official > p { margin-bottom: 16px; }
.sources-official ul { margin: 0; padding-left: 1.25rem; display: grid; gap: 10px; }
.sources-official a { color: #0b3974; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.sources-official a:hover { color: #a87808; }
.sources-note { margin-top: 18px !important; color: #5d6674; font-size: .92rem; line-height: 1.55; }

.cta-microproof {
  margin: -4px auto 22px !important;
  max-width: 680px;
  color: rgba(255,255,255,.78) !important;
  font-size: .93rem !important;
  line-height: 1.55 !important;
}
.next-step-proof {
  display: block;
  margin: 4px 0 14px;
  color: #5b6575;
  font-size: .8rem;
  line-height: 1.45;
}

/* Página editorial da autora */
.author-page { background: #f5f8fc; color: #15233b; }
.author-profile-hero { padding: 56px 0 34px; }
.author-profile-card {
  display: grid;
  grid-template-columns: 260px minmax(0,1fr);
  gap: 46px;
  align-items: center;
  padding: 48px;
  border: 1px solid rgba(7,31,83,.1);
  border-radius: 28px;
  background: linear-gradient(135deg,#fff 0%,#f2f6fc 100%);
  box-shadow: 0 22px 55px rgba(7,31,83,.09);
}
.author-profile-photo { width: 100%; aspect-ratio: 1/1; object-fit: cover; border-radius: 50%; border: 8px solid #fff; box-shadow: 0 16px 36px rgba(7,31,83,.16); }
.author-profile-kicker { display:block; margin-bottom:12px; color:#a87808; font-size:.8rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.author-profile-card h1 { margin:0 0 12px; color:#071f53; font-size:clamp(2.5rem,5vw,4.7rem); line-height:1.02; letter-spacing:-.045em; }
.author-profile-role { margin:0 0 18px; color:#173d70; font-size:1.15rem; font-weight:700; }
.author-profile-intro { max-width:760px; margin:0 0 22px; color:#465266; font-size:1.05rem; line-height:1.75; }
.author-profile-actions { display:flex; flex-wrap:wrap; gap:12px; }
.author-profile-actions a { display:inline-flex; align-items:center; min-height:46px; padding:11px 18px; border-radius:10px; font-weight:750; text-decoration:none; }
.author-profile-actions .primary { background:#071f53; color:#fff; }
.author-profile-actions .secondary { border:1px solid rgba(7,31,83,.2); color:#071f53; background:#fff; }
.author-profile-main { padding:24px 0 72px; }
.author-profile-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr); gap:32px; align-items:start; }
.author-profile-section { margin-bottom:28px; padding:34px 36px; border:1px solid rgba(7,31,83,.09); border-radius:22px; background:#fff; }
.author-profile-section h2 { margin:0 0 18px; color:#071f53; font-size:clamp(1.65rem,2.8vw,2.25rem); }
.author-profile-section p, .author-profile-section li { color:#465266; line-height:1.75; }
.author-profile-section ul { display:grid; gap:10px; padding-left:1.2rem; }
.author-profile-aside { position:sticky; top:28px; }
.author-facts { display:grid; gap:14px; }
.author-fact { padding:16px 18px; border-radius:14px; background:#f3f7fc; }
.author-fact strong { display:block; margin-bottom:4px; color:#071f53; }
.author-articles-list { display:grid; gap:0; }
.author-article-link { display:grid; grid-template-columns:1fr auto; gap:18px; padding:18px 0; border-bottom:1px solid rgba(7,31,83,.1); color:#071f53; text-decoration:none; }
.author-article-link:last-child { border-bottom:0; }
.author-article-link strong { line-height:1.45; }
.author-article-link span { white-space:nowrap; color:#6d7684; font-size:.86rem; }
.author-article-link:hover strong { color:#a87808; }

@media (max-width: 900px) {
  .author-profile-card { grid-template-columns:180px 1fr; padding:34px; gap:30px; }
  .author-profile-grid { grid-template-columns:1fr; }
  .author-profile-aside { position:static; }
}
@media (max-width: 680px) {
  .gtw-insight { margin:28px 0 38px; padding:23px 21px; }
  .author-profile-hero { padding:32px 0 22px; }
  .author-profile-card { grid-template-columns:1fr; padding:26px 22px; text-align:left; }
  .author-profile-photo { width:150px; }
  .author-profile-card h1 { font-size:clamp(2.25rem,13vw,3.25rem); }
  .author-profile-actions { flex-direction:column; }
  .author-profile-actions a { justify-content:center; width:100%; }
  .author-profile-section { padding:26px 22px; }
  .author-article-link { grid-template-columns:1fr; gap:4px; }
}
