/* ══════════════════════════════════════════════════════════════════════
   SYNERGIA EDITORA — Design System
   Tema proprio, sem Elementor. Leve e controlado.

   Identidade: editorial academico e sofisticado.
   Vinho/bordo profundo sobre fundos claros quase brancos, titulos em
   serifa com destaque em italico, blocos escuros em vinho para contraste.
   ══════════════════════════════════════════════════════════════════════ */

:root {
  /* ---- Vinho (base da marca) ---- */
  --syn-wine-950: #2a0018;
  --syn-wine-900: #36001f;   /* fundo do hero, rodapé de seções escuras */
  --syn-wine-700: #5c0033;   /* botões, títulos */
  --syn-wine-600: #6b0a3d;   /* links sobre branco */

  /* ---- Rosa (destaque) ---- */
  --syn-pink-300: #f0a6c8;   /* itálicos sobre vinho, ícones */
  --syn-pink-500: #d6609a;   /* só texto GRANDE sobre branco */

  /* ---- Neutros QUENTES (substituem cinzas azulados) ---- */
  --syn-ink-900: #2b1a24;
  --syn-ink-600: #5f4a56;    /* texto secundário (contraste ok sobre branco) */
  --syn-ink-400: #8a7581;    /* só decorativo / texto grande */
  --syn-bg: #ffffff;
  --syn-bg-soft: #fbf8f9;
  --syn-bg-footer: #f6f1f3;
  --syn-line: #eadfe4;

  /* ---- Forma e sombra ---- */
  --syn-radius-sm: 8px;
  --syn-radius-md: 12px;
  --syn-radius-lg: 20px;
  --syn-shadow-sm: 0 1px 2px rgba(54,0,31,.06), 0 4px 12px rgba(54,0,31,.06);
  --syn-shadow-md: 0 8px 30px rgba(54,0,31,.14);

  /* ---- Tipografia ---- */
  --syn-font-serif: "Newsreader", "Georgia", "Times New Roman", serif;
  --syn-font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;

  /* ---- Aliases de retrocompatibilidade do tema ---- */
  --syn-vinho:        var(--syn-wine-700);
  --syn-vinho-escuro: var(--syn-wine-900);
  --syn-vinho-medio:  var(--syn-wine-950);
  --syn-rosa:         var(--syn-pink-500);
  --syn-rosa-claro:   #f3e3ea;
  --syn-numeros:      var(--syn-pink-300);
  --syn-fundo:        var(--syn-bg);
  --syn-fundo-alt:    var(--syn-bg-soft);
  --syn-rodape:       var(--syn-bg-footer);
  --syn-titulo-neutro:var(--syn-ink-900);
  --syn-texto:        var(--syn-ink-600);
  --syn-texto-fraco:  var(--syn-ink-400);
  --syn-borda:        var(--syn-line);
  --syn-borda-rosada: var(--syn-line);

  /* ---- Ritmo vertical ---- */
  --syn-section-y: clamp(56px, 8vw, 96px);
  --syn-container: 1200px;
  --syn-largura:  1200px;
  --syn-gutter:   48px;
  --syn-raio:     var(--syn-radius-md);
  --syn-raio-gg:  var(--syn-radius-lg);
  --syn-respiro:  var(--syn-section-y);

  --syn-sombra-suave: var(--syn-shadow-sm);
  --syn-sombra-diffusa: var(--syn-shadow-md);
}

/* ═══════════ reset enxuto ═══════════ */
*, *::before, *::after { box-sizing: border-box; }
body {
  margin: 0;
  font-family: var(--syn-sans);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.65;
  color: var(--syn-texto);
  background: var(--syn-fundo);
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--syn-vinho); text-decoration: none; transition: opacity .18s ease; }
a:hover { opacity: .78; }

/* foco visivel — acessibilidade */
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible {
  outline: 2px solid var(--syn-vinho);
  outline-offset: 2px;
  border-radius: 4px;
}

/* ═══════════ layout ═══════════ */
.syn-container {
  width: 100%;
  max-width: var(--syn-largura);
  margin-inline: auto;
  padding-inline: 24px;
}
@media (min-width: 900px) {
  .syn-container { padding-inline: var(--syn-gutter); }
}
.syn-secao { padding-block: 72px; }
@media (min-width: 900px) {
  .syn-secao { padding-block: var(--syn-respiro); }
}
.syn-secao--alt { background: var(--syn-fundo-alt); }

/* ═══════════ tipografia ═══════════ */
.syn-eyebrow {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--syn-texto-fraco);
  margin: 0 0 12px;
}
.syn-titulo {
  font-family: var(--syn-sans);
  font-weight: 700;
  font-style: italic;
  font-size: clamp(26px, 4vw, 38px);
  line-height: 1.18;
  color: var(--syn-vinho);
  margin: 0 0 16px;
}
.syn-titulo em { font-style: italic; }
.syn-subtitulo {
  font-size: 17px;
  color: var(--syn-texto);
  margin: 0 0 40px;
  max-width: 62ch;
}

/* ═══════════ acessibilidade — correcao de texto para leitor de tela ═══════════ */
.screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* ═══════════ botoes — hierarquia padronizada ═══════════ */
.syn-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 44px;
  padding: 0 24px;
  border-radius: var(--syn-radius-md);
  font-family: var(--syn-font-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .01em;
  text-decoration: none;
  cursor: pointer;
  border: 1.5px solid transparent;
  transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
  white-space: nowrap;
}
.syn-btn:focus-visible { outline: 3px solid var(--syn-pink-300); outline-offset: 2px; }

/* Primário (vinho sólido) */
.syn-btn--primary,
.syn-btn--primario {
  background: var(--syn-wine-700);
  color: #fff;
  border-color: transparent;
}
.syn-btn--primary:hover,
.syn-btn--primario:hover {
  background: var(--syn-wine-900);
  color: #fff;
  box-shadow: var(--syn-shadow-sm);
  transform: translateY(-1px);
  opacity: 1;
}

/* SKP — Synergia Knowledge Platform.
   Contorno vinho + acento dourado: chama atencao sem competir com o CTA
   principal ("Quero publicar minha obra"). Espelha a paleta do SKP
   (ead.marcostechnology.com), que usa --tg-theme-primary #67003a. */
.syn-btn--skp {
  background: transparent;
  color: var(--syn-wine-700);
  border-color: var(--syn-wine-700);
  border-width: 1.5px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.syn-btn--skp:hover {
  background: var(--syn-wine-700);
  color: #fff;
  border-color: var(--syn-wine-700);
  transform: translateY(-1px);
  box-shadow: var(--syn-shadow-sm);
  opacity: 1;
}
@media (max-width: 1100px) {
  /* em telas menores o botao SKP some do header: o item de menu continua */
  .syn-header__acoes .syn-btn--skp { display: none; }
}

/* Secundário / Ghost (contorno vinho) — padrão para "Ver detalhes" */
.syn-btn--ghost,
.syn-btn--secundario {
  background: transparent;
  color: var(--syn-wine-700);
  border-color: var(--syn-wine-700);
}
.syn-btn--ghost:hover,
.syn-btn--secundario:hover {
  background: var(--syn-wine-700);
  color: #fff;
  opacity: 1;
}

/* Sobre fundo vinho (hero / seções escuras) */
.syn-btn--light,
.syn-btn--branco {
  background: #fff;
  color: var(--syn-wine-700);
  border-color: transparent;
}
.syn-btn--light:hover,
.syn-btn--branco:hover {
  background: var(--syn-pink-300);
  color: var(--syn-wine-950);
  opacity: 1;
}

.syn-btn--outline-light,
.syn-btn--secundario-claro {
  background: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, .6);
}
.syn-btn--outline-light:hover,
.syn-btn--secundario-claro:hover {
  background: rgba(255, 255, 255, .15);
  border-color: #fff;
  color: #fff;
  opacity: 1;
}

/* Pílula no CTA do header */
.syn-btn--pill,
.syn-btn--pildora {
  height: 38px;
  padding: 0 20px;
  border-radius: 999px;
  font-size: 13.5px;
}

/* ═══════════ badges e selos ═══════════ */
.syn-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.95);
  color: var(--syn-wine-700);
  font: 700 11px/1 var(--syn-font-sans);
  letter-spacing: .08em;
  text-transform: uppercase;
  box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
.syn-badge--promo { background: var(--syn-pink-300); color: var(--syn-wine-950); }
.syn-badge--new,
.syn-badge--prevenda { background: var(--syn-wine-700); color: #fff; }

/* ═══════════ precos ═══════════ */
.price, .syn-price {
  font: 700 16px/1.2 var(--syn-font-sans);
  color: var(--syn-wine-700);
}
.price del, .syn-price del {
  margin-right: 8px;
  font-weight: 400;
  font-size: .85em;
  color: var(--syn-ink-400);
  text-decoration: line-through;
}
.price ins, .syn-price ins {
  text-decoration: none;
}

/* ═══════════ cabecalho ═══════════ */
.syn-header {
  position: sticky; top: 0; z-index: 100;
  background: rgba(255,255,255,.94);
  backdrop-filter: saturate(180%) blur(12px);
  border-bottom: 1px solid var(--syn-borda);
}
.syn-header__inner {
  height: 64px;
  display: flex;
  align-items: center;
  gap: 28px;
}
.syn-logo { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.syn-logo__nome {
  font-family: var(--syn-serifa);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -.01em;
  color: var(--syn-vinho);
}
.syn-nav { display: none; margin-left: auto; }
@media (min-width: 1024px) { .syn-nav { display: flex; align-items: center; gap: 26px; } }
.syn-nav a {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--syn-titulo-neutro);
}
.syn-nav a:hover { color: var(--syn-vinho); opacity: 1; }
/* Menu real (wp_nav_menu) vem com ul/li — zera a lista e herda o flex. */
.syn-nav ul {
  display: flex; align-items: center; gap: 26px;
  list-style: none; margin: 0; padding: 0;
}
.syn-header__acoes { display: flex; align-items: center; gap: 12px; margin-left: auto; }
@media (min-width: 1024px) { .syn-header__acoes { margin-left: 0; } }

/* menu hamburguer no mobile */
.syn-burger {
  display: inline-flex; flex-direction: column; gap: 4px;
  background: none; border: 0; padding: 8px; cursor: pointer;
}
@media (min-width: 1024px) { .syn-burger { display: none; } }
.syn-burger span { width: 20px; height: 2px; background: var(--syn-titulo-neutro); border-radius: 2px; }

/* ═══════════ hero ═══════════ */
.syn-hero {
  background: linear-gradient(160deg, #F3EFF2 0%, #ECE6EB 100%);
  padding-block: 84px;
  text-align: center;
}
@media (min-width: 900px) { .syn-hero { padding-block: 120px; } }
.syn-hero__titulo {
  font-family: var(--syn-serifa);
  font-weight: 400;
  font-size: clamp(34px, 6vw, 62px);
  line-height: 1.12;
  color: var(--syn-vinho);
  margin: 0 auto 22px;
  max-width: 18ch;
}
.syn-hero__titulo em { font-style: italic; }
.syn-hero__texto {
  font-size: clamp(16px, 2vw, 18px);
  color: var(--syn-texto);
  margin: 0 auto 34px;
  max-width: 58ch;
}
.syn-hero__acoes { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }

/* ═══════════ cards ═══════════ */
.syn-card {
  background: #FDFBFC;
  border: 1px solid var(--syn-borda-rosada);
  border-radius: 12px;
  padding: 24px;
  box-shadow: var(--syn-sombra-suave);
  transition: transform .2s ease, box-shadow .2s ease;
}
.syn-card:hover { transform: translateY(-3px); box-shadow: 0 12px 32px rgba(102,0,58,.10); }

.syn-grade { display: grid; gap: 20px; }
.syn-grade--2 { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.syn-grade--3 { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.syn-grade--4 { grid-template-columns: 1fr; }
@media (min-width: 700px)  { .syn-grade--4 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .syn-grade--4 { grid-template-columns: repeat(4, 1fr); } }

/* card de passo numerado */
.syn-passo__numero {
  font-family: var(--syn-serifa);
  font-style: italic;
  font-weight: 300;
  font-size: 38px;
  color: var(--syn-numeros);
  line-height: 1;
  margin-bottom: 12px;
}
.syn-passo__titulo { font-size: 20px; font-weight: 600; color: var(--syn-titulo-neutro); margin: 0 0 8px; }
.syn-passo__texto { font-size: 14px; color: var(--syn-texto); margin: 0; }

/* ═══════════ bloco escuro (vinho) ═══════════ */
.syn-escuro {
  background: var(--syn-vinho-escuro);
  color: #fff;
}
.syn-escuro .syn-titulo { color: #fff; }
.syn-escuro .syn-subtitulo { color: rgba(255,255,255,.72); }
.syn-escuro__grid {
  display: grid; gap: 48px;
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .syn-escuro__grid { grid-template-columns: 1.15fr .85fr; gap: 64px; align-items: start; }
}

/* diferenciais */
.syn-diferencial { display: flex; gap: 16px; margin-bottom: 28px; }
.syn-diferencial__icone {
  flex-shrink: 0;
  width: 44px; height: 44px;
  border-radius: 12px;
  background: var(--syn-vinho-medio);
  display: grid; place-items: center;
  color: var(--syn-rosa);
}
.syn-diferencial__titulo { font-size: 17px; font-weight: 600; margin: 0 0 4px; color: #fff; }
.syn-diferencial__texto { font-size: 14px; margin: 0; color: rgba(255,255,255,.68); }

/* card de depoimento */
.syn-depoimento {
  background: var(--syn-vinho-medio);
  border: 1px solid rgba(224,103,159,.22);
  border-radius: var(--syn-raio-gg);
  padding: 36px;
}
.syn-depoimento__aspas {
  font-family: var(--syn-serifa);
  font-size: 56px;
  color: var(--syn-rosa);
  line-height: .6;
  margin-bottom: 16px;
}
.syn-depoimento__texto {
  font-family: var(--syn-serifa);
  font-style: italic;
  font-size: 22px;
  line-height: 1.5;
  margin: 0 0 24px;
}
.syn-depoimento__autor { display: flex; align-items: center; gap: 14px; }
.syn-depoimento__avatar {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--syn-rosa), var(--syn-vinho));
  display: grid; place-items: center;
  color: #fff; font-weight: 600; font-size: 16px;
}
.syn-depoimento__nome { font-size: 15px; font-weight: 600; color: #fff; margin: 0; }
.syn-depoimento__papel { font-size: 13px; color: rgba(255,255,255,.6); margin: 0; }

/* ═══════════ chip / etiqueta ═══════════ */
.syn-chip {
  display: inline-block;
  padding: 5px 12px;
  border-radius: 999px;
  background: var(--syn-rosa-claro);
  color: var(--syn-vinho);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
}

/* ═══════════ card de livro (proporcao 2:3, sem selo Sale!) ═══════════ */
.syn-livro {
  background: #fff;
  border: 1px solid var(--syn-borda-rosada);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: var(--syn-sombra-suave);
  transition: transform .2s ease, box-shadow .2s ease;
  display: flex; flex-direction: column;
}
.syn-livro:hover { transform: translateY(-4px); box-shadow: 0 14px 34px rgba(102,0,58,.12); }
.syn-livro__capa {
  position: relative;
  aspect-ratio: 2 / 3;
  background: var(--syn-fundo-alt);
  display: grid; place-items: center;
  overflow: hidden;
}
.syn-livro__capa img { width: 100%; height: 100%; object-fit: cover; }
.syn-livro__etiqueta { position: absolute; top: 12px; left: 12px; }
.syn-livro__corpo { padding: 18px; display: flex; flex-direction: column; flex: 1; }
.syn-livro__titulo {
  font-size: 15px; font-weight: 600; color: var(--syn-titulo-neutro);
  margin: 0 0 6px; line-height: 1.4;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.syn-livro__autor { font-size: 13px; color: var(--syn-texto-fraco); margin: 0 0 14px; }
.syn-livro__preco { font-size: 17px; font-weight: 600; color: var(--syn-vinho); margin: 0 0 16px; }
.syn-livro__preco s { color: var(--syn-texto-fraco); font-weight: 400; font-size: 13px; margin-right: 8px; }
.syn-livro .syn-btn { width: 100%; justify-content: center; margin-top: auto; }

/* ═══════════ formulario ═══════════ */
.syn-form-card {
  background: #fff;
  border-radius: var(--syn-raio-gg);
  box-shadow: var(--syn-sombra-diffusa);
  padding: 44px;
  max-width: 650px;
  margin-inline: auto;
}
@media (max-width: 640px) { .syn-form-card { padding: 28px 22px; } }
.syn-form-card h3 { font-size: 24px; font-weight: 600; color: var(--syn-titulo-neutro); margin: 0 0 8px; }
.syn-campo { margin-bottom: 18px; }
.syn-campo label {
  display: block; font-size: 12px; font-weight: 600;
  letter-spacing: .06em; text-transform: uppercase;
  color: var(--syn-texto-fraco); margin-bottom: 7px;
}
.syn-campo input, .syn-campo textarea, .syn-campo select {
  width: 100%; min-height: 42px;
  padding: 10px 14px;
  border: 1px solid var(--syn-borda);
  border-radius: 6px;
  font-family: var(--syn-sans); font-size: 15px;
  background: #fff; color: var(--syn-titulo-neutro);
}
.syn-campo input::placeholder, .syn-campo textarea::placeholder { color: var(--syn-texto-fraco); }
.syn-campo textarea { min-height: 130px; resize: vertical; }
.syn-form-grid { display: grid; gap: 18px; grid-template-columns: 1fr; }
@media (min-width: 640px) { .syn-form-grid { grid-template-columns: 1fr 1fr; } }
.syn-form-grid .syn-campo--full { grid-column: 1 / -1; }

/* ═══════════ upload (borda tracejada rosada) ═══════════ */
.syn-upload {
  border: 1px dashed #D9A8C0;
  border-radius: 12px;
  background: #FDF8FA;
  padding: 34px 24px;
  text-align: center;
  cursor: pointer;
}
.syn-upload:hover { border-color: var(--syn-vinho); background: #FBF3F7; }
.syn-upload__icone { color: var(--syn-vinho); font-size: 30px; margin-bottom: 10px; }

/* ═══════════ rodape ═══════════ */
.syn-rodape { background: var(--syn-rodape); padding-block: 60px 28px; }
.syn-rodape__topo {
  display: grid; gap: 40px;
  grid-template-columns: 1fr;
  padding-bottom: 36px;
  border-bottom: 1px solid #E2E6F0;
}
@media (min-width: 768px) { .syn-rodape__topo { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1100px) { .syn-rodape__topo { grid-template-columns: 1.5fr repeat(5, 1fr); gap: 28px; } }
.syn-rodape__marca p { font-size: 14px; color: var(--syn-texto); margin: 14px 0 0; max-width: 34ch; }
.syn-rodape__col h4 {
  font-size: 11px; font-weight: 600; letter-spacing: .1em;
  text-transform: uppercase; color: var(--syn-texto-fraco);
  margin: 0 0 16px;
}
.syn-rodape__col ul { list-style: none; padding: 0; margin: 0; }
.syn-rodape__col li { margin-bottom: 9px; }
.syn-rodape__col a { font-size: 14px; color: var(--syn-titulo-neutro); }
.syn-rodape__base {
  padding-top: 22px;
  display: flex; flex-wrap: wrap; gap: 12px;
  justify-content: space-between; align-items: center;
  font-size: 12px; color: var(--syn-texto-fraco);
}

/* ═══════════ newsletter ═══════════ */
.syn-newsletter { text-align: center; padding-block: 64px; }
.syn-newsletter__form { display: flex; gap: 10px; max-width: 480px; margin-inline: auto; margin-top: 24px; }
.syn-newsletter__form input {
  flex: 1; height: 46px;
  padding: 0 16px;
  border: 1px solid var(--syn-borda); border-radius: var(--syn-raio);
  font-family: var(--syn-sans); font-size: 15px;
}

/* ═══════════ formularios WooCommerce (traduzidos, sem estilo padrao) ═══════════ */
.woocommerce form .form-row { display: flex; flex-direction: column; margin-bottom: 16px; padding: 0; }
.woocommerce form .form-row label { font-size: 13px; font-weight: 600; color: var(--syn-titulo-neutro); margin-bottom: 6px; }
.woocommerce form .form-row .required { color: var(--syn-vinho); text-decoration: none; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select {
  width: 100%; min-height: 42px; padding: 10px 14px;
  border: 1px solid var(--syn-borda); border-radius: 6px;
  font-family: var(--syn-sans); font-size: 15px; color: var(--syn-titulo-neutro);
}
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus {
  border-color: var(--syn-vinho); outline: none;
}
.woocommerce #payment ul.payment_methods { list-style: none; padding: 0; margin: 0 0 20px; }
.woocommerce #payment ul.payment_methods li {
  border: 1px solid var(--syn-borda); border-radius: 8px;
  padding: 14px 16px; margin-bottom: 10px; background: #fff;
}
.woocommerce #payment ul.payment_methods li input { margin-right: 8px; }
.woocommerce #payment div.payment_box { font-size: 13px; color: var(--syn-texto); margin: 8px 0 0; }
.woocommerce .button, .woocommerce button.button, .woocommerce input.button, .woocommerce a.button {
  background: var(--syn-vinho); color: #fff;
  border-radius: var(--syn-raio); height: 46px; padding: 0 26px;
  font-family: var(--syn-sans); font-size: 14px; font-weight: 600;
  border: 0; cursor: pointer;
}
.woocommerce .button:hover, .woocommerce button.button:hover { background: #4E0029; color: #fff; opacity: 1; }
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info {
  border-top-color: var(--syn-vinho); background: var(--syn-rosa-claro); color: var(--syn-titulo-neutro);
  border-radius: 8px;
}
.woocommerce table.shop_table { border-radius: 8px; border-color: var(--syn-borda); }
.woocommerce table.shop_table th { color: var(--syn-titulo-neutro); font-weight: 600; }
.woocommerce .quantity input.qty { border-radius: 6px; border-color: var(--syn-borda); }

/* avisos de erro/acesso do WooCommerce */
.woocommerce .woocommerce-error, .woocommerce .woocommerce-info {
  border-radius: 8px; padding: 14px 18px;
}

/* ═══════════ animações sutis ═══════════ */
@keyframes synFadeUp { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.syn-aparecer { animation: synFadeUp .5s ease both; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* ═══════════ responsivo — mobile first ═══════════ */
@media (max-width: 1023px) {
  .syn-nav {
    display: none;
    position: absolute; top: 64px; left: 0; right: 0;
    background: #fff; border-bottom: 1px solid var(--syn-borda);
    padding: 18px 24px; flex-direction: column; align-items: flex-start; gap: 14px;
    box-shadow: 0 12px 28px rgba(30,42,63,.08);
  }
  .syn-nav.syn-nav--aberto { display: flex; }
  .syn-nav ul { flex-direction: column; align-items: flex-start; gap: 14px; }
  .syn-nav a { font-size: 12px; }
}
/* ═══════════ abas de destaques ═══════════ */
.syn-tabs {
  display: flex; gap: 8px;
  border-bottom: 1px solid var(--syn-borda);
  margin-bottom: 32px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.syn-aba {
  padding: 12px 20px;
  font-family: var(--syn-sans);
  font-size: 12px; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  color: var(--syn-texto-fraco);
  background: none; border: 0;
  border-bottom: 2px solid transparent;
  cursor: pointer; white-space: nowrap;
  margin-bottom: -1px;
  transition: color .18s ease, border-color .18s ease;
}
.syn-aba:hover { color: var(--syn-vinho); }
.syn-aba--ativa { color: var(--syn-vinho); border-bottom-color: var(--syn-vinho); }

/* ── 12. Prosa editorial (páginas internas) ────────────────────────────
   Tipografia e ritmo para o conteúdo das páginas: títulos vinho com
   filete dourado, imagens com moldura suave, listas com marcador,
   CTA final como botão real. */
.syn-prosa {
  font-size: 1.06rem;
  line-height: 1.8;
  color: var(--syn-texto);
}
.syn-prosa > p:first-of-type {
  font-size: 1.18rem;
  line-height: 1.7;
  color: var(--syn-texto-forte, #2b2b2b);
}
.syn-prosa h2 {
  font-family: var(--syn-serifa);
  font-size: 1.55rem;
  color: var(--syn-vinho);
  margin: 2.4em 0 .7em;
  padding-bottom: .35em;
  border-bottom: 2px solid var(--syn-dourado, #c9a227);
}
.syn-prosa h2:first-child { margin-top: 0; }
.syn-prosa h3 {
  font-family: var(--syn-serifa);
  font-size: 1.2rem;
  color: var(--syn-texto-forte, #2b2b2b);
  margin: 1.8em 0 .5em;
}
.syn-prosa p { margin: 0 0 1.1em; }
.syn-prosa a:not(.syn-btn) {
  color: var(--syn-vinho);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.syn-prosa img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 1.8em auto;
  border-radius: 14px;
  box-shadow: 0 12px 32px rgba(74, 0, 40, .14);
}
.syn-prosa ul {
  margin: 0 0 1.4em;
  padding: 0;
  list-style: none;
}
.syn-prosa ul li {
  position: relative;
  padding-left: 1.7em;
  margin-bottom: .6em;
}
.syn-prosa ul li::before {
  content: "▸";
  position: absolute;
  left: 0;
  color: var(--syn-vinho);
  font-weight: 700;
}
.syn-prosa blockquote {
  margin: 1.8em 0;
  padding: 1.1em 1.4em;
  border-left: 4px solid var(--syn-dourado, #c9a227);
  background: #faf6f2;
  border-radius: 0 12px 12px 0;
  font-style: italic;
}
.syn-cta-final {
  margin: 2.6em 0 1em;
  text-align: center;
}
.syn-cta-final .syn-btn {
  display: inline-block;
  font-size: 1.05rem;
  padding: 15px 42px;
}
@media (max-width: 560px) {
  .syn-prosa { font-size: 1rem; }
  .syn-prosa h2 { font-size: 1.32rem; }
}
.syn-prosa blockquote p { margin-bottom: .6em; }
.syn-prosa blockquote cite {
  display: block;
  font-style: normal;
  font-weight: 700;
  color: var(--syn-vinho);
}
.syn-prosa blockquote cite::before { content: "— "; }
.syn-faq {
  margin: 0 0 .7em;
  border: 1px solid var(--syn-borda);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}
.syn-faq summary {
  cursor: pointer;
  padding: 15px 20px;
  font-weight: 700;
  color: var(--syn-texto-forte, #2b2b2b);
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.syn-faq summary::-webkit-details-marker { display: none; }
.syn-faq summary::after {
  content: "+";
  color: var(--syn-vinho);
  font-size: 1.3rem;
  font-weight: 400;
  flex-shrink: 0;
}
.syn-faq[open] summary::after { content: "–"; }
.syn-faq summary:hover { color: var(--syn-vinho); }
.syn-faq > p {
  margin: 0;
  padding: 0 20px 18px;
  color: var(--syn-texto);
}
.syn-assuntos {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 1.6em 0 2em;
}
.syn-assunto {
  display: block;
  padding: 18px 20px;
  border: 1px solid var(--syn-borda);
  border-radius: 14px;
  background: #fff;
  text-decoration: none !important;
  transition: box-shadow .18s ease, transform .18s ease;
}
.syn-assunto:hover { box-shadow: 0 10px 28px rgba(74, 0, 40, .12); transform: translateY(-2px); }
.syn-assunto strong { display: block; color: var(--syn-vinho); font-size: 1.02rem; margin-bottom: 4px; }
.syn-assunto span { color: var(--syn-texto-fraco); font-size: .92rem; }
@media (max-width: 560px) { .syn-assuntos { grid-template-columns: 1fr; } }
.syn-cat__meta {
  margin: 6px 0 0;
  font-size: 1.05rem;
  color: var(--syn-texto-fraco);
}
.syn-cat__lanc-rotulo {
  margin: 14px 0 6px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--syn-vinho);
}
.syn-cat__lanc {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
}
.syn-cat__lanc a { color: var(--syn-texto-forte, #2b2b2b); text-decoration: underline; text-underline-offset: 3px; }
.syn-cat__lanc a:hover { color: var(--syn-vinho); }
.syn-autores--destaque { justify-content: center; }
.syn-autor__obras { color: var(--syn-texto-fraco); font-size: .88rem; }
.syn-busca-painel {
  background: #fff;
  border-bottom: 1px solid var(--syn-borda);
  box-shadow: 0 18px 40px rgba(74, 0, 40, .10);
  padding: 18px 0 22px;
}
.syn-busca-painel__form { position: relative; }
.syn-icone {
  background: none;
  border: 0;
  cursor: pointer;
  color: inherit;
  display: inline-flex;
  align-items: center;
  padding: 6px;
}
/* ── CABEÇALHO GLOBAL DE PÁGINA (plano §4) ───────────────────────────
   Base de toda página interna: fundo institucional claro, eyebrow,
   título em serifa neutra. Nada de madeira/marrom/dourado. */
.syn-pagina-cabecalho {
  background: var(--syn-fundo-alt);
  border-bottom: 1px solid var(--syn-borda);
  padding: var(--syn-lg) 0 var(--syn-md);
}
.syn-pagina-cabecalho h1 {
  font-family: var(--syn-serifa);
  font-weight: 600;
  font-size: clamp(1.9rem, 4vw, 2.7rem);
  line-height: 1.15;
  color: var(--syn-titulo-neutro);
  margin: var(--syn-xs) 0 0;
  text-wrap: balance;
}
.syn-pagina-cabecalho .syn-eyebrow { margin: 0; }
/* ── MINHA CONTA (plano §11) ─────────────────────────────────────── */
.woocommerce-account.logged-in .woocommerce { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: var(--syn-lg); align-items: start; }
.syn-conta__nav ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.syn-conta__nav a { display: block; padding: 10px 14px; border-radius: 10px; color: var(--syn-texto); font-weight: 600; font-size: 14px; }
.syn-conta__nav a:hover { background: var(--syn-fundo-alt); opacity: 1; }
.syn-conta__nav .is-active a { background: var(--syn-vinho); color: #fff; }
@media (max-width: 820px) {
  .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
  .syn-conta__nav ul { grid-auto-flow: column; grid-auto-columns: max-content; overflow-x: auto; padding-bottom: 8px; }
  .syn-conta__nav a { white-space: nowrap; }
}
/* ── LOJA: busca no cabeçalho ─────────────────────────────────────── */
.syn-loja__busca { max-width: 560px; margin-top: var(--syn-sm); }
