/* ==========================================================================
   Dimarzio & Khater Advogados — folha de estilos do tema
   Convertida do design original (Claude Design) para blocos do WordPress.
   Este arquivo vale para o site e para o editor de páginas.
   Regras que começam com .dk-site valem só para o site publicado.
   ========================================================================== */

:root {
  --ink: #1F3B30;          /* verde floresta: títulos, botões, faixas */
  --dark: #16291F;         /* floresta escuro: rodapé */
  --sage: #7B8C6E;         /* sálvia: fios, emblema */
  --sage-light: #A7B596;   /* sálvia clara: textos de apoio sobre verde */
  --brass: #B07D45;        /* latão: destaques */
  --brass-text: #8A5F2E;   /* latão escuro: rótulos pequenos sobre creme */
  --brass-light: #D0A06A;  /* latão claro: rótulos sobre verde */
  --cream: #F4F1EA;        /* fundo principal */
  --paper: #FBFAF6;        /* cartões e formulários */
  --line: #DCD7CB;         /* divisórias */
  --body: #33443A;         /* texto corrido */
  --muted: #5E6B61;        /* texto secundário */
  --on-dark: #C3CCBF;      /* texto corrido sobre verde */
  --dk-seta: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
}

body {
  margin: 0;
  font-family: 'Sora', 'Helvetica Neue', Arial, sans-serif;
  font-size: 17px;
  line-height: 1.65;
  color: var(--body);
  background: var(--cream);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

*, *::before, *::after { box-sizing: border-box; }
h1, h2, h3, h4, h5, h6, p, ul, ol, figure, blockquote { margin: 0; padding: 0; }
a { color: var(--ink); }
img { max-width: 100%; height: auto; }
.dk-site :focus-visible { outline: 2px solid var(--brass); outline-offset: 3px; }

.dk-wrap { width: 100%; max-width: 1280px; margin: 0 auto; padding-left: clamp(20px, 5.5vw, 80px); padding-right: clamp(20px, 5.5vw, 80px); }

.dk-skip { position: absolute; left: -9999px; top: 0; padding: 12px 18px; background: var(--ink); color: var(--cream) !important; z-index: 100; }
.dk-skip:focus { left: 12px; top: 12px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* ---------- Tipografia ---------- */
h1 { font-size: clamp(36px, 5vw, 66px); font-weight: 600; line-height: 1.07; letter-spacing: -0.025em; color: var(--ink); text-wrap: balance; }
h2 { font-size: clamp(28px, 3.4vw, 46px); font-weight: 600; line-height: 1.13; letter-spacing: -0.02em; color: var(--ink); text-wrap: balance; }
h3 { font-size: clamp(20px, 1.7vw, 23px); font-weight: 600; line-height: 1.28; color: var(--ink); }
h4 { font-size: 18px; font-weight: 600; line-height: 1.35; color: var(--ink); }
h5, h6 { font-size: 16px; font-weight: 600; line-height: 1.4; color: var(--ink); }
.dk-lead { font-size: clamp(17px, 1.45vw, 20px); line-height: 1.6; max-width: 40em; }
.dk-muted { color: var(--muted); }

.dk-eyebrow { display: flex; align-items: center; gap: 14px; font-size: 13px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--brass-text); }
.dk-eyebrow::before { content: ""; width: 28px; height: 2px; background: var(--brass); flex-shrink: 0; }

/* ---------- Logo ---------- */
a.dk-logo, .dk-logo { display: inline-flex; align-items: center; gap: 14px; text-decoration: none; }
.dk-logo svg { width: 50px; height: 50px; flex-shrink: 0; }
.dk-logo-text { display: flex; flex-direction: column; gap: 6px; }
.dk-logo-name { font-size: 18px; font-weight: 600; letter-spacing: 0.07em; line-height: 1; color: var(--ink); white-space: nowrap; }
.dk-logo-name span { color: var(--brass); font-size: 0.68em; letter-spacing: 0; padding: 0 0.06em; }
.dk-logo-sub { font-size: 7px; font-weight: 600; letter-spacing: 0.52em; line-height: 1; color: var(--sage); }
.dk-logo--light .dk-logo-name { color: var(--cream); }
.dk-logo--light .dk-logo-sub { color: var(--cream); }

/* ---------- Botões ----------
   .dk-btn = botões do cabeçalho, do formulário e dos artigos
   .wp-block-button = bloco "Botões" do editor
   Variações do bloco (painel Estilos): Preenchido, Contorno, Claro e Contorno claro. */
:root .dk-btn,
:root .wp-block-button .wp-block-button__link {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: 48px; height: auto; padding: 14px 26px;
  font-family: inherit; font-size: 16px; font-weight: 500; line-height: 1.2; text-align: left; text-decoration: none;
  border: 1.5px solid var(--ink); border-radius: 0; box-shadow: none;
  background: var(--ink); color: var(--cream) !important;
  cursor: pointer; transition: background .18s ease, color .18s ease, border-color .18s ease;
}
:root .dk-btn::after,
:root .wp-block-button .wp-block-button__link::after {
  content: ""; width: 18px; height: 18px; flex-shrink: 0; background: currentColor;
  -webkit-mask: var(--dk-seta) center / contain no-repeat; mask: var(--dk-seta) center / contain no-repeat;
  transition: transform .18s ease;
}
:root .dk-btn:hover,
:root .wp-block-button .wp-block-button__link:hover { background: var(--dark); border-color: var(--dark); }
:root .dk-btn:hover::after,
:root .wp-block-button .wp-block-button__link:hover::after { transform: translateX(3px); }

:root .dk-btn--sec,
:root .wp-block-button.is-style-outline .wp-block-button__link { background: transparent; border: 1.5px solid var(--ink); padding: 14px 26px; color: var(--ink) !important; }
:root .dk-btn--sec:hover,
:root .wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--ink); border-color: var(--ink); color: var(--cream) !important; }

:root .dk-btn--light,
:root .wp-block-button.is-style-dk-claro .wp-block-button__link { background: var(--cream); border-color: var(--cream); color: var(--ink) !important; }
:root .dk-btn--light:hover,
:root .wp-block-button.is-style-dk-claro .wp-block-button__link:hover { background: #fff; border-color: #fff; }

:root .dk-btn--ghost,
:root .wp-block-button.is-style-dk-contorno-claro .wp-block-button__link { background: transparent; border-color: rgba(244, 241, 234, 0.5); color: var(--cream) !important; }
:root .dk-btn--ghost:hover,
:root .wp-block-button.is-style-dk-contorno-claro .wp-block-button__link:hover { background: rgba(244, 241, 234, 0.1); border-color: var(--cream); }

.dk-btns,
:root .wp-block-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }

/* Link com seta (parágrafo com a classe dk-link) */
a.dk-link,
.dk-link a { display: inline-flex; align-items: center; gap: 10px; font-weight: 500; color: var(--ink); text-decoration: underline; text-decoration-color: var(--brass); text-decoration-thickness: 2px; text-underline-offset: 6px; }
a.dk-link::after,
.dk-link a::after { content: ""; width: 18px; height: 18px; flex-shrink: 0; background: currentColor; -webkit-mask: var(--dk-seta) center / contain no-repeat; mask: var(--dk-seta) center / contain no-repeat; transition: transform .18s ease; }
a.dk-link:hover::after,
.dk-link a:hover::after { transform: translateX(3px); }

/* ---------- Cabeçalho ---------- */
.dk-header { background: var(--cream); border-bottom: 1px solid var(--line); position: relative; z-index: 20; }
.dk-header .dk-wrap { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 92px; }
.dk-nav { display: flex; align-items: center; gap: clamp(16px, 1.9vw, 30px); }
.dk-nav .dk-btn { white-space: nowrap; }
.dk-nav a:not(.dk-btn) { font-size: 15px; font-weight: 500; text-decoration: none; color: var(--ink); padding: 8px 0; border-bottom: 2px solid transparent; white-space: nowrap; }
.dk-nav a:not(.dk-btn):hover, .dk-nav a[aria-current="page"], .dk-nav a.is-ativo { border-bottom-color: var(--brass); }
.dk-menu-toggle { position: absolute; opacity: 0; pointer-events: none; }
.dk-menu-btn { display: none; width: 48px; height: 48px; flex-direction: column; align-items: center; justify-content: center; gap: 6px; cursor: pointer; }
.dk-menu-btn span { display: block; width: 26px; height: 2px; background: var(--ink); }
.dk-menu-btn span:last-child { width: 16px; background: var(--brass); align-self: flex-end; margin-right: 11px; }

/* O design original trocava para o menu de celular em 980px; com o item "Artigos" a mais, a troca acontece antes. */
@media (max-width: 1240px) {
  .dk-header .dk-wrap { min-height: 72px; flex-wrap: wrap; }
  .dk-logo svg { width: 40px; height: 40px; }
  .dk-logo-name { font-size: 15px; }
  .dk-logo-sub { font-size: 6px; }
  .dk-menu-btn { display: flex; }
  .dk-nav { display: none; flex-basis: 100%; flex-direction: column; align-items: stretch; gap: 0; padding: 4px 0 24px; }
  .dk-nav a:not(.dk-btn) { padding: 16px 0; font-size: 17px; border-bottom: 1px solid var(--line); }
  .dk-nav .dk-btn { margin-top: 20px; white-space: normal; }
  .dk-menu-toggle:checked ~ .dk-nav { display: flex; }
  .dk-menu-toggle:focus-visible ~ .dk-menu-btn { outline: 2px solid var(--brass); outline-offset: 3px; }
}

/* ---------- Seções ---------- */
.dk-section { padding: clamp(64px, 9vw, 120px) 0; }
.dk-section--line { border-top: 1px solid var(--line); }
.dk-section--paper { background: var(--paper); border-top: 1px solid var(--line); }
.dk-section--dark { background: var(--ink); color: var(--on-dark); position: relative; overflow: hidden; }
.dk-section--darker { background: var(--dark); color: var(--on-dark); }
.dk-section--dark h1, .dk-section--dark h2, .dk-section--dark h3,
.dk-section--darker h1, .dk-section--darker h2, .dk-section--darker h3 { color: var(--cream); }
.dk-section--dark .dk-eyebrow, .dk-section--darker .dk-eyebrow { color: var(--brass-light); }
.dk-section--dark .dk-wrap { position: relative; }

/* Marca-d'água do emblema nas faixas verdes */
.dk-section--dark::before,
.dk-hero--dark::before { content: ""; position: absolute; top: clamp(40px, 6vw, 70px); right: clamp(20px, 5.5vw, 80px); width: clamp(180px, 22vw, 300px); aspect-ratio: 1; background: url(../img/emblema-claro.svg) center / contain no-repeat; opacity: 0.16; pointer-events: none; }
@media (max-width: 780px) { .dk-section--dark::before, .dk-hero--dark::before { display: none; } }

.dk-stack { display: flex; flex-direction: column; gap: clamp(20px, 2.2vw, 28px); }
.dk-stack--lg { gap: clamp(40px, 5vw, 64px); }
.dk-max-760 { max-width: 760px; }
.dk-max-820 { max-width: 820px; }
.dk-max-900 { max-width: 900px; }
.dk-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.dk-head-text { display: flex; flex-direction: column; gap: 20px; max-width: 760px; }

.dk-grid { display: grid; gap: 24px; }
.dk-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dk-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dk-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dk-split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.dk-split--hero { grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); align-items: center; }
@media (max-width: 1100px) { .dk-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) {
  .dk-grid--3 { grid-template-columns: minmax(0, 1fr); }
  .dk-split, .dk-split--hero { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) { .dk-grid--2, .dk-grid--4 { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Abertura ---------- */
.dk-hero { padding: clamp(48px, 7vw, 96px) 0 clamp(56px, 8vw, 104px); }
.dk-hero--dark { background: var(--ink); color: var(--on-dark); position: relative; overflow: hidden; padding: clamp(48px, 6vw, 80px) 0 clamp(56px, 7vw, 92px); }
.dk-hero--dark h1 { color: var(--cream); }
.dk-hero--dark .dk-wrap { position: relative; }
.dk-hero--dark .dk-stack { max-width: 860px; }
.dk-breadcrumb { display: flex; flex-wrap: wrap; gap: 10px; font-size: 14px; color: var(--sage-light); }
.dk-breadcrumb a { color: var(--sage-light); }
.dk-breadcrumb a:hover { color: var(--cream); }
.dk-breadcrumb strong, .dk-breadcrumb [aria-current] { color: var(--cream); font-weight: inherit; }
.dk-hero-meta { font-size: 15px; color: var(--sage-light); }

/* ---------- Moldura (os dois cantos do emblema) ---------- */
.dk-frame { position: relative; padding: clamp(22px, 2.6vw, 34px); }
.dk-frame::before, .dk-frame::after { content: ""; position: absolute; width: 42%; height: 42%; pointer-events: none; }
.dk-frame::before { top: 0; left: 0; border-top: 13px solid var(--sage); border-left: 13px solid var(--sage); }
.dk-frame::after { bottom: 0; right: 0; border-bottom: 13px solid var(--brass); border-right: 13px solid var(--brass); }

/* Fotos: o bloco Imagem com a classe dk-photo recorta a foto na proporção certa */
.dk-photo { position: relative; z-index: 1; display: block; width: 100%; aspect-ratio: 4 / 5; background: #E4DFD3; overflow: hidden; }
.dk-photo img,
.wp-block-image.dk-photo img { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; }
.dk-photo--wide { aspect-ratio: 4 / 3; }
@media (max-width: 900px) { .dk-split--hero .dk-photo { aspect-ratio: 4 / 3; } }

/* ---------- Cartões ---------- */
.dk-card { position: relative; display: flex; flex-direction: column; gap: 16px; padding: clamp(26px, 2.8vw, 40px) clamp(22px, 2.6vw, 36px); background: var(--paper); border-top: 3px solid var(--sage); text-decoration: none; color: var(--body); height: 100%; }
.dk-grid > :nth-child(even) > .dk-card, .dk-grid > .dk-card:nth-child(even) { border-top-color: var(--brass); }
.dk-card--link { transition: background .18s ease, transform .18s ease; }
.dk-site .dk-card--link:hover { background: #fff; transform: translateY(-2px); }
.dk-card h3 a { color: inherit; text-decoration: none; }
/* O link do título cobre o cartão inteiro (só no site; no editor o texto continua clicável) */
.dk-site .dk-card h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.dk-card p { font-size: 16px; line-height: 1.6; color: var(--muted); }
.dk-card .dk-card-num { font-size: 13px; font-weight: 600; line-height: 1.65; letter-spacing: 0.12em; color: var(--brass-text); }
.dk-card-list { display: flex; flex-direction: column; gap: 9px; list-style: none; font-size: 16px; color: var(--body); }
.dk-card-list li { display: flex; gap: 12px; align-items: baseline; }
.dk-card-list li::before { content: ""; width: 12px; height: 2px; background: var(--brass); flex-shrink: 0; transform: translateY(-5px); }
.dk-card .dk-card-more { display: flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 10px; font-size: 15px; font-weight: 500; line-height: 1.65; color: var(--ink); }
.dk-card .dk-card-more::after { content: ""; width: 18px; height: 18px; flex-shrink: 0; background: currentColor; -webkit-mask: var(--dk-seta) center / contain no-repeat; mask: var(--dk-seta) center / contain no-repeat; transition: transform .18s ease; }
.dk-site .dk-card--link:hover .dk-card-more::after { transform: translateX(3px); }

.dk-topic { display: flex; flex-direction: column; gap: 12px; }
.dk-topic::before { content: ""; width: 36px; height: 3px; background: var(--brass); }
.dk-topic p { font-size: 16px; line-height: 1.6; color: var(--muted); }

/* ---------- Etapas (sobre verde) ---------- */
.dk-step { display: flex; flex-direction: column; gap: 14px; padding-top: 26px; border-top: 1px solid rgba(244, 241, 234, 0.2); }
.dk-step p { font-size: 16px; line-height: 1.65; color: #B9C3B5; }
.dk-step .dk-step-num { font-size: clamp(34px, 3.4vw, 44px); font-weight: 300; line-height: 1; color: var(--brass); }

/* ---------- Sócios ---------- */
.dk-partner { display: flex; flex-direction: column; gap: 20px; }
.dk-partner p { font-size: 16px; line-height: 1.65; }
.dk-partner .dk-partner-role { font-size: 15px; color: var(--muted); }

/* ---------- Área em lista (página Atuação) ---------- */
.dk-area { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: clamp(24px, 5vw, 80px); padding: clamp(40px, 5vw, 64px) 0; border-top: 1px solid var(--line); }
.dk-area:first-child { border-top: 0; padding-top: 0; }
.dk-area:last-child { padding-bottom: 0; }
.dk-area-items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 32px; }
.dk-area-items h3 { font-size: 19px; }
.dk-area-items p { font-size: 15.5px; line-height: 1.6; color: var(--muted); margin-top: 8px; }
@media (max-width: 900px) { .dk-area { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 560px) { .dk-area-items { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Chamada final ---------- */
.dk-cta { display: flex; align-items: center; justify-content: space-between; gap: 40px; flex-wrap: wrap; }
.dk-cta-text { display: flex; align-items: center; gap: clamp(20px, 3vw, 40px); }
.dk-cta-text::before { content: ""; width: clamp(72px, 9vw, 116px); aspect-ratio: 1; flex-shrink: 0; background: url(../img/emblema.svg) center / contain no-repeat; }
.dk-cta-text h2 { max-width: 640px; }
@media (max-width: 640px) { .dk-cta-text { flex-direction: column; align-items: flex-start; } }

/* ---------- Contato e formulário ---------- */
.dk-info { display: flex; flex-direction: column; gap: 22px; font-size: 16px; line-height: 1.6; }
.dk-info b { display: block; color: var(--ink); font-weight: 600; }
.dk-section--dark .dk-info b { color: var(--cream); }
.dk-form { display: flex; flex-direction: column; gap: 20px; }
.dk-form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
@media (max-width: 640px) { .dk-form-row { grid-template-columns: minmax(0, 1fr); } }
.dk-field { display: flex; flex-direction: column; gap: 8px; }
.dk-field label { font-size: 13px; font-weight: 600; letter-spacing: 0.04em; color: var(--ink); }
.dk-field input, .dk-field textarea { width: 100%; font-family: inherit; font-size: 16px; line-height: 1.4; padding: 14px 16px; border: 1.5px solid var(--line); border-radius: 0; background: #fff; color: var(--ink); }
.dk-field input { height: 54px; padding-top: 0; padding-bottom: 0; }
.dk-field textarea { resize: vertical; min-height: 130px; }
.dk-field input:focus, .dk-field textarea:focus { outline: none; border-color: var(--ink); box-shadow: 0 0 0 3px rgba(123, 140, 110, 0.3); }
.dk-form .dk-btn { align-self: flex-start; }
.dk-note { font-size: 13px; line-height: 1.5; color: var(--muted); }

/* Lembrete visível só para quem está logado como administrador */
.dk-pendente { display: inline-block; padding: 1px 8px; font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; color: #6B4A1F; background: #F3E3C8; border: 1px dashed var(--brass); }
.dk-footer .dk-pendente { color: #F3E3C8; background: transparent; }
.dk-aviso { padding: 20px 24px; font-size: 15px; line-height: 1.6; color: #6B4A1F; background: #F9F0DF; border: 1px dashed var(--brass); }
.dk-aviso a { color: inherit; font-weight: 600; }

/* ---------- Artigos ---------- */
.dk-card time { display: block; }
.dk-article { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 8fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.dk-article-side { display: flex; flex-direction: column; gap: 22px; font-size: 15px; line-height: 1.6; padding-top: 22px; border-top: 3px solid var(--brass); }
.dk-article-side b { display: block; color: var(--ink); font-weight: 600; }
.dk-article-side a { color: var(--body); text-decoration-color: var(--brass); text-underline-offset: 4px; }
@media (max-width: 900px) {
  .dk-article { grid-template-columns: minmax(0, 1fr); }
  .dk-article-side { flex-direction: row; flex-wrap: wrap; gap: 14px 40px; }
}
.dk-pager { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px; }
.dk-empty { max-width: 40em; }
.dk-search { display: flex; flex-wrap: wrap; gap: 14px; max-width: 640px; }
.dk-search .dk-field { flex: 1 1 260px; }

/* ---------- Texto corrido (artigos e páginas simples) ----------
   .dk-prose = no site; .is-root-container = dentro do editor */
.dk-prose { max-width: 760px; font-size: 17px; line-height: 1.75; }
:is(.dk-prose, .is-root-container) > :not(.dk-hero, .dk-section) + * { margin-top: 1.35em; }
:is(.dk-prose, .is-root-container) > :is(h2, h3, h4) { text-wrap: pretty; }
:is(.dk-prose, .is-root-container) > h2 { font-size: clamp(24px, 2.4vw, 32px); line-height: 1.2; letter-spacing: -0.015em; }
:is(.dk-prose, .is-root-container) > h3 { font-size: clamp(19px, 1.7vw, 22px); }
:is(.dk-prose, .is-root-container) > :not(.dk-hero, .dk-section) + :is(h2, h3, h4) { margin-top: 2em; }
:is(.dk-prose, .is-root-container) > :is(h2, h3, h4):not(.dk-hero) + :not(h2, h3, h4) { margin-top: 0.7em; }
:is(.dk-prose, .is-root-container) > :is(p, ul, ol, blockquote) a,
:is(.dk-prose, .is-root-container) > .wp-block-table a { color: var(--ink); text-decoration: underline; text-decoration-color: var(--brass); text-decoration-thickness: 2px; text-underline-offset: 4px; }
:is(.dk-prose, .is-root-container) > :is(ul, ol):not(.dk-card-list) { padding-left: 1.3em; }
:is(.dk-prose, .is-root-container) > :is(ul, ol):not(.dk-card-list) li + li { margin-top: 0.45em; }
:is(.dk-prose, .is-root-container) > :is(ul, ol):not(.dk-card-list) :is(ul, ol) { padding-left: 1.3em; margin-top: 0.45em; }
:is(.dk-prose, .is-root-container) > ul:not(.dk-card-list) li::marker { color: var(--brass); }
:is(.dk-prose, .is-root-container) > ol:not(.dk-card-list) li::marker { color: var(--brass-text); font-weight: 600; }
:is(.dk-prose, .is-root-container) > blockquote,
:is(.dk-prose, .is-root-container) > .wp-block-pullquote blockquote { padding: 4px 0 4px 24px; border-left: 3px solid var(--brass); font-size: 1.08em; color: var(--ink); }
:is(.dk-prose, .is-root-container) > blockquote > * + * { margin-top: 0.8em; }
:is(.dk-prose, .is-root-container) blockquote cite { display: block; font-size: 14px; font-style: normal; color: var(--muted); }
:is(.dk-prose, .is-root-container) > .wp-block-pullquote { padding: 0; text-align: left; }
:is(.dk-prose, .is-root-container) > .wp-block-image img { display: block; }
:is(.dk-prose, .is-root-container) figcaption { margin-top: 10px; font-size: 14px; line-height: 1.5; color: var(--muted); text-align: left; }
:is(.dk-prose, .is-root-container) > hr { height: 0; border: 0; border-top: 1px solid var(--line); margin-top: 2.2em; margin-bottom: 2.2em; }
:is(.dk-prose, .is-root-container) > .wp-block-table { overflow-x: auto; }
:is(.dk-prose, .is-root-container) > .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 15.5px; line-height: 1.5; }
:is(.dk-prose, .is-root-container) > .wp-block-table :is(th, td) { padding: 12px 14px; border: 0; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
:is(.dk-prose, .is-root-container) > .wp-block-table th { font-weight: 600; color: var(--ink); border-bottom: 2px solid var(--sage); }
:is(.dk-prose, .is-root-container) > :is(pre, .wp-block-code) { padding: 18px 20px; overflow-x: auto; font-size: 14.5px; line-height: 1.6; background: var(--paper); border: 1px solid var(--line); }
.dk-thumb { margin-bottom: clamp(28px, 3vw, 40px); }
.dk-thumb img { display: block; width: 100%; height: auto; }

/* ---------- Rodapé ---------- */
.dk-footer { background: var(--dark); color: #C9CFC4; padding: clamp(48px, 6vw, 72px) 0 32px; font-size: 14px; line-height: 1.65; }
.dk-footer-cols { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr) minmax(0, 1.1fr) minmax(0, 1.4fr); gap: 36px; }
.dk-footer h3 { font-size: 14px; font-weight: 600; color: var(--cream); margin-bottom: 10px; }
.dk-footer ul { list-style: none; }
.dk-footer a { color: #C9CFC4; text-decoration: none; overflow-wrap: anywhere; }
.dk-footer a:hover { color: var(--cream); text-decoration: underline; }
.dk-footer li { margin-bottom: 4px; }
.dk-footer-legal { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 24px; margin-top: 44px; padding-top: 24px; border-top: 1px solid rgba(244, 241, 234, 0.14); font-size: 12px; color: #8E998E; }
.dk-footer-legal a { color: #8E998E; }
@media (max-width: 900px) { .dk-footer-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); } .dk-footer-cols > :first-child { grid-column: 1 / -1; } }
@media (max-width: 520px) { .dk-footer-cols { grid-template-columns: minmax(0, 1fr); } }

@media (prefers-reduced-motion: reduce) { .dk-site * { transition: none !important; } }
