/* DDV Cidadania: seções de dados das páginas /cidadania-europeia/ e /cidadania-{país}/. Usa os tokens do tema. */

.ddv-cid { margin-block: 0; }
.ddv-cid + .ddv-cid { margin-top: 24px; }
/* Taxas e prazos: dois blocos com título e espaço entre eles (a tabela pilar do tema zera a margem). */
.ddv-cid-pilha { display: grid; gap: 40px; }
.ddv-cid-bloco { display: grid; gap: 12px; }
.ddv-cid-bloco > * { margin: 0; }
.ddv-cid-subtitulo { margin: 0; font-size: var(--wp--preset--font-size--large); color: var(--wp--preset--color--text-primary); }

/* Selos de situação e de resposta. */
.ddv-cid-selo { display: inline-block; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; line-height: 1.4; letter-spacing: .3px; white-space: nowrap; }
.ddv-cid-selo--aberta { background: #e3f4e8; color: #14612f; }
.ddv-cid-selo--parcial { background: #fff3d6; color: #7a4b00; }
.ddv-cid-selo--restrita { background: #fde8e1; color: #9a2d0f; }
.ddv-cid-selo--fechada { background: #eeeff2; color: #3f4c64; }

/* Em resumo. */
.ddv-cid-resumo { box-sizing: border-box; padding: 24px 28px; border-left: 4px solid var(--wp--preset--color--surface-brand-strong); border-radius: var(--wp--custom--radius--xl); background: var(--wp--preset--color--surface-neutral); }
.ddv-cid-resumo p { margin: 0; }
.ddv-cid-resumo__topo { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; font-size: var(--wp--preset--font-size--large); color: var(--wp--preset--color--text-primary); }
.ddv-cid-resumo__texto { margin-top: 12px !important; font-size: var(--wp--preset--font-size--medium); line-height: 1.7; color: var(--wp--preset--color--text-primary); }
.ddv-cid-resumo__data { margin-top: 12px !important; font-size: 13px; color: var(--wp--preset--color--text-muted); }

/* Tabelas: textos longos quebram a linha (a tabela pilar não quebra por padrão). */
.ddv-cid .wp-block-table.ddv-cid-tabela--quebra :is(th, td) { white-space: normal; vertical-align: top; line-height: 1.5; }
.ddv-cid .wp-block-table.ddv-cid-tabela--quebra tbody th { width: 30%; min-width: 180px; }
.ddv-cid .wp-block-table.ddv-cid-tabela--quebra thead th { white-space: nowrap; }
.ddv-cid .wp-block-table.ddv-cid-tabela--quebra td:has(> .ddv-cid-selo:only-child) { width: 1%; white-space: nowrap; }
.ddv-cid .wp-block-table.ddv-cid-tabela--quebra table { min-width: 640px; }
.ddv-secao__miolo > .ddv-cid + *, .ddv-secao__miolo > * + .ddv-cid { margin-top: 24px; }
.wp-block-table.ddv-cid-tabela tbody th { font-weight: 700; color: var(--wp--preset--color--text-primary); }
.ddv-cid__fonte { font-size: 13px; white-space: nowrap; }

/* Grades de cards. */
.ddv-cid-grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.ddv-cid-grade--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ddv-cid-grade--2:has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ddv-cid-via__dados { margin: 0; padding: 0; list-style: none; display: grid; gap: 4px; font-size: 14px; color: var(--wp--preset--color--text-secondary); }
.ddv-cid-card .ddv-cid-selo { justify-self: start; }
.ddv-cid-card__titulo { color: var(--wp--preset--color--text-primary) !important; }
.ddv-cid-card__link a { font-weight: 700; }

/* Linha do tempo. */
.ddv-cid-linha { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; border-left: 2px solid var(--wp--preset--color--border-subtle); }
.ddv-cid-linha li { position: relative; padding-left: 20px; }
.ddv-cid-linha li::before { content: ""; position: absolute; left: -7px; top: 6px; width: 12px; height: 12px; border-radius: 50%; background: var(--wp--preset--color--surface-brand-strong); }
.ddv-cid-linha time { font-weight: 700; color: var(--wp--preset--color--text-primary); }
.ddv-cid-linha p { margin: 4px 0 0; line-height: 1.6; color: var(--wp--preset--color--text-secondary); }

/* Listas: vantagens, guias, fontes, glossário. */
.ddv-cid-vantagens { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; }
.ddv-cid-vantagens li { position: relative; padding-left: 28px; line-height: 1.6; }
.ddv-cid-vantagens li::before { content: "✓"; position: absolute; left: 0; font-weight: 700; color: #14612f; }
.ddv-cid-guias { margin: 0; padding-left: 20px; display: grid; gap: 8px; line-height: 1.5; }
.ddv-cid-fontes { margin: 0; padding-left: 20px; display: grid; gap: 6px; font-size: 14px; line-height: 1.5; }
.ddv-cid-fontes span { color: var(--wp--preset--color--text-muted); }
.ddv-cid-glossario { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 24px; }
.ddv-cid-glossario dt { font-weight: 700; color: var(--wp--preset--color--text-primary); }
.ddv-cid-glossario dd { margin: 4px 0 0; line-height: 1.6; color: var(--wp--preset--color--text-secondary); }
.ddv-cid-nota { margin: 0; font-size: 14px; color: var(--wp--preset--color--text-muted); }

/* Autoria e revisão técnica: dois cartões em destaque (quem escreveu, quem revisou) e a nota da verificação. */
.ddv-cid-autoria { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.ddv-cid-autoria p { margin: 0; }
.ddv-cid-pessoa { display: flex; gap: 16px; align-items: center; padding: 24px; border: 1px solid var(--wp--preset--color--border-subtle); border-radius: var(--wp--custom--radius--2-xl); background: #fff; }
.ddv-cid-pessoa--revisao { border: 2px solid var(--wp--preset--color--surface-accent); }
.ddv-cid-pessoa__foto { flex: none; width: 72px; height: 72px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--wp--preset--color--surface-accent); }
.ddv-cid-pessoa__iniciais { display: grid; place-items: center; background: var(--wp--preset--color--surface-brand-strong); color: var(--wp--preset--color--surface-accent); font-size: 24px; font-weight: 800; letter-spacing: .02em; }
.ddv-cid-pessoa__papel { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--wp--preset--color--text-muted); }
.ddv-cid-pessoa__nome { margin-top: 2px !important; font-size: var(--wp--preset--font-size--large); font-weight: 800; line-height: 1.3; color: var(--wp--preset--color--text-primary); }
.ddv-cid-pessoa__nome a { color: inherit; text-decoration: none; }
.ddv-cid-pessoa__nome a:hover { text-decoration: underline; }
.ddv-cid-pessoa__cargo { margin-top: 4px !important; font-size: 15px; line-height: 1.5; color: var(--wp--preset--color--text-secondary); }
.ddv-cid-autoria__nota { grid-column: 1 / -1; display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.55; color: var(--wp--preset--color--text-secondary); }
.ddv-cid-autoria__nota span { flex: none; width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; background: #e3f4e8; color: #14612f; font-size: 12px; font-weight: 800; }

/* Autoria e revisão no fim dos posts marcados: uma coluna (a coluna de texto do post é estreita). */
.ddv-cid-post-autoria { margin-top: 40px; }
.ddv-cid-post-autoria .ddv-cid-autoria { grid-template-columns: minmax(0, 1fr); }

/* Chamada no fim dos posts marcados. */
.ddv-cid-chamada { margin-top: 40px; padding: 24px 28px; border-radius: var(--wp--custom--radius--2-xl); background: var(--wp--preset--color--surface-brand-strong); color: var(--wp--preset--color--text-inverse); }
.ddv-cid-chamada p { margin: 0; line-height: 1.6; }
.ddv-cid-chamada p + p { margin-top: 12px; }
.ddv-cid-chamada__titulo { font-size: var(--wp--preset--font-size--large); font-weight: 700; }
.ddv-cid-chamada .wp-element-button { background: var(--wp--preset--color--surface-accent); color: var(--wp--preset--color--text-primary); }

/* História do Flávio: foto à esquerda, citação à direita (desenho das citações do tema), motivos embaixo. */
.ddv-cid-historia { display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 48px; align-items: start; }
.ddv-cid-historia > * { margin: 0 !important; }
.ddv-cid-foto { margin: 0; }
.ddv-cid-foto img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; border-radius: var(--wp--custom--radius--2-xl); }
.ddv-cid-foto figcaption { margin-top: 8px; font-size: 13px; color: var(--wp--preset--color--text-muted); }
.ddv-cid-historia__texto > * { margin: 0; }
.ddv-cid-historia__texto > * + * { margin-top: 24px; }
.wp-block-quote.ddv-cid-depoimento { position: relative; margin: 0; padding: 0 0 0 0; border: 0; }
.wp-block-quote.ddv-cid-depoimento::before { content: "“"; display: block; height: 40px; font: 700 80px/1 var(--wp--preset--font-family--lora); color: var(--wp--preset--color--surface-accent); }
.wp-block-quote.ddv-cid-depoimento p { margin: 0; font-family: var(--wp--preset--font-family--lora); font-style: italic; font-size: clamp(20px, 2.2vw, 24px); line-height: 1.5; color: var(--wp--preset--color--text-primary); }
.wp-block-quote.ddv-cid-depoimento cite { display: grid; grid-template-columns: 48px auto; column-gap: 12px; justify-content: start; align-items: center; margin-top: 20px; font-style: normal; font-size: 14px; line-height: 1.4; color: var(--wp--preset--color--text-muted); }
.wp-block-quote.ddv-cid-depoimento cite::before { content: ""; grid-row: 1 / span 2; width: 48px; height: 48px; border-radius: 50%; background: url(/wp-content/themes/ddv-dicas-da-europa/assets/images/flavio-avatar.jpg) center / cover; box-shadow: 0 0 0 3px #fff, 0 0 0 4px var(--wp--preset--color--surface-accent); }
.wp-block-quote.ddv-cid-depoimento cite strong { align-self: end; font-size: 15px; color: var(--wp--preset--color--text-primary); }
.wp-block-quote.ddv-cid-depoimento cite strong a { color: inherit; text-decoration: none; }
.wp-block-quote.ddv-cid-depoimento cite span { align-self: start; }
.ddv-cid-depoimento__pais { font-size: 15px; line-height: 1.6; color: var(--wp--preset--color--text-secondary); }
.ddv-cid-motivos { margin: 0; padding: 20px 24px !important; list-style: none; display: grid; gap: 12px; border-radius: var(--wp--custom--radius--xl); background: #fff; border: 1px solid var(--wp--preset--color--border-subtle); }
.ddv-cid-motivos li { position: relative; padding-left: 30px; font-size: 15px; line-height: 1.55; color: var(--wp--preset--color--text-secondary); }
.ddv-cid-motivos li::before { content: "✓"; position: absolute; left: 0; top: 0; width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; background: #e3f4e8; color: #14612f; font-size: 12px; font-weight: 800; }
.ddv-cid-motivos strong { color: var(--wp--preset--color--text-primary); }

/* Como a assessoria pode ajudar: cartões "a dor de quem procura → como a AV resolve". */
.ddv-cid-ajuda { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.ddv-cid-ajuda__item { display: grid; gap: 12px; align-content: start; margin: 0 !important; padding: 24px; border: 1px solid var(--wp--preset--color--border-subtle); border-radius: var(--wp--custom--radius--2-xl); background: #fff; }
.ddv-cid-ajuda__item > * { margin: 0 !important; }
.ddv-cid-ajuda__item:first-child { border: 2px solid var(--wp--preset--color--surface-accent); }
.ddv-cid-ajuda__dor { position: relative; padding-left: 34px; font-family: var(--wp--preset--font-family--lora); font-style: italic; font-size: 18px; line-height: 1.45; color: var(--wp--preset--color--text-primary); }
.ddv-cid-ajuda__dor::before { content: "“"; position: absolute; left: 0; top: -6px; font: 700 44px/1 var(--wp--preset--font-family--lora); color: var(--wp--preset--color--surface-accent); }
.ddv-cid-ajuda__solucao { position: relative; padding: 12px 0 0 34px; border-top: 1px solid var(--wp--preset--color--border-subtle); font-size: 15px; line-height: 1.6; color: var(--wp--preset--color--text-secondary); }
.ddv-cid-ajuda__solucao::before { content: "✓"; position: absolute; left: 0; top: 13px; width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; background: #e3f4e8; color: #14612f; font-size: 12px; font-weight: 800; }
.ddv-secao__miolo > .ddv-cid-ajuda + h3 { margin-top: 48px; margin-bottom: 20px; font-size: var(--wp--preset--font-size--large); }
.ddv-secao__miolo > .ddv-passos + .wp-block-buttons { margin-top: 28px; }

/* Vantagens (destaque escuro logo depois do resumo): foto do passaporte, título, chamada e os benefícios. */
.ddv-cid-destaque .ddv-titulo-secao, .ddv-cid-destaque h2 { color: var(--wp--preset--color--text-inverse); }
.ddv-cid-vantagens__topo { display: grid; grid-template-columns: minmax(0, 380px) minmax(0, 1fr); gap: 56px; align-items: center; margin: 0 !important; }
.ddv-cid-vantagens__topo:has(.ddv-cid-vantagens__fotos > :nth-child(2)) { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.ddv-cid-vantagens__topo > * { margin: 0 !important; }
.ddv-cid-vantagens__fotos { display: grid; gap: 12px; margin: 0 !important; }
.ddv-cid-vantagens__fotos:has(> :nth-child(2)) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ddv-cid-vantagens__fotos > * { margin: 0 !important; }
.ddv-cid-passaporte img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--wp--custom--radius--2-xl); box-shadow: 0 16px 40px rgb(0 0 0 / 35%); }
.ddv-cid-vantagens__fotos:has(> :nth-child(2)) .ddv-cid-passaporte img { aspect-ratio: 1; border-radius: var(--wp--custom--radius--xl); }
.ddv-cid-vantagens__texto > * { margin: 0 !important; }
.ddv-cid-vantagens__texto > * + * { margin-top: 20px !important; }
.ddv-cid-vantagens__chamada { font-size: clamp(18px, 1.8vw, 21px); line-height: 1.6; color: rgb(255 255 255 / 88%); }
.ddv-cid-destaque .wp-block-button__link { background: var(--wp--preset--color--surface-accent); color: var(--wp--preset--color--text-primary); }
.ddv-cid-beneficios { margin: 48px 0 0 !important; padding: 0 !important; list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.ddv-cid-beneficios li { display: grid; gap: 6px; align-content: start; padding: 20px; border-radius: var(--wp--custom--radius--xl); background: rgb(255 255 255 / 7%); border: 1px solid rgb(255 255 255 / 12%); font-size: 15px; line-height: 1.55; color: rgb(255 255 255 / 80%); }
.ddv-cid-beneficio__icone { font-size: 28px; line-height: 1; }
.ddv-cid-beneficios strong { font-size: 17px; line-height: 1.35; color: var(--wp--preset--color--surface-accent); }

/* Por que boutique: comparativo de dois cartões (volume, apagado; boutique, em destaque). */
.ddv-cid-compara { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); gap: 20px; align-items: stretch; }
.ddv-cid-compara__lado { display: grid; gap: 16px; align-content: start; margin: 0 !important; padding: 28px; border-radius: var(--wp--custom--radius--2-xl); }
.ddv-cid-compara__lado > * { margin: 0 !important; }
.ddv-cid-compara__lado--massa { border: 1px solid var(--wp--preset--color--border-subtle); background: transparent; color: var(--wp--preset--color--text-muted); }
.ddv-cid-compara__lado--boutique { background: var(--wp--preset--color--surface-brand-strong); color: var(--wp--preset--color--text-inverse); box-shadow: var(--wp--custom--elevacao--md, 0 8px 24px rgb(7 37 80 / 18%)); }
.ddv-cid-compara__titulo { font-size: var(--wp--preset--font-size--large); font-weight: 800; line-height: 1.3; }
.ddv-cid-compara__lado--massa .ddv-cid-compara__titulo { color: var(--wp--preset--color--text-secondary); }
.ddv-cid-compara__lista { margin: 0; padding: 0 !important; list-style: none; display: grid; gap: 14px; }
.ddv-cid-compara__lista li { position: relative; padding-left: 34px; font-size: 16px; line-height: 1.55; }
.ddv-cid-compara__lista li::before { position: absolute; left: 0; top: 1px; width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; font-size: 12px; font-weight: 800; }
.ddv-cid-compara__lado--massa li::before { content: "✕"; background: #eeeff2; color: #6b778c; }
.ddv-cid-compara__lado--boutique li::before { content: "✓"; background: var(--wp--preset--color--surface-accent); color: var(--wp--preset--color--text-primary); }
.ddv-cid-compara__lado--boutique strong { color: var(--wp--preset--color--surface-accent); }
.ddv-cid-compara__lado--boutique, .ddv-cid-compara__lado--boutique :is(p, li) { color: rgb(255 255 255 / 88%); }
.ddv-cid-compara__lado--boutique .ddv-cid-compara__titulo { color: #fff; }
.ddv-cid-compara__lado--massa :is(p, li) { color: var(--wp--preset--color--text-muted); }

/* Compartilhar com a família. */
.ddv-cid-partilha { box-sizing: border-box; display: flex; flex-wrap: wrap; gap: 16px 32px; align-items: center; justify-content: space-between; max-width: 860px; margin-inline: auto; padding: 24px 28px; border: 1px dashed var(--wp--preset--color--border-subtle); border-radius: var(--wp--custom--radius--2-xl); background: #fff; }
.ddv-cid-partilha p { margin: 0; }
.ddv-cid-partilha__texto { flex: 1 1 320px; display: grid; gap: 4px; font-size: 15px; line-height: 1.55; color: var(--wp--preset--color--text-secondary); }
.ddv-cid-partilha__titulo { font-size: var(--wp--preset--font-size--large); font-weight: 800; color: var(--wp--preset--color--text-primary); }
.ddv-cid-partilha__botoes { display: flex; flex-wrap: wrap; gap: 8px; }
.ddv-cid-partilha__botao { display: inline-flex; align-items: center; padding: 10px 16px; border: 1px solid var(--wp--preset--color--border-subtle); border-radius: 999px; background: #fff; color: var(--wp--preset--color--text-primary); font: inherit; font-size: 14px; font-weight: 700; text-decoration: none; cursor: pointer; }
.ddv-cid-partilha__botao:hover { border-color: var(--wp--preset--color--surface-brand-strong); }
.ddv-cid-partilha__botao--wa { border-color: #25d366; background: #25d366; color: #073b1d; }
.ddv-cid-partilha__botao[hidden] { display: none; }
.ddv-secao__miolo > * + .ddv-cid--compartilhar { margin-top: 32px; }
.ddv-secao__miolo > .ddv-cid-compara + .wp-block-buttons { margin-top: 28px; }

/* Chamada curta no meio da página (depois de "quem tem direito"). */
.ddv-cid-cta { display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; justify-content: space-between; padding: 20px 24px; border-radius: var(--wp--custom--radius--xl); background: var(--wp--preset--color--surface-brand-strong); color: var(--wp--preset--color--text-inverse); }
.ddv-cid-cta > * { margin: 0 !important; }
.ddv-cid-cta p { flex: 1 1 320px; font-size: var(--wp--preset--font-size--medium); line-height: 1.5; font-weight: 600; }
.ddv-cid-cta .wp-block-button__link { background: var(--wp--preset--color--surface-accent); color: var(--wp--preset--color--text-primary); }
.ddv-secao__miolo > .ddv-cid + .ddv-cid-cta { margin-top: 24px; }

.ddv-pilar__secao .ddv-formulario--cidadania { max-width: 860px; }
.ddv-secao__miolo > .ddv-formulario--cidadania + .ddv-cid-nota { margin-top: 12px; max-width: 860px; }
/* Seção "Conte o seu caso": fechamento da página, centralizado (os rótulos do formulário seguem à esquerda). */
#conte-seu-caso .ddv-secao__miolo > :is(.ddv-titulo-secao, .ddv-titulo-secao__desc, .ddv-cid-nota) { text-align: center; margin-inline: auto; }
#conte-seu-caso .ddv-secao__miolo > .ddv-titulo-secao__desc { max-width: 680px; }
#conte-seu-caso .ddv-formulario--cidadania { margin-inline: auto; }

@media (max-width: 1000px) {
	.ddv-cid-grade, .ddv-cid-ajuda, .ddv-cid-beneficios { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ddv-cid-vantagens__topo { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}
@media (max-width: 760px) {
	.ddv-cid-grade, .ddv-cid-grade--2, .ddv-cid-vantagens, .ddv-cid-glossario { grid-template-columns: minmax(0, 1fr); }
	.ddv-cid-historia { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.ddv-cid-autoria, .ddv-cid-ajuda, .ddv-cid-compara, .ddv-cid-beneficios { grid-template-columns: minmax(0, 1fr); }
	.ddv-cid-compara__lado { padding: 22px; }
	.ddv-cid-pessoa { padding: 18px; }
	.ddv-cid-foto { max-width: 320px; }
	.ddv-cid-motivos { padding: 16px 18px !important; }
	.ddv-cid-resumo { padding: 20px; }
}
