@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@800;900&display=swap');
/* ========================================================
   DP v9 — Design System CSS Master
   diegopaulino.com.br | Redesign v9 | Aprovado 06/abr/2026
   ======================================================== */

/* 0. Google Fonts — Raleway + DM Sans */
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;600;700&family=DM+Sans:opsz,wght@9..40,400;9..40,500&display=swap');

/* 1. Design Tokens + Override tema (--b: bordeaux → terracota) */
:root {
  --b: #E04B2A;
  --dp-terracota: #E04B2A;
  --dp-ancora:    #1C1C1E;
  --dp-branco:    #ffffff;
  --dp-medio:     #808080;
  --dp-lt:        #F8F6F4;
  --dp-borda:     #E8E4E0;
  --dp-pf: 'Playfair Display', Georgia, serif;
  --dp-rl: 'Raleway', sans-serif;
  --dp-dm: 'DM Sans', sans-serif;
}

/* 2. Tipografia global */
body, p, li, td, input, textarea, select, button {
  font-family: 'DM Sans', sans-serif;
}
h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', Georgia, serif;
}
.eyebrow, .post-cat, .btn, .header-cta,
.strip-item, .footer-col h4, .cat-pill,
.press-logo-name, .press-link-row,
.area-card-a2__body a, .menu-item > a {
  font-family: 'Raleway', sans-serif;
}

/* 3. HERO */
section.hero {
  min-height: 70vh !important;
  max-height: 76vh !important;
  overflow: hidden !important;
  display: flex !important;
  padding: 0 !important;
}
#dp-hero-canvas-wrap {
  flex-shrink: 0;
  width: 76px;
  overflow: hidden;
  position: relative;
  background: #fff;
}
#dp-hero-canvas {
  position: absolute;
  top: 0; left: 0;
  display: block;
}
section.hero .container {
  flex: 1;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  max-width: none !important;
}
.dp-hero-morph {
  position: absolute;
  pointer-events: none;
  z-index: 0;
}
.hero-pattern-bg { display: none !important; }
.hero-bordeaux-bar { background: var(--dp-terracota) !important; }
.hero-d-deco { display: none !important; }
.hero-inner { position: relative; z-index: 2; padding-left: 64px !important; }
.hero-breadline .eyebrow { font-family: 'Raleway', sans-serif; letter-spacing: .22em; font-size: .60rem; }
.hero-title { font-family: 'Playfair Display', Georgia, serif; font-weight: 500; }
.hero-title em { color: var(--dp-terracota); }
.hero-sub { font-family: 'DM Sans', sans-serif; color: var(--dp-medio); }
.btn.btn-primary { background: var(--dp-terracota) !important; border-color: var(--dp-terracota) !important; font-family: 'Raleway', sans-serif !important; font-size: .52rem !important; letter-spacing: .1em !important; }
.btn.btn-secondary { font-family: 'Raleway', sans-serif !important; font-size: .52rem !important; letter-spacing: .1em !important; color: var(--dp-ancora) !important; border-color: var(--dp-ancora) !important; }
.btn.btn-secondary:hover { background: var(--dp-ancora) !important; color: #fff !important; }

/* 4. Strip */
.strip { background: var(--dp-lt) !important; border-top: 2px solid var(--dp-terracota) !important; }
.strip-item { font-family: 'Raleway', sans-serif !important; font-size: .52rem !important; letter-spacing: .13em !important; text-transform: uppercase; color: var(--dp-ancora) !important; }

/* 5. Áreas */
.area-card-a2:hover { border-color: var(--dp-terracota) !important; }
.area-card-a2:hover .area-icon-col { background: rgba(224,75,42,.04) !important; border-right-color: rgba(224,75,42,.15) !important; }
.area-icon-col svg { stroke: var(--dp-terracota) !important; }
.area-card-a2:hover .area-card-a2__body h3 { color: var(--dp-terracota) !important; }
.area-card-a2__body a { color: var(--dp-terracota) !important; }

/* 6. Marquee */
@keyframes mq {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
#mq-wrap {
  overflow: hidden;
  cursor: grab;
  background: var(--dp-lt);
  margin-top: 0 !important;
  padding-top: 0 !important;
}
#mq-track {
  display: flex;
  width: max-content;
  animation: mq 42s linear infinite;
}
#mq-wrap:hover #mq-track { animation-play-state: paused; }
.mq-card {
  flex-shrink: 0;
  width: 300px;
  margin-right: 14px;
  background: var(--dp-lt);
  border: .5px solid var(--dp-borda);
  border-radius: 3px;
  padding: 20px 22px;
  transition: background .2s, box-shadow .2s;
}
.mq-card:hover {
  background: #ECEAE8 !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.1);
}
.mq-card-source {
  font-family: 'Raleway', sans-serif;
  font-size: .46rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--dp-terracota);
  margin-bottom: 8px;
}
.mq-card-title {
  font-family: 'Playfair Display', serif;
  font-size: .90rem;
  color: var(--dp-ancora);
  line-height: 1.35;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mq-card-read {
  font-family: 'Raleway', sans-serif;
  font-size: .46rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dp-ancora);
  padding: 5px 10px;
  border: .5px solid var(--dp-borda);
  border-radius: 2px;
  background: #fff;
}
section.press-section-v3 {
  background: var(--dp-lt) !important;
  padding-bottom: 0 !important;
}
section.press-section-v3 .container {
  padding-bottom: 0 !important;
  border-bottom: none !important;
}
section.press-section-v3 .container > div:first-child {
  margin-bottom: 20px !important;
}
.press-carousel-wrap {
  background: var(--dp-lt) !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}
.press-track { background: var(--dp-lt) !important; }
.press-card-v3 {
  background: var(--dp-lt) !important;
  border-color: var(--dp-borda) !important;
}
.press-logo-name { color: var(--dp-terracota) !important; }

/* 7. Blog */
.post-cat { font-family: 'Raleway', sans-serif !important; color: var(--dp-terracota) !important; letter-spacing: .14em; }
.post-card { background: #fff; border: .5px solid var(--dp-borda); }
.post-meta a { color: var(--dp-terracota) !important; font-family: 'Raleway', sans-serif !important; }

/* 8. CTA */
section.cta-section {
  background: var(--dp-terracota) !important;
  position: relative;
  overflow: hidden;
}
section.cta-section h2 { color: #fff !important; }
section.cta-section p { color: rgba(255,255,255,.75) !important; }
section.cta-section .eyebrow { color: rgba(255,255,255,.6) !important; }
section.cta-section .btn-primary {
  background: #fff !important;
  color: var(--dp-terracota) !important;
  border-color: #fff !important;
}
.dp-cta-morph {
  position: absolute;
  pointer-events: none;
  opacity: .15;
}

/* 9. Footer */
#site-footer { background: var(--dp-ancora) !important; }
.footer-brand { font-family: var(--dp-pf); }
.footer-col h4 { font-family: 'Raleway', sans-serif; font-size: .52rem; letter-spacing: .18em; text-transform: uppercase; color: rgba(255,255,255,.25); }
.footer-col a, .footer-col li { font-size: .78rem; }
.footer-bottom { font-size: .68rem; line-height: 1.65; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; }

/* 10. Press mosaico */
.dp-press-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 1px;
  background: var(--dp-borda);
}
.dp-press-grid [data-pv] {
  transition: opacity .18s;
  background: var(--dp-branco);
}
.dp-press-grid:hover [data-pv] { opacity: .65; }
.dp-press-grid [data-pv]:hover {
  opacity: 1 !important;
  box-shadow: 0 0 0 2px var(--dp-terracota), 0 4px 20px rgba(0,0,0,.12);
  position: relative;
  z-index: 2;
}
.dp-press-fill {
  background: var(--dp-lt);
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100px;
}

/* 11. Filtros */
.dp-filter-btn, .hfb, .pfbtn {
  padding: 6px 13px;
  font-family: 'Raleway', sans-serif;
  font-size: .48rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  border: .5px solid var(--dp-borda);
  border-radius: 2px;
  cursor: pointer;
  background: var(--dp-branco);
  color: var(--dp-medio);
  transition: all .18s;
}
.dp-filter-btn.active, .hfb.on, .pfbtn.on,
.dp-filter-btn:hover, .hfb:hover, .pfbtn:hover {
  background: var(--dp-ancora);
  color: #fff;
  border-color: var(--dp-ancora);
}

/* 12. Práticas posicionamento */
.dp-position-quote {
  text-align: center;
  padding: 28px 40px;
  border-top: .5px solid var(--dp-borda);
}
.dp-position-quote p {
  font-family: var(--dp-pf);
  font-size: clamp(16px, 1.8vw, 21px);
  color: var(--dp-ancora);
  line-height: 1.45;
  max-width: 620px;
  margin: 0 auto;
  font-style: normal;
}

/* 13. Share bar */
.dp-share-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 0;
  border-top: .5px solid var(--dp-borda);
  margin-top: 32px;
}
.dp-share-bar a {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: .7;
  transition: opacity .15s;
  text-decoration: none;
  border: none !important;
  background: none !important;
}
.dp-share-bar a:hover { opacity: 1; }

/* 14. Post nav */
#dp-post-prev, #dp-post-next {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  z-index: 200;
  display: none;
}
#dp-post-prev { left: 12px; }
#dp-post-next { right: 52px; }

/* 15. Hub dropdown */
.hub-nav { position: relative; }
.hub-dd {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #fff;
  border: .5px solid var(--dp-borda);
  border-radius: 3px;
  min-width: 170px;
  padding: 6px 0;
  box-shadow: 0 8px 24px rgba(0,0,0,.1);
  z-index: 999;
}
.hub-nav:hover .hub-dd { display: block; }
.hub-dd a {
  display: block;
  padding: 9px 16px;
  font-family: 'Raleway', sans-serif;
  font-size: .52rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--dp-medio);
  text-decoration: none;
}
.hub-dd a:hover { background: var(--dp-lt); color: var(--dp-ancora); }

/* 16. Newsletter */
.newsletter-section { background: var(--dp-ancora) !important; }

/* 17. Citação */
.cit-section { background: var(--dp-lt) !important; }
.cit-text { font-family: var(--dp-pf) !important; font-style: normal !important; }

/* 18. cat-pill */
.cat-pill.active { background: var(--dp-terracota) !important; border-color: var(--dp-terracota) !important; }
.cat-pill:hover { border-color: var(--dp-ancora) !important; color: var(--dp-ancora) !important; }

@media print {
  #dp-post-prev, #dp-post-next { display: none !important; }
}

@media (max-width: 768px) {
  section.hero { min-height: 60vh !important; }
  #dp-hero-canvas-wrap { width: 48px; }
  .hero-inner { padding-left: 16px !important; }
  section.press-section-v3 .container > div:first-child { margin-bottom: 12px !important; }
}


/* ════════════════════════════════════════════════════════════════════
   PHASE 2 — Menu · Hero · Tipografia Lora
   diegopaulino.com.br · v9 / abr 2026
════════════════════════════════════════════════════════════════════ */

/* ── A. TIPOGRAFIA: Lora para títulos (diferencia da logo Playfair) ── */
@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');

h1, h2, h3, h4,
.post-title, .entry-title,
.section-title,
.be-section-title,
.heading-title,
.dp-h1, .dp-h2, .dp-h3 {
  font-family: 'Lora', Georgia, serif !important;
}

/* Preservar logo — identidade da marca mantém Playfair Display */
.site-logo .logo-name,
.logo-name,
.mm-logo .logo-name {
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* ── B. MENU — Paleta correta em todos os elementos ─────────────── */

/* B1. Links de nav — hover terracota */
.nav-menu > li > a:hover {
  color: var(--dp-terracota) !important;
  opacity: 1 !important;
}
.nav-menu > li.current-menu-item > a {
  color: var(--dp-terracota) !important;
}

/* B2. Sub-menu (Hub Jurídico dropdown) */
.sub-menu {
  background: rgba(255,255,255,.97) !important;
  border: .5px solid var(--dp-borda) !important;
  border-top: 2px solid var(--dp-terracota) !important;
  border-radius: 0 0 3px 3px !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.08) !important;
}
.sub-menu a {
  color: var(--dp-ancora) !important;
  opacity: .65;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  padding: 10px 18px !important;
  display: block;
  transition: color .18s, opacity .18s, background .18s;
}
.sub-menu a:hover {
  color: var(--dp-terracota) !important;
  opacity: 1 !important;
  background: var(--dp-claro) !important;
}

/* B3. Seta do submenu Hub */
.sub-arrow,
.menu-item-has-children > a .sub-arrow {
  color: var(--dp-terracota) !important;
  opacity: .75 !important;
}

/* B4. Botão de busca — hover terracota */
.search-toggle {
  transition: opacity .2s !important;
}
.search-toggle:hover {
  opacity: 1 !important;
}
.search-toggle svg circle,
.search-toggle svg line,
.search-toggle svg path {
  stroke: var(--dp-ancora) !important;
  transition: stroke .2s !important;
}
.search-toggle:hover svg circle,
.search-toggle:hover svg line,
.search-toggle:hover svg path {
  stroke: var(--dp-terracota) !important;
}

/* B5. Cadeado privacidade — hover terracota */
.nav-privacy-link {
  opacity: .45;
  transition: opacity .2s;
  display: inline-flex;
  align-items: center;
}
.nav-privacy-link:hover {
  opacity: 1 !important;
}
.nav-privacy-link svg rect,
.nav-privacy-link svg path,
.nav-privacy-link svg line {
  stroke: var(--dp-ancora) !important;
  transition: stroke .2s !important;
}
.nav-privacy-link:hover svg rect,
.nav-privacy-link:hover svg path,
.nav-privacy-link:hover svg line {
  stroke: var(--dp-terracota) !important;
}

/* B6. Search overlay — paleta correta */
#search-overlay {
  background: rgba(248,246,244,.96) !important;
  backdrop-filter: blur(10px) !important;
}
#search-overlay input[type="search"],
#search-overlay input[type="text"],
#search-overlay .search-field {
  background: #fff !important;
  border: .5px solid var(--dp-borda) !important;
  border-radius: 2px !important;
  color: var(--dp-ancora) !important;
  font-family: 'DM Sans', sans-serif !important;
}
#search-overlay input::placeholder {
  color: var(--dp-medio) !important;
}
#search-overlay input:focus {
  outline: none !important;
  border-color: var(--dp-terracota) !important;
  box-shadow: 0 0 0 2px rgba(224,75,42,.12) !important;
}
#search-overlay .search-submit,
#search-overlay button[type="submit"] {
  background: var(--dp-terracota) !important;
  color: #fff !important;
  border: none !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  transition: opacity .18s !important;
}
#search-overlay .search-submit:hover,
#search-overlay button[type="submit"]:hover {
  opacity: .88 !important;
}

/* B7. Menu mobile (mm-*) — paleta completa */
.mm-header {
  background: var(--dp-ancora) !important;
  border-bottom: 2px solid var(--dp-terracota) !important;
}
.mm-logo .logo-sub,
.mm-logo .logo-name ~ * {
  color: var(--dp-terracota) !important;
}
.mm-close {
  color: rgba(255,255,255,.45) !important;
  transition: color .18s !important;
}
.mm-close:hover {
  color: var(--dp-terracota) !important;
}
.mm-nav,
.mm-nav ul {
  background: var(--dp-ancora) !important;
}
.mm-nav li a {
  color: rgba(255,255,255,.58) !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8.5px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  border-bottom: .5px solid rgba(255,255,255,.06) !important;
  padding: 14px 20px !important;
  transition: color .18s, background .18s !important;
}
.mm-nav li a:hover {
  color: #fff !important;
  background: rgba(255,255,255,.04) !important;
}
.mm-nav li.current-menu-item > a {
  color: var(--dp-terracota) !important;
}
.mm-arrow {
  color: var(--dp-terracota) !important;
}
.mm-sub {
  background: rgba(255,255,255,.04) !important;
}
.mm-sub a {
  color: rgba(255,255,255,.42) !important;
  padding-left: 32px !important;
  font-size: 8px !important;
}
.mm-sub a:hover {
  color: var(--dp-terracota) !important;
}

/* B8. Botão Contato mobile (era bordeaux #881828 — agora terracota) */
.mm-footer {
  background: var(--dp-ancora) !important;
  border-top: .5px solid rgba(255,255,255,.09) !important;
  padding: 16px 20px !important;
}
.mm-footer a {
  background: var(--dp-terracota) !important;
  color: #fff !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  padding: 12px 0 !important;
  border-radius: 2px !important;
  display: block !important;
  text-align: center !important;
  width: 100% !important;
  transition: opacity .18s !important;
  border: none !important;
}
.mm-footer a:hover {
  opacity: .88 !important;
  background: #c9391f !important;
}

/* ── C. HERO — remover coluna canvas, manter acentos background ── */

/* C1. Ocultar coluna lateral canvas */
.hero-side-strip {
  display: none !important;
}

/* C2. Hero ocupa full width sem coluna */
.hero {
  min-height: 70vh !important;
}

/* C3. Background morphologies mantidos e ajustados */
.hero-pattern-bg {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.hero-morph-layer {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

/* C4. Linha de morfologias sólidas — palette harmonizada */
.dp-morph-ribbon {
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  background: var(--dp-ancora) !important;
  height: 56px !important;
  width: 100% !important;
  flex-shrink: 0 !important;
}
.dp-morph-ribbon svg {
  flex-shrink: 0 !important;
  display: block !important;
}

/* Hero content z-index */
.hero .container,
.hero-content-wrap {
  position: relative !important;
  z-index: 2 !important;
}


/* ════════════════════════════════════════════════════════
   PHASE 2b — Mobile menu · Hero Conceito B · Faixa
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════ */

/* ── MENU MOBILE: semi-transparente, logo branca ─────── */

/* Container principal do menu mobile */
#mobile-menu {
  background: rgba(28, 28, 30, 0.82) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}

/* Logo texto: branco monocromático apenas no mobile */
#mobile-menu .logo-name,
.mm-logo .logo-name {
  color: #ffffff !important;
}
#mobile-menu .logo-sub,
.mm-logo .logo-sub {
  color: var(--dp-terracota) !important;
}
/* Logo imagem (se houver): força versão branca */
#mobile-menu .site-logo img,
.mm-logo img {
  filter: brightness(0) invert(1) !important;
}

/* Fundos internos: transparentes para deixar o #mobile-menu vazar */
.mm-header { background: transparent !important; }
.mm-nav    { background: transparent !important; }
.mm-footer { background: transparent !important; }
.mm-sub    { background: rgba(255,255,255,.05) !important; }

/* Linhas separadoras adaptadas ao fundo escuro */
.mm-nav li a {
  border-bottom-color: rgba(255,255,255,.07) !important;
}

/* ── HERO: remover todos os elementos de morfologia atuais ─ */

.hero-morph-layer,
.hero-side-strip,
.hero-pattern-bg,
.hero-d-deco {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Canvas dentro do side-strip também */
.hero-side-strip canvas {
  display: none !important;
}

/* Hero: fundo claro mantido, full-width, sem canvas padding */
.hero {
  min-height: 68vh !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Hero H1 — mantém Playfair Display (fonte da logo) */
.hero h1,
.hero .hero-title,
.hero-text h1,
.hero .h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* Background morphologies injetadas via JS (Conceito B) */
.dp-hero-bg {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 0 !important;
  overflow: hidden !important;
}
.dp-hero-bg svg {
  position: absolute !important;
}

/* Sequência horizontal de morfologias sólidas abaixo do H1 */
.dp-hero-morph-seq {
  display: flex !important;
  align-items: center !important;
  gap: 0px !important;
  margin-top: 26px !important;
  flex-wrap: nowrap !important;
  overflow: hidden !important;
  max-width: 520px !important;
}
.dp-hero-morph-seq svg {
  flex-shrink: 0 !important;
  display: block !important;
}

/* Faixa de áreas de atuação abaixo do hero — OCULTAR */
.strip,
.hero + .strip,
.hero ~ .strip {
  display: none !important;
}


/* ── OVERRIDE FINAL: hero-side-strip — conflito resolvido ───── */
/* Regra com maior especificidade para vencer o display:block anterior */
.hero .hero-side-strip,
section.hero .hero-side-strip,
.hero .hero-side-strip,
body .hero .hero-side-strip {
  display: none !important;
  width: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
}


/* ════════════════════════════════════════════════════════════════
   PHASE 3 — Hero height · Seq uniforme · Menu mobile · Search · Strip
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════════════ */

/* ── 1. HERO: altura adaptativa para landscape ─────────────────── */
.hero {
  min-height: clamp(360px, 52vh, 500px) !important;
}
@media (orientation: landscape) and (max-height: 600px) {
  .hero { min-height: clamp(320px, 90vh, 420px) !important; }
}
@media (min-width: 1200px) {
  .hero { min-height: clamp(360px, 50vh, 480px) !important; }
}

/* ── 2. SEARCH OVERLAY: mesmo padrão do menu mobile ───────────── */
#search-overlay {
  background: rgba(28, 28, 30, 0.82) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}
#search-overlay .so-label,
#search-overlay .so-hint,
#search-overlay label {
  color: rgba(255,255,255,.55) !important;
}
#search-overlay input[type="search"],
#search-overlay input[type="text"],
#search-overlay .search-field {
  background: rgba(255,255,255,.08) !important;
  border: .5px solid rgba(255,255,255,.18) !important;
  color: #fff !important;
}
#search-overlay input::placeholder {
  color: rgba(255,255,255,.4) !important;
}
#search-overlay input:focus {
  border-color: var(--dp-terracota) !important;
  background: rgba(255,255,255,.12) !important;
  outline: none !important;
}
#search-overlay .so-close {
  color: rgba(255,255,255,.5) !important;
  transition: color .18s !important;
}
#search-overlay .so-close:hover {
  color: var(--dp-terracota) !important;
}
#search-overlay .search-submit,
#search-overlay button[type="submit"] {
  background: var(--dp-terracota) !important;
  color: #fff !important;
}

/* ── 3. MENU MOBILE: mais transparência + "Advogado" branco ────── */
#mobile-menu {
  background: rgba(28, 28, 30, 0.72) !important;
}
/* "Advogado" — logo-sub → branco */
.mm-logo .logo-sub,
#mobile-menu .logo-sub {
  color: #fff !important;
  opacity: .65;
}
/* Sub-menu: mesmo background do restante (transparente) */
.mm-sub {
  background: transparent !important;
}
.mm-sub a {
  border-bottom: .5px solid rgba(255,255,255,.04) !important;
}

/* ── 4. FAIXA PÓS-HERO: morphs sólidos das práticas ───────────── */
.dp-hero-strip {
  background: var(--dp-claro, #F8F6F4);
  border-top: 2px solid var(--dp-terracota);
  padding: 0 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  flex-wrap: wrap;
  width: 100%;
}
.dp-hero-strip-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  flex-shrink: 0;
}
.dp-hero-strip-item:not(:last-child) {
  border-right: .5px solid var(--dp-borda, #E8E4E0);
}
.dp-hero-strip-label {
  font-family: 'Raleway', sans-serif;
  font-size: 7.5px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--dp-ancora, #1C1C1E);
  white-space: nowrap;
}
@media (max-width: 640px) {
  .dp-hero-strip-item { padding: 10px 14px; }
  .dp-hero-strip-label { font-size: 7px; letter-spacing: .1em; }
}

/* ── 5. MORPH SEQ: todas igual tamanho, sem variação ─────────── */
.dp-hero-morph-seq svg {
  width: 36px !important;
  height: 36px !important;
}
.dp-hero-morph-seq {
  gap: 2px !important;
  max-width: 300px !important;
}

/* ── 6. HERO BG: morphs posicionadas longe do texto em mobile ── */
@media (max-width: 768px) {
  .dp-hero-bg svg { opacity: .5 !important; }
  .dp-hero-bg svg:first-child { display: none !important; } /* D grande demais */
  .dp-hero-bg svg:nth-child(4) { display: none !important; } /* quarter */
}


/* ── OVERRIDE FINAL: especificidade máxima para conflitos ────── */

/* Hero: inline style removido via JS — CSS de reforço */
body .hero,
html body section.hero,
html body .hero {
  min-height: clamp(360px, 52vh, 500px) !important;
}
@media (min-width: 1200px) {
  body .hero,
  html body section.hero {
    min-height: clamp(340px, 48vh, 470px) !important;
  }
}
@media (orientation: landscape) and (max-height: 640px) {
  body .hero,
  html body section.hero {
    min-height: clamp(300px, 85vh, 400px) !important;
  }
}

/* mm-sub: especificidade máxima para vencer #mobile-menu .mm-sub */
body #mobile-menu .mm-sub,
html body #mobile-menu .mm-sub,
#mobile-menu .mm-sub.mm-sub {
  background: transparent !important;
  background-color: transparent !important;
}


/* ── Hero inner padding: reduzir para landscape ─────────────── */
/* Default (mobile-first): padding normal */
.hero .hero-inner {
  padding-top: clamp(52px, 7vh, 92px) !important;
  padding-bottom: clamp(36px, 5vh, 56px) !important;
}

/* Wide landscape (1200px+, altura < 800px) */
@media (min-width: 1200px) and (max-height: 800px) {
  .hero .hero-inner {
    padding-top: clamp(36px, 4.5vh, 60px) !important;
    padding-bottom: clamp(24px, 3vh, 40px) !important;
  }
}

/* Extra short landscape */
@media (orientation: landscape) and (max-height: 640px) {
  .hero .hero-inner {
    padding-top: clamp(28px, 4vh, 48px) !important;
    padding-bottom: clamp(18px, 2.5vh, 32px) !important;
  }
}


/* ════ PHASE 2c: Hero · Strip · Header · Mobile ════════════ */

/* 1. Header menor: de 82px → 62px */
.header-inner { height: 62px !important; min-height: 62px !important; }

/* 2. Hero title: 2 linhas, reduzido (~30% menor) */
.hero-title {
  font-size: clamp(1.85rem, 3.6vw, 3.4rem) !important;
  max-width: 100% !important;
  line-height: 1.1 !important;
}

/* 3. Eyebrow sem corte */
.hero-breadline { overflow: visible !important; flex-wrap: nowrap !important; }
.hero-breadline span,
.hero-breadline > span { white-space: nowrap !important; flex-shrink: 0 !important; }

/* 4. Strip → fundo âncora escuro */
.dp-hero-strip {
  background: #1C1C1E !important;
  border-top: none !important;
  border-bottom: none !important;
}
.dp-hero-strip-item { color: rgba(255,255,255,.55) !important; }
.dp-hero-strip-label { color: rgba(255,255,255,.55) !important; }
.dp-hero-strip-item:not(:last-child) { border-right-color: rgba(255,255,255,.1) !important; }
.dp-hero-strip-item svg path,
.dp-hero-strip-item svg circle { fill: #E04B2A !important; opacity: 1 !important; }

/* 5. Ghost column: forçar container sem margem auto herdada */
section.hero .container, .hero > .container {
  margin-left: 0 !important;
  max-width: 100% !important;
}

/* 6. Hero inner: padding direito + mobile */
.hero-inner { padding-right: 52px !important; }

@media (max-width: 900px) {
  .hero-inner {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  section.hero .container, .hero > .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .hero-title { font-size: clamp(1.6rem, 6.5vw, 2.6rem) !important; }
}
@media (max-width: 480px) {
  .hero-inner { padding-left: 16px !important; padding-right: 16px !important; }
  .hero-title { font-size: clamp(1.5rem, 7.2vw, 2.0rem) !important; }
}

/* 7. Morph seq: responsivo */
.dp-hero-morph-seq {
  max-width: min(88vw, 480px) !important;
  overflow: hidden !important;
}
@media (max-width: 768px) {
  .dp-hero-morph-seq { max-width: calc(100vw - 32px) !important; }
}


/* ════════════════════════════════════════════════════════════════
   PHASE 3 — Botões · Strip · Eyebrow · Full-width · Morph layout
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════════════════ */

/* ── A. HERO BUTTONS — troca de cores ──────────────────────────── */

/* Botão primário (Contato): ancora em vez de terracota */
.hero-actions .btn-primary,
.hero-actions a.btn-primary,
.hero-actions button.btn-primary {
  background: var(--dp-ancora) !important;
  color: #ffffff !important;
  border-color: var(--dp-ancora) !important;
}
.hero-actions .btn-primary:hover,
.hero-actions a.btn-primary:hover {
  background: #2e2e32 !important;
}

/* Botão secundário (Práticas/outline): terracota sólido */
.hero-actions .btn-secondary,
.hero-actions a.btn-secondary,
.hero-actions .btn-outline,
.hero-actions a:not(.btn-primary),
.hero-actions a[class*="outline"] {
  background: var(--dp-terracota) !important;
  color: #ffffff !important;
  border-color: var(--dp-terracota) !important;
}
.hero-actions .btn-secondary:hover,
.hero-actions a:not(.btn-primary):hover {
  background: #c9391f !important;
}

/* ── B. STRIP — reativar, fundo ancora, texto/morph brancos ─────── */

.strip {
  display: block !important;    /* Reativar (estava display:none) */
  background: var(--dp-ancora) !important;
}

/* Texto dos itens da strip — branco */
.strip .strip-item,
.strip .strip-inner span,
.strip .strip-item span,
.strip-inner * {
  color: rgba(255, 255, 255, 0.80) !important;
}

/* Separadores (dots) da strip */
.strip .strip-dot {
  background: rgba(255, 255, 255, 0.20) !important;
}

/* SVGs da strip — forçar fill branco */
.strip .strip-item svg path,
.strip .strip-item svg circle,
.strip .strip-item svg rect,
.strip .strip-item svg line,
.strip .strip-item svg [fill]:not([fill="none"]) {
  fill: rgba(255, 255, 255, 0.70) !important;
}
.strip .strip-item svg [stroke]:not([stroke="none"]) {
  stroke: rgba(255, 255, 255, 0.70) !important;
}

/* container dentro da strip — full width sem margem auto */
.strip .strip-inner.container,
.strip .container {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 14px 56px !important;
}

/* ── C. EYEBROW "ESTRATEGISTA JURÍDICO" — sem corte em nenhuma tela */

.hero-breadline {
  overflow: visible !important;
  flex-wrap: nowrap !important;
}

.hero-breadline span,
.hero-breadline .eyebrow {
  white-space: nowrap !important;
  overflow: visible !important;
  flex-shrink: 0 !important;
}

/* Mobile: reduzir gap e tamanho da linha para não cortar */
@media (max-width: 768px) {
  .hero-breadline {
    gap: 8px !important;
  }
  .hero-breadline::before {
    width: 16px !important;
    flex-shrink: 0 !important;
  }
  .hero-breadline span {
    font-size: 0.55rem !important;
    letter-spacing: 0.14em !important;
  }
}

/* ── D. MORPH SEQUENCE — ao lado dos botões, extremidade oposta ─── */

/* hero-actions: flex row com space-between para botões + morphs em lados opostos */
.hero-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 14px !important;
  width: 100% !important;
}

/* Grupo dos botões dentro do hero-actions */
.dp-hero-btn-group {
  display: flex !important;
  gap: 14px !important;
  align-items: center !important;
  flex-shrink: 0 !important;
}

/* Morph sequence: alinhada à direita dentro de hero-actions */
.dp-hero-morph-seq {
  margin-top: 0 !important;         /* Remove margin quando está junto aos botões */
  flex-shrink: 1 !important;
  overflow: hidden !important;
  max-width: min(400px, 45vw) !important;
  justify-content: flex-end !important;
}

/* Responsive: tamanhos dos SVGs escalam com viewport */
.dp-hero-morph-seq svg {
  width: clamp(8px, 2.2vw, 36px) !important;
  height: clamp(8px, 2.2vw, 36px) !important;
}

/* SVGs ancora (#1C1C1E) ficam brancos no fundo claro — inverter para diferenciação */
/* Na verdade, manter âncora no fundo claro está OK — mas adaptar para escuro se necessário */

/* ── E. FULL-WIDTH — menu e demais seções expande largura total ─── */

/* Header-inner: remover max-width para expandir full-width */
.header-inner {
  max-width: 100% !important;
  margin: 0 !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
}

/* Containers em seções do site — full width */
.site-main .container,
main .container,
.section .container,
section .container,
article .container {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 56px !important;
  padding-right: 56px !important;
}

/* Manter max-width apenas em conteúdo editorial/post */
.post-content .container,
.single-post .container,
.entry-content {
  max-width: 760px !important;
  margin: 0 auto !important;
}

/* Mobile padding reduzido */
@media (max-width: 768px) {
  .header-inner {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .site-main .container,
  main .container,
  section .container {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .hero-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  /* Morph sequence hidden on smallest screens */
  .dp-hero-morph-seq {
    display: none !important;
  }
}

/* ── F. HERO INNER mobile padding fix ─────────────────────────── */
/* hero-inner tem padding-left: 56px fixo — precisa de responsivo */
@media (max-width: 1024px) {
  .hero-inner {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
}


/* ── STRIP OVERRIDE FINAL: reativar strip com ancora ──────────── */
/* Neutraliza regra anterior display:none */
body .strip,
body > .strip,
.site-main + .strip,
.hero ~ .strip,
.hero + .strip,
div.strip {
  display: block !important;
  visibility: visible !important;
  background: var(--dp-ancora) !important;
}


/* ════════════════════════════════════════════════════════════════
   PHASE 4 — Eyebrow spacing · Strip · Botões · Footer · Separator
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════════════════ */

/* ── A. EYEBROW: mais espaço do menu em todas as telas ─────────── */

/* hero-inner tem padding-top = header-height (63px) sem respiro visual.
   Acrescentamos espaçamento extra para separar o eyebrow do menu */
.hero-inner {
  padding-top: calc(63px + 40px) !important;   /* header offset + 40px de respiro */
}

@media (max-width: 1024px) {
  .hero-inner {
    padding-top: calc(63px + 28px) !important;
  }
}

@media (max-width: 768px) {
  .hero-inner {
    padding-top: calc(63px + 20px) !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* ── B. STRIP DUPLICADA: ocultar o dp-hero-strip injetado por JS ── */
/* Mantemos apenas .strip do tema (depois redesenhamos via separador) */
.dp-hero-strip {
  display: none !important;
  visibility: hidden !important;
}

/* Ocultar também a .strip original (ambas faixas que o Diego não gostou) */
.strip {
  display: none !important;
}

/* ── C. SEPARADOR HERO: elegante, leve, usando morfologia ──────── */
/* Div injetada via JS após o hero — separador com linha e D em terracota */
.dp-hero-separator {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  height: 4px !important;
  width: 100% !important;
  background: var(--dp-borda) !important;       /* linha fina cinza */
  position: relative !important;
  overflow: visible !important;
}

/* Acento terracota: linha de largura proporcional na esquerda */
.dp-hero-separator::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  height: 100% !important;
  width: 120px !important;
  background: var(--dp-terracota) !important;
}

/* ── D. BOTÃO ÁREAS DE ATUAÇÃO: reverter para outline ancora ─────── */
/* A regra Phase 3 afetou btn-secondary erroneamente — revertendo */
.hero-actions .dp-hero-btn-group .btn-secondary,
.hero-actions .dp-hero-btn-group a.btn-secondary,
.hero-actions .dp-hero-btn-group a:not(.btn-primary),
.hero-actions .dp-hero-btn-group button.btn-secondary {
  background: transparent !important;
  color: var(--dp-ancora) !important;
  border: 1.5px solid var(--dp-ancora) !important;
}
.hero-actions .dp-hero-btn-group .btn-secondary:hover,
.hero-actions .dp-hero-btn-group a:not(.btn-primary):hover {
  background: var(--dp-ancora) !important;
  color: #fff !important;
}

/* ── E. FOOTER: full-width como demais sessões ─────────────────── */
#site-footer .container,
#site-footer > .container,
footer#site-footer .container {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  padding-left: 56px !important;
  padding-right: 56px !important;
}

@media (max-width: 768px) {
  #site-footer .container {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}


/* ════════════════════════════════════════════════════════════════
   PHASE 5 — Áreas home · Hover · Deco morphs · Cit-section
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════════════════ */

/* ── A. CIT-SECTION: fundo terracota, texto branco ─────────────── */
.cit-section {
  background: var(--dp-terracota) !important;
}
.cit-section .cit-text,
.cit-section p,
.cit-section blockquote,
.cit-section * {
  color: #ffffff !important;
}
/* Morphs decorativos no cit-section ficam visíveis em branco */
.cit-section .cit-morph,
.cit-section svg path,
.cit-section svg circle {
  opacity: 0.15 !important;
  fill: #ffffff !important;
}
/* Aspas ou ornamentos */
.cit-section::before,
.cit-section .cit-ornament {
  opacity: 0.2 !important;
  color: #ffffff !important;
}

/* ── B. HOVER CARDS DE ÁREA: substituir efeito atual ───────────── */

/* Remover o efeito bordeaux/vermelho escuro do hover antigo */
.area-card-a2:hover {
  border-color: transparent !important;
  box-shadow: none !important;
}

/* Novo hover: sutil elevação com acento terracota limpo */
.area-card-a2 {
  transition: transform 0.22s ease, box-shadow 0.22s ease !important;
}
.area-card-a2:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 28px rgba(224, 75, 42, 0.10) !important;
  background: #ffffff !important;
}
/* Ícone: apenas um leve fundo terracota no hover */
.area-card-a2:hover .area-icon-col {
  background: rgba(224, 75, 42, 0.06) !important;
  border-right-color: rgba(224, 75, 42, 0.12) !important;
}
/* Título: sem mudar de cor no hover (evitar o vermelho que parece link) */
.area-card-a2:hover .area-card-a2__body h3 {
  color: var(--dp-ancora) !important;
}
/* Linha terracota fina no topo do card ao hover */
.area-card-a2 {
  border-top: 2px solid transparent !important;
  border-radius: 4px !important;
}
.area-card-a2:hover {
  border-top-color: var(--dp-terracota) !important;
}

/* ── C. DECO MORPHS: corrigir posicionamento ───────────────────── */
/* Os cards precisam de position:relative para conter os morphs absolutos */
.area-card-a2 {
  position: relative !important;
}
/* O morph decorativo já tem position:absolute; right:-20px; bottom:-20px */
/* mas estava vazando para fora porque o card não tinha position:relative */
/* overflow:hidden já está no card, então com position:relative os morphs ficam contidos */

.area-deco-morph {
  position: absolute !important;
  right: -16px !important;
  bottom: -16px !important;
  top: auto !important;
  left: auto !important;
  pointer-events: none !important;
  z-index: 0 !important;
  opacity: 0.07 !important;
}
.area-deco-morph svg {
  display: block !important;
}


/* ════════════════════════════════════════════════════════════════
   PHASE 6 — Hero spacing · Grid 2x2 · Morphs sólidos · Backgrounds
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════════════════ */

/* ── A. HERO: igualar espaço após botões ao espaço antes do eyebrow ── */
/* Top = 103px (header + 40px respiro), bottom deve ser igual */
.hero-inner {
  padding-bottom: 103px !important;
}
@media (max-width: 1024px) {
  .hero-inner {
    padding-bottom: 91px !important;  /* mirror do top em tablet */
  }
}
@media (max-width: 768px) {
  .hero-inner {
    padding-bottom: 83px !important;  /* mirror do top em mobile */
  }
}

/* ── B. ÁREAS: layout 2 x 2 via CSS grid ──────────────────────── */
/* O .areas-grid está em display:flex column — converter para grid */
.areas-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1px !important;
  background: var(--dp-borda) !important;  /* gap color */
  flex-direction: unset !important;
  flex-wrap: unset !important;
}

/* Garantir que cada card ocupe uma célula do grid */
.areas-grid .area-card-a2 {
  width: 100% !important;
  flex: none !important;
  margin-bottom: 0 !important;
}

/* ── C. BACKGROUNDS ALTERNADOS 2x2 ────────────────────────────── */
/* Linha 1, coluna 1 (Penal Tributário) */
.area-card-a2--penal-tributario {
  background: var(--dp-branco) !important;
}
/* Linha 1, coluna 2 (Penal Econômico) */
.area-card-a2--penal-economico {
  background: var(--dp-lt) !important;
}
/* Linha 2, coluna 1 (Tributário Estratégico) */
.area-card-a2--tributario-estrategico {
  background: var(--dp-lt) !important;
}
/* Linha 2, coluna 2 (Casos Complexos) */
.area-card-a2--casos-complexos {
  background: var(--dp-branco) !important;
}

/* ── D. ICON MORPHS: cores sólidas (sem transparência) ─────────── */
/* Os fills já têm opacity como attribute — override via CSS */
.area-morph-icon svg path,
.area-morph-icon svg circle,
.area-morph-icon svg rect,
.area-morph-icon svg polygon {
  opacity: 1 !important;
}

/* Garantir que o SVG em si não tenha opacity extra */
.area-morph-icon svg {
  opacity: 1 !important;
}

/* ── E. MORPH ICON: tamanho proporcional no novo layout 2x2 ────── */
.area-morph-icon {
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ── F. GRID RESPONSIVO ────────────────────────────────────────── */
@media (max-width: 600px) {
  .areas-grid {
    grid-template-columns: 1fr !important;
  }
}


/* ════════════════════════════════════════════════════════════════
   PHASE 7 — Áreas 1 coluna · Branco · Hover · Seta na base
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════════════════ */

/* A. Section + container: fundo branco */
.areas-section,
section.section.areas-section {
  background: var(--dp-branco) !important;
}

/* B. Grid: 1 coluna, flex vertical */
.areas-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  background: transparent !important;
  grid-template-columns: unset !important;
}

/* C. Cards: todos brancos, borda inferior fina */
.area-card-a2,
.area-card-a2--penal-tributario,
.area-card-a2--penal-economico,
.area-card-a2--tributario-estrategico,
.area-card-a2--casos-complexos {
  background: var(--dp-branco) !important;
  border-radius: 0 !important;
  border-top: none !important;
  border-left: 3px solid transparent !important;
  border-bottom: .5px solid var(--dp-borda) !important;
  border-right: none !important;
  margin-bottom: 0 !important;
  width: 100% !important;
  transition: border-left-color .22s ease, box-shadow .22s ease !important;
  position: relative !important;
  transform: none !important;
}
.area-card-a2:first-child {
  border-top: .5px solid var(--dp-borda) !important;
}

/* D. Hover: acento terracota à esquerda */
.area-card-a2:hover {
  border-left-color: var(--dp-terracota) !important;
  box-shadow: 4px 0 24px rgba(224,75,42,.06) !important;
  background: var(--dp-branco) !important;
  transform: none !important;
  border-top-color: var(--dp-borda) !important;
}

/* E. Body: flex-column, seta empurrada para o fundo */
.area-card-a2__body {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

/* F. Seta oculta por padrão, aparece no hover na base do card */
.area-card-a2 a {
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .22s ease !important;
  margin-top: auto !important;
  align-self: flex-start !important;
  color: var(--dp-terracota) !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: .6rem !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  padding-top: 10px !important;
}
.area-card-a2:hover a {
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* G. Deco morph: canto direito/baixo do card */
.area-deco-morph {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  left: auto !important;
  opacity: 0.05 !important;
}


/* ════════════════════════════════════════════════════════════════
   PHASE 8 — Ver área · Cit morphs · Press · CTA icon · Footer
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════════════════ */

/* ── A. "VER ÁREA" sempre visível ──────────────────────────────── */
.area-card-a2 a {
  opacity: 1 !important;
  pointer-events: auto !important;
}
.area-card-a2:hover a {
  color: var(--dp-terracota) !important;
}

/* ── B. CIT-SECTION: morphs de fundo minimalistas ─────────────── */
.cit-section {
  position: relative !important;
  overflow: hidden !important;
}
/* Morphs injetados via JS terão classe .cit-bg-morph */
.cit-bg-morph {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.cit-section .cit-wrap,
.cit-section .container {
  position: relative !important;
  z-index: 1 !important;
}

/* ── C. PRESS SECTION: branco + padding simétrico ──────────────── */
.press-section-v3 {
  background: var(--dp-branco) !important;
  padding-bottom: 88px !important;
}
.press-section-v3 .container {
  background: transparent !important;
}
.press-carousel-wrap {
  background: transparent !important;
}

/* ── D. CTA BUTTON: ícone visível (não-branco sobre fundo branco) ─ */
/* Botão primário na CTA section: branco com texto/ícone terracota */
.cta-section .btn-primary svg path,
.cta-section .btn-primary svg rect,
.cta-section .btn-primary svg circle,
.cta-section .btn-primary svg line,
.cta-section .btn-primary svg polyline {
  stroke: var(--dp-terracota) !important;
  fill: none !important;
}
/* Forçar currentColor para herdar do color do botão */
.cta-section .btn-primary {
  color: var(--dp-terracota) !important;
}
.cta-section .btn-primary svg {
  color: var(--dp-terracota) !important;
}

/* ── E. FOOTER: protótipo completo ─────────────────────────────── */
/* Fundo âncora, padding simétrico */
#site-footer {
  background: var(--dp-ancora) !important;
  padding: 52px 0 0 !important;
}
#site-footer .container {
  padding-left: 56px !important;
  padding-right: 56px !important;
  max-width: 100% !important;
  margin: 0 !important;
}

/* Grid de 4 colunas no footer-main */
.footer-main {
  display: grid !important;
  grid-template-columns: 1.8fr 1fr 1fr 1fr !important;
  gap: 40px !important;
  padding-bottom: 40px !important;
  border-bottom: .5px solid rgba(255,255,255,.09) !important;
}

/* Coluna brand */
.footer-brand .footer-logo-name,
.footer-brand h3,
.footer-brand strong {
  font-family: 'Playfair Display', serif !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  color: #fff !important;
}
.footer-brand .footer-logo-sub,
.footer-brand p {
  font-size: 11.5px !important;
  color: rgba(255,255,255,.32) !important;
  line-height: 1.72 !important;
}

/* Colunas de navegação */
.footer-col h4,
.footer-col strong {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.25) !important;
  margin-bottom: 14px !important;
  display: block !important;
}
.footer-col a,
.footer-col span {
  display: block !important;
  font-size: 12px !important;
  color: rgba(255,255,255,.52) !important;
  margin-bottom: 9px !important;
  text-decoration: none !important;
  transition: color .18s !important;
}
.footer-col a:hover {
  color: #fff !important;
}

/* Footer bottom */
.footer-bottom {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  padding: 22px 56px !important;
  border-top: .5px solid rgba(255,255,255,.08) !important;
}
.footer-bottom * {
  font-size: 10.5px !important;
  color: rgba(255,255,255,.22) !important;
  line-height: 1.65 !important;
}
.footer-bottom a {
  color: rgba(255,255,255,.25) !important;
  cursor: pointer !important;
}

@media (max-width: 1024px) {
  .footer-main {
    grid-template-columns: 1fr 1fr !important;
  }
}
@media (max-width: 600px) {
  .footer-main {
    grid-template-columns: 1fr !important;
  }
  .footer-bottom {
    padding: 18px 24px !important;
  }
}


/* ── Phase 9 CSS: footer-col ul/li/a styling ─────────────────── */
.footer-col ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.footer-col ul li {
  margin-bottom: 9px !important;
}
.footer-col ul li a,
.footer-col ul li span {
  display: block !important;
  font-size: 12px !important;
  color: rgba(255,255,255,.52) !important;
  text-decoration: none !important;
  transition: color .18s !important;
  margin-bottom: 0 !important;
}
.footer-col ul li a:hover {
  color: #fff !important;
}

/* Footer-brand morphology row */
.dp-footer-morph-row {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  margin: 10px 0 11px !important;
}
.dp-footer-morph-row svg {
  flex-shrink: 0 !important;
}

/* Footer-brand name */
.footer-brand > span:first-child {
  font-family: 'Playfair Display', serif !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  color: #fff !important;
  display: block !important;
  line-height: 1.1 !important;
}
/* Estrategista Jurídico */
.footer-brand > span:nth-child(2) {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .20em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.4) !important;
  display: block !important;
  margin-top: 3px !important;
}


/* ════════════════════════════════════════════════════════════════
   SOBRE PAGE — Versão protótipo
   diegopaulino.adv.br | 2026
════════════════════════════════════════════════════════════════════ */

/* ── Hero: fundo âncora escuro (como no protótipo) ─────────────── */
.page-hero-light {
  background: var(--dp-ancora) !important;
  padding: 120px 0 56px !important;
  border-bottom: none !important;
}
.page-hero-light .eyebrow {
  color: var(--dp-terracota) !important;
}
.page-hero-light h1 {
  color: #ffffff !important;
  font-family: 'Playfair Display', serif !important;
}
.page-hero-light .hero-desc {
  color: rgba(255,255,255,.55) !important;
}

/* ── Hero container: full-width ─────────────────────────────────── */
.page-hero-light .container {
  max-width: 100% !important;
  padding-left: 56px !important;
  padding-right: 56px !important;
  margin: 0 !important;
}

/* ── Hero: decoração de morfologia (injetada via JS) ────────────── */
.dp-sobre-hero-morph {
  position: absolute !important;
  pointer-events: none !important;
  opacity: .12 !important;
  z-index: 0 !important;
}
.page-hero-light .container {
  position: relative !important;
  z-index: 1 !important;
}

/* ── Main section: branco, full-width ───────────────────────────── */
.section:has(.sobre-grid),
.section.sobre-section {
  background: var(--dp-branco) !important;
  padding: 72px 0 !important;
}
.section.sobre-section .container {
  max-width: 100% !important;
  padding-left: 56px !important;
  padding-right: 56px !important;
  margin: 0 !important;
}

/* ── Sobre-grid: 2 colunas (bio + sidebar), mais espaçadas ──────── */
.sobre-grid {
  display: grid !important;
  grid-template-columns: 1fr 360px !important;
  gap: 64px !important;
  align-items: start !important;
}

/* ── Bio parágrafos: tipografia melhorada ───────────────────────── */
.sobre-bio h2,
.sobre-bio .sobre-bio-name {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(28px, 3.5vw, 44px) !important;
  font-weight: 400 !important;
  color: var(--dp-ancora) !important;
  line-height: 1.05 !important;
  margin-bottom: 8px !important;
}
.sobre-bio p {
  font-size: 14.5px !important;
  line-height: 1.85 !important;
  color: var(--dp-ancora) !important;
  margin-bottom: 18px !important;
}
.sobre-bio .sobre-btns {
  display: flex !important;
  gap: 10px !important;
  margin-top: 28px !important;
  flex-wrap: wrap !important;
}

/* ── Sidebar info card: border-top terracota ────────────────────── */
.sobre-info {
  background: var(--dp-branco) !important;
  border: .5px solid var(--dp-borda) !important;
  border-top: 3px solid var(--dp-terracota) !important;
  padding: 28px !important;
  border-radius: 3px !important;
}
.sobre-info-item .label {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  color: var(--dp-medio) !important;
  margin-bottom: 3px !important;
  display: block !important;
}
.sobre-info-item .val {
  font-size: 13.5px !important;
  color: var(--dp-ancora) !important;
  font-weight: 400 !important;
}
.sobre-info-item {
  margin-bottom: 14px !important;
  padding-bottom: 14px !important;
  border-bottom: .5px solid var(--dp-borda) !important;
}
.sobre-info-item:last-child {
  border-bottom: none !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* ── Formação section: fundo claro, 2 colunas ───────────────────── */
.dp-sobre-formacao {
  background: var(--dp-lt) !important;
  padding: 56px 56px !important;
  position: relative !important;
  overflow: hidden !important;
}
.dp-sobre-formacao .dp-sobre-inner {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 60px !important;
  position: relative !important;
  z-index: 1 !important;
}
.dp-sobre-formacao h3 {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--dp-terracota) !important;
  margin-bottom: 20px !important;
}
.dp-sobre-form-item {
  padding: 14px 0 !important;
  border-bottom: .5px solid var(--dp-borda) !important;
}
.dp-sobre-form-item:last-child {
  border-bottom: none !important;
}
.dp-sobre-form-item .inst {
  font-family: 'Lora', Georgia, serif !important;
  font-size: 14px !important;
  color: var(--dp-ancora) !important;
  margin-bottom: 3px !important;
}
.dp-sobre-form-item .curso {
  font-size: 11.5px !important;
  color: var(--dp-medio) !important;
  line-height: 1.5 !important;
}

/* Experience items */
.dp-exp-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 7px 0 !important;
  border-bottom: .5px solid var(--dp-borda) !important;
  font-size: 12.5px !important;
  color: var(--dp-ancora) !important;
}
.dp-exp-item:last-child { border-bottom: none !important; }
.dp-exp-dot {
  width: 5px !important; height: 5px !important;
  border-radius: 50% !important;
  background: var(--dp-terracota) !important;
  flex-shrink: 0 !important;
}

/* Morphs decorativos na seção formação */
.dp-sobre-bg-morph {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

@media (max-width: 900px) {
  .sobre-grid { grid-template-columns: 1fr !important; gap: 32px !important; }
  .dp-sobre-formacao .dp-sobre-inner { grid-template-columns: 1fr !important; gap: 32px !important; }
  .page-hero-light .container, .section.sobre-section .container, .dp-sobre-formacao { padding-left: 24px !important; padding-right: 24px !important; }
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 10 — Sobre protótipo + Footer colunas
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── SOBRE: Hero — igual à home ─────────────────────────────── */
.page-hero-light h1 {
  font-size: clamp(1.85rem, 3.6vw, 3.4rem) !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
}

/* ── SOBRE: Grid com foto ───────────────────────────────────── */
/* Novo grid: foto (300px) + conteúdo (1fr) + sidebar (340px) */
.sobre-grid {
  display: grid !important;
  grid-template-columns: 300px 1fr 340px !important;
  gap: 52px !important;
  align-items: start !important;
}

/* Coluna de foto — nova, injetada via JS */
.dp-sobre-photo-col {
  position: relative !important;
}
.dp-sobre-photo-wrap {
  aspect-ratio: 3/4 !important;
  background: linear-gradient(160deg, var(--dp-lt) 0%, var(--dp-borda) 100%) !important;
  border-radius: 4px !important;
  border: .5px solid var(--dp-borda) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  position: sticky !important;
  top: 108px !important;
  overflow: hidden !important;
}
.dp-sobre-photo-wrap img.dp-sobre-real-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 4px !important;
}
.dp-sobre-photo-placeholder {
  text-align: center !important;
  padding: 20px !important;
  color: rgba(28,28,30,.25) !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8px !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
/* Morph decorativa no fundo do placeholder */
.dp-sobre-photo-deco {
  position: absolute !important;
  opacity: .10 !important;
  pointer-events: none !important;
}

/* ── Bio: typography ────────────────────────────────────────── */
.sobre-bio-name {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(28px, 3.5vw, 44px) !important;
  font-weight: 400 !important;
  color: var(--dp-ancora) !important;
  line-height: 1.05 !important;
  margin-bottom: 8px !important;
  display: block !important;
}
.sobre-bio p {
  font-size: 14.5px !important;
  line-height: 1.85 !important;
  color: var(--dp-ancora) !important;
  margin-bottom: 18px !important;
}
/* Hide the theme-generated duplicate CTA div */
.sobre-cta-old,
.sobre-bio > div:not(.sobre-bio-name):not(.sobre-meta):not(.sobre-btns) {
  display: none !important;
}

/* ── Sobre-btns ─────────────────────────────────────────────── */
.sobre-btns {
  display: flex !important;
  gap: 10px !important;
  margin-top: 28px !important;
  flex-wrap: wrap !important;
}
.sobre-btns a {
  display: inline-block !important;
  text-decoration: none !important;
  border-radius: 2px !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  padding: 12px 26px !important;
}
.sobre-btns a:first-child {
  background: var(--dp-terracota) !important;
  color: #fff !important;
}
.sobre-btns a:last-child {
  background: transparent !important;
  color: var(--dp-ancora) !important;
  border: 1.5px solid var(--dp-ancora) !important;
}

/* ── Sobre-meta bar ─────────────────────────────────────────── */
.sobre-meta {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin-bottom: 22px !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
  color: var(--dp-medio) !important;
}

/* ── FOOTER: 5 colunas ──────────────────────────────────────── */
.footer-main {
  grid-template-columns: 1.6fr 0.9fr 0.9fr 0.9fr 1fr !important;
  gap: 32px !important;
}

@media (max-width: 1100px) {
  .footer-main { grid-template-columns: 1fr 1fr 1fr !important; }
  .sobre-grid  { grid-template-columns: 240px 1fr !important; }
}
@media (max-width: 768px) {
  .footer-main { grid-template-columns: 1fr 1fr !important; }
  .sobre-grid  { grid-template-columns: 1fr !important; }
}
@media (max-width: 480px) {
  .footer-main { grid-template-columns: 1fr !important; }
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 11 — Sobre layout · Hero branco · Grid integrado
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── HERO: tudo branco ──────────────────────────────────────── */
.page-hero-light h1,
.page-hero-light .hero-desc,
.page-hero-light p,
.page-hero-light span:not(.eyebrow) {
  color: #ffffff !important;
}
.page-hero-light .eyebrow {
  color: var(--dp-terracota) !important;
}

/* ── GRID: foto | conteúdo (bio+sidebar em grid interno) ────── */
/* 2 colunas no grid externo: foto + conteúdo */
.sobre-grid {
  grid-template-columns: 300px 1fr !important;
  gap: 56px !important;
}
/* Coluna de conteúdo = div que envolve bio + info em grid interno */
.dp-sobre-content-col {
  display: grid !important;
  grid-template-columns: 1fr 320px !important;
  gap: 48px !important;
  align-items: start !important;
}
/* Sobre-bio ocupa toda a largura dentro do content-col */
.dp-sobre-content-col .sobre-bio {
  min-width: 0 !important;
}
/* Sobre-info sticky à direita */
.dp-sobre-content-col .sobre-info {
  position: sticky !important;
  top: 108px !important;
}

/* ── Garantir que a sobre-info não fique no grid externo ─────── */
.sobre-grid > .sobre-info {
  display: none !important; /* será movida para dentro de content-col via JS */
}

@media (max-width: 1100px) {
  .sobre-grid { grid-template-columns: 1fr !important; }
  .dp-sobre-content-col { grid-template-columns: 1fr !important; }
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 13 — Sobre final: eyebrow · morphs · grid equilíbrio
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── Hero eyebrow: branco (não terracota) ───────────────────── */
.page-hero-light .eyebrow,
.page-hero-light [class*="eyebrow"] {
  color: rgba(255,255,255,0.55) !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
}
/* Se eyebrow tiver ::before (linha terracota) → branco também */
.page-hero-light .eyebrow::before {
  background: rgba(255,255,255,0.35) !important;
}

/* ── Hero morphs: minimalistas brancos ──────────────────────── */
/* Sobrescrever o morph terracota inline via fill filter */
.dp-sobre-hero-morph {
  opacity: 1 !important;
}

/* ── Grid equilíbrio de alturas ─────────────────────────────── */
/* Sobre-grid: stretch para igualar colunas */
.sobre-grid {
  align-items: stretch !important;
}
/* Photo col: flex coluna para o wrap se expandir */
.dp-sobre-photo-col {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
}
/* Photo wrap: cresce para preencher toda a altura */
.dp-sobre-photo-wrap {
  flex: 1 !important;
  aspect-ratio: unset !important;
  min-height: 280px !important;
}

/* Content col: stretch também */
.dp-sobre-content-col {
  align-items: stretch !important;
}
/* Bio: flex coluna para empurrar botões para base */
.sobre-bio {
  display: flex !important;
  flex-direction: column !important;
}
.sobre-bio p {
  flex-shrink: 0 !important;
}
.sobre-btns {
  margin-top: auto !important;
  padding-top: 20px !important;
}
/* Sidebar info: altura mínima não limitada */
.sobre-info {
  height: 100% !important;
  box-sizing: border-box !important;
}

/* ── Footer: Hub Jurídico guard (nunca sites) ───────────────── */
/* Prevenir que sites apareçam em qualquer coluna que não seja contato */
.footer-main > *:not(:last-child) li a[href*="diegopaulino.com.br"]:not([href*="mailto"]) {
  display: none !important;
}


/* ═══════════════════════════════════════════════════════════════
   PHASES 10-13 CSS: Footer 5-col · Sobre grid · Hero polish
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── FOOTER 5 colunas ───────────────────────────────────────── */
.footer-main {
  display: grid !important;
  grid-template-columns: 1.6fr 0.9fr 0.9fr 0.9fr 1fr !important;
  gap: 32px !important;
}

/* ── SOBRE: hero eyebrow branco ─────────────────────────────── */
.page-hero-light .eyebrow,
.page-hero-light [class*="eyebrow"] {
  color: rgba(255,255,255,0.55) !important;
}
.page-hero-light h1,
.page-hero-light .hero-desc,
.page-hero-light p {
  color: #ffffff !important;
}

/* ── SOBRE: grid foto + conteúdo ────────────────────────────── */
.sobre-grid {
  display: grid !important;
  grid-template-columns: 300px 1fr !important;
  gap: 56px !important;
  align-items: stretch !important;
}
.dp-sobre-content-col {
  display: grid !important;
  grid-template-columns: 1fr 320px !important;
  gap: 48px !important;
  align-items: stretch !important;
}
.dp-sobre-photo-col {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
}
.dp-sobre-photo-wrap {
  flex: 1 !important;
  aspect-ratio: unset !important;
  min-height: 280px !important;
  background: linear-gradient(160deg, var(--dp-lt) 0%, var(--dp-borda) 100%) !important;
  border-radius: 4px !important;
  border: .5px solid var(--dp-borda) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: sticky !important;
  top: 108px !important;
  overflow: hidden !important;
}
.dp-sobre-real-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  display: block !important;
}
.sobre-bio {
  display: flex !important;
  flex-direction: column !important;
}
.sobre-bio p { flex-shrink: 0 !important; }
.sobre-btns {
  margin-top: auto !important;
  padding-top: 20px !important;
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
.sobre-btns a {
  display: inline-block !important;
  text-decoration: none !important;
}
.sobre-info {
  height: 100% !important;
  box-sizing: border-box !important;
  background: var(--dp-branco) !important;
  border: .5px solid var(--dp-borda) !important;
  border-top: 3px solid var(--dp-terracota) !important;
  padding: 28px !important;
  border-radius: 3px !important;
}
/* Sobre-bio-name: hidden (repetição do hero) */
.sobre-bio-name { display: none !important; }
.sobre-meta { display: none !important; }

/* ── SOBRE: formação section ────────────────────────────────── */
.dp-sobre-formacao {
  background: var(--dp-lt) !important;
  padding: 56px !important;
  position: relative !important;
  overflow: hidden !important;
}
.dp-sobre-formacao .dp-sobre-inner {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 60px !important;
  position: relative !important;
  z-index: 1 !important;
}
.dp-sobre-formacao h3 {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--dp-terracota) !important;
  margin-bottom: 16px !important;
}
.dp-sobre-form-item {
  padding: 12px 0 !important;
  border-bottom: .5px solid var(--dp-borda) !important;
}
.dp-sobre-form-item:last-child { border-bottom: none !important; }
.dp-sobre-form-item .inst {
  font-family: 'Lora', Georgia, serif !important;
  font-size: 14px !important;
  color: var(--dp-ancora) !important;
  margin-bottom: 3px !important;
}
.dp-sobre-form-item .curso {
  font-size: 11.5px !important;
  color: var(--dp-medio) !important;
  line-height: 1.5 !important;
}
.dp-exp-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 10px 0 !important;
  border-bottom: .5px solid var(--dp-borda) !important;
}
.dp-exp-item:last-child { border-bottom: none !important; }
.dp-exp-dot {
  width: 5px !important; height: 5px !important;
  border-radius: 50% !important;
  background: var(--dp-terracota) !important;
  flex-shrink: 0 !important;
}

/* ── FOOTER: col ul/li/a ────────────────────────────────────── */
.footer-col ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.footer-col ul li { margin-bottom: 9px !important; }
.footer-col ul li a, .footer-col ul li span {
  display: block !important; font-size: 12px !important;
  color: rgba(255,255,255,.52) !important; text-decoration: none !important;
  transition: color .18s !important; word-break: break-word !important;
}
.footer-col ul li a:hover { color: #fff !important; }
.footer-col h4, .footer-col strong {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important; font-weight: 700 !important;
  letter-spacing: .18em !important; text-transform: uppercase !important;
  color: rgba(255,255,255,.25) !important; margin-bottom: 14px !important;
  display: block !important;
}

/* ── Footer brand ───────────────────────────────────────────── */
.footer-brand > span:first-child {
  font-family: 'Playfair Display', serif !important;
  font-size: 21px !important; font-weight: 400 !important;
  color: #fff !important; display: block !important; line-height: 1.1 !important;
}
.footer-brand > span:nth-child(2) {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important; font-weight: 700 !important;
  letter-spacing: .20em !important; text-transform: uppercase !important;
  color: rgba(255,255,255,.4) !important; display: block !important; margin-top: 3px !important;
}
.dp-footer-morph-row { display: flex !important; align-items: center !important; gap: 5px !important; margin: 10px 0 11px !important; }

/* ── Footer guard: hub não mostra sites ─────────────────────── */
.footer-main > *:not(:last-child) li a[href*="diegopaulino.com.br"]:not([href*="mailto"]) {
  display: none !important;
}

@media (max-width: 1100px) {
  .footer-main { grid-template-columns: 1fr 1fr 1fr !important; }
  .sobre-grid { grid-template-columns: 240px 1fr !important; }
}
@media (max-width: 768px) {
  .footer-main { grid-template-columns: 1fr 1fr !important; }
  .sobre-grid { grid-template-columns: 1fr !important; }
  .dp-sobre-content-col { grid-template-columns: 1fr !important; }
}
@media (max-width: 480px) {
  .footer-main { grid-template-columns: 1fr !important; }
  .dp-sobre-formacao { padding: 32px 24px !important; }
  .dp-sobre-formacao .dp-sobre-inner { grid-template-columns: 1fr !important; }
}

/* ── Specificity fixes: strip · hero-inner ─────────────────── */
/* Strip: usar especificidade maior para ganhar o conflito */
body .strip,
body > .strip,
.home .strip,
.page-template-default .strip {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}
/* Hero-inner: superar .hero .hero-inner !important com especificidade igual mas declaração posterior */
.hero .hero-inner,
.hero-inner {
  padding-top: 103px !important;
  padding-bottom: 103px !important;
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 14 — Restauração fiel ao protótipo v9
   Hero buttons · Separator barra · Areas 2-col · Morphs corretos
═══════════════════════════════════════════════════════════════ */

/* ── Hero: botão Contato = terracota ───────────────────────── */
.dp-hero-btn-group .btn-primary,
.hero-actions .btn-primary,
.hero-actions a.btn-primary {
  background: var(--dp-terracota) !important;
  color: #fff !important;
  border: none !important;
}
.dp-hero-btn-group .btn-secondary,
.dp-hero-btn-group a:not(.btn-primary),
.hero-actions .btn-secondary {
  background: transparent !important;
  color: var(--dp-ancora) !important;
  border: 1.5px solid var(--dp-ancora) !important;
}

/* ── Separator: barra com ícones (não linha fina) ───────────── */
.dp-hero-separator {
  height: auto !important;
  background: #F8F6F4 !important;
  border-top: 2px solid var(--dp-terracota) !important;
  border-bottom: none !important;
  padding: 13px 56px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 28px !important;
  flex-wrap: wrap !important;
  position: relative !important;
}
.dp-hero-separator::before {
  display: none !important;
}

/* ── Areas grid: 2 colunas (como protótipo) ─────────────────── */
.areas-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  flex-direction: unset !important;
  gap: 1px !important;
  background: var(--dp-borda) !important;
}
/* Override Phase 7 que forçou flex-direction:column */
section.areas-section .areas-grid,
.section .areas-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
}

/* ── Area cards: bg alternado, sem border explícita ─────────── */
.area-card-a2--penal-tributario   { background: var(--dp-branco) !important; }
.area-card-a2--penal-economico    { background: var(--dp-lt) !important; }
.area-card-a2--tributario-estrategico { background: var(--dp-lt) !important; }
.area-card-a2--casos-complexos    { background: var(--dp-branco) !important; }

.area-card-a2 {
  border-left: none !important;
  border-right: none !important;
  border-top: none !important;
  border-bottom: none !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 36px 32px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  transition: box-shadow .22s !important;
}
.area-card-a2:hover {
  box-shadow: inset 0 0 0 0 transparent, 0 4px 20px rgba(0,0,0,.1) !important;
  border-left: none !important;
  border-left-color: transparent !important;
  transform: none !important;
}

/* ── Area deco morph: canto direito-baixo de cada card ──────── */
.area-deco-morph {
  position: absolute !important;
  right: -20px !important;
  bottom: -20px !important;
  top: auto !important;
  left: auto !important;
  opacity: 0.06 !important;
  width: 120px !important;
  height: 120px !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

/* ── Area card body: z-index para ficar sobre deco morph ────── */
.area-card-a2__body {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* ── Area icon-col: morph icon + z-index ────────────────────── */
.area-icon-col {
  position: relative !important;
  z-index: 1 !important;
  border-right: none !important;
  margin-bottom: 14px !important;
}
.dp-morph-icon {
  width: 38px !important;
  height: 38px !important;
}
.dp-morph-icon svg {
  width: 38px !important;
  height: 38px !important;
}

/* ── "Ver área" sempre visível ──────────────────────────────── */
.area-card-a2 a {
  opacity: 1 !important;
  pointer-events: auto !important;
  margin-top: auto !important;
  padding-top: 12px !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: var(--dp-ancora) !important;
  text-decoration: none !important;
}

/* ── Hide dp-hero-morph-seq (não estava no protótipo) ───────── */
.dp-hero-morph-seq {
  display: none !important;
}

@media (max-width: 768px) {
  .areas-grid { grid-template-columns: 1fr !important; }
  .dp-hero-separator { padding: 11px 24px !important; gap: 16px !important; }
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 15 — Hero correto: ancora btn · morph-seq visível
   Areas: bg morph canto oposto, diversificado
═══════════════════════════════════════════════════════════════ */

/* ── Hero btn Contato: ancora (não terracota) ───────────────── */
.dp-hero-btn-group .btn-primary,
.hero-actions .btn-primary,
.hero-actions a.btn-primary {
  background: var(--dp-ancora) !important;
  color: #fff !important;
  border: none !important;
}

/* ── dp-hero-morph-seq: mostrar (desfaz hide da Phase 14) ───── */
.dp-hero-morph-seq {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-left: 18px !important;
  flex-shrink: 0 !important;
  justify-content: flex-end !important;
}

/* ── Areas: bg morph canto inferior-esquerdo, diversificado ─── */
/* Classe para o novo morph de fundo */
.dp-area-bg-morph {
  position: absolute !important;
  left: -18px !important;
  bottom: -18px !important;
  top: auto !important;
  right: auto !important;
  opacity: 0.13 !important;
  pointer-events: none !important;
  z-index: 0 !important;
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 16 — Hero separator correto · Btn Áreas outline · Area morphs
═══════════════════════════════════════════════════════════════ */

/* ── Separator: linha fina 4px sem border-top colorida ─────── */
.dp-hero-separator {
  height: 4px !important;
  background: var(--dp-borda) !important;
  border-top: none !important;
  padding: 0 !important;
  display: block !important;
  overflow: hidden !important;
}
.dp-hero-separator * {
  display: none !important;
}
.dp-hero-separator::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 120px !important;
  height: 100% !important;
  background: var(--dp-terracota) !important;
}

/* ── Btn Áreas: transparente outline ancora (não terracota) ─── */
.dp-hero-btn-group .btn-secondary,
.hero-actions .btn-secondary,
.dp-hero-btn-group a.btn-secondary,
.dp-hero-btn-group button.btn-secondary {
  background: transparent !important;
  color: var(--dp-ancora) !important;
  border: 1.5px solid var(--dp-ancora) !important;
}
.dp-hero-btn-group .btn-secondary:hover,
.hero-actions .btn-secondary:hover {
  background: var(--dp-ancora) !important;
  color: #fff !important;
}

/* ── Area bg morphs: mais transparentes ────────────────────── */
.dp-area-bg-morph {
  opacity: 0.07 !important;
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 17 — Hero layout correto + BG composição
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── Hero-actions: alinhado à esquerda (não space-between) ─── */
.hero-actions {
  justify-content: flex-start !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

/* ── Morph-seq: não fica mais dentro de hero-actions ─────────
   (removido de lá via JS e posto ao lado do subtitle)        */
.dp-hero-morph-seq {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-left: 0 !important;
  flex-shrink: 0 !important;
  justify-content: flex-start !important;
}

/* ── Desc row: subtitle + morph-seq lado a lado ─────────────── */
.dp-hero-desc-row {
  display: flex !important;
  align-items: flex-start !important;
  gap: 24px !important;
  margin-bottom: 28px !important;
  max-width: 100% !important;
}
.dp-hero-desc-row .hero-sub,
.dp-hero-desc-row p.hero-sub {
  flex-shrink: 0 !important;
  max-width: 420px !important;
  margin-bottom: 0 !important;
}

/* ── Hero-sub: sem margin-bottom própria (controlada pelo row) */
.hero-sub {
  margin-bottom: 0 !important;
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 18 — FOUC fix · H1 weight · Subtitle 2 linhas · Grid responsivo
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/*
 * ANTI-FOUC: estilos críticos aplicados imediatamente (CSS carrega antes do JS).
 * Suprime o estado inicial do tema antes do JS corrigir.
 */

/* Strip: nunca mostrar */
.strip, body .strip, .home .strip { display: none !important; }

/* Hero-inner: padding correto desde o início */
.hero .hero-inner {
  padding-top: 103px !important;
  padding-bottom: 103px !important;
}

/* ── H1: peso 400 (igual à logo principal) ──────────────────── */
.hero-title,
h1.hero-title {
  font-weight: 400 !important;
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* ── Subtitle: 2 linhas (max-width aumentado) ───────────────── */
/* Texto: "Direito Penal Tributário, Penal Econômico e Tributário
   Estratégico, com atuação transversal em casos complexos."
   A 560px e font-size ~16px quebra em 2 linhas naturais.        */
.hero-sub {
  max-width: 560px !important;
  margin-bottom: 0 !important;
  flex-shrink: 0 !important;
}

/* ── Desc-row: subtitle à esquerda, morph-seq alinhado ao topo ─ */
.dp-hero-desc-row {
  display: flex !important;
  align-items: flex-start !important;
  gap: 24px !important;
  margin-bottom: 28px !important;
}

/* ── Morph-seq: alinhado ao topo do subtitle ────────────────── */
.dp-hero-morph-seq {
  display: flex !important;
  align-items: flex-start !important;
  gap: 6px !important;
  flex-shrink: 0 !important;
  margin-top: 2px !important;
  margin-left: 0 !important;
}

/* ── Hero-actions: alinhado à esquerda como o título ────────── */
.hero-actions {
  justify-content: flex-start !important;
  gap: 10px !important;
}

/* ── Areas grid: 2-col desktop, 1-col mobile — ANTI-FOUC ──────
   Especificidade alta para sobrepor inline style do JS           */
body .areas-grid,
body.home .areas-grid,
section .areas-grid,
.section .areas-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  flex-direction: unset !important;
  gap: 1px !important;
  background: var(--dp-borda) !important;
}

@media (max-width: 767px) {
  body .areas-grid,
  body.home .areas-grid,
  section .areas-grid,
  .section .areas-grid {
    grid-template-columns: 1fr !important;
    background: transparent !important;
    gap: 0 !important;
  }
  .area-card-a2 {
    border-bottom: 1px solid var(--dp-borda) !important;
  }
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 19 — Fix definitivo: FOUC · Grid · Mobile · Subtitle
═══════════════════════════════════════════════════════════════ */

/* ── ANTI-FOUC: Hero bg morphs com fade-in suave ────────────── */
.hero > svg {
  animation: dp-morph-fadein 0.4s ease-out forwards;
}
@keyframes dp-morph-fadein {
  from { opacity: 0; }
  to   { opacity: var(--dp-morph-op, 1); }
}

/* ── ÁREAS: grid na UL que de fato contém os cards ──────────── */
/* .areas-grid é o wrapper, mas cards ficam dentro de .areas-list-a2 */
.areas-list-a2 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 1px !important;
  background: var(--dp-borda) !important;
}
.areas-list-a2 > li,
.areas-list-a2 .area-card-a2 {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ── Subtitle: 2 linhas — máxima especificidade ─────────────── */
/* Especificidade (0,4,0): ganha qualquer regra anterior */
body .hero-inner .dp-hero-desc-row .hero-sub {
  max-width: 560px !important;
  width: 560px !important;
}

/* ── Area BG morph: canto direito-baixo (oposto ao ícone/atual) */
.dp-area-bg-morph {
  left: auto !important;
  right: -18px !important;
  bottom: -18px !important;
  top: auto !important;
  opacity: 0.08 !important;
}

/* ── MOBILE ─────────────────────────────────────────────────── */
@media (max-width: 767px) {
  /* Grid 1 coluna */
  .areas-list-a2 {
    grid-template-columns: 1fr !important;
    background: transparent !important;
    gap: 0 !important;
  }
  .areas-list-a2 > li,
  .areas-list-a2 .area-card-a2 {
    border-bottom: 1px solid var(--dp-borda) !important;
  }

  /* Buttons: alinhados à esquerda */
  .hero-actions {
    align-items: flex-start !important;
    justify-content: flex-start !important;
  }
  .dp-hero-btn-group,
  .hero-actions > a,
  .hero-actions > button {
    align-self: flex-start !important;
  }

  /* Hero BG morphs: ocultar em mobile para não obstruir leitura */
  .hero > svg {
    display: none !important;
  }

  /* Hero-inner: menos padding em mobile */
  .hero .hero-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 80px !important;
    padding-bottom: 60px !important;
  }

  /* Subtitle: sem largura fixa em mobile */
  body .hero-inner .dp-hero-desc-row .hero-sub {
    max-width: 100% !important;
    width: 100% !important;
  }

  /* Morph-seq: ocultar em mobile */
  .dp-hero-morph-seq {
    display: none !important;
  }
}


/* ════════════════════════════════════════════════════════════════
   PHASE 20 — FOUC DEFINITIVO · AREAS GRID · HERO BG MINIMALISTA
   CSS carrega ANTES do JS → define estado correto desde o início
════════════════════════════════════════════════════════════════ */

/* ── ANTI-FOUC CRÍTICO: estado correto antes do JS ──────────── */
/* Strip: nunca visível */
.strip, body .strip, .home .strip, .page-template-default .strip {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Hero-inner: padding correto desde o carregamento */
.hero .hero-inner,
.hero-inner {
  padding-top: 103px !important;
  padding-bottom: 90px !important;
}

/* H1: Playfair Display weight 400 como logo */
.hero-title, h1.hero-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 400 !important;
}

/* Botões hero: alinhados à esquerda, Contato = ancora */
.hero-actions {
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
.hero-actions .btn-primary {
  background: #1C1C1E !important;
  color: #fff !important;
}
.hero-actions .btn-secondary {
  background: transparent !important;
  color: #1C1C1E !important;
  border: 1.5px solid #1C1C1E !important;
}

/* Subtitle: 2 linhas */
.hero-sub,
.dp-hero-desc-row .hero-sub,
body .hero-inner .dp-hero-desc-row .hero-sub {
  max-width: 560px !important;
}

/* Desc-row: subtitle + morph-seq lado a lado */
.dp-hero-desc-row {
  display: flex !important;
  align-items: flex-start !important;
  gap: 24px !important;
  margin-bottom: 28px !important;
}

/* ── AREAS GRID: CORRIGIR blank space ───────────────────────────
   .areas-grid tem 1 filho (UL) — NÃO deve ser grid.
   .areas-list-a2 é quem contém os 4 cards → grid 2-col aqui.     */
.areas-grid {
  display: block !important;
  grid-template-columns: unset !important;
}

.areas-list-a2 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1px !important;
  background: #E8E4E0 !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

.areas-list-a2 > li {
  background: #fff !important;
  width: 100% !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

/* Cards alternados: #F8F6F4 para PE e TS */
.area-card-a2--penal-economico,
.area-card-a2--tributario-estrategico {
  background: #F8F6F4 !important;
}

/* Garantir que card ocupe todo o li */
.areas-list-a2 > li > .area-card-a2,
.areas-list-a2 .area-card-a2 {
  width: 100% !important;
  height: 100% !important;
  box-sizing: border-box !important;
}

/* ── HERO BG MORPHS: minimalista — via CSS fade-in ──────────── */
.dp-hero-final-morph {
  opacity: 0;
  animation: dpMorphIn 0.6s ease-out 0.1s forwards;
}
@keyframes dpMorphIn {
  to { opacity: 1; }
}

/* ── MOBILE ─────────────────────────────────────────────────── */
@media (max-width: 767px) {
  .areas-list-a2 {
    grid-template-columns: 1fr !important;
    background: transparent !important;
    gap: 0 !important;
  }
  .areas-list-a2 > li {
    border-bottom: 1px solid #E8E4E0 !important;
  }
  .hero-actions {
    justify-content: flex-start !important;
    align-items: flex-start !important;
  }
  .dp-hero-final-morph {
    display: none !important;
  }
  .hero .hero-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 80px !important;
    padding-bottom: 56px !important;
  }
  body .hero-inner .dp-hero-desc-row .hero-sub {
    max-width: 100% !important;
  }
  .dp-hero-morph-seq {
    display: none !important;
  }
}

/* Phase 20 CSS: Especificidade alta para areas-grid block */
/* body.home .areas-grid = (0,2,1) — supera todas as regras anteriores */
body.home .areas-grid,
body.home section .areas-grid,
body.home .section .areas-grid,
body.wp-singular .areas-grid {
  display: block !important;
  grid-template-columns: unset !important;
  flex-direction: unset !important;
  background: transparent !important;
  gap: unset !important;
}

/* Hero BG morphs: fade-in suave, sem pop */
.dp-hero-final-morph {
  animation: none !important;
  transition: opacity 0.5s ease !important;
}

/* Phase 20 btn fix: especificidade (0,2,1) para ganhar Phase 14 */
.hero-actions a.btn-secondary,
.hero-actions button.btn-secondary,
.hero .hero-actions a.btn-secondary,
.hero .hero-actions button.btn-secondary {
  background: transparent !important;
  background-color: transparent !important;
  color: #1C1C1E !important;
  border: 1.5px solid #1C1C1E !important;
}


/* ═══════════════════════════════════════════════════════════════
   PHASE 20 — Sobre hero claro + FOUC suppression
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── SOBRE: hero background claro (igual ao home) ──────────── */
/* Targets .page-hero-light (classe injetada pelo JS na Sobre) */
.page-hero-light {
  background: var(--dp-hero-bg, #F8F6F4) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Texto da Sobre em cores escuras (bg agora é claro) */
.page-hero-light h1,
.page-hero-light .dp-sobre-h1 {
  color: var(--dp-ancora) !important;
}
.page-hero-light p,
.page-hero-light .dp-sobre-desc {
  color: #808080 !important;
}
.page-hero-light .dp-sobre-eyebrow,
.page-hero-light [style*="rgba(255,255,255"] {
  color: var(--dp-terracota) !important;
  opacity: 1 !important;
}
/* Override inline style branco no H1 */
.page-hero-light h1[style] {
  color: var(--dp-ancora) !important;
}

/* ── HOME FOUC: esconder hero BG SVGs até JS injetar os corretos */
/* Os SVGs diretos no .hero serão injetados via JS rapidamente.
   Ocultar o flash dos SVGs gerados pelas fases anteriores.     */
.hero > svg {
  opacity: 0;
  transition: opacity 0.35s ease;
}
/* Quando marcado como pronto, mostrar suavemente */
.hero.dp-bg-ready > svg {
  opacity: 1;
}

/* ── Bordeaux bar: garante visível desde o CSS (sem flash) ──── */
.hero-bordeaux-bar {
  display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: var(--dp-terracota) !important;
  z-index: 10 !important;
}


/* ═══════════════════════════════════════════════════════════════════
   ANTI-FOUC DEFINITIVO — Home Hero + Sobre Hero
   Estratégia: CSS define o estado correto E mascara o JS.
   - Hero inicia com opacity:0, faz fade-in após 80ms
   - Body recebe classe dp-loaded para ativar visibilidade
   - Especificidade máxima: body.dp-loaded >> qualquer fase JS
═══════════════════════════════════════════════════════════════════ */

/* 1. MÁSCARA: Hero e page-hero ocultos até dp-loaded */
body:not(.dp-loaded) section.hero,
body:not(.dp-loaded) .page-hero-light {
  opacity: 0 !important;
  transition: none !important;
}

/* 2. FADE IN suave quando dp-loaded é adicionado */
body.dp-loaded section.hero,
body.dp-loaded .page-hero-light {
  opacity: 1 !important;
  transition: opacity 0.18s ease !important;
}

/* ── HOME HERO: estado correto desde o primeiro frame ─────── */
body.dp-loaded section.hero {
  background: #F8F6F4 !important;
  overflow: hidden !important;
  position: relative !important;
}
body.dp-loaded .hero .hero-inner {
  padding-top: 103px !important;
  padding-bottom: 103px !important;
  padding-left: 64px !important;
}
body.dp-loaded .hero-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 400 !important;
  color: var(--dp-ancora) !important;
}
body.dp-loaded .hero-title em {
  color: var(--dp-terracota) !important;
  font-style: italic !important;
}
body.dp-loaded .hero-sub {
  max-width: 560px !important;
  color: var(--dp-medio) !important;
}
body.dp-loaded .hero-actions {
  justify-content: flex-start !important;
  gap: 10px !important;
}
body.dp-loaded .dp-hero-btn-group .btn-primary,
body.dp-loaded .hero-actions .btn-primary {
  background: var(--dp-ancora) !important;
  color: #fff !important;
  border: none !important;
}
body.dp-loaded .dp-hero-btn-group .btn-secondary,
body.dp-loaded .hero-actions .btn-secondary {
  background: transparent !important;
  color: var(--dp-ancora) !important;
  border: 1.5px solid var(--dp-ancora) !important;
}
body.dp-loaded .dp-hero-separator {
  height: 4px !important;
  background: var(--dp-borda) !important;
  border-top: none !important;
  padding: 0 !important;
  position: relative !important;
  overflow: visible !important;
}
body.dp-loaded .dp-hero-separator::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important; top: 0 !important;
  width: 120px !important; height: 100% !important;
  background: var(--dp-terracota) !important;
}
body.dp-loaded .strip,
body.dp-loaded .dp-hero-strip {
  display: none !important;
  visibility: hidden !important;
}

/* ── SOBRE HERO: estado correto — fundo âncora, texto branco ─ */
body.dp-loaded .page-hero-light {
  background: var(--dp-ancora) !important;
  padding: 120px 0 56px !important;
}
body.dp-loaded .page-hero-light h1,
body.dp-loaded .page-hero-light .hero-title {
  color: #ffffff !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 400 !important;
}
body.dp-loaded .page-hero-light p,
body.dp-loaded .page-hero-light .hero-desc,
body.dp-loaded .page-hero-light .hero-sub {
  color: rgba(255,255,255,0.75) !important;
}
body.dp-loaded .page-hero-light .eyebrow {
  color: rgba(255,255,255,0.55) !important;
}

/* ── ÁREAS: grid 2-col correto desde o CSS ───────────────── */
body.dp-loaded .areas-list-a2 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 1px !important;
  background: var(--dp-borda) !important;
}
@media (max-width: 767px) {
  body.dp-loaded .areas-list-a2 {
    grid-template-columns: 1fr !important;
    background: transparent !important;
    gap: 0 !important;
  }
  body.dp-loaded section.hero,
  body.dp-loaded .page-hero-light {
    padding-left: 0 !important;
  }
  body.dp-loaded .hero .hero-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 80px !important;
    padding-bottom: 60px !important;
  }
  body.dp-loaded .hero > svg {
    display: none !important;
  }
}


/* ╔═══════════════════════════════════════════════════════════╗
   ║  ANTI-FOUC DEFINITIVO — html body specificity            ║
   ║  Ativo desde o primeiro frame. CSS no <head>.            ║
   ╚═══════════════════════════════════════════════════════════╝ */

/* Strip: nunca visível — bate qualquer regra do tema */
html body .strip,
html body > .strip,
html .home .strip,
html .page-template-default .strip {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* ── Hero home: correto desde o 1º frame ─────────────────── */
html body section.hero,
html body .hero {
  background-color: #F8F6F4 !important;
  overflow: hidden !important;
}
html body .hero .hero-inner,
html body section.hero .hero-inner {
  padding-top: 103px !important;
  padding-bottom: 80px !important;
  padding-left: 56px !important;
}
html body .hero-title,
html body .hero h1 {
  font-weight: 400 !important;
}
html body .hero .btn-primary {
  background: #1C1C1E !important;
  color: #fff !important;
  border: none !important;
}
html body .hero .btn-secondary {
  background: transparent !important;
  color: #1C1C1E !important;
  border: 1.5px solid #1C1C1E !important;
}
html body .hero .hero-actions {
  justify-content: flex-start !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
html body .hero .hero-sub {
  max-width: 560px !important;
}

/* ── Separador hero ──────────────────────────────────────── */
html body .dp-hero-separator {
  height: 4px !important;
  background: #E8E4E0 !important;
  border-top: none !important;
  border-bottom: none !important;
  display: block !important;
  position: relative !important;
  overflow: visible !important;
  padding: 0 !important;
}
html body .dp-hero-separator::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 0 !important; top: 0 !important;
  width: 120px !important; height: 100% !important;
  background: #E04B2A !important;
}

/* ── Sobre hero: padronizado com a home ─────────────────── */
html body .page-hero-light {
  background-color: #F8F6F4 !important;
  position: relative !important;
  overflow: hidden !important;
}
html body .page-hero-light::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: #E04B2A !important;
  z-index: 10 !important;
}
html body .page-hero-light h1 {
  font-weight: 400 !important;
  color: #1C1C1E !important;
}
html body .page-hero-light p {
  color: #808080 !important;
}
html body .page-hero-light .hero-eyebrow,
html body .page-hero-light .dp-eyebrow,
html body .page-hero-light [class*="eyebrow"],
html body .page-hero-light [class*="breadline"] span {
  color: #E04B2A !important;
}
/* Separador após Sobre hero */
html body .dp-sobre-separator {
  height: 4px !important;
  background: #E8E4E0 !important;
  position: relative !important;
  overflow: visible !important;
  display: block !important;
  padding: 0 !important;
  border: none !important;
}
html body .dp-sobre-separator::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important; top: 0 !important;
  width: 120px !important; height: 100% !important;
  background: #E04B2A !important;
}

/* ── Áreas grid: 2 colunas — puro CSS ──────────────────── */
html body .areas-list-a2 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 1px !important;
  background: #E8E4E0 !important;
}
html body .areas-list-a2 > li,
html body .areas-list-a2 .area-card-a2 {
  width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  position: relative !important;
}

/* ── Area BG morph: canto direito-baixo ─────────────────── */
html body .dp-area-bg-morph {
  position: absolute !important;
  right: -18px !important;
  bottom: -18px !important;
  left: auto !important;
  top: auto !important;
  opacity: 0.08 !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

/* ── Mobile ────────────────────────────────────────────── */
@media (max-width: 767px) {
  html body .areas-list-a2 {
    grid-template-columns: 1fr !important;
    background: transparent !important;
    gap: 0 !important;
  }
  html body .areas-list-a2 > li,
  html body .areas-list-a2 .area-card-a2 {
    border-bottom: 1px solid #E8E4E0 !important;
  }
  html body .hero .hero-inner,
  html body section.hero .hero-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 80px !important;
    padding-bottom: 60px !important;
  }
  html body .hero .hero-actions {
    align-items: flex-start !important;
  }
  html body .hero > svg,
  html body .dp-hero-final-morph,
  html body .page-hero-light > svg,
  html body .dp-sobre-morph,
  html body .dp-hero-morph-seq {
    display: none !important;
  }
  html body .page-hero-light {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}


/* ═══════════════════════════════════════════════════════════════
   SOBRE HERO — padronizado com home · Formação/Experiência · Rodapé
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── Sobre hero: paleta idêntica à home ─────────────────────── */
html body .page-hero-light {
  background-color: #F8F6F4 !important;
  position: relative !important;
  overflow: hidden !important;
}
html body .page-hero-light::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: #E04B2A !important;
  z-index: 10 !important;
}
html body .page-hero-light .sobre-eyebrow,
html body .page-hero-light [class*="eyebrow"],
html body .page-hero-light .sobre-label,
html body .dp-sobre-eyebrow {
  color: #E04B2A !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
}
html body .page-hero-light h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 400 !important;
  color: #1C1C1E !important;
}
html body .page-hero-light p,
html body .page-hero-light .sobre-sub {
  color: #808080 !important;
}
/* SVGs injetados pelo JS na Sobre */
html body .page-hero-light > svg,
html body .dp-sobre-morph {
  pointer-events: none !important;
  position: absolute !important;
  z-index: 0 !important;
}
html body .page-hero-light .container,
html body .page-hero-light .hero-inner {
  position: relative !important;
  z-index: 1 !important;
}

/* ── Formação/Experiência: grid 2 colunas contrastantes ──────── */
.dp-sobre-formexp {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  min-height: 400px !important;
}
.dp-sobre-formexp-col-left {
  background: #fff !important;
  padding: 52px 56px !important;
  border-right: 1px solid #E8E4E0 !important;
}
.dp-sobre-formexp-col-right {
  background: #F8F6F4 !important;
  padding: 52px 56px !important;
}
.dp-sobre-col-label {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: #E04B2A !important;
  margin-bottom: 28px !important;
  display: block !important;
}
.dp-sobre-inst {
  padding: 16px 0 !important;
  border-bottom: .5px solid #E8E4E0 !important;
}
.dp-sobre-inst:first-of-type { padding-top: 0 !important; }
.dp-sobre-inst-name {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #1C1C1E !important;
  margin-bottom: 3px !important;
}
.dp-sobre-inst-desc {
  font-size: 12px !important;
  color: #808080 !important;
  line-height: 1.55 !important;
}
/* Áreas de atuação na col direita */
.dp-sobre-area-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 0 !important;
  border-bottom: .5px solid #E8E4E0 !important;
  font-size: 13.5px !important;
  color: #1C1C1E !important;
}
/* Experiência card */
.dp-sobre-exp-card {
  background: #fff !important;
  border: .5px solid #E8E4E0 !important;
  border-radius: 3px !important;
  padding: 18px !important;
  margin-top: 28px !important;
}
.dp-sobre-exp-sublabel {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  margin-bottom: 10px !important;
  display: block !important;
}
.dp-sobre-prev-item {
  font-size: 12.5px !important;
  color: #1C1C1E !important;
  padding: 5px 0 !important;
  border-bottom: .5px solid #E8E4E0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.dp-sobre-prev-item::before {
  content: '' !important;
  width: 4px !important; height: 4px !important;
  border-radius: 50% !important;
  background: #E04B2A !important;
  flex-shrink: 0 !important;
}

/* ── Rodapé: 5 colunas conforme protótipo ────────────────────── */
#site-footer .footer-main,
#site-footer .dp-footer-main {
  display: grid !important;
  grid-template-columns: 1.8fr 1fr 1fr 1fr !important;
  gap: 40px !important;
  padding: 52px 56px 36px !important;
}
#site-footer .footer-bottom,
#site-footer .dp-footer-bottom {
  border-top: .5px solid rgba(255,255,255,.08) !important;
  margin: 0 56px !important;
  padding: 22px 0 28px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

@media (max-width: 767px) {
  .dp-sobre-formexp {
    grid-template-columns: 1fr !important;
  }
  .dp-sobre-formexp-col-left,
  .dp-sobre-formexp-col-right {
    padding: 36px 24px !important;
    border-right: none !important;
  }
  #site-footer .footer-main,
  #site-footer .dp-footer-main {
    grid-template-columns: 1fr !important;
    padding: 36px 24px 24px !important;
  }
}


/* ── Patch 20 CSS: footer 5 colunas + sobre morph-row ───────── */
#site-footer .footer-main,
#site-footer .dp-footer-main {
  grid-template-columns: 1.8fr 1fr 1fr 1fr 1fr !important;
}
@media (max-width: 1024px) {
  #site-footer .footer-main,
  #site-footer .dp-footer-main {
    grid-template-columns: 1fr 1fr 1fr !important;
  }
}
@media (max-width: 767px) {
  #site-footer .footer-main,
  #site-footer .dp-footer-main {
    grid-template-columns: 1fr !important;
  }
}

/* Sobre hero: morph-row abaixo do H1 */
.dp-s-morph-row {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  margin-top: 8px !important;
  margin-bottom: 20px !important;
}
.dp-s-morph-row svg {
  display: block !important;
  flex-shrink: 0 !important;
}

/* Sobre hero: apenas 2 BG morphs */
.dp-sobre-morph-D { display: none !important; }
.dp-sobre-morph-C { display: none !important; }
.dp-sobre-morph-S { display: none !important; }
.dp-sobre-morph-W { display: none !important; }


/* ── Patch 21 CSS: Sobre hero âncora escuro + h1-wrap inline ── */

/* Hero âncora: override do cinza claro anterior */
html body .page-hero-light {
  background-color: #1C1C1E !important;
}
html body .page-hero-light h1 {
  color: #ffffff !important;
  font-weight: 400 !important;
  margin-bottom: 0 !important;
}
html body .page-hero-light p,
html body .page-hero-light .hero-desc {
  color: rgba(255,255,255,0.65) !important;
}
html body .dp-sobre-eyebrow span {
  color: #E04B2A !important;
}

/* H1 + morph-row na mesma linha */
html body .dp-h1-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  flex-wrap: nowrap !important;
  margin-bottom: 12px !important;
}
html body .dp-h1-wrap h1 {
  margin-bottom: 0 !important;
  flex-shrink: 0 !important;
}
html body .dp-s-morph-row {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  flex-shrink: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Hero BG SVGs: brancos sobre fundo escuro */
html body .page-hero-light > svg {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

/* Barra bordeaux: garantir sobre fundo escuro */
html body .page-hero-light::before {
  background: #E04B2A !important;
  z-index: 10 !important;
}

/* Formação: nome em bold correto */
.dp-sobre-inst-name {
  font-weight: 500 !important;
}
.dp-sobre-inst-desc {
  line-height: 1.5 !important;
  margin-top: 2px !important;
}
.dp-sobre-inst-desc + .dp-sobre-inst-desc {
  margin-top: 1px !important;
}


/* ═══════════════════════════════════════════════════════════════
   ÁREAS DE ATUAÇÃO — padronização hero · paleta · sticky nav · stmt
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── Página: wrapper principal ───────────────────────────────── */
html body.page-template-page-areas-de-atuacao div.c {
  background: transparent !important;
}

/* ── Hero: padrão âncora escuro idêntico ao Sobre ────────────── */
html body.page-template-page-areas-de-atuacao .page-hero {
  background-color: #1C1C1E !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 80px 56px 64px !important;
  margin-top: 0 !important;
}
/* Barra bordeaux no topo */
html body.page-template-page-areas-de-atuacao .page-hero::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: #E04B2A !important;
  z-index: 10 !important;
}
html body.page-template-page-areas-de-atuacao .page-hero .eyebrow {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: #E04B2A !important;
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  margin-bottom: 18px !important;
}
html body.page-template-page-areas-de-atuacao .page-hero .eyebrow::before {
  content: '' !important;
  display: inline-block !important;
  width: 22px !important;
  height: 1.5px !important;
  background: #E04B2A !important;
  flex-shrink: 0 !important;
}
html body.page-template-page-areas-de-atuacao .page-hero h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  line-height: 1.06 !important;
  margin-bottom: 8px !important;
}
html body.page-template-page-areas-de-atuacao .page-hero p {
  font-size: 15px !important;
  color: rgba(255,255,255,0.65) !important;
  max-width: 620px !important;
  line-height: 1.78 !important;
  margin-top: 16px !important;
}

/* ── Separador após hero ─────────────────────────────────────── */
html body.page-template-page-areas-de-atuacao nav.area-nav {
  position: sticky !important;
  top: 63px !important; /* header height — sem gap */
  z-index: 50 !important;
  background: rgba(242, 242, 245, 0.97) !important;
  backdrop-filter: blur(8px) !important;
  border-bottom: .5px solid #E8E4E0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  padding: 0 56px !important;
}

/* ── Áreas: BG alternado branco / cinza claro ────────────────── */
html body.page-template-page-areas-de-atuacao .area-wrap {
  background: #ffffff !important;
  padding: 0 !important;
}
html body.page-template-page-areas-de-atuacao .area-wrap:nth-child(even) {
  background: #F8F6F4 !important;
}

/* ── Remover "Posicionamento" label ─────────────────────────── */
html body.page-template-page-areas-de-atuacao .stmt-label {
  display: none !important;
}

/* ── stmt (frase de posicionamento): sem label, layout limpo ─── */
html body.page-template-page-areas-de-atuacao .stmt {
  border-top: .5px solid #E8E4E0 !important;
  padding: 28px 0 !important;
  margin-top: 0 !important;
}

/* ── Texto das áreas: paleta correta ────────────────────────── */
html body.page-template-page-areas-de-atuacao .area-wrap h2 {
  color: #1C1C1E !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 400 !important;
}
html body.page-template-page-areas-de-atuacao .area-wrap p {
  color: #1C1C1E !important;
}
html body.page-template-page-areas-de-atuacao .area-wrap [class*="label"],
html body.page-template-page-areas-de-atuacao .area-wrap [class*="tag"],
html body.page-template-page-areas-de-atuacao .area-wrap [class*="eyebrow"] {
  color: #E04B2A !important;
  font-family: 'Raleway', sans-serif !important;
}


/* ═══════════════════════════════════════════════════════════════
   SINGLE POST — layout largo · sidebar · prev/next · share
   Padrão oficial para todas as postagens · diegopaulino.adv.br
═══════════════════════════════════════════════════════════════ */

/* ── Post header bar (breadcrumb + meta above fold) ──────────── */
html body.single .post-header {
  background: #ffffff !important;
  border-bottom: .5px solid #E8E4E0 !important;
  padding: 0 !important;
}
html body.single .post-header .container {
  max-width: 1320px !important;
  padding: 20px 56px 28px !important;
}
html body.single .post-header .breadcrumb,
html body.single .post-header .breadcrumb * {
  font-family: 'Raleway', sans-serif !important;
  font-size: 10.5px !important;
  color: #808080 !important;
  text-decoration: none !important;
  letter-spacing: .04em !important;
}
html body.single .post-header .breadcrumb a { color: #E04B2A !important; }
html body.single .post-header .post-cat {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .20em !important;
  text-transform: uppercase !important;
  color: #E04B2A !important;
  margin-bottom: 10px !important;
  margin-top: 16px !important;
  display: block !important;
}
html body.single .post-header h1 {
  font-family: 'Lora', Georgia, serif !important;
  font-size: clamp(24px, 3vw, 36px) !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  color: #1C1C1E !important;
  margin-bottom: 14px !important;
}
html body.single .post-header .post-meta {
  font-size: 13px !important;
  color: #808080 !important;
  line-height: 1.5 !important;
}
html body.single .post-header .post-meta strong,
html body.single .post-header .post-meta a {
  color: #1C1C1E !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* ── Main section: full width ─────────────────────────────────── */
html body.single section.section {
  background: #ffffff !important;
  padding: 0 !important;
}
html body.single section.section > .container {
  max-width: 1320px !important;
  padding: 0 56px 56px !important;
  margin: 0 auto !important;
}

/* ── Single layout grid: main + sidebar ──────────────────────── */
html body.single .single-layout {
  display: grid !important;
  grid-template-columns: 1fr 300px !important;
  gap: 52px !important;
  align-items: start !important;
  padding-top: 40px !important;
}

/* ── Article (main col): full width, proper reading size ─────── */
html body.single article,
html body.single .single-layout > div:first-child {
  min-width: 0 !important;
  max-width: 100% !important;
}
html body.single .entry-content {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
  color: #1C1C1E !important;
  max-width: 100% !important;
}
html body.single .entry-content p {
  margin-bottom: 20px !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
  color: #1C1C1E !important;
}
html body.single .entry-content h2 {
  font-family: 'Lora', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  color: #1C1C1E !important;
  margin: 36px 0 14px !important;
  line-height: 1.3 !important;
}
html body.single .entry-content h3 {
  font-family: 'Lora', Georgia, serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  color: #1C1C1E !important;
  margin: 28px 0 10px !important;
}
html body.single .entry-content blockquote {
  margin: 28px 0 !important;
  padding: 18px 24px !important;
  background: #F8F6F4 !important;
  border-left: 3px solid #E04B2A !important;
  border-radius: 0 2px 2px 0 !important;
}
html body.single .entry-content blockquote p {
  font-size: 14.5px !important;
  color: #444444 !important;
  font-style: italic !important;
  margin: 0 !important;
  line-height: 1.72 !important;
}

/* ── Sidebar: sticky ─────────────────────────────────────────── */
html body.single aside,
html body.single .single-layout > aside {
  position: sticky !important;
  top: 80px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

/* ── Share section ───────────────────────────────────────────── */
html body.single .post-share,
html body.single [class*="share"] {
  padding: 20px 0 !important;
  border-top: .5px solid #E8E4E0 !important;
  margin-top: 20px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}
html body.single .share-label {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  flex-shrink: 0 !important;
}

/* ── Prev/Next floating buttons ──────────────────────────────── */
.dp-post-prev,
.dp-post-next {
  position: fixed !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 40 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  opacity: 0.6 !important;
  transition: opacity .2s !important;
}
.dp-post-prev:hover,
.dp-post-next:hover { opacity: 1 !important; }
.dp-post-prev { left: 20px !important; }
.dp-post-next { right: 20px !important; }
.dp-post-arrow {
  width: 36px !important;
  height: 36px !important;
  border: 1px solid #E8E4E0 !important;
  border-radius: 2px !important;
  background: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  color: #1C1C1E !important;
  line-height: 1 !important;
}
.dp-post-prev:hover .dp-post-arrow,
.dp-post-next:hover .dp-post-arrow {
  background: #E04B2A !important;
  border-color: #E04B2A !important;
  color: #fff !important;
}
.dp-post-nav-label {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
}

/* ── Disclaimer box ──────────────────────────────────────────── */
.dp-post-disclaimer {
  background: #F8F6F4 !important;
  border: .5px solid #E8E4E0 !important;
  border-radius: 2px !important;
  padding: 12px 16px !important;
  font-size: 11.5px !important;
  color: #808080 !important;
  line-height: 1.65 !important;
  margin: 20px 0 !important;
}

/* ── "Voltar ao Blog" button ─────────────────────────────────── */
.dp-back-blog {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 11px 22px !important;
  border: 1px solid #1C1C1E !important;
  border-radius: 2px !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: #1C1C1E !important;
  text-decoration: none !important;
  margin-top: 8px !important;
  transition: background .18s, color .18s !important;
}
.dp-back-blog:hover {
  background: #1C1C1E !important;
  color: #fff !important;
}

/* ── Sidebar: search box ─────────────────────────────────────── */
.dp-sidebar-search {
  position: relative !important;
  margin-bottom: 4px !important;
}
.dp-sidebar-search input {
  width: 100% !important;
  padding: 9px 36px 9px 12px !important;
  border: .5px solid #E8E4E0 !important;
  border-radius: 2px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  color: #1C1C1E !important;
  background: #fff !important;
  outline: none !important;
  box-sizing: border-box !important;
}
.dp-sidebar-search input::placeholder { color: #808080 !important; }

/* ── Sidebar: Áreas de Atuação card ──────────────────────────── */
.dp-sidebar-areas {
  background: #fff !important;
  border: .5px solid #E8E4E0 !important;
  border-radius: 3px !important;
  padding: 18px !important;
}
.dp-sidebar-areas-label {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  margin-bottom: 14px !important;
  display: block !important;
}
.dp-sidebar-areas a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 13px !important;
  color: #1C1C1E !important;
  text-decoration: none !important;
  padding: 8px 0 !important;
  border-bottom: .5px solid #E8E4E0 !important;
  transition: color .16s !important;
}
.dp-sidebar-areas a:last-child { border-bottom: none !important; }
.dp-sidebar-areas a:hover { color: #E04B2A !important; }
.dp-sidebar-areas a::before {
  content: '→' !important;
  color: #E04B2A !important;
  flex-shrink: 0 !important;
  font-size: 12px !important;
}

/* ── Sidebar: CTA card ────────────────────────────────────────── */
.dp-sidebar-cta {
  background: #1C1C1E !important;
  border-radius: 3px !important;
  padding: 20px !important;
}
.dp-sidebar-cta-label {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.4) !important;
  margin-bottom: 8px !important;
  display: block !important;
}
.dp-sidebar-cta p {
  font-size: 13px !important;
  color: rgba(255,255,255,.65) !important;
  line-height: 1.65 !important;
  margin-bottom: 14px !important;
}
.dp-sidebar-cta a {
  display: block !important;
  padding: 10px !important;
  background: #E04B2A !important;
  color: #fff !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  border-radius: 2px !important;
}

@media (max-width: 1024px) {
  html body.single .single-layout {
    grid-template-columns: 1fr !important;
  }
  html body.single aside { position: static !important; }
  .dp-post-prev, .dp-post-next { display: none !important; }
}
@media (max-width: 767px) {
  html body.single section.section > .container { padding: 0 24px 40px !important; }
  html body.single .post-header .container { padding: 16px 24px 20px !important; }
}


/* ── Single post: fixes · breadcrumb · meta · article duplicates ── */

/* Overlap fix: post-header below fixed header */
html body.single .post-header {
  margin-top: 63px !important;
}

/* Post-header meta: single clean line */
html body.single .post-header .post-meta {
  font-size: 13px !important;
  color: #808080 !important;
  line-height: 1.5 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
}
html body.single .post-header .post-meta strong {
  color: #1C1C1E !important;
  font-weight: 600 !important;
}

/* Hide duplicate internal meta inside article (theme renders it twice) */
html body.single .post-content > article > .post-header,
html body.single .post-content > article > header,
html body.single .post-content .post-cat,
html body.single .post-content .post-meta:not(.dp-post-meta),
html body.single .post-content [class*="reading-time"],
html body.single article > .post-header,
html body.single article > header {
  display: none !important;
}

/* Hide theme's original "Voltar para o Blog" btn (we have our own) */
html body.single .btn.btn-secondary[href*="blog"],
html body.single .post-content .btn-secondary {
  display: none !important;
}

/* Remove the second meta block inside article */
html body.single article > p:first-child:empty,
html body.single .article-meta,
html body.single .entry-header {
  display: none !important;
}

/* ── Post meta: alinhado à esquerda junto ao título ─────────── */
html body.single .post-header .post-meta {
  justify-content: flex-start !important;
  gap: 0 !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
}
html body.single .post-header .post-meta span,
html body.single .post-header .post-meta strong {
  white-space: nowrap !important;
}


/* ═══════════════════════════════════════════════════════════════
   CLIPPING — hero padrão âncora · paleta branca · filtros corretos
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── Hero: fundo âncora escuro, padrão das outras páginas ─────── */
html body.page-template-page-clipping .cl-hero {
  background-color: #1C1C1E !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 120px 56px 64px !important;
  margin-top: 0 !important;
}
html body.page-template-page-clipping .cl-hero::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: #E04B2A !important;
  z-index: 10 !important;
}

/* Eyebrow "Curadoria": terracota + traço */
html body.page-template-page-clipping .cl-eyebrow {
  color: rgba(255,255,255,0.65) !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  margin-bottom: 18px !important;
}
html body.page-template-page-clipping .cl-eyebrow::before {
  content: '' !important;
  display: inline-block !important;
  width: 22px !important;
  height: 1.5px !important;
  background: #E04B2A !important;
  flex-shrink: 0 !important;
}

/* H1: Playfair Display branco */
html body.page-template-page-clipping .cl-hero h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  line-height: 1.06 !important;
  margin-bottom: 8px !important;
}

/* Sub "cl-lead": branco translúcido */
html body.page-template-page-clipping .cl-hero .cl-lead {
  color: rgba(255, 255, 255, 0.65) !important;
  font-size: 15px !important;
  line-height: 1.78 !important;
  max-width: 640px !important;
  margin-top: 14px !important;
}

/* Morphs de bg: injetados pelo JS */
html body.page-template-page-clipping .cl-hero > svg {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
html body.page-template-page-clipping .cl-hero .wrap {
  position: relative !important;
  z-index: 1 !important;
}

/* ── Filtros: sticky logo abaixo do hero, sem gap ─────────────── */
html body.page-template-page-clipping .cl-filters {
  position: sticky !important;
  top: 63px !important;
  z-index: 50 !important;
  background: #ffffff !important;
  border-bottom: .5px solid #E8E4E0 !important;
  border-top: none !important;
}

/* ── Paleta geral: branco predominante ────────────────────────── */
html body.page-template-page-clipping .cl-main {
  background: #ffffff !important;
}
html body.page-template-page-clipping .cl-body {
  background: #ffffff !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 40px 56px !important;
}

/* Cards do clipping: branco com borda sutil */
html body.page-template-page-clipping .cl-card,
html body.page-template-page-clipping [class*="clip-item"],
html body.page-template-page-clipping .clip-card {
  background: #ffffff !important;
  border: .5px solid #E8E4E0 !important;
}

/* Tags/badges: terracota */
html body.page-template-page-clipping .cl-tag,
html body.page-template-page-clipping .clip-tag,
html body.page-template-page-clipping [class*="cl-cat"],
html body.page-template-page-clipping [class*="clip-cat"] {
  color: #E04B2A !important;
  font-family: 'Raleway', sans-serif !important;
}

/* Filter pills active: terracota */
html body.page-template-page-clipping .cl-pill.active,
html body.page-template-page-clipping .cl-pill[data-active="true"],
html body.page-template-page-clipping .cl-filters .active {
  background: #E04B2A !important;
  color: #ffffff !important;
  border-color: #E04B2A !important;
}

@media (max-width: 767px) {
  html body.page-template-page-clipping .cl-hero {
    padding: 48px 24px 40px !important;
    margin-top: 63px !important;
  }
  html body.page-template-page-clipping .cl-filters {
    top: 63px !important;
  }
}


/* ── Clipping: hover nos cards igual às áreas da home ─────────── */

/* Remove override de bg dos cards (mantém as cores originais dos elementos) */
html body.page-template-page-clipping .cl-card,
html body.page-template-page-clipping [class*="clip-item"],
html body.page-template-page-clipping .clip-card {
  background: unset !important; /* não forçar bg — cada card mantém o seu */
  transition: border-color .18s, box-shadow .18s !important;
}

/* Hover: borda terracota + sombra sutil — padrão das áreas da home */
html body.page-template-page-clipping .cl-card:hover,
html body.page-template-page-clipping [class*="clip-item"]:hover,
html body.page-template-page-clipping .clip-card:hover {
  border-color: #E04B2A !important;
  box-shadow: 0 0 0 1px #E04B2A, 0 4px 20px rgba(0,0,0,.08) !important;
}

/* Sidebar boxes: não alterar bg — manter como estão */
html body.page-template-page-clipping .cl-side,
html body.page-template-page-clipping .cl-sidebar > * {
  background: unset !important;
}

/* ── Clipping: restaura bg original dos cards, sessão fica branca ── */
html body.page-template-page-clipping .cl-card {
  background-color: #F8F6F4 !important;
}
html body.page-template-page-clipping .cl-card.destaque {
  background-color: #ffffff !important;
}

/* ── Clipping: restaura bg EXATO dos cards conforme original ─────
   destaque = âncora escuro · regulares = transparente/branco
──────────────────────────────────────────────────────────────── */
html body.page-template-page-clipping .cl-card {
  background-color: transparent !important;
}
html body.page-template-page-clipping .cl-card.destaque {
  background-color: #1C1C1E !important;
}

/* ── Clipping cards: bg explícito · hover terracota · legibilidade ── */

/* Cards regulares: branco explícito + borda visível */
html body.page-template-page-clipping .cl-card:not(.destaque) {
  background-color: #ffffff !important;
  border: .5px solid #E8E4E0 !important;
  transition: border-color .18s, box-shadow .18s !important;
}

/* Card destaque: manter dark + borda compatível */
html body.page-template-page-clipping .cl-card.destaque {
  background-color: #1C1C1E !important;
  border: .5px solid rgba(255,255,255,.08) !important;
  transition: border-color .18s, box-shadow .18s !important;
}

/* Hover em ambos: borda terracota + sombra — padrão áreas da home */
html body.page-template-page-clipping .cl-card:hover {
  border-color: #E04B2A !important;
  box-shadow: 0 0 0 1px #E04B2A, 0 4px 20px rgba(0,0,0,.10) !important;
}

/* ── Clipping: restaura bg original da caixa de contato (cl-sb-cta) ── */
html body.page-template-page-clipping .cl-sb-cta {
  background-color: #1C1C1E !important;
}


/* ═══════════════════════════════════════════════════════════════
   SALA DE IMPRENSA — hero padrão âncora · contador preservado
   diegopaulino.adv.br | 2026
═══════════════════════════════════════════════════════════════ */

/* ── Container principal: clearance do header fixo ───────────── */
html body.page-template-page-sala-de-imprensa div.container:first-of-type {
  margin-top: 63px !important;
}

/* ── Hero .si-hero: fundo âncora escuro ──────────────────────── */
html body.page-template-page-sala-de-imprensa .si-hero {
  background-color: #1C1C1E !important;
  position: relative !important;
  overflow: hidden !important;
  margin-top: -63px !important;
  padding-top: 120px !important;
  padding-bottom: 0 !important;
}
/* Barra bordeaux 3px no topo */
html body.page-template-page-sala-de-imprensa .si-hero::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: #E04B2A !important;
  z-index: 10 !important;
}

/* Eyebrow "Na Mídia": terracota + traço */
html body.page-template-page-sala-de-imprensa .si-ey {
  color: rgba(255,255,255,0.65) !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  margin-bottom: 18px !important;
}
html body.page-template-page-sala-de-imprensa .si-ey::before {
  content: '' !important;
  display: inline-block !important;
  width: 22px !important;
  height: 1.5px !important;
  background: #E04B2A !important;
  flex-shrink: 0 !important;
}

/* H1: Playfair Display branco */
html body.page-template-page-sala-de-imprensa .si-hero h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  line-height: 1.06 !important;
  margin-bottom: 8px !important;
}

/* Subtítulo: branco translúcido */
html body.page-template-page-sala-de-imprensa .si-hero > div > p {
  color: rgba(255, 255, 255, 0.65) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.78 !important;
  max-width: 640px !important;
}

/* ── Contador .si-st: preservado, apenas ajuste de paleta ─────── */
html body.page-template-page-sala-de-imprensa .si-st {
  margin-top: 32px !important;
  padding: 24px 0 28px !important;
  border-top: .5px solid rgba(255,255,255,.12) !important;
  display: flex !important;
  gap: 40px !important;
  align-items: flex-start !important;
}
html body.page-template-page-sala-de-imprensa .si-sn {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(24px, 2.5vw, 32px) !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  line-height: 1 !important;
  display: block !important;
}
html body.page-template-page-sala-de-imprensa .si-sl {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,.45) !important;
  display: block !important;
  margin-top: 4px !important;
}

/* BG morphs injetados pelo JS */
html body.page-template-page-sala-de-imprensa .si-hero > svg {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > div {
  position: relative !important;
  z-index: 1 !important;
}

/* ── Filtros: sticky abaixo do header ────────────────────────── */
html body.page-template-page-sala-de-imprensa .si-fi {
  position: sticky !important;
  top: 63px !important;
  z-index: 50 !important;
  background: #ffffff !important;
  border-bottom: .5px solid #E8E4E0 !important;
}

@media (max-width: 767px) {
  html body.page-template-page-sala-de-imprensa div.container:first-of-type { margin-top: 63px !important; }
  html body.page-template-page-sala-de-imprensa .si-hero { padding-top: 44px !important; }
  html body.page-template-page-sala-de-imprensa .si-st { gap: 24px !important; }
}


/* ── Sala de Imprensa: container full-width + hero correto ───────
   O container do tema restringe para 1200px — precisa ser liberado
   para que o hero ocupe toda a largura, igual às demais páginas
──────────────────────────────────────────────────────────────── */

/* Container: full viewport width, sem margem lateral */
html body.page-template-page-sala-de-imprensa > div.container {
  max-width: 100% !important;
  width: 100% !important;
  margin: 63px 0 0 !important;
  padding: 0 !important;
}

/* Hero: agora com largura total — padding interno para conteúdo */
html body.page-template-page-sala-de-imprensa .si-hero {
  padding-left: 56px !important;
  padding-right: 56px !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > div {
  max-width: 1320px !important;
  margin: 0 auto !important;
}

/* Filtros: também full width */
html body.page-template-page-sala-de-imprensa .si-fi {
  padding-left: 56px !important;
  padding-right: 56px !important;
}

@media (max-width: 767px) {
  html body.page-template-page-sala-de-imprensa .si-hero {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  html body.page-template-page-sala-de-imprensa .si-fi {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* ── Sala de Imprensa: hero inner full width ── */
html body.page-template-page-sala-de-imprensa .si-hero > div {
  width: 100% !important;
}
html body.page-template-page-sala-de-imprensa .si-hero .si-st {
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


/* ── Sala de Imprensa: H1 linha única · layout hero 2 colunas · filtros padrão blog ── */

/* H1: forçar linha única */
html body.page-template-page-sala-de-imprensa .si-hero h1 {
  white-space: nowrap !important;
  font-size: clamp(28px, 3.2vw, 44px) !important;
}

/* Hero inner: grid 2 colunas — conteúdo | contadores */
html body.page-template-page-sala-de-imprensa .si-hero > div {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  grid-template-rows: auto auto auto !important;
  column-gap: 60px !important;
  align-items: end !important;
}
/* Eyebrow: col 1, linha 1 */
html body.page-template-page-sala-de-imprensa .si-ey {
  grid-column: 1 !important;
  grid-row: 1 !important;
}
/* H1wrap: col 1, linha 2 */
html body.page-template-page-sala-de-imprensa .dp-imp-h1wrap {
  grid-column: 1 !important;
  grid-row: 2 !important;
}
/* Subtítulo (p): col 1, linha 3 */
html body.page-template-page-sala-de-imprensa .si-hero > div > p {
  grid-column: 1 !important;
  grid-row: 3 !important;
  max-width: 560px !important;
}
/* Contadores .si-st: col 2, linhas 1-3 (lado oposto, alinhado ao fundo) */
html body.page-template-page-sala-de-imprensa .si-st {
  grid-column: 2 !important;
  grid-row: 1 / 4 !important;
  align-self: end !important;
  border-top: none !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  border-left: .5px solid rgba(255,255,255,.12) !important;
  padding-left: 40px !important;
  text-align: right !important;
}
html body.page-template-page-sala-de-imprensa .si-st > div {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
}
html body.page-template-page-sala-de-imprensa .si-sn {
  font-size: clamp(28px, 2.8vw, 36px) !important;
}

/* ── Filtros: padrão estético do blog toolbar ─────────────────── */
html body.page-template-page-sala-de-imprensa .si-fi {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  padding: 12px 40px !important;
  background: #ffffff !important;
  border-bottom: .5px solid #E8E4E0 !important;
  border-top: none !important;
}

/* Label "Filtrar:" */
html body.page-template-page-sala-de-imprensa .si-fi .si-fl {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  flex-shrink: 0 !important;
  margin-right: 4px !important;
}

/* Pills */
html body.page-template-page-sala-de-imprensa .si-fi a.si-fb {
  padding: 5px 12px !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  text-decoration: none !important;
  flex-shrink: 0 !important;
  background: transparent !important;
  color: #808080 !important;
  border: .5px solid #E8E4E0 !important;
  transition: background .16s, color .16s, border-color .16s !important;
}
html body.page-template-page-sala-de-imprensa .si-fi a.si-fb:hover {
  color: #1C1C1E !important;
  border-color: #1C1C1E !important;
}
html body.page-template-page-sala-de-imprensa .si-fi a.si-fb.atv,
html body.page-template-page-sala-de-imprensa .si-fi a.si-fb.active {
  background: #E04B2A !important;
  color: #ffffff !important;
  border-color: #E04B2A !important;
}

@media (max-width: 1024px) {
  html body.page-template-page-sala-de-imprensa .si-hero > div {
    grid-template-columns: 1fr !important;
  }
  html body.page-template-page-sala-de-imprensa .si-st {
    grid-column: 1 !important;
    grid-row: 4 !important;
    border-left: none !important;
    border-top: .5px solid rgba(255,255,255,.12) !important;
    padding-left: 0 !important;
    padding-top: 20px !important;
    flex-direction: row !important;
    text-align: left !important;
  }
  html body.page-template-page-sala-de-imprensa .si-st > div {
    align-items: flex-start !important;
  }
}

/* ── Sala de Imprensa: fix grid col 2 com largura fixa ── */
html body.page-template-page-sala-de-imprensa .si-hero > div {
  grid-template-columns: 1fr 220px !important;
}
/* Remove width override do si-st que travava em 1320px */
html body.page-template-page-sala-de-imprensa .si-st {
  width: auto !important;
  min-width: 0 !important;
}

/* ================================================================
   SALA DE IMPRENSA: hero 2 colunas correto
   H1 linha unica - contadores em linha horizontal - escopo restrito
================================================================ */
html body.page-template-page-sala-de-imprensa .si-hero h1 br {
  display: none !important;
}
html body.page-template-page-sala-de-imprensa .si-hero h1 {
  white-space: nowrap !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  margin-bottom: 0 !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > div > p,
html body.page-template-page-sala-de-imprensa .si-hero > div:first-child > p {
  margin-top: 16px !important;
  margin-bottom: 0 !important;
}
html body.page-template-page-sala-de-imprensa .si-hero {
  display: grid !important;
  grid-template-columns: 1fr 340px !important;
  gap: 48px !important;
  align-items: center !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > div:not(.si-st) {
  display: block !important;
  width: auto !important;
  max-width: none !important;
  grid-column: 1 !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > .si-st,
html body.page-template-page-sala-de-imprensa .si-hero .si-st {
  grid-column: 2 !important;
  display: flex !important;
  flex-direction: row !important;
  gap: 28px !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-top: none !important;
  border-left: 0.5px solid rgba(255,255,255,0.15) !important;
  padding-left: 28px !important;
  box-sizing: border-box !important;
}
html body.page-template-page-sala-de-imprensa .si-st > div {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  flex-shrink: 0 !important;
}
html body.page-template-page-sala-de-imprensa .si-sn {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(32px, 3.2vw, 44px) !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  line-height: 1 !important;
  display: block !important;
}
html body.page-template-page-sala-de-imprensa .si-sl {
  font-family: "Raleway", sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.5) !important;
  margin-top: 5px !important;
  display: block !important;
  white-space: nowrap !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > svg {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
  grid-column: 1 / 3 !important;
  grid-row: 1 !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > span.dp-imp-bg-done {
  display: none !important;
}
@media (max-width: 900px) {
  html body.page-template-page-sala-de-imprensa .si-hero {
    grid-template-columns: 1fr !important;
  }
  html body.page-template-page-sala-de-imprensa .si-hero .si-st {
    grid-column: 1 !important;
    border-left: none !important;
    border-top: 0.5px solid rgba(255,255,255,0.15) !important;
    padding-left: 0 !important;
    padding-top: 20px !important;
    justify-content: flex-start !important;
  }
}
/* SI-CTA: ancora bg + terracota btn */
html body.page-template-page-sala-de-imprensa .si-cta { background-color: #1C1C1E !important; }
html body.page-template-page-sala-de-imprensa .si-cta .si-btn { background-color: #E04B2A !important; color: #ffffff !important; border-color: #E04B2A !important; }
html body.page-template-page-sala-de-imprensa .si-cta h2, html body.page-template-page-sala-de-imprensa .si-cta h3, html body.page-template-page-sala-de-imprensa .si-cta p { color: #ffffff !important; }
/* ================================================================
   SALA DE IMPRENSA: correcoes de alinhamento
   - justify-content: start (remove space-between do tema)
   - width:100% no inner div (evita centralizacao na coluna)
   - padding-bottom consistente com demais heroes
   - si-st align-self: center (verticalmente centrado)
================================================================ */
html body.page-template-page-sala-de-imprensa .si-hero {
  justify-content: start !important;
  padding-bottom: 56px !important;
  align-items: center !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > div:not(.si-st) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  grid-column: 1 !important;
  align-self: center !important;
}
html body.page-template-page-sala-de-imprensa .si-hero > .si-st,
html body.page-template-page-sala-de-imprensa .si-hero .si-st {
  align-self: center !important;
  align-items: flex-start !important;
  justify-content: center !important;
}
html body.page-template-page-sala-de-imprensa .si-st > div {
  align-items: center !important;
}
/* ================================================================
   SALA DE IMPRENSA: si-grid - remove padrao calcario antigo
   Substitui por morfologias da nova marca
================================================================ */
html body.page-template-page-sala-de-imprensa .si-grid {
  background-image: none !important;
  position: relative !important;
  overflow: hidden !important;
}
html body.page-template-page-sala-de-imprensa .si-grid > .dp-si-morph {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
html body.page-template-page-sala-de-imprensa .si-grid > * {
  position: relative !important;
  z-index: 1 !important;
}
html body.page-template-page-sala-de-imprensa .si-grid > .dp-si-morph {
  z-index: 0 !important;
}
/* Sala de Imprensa: paginacao centralizada */
html body.page-template-page-sala-de-imprensa .si-pg {
  justify-content: center !important;
  gap: 32px !important;
}
/* Clipping: alinha titulo ao padrao das demais paginas (56px da borda) */
html body.page-template-page-clipping .cl-hero .wrap {
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
}
html body.page-template-page-clipping .cl-hero .wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* ================================================================
   PORTAL DE PRIVACIDADE (page-id-165) — hero padrao ancora
   Escopo restrito: html body.page-id-165
================================================================ */
html body.page-id-165 section.section {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
html body.page-id-165 section.section > .container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
html body.page-id-165 .post-content {
  padding-top: 0 !important;
}
html body.page-id-165 .pp-hero {
  background-color: #1C1C1E !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 120px 56px 64px !important;
  margin-top: 0 !important;
}
html body.page-id-165 .pp-hero::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: #E04B2A !important;
  z-index: 10 !important;
}
html body.page-id-165 .pp-hero > svg {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
html body.page-id-165 .pp-hero > * {
  position: relative !important;
  z-index: 1 !important;
}
html body.page-id-165 .pp-eyebrow {
  color: #E04B2A !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  margin-bottom: 18px !important;
}
html body.page-id-165 .pp-eyebrow::before {
  content: "" !important;
  display: inline-block !important;
  width: 22px !important;
  height: 1.5px !important;
  background: #E04B2A !important;
  flex-shrink: 0 !important;
}
html body.page-id-165 .pp-h1 {
  font-family: "Playfair Display", Georgia, serif !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  line-height: 1.06 !important;
  margin-bottom: 0 !important;
  white-space: nowrap !important;
}
html body.page-id-165 .pp-h1 br { display: none !important; }
html body.page-id-165 .pp-lead {
  color: rgba(255,255,255,0.65) !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.78 !important;
  max-width: 640px !important;
  margin-top: 14px !important;
  margin-bottom: 0 !important;
}
html body.page-id-165 .pp-strip {
  background-color: #E04B2A !important;
  color: #ffffff !important;
}
html body.page-id-165 .pp-strip * {
  color: #ffffff !important;
}
html body.page-id-165 .pp-wrap {
  padding: 0 !important;
}
html body.page-id-165 .pp-sl,
html body.page-id-165 .pp-docflex {
  padding-left: 56px !important;
  padding-right: 56px !important;
}
@media (max-width: 767px) {
  html body.page-id-165 .pp-hero { padding: 48px 24px 40px !important; }
  html body.page-id-165 .pp-sl, html body.page-id-165 .pp-docflex { padding-left: 24px !important; padding-right: 24px !important; }
}
/* Privacidade: hero cancela padding do container para ir de borda a borda */
html body.page-id-165 .pp-hero {
  margin-left: -56px !important;
  margin-right: -56px !important;
}
/* ================================================================
   PORTAL DE PRIVACIDADE: fixes + tipografia + paleta conteudo
================================================================ */
html body.page-id-165 .pp-eyebrow {
  color: rgba(255,255,255,0.65) !important;
}
html body.page-id-165 section.section {
  background-color: #ffffff !important;
}
html body.page-id-165 .pp-strip {
  padding-left: 56px !important;
  padding-right: 56px !important;
}
html body.page-id-165 .pp-sl {
  font-family: "Raleway", sans-serif !important;
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  display: block !important;
  margin-top: 32px !important;
  margin-bottom: 12px !important;
}
html body.page-id-165 .pp-docflex,
html body.page-id-165 .pp-infoflex {
  background-color: #F8F6F4 !important;
  border-radius: 3px !important;
  border: .5px solid #E8E4E0 !important;
}
html body.page-id-165 .pp-rlist,
html body.page-id-165 .pp-rlist li,
html body.page-id-165 .pp-nota,
html body.page-id-165 .pp-flow,
html body.page-id-165 .pp-acc-item {
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  color: #1C1C1E !important;
}
html body.page-id-165 .pp-nota {
  background-color: #F8F6F4 !important;
  border-left: 2px solid #E04B2A !important;
  border-radius: 0 2px 2px 0 !important;
  padding: 10px 14px !important;
  font-size: 12.5px !important;
  color: #808080 !important;
}
html body.page-id-165 .pp-divb {
  height: 24px !important;
  border: none !important;
  padding: 0 !important;
  background: transparent !important;
}
html body.page-id-165 .pp-acc-item {
  border-bottom: .5px solid #E8E4E0 !important;
  padding: 16px 0 !important;
  background: transparent !important;
}
html body.page-id-165 .pp-acc-item summary {
  font-family: "Lora", Georgia, serif !important;
  font-size: 16px !important;
  color: #1C1C1E !important;
  cursor: pointer !important;
  list-style: none !important;
}
html body.page-id-165 .pp-acc-item[open] summary {
  color: #E04B2A !important;
}
html body.page-id-165 .pp-docflex *,
html body.page-id-165 .pp-infoflex * {
  font-family: "DM Sans", sans-serif !important;
  color: #1C1C1E !important;
}
html body.page-id-165 .pp-flow {
  font-family: "DM Sans", sans-serif !important;
  font-size: 13px !important;
  color: #808080 !important;
  background: #F8F6F4 !important;
  border-radius: 3px !important;
  padding: 12px 16px !important;
  border: .5px solid #E8E4E0 !important;
}
/* ================================================================
   PRIVACIDADE v2: fontes DM Sans · padding fix · footer gap
================================================================ */
html body.page-id-165 .pp-eyebrow {
  font-family: "Raleway", sans-serif !important;
  color: rgba(255,255,255,0.65) !important;
}
html body.page-id-165 .pp-h1 {
  font-family: "Playfair Display", Georgia, serif !important;
  color: #ffffff !important;
  white-space: nowrap !important;
  font-size: clamp(32px, 4vw, 52px) !important;
}
html body.page-id-165 .pp-lead {
  font-family: "DM Sans", sans-serif !important;
  color: rgba(255,255,255,0.65) !important;
}
html body.page-id-165 .pp-wrap * {
  font-family: "DM Sans", sans-serif !important;
}
html body.page-id-165 .pp-eyebrow {
  font-family: "Raleway", sans-serif !important;
}
html body.page-id-165 .pp-h1 {
  font-family: "Playfair Display", Georgia, serif !important;
}
html body.page-id-165 .pp-sl {
  font-family: "Raleway", sans-serif !important;
}
html body.page-id-165 .pp-acc-item summary {
  font-family: "Lora", Georgia, serif !important;
}
html body.page-id-165 .pp-strip {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
html body.page-id-165 .pp-wrap {
  padding-bottom: 80px !important;
}
html body.page-id-165 section.section {
  padding-bottom: 0 !important;
}
html body.page-id-165 .pp-docflex,
html body.page-id-165 .pp-infoflex {
  padding: 16px 20px !important;
  background-color: #F8F6F4 !important;
  border: .5px solid #E8E4E0 !important;
  border-radius: 3px !important;
}
html body.page-id-165 .pp-nota {
  padding: 10px 14px !important;
  background-color: #F8F6F4 !important;
  border-left: 2px solid #E04B2A !important;
  border-radius: 0 2px 2px 0 !important;
}
html body.page-id-165 .pp-flow {
  padding: 12px 16px !important;
  background-color: #F8F6F4 !important;
  border: .5px solid #E8E4E0 !important;
  border-radius: 3px !important;
}
html body.page-id-165 .pp-acc-item {
  border-bottom: .5px solid #E8E4E0 !important;
  padding: 16px 0 !important;
  background: transparent !important;
}
html body.page-id-165 .pp-acc-item summary {
  font-size: 16px !important;
  color: #1C1C1E !important;
  cursor: pointer !important;
}
html body.page-id-165 .pp-acc-item[open] summary {
  color: #E04B2A !important;
}
html body.page-id-165 .pp-rlist {
  font-size: 14px !important;
  line-height: 1.75 !important;
  color: #1C1C1E !important;
}
html body.page-id-165 .pp-sl {
  font-size: 7px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  display: block !important;
  margin-top: 32px !important;
  margin-bottom: 12px !important;
}
html body.page-id-165 .pp-divb {
  height: 24px !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
/* ================================================================
   BUSCA + MENU MOBILE: versao clara
================================================================ */
#search-overlay {
  background-color: rgba(242, 242, 245, 0.97) !important;
  backdrop-filter: blur(12px) !important;
}
#search-overlay .so-close {
  color: rgba(28,28,30,0.5) !important;
}
#search-overlay .so-close:hover {
  color: #1C1C1E !important;
}
#search-overlay .so-label {
  color: rgba(28,28,30,0.55) !important;
  font-family: "Raleway", sans-serif !important;
}
#search-overlay form input[type="search"],
#search-overlay form input[type="text"],
#search-overlay form input {
  background-color: rgba(28,28,30,0.07) !important;
  color: #1C1C1E !important;
  border-color: rgba(28,28,30,0.2) !important;
  caret-color: #E04B2A !important;
}
#search-overlay form input::placeholder {
  color: rgba(28,28,30,0.4) !important;
}
#search-overlay form button,
#search-overlay form [type="submit"] {
  color: #1C1C1E !important;
}
#search-overlay form svg {
  stroke: #1C1C1E !important;
  fill: #1C1C1E !important;
}
#search-overlay .so-hint {
  color: rgba(28,28,30,0.45) !important;
  font-family: "Raleway", sans-serif !important;
}
#mobile-menu {
  background-color: rgba(242, 242, 245, 0.97) !important;
  backdrop-filter: blur(12px) !important;
}
#mobile-menu .mm-header {
  border-bottom: .5px solid rgba(28,28,30,0.1) !important;
}
#mobile-menu .mm-logo,
#mobile-menu .mm-logo .logo-name,
#mobile-menu .mm-logo .logo-sub,
#mobile-menu .mm-logo * {
  color: #1C1C1E !important;
}
#mobile-menu .mm-logo .logo-sub {
  color: #E04B2A !important;
}
#mobile-menu .mm-close {
  color: rgba(28,28,30,0.5) !important;
}
#mobile-menu .mm-close:hover {
  color: #1C1C1E !important;
}
#mobile-menu .mm-nav li a,
#mobile-menu .mm-nav li {
  color: #1C1C1E !important;
  border-bottom-color: rgba(28,28,30,0.08) !important;
}
#mobile-menu .mm-nav li a:hover {
  color: #E04B2A !important;
}
#mobile-menu .mm-nav ul li a {
  color: rgba(28,28,30,0.7) !important;
}
#mobile-menu .mm-footer a,
#mobile-menu .mm-footer button {
  background-color: #E04B2A !important;
  color: #ffffff !important;
  border-color: #E04B2A !important;
}
#site-header .nav-toggle span,
#site-header .nav-toggle i {
  background-color: #1C1C1E !important;
}
/* Mobile menu: todos os links uppercase, Raleway */
#mobile-menu .mm-nav li a {
  text-transform: uppercase !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 8px !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
}
/* ================================================================
   SEARCH OVERLAY + MOBILE MENU: transparencia · identidade · fonte
================================================================ */
#search-overlay {
  background-color: rgba(248,246,244,0.55) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}
#mobile-menu {
  background-color: rgba(248,246,244,0.55) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}
#mobile-menu .mm-nav {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
#mobile-menu .mm-nav li {
  width: 100% !important;
  text-align: center !important;
}
#mobile-menu .mm-nav a {
  font-size: 13px !important;
  text-align: center !important;
  display: block !important;
  width: 100% !important;
  letter-spacing: .14em !important;
}
#search-overlay .so-identity {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
#search-overlay > * {
  position: relative !important;
  z-index: 1 !important;
}
#search-overlay > .so-identity {
  z-index: 0 !important;
}

/* Mobile menu: fonte maior - seletor especifico (li a supera a) */
#mobile-menu .mm-nav li a {
  font-size: 13px !important;
  letter-spacing: .12em !important;
}
/* Search overlay: corrige botao fechar + icone lupa */
#search-overlay {
  position: fixed !important;
}
#search-overlay .so-close {
  position: absolute !important;
  top: 20px !important;
  right: 24px !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 100 !important;
  cursor: pointer !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#search-overlay form button[type="submit"] {
  background-color: transparent !important;
  background: none !important;
  border: none !important;
  color: #808080 !important;
  cursor: pointer !important;
  padding: 8px !important;
}
#search-overlay form button[type="submit"]:hover {
  color: #E04B2A !important;
}
#search-overlay form button[type="submit"] svg {
  color: inherit !important;
  stroke: currentColor !important;
}

/* Home: espaçamento apos postagens da Sala de Imprensa igual ao que antecede o titulo */
.press-section-v3 {
  padding-bottom: 88px !important;
}

/* Home: espaçamento apos imprensa - seletor especifico que supera section.press-section-v3 */
body section.press-section-v3 {
  padding-bottom: 88px !important;
}
/* ================================================================
   EYEBROW PADRAO: travessao terracota + texto — todas as paginas
================================================================ */
.eyebrow::before {
  content: "" !important;
  display: inline-block !important;
  width: 22px !important;
  height: 2px !important;
  background: #E04B2A !important;
  flex-shrink: 0 !important;
  align-self: center !important;
}
.page-hero-light .eyebrow {
  color: rgba(255,255,255,0.65) !important;
}
.cl-eyebrow {
  color: rgba(255,255,255,0.65) !important;
}
.si-ey {
  color: rgba(255,255,255,0.65) !important;
}
.newsletter-section .eyebrow {
  color: rgba(255,255,255,0.65) !important;
}
.newsletter-section .eyebrow > span {
  display: none !important;
}
.press-section-v3 .eyebrow,
.section .eyebrow {
  color: #E04B2A !important;
}
.cta-section .eyebrow {
  color: rgba(255,255,255,0.65) !important;
}

/* Blog hero: linha terracota com especificidade maior */
.page-hero-light .eyebrow::before {
  background: #E04B2A !important;
  height: 2px !important;
}

/* ================================================================
   REVISAO GERAL: heroes + eyebrows + privacidade + praticas mobile
================================================================ */
/* 1. FAIXA BRANCA CLIPPING: margem nula, padding cobre header */
.page-template-page-clipping .cl-hero {
  margin-top: 0 !important;
  padding-top: 120px !important;
}
/* 2. FAIXA BRANCA IMPRENSA: contrabalanca padding-top do body/container */
.page-template-page-sala-de-imprensa .si-hero {
  margin-top: -63px !important;
  padding-top: 120px !important;
}
/* 3. FAIXA BRANCA PRIVACIDADE: margem nula, hero cobre secao imediatamente */
html body.page-id-165 .pp-hero {
  margin-top: 0 !important;
  padding-top: 120px !important;
}
/* 4. HERO H1: padroniza tamanho em todas as paginas */
.page-hero-light h1,
.cl-hero .cl-h1,
.si-hero h1 {
  font-size: clamp(32px, 3.4vw, 52px) !important;
}
/* 5. EYEBROW CLIPPING: texto branco (hero escuro) */
.cl-eyebrow {
  color: rgba(255,255,255,0.65) !important;
}
/* 6. EYEBROW IMPRENSA: texto branco (hero escuro) */
.si-ey {
  color: rgba(255,255,255,0.65) !important;
}
/* 7. HOME .eyebrow: adiciona linha terracota via ::before */
.eyebrow {
  gap: 11px !important;
  align-items: center !important;
}
.eyebrow::before {
  content: "" !important;
  display: inline-block !important;
  width: 22px !important;
  min-width: 22px !important;
  height: 2px !important;
  background-color: #E04B2A !important;
  flex-shrink: 0 !important;
  align-self: center !important;
  vertical-align: middle !important;
}
/* Secoes escuras: texto branco para contraste */
.press-section-v3 .eyebrow,
.cta-section .eyebrow,
.newsletter-section .eyebrow {
  color: rgba(255,255,255,0.65) !important;
}
/* 8. PRIVACIDADE: padding interno dos boxes (texto nao colado a borda) */
html body.page-id-165 .pp-nota {
  padding: 10px 16px 10px 16px !important;
}
html body.page-id-165 .pp-flow {
  padding: 12px 16px 12px 16px !important;
}
html body.page-id-165 .pp-docflex {
  padding: 16px 20px 16px 20px !important;
}
html body.page-id-165 .pp-infoflex {
  padding: 16px 20px 16px 20px !important;
}
/* 9. PRIVACIDADE: remove pp-divb (causador de strips coloridas) */
html body.page-id-165 .pp-divb {
  display: none !important;
}
/* 10. PP-STRIP: largura total em qualquer viewport */
html body.page-id-165 .pp-strip {
  position: relative !important;
  width: 100vw !important;
  left: 50% !important;
  right: auto !important;
  margin-left: -50vw !important;
  margin-right: 0 !important;
  padding-left: 56px !important;
  padding-right: 56px !important;
  box-sizing: border-box !important;
}
@media (max-width: 767px) {
  html body.page-id-165 .pp-strip {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
/* 11. PRATICAS MOBILE: colunas em grid passam a ser linha unica */
@media (max-width: 767px) {
  .dp-prat-v2 {
    overflow-x: hidden !important;
  }
  .dp-prat-v2 > div {
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .dp-prat-v2 svg {
    display: none !important;
  }
  .dp-prat-v2 div {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
  }
}

/* HOME: press eyebrow terracota (bg claro, nao branco) */
html body.home .press-section-v3 .eyebrow {
  color: #E04B2A !important;
}
/* HOME: CTA eyebrow linha branca (bg terracota) */
html body.home .cta-section .eyebrow::before {
  background-color: #ffffff !important;
}
/* HOME: CTA eyebrow texto branco (sobre terracota) */
html body.home .cta-section .eyebrow {
  color: rgba(255,255,255,0.9) !important;
}
/* MENU: seminegrito + cor mais legivel */
.nav-menu a {
  font-weight: 600 !important;
  color: rgba(26,26,34,0.85) !important;
}
.nav-menu a:hover {
  color: #E04B2A !important;
}

/* FOOTER BOTTOM: 2 colunas */
.dp-footer-bottom {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  padding: 16px 40px !important;
  gap: 20px !important;
}
.dp-fb-col1, .dp-fb-col2 {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
}
.dp-fb-col2 { text-align: right !important; }
.dp-fb-col1 span, .dp-fb-col2 span {
  font-size: 9.5px !important;
  color: rgba(255,255,255,0.32) !important;
  font-family: "Raleway", sans-serif !important;
  letter-spacing: .05em !important;
  line-height: 1.6 !important;
  display: block !important;
}
/* Link Portal de Privacidade na coluna Contato */
.dp-f-contato .dp-priv-link {
  display: block !important;
  font-size: 9.5px !important;
  color: rgba(255,255,255,0.35) !important;
  font-family: "Raleway", sans-serif !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  margin-top: 12px !important;
  padding-top: 10px !important;
  border-top: .5px solid rgba(255,255,255,0.1) !important;
}
.dp-f-contato .dp-priv-link:hover { color: #E04B2A !important; }
@media (max-width:767px){
  .dp-footer-bottom { flex-direction:column !important; padding:12px 20px !important; }
  .dp-fb-col2 { text-align:left !important; }
}

/* ================================================================
   HEROES: padronizacao completa vs referencia Sobre
================================================================ */
/* 1. Blog + Contato: eyebrow alpha 0.55 -> 0.65 (last !important wins) */
html body.blog .page-hero-light .eyebrow,
html body.blog .page-hero-light [class*="eyebrow"],
html body.page-template-page-contato .page-hero-light .eyebrow {
  color: rgba(255,255,255,0.65) !important;
}
/* 2. Blog: lead color alpha 0.75 -> 0.65 */
html body.blog .page-hero-light p {
  color: rgba(255,255,255,0.65) !important;
}
/* 3. Clipping: lead font Jost -> DM Sans + pb 64 -> 56 */
html body.page-template-page-clipping .cl-hero p,
html body.page-template-page-clipping .cl-lead {
  font-family: "DM Sans", sans-serif !important;
}
html body.page-template-page-clipping .cl-hero {
  padding-bottom: 56px !important;
}
/* 4. Privacidade: pb 64 -> 56 */
html body.page-id-165 .pp-hero {
  padding-bottom: 56px !important;
}
/* 5. Imprensa si-st: remove grid-row 1/4 span, ancora ao bottom da celula */
html body.page-template-page-sala-de-imprensa .si-hero > .si-st {
  grid-row: 1 !important;
  align-self: end !important;
}

/* Imprensa: override mobile — counter ABAIXO do titulo (max-width 1024px supera grid-row:1 global) */
@media (max-width: 1024px) {
  html body.page-template-page-sala-de-imprensa .si-hero > .si-st {
    grid-row: 4 !important;
    grid-column: 1 !important;
    align-self: auto !important;
  }
}

/* Praticas mobile: restaura SVG icones (flex-shrink) ocultados pela regra anterior */
/* Os SVG background (pointer-events:none, position:absolute) continuam ocultos */
@media (max-width: 1024px) {
  .dp-prat-v2 svg[style*="flex-shrink"] {
    display: block !important;
  }
}

/* Praticas mobile: oculta SVGs bg (pointer-events:none) que foram restaurados pelo flex-shrink rule */
@media (max-width: 1024px) {
  .dp-prat-v2 svg[style*="pointer-events:none"] {
    display: none !important;
  }
}

/* ================================================================
   MOBILE FINAL FIXES: timeline SVGs + Imprensa paddingTop + gap
================================================================ */
@media (max-width: 1024px) {
  /* Praticas: restaura SVGs da linha do tempo (style="display: block;") */
  .dp-prat-v2 .dp-timeline svg {
    display: block !important;
  }
  /* Imprensa: padding-top adequado — supera regra 44px de menor especificidade */
  html body.page-template-page-sala-de-imprensa .si-hero {
    padding-top: 96px !important;
  }
  /* Imprensa: si-st em grid-row 2 (nao 4) — elimina 2 rows vazias e 144px de gap */
  html body.page-template-page-sala-de-imprensa .si-hero > .si-st {
    grid-row: 2 !important;
  }
}

/* ================================================================
   DP — SISTEMA DE LIKES v3
   Badge estilo mockup + layout dp-post-bottom + ranking sidebar
================================================================ */

/* ── dp-post-bottom: like ao lado de Compartilhar ──────────── */
.dp-post-bottom {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}
.dp-likes-in-share {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
}
.dp-likes-in-share .post-share {
  flex: 1 !important;
}

/* ── Botão like na postagem (ao lado do compartilhar) ──────── */
.dp-like-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 14px 5px 10px;
  background: rgba(224,75,42,0.07) !important;
  border: 1px solid rgba(224,75,42,0.22) !important;
  border-radius: 24px !important;
  color: #E04B2A !important;
  font-family: 'Raleway', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
  outline: none;
  -webkit-tap-highlight-color: transparent;
  user-select: none;
  white-space: nowrap;
}
.dp-like-btn:hover {
  background: rgba(224,75,42,0.14);
  border-color: rgba(224,75,42,0.45);
}
.dp-like-btn.liked {
  background: #E04B2A !important;
  border-color: #E04B2A !important;
  color: #ffffff !important;
}

/* ── SVG coração ────────────────────────────────────────────── */
.dp-like-btn .dp-heart {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2px;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: fill 0.15s ease, transform 0.12s ease;
  flex-shrink: 0;
}
.dp-like-btn.liked .dp-heart {
  fill: #ffffff;
  stroke: #ffffff;
}

/* ── Animação coração (Instagram burst) ─────────────────────── */
@keyframes dp-heart-burst {
  0%   { transform: scale(1); }
  20%  { transform: scale(1.45); }
  40%  { transform: scale(0.85); }
  60%  { transform: scale(1.2); }
  80%  { transform: scale(0.96); }
  100% { transform: scale(1); }
}
.dp-like-btn.animating .dp-heart {
  animation: dp-heart-burst 0.52s cubic-bezier(0.36,0.07,0.19,0.97);
}

/* ── Partículas sparkle ─────────────────────────────────────── */
@keyframes dp-sparkle {
  0%   { transform: translate(0,0) scale(0.2); opacity:1; }
  100% { transform: translate(var(--tx), var(--ty)) scale(1); opacity:0; }
}
.dp-sparkle {
  position: fixed;
  pointer-events: none;
  width: 5px; height: 5px;
  border-radius: 50%;
  background: #E04B2A;
  z-index: 9999;
  animation: dp-sparkle 0.55s ease-out forwards;
}

/* ── Contador no botão ──────────────────────────────────────── */
.dp-like-btn .dp-like-count {
  font-family: 'Playfair Display', serif;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 0;
  transition: transform 0.1s ease, opacity 0.1s ease;
  min-width: 16px;
  text-align: center;
}

/* ── Badge nos cards (blog + home) ─────────────────────────── */
.dp-card-like {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: #808080;
  font-family: 'DM Sans', sans-serif;
  font-weight: 400;
  transition: color 0.15s;
}
.dp-card-like svg {
  width: 11px; height: 11px;
  fill: #BDBDBD;
  flex-shrink: 0;
  transition: fill 0.15s;
}
.dp-card-like.has-likes { color: #E04B2A; }
.dp-card-like.has-likes svg { fill: #E04B2A; }

/* ── Sidebar: widget ranking ────────────────────────────────── */
.dp-sidebar-likes-ranking {
  margin-bottom: 32px;
}
.dp-slr-title {
  font-family: 'Raleway', sans-serif;
  font-size: 9px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: #E04B2A;
  font-weight: 700;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.dp-slr-title::after {
  content: ''; flex: 1;
  height: 1px; background: #E8E4E0;
}
.dp-slr-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid #E8E4E0;
  text-decoration: none;
}
.dp-slr-item:last-child { border-bottom: none; }
.dp-slr-rank {
  font-family: 'Playfair Display', serif;
  font-size: 22px;
  font-weight: 400;
  color: rgba(0,0,0,0.08);
  line-height: 1;
  flex-shrink: 0;
  width: 22px;
  text-align: center;
}
.dp-slr-info { flex: 1; min-width: 0; }
.dp-slr-post-title {
  font-size: 12.5px;
  color: #1C1C1E;
  line-height: 1.4;
  margin-bottom: 4px;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dp-slr-item:hover .dp-slr-post-title { color: #E04B2A; }
.dp-slr-count {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 10.5px;
  color: #E04B2A;
}
.dp-slr-count svg { width: 10px; height: 10px; fill: #E04B2A; }

/* Mobile */
@media (max-width: 767px) {
  .dp-like-btn { font-size: 11px; padding: 5px 12px 5px 9px; }
  .dp-like-btn .dp-heart { width: 14px; height: 14px; }
  .dp-like-btn .dp-like-count { font-size: 14px; }
}

/* ================================================================
   LIKES v3 — CORRECOES VISUAIS
   share compacto + disclaimer borda unica + like na direita
   fonte DM Sans estilo Instagram + home like oposto a categoria
================================================================ */

/* 1. Row like+share: like na DIREITA, share na ESQUERDA ---------- */
.dp-share-like-row,
.dp-likes-in-share {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  flex-wrap: nowrap !important;
  border-top: none !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}
/* Like button empurrado para a direita */
.dp-share-like-row > .dp-like-btn,
.dp-likes-in-share > .dp-like-btn {
  order: 9 !important;
  flex-shrink: 0 !important;
  margin-left: auto !important;
}
/* Wrapper do post-share fica na esquerda */
.dp-share-like-row > div:first-child {
  flex: 1 !important;
  min-width: 0 !important;
  max-width: calc(100% - 80px) !important;
}

/* 2. .post-share: botoes compact em linha ----------------------- */
html body .post-share {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  height: auto !important;
  max-height: none !important;
}

/* 3. share-label: compacto e inline ----------------------------- */
html body .share-label {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  margin-right: 2px !important;
}

/* 4. dp-print-wrap: inline compacto (era 118px) ----------------- */
html body .dp-print-wrap {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 34px !important;
  width: 34px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}
html body .dp-print-wrap * {
  max-height: 34px !important;
  overflow: hidden !important;
}

/* 5. Disclaimer: apenas border-bottom (sem linhas duplas) ------- */
html body.single .dp-post-disclaimer,
html body.single-post .dp-post-disclaimer {
  border-top: none !important;
  border-bottom: 1px solid #E8E4E0 !important;
  padding-bottom: 14px !important;
  margin-bottom: 14px !important;
  margin-top: 0 !important;
}

/* 6. Fonte Instagram: DM Sans numerico no like button ----------- */
.dp-like-btn {
  font-family: 'DM Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}
.dp-like-btn .dp-like-count {
  font-family: 'DM Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: -0.2px !important;
  font-variant-numeric: tabular-nums !important;
}
.dp-like-btn .dp-like-label {
  font-family: 'DM Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.1px !important;
  text-transform: none !important;
}

/* 7. Home: badge like oposto a categoria ----------------------- */
html body.home .post-cat {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  flex-wrap: nowrap !important;
}
html body.home .post-cat .dp-card-like {
  margin-left: auto !important;
  flex-shrink: 0 !important;
  padding-left: 8px !important;
}
/* badge card: fonte DM Sans */
.dp-card-like {
  font-family: 'DM Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
}

/* share-label: remove padding/margin/border de eyebrow anterior */
html body .share-label {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  border-top: none !important;
  border-bottom: none !important;
}

/* share-label v2: especificidade maxima para superar BeTheme */
html body .post-share .share-label,
html body .dp-share-like-row .share-label,
html body .dp-likes-in-share .share-label {
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  height: auto !important;
  min-height: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  font-size: 11px !important;
  white-space: nowrap !important;
}

/* share-label: ocultar texto -- icones sao autoexplicativos com tooltips */
html body .post-share .share-label {
  display: none !important;
}
/* post-share: icones em linha unica sem wrap */
html body .post-share {
  flex-wrap: nowrap !important;
  align-items: center !important;
}

/* ================================================================
   MOBILE FIXES v2: share visivel + sidebar sem clipping
================================================================ */
@media (max-width: 1024px) {

  /* ── Share row mobile: like + icons em linha ─────────────── */
  html body.single .dp-share-like-row,
  html body.single-post .dp-share-like-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 12px 0 !important;
  }

  /* ── Post-share: forcadamente visivel no mobile ──────────── */
  html body.single .post-share,
  html body.single-post .post-share {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    overflow: visible !important;
    height: auto !important;
  }
  html body.single .post-share a,
  html body.single-post .post-share a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* ── Sidebar e widgets: sem overflow que corta conteudo ───── */
  html body.single aside,
  html body.single-post aside,
  html body.single .sidebar,
  html body.single-post .sidebar {
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
  }
  html body.single aside > div,
  html body.single-post aside > div,
  html body.single .sidebar > div,
  html body.single-post .sidebar > div {
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
  }
  /* Newsletter especificamente */
  html body.single .dp-sidebar-newsletter,
  html body.single-post .dp-sidebar-newsletter {
    overflow: visible !important;
    max-height: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  html body.single .dp-sidebar-newsletter *,
  html body.single-post .dp-sidebar-newsletter * {
    max-width: 100% !important;
    overflow: visible !important;
  }
}

/* ================================================================
   POST-SHARE: remove padding/margin do BeTheme dentro do share row
================================================================ */
html body.single .dp-share-like-row .post-share,
html body.single-post .dp-share-like-row .post-share {
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  flex: 1 !important;
}
html body.single .dp-share-like-row,
html body.single-post .dp-share-like-row {
  padding: 14px 0 !important;
  border-top: 1px solid #E8E4E0 !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 14px !important;
}
/* child wrapper do post-share: sem padding/margin extra */
html body.single .dp-share-like-row > div,
html body.single-post .dp-share-like-row > div {
  padding: 0 !important;
  margin: 0 !important;
  flex: 1 !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
}

/* ================================================================
   NEWSLETTER SIDEBAR + MOBILE SIDEBAR: fix overflow
================================================================ */

/* Desktop + Mobile: newsletter sem clipping */
.dp-sidebar-newsletter {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
}
.dp-sidebar-newsletter * {
  max-width: 100% !important;
}

/* Mobile: sidebar pai sem max-height que corta */
@media (max-width: 1024px) {
  html body.single aside > div,
  html body.single-post aside > div {
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
  }
  html body.single aside,
  html body.single-post aside {
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
  }
}

/* ================================================================
   SHARE BUTTONS: tamanho compacto + label "Compartilhar"
   FOOTER MOBILE: ambas colunas alinhadas ao centro
================================================================ */

/* ── Share: ícones compactos (24x24) ───────────────────────── */
html body.single .post-share a,
html body.single-post .post-share a {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  min-height: 28px !important;
  border-radius: 14px !important;
  padding: 0 !important;
}
html body.single .post-share a svg,
html body.single-post .post-share a svg,
html body.single .post-share a img,
html body.single-post .post-share a img {
  width: 14px !important;
  height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
}

/* ── Share: label "Compartilhar" visível e estilizado ──────── */
html body.single .dp-share-like-row .share-label,
html body.single-post .dp-share-like-row .share-label {
  display: flex !important;
  align-items: center !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 9px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  color: #808080 !important;
  white-space: nowrap !important;
  margin-right: 2px !important;
  flex-shrink: 0 !important;
}

/* ── Footer mobile: ambas colunas centralizadas ────────────── */
@media (max-width: 767px) {
  .dp-footer-bottom {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 12px !important;
  }
  .dp-fb-col1,
  .dp-fb-col2 {
    text-align: center !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .dp-fb-col1 span,
  .dp-fb-col2 span {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
  }
}

/* ================================================================
   RANKING SIDEBAR v2: count-first + titulo completo sem truncamento
================================================================ */

/* Item: flex row, count badge + titulo */
.dp-slr-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid #E8E4E0 !important;
  text-decoration: none !important;
}
.dp-slr-item:last-child { border-bottom: none !important; }

/* Count badge: numero destaque + icone */
.dp-slr-item .dp-slr-count {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  flex-shrink: 0 !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #E04B2A !important;
  min-width: 36px !important;
  padding-top: 1px !important;
}
.dp-slr-item .dp-slr-count svg {
  width: 11px !important;
  height: 11px !important;
  fill: #E04B2A !important;
  flex-shrink: 0 !important;
}

/* Titulo: quebra normal, sem ellipsis, titulo completo */
.dp-slr-item .dp-slr-post-title {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #1C1C1E !important;
  line-height: 1.5 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  display: block !important;
}
.dp-slr-item:hover .dp-slr-post-title { color: #E04B2A !important; }

/* Remove dp-slr-rank e dp-slr-info antigos se existirem */
.dp-slr-rank { display: none !important; }
.dp-slr-info { display: contents !important; }

/* ================================================================
   RANKING: fonte Instagram-style (Raleway Bold) para a numeracao
================================================================ */
.dp-sidebar-likes-ranking .dp-slr-count {
  font-family: 'Raleway', 'Raleway', sans-serif !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #E04B2A !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  flex-shrink: 0 !important;
  min-width: 40px !important;
  letter-spacing: -0.5px !important;
  line-height: 1 !important;
}
.dp-sidebar-likes-ranking .dp-slr-count svg {
  width: 12px !important;
  height: 12px !important;
  fill: #E04B2A !important;
  flex-shrink: 0 !important;
  margin-top: 1px !important;
}
/* Mobile share: restaura icone de impressao (era oculto por omissao) */
html body.single .post-share a[title="Imprimir"],
html body.single-post .post-share a[title="Imprimir"] {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* ================================================================
   SHARE: separador | + print icon isolado
   RANKING: badge estilo dp-like-btn com contagem
================================================================ */

/* Espacamento antes do icone de impressao — sem separador visual */
.dp-share-sep { display: none !important; }

/* Print icon: espacamento extra a esquerda, sem separador */
.dp-print-only {
  background: rgba(0,0,0,0.06) !important;
  border-radius: 14px !important;
  margin-left: 8px !important;
}
.dp-print-only svg,
.dp-print-only path {
  fill: #808080 !important;
}

/* ── RANKING: badge igual ao like-btn com contagem ─────────── */
.dp-slr-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid #E8E4E0 !important;
  text-decoration: none !important;
}
.dp-slr-item:last-child { border-bottom: none !important; }

/* Badge: replica dp-like-btn compacto */
.dp-slr-item .dp-slr-count {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 4px 10px 4px 8px !important;
  background: rgba(224,75,42,0.08) !important;
  border: 1px solid rgba(224,75,42,0.2) !important;
  border-radius: 20px !important;
  color: #E04B2A !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  min-width: auto !important;
}
.dp-slr-item .dp-slr-count svg {
  width: 11px !important;
  height: 11px !important;
  fill: #E04B2A !important;
  flex-shrink: 0 !important;
  stroke: none !important;
}
.dp-slr-item:hover .dp-slr-count {
  background: #E04B2A !important;
  color: #ffffff !important;
}
.dp-slr-item:hover .dp-slr-count svg {
  fill: #ffffff !important;
}

/* Titulo no ranking: texto completo, sem truncamento */
.dp-slr-item .dp-slr-post-title {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #1C1C1E !important;
  line-height: 1.5 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  display: block !important;
  flex: 1 !important;
}
.dp-slr-item:hover .dp-slr-post-title { color: #E04B2A !important; }
.dp-slr-rank { display: none !important; }

/* ================================================================
   DP v9 — CORREÇÕES 08/04/2026
   C2: Compartilhamento — print oculto em mobile
   C3-A: Contraste — opacidade textos secundários
================================================================ */

/* C2 — Ícone de impressão: ocultar em mobile (dp-print-only-mobile-fix) */
@media (max-width: 767px) {
  .post-share .dp-print-only {
    display: none !important;
  }
}

/* C3-A — Contraste: textos com opacity 0.55 elevados para 0.70 */
/* Áreas de atuação na home */
.dp-atuacao-lead, .dp-servico-desc, .dp-area-desc {
  opacity: 0.70 !important;
}
/* Sala de Imprensa — textos secundários */
.si-lead, .si-desc, .si-subtitle {
  opacity: 0.70 !important;
}
/* Fallback genérico: qualquer texto com opacity 0.55 inline nos blocos */
.home .dp-section p[style*="opacity: 0.55"],
.home .dp-section span[style*="opacity: 0.55"],
.page-template-page-sala-de-imprensa p[style*="opacity: 0.55"] {
  opacity: 0.70 !important;
}


/* DP — Oculta label "Imprimir:" do dp-print-wrap */
html body.single-post div.post-share span.dp-print-wrap span.share-label,
html body.single div.post-share span.dp-print-wrap span.share-label {
  display: none !important;
}


/* DP — Sidebar fix: remove scrollbars, height auto */
html body.single aside,
html body.single-post aside {
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
}
/* DP — Sidebar: oculta box areas de atuacao */
html body.single aside .dp-sidebar-areas,
html body.single-post aside .dp-sidebar-areas {
  display: none !important; /* dp-sidebar-fix */
}


/* DP — Remove faixa cinza em posts singulares (body bg BeTheme) */
html body.single,
html body.single-post {
  background-color: #ffffff !important;
}

/* DP — Sidebar: sem flash de reordenação (oculta antes do JS rodar) */
html body.single aside > .dp-sidebar-areas {
  display: none !important;
}

/* ── Sidebar: ordem definitiva (flexbox order, seletor simples) ─── */
.dp-sidebar-search        { order: 1 !important; }
.dp-sidebar-cta           { order: 2 !important; }
.dp-sidebar-likes-ranking { order: 3 !important; }
.dp-sidebar-newsletter    { order: 4 !important; }
.dp-sidebar-areas         { display: none !important; }

/* == Sala de Imprensa: ocultar metricas == */
html body.page-template-page-sala-de-imprensa .si-hero .si-st,
html body.page-template-page-sala-de-imprensa .si-st.si-st { display: none !important; visibility: hidden !important; height: 0 !important; overflow: hidden !important; }


/* ═══════════════════════════════════════════════════════════════
   SOBRE — Timeline Horizontal Metodologia
   Morfologias como marcos visuais + Tipografia harmonizada
═══════════════════════════════════════════════════════════════ */

/* ── Seção Timeline ────────────────────────────────────────── */
.dp-sobre-timeline-section {
  margin: 48px 0 0 !important;
  padding: 48px 0 8px !important;
  border-top: 1px solid #E8E5E2 !important;
}
.dp-timeline-inner {
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* ── Label METODOLOGIA ─────────────────────────────────────── */
.dp-method-label {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}
.dp-method-line {
  width: 22px !important;
  height: 1.5px !important;
  background: #E04B2A !important;
  display: inline-block !important;
}
.dp-method-tag {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: #E04B2A !important;
}

/* ── Headline ──────────────────────────────────────────────── */
.dp-method-headline {
  font-family: 'Playfair Display', serif !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  color: #1C1C1E !important;
  margin-bottom: 44px !important;
  max-width: 600px !important;
}
.dp-method-headline em {
  font-style: italic !important;
  color: #E04B2A !important;
}

/* ── Timeline horizontal ───────────────────────────────────── */
.dp-sobre-timeline-row .dp-timeline {
  position: relative !important;
  display: flex !important;
  justify-content: space-between !important;
  gap: 0 !important;
}

/* Linha conectora */
.dp-sobre-timeline-row .dp-timeline::before {
  content: '' !important;
  position: absolute !important;
  top: 20px !important;
  left: 20px !important;
  right: 20px !important;
  height: 1.5px !important;
  background: linear-gradient(90deg, #E04B2A 0%, #E8E5E2 30%, #E8E5E2 70%, #E04B2A 100%) !important;
  z-index: 0 !important;
}

/* Step container */
.dp-sobre-timeline-row .dp-timeline-step {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  position: relative !important;
  z-index: 1 !important;
  padding: 0 12px !important;
}

/* Morfologia como marco */
.dp-sobre-timeline-row .dp-timeline-morph {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 18px !important;
  padding: 4px !important;
  border: 1.5px solid #E8E5E2 !important;
  transition: border-color .3s ease !important;
}
.dp-sobre-timeline-row .dp-timeline-step:hover .dp-timeline-morph {
  border-color: #E04B2A !important;
}
.dp-timeline-morph svg {
  width: 22px !important;
  height: 22px !important;
}

/* Número etapa */
.dp-sobre-timeline-row .dp-timeline-num {
  font-family: 'Raleway', sans-serif !important;
  font-size: 6px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  margin-bottom: 8px !important;
  display: block !important;
}

/* Título etapa */
.dp-sobre-timeline-row .dp-timeline-title {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #1C1C1E !important;
  margin-bottom: 8px !important;
  line-height: 1.3 !important;
}

/* Descrição etapa */
.dp-sobre-timeline-row .dp-timeline-desc {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11.5px !important;
  line-height: 1.55 !important;
  color: #808080 !important;
  max-width: 200px !important;
  margin: 0 auto !important;
}

/* ── Responsive ────────────────────────────────────────────── */
@media (max-width: 768px) {
  .dp-sobre-timeline-row .dp-timeline {
    flex-direction: column !important;
    gap: 32px !important;
    align-items: flex-start !important;
  }
  .dp-sobre-timeline-row .dp-timeline::before {
    top: 20px !important;
    bottom: 20px !important;
    left: 20px !important;
    right: auto !important;
    width: 1.5px !important;
    height: auto !important;
  }
  .dp-sobre-timeline-row .dp-timeline-step {
    flex-direction: row !important;
    text-align: left !important;
    align-items: flex-start !important;
    gap: 16px !important;
    padding: 0 !important;
  }
  .dp-timeline-morph {
    flex-shrink: 0 !important;
    margin-bottom: 0 !important;
  }
  .dp-timeline-desc {
    max-width: none !important;
    margin: 0 !important;
  }
  .dp-method-headline {
    font-size: 20px !important;
  }
}


/* ═══════════════════════════════════════════════════════════════
   SOBRE — Layout 3 colunas (foto + bio + sidebar) + fix info
═══════════════════════════════════════════════════════════════ */

/* Override: grid 3 colunas */
.sobre-grid {
  grid-template-columns: 280px 1fr 260px !important;
  grid-template-rows: auto !important;
  gap: 40px !important;
  align-items: start !important;
}

/* Override: mostrar sobre-info como sidebar */
.sobre-info {
  display: block !important;
  border-left: 1px solid #E8E5E2 !important;
  padding-left: 28px !important;
  border-top: none !important;
  padding-top: 0 !important;
}
.sobre-info-item {
  padding: 14px 0 !important;
  border-bottom: 1px solid #E8E5E2 !important;
}
.sobre-info-item:last-child {
  border-bottom: none !important;
}
.sobre-info-item .label {
  display: block !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 6.5px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  margin-bottom: 5px !important;
}
.sobre-info-item .val {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  color: #1C1C1E !important;
  line-height: 1.45 !important;
}
.sobre-info-item .val a {
  color: #E04B2A !important;
  text-decoration: none !important;
}

/* Bio content column: ajuste */
.dp-sobre-content-col {
  max-width: none !important;
  width: auto !important;
}
.sobre-bio p {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14.5px !important;
  line-height: 1.72 !important;
  color: #3A3A3C !important;
  margin-bottom: 18px !important;
}
.sobre-bio p:last-child {
  margin-bottom: 0 !important;
}

/* CTAs */
.sobre-cta {
  display: flex !important;
  gap: 12px !important;
  margin-top: 28px !important;
}
.dp-btn {
  font-family: 'Raleway', sans-serif !important;
  font-size: 7.5px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  padding: 12px 26px !important;
  border-radius: 2px !important;
  transition: all .25s ease !important;
  display: inline-block !important;
}
.dp-btn-primary {
  background: #E04B2A !important;
  color: #FFFFFF !important;
  border: 1.5px solid #E04B2A !important;
}
.dp-btn-primary:hover {
  background: #C84226 !important;
  border-color: #C84226 !important;
}
.dp-btn-outline {
  background: transparent !important;
  color: #1C1C1E !important;
  border: 1.5px solid #1C1C1E !important;
}
.dp-btn-outline:hover {
  background: #1C1C1E !important;
  color: #FFFFFF !important;
}

/* Photo column */
.dp-sobre-photo-col {
  position: sticky !important;
  top: 80px !important;
}
.dp-sobre-photo-wrap {
  border-radius: 4px !important;
  overflow: hidden !important;
  aspect-ratio: 3/4 !important;
}
.dp-sobre-real-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Responsive: 960px e abaixo */
@media (max-width: 960px) {
  .sobre-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  .dp-sobre-photo-col {
    position: static !important;
    max-width: 300px !important;
    margin: 0 auto !important;
  }
  .sobre-info {
    border-left: none !important;
    padding-left: 0 !important;
    border-top: 1px solid #E8E5E2 !important;
    padding-top: 20px !important;
  }
}


/* ═══════════════════════════════════════════════════════════════
   SOBRE — Override conflicts: sobre-info display + content-col
═══════════════════════════════════════════════════════════════ */

/* Force sobre-info visible (override .sobre-grid > .sobre-info {display:none}) */
.sobre-grid > .sobre-info {
  display: block !important;
}

/* Force content-col to block (override display:grid) */
.dp-sobre-content-col {
  display: block !important;
}

/* Fix CTAs: inline buttons, not stretched */
.sobre-cta .dp-btn,
.sobre-cta a.dp-btn {
  display: inline-block !important;
  height: auto !important;
  width: auto !important;
}

/* SOBRE — Ocultar link Imprensa duplicado injetado por JS */
.sobre-info-item.dp-imprensa-link { display: none !important; }

/* SOBRE — Correções v2: foto responsiva, texto justificado, timeline grid */
.sobre-bio p { text-align: justify !important; }
.sobre-grid .dp-sobre-timeline-row { grid-column: 1 / -1 !important; }
@media (max-width: 960px) {
  .sobre-grid .dp-sobre-photo-col { max-width: 100% !important; width: 100% !important; }
  .sobre-grid .dp-sobre-photo-wrap { width: 100% !important; max-width: 480px !important; height: auto !important; aspect-ratio: 3 / 4 !important; margin: 0 auto !important; }
  .sobre-grid .dp-sobre-real-img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
  .sobre-grid .dp-sobre-timeline-row { grid-column: 1 / -1 !important; }
  .dp-sobre-timeline-row .dp-timeline { flex-wrap: wrap !important; gap: 32px 0 !important; }
  .dp-sobre-timeline-row .dp-timeline-step { flex: 0 0 50% !important; }
  .dp-sobre-timeline-row .dp-timeline::before { display: none !important; }
}
@media (max-width: 600px) {
  .sobre-grid .dp-sobre-photo-wrap { max-width: 100% !important; }
  .dp-sobre-timeline-row .dp-timeline-step { flex: 0 0 100% !important; }
}

/* SOBRE — Grid rows explícitas: Row1=foto+bio+box, Row2=timeline */
.sobre-grid { grid-template-rows: auto auto !important; }
.sobre-grid > .dp-sobre-photo-col { grid-row: 1 !important; grid-column: 1 !important; }
.sobre-grid > .dp-sobre-content-col { grid-row: 1 !important; grid-column: 2 !important; }
.sobre-grid > .sobre-info { grid-row: 1 !important; grid-column: 3 !important; }
.sobre-grid > .dp-sobre-timeline-row { grid-row: 2 !important; grid-column: 1 / -1 !important; }
/* Responsivo: reset grid positions para stack vertical */
@media (max-width: 960px) {
  .sobre-grid > .dp-sobre-photo-col,
  .sobre-grid > .dp-sobre-content-col,
  .sobre-grid > .sobre-info,
  .sobre-grid > .dp-sobre-timeline-row {
    grid-row: auto !important;
    grid-column: 1 !important;
  }
}


/* ================================================
   SOBRE PAGE — 3-Column Layout + Timeline
   ================================================ */

/* SOBRE PAGE - MAIN WRAPPER */
.sobre-page-wrapper {
  width: 100% !important;
}

/* GRID LAYOUT */
.sobre-grid {
  display: flex !important;
  gap: 32px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 40px 0 !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* PHOTO COLUMN */
.dp-sobre-photo-col {
  flex: 0 0 260px !important;
  position: sticky !important;
  top: 80px !important;
  align-self: flex-start !important;
}

.dp-sobre-photo-wrap {
  overflow: hidden !important;
  border-radius: 4px !important;
}

.dp-sobre-real-img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* BIO + CTAs COLUMN */
.dp-sobre-content-col {
  flex: 1 !important;
  min-width: 0 !important;
}

.sobre-bio p {
  font-family: "DM Sans", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.72 !important;
  color: #1C1C1E !important;
  text-align: justify !important;
  margin-bottom: 18px !important;
  margin-top: 0 !important;
}

.sobre-bio p:last-child {
  margin-bottom: 0 !important;
}

.dp-sobre-ctas {
  display: flex !important;
  gap: 12px !important;
  margin-top: 24px !important;
  flex-wrap: wrap !important;
}

.dp-cta-primary {
  font-family: "Raleway", sans-serif !important;
  font-weight: 700 !important;
  font-size: 7.5px !important;
  letter-spacing: 0.20em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  background: #E04B2A !important;
  padding: 12px 26px !important;
  border-radius: 2px !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background-color 0.2s !important;
}

.dp-cta-primary:hover {
  background: #c83f23 !important;
}

.dp-cta-secondary {
  font-family: "Raleway", sans-serif !important;
  font-weight: 700 !important;
  font-size: 7.5px !important;
  letter-spacing: 0.20em !important;
  text-transform: uppercase !important;
  color: #1C1C1E !important;
  background: transparent !important;
  border: 1.5px solid #1C1C1E !important;
  padding: 12px 26px !important;
  border-radius: 2px !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.2s !important;
}

.dp-cta-secondary:hover {
  border-color: #E04B2A !important;
  color: #E04B2A !important;
}

/* INFO SIDEBAR */
.dp-sobre-info-col {
  flex: 0 0 250px !important;
}

.sobre-info {
  background: #F8F6F4 !important;
  padding: 28px 24px !important;
  border-radius: 4px !important;
  border-top: 3px solid #E04B2A !important;
}

.sobre-info-item {
  padding: 10px 0 !important;
  border-bottom: 1px solid #E8E5E2 !important;
}

.sobre-info-item:last-child {
  border-bottom: none !important;
}

.sobre-info-item .label {
  display: block !important;
  font-family: "Raleway", sans-serif !important;
  font-weight: 600 !important;
  font-size: 7px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  margin-bottom: 4px !important;
}

.sobre-info-item .val {
  font-family: "DM Sans", sans-serif !important;
  font-size: 13px !important;
  color: #1C1C1E !important;
  line-height: 1.5 !important;
}

.sobre-info-item .val a {
  color: #E04B2A !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

.sobre-info-item .val a:hover {
  text-decoration: underline !important;
}

/* TIMELINE SECTION */
.dp-sobre-timeline-section {
  margin: 48px 0 0 !important;
  padding: 48px 20px 8px !important;
  border-top: 1px solid #E8E5E2 !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.dp-sobre-timeline-label {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}

.dp-approach-line {
  width: 22px !important;
  height: 1.5px !important;
  background: #E04B2A !important;
  display: inline-block !important;
}

.dp-approach-tag {
  font-family: "Raleway", sans-serif !important;
  font-weight: 700 !important;
  font-size: 7px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #E04B2A !important;
}

.dp-sobre-timeline-title {
  font-family: "Playfair Display", serif !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  color: #1C1C1E !important;
  margin-bottom: 36px !important;
  margin-top: 0 !important;
}

.dp-sobre-timeline-title em {
  color: #E04B2A !important;
  font-style: italic !important;
}

.dp-sobre-timeline-row .dp-timeline {
  position: relative !important;
  display: flex !important;
  justify-content: space-between !important;
  padding: 0 10px !important;
  width: 100% !important;
}

.dp-sobre-timeline-row .dp-timeline::before {
  content: "" !important;
  position: absolute !important;
  top: 20px !important;
  left: 20px !important;
  right: 20px !important;
  height: 1px !important;
  background: #E8E5E2 !important;
}

.dp-sobre-timeline-row .dp-timeline-step {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  position: relative !important;
  padding: 0 8px !important;
}

.dp-sobre-timeline-row .dp-timeline-morph {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: #fff !important;
  border: 1.5px solid #E8E5E2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  z-index: 2 !important;
  transition: border-color 0.2s !important;
  flex-shrink: 0 !important;
}

.dp-sobre-timeline-row .dp-timeline-step:hover .dp-timeline-morph {
  border-color: #E04B2A !important;
}

.dp-sobre-timeline-row .dp-timeline-morph svg {
  width: 22px !important;
  height: 22px !important;
}

.dp-sobre-timeline-row .dp-timeline-num {
  font-family: "Raleway", sans-serif !important;
  font-size: 6px !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #808080 !important;
  margin-top: 10px !important;
}

.dp-sobre-timeline-row .dp-timeline-title {
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #1C1C1E !important;
  margin-top: 4px !important;
  display: block !important;
}

.dp-sobre-timeline-row .dp-timeline-desc {
  font-family: "DM Sans", sans-serif !important;
  font-size: 10px !important;
  color: #808080 !important;
  margin-top: 4px !important;
  line-height: 1.4 !important;
  display: block !important;
}

/* RESPONSIVE - TABLET */
@media (max-width: 960px) {
  .sobre-grid {
    flex-direction: column !important;
    padding: 24px 0 !important;
    gap: 24px !important;
  }

  .dp-sobre-photo-col {
    flex: none !important;
    width: 100% !important;
    max-width: 100% !important;
    position: static !important;
  }

  .dp-sobre-content-col {
    flex: none !important;
    width: 100% !important;
  }

  .dp-sobre-info-col {
    flex: none !important;
    width: 100% !important;
  }

  .dp-sobre-timeline-row .dp-timeline {
    flex-wrap: wrap !important;
    gap: 24px !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .dp-sobre-timeline-row .dp-timeline::before {
    display: none !important;
  }

  .dp-sobre-timeline-row .dp-timeline-step {
    flex: 0 0 calc(33.33% - 16px) !important;
    min-width: 100px !important;
  }
}

/* RESPONSIVE - MOBILE */
@media (max-width: 768px) {
  .sobre-grid {
    padding: 20px 0 !important;
  }

  .dp-sobre-timeline-row .dp-timeline-step {
    flex: 0 0 calc(50% - 12px) !important;
  }

  .dp-sobre-timeline-section {
    padding: 32px 20px 8px !important;
  }

  .dp-sobre-timeline-title {
    font-size: 18px !important;
  }

  .sobre-bio p {
    font-size: 14px !important;
  }

  .dp-sobre-ctas {
    gap: 8px !important;
  }

  .dp-cta-primary,
  .dp-cta-secondary {
    padding: 10px 20px !important;
    font-size: 6.5px !important;
  }
}

@media (max-width: 480px) {
  .sobre-grid {
    gap: 16px !important;
    padding: 16px 0 !important;
  }

  .dp-sobre-timeline-row .dp-timeline-step {
    flex: 0 0 100% !important;
  }

  .dp-sobre-timeline-section {
    margin: 32px 0 0 !important;
    padding: 24px 16px 8px !important;
  }

  .dp-sobre-timeline-title {
    font-size: 16px !important;
    margin-bottom: 24px !important;
  }

  .dp-sobre-ctas {
    flex-direction: column !important;
  }

  .dp-cta-primary,
  .dp-cta-secondary {
    width: 100% !important;
    text-align: center !important;
  }
}

/* PREVENT BETHEME/JS CONFLICTS */
.sobre-page-wrapper * {
  box-sizing: border-box !important;
}

.sobre-page-wrapper a {
  outline: none !important;
}

/* ENSURE TYPOGRAPHY OVERRIDE */
.sobre-bio,
.sobre-info,
.dp-sobre-timeline-section {
  font-family: inherit !important;
}


/* ================================================
   SOBRE PAGE — OVERRIDE FINAL (cancela regras antigas)
   ================================================ */

/* Base: 3 colunas, sem max-width, largura total */
.sobre-grid {
  display: flex !important;
  flex-direction: row !important;
  gap: 32px !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 40px 0 !important;
}

.dp-sobre-photo-col {
  flex: 0 0 260px !important;
  position: sticky !important;
  top: 80px !important;
  align-self: flex-start !important;
  max-width: 260px !important;
}

.dp-sobre-content-col {
  flex: 1 !important;
  min-width: 0 !important;
}

.dp-sobre-info-col {
  flex: 0 0 250px !important;
  max-width: 250px !important;
}

.dp-sobre-timeline-section {
  max-width: none !important;
}

/* Responsive: apenas abaixo de 960px empilha */
@media (max-width: 960px) {
  .sobre-grid {
    flex-direction: column !important;
    padding: 24px 0 !important;
    gap: 24px !important;
  }
  .dp-sobre-photo-col {
    flex: none !important;
    width: 100% !important;
    max-width: 100% !important;
    position: static !important;
  }
  .dp-sobre-content-col {
    flex: none !important;
    width: 100% !important;
  }
  .dp-sobre-info-col {
    flex: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* ── Font-size fixes (timeline + CTAs) ── */
.dp-sobre-timeline-row .dp-timeline-num {
  font-size: 10px !important;
}
.dp-sobre-timeline-row .dp-timeline-title {
  font-size: 14px !important;
  font-weight: 600 !important;
}
.dp-sobre-timeline-row .dp-timeline-desc {
  font-size: 12px !important;
  line-height: 1.5 !important;
}
.dp-cta-primary,
.dp-cta-secondary {
  font-size: 11px !important;
}
.sobre-info-item .label {
  font-size: 9px !important;
}
.sobre-info-item .val {
  font-size: 14px !important;
}
.dp-approach-tag {
  font-size: 10px !important;
}


/* ============================================================
   MORFOLOGIAS DECORATIVAS — Background com transparência
   ============================================================ */

/* SVG morphology as background decoration — D shape */
.dp-morph-deco {
  position: absolute;
  pointer-events: none;
  z-index: 0;
  opacity: 0.035;
}

/* Hero section — D morphology bottom-right */
.dp-hero-wrap {
  position: relative;
  overflow: hidden;
}
.dp-hero-wrap::after {
  content: '';
  position: absolute;
  bottom: -40px;
  right: -20px;
  width: 280px;
  height: 280px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8,8 L8,72 L40,72 Q72,72 72,40 Q72,8 40,8 Z' fill='%231C1C1E'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
  opacity: 0.04;
  pointer-events: none;
  z-index: 0;
}

/* Áreas section — Quarter morphology top-left */
.dp-areas-section {
  position: relative;
  overflow: hidden;
}
.dp-areas-section::after {
  content: '';
  position: absolute;
  top: -30px;
  left: -30px;
  width: 200px;
  height: 200px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8,72 Q8,8 72,8 L8,8 Z' fill='%231C1C1E'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
  opacity: 0.03;
  pointer-events: none;
  z-index: 0;
}

/* Hub Jurídico section — Semi morphology bottom-left */
.dp-hub-section {
  position: relative;
  overflow: hidden;
}
.dp-hub-section::after {
  content: '';
  position: absolute;
  bottom: -30px;
  left: -20px;
  width: 220px;
  height: 220px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8,8 L8,72 Q72,72 72,40 Q72,8 8,8 Z' fill='%231C1C1E'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
  opacity: 0.03;
  pointer-events: none;
  z-index: 0;
}

/* Newsletter section — Arco morphology right (branco sobre fundo escuro) */
.dp-newsletter-section {
  position: relative;
  overflow: hidden;
}
.dp-newsletter-section::after {
  content: '';
  position: absolute;
  bottom: -20px;
  right: -30px;
  width: 240px;
  height: 240px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8,40 A32,32 0 0,1 72,40 Z' fill='%23FFFFFF'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
  opacity: 0.04;
  pointer-events: none;
  z-index: 0;
}

/* CTA Final — Cunha morphology left (branco sobre terracota) */
.dp-cta-section {
  position: relative;
  overflow: hidden;
}
.dp-cta-section::after {
  content: '';
  position: absolute;
  top: -20px;
  left: -20px;
  width: 200px;
  height: 200px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8,8 L8,72 Q44,56 70,40 Q44,24 8,8 Z' fill='%23FFFFFF'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
  opacity: 0.08;
  pointer-events: none;
  z-index: 0;
}

/* Sala de Imprensa — Hemiciclo morphology top-right */
.dp-imprensa-section {
  position: relative;
  overflow: hidden;
}
.dp-imprensa-section::after {
  content: '';
  position: absolute;
  top: -25px;
  right: -25px;
  width: 180px;
  height: 180px;
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8,40 A32,32 0 0,1 72,40 L62,40 A22,22 0 0,0 18,40 Z' fill='%231C1C1E'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
  opacity: 0.03;
  pointer-events: none;
  z-index: 0;
}

/* ============================================================
   HUB JURÍDICO — Widgets Mais Curtidas / Mais Lidas
   ============================================================ */

.dp-hub-widgets {
  display: flex;
  gap: 32px;
  margin-top: 40px;
  position: relative;
  z-index: 1;
}

.dp-hub-widget {
  flex: 1;
  background: #FFFFFF;
  border-radius: 6px;
  padding: 24px 20px 18px;
  border: 1px solid #E8E5E2;
}

.dp-hub-widget-title {
  font-family: 'Raleway', sans-serif;
  font-size: 8px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .20em;
  color: #E04B2A;
  margin: 0 0 16px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.dp-hub-widget-title svg {
  width: 13px;
  height: 13px;
  flex-shrink: 0;
}

.dp-hub-widget-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.dp-hub-widget-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 0;
  border-bottom: 1px solid #E8E5E2;
  text-decoration: none;
  color: #1C1C1E;
  transition: color .2s;
}

.dp-hub-widget-item:last-child {
  border-bottom: none;
}

.dp-hub-widget-item:hover {
  color: #E04B2A;
}

.dp-hub-widget-count {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: #E04B2A;
  min-width: 28px;
  text-align: center;
  flex-shrink: 0;
}

.dp-hub-widget-item-title {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  line-height: 1.4;
  color: inherit;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* Responsive: stack widgets on mobile */
@media (max-width: 768px) {
  .dp-hub-widgets {
    flex-direction: column;
    gap: 20px;
  }
}

/* ââ LIKE HEART ICON ââ */
.dp-card-like .dp-like-heart {
  fill: #E04B2A;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  transition: transform .2s;
}
.dp-card-like:hover .dp-like-heart { transform: scale(1.15); }

/* ââ MORPHOLOGY DIVIDER ââ */
.dp-hub-divider {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin: 40px 0 8px;
  color: #E8E5E2;
}
.dp-divider-morph {
  opacity: 0.35;
  transition: opacity .3s;
}
.dp-hub-divider:hover .dp-divider-morph { opacity: 0.55; }

@media (max-width: 768px) {
  .dp-hub-divider { gap: 8px; }
  .dp-divider-morph { width: 18px; height: 18px; }
}


/* Fix auditoria 07/07/2026: strong ilegível no hero escuro de Áreas de Atuação */
.page-template-page-areas-de-atuacao .page-hero strong { color: #fff; }


/* Fix auditoria 07/07/2026: esconder invólucro esvaziado pelo builder na página Práticas */
body.page-id-184 > section.section:not(:has(.dp-prat-v2)):not(:has(.page-hero-light)) { display: none; }
