/*
Theme Name: ViaVerde News
Theme URI: https://viaverdenews.com.br/
Author: King Post
Author URI: https://kingpost.com.br
Description: Tema jornalístico para o ViaVerde News, inspirado no visual editorial de grandes portais, com home configurável no Personalizar para escolha de categorias e ordem dos blocos.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
Text Domain: viaverde-news
*/



* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  background: var(--vvn-bg);
  color: var(--vvn-text);
  line-height: 1.55;
}
a { color: inherit; text-decoration: none; }
a:hover { color: var(--vvn-blue); }
img { display: block; max-width: 100%; height: auto; }
.container { width: min(calc(100% - 28px), var(--vvn-max)); margin: 0 auto; }
.card-surface { background: var(--vvn-white); border: 1px solid var(--vvn-line); }
.border-bottom-light { border-bottom: 1px solid #ececec; }

.site-topbar {
  background: var(--vvn-blue-dark);
  color: #fff;
  font-size: 12px;
}
.topbar-inner, .header-inner, .nav-inner, .footer-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.topbar-left, .topbar-right {
  min-height: 34px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.topbar-date { font-weight: 700; text-transform: capitalize; }
.topbar-text { opacity: .92; }

.site-header {
  background: #fff;
  border-bottom: 1px solid var(--vvn-line);
}
.header-inner { min-height: 108px; }
.header-left, .header-right { width: 240px; display: flex; align-items: center; }
.header-right { justify-content: flex-end; }
.branding { flex: 1; text-align: center; padding: 18px 0; }
.site-title {
  display: inline-block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 5vw, 56px);
  line-height: 1;
  font-weight: 700;
  letter-spacing: -.03em;
  color: var(--vvn-blue-dark);
}
.site-logo img { max-height: 78px; width: auto; margin: 0 auto; }
.site-tagline { margin-top: 6px; font-size: 12px; color: var(--vvn-muted); }

.menu-toggle {
  background: transparent;
  border: 0;
  color: var(--vvn-blue-dark);
  font-size: 30px;
  cursor: pointer;
  padding: 0;
}
.site-nav {
  background: #fff;
  border-bottom: 2px solid var(--vvn-blue);
  position: sticky;
  top: 0;
  z-index: 40;
}
.primary-menu, .footer-menu {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 0;
  padding: 0;
}
.primary-menu li a, .footer-menu li a {
  display: block;
  padding: 14px 0;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .02em;
}
.menu-wrap { width: 100%; }

.search-form { display: flex; align-items: center; gap: 8px; }
.search-field {
  width: 210px;
  height: 38px;
  border: 1px solid #cfd6df;
  border-radius: 20px;
  padding: 0 14px;
  outline: none;
}
.search-submit {
  height: 38px;
  border: 0;
  border-radius: 20px;
  background: var(--vvn-blue);
  color: #fff;
  padding: 0 16px;
  font-weight: 700;
  cursor: pointer;
}

.site-main { padding: 18px 0 42px; }
.breaking-bar {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 18px;
  align-items: center;
  margin-bottom: 18px;
  overflow: hidden;
}
.breaking-label {
  background: var(--vvn-blue);
  color: #fff;
  font-weight: 700;
  text-align: center;
  padding: 16px 10px;
  letter-spacing: .06em;
}
.breaking-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  padding-right: 18px;
}
.breaking-links a {
  font-size: 14px;
  font-weight: 700;
  position: relative;
}
.breaking-links a::after {
  content: "•";
  margin-left: 18px;
  color: #a8a8a8;
}
.breaking-links a:last-child::after { display: none; }

.hero-news {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, .95fr);
  gap: 28px;
  padding: 24px;
  margin-bottom: 24px;
}
.hero-lead img { width: 100%; }
.kicker {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  color: var(--vvn-blue);
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.kicker::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--vvn-green);
}
.hero-copy { padding-top: 16px; }
.hero-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(32px, 4vw, 50px);
  line-height: 1.05;
  margin: 0 0 14px;
}
.hero-excerpt { font-size: 18px; color: #303030; margin: 0 0 10px; }
.hero-side-story { padding-bottom: 16px; margin-bottom: 16px; }
.hero-side-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 26px;
  line-height: 1.15;
  margin: 0 0 8px;
}
.hero-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.mini-title { font-size: 16px; line-height: 1.3; margin: 10px 0 0; }

.home-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
}
.section-block { padding: 22px; margin-bottom: 24px; }
.section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 12px;
  margin-bottom: 18px;
  border-bottom: 3px solid var(--vvn-blue);
}
.section-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  margin: 0;
  line-height: 1.1;
}
.section-more {
  color: var(--vvn-blue);
  font-weight: 700;
  font-size: 14px;
}
.editorial-grid, .section-editorial-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .9fr);
  gap: 20px;
}
.featured-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
  gap: 20px;
}
.support-grid, .section-columns-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.section-columns-grid { grid-template-columns: repeat(3, 1fr); }
.story-card { min-width: 0; }
.story-card img { width: 100%; }
.large-story .card-title, .editorial-lead .card-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  line-height: 1.1;
  margin: 12px 0 10px;
}
.card-title, .inline-title {
  font-family: Georgia, "Times New Roman", serif;
  margin: 0 0 8px;
  line-height: 1.2;
}
.small-title { font-size: 20px; margin: 10px 0 0; }
.card-excerpt {
  margin: 0;
  color: #424242;
  font-size: 15px;
}
.story-inline {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 14px;
  align-items: start;
  padding-bottom: 14px;
  margin-bottom: 14px;
}
.story-inline img { width: 120px; height: 80px; object-fit: cover; }
.inline-title { font-size: 22px; }
.editorial-stack .inline-title, .compact-list .inline-title { font-size: 20px; }
.compact-list .story-inline:last-child, .editorial-stack .story-inline:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.meta {
  color: var(--vvn-muted);
  font-size: 12px;
  letter-spacing: .01em;
}

.sidebar-stack { display: grid; gap: 22px; align-content: start; }
.sidebar-card { padding: 18px; }
.sidebar-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 26px;
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--vvn-blue);
}
.latest-list, .trending-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}
.latest-list li {
  padding-bottom: 12px;
  border-bottom: 1px solid #efefef;
}
.latest-list li:last-child { border-bottom: 0; padding-bottom: 0; }
.latest-list a { font-weight: 700; line-height: 1.3; }
.trending-list li {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 12px;
  align-items: start;
  padding-bottom: 12px;
  border-bottom: 1px solid #efefef;
}
.trending-list li:last-child { border-bottom: 0; padding-bottom: 0; }
.trend-number {
  width: 34px;
  height: 34px;
  background: var(--vvn-blue-soft);
  color: var(--vvn-blue);
  border: 1px solid #c7d7ff;
  display: grid;
  place-items: center;
  font-weight: 700;
}

.widget-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  margin: 0 0 12px;
}
.widget { margin-bottom: 18px; }
.widget:last-child { margin-bottom: 0; }

.site-footer {
  background: #0e1117;
  color: #f2f2f2;
  padding: 34px 0;
  margin-top: 30px;
}
.footer-brand {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 8px;
}
.footer-copy { color: #d7d7d7; margin: 0 0 8px; }
.footer-menu li a { color: #fff; padding: 8px 0; }

.archive-layout, .single-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
}
.archive-content, .single-content {
  background: #fff;
  border: 1px solid var(--vvn-line);
  padding: 24px;
}
.entry-title, .archive-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.08;
  margin: 0 0 14px;
}

@media (max-width: 1080px) {
  .vv-article-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 32px;
  align-items: start;
}
  .vv-article-sidebar {
  width: 320px;
  max-width: 320px;
  min-width: 320px;
  align-self: start;
  position: relative;
}

  .home-layout, .archive-layout, .single-layout { grid-template-columns: 1fr; }
  .hero-news, .editorial-grid, .section-editorial-grid, .featured-grid, .section-columns-grid { grid-template-columns: 1fr; }
  .support-grid { grid-template-columns: repeat(2, 1fr); }
  .header-left, .header-right { width: 180px; }
}

@media (max-width: 820px) {
  .header-inner { min-height: 92px; }
  .header-right { display: none; }
  .header-left { width: auto; }
  .branding { text-align: left; padding: 14px 0; }
  .site-title { font-size: 34px; }
  .nav-inner { align-items: flex-start; }
  .menu-wrap {
    display: none;
    width: 100%;
    background: #fff;
  }
  .menu-wrap.is-open { display: block; }
  .primary-menu {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding: 10px 0;
  }
  .primary-menu li { width: 100%; border-bottom: 1px solid #efefef; }
  .primary-menu li a { width: 100%; padding: 12px 0; }
  .breaking-bar { grid-template-columns: 1fr; }
  .hero-title { font-size: 34px; }
  .hero-side-title { font-size: 22px; }
  .section-title, .sidebar-title { font-size: 26px; }
}

@media (max-width: 580px) {
  .container { width: min(calc(100% - 20px), var(--vvn-max)); }
  .topbar-right { display: none; }
  .story-inline { grid-template-columns: 1fr; }
  .story-inline img { width: 100%; height: auto; }
  .hero-mini-grid, .support-grid { grid-template-columns: 1fr; }
  .section-block, .sidebar-card { padding: 16px; }
}

/* ===== Header + Hero fiel ===== */
body{background:#f7f7f7;color:#222;font-family:Arial,Helvetica,sans-serif;}
.site-main{padding:0 0 42px;}
.vv-header{background:#fff;border-bottom:1px solid #dcdcdc;}
.vv-header-top{min-height:80px;display:flex;align-items:center;}
.vv-header-top-inner{display:grid;grid-template-columns:220px 1fr 240px;align-items:center;gap:18px;min-height:80px;}
.vv-branding-left{display:flex;align-items:center;}
.vv-logo-wrap img{max-height:58px;width:auto;display:block;}
.vv-site-title{font-family:Arial,Helvetica,sans-serif;font-weight:900;font-size:28px;letter-spacing:-.03em;color:#0a45c5;text-transform:uppercase;}
.vv-top-nav{display:flex;justify-content:flex-start;}
.vv-top-menu{display:flex;align-items:center;gap:34px;list-style:none;margin:0;padding:0;}
.vv-top-menu li a{font-size:13px;font-weight:700;color:#2a2a2a;text-transform:uppercase;letter-spacing:0;padding:8px 0;}
.vv-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:#222;}
.vv-icon-link{font-size:20px;line-height:1;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;}
.vv-subscribe-btn{background:#52cc2d;color:#111;font-size:15px;font-weight:700;padding:7px 10px;border-radius:4px;line-height:1;}
.vv-login-link{font-size:15px;font-weight:700;color:#222;}
.vv-user-icon{font-size:22px;line-height:1;color:#333;}
.site-nav{display:none;}
.container{width:min(calc(100% - 48px),1290px);margin:0 auto;}
.vv-hero-exact{background:#fff;border-top:1px solid #e2e2e2;border-bottom:1px solid #dcdcdc;padding:34px 0 28px;margin-bottom:26px;}
.vv-hero-grid{display:grid;grid-template-columns:minmax(0,1.95fr) 405px;gap:42px;align-items:start;}
.vv-hero-main{padding-top:6px;}
.vv-hero-kicker,.vv-hero-side-kicker{display:inline-block;color:#1654d1;font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:0;margin-bottom:18px;}
.vv-hero-title{font-family:Georgia,"Times New Roman",serif;font-size:58px;line-height:1.1;letter-spacing:-.04em;font-weight:700;margin:0 0 18px;color:#212121;max-width:820px;}
.vv-hero-title a,.vv-hero-side-title a{color:inherit;}
.vv-hero-summary{font-size:18px;line-height:1.45;color:#505050;max-width:820px;margin:0 0 14px;}
.vv-hero-bullets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 34px;max-width:860px;margin-top:10px;}
.vv-bullet-item,.vv-side-bullet-item{position:relative;padding-left:18px;}
.vv-bullet-item::before,.vv-side-bullet-item::before{content:"";width:8px;height:8px;border-radius:50%;background:#ef7d22;position:absolute;left:0;top:10px;}
.vv-bullet-item a,.vv-side-bullet-item a{font-size:18px;line-height:1.45;font-weight:700;color:#222;display:block;}
.vv-hero-side-card{display:block;}
.vv-hero-side-thumb img{width:100%;height:225px;object-fit:cover;border-radius:4px;margin-bottom:14px;}
.vv-hero-side-title{font-family:Georgia,"Times New Roman",serif;font-size:22px;line-height:1.35;letter-spacing:-.02em;margin:0 0 14px;color:#222;}
.vv-hero-side-list{display:grid;gap:10px;}
.breaking-bar{margin-top:0;margin-bottom:18px;}
@media (max-width: 1100px){.vv-header-top-inner{grid-template-columns:1fr;gap:14px;padding:14px 0;}.vv-branding-left,.vv-top-nav,.vv-header-actions{justify-content:center;}.vv-top-menu{flex-wrap:wrap;justify-content:center;gap:18px 22px;}.vv-hero-grid{grid-template-columns:1fr;gap:24px;}.vv-hero-title{font-size:44px;max-width:none;}.vv-hero-bullets{grid-template-columns:1fr;max-width:none;}.vv-hero-summary{max-width:none;}}
@media (max-width: 700px){.container{width:min(calc(100% - 24px),1290px);}.vv-header-top-inner{padding:10px 0;}.vv-site-title{font-size:22px;}.vv-top-menu li a{font-size:12px;}.vv-subscribe-btn,.vv-login-link{font-size:13px;}.vv-hero-exact{padding:22px 0;}.vv-hero-title{font-size:34px;}.vv-hero-summary{font-size:16px;}.vv-bullet-item a,.vv-side-bullet-item a{font-size:16px;}}



/* ===== Bloco abaixo da hero, fiel ao print ===== */
body{background:#fff;}
.vv-after-hero-exact{background:#fff;padding:0 0 28px;margin:0 0 24px;border-bottom:1px solid #e6e6e6;}
.vv-after-hero-grid{display:grid;grid-template-columns:minmax(0,1.95fr) 400px;gap:32px;align-items:start;}
.vv-after-hero-main-thumb{display:block;}
.vv-after-hero-main-thumb img{width:100%;height:466px;object-fit:cover;border-radius:4px;display:block;margin-bottom:16px;}
.vv-after-hero-kicker,.vv-after-side-kicker{display:inline-block;color:#1654d1;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.02em;line-height:1.2;margin-bottom:10px;}
.vv-after-hero-title{font-family:Georgia,"Times New Roman",serif;font-size:58px;line-height:1.08;letter-spacing:-.04em;font-weight:700;margin:0 0 16px;color:#212121;max-width:980px;}
.vv-after-hero-title a,.vv-after-side-title a{color:inherit;}
.vv-after-hero-summary{font-size:18px;line-height:1.45;color:#505050;max-width:900px;margin:0 0 14px;}
.vv-after-hero-bullets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 34px;margin-top:8px;max-width:1000px;}
.vv-after-bullet-item,.vv-after-side-bullet{position:relative;padding-left:18px;}
.vv-after-bullet-item::before,.vv-after-side-bullet::before{content:"";width:8px;height:8px;border-radius:999px;background:#ef6a1a;position:absolute;left:0;top:.62em;transform:translateY(-50%);}
.vv-after-bullet-item a,.vv-after-side-bullet a{font-size:17px;line-height:1.35;font-weight:700;color:#262626;display:block;}
.vv-after-hero-side{display:grid;gap:26px;}
.vv-after-side-card{display:block;padding:0;}
.vv-after-side-card.is-top{padding-bottom:18px;border-bottom:1px solid #e6e6e6;}
.vv-after-side-thumb{display:block;margin-bottom:12px;}
.vv-after-side-thumb img{width:100%;height:220px;object-fit:cover;border-radius:4px;display:block;}
.vv-after-side-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.vv-after-side-dots{font-size:26px;line-height:1;color:#1654d1;transform:translateY(-2px);}
.vv-after-side-title{font-family:Georgia,"Times New Roman",serif;font-size:24px;line-height:1.25;letter-spacing:-.02em;margin:0 0 10px;color:#222;}
.vv-after-side-summary{font-size:16px;line-height:1.45;color:#5b5b5b;margin:0;}
.vv-after-side-list{display:grid;gap:12px;margin-top:14px;}
@media (max-width:1100px){.vv-after-hero-grid{grid-template-columns:1fr;gap:24px;}.vv-after-hero-main-thumb img{height:auto;}.vv-after-hero-title{font-size:42px;}.vv-after-hero-bullets{grid-template-columns:1fr;}}
@media (max-width:700px){.vv-after-hero-title{font-size:34px;}.vv-after-bullet-item a,.vv-after-side-bullet a{font-size:16px;}.vv-after-side-title{font-size:22px;}}



/* ===== Terceiro bloco, fiel ao print ===== */
.vv-third-block-exact{background:#fff;padding:4px 0 28px;margin:0 0 28px;border-bottom:1px solid #dfdfdf;}
.vv-third-grid{display:grid;grid-template-columns:400px minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:start;}
.vv-third-opinion{padding-top:4px;}
.vv-third-opinion-head{border-bottom:2px solid #9fc1fb;margin-bottom:8px;}
.vv-third-opinion-title{font-family:Arial,Helvetica,sans-serif;font-size:24px;line-height:1.1;font-weight:700;color:#1654d1;margin:0 0 8px;}
.vv-third-opinion-list{display:grid;gap:10px;}
.vv-third-opinion-card{border:1px solid #9fc1fb;border-radius:4px;padding:14px 14px 12px;background:#fff;}
.vv-third-opinion-card-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.vv-third-opinion-card-title{font-family:Georgia,"Times New Roman",serif;font-size:22px;line-height:1.25;margin:0;color:#1654d1;font-weight:700;}
.vv-third-opinion-card-title a{color:inherit;}
.vv-third-opinion-card-summary{font-size:17px;line-height:1.45;color:#444;margin:12px 0 0;}
.vv-third-dots{font-size:28px;line-height:1;color:#1654d1;transform:translateY(-4px);flex:0 0 auto;}
.vv-third-feature-thumb{display:block;margin-bottom:12px;}
.vv-third-feature-thumb img{width:100%;height:225px;object-fit:cover;border-radius:4px;display:block;}
.vv-third-feature-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;}
.vv-third-feature-kicker{display:inline-block;color:#1654d1;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.02em;line-height:1.2;}
.vv-third-feature-title{font-family:Georgia,"Times New Roman",serif;font-size:26px;line-height:1.28;letter-spacing:-.02em;margin:0 0 12px;color:#222;font-weight:700;}
.vv-third-feature-title a{color:inherit;}
.vv-third-feature-bullets{display:grid;gap:10px;}
.vv-third-feature-bullet{position:relative;padding-left:18px;}
.vv-third-feature-bullet::before{content:"";width:8px;height:8px;border-radius:999px;background:#ef6a1a;position:absolute;left:0;top:.62em;transform:translateY(-50%);}
.vv-third-feature-bullet a{font-size:17px;line-height:1.38;font-weight:700;color:#262626;display:block;}
@media (max-width:1180px){.vv-third-grid{grid-template-columns:1fr;gap:24px;}.vv-third-opinion{order:1;}.vv-third-feature-title{font-size:24px;}}
@media (max-width:700px){.vv-third-opinion-title{font-size:22px;}.vv-third-opinion-card-title{font-size:20px;}.vv-third-opinion-card-summary,.vv-third-feature-bullet a{font-size:16px;}.vv-third-feature-thumb img{height:auto;}.vv-third-feature-title{font-size:22px;}}


/* ===== Quarto bloco, fiel ao print ===== */
.vv-fourth-block-exact{background:#fff;padding:2px 0 28px;margin:0 0 28px;border-bottom:1px solid #dfdfdf;}
.vv-fourth-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;align-items:start;}
.vv-fourth-card{min-width:0;}
.vv-fourth-thumb{display:block;margin-bottom:14px;}
.vv-fourth-thumb img{width:100%;height:160px;object-fit:cover;border-radius:4px;display:block;}
.vv-fourth-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;}
.vv-fourth-kicker{display:inline-block;color:#1654d1;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.02em;line-height:1.2;}
.vv-fourth-dots{font-size:28px;line-height:1;color:#1654d1;transform:translateY(-4px);flex:0 0 auto;}
.vv-fourth-title{font-family:Georgia,"Times New Roman",serif;font-size:24px;line-height:1.28;letter-spacing:-.02em;margin:0 0 12px;color:#222;font-weight:700;}
.vv-fourth-title a{color:inherit;}
.vv-fourth-summary{font-size:16px;line-height:1.45;color:#555;margin:0;}
.vv-fourth-bullets{display:grid;gap:10px;}
.vv-fourth-bullet{position:relative;padding-left:18px;}
.vv-fourth-bullet::before{content:"";width:8px;height:8px;border-radius:999px;background:#ef6a1a;position:absolute;left:0;top:.62em;transform:translateY(-50%);}
.vv-fourth-bullet a{font-size:17px;line-height:1.38;font-weight:700;color:#262626;display:block;}
@media (max-width:1180px){.vv-fourth-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}}
@media (max-width:700px){.vv-fourth-grid{grid-template-columns:1fr;}.vv-fourth-thumb img{height:auto;}.vv-fourth-title{font-size:22px;}.vv-fourth-bullet a,.vv-fourth-summary{font-size:16px;}}

/* FIFTH BLOCK EXACT */
.vv-fifth-block-exact{background:#fff;padding:2px 0 30px;margin:0 0 28px;border-bottom:1px solid #dfdfdf;}
.vv-fifth-head{border-bottom:2px solid #9fc1fb;margin-bottom:20px;}
.vv-fifth-title{font-family:Georgia,"Times New Roman",serif;font-size:28px;line-height:1.1;font-weight:700;color:#1654d1;margin:0 0 10px;}
.vv-fifth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px;align-items:start;}
.vv-fifth-thumb{display:block;margin-bottom:14px;}
.vv-fifth-thumb img{width:100%;height:360px;object-fit:cover;border-radius:4px;display:block;}
.vv-fifth-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;}
.vv-fifth-kicker{display:inline-block;color:#1654d1;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.02em;line-height:1.2;}
.vv-fifth-dots{font-size:28px;line-height:1;color:#1654d1;transform:translateY(-4px);flex:0 0 auto;}
.vv-fifth-card-title{font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.3;letter-spacing:-.02em;margin:0 0 12px;color:#222;font-weight:700;}
.vv-fifth-card-title a{color:inherit;}
.vv-fifth-summary{font-size:16px;line-height:1.45;color:#555;margin:0;}
.vv-fifth-bullets{display:grid;gap:10px;}
.vv-fifth-bullet{position:relative;padding-left:18px;}
.vv-fifth-bullet::before{content:"";width:8px;height:8px;border-radius:999px;background:#d90f0f;position:absolute;left:0;top:.62em;transform:translateY(-50%);}
.vv-fifth-bullet a{font-size:17px;line-height:1.38;font-weight:700;color:#262626;display:block;}
@media (max-width:1024px){.vv-fifth-grid{grid-template-columns:1fr;gap:26px;}.vv-fifth-thumb img{height:auto;}}
@media (max-width:700px){.vv-fifth-title{font-size:24px;}.vv-fifth-card-title{font-size:22px;}.vv-fifth-bullet a,.vv-fifth-summary{font-size:16px;}}


/* SIXTH BLOCK EXACT */
.vv-sixth-block-exact{background:#fff;padding:2px 0 30px;margin:0 0 28px;border-bottom:1px solid #dfdfdf;}
.vv-sixth-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.95fr) minmax(0,1fr);gap:32px;align-items:start;}
.vv-sixth-heading-wrap{border-bottom:2px solid #9fc1fb;margin-bottom:10px;}
.vv-sixth-col-title{font-family:Arial,Helvetica,sans-serif;font-size:26px;line-height:1.1;font-weight:700;color:#1654d1;margin:0 0 10px;}
.vv-sixth-main-card{min-width:0;}
.vv-sixth-main-thumb{display:block;margin-bottom:14px;}
.vv-sixth-main-thumb img{width:100%;height:225px;object-fit:cover;border-radius:4px;display:block;}
.vv-sixth-main-meta-row{display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.vv-sixth-avatar{width:28px;height:28px;border-radius:999px;background:linear-gradient(135deg,#f3c9a3,#a8c5ff);border:2px solid #fff;box-shadow:0 0 0 1px #c9d8fb;flex:0 0 auto;}
.vv-sixth-main-kicker{display:inline-block;color:#1654d1;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.02em;line-height:1.2;}
.vv-sixth-main-dots{margin-left:auto;font-size:28px;line-height:1;color:#1654d1;transform:translateY(-4px);flex:0 0 auto;}
.vv-sixth-main-title{font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.3;letter-spacing:-.02em;margin:0 0 12px;color:#222;font-weight:700;}
.vv-sixth-main-title a{color:inherit;}
.vv-sixth-main-summary{font-size:18px;line-height:1.42;color:#555;margin:0;}
.vv-sixth-newsletters,.vv-sixth-subscribers{min-width:0;}
.vv-newsletter-card{display:grid;grid-template-columns:108px 1fr;gap:12px;padding:12px;border:1px solid #d8dbe3;border-radius:4px;background:#fff;margin-bottom:10px;align-items:start;}
.vv-newsletter-icon{width:108px;height:82px;border-radius:6px;position:relative;background:#2b73e0;}
.vv-newsletter-icon.globe::before{content:"◉";position:absolute;left:18px;top:16px;font-size:46px;color:#0d213b;opacity:.9;}
.vv-newsletter-icon.globe::after{content:"◔";position:absolute;right:12px;top:12px;font-size:52px;color:#dce8ff;transform:rotate(180deg);}
.vv-newsletter-icon.pill{background:linear-gradient(135deg,#2c6be0,#3990ff);overflow:hidden;}
.vv-newsletter-icon.pill::before{content:"";position:absolute;left:28px;top:29px;width:52px;height:24px;border-radius:999px;background:linear-gradient(90deg,#ffffff 0 50%, #19253f 50% 100%);transform:rotate(-42deg);box-shadow:0 2px 8px rgba(0,0,0,.12);}
.vv-newsletter-icon.pill::after{content:"";position:absolute;right:10px;bottom:12px;width:22px;height:22px;border-radius:50%;background:#2459c7;box-shadow:-56px -42px 0 0 #1e5ed6;opacity:.9;}
.vv-newsletter-copy p{font-size:16px;line-height:1.3;color:#333;margin:2px 0 10px;}
.vv-newsletter-name{font-family:Georgia,"Times New Roman",serif;font-size:24px;line-height:1.1;color:#1654d1;margin:0;}
.vv-newsletter-form{display:flex;gap:8px;align-items:center;}
.vv-newsletter-form input{flex:1 1 auto;height:32px;border:1px solid #2154d6;border-radius:4px;padding:0 12px;font-size:15px;color:#333;background:#fff;min-width:0;}
.vv-newsletter-form button{width:30px;height:32px;border:0;border-radius:4px;background:#1847de;color:#fff;font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;}
.vv-newsletter-more{display:flex;align-items:center;justify-content:center;gap:8px;height:56px;border-radius:4px;background:#1241e4;color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:22px;font-weight:700;margin-top:6px;}
.vv-newsletter-more span{font-size:26px;line-height:1;}
.vv-newsletter-terms{font-size:14px;line-height:1.35;color:#555;text-align:center;margin:10px auto 0;max-width:340px;}
.vv-newsletter-terms a{color:#555;text-decoration:underline;}
.vv-subscribers-list{margin:4px 0 0;padding:0 0 0 28px;}
.vv-subscribers-list li{margin:0 0 14px;padding-left:2px;color:#1847de;font-family:Arial,Helvetica,sans-serif;font-size:17px;font-weight:700;}
.vv-subscribers-list li::marker{font-size:16px;font-weight:700;color:#1847de;}
.vv-subscribers-list a{font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.33;color:#222;font-weight:700;}
@media (max-width:1280px){.vv-sixth-grid{grid-template-columns:1fr;gap:24px;}.vv-sixth-main-thumb img{height:auto;}.vv-newsletter-terms{max-width:none;}}
@media (max-width:700px){.vv-sixth-col-title{font-size:24px;}.vv-newsletter-card{grid-template-columns:90px 1fr;}.vv-newsletter-icon{width:90px;height:76px;}.vv-newsletter-name{font-size:22px;}.vv-newsletter-copy p,.vv-newsletter-form input,.vv-newsletter-terms{font-size:15px;}.vv-newsletter-more{font-size:20px;height:52px;}.vv-sixth-main-title,.vv-subscribers-list a{font-size:22px;}.vv-sixth-main-summary{font-size:17px;}}


/* SINGLE - layout editorial */
body.single {
  background: #fff;
}
body.single .site-main {
  padding-top: 26px;
}
.vv-single-page .container {
  width: min(calc(100% - 36px), 1280px);
}
.vv-article {
  margin: 0 auto 54px;
}
.vv-article-grid {
  display: grid;
  grid-template-columns: minmax(0, 860px) 320px;
  gap: 26px;
  justify-content: center;
}
.vv-share-rail {
  position: sticky;
  top: 100px;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.vv-share-rail a {
  width: 34px;
  height: 34px;
  border: 1px solid #d8d8d8;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: var(--vvn-blue);
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}
.vv-article-main {
  max-width: none;
  min-width: 0;
}
.vv-article-sidebar {
  width: 100%;
  max-width: 320px;
  align-self: start;
}
.vv-article-sidebar #secondary,
.vv-article-sidebar .widget-area {
  display: block;
}
.vv-article-sidebar .widget {
  background: #fff;
  border: 1px solid var(--vvn-line);
  padding: 18px;
  margin-bottom: 18px;
}
.vv-article-sidebar .widget:last-child {
  margin-bottom: 0;
}
.vv-article-sidebar .widget-title {
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--vvn-blue);
}
.vv-article-thumb {
  margin: 0 0 16px;
}
.vv-article-thumb img {
  width: 100%;
  height: auto;
}
.vv-article-meta-top {
  font-size: 12px;
  font-weight: 800;
  color: var(--vvn-blue);
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 10px;
}
.vv-article-title {
  margin: 0 0 14px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.08;
  letter-spacing: -.03em;
}
.vv-article-byline {
  margin: 0 0 18px;
  color: #1f1f1f;
  font-size: 14px;
}
.vv-article-byline strong {
  display: inline-block;
  font-weight: 800;
}
.vv-article-summary {
  margin: 0 0 18px;
  font-size: 28px;
  line-height: 1.3;
  font-weight: 700;
  color: #222;
}
.vv-article-content {
  font-size: 22px;
  line-height: 1.72;
  color: #222;
}
.vv-article-content p {
  margin: 0 0 22px;
}
.vv-article-content h2,
.vv-article-content h3,
.vv-article-content h4 {
  font-size: 31px;
  line-height: 1.2;
  margin: 36px 0 14px;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 800;
}
.vv-article-content ul,
.vv-article-content ol {
  margin: 0 0 24px 28px;
}
.vv-article-content li {
  margin-bottom: 12px;
}
.vv-article-content blockquote {
  margin: 28px 0;
  padding: 18px 22px;
  border-left: 4px solid var(--vvn-blue);
  background: #f7f9fc;
  font-size: 24px;
  line-height: 1.5;
}
.vv-article-footer-note {
  border-top: 1px solid #e2e2e2;
  margin-top: 34px;
  padding-top: 20px;
  font-size: 14px;
  color: #444;
}
.vv-article-share-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  margin-top: 18px;
  font-size: 14px;
}
.vv-article-share-bottom span {
  font-weight: 700;
}
.vv-article-share-bottom a {
  color: #333;
}
.vv-read-more {
  border-top: 1px solid #d7d7d7;
  padding-top: 28px;
  margin-bottom: 56px;
}
.vv-read-more-title {
  margin: 0 0 16px;
  font-size: 20px;
  font-weight: 700;
}
.vv-read-more-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}
.vv-read-card-thumb img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  margin-bottom: 10px;
}
.vv-read-card-kicker {
  display: inline-block;
  background: #1a3350;
  color: #fff;
  padding: 3px 8px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.vv-read-card-title {
  margin: 0 0 8px;
  font-size: 22px;
  line-height: 1.15;
  text-transform: uppercase;
  font-weight: 900;
}
.vv-read-card-date {
  font-size: 12px;
  color: var(--vvn-blue);
  margin-bottom: 8px;
}
.vv-read-card-excerpt {
  margin: 0;
  color: #404040;
  font-size: 15px;
  line-height: 1.5;
}

@media (max-width: 1024px) {
  .vv-article-grid {
    grid-template-columns: 1fr;
  }
  .vv-share-rail {
    position: static;
    flex-direction: row;
    margin-bottom: 10px;
  }
  .vv-article-summary {
    font-size: 24px;
  }
  .vv-article-content {
    font-size: 20px;
  }
}

@media (max-width: 767px) {
  .vv-single-page .container {
    width: min(calc(100% - 20px), 100%);
  }
  .vv-article-title {
    font-size: 34px;
  }
  .vv-article-summary {
    font-size: 21px;
  }
  .vv-article-content {
    font-size: 18px;
  }
  .vv-article-content h2,
  .vv-article-content h3,
  .vv-article-content h4 {
    font-size: 24px;
  }
  .vv-read-more-grid {
    grid-template-columns: 1fr;
  }
}

.vv-share-icon {
  transition: background-color .22s ease, border-color .22s ease, color .22s ease, transform .22s ease;
}
.vv-share-icon svg {
  width: 16px;
  height: 16px;
  display: block;
}
.vv-share-icon:hover {
  transform: translateY(-1px);
}
.vv-share-facebook:hover {
  background: #1877f2;
  color: #fff;
  border-color: #1877f2;
}
.vv-share-x:hover {
  background: #111;
  color: #fff;
  border-color: #111;
}
.vv-share-whatsapp:hover {
  background: #25d366;
  color: #fff;
  border-color: #25d366;
}
.vv-share-linkedin:hover {
  background: #0a66c2;
  color: #fff;
  border-color: #0a66c2;
}
.vv-share-email:hover {
  background: #ea4335;
  color: #fff;
  border-color: #ea4335;
}
.vv-share-link:hover {
  background: var(--vvn-blue);
  color: #fff;
  border-color: var(--vvn-blue);
}
.vv-article-share-bottom .vv-share-icon {
  width: 38px;
  height: 38px;
  border: 1px solid #d8d8d8;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #333;
}
.vv-article-share-bottom .vv-share-icon svg {
  width: 17px;
  height: 17px;
}


/* Força hover colorido nos botões de compartilhamento da área inferior */
.vv-article-share-bottom .vv-share-facebook:hover {
  background: #1877f2 !important;
  color: #fff !important;
  border-color: #1877f2 !important;
}
.vv-article-share-bottom .vv-share-x:hover {
  background: #111 !important;
  color: #fff !important;
  border-color: #111 !important;
}
.vv-article-share-bottom .vv-share-whatsapp:hover {
  background: #25d366 !important;
  color: #fff !important;
  border-color: #25d366 !important;
}
.vv-article-share-bottom .vv-share-linkedin:hover {
  background: #0a66c2 !important;
  color: #fff !important;
  border-color: #0a66c2 !important;
}
.vv-article-share-bottom .vv-share-email:hover {
  background: #ea4335 !important;
  color: #fff !important;
  border-color: #ea4335 !important;
}
.vv-article-share-bottom .vv-share-link:hover {
  background: var(--vvn-blue) !important;
  color: #fff !important;
  border-color: var(--vvn-blue) !important;
}


/* Ajustes visuais do tema */
.site-footer{color:#fff;}
.site-footer a{color:#fff;}
.vv-subscribe-btn{color:#fff;padding:10px 16px;border-radius:6px;font-weight:700;}


/* Header search replacing subscribe/login */
.vv-header-actions {
  display: flex;
  align-items: center;
  gap: 14px;
}
.vv-header-search .search-form {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}
.vv-header-search .search-field {
  width: 220px;
  height: 40px;
  border: 1px solid #cfd6df;
  border-radius: 4px;
  padding: 0 12px;
  background: #fff;
}
.vv-header-search .search-submit {
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 4px;
  background: var(--vvn-blue);
  color: #fff;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}
.vv-header-search .search-submit:hover {
  opacity: .92;
}
.vv-subscribe-btn,
.vv-login-link,
.vv-user-icon {
  display: none !important;
}
@media (max-width: 768px) {
  .vv-header-search .search-field {
    width: 150px;
  }
}




/* Share da interna abaixo do título - corrigido */
.vv-share-rail{display:none !important;}
.vv-article-grid{grid-template-columns:minmax(0,860px);justify-content:center;}
.vv-article-main{width:100%;max-width:860px;min-width:0;}
.vv-article-title,.vv-article-summary,.vv-article-byline,.vv-article-content,.vv-article-meta-top,.vv-article-footer-note{max-width:860px;word-break:normal;overflow-wrap:break-word;}
.vv-article-share-inline{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:18px 0 24px;width:100%;max-width:860px;}
.vv-article-share-inline span{font-size:22px;font-weight:800;color:#111;margin-right:8px;line-height:1;}
.vv-article-share-inline .vv-share-icon{width:56px;height:56px;border:2px solid #d5d5d5;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#444;background:#fff;transition:all .25s ease;flex:0 0 56px;}
.vv-article-share-inline .vv-share-icon svg{width:22px;height:22px;display:block;}
.vv-article-share-inline .vv-share-icon:hover{transform:translateY(-1px);}
.vv-article-share-inline .vv-share-facebook:hover{background:#1877f2;color:#fff;border-color:#1877f2;}
.vv-article-share-inline .vv-share-x:hover{background:#111;color:#fff;border-color:#111;}
.vv-article-share-inline .vv-share-whatsapp:hover{background:#25d366;color:#fff;border-color:#25d366;}
.vv-article-share-inline .vv-share-email:hover{background:#ea4335;color:#fff;border-color:#ea4335;}
.vv-article-share-bottom{display:none !important;}
@media (max-width: 768px) {
  .vv-article-share-inline{gap:10px;margin:14px 0 20px;}
  .vv-article-share-inline span{width:100%;font-size:18px;margin-right:0;}
  .vv-article-share-inline .vv-share-icon{width:48px;height:48px;flex-basis:48px;}
  .vv-article-share-inline .vv-share-icon svg{width:19px;height:19px;}
}


/* HEADER FIXO */
.vv-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 9999;
    border-bottom: 2px solid #428042;
}

body {
    padding-top: 120px;
}


/* GARANTIA: esconder emojis */
img.emoji {
    display: none !important;
}

.search-submit{display:none!important;}


/* footer ajustado */
.site-footer {
    background: #111;
    color: #fff;
    padding: 40px 0;
    margin-top: 40px;
}
.site-footer a {
    color: #fff;
}
.footer-inner {
    align-items: flex-start;
}
.footer-brand-col {
    max-width: 520px;
}
.footer-brand .custom-logo {
    max-height: 60px;
    width: auto;
}
.footer-social {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin: 16px 0;
}
.footer-social a {
    opacity: .95;
}
.footer-social a:hover {
    opacity: 1;
    text-decoration: underline;
}


/* footer com ícones sociais */
.site-footer {
    background: #111;
    color: #fff;
    padding: 40px 0;
    margin-top: 40px;
}
.site-footer a {
    color: #fff;
}
.footer-inner {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    align-items: flex-start;
    flex-wrap: wrap;
}
.footer-brand-col {
    max-width: 560px;
}
.footer-brand .custom-logo {
    max-height: 64px;
    width: auto;
}
.footer-site-name {
    font-size: 28px;
    font-weight: 700;
    color: #fff;
}
.footer-desc {
    margin-top: 14px;
    line-height: 1.7;
    opacity: .92;
}
.footer-social {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 20px 0 16px;
}
.footer-social-link {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.2);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: .25s ease;
    font-size: 17px;
}
.footer-social-link:hover {
    transform: translateY(-2px);
}
.footer-facebook:hover { background: #1877f2; border-color: #1877f2; color: #fff; }
.footer-instagram:hover { background: #e1306c; border-color: #e1306c; color: #fff; }
.footer-x:hover { background: #000; border-color: #000; color: #fff; }
.footer-youtube:hover { background: #ff0000; border-color: #ff0000; color: #fff; }
.footer-whatsapp:hover { background: #25d366; border-color: #25d366; color: #fff; }

.footer-copyright {
    margin-top: 10px;
    opacity: .8;
}
.footer-menu-wrap {
    min-width: 240px;
}
.footer-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}
.footer-menu li + li {
    margin-top: 10px;
}
.footer-menu a {
    text-decoration: none;
}
.footer-menu a:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .footer-inner {
        flex-direction: column;
    }
}


/* AJUSTE FOOTER */
.vv-footer,
.site-footer {
    background: #fff !important;
    color: #000 !important;
    border-bottom: 2px solid #428042;
}

.site-footer a {
    color: #000 !important;
}


/* AJUSTE BORDA FOOTER NO TOPO */
.vv-footer,
.site-footer {
    border-bottom: none !important;
    border-top: 2px solid #428042 !important;
}


/* FIX MENU FOOTER HORIZONTAL */
.footer-menu {
    display: flex !important;
    flex-wrap: wrap;
    gap: 25px;
    align-items: center;
}

.footer-menu li {
    margin: 0 !important;
}

.footer-menu a {
    font-weight: 600;
    text-transform: uppercase;
}

/* CENTRALIZAR */
.footer-menu-wrap {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}


/* 6º bloco - substitui newsletters por 4 notícias */
.vv-sixth-mosaic-block{
    background:#fff;
    padding:0 0 34px;
    margin:0 0 28px;
    border-bottom:1px solid #dfdfdf;
}
.vv-sixth-mosaic-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}
.vv-sixth-mosaic-card{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    background:#f3efe5;
    min-height:294px;
    overflow:hidden;
}
.vv-sixth-mosaic-media a,
.vv-sixth-mosaic-media img,
.vv-sixth-mosaic-placeholder{
    display:block;
    width:100%;
    height:100%;
}
.vv-sixth-mosaic-media img{
    object-fit:cover;
}
.vv-sixth-mosaic-placeholder{
    background:#d9d1c0;
}
.vv-sixth-mosaic-content{
    padding:28px 20px 24px;
    display:flex;
    flex-direction:column;
}
.vv-sixth-mosaic-card.is-highlight .vv-sixth-mosaic-content{
    background:var(--vvn-blue, #428042);
}
.vv-sixth-mosaic-meta{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:24px;
}
.vv-sixth-mosaic-kicker{
    font-family:Arial,Helvetica,sans-serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:.02em;
    line-height:1.2;
    color:#7c1730;
    text-transform:uppercase;
}
.vv-sixth-mosaic-dots{
    margin-left:auto;
    color:#c23b5a;
    font-size:26px;
    line-height:1;
    transform:translateY(-4px);
}
.vv-sixth-mosaic-author{
    font-size:14px;
    line-height:1.2;
    color:#8a8a8a;
    font-style:italic;
    margin-bottom:10px;
}
.vv-sixth-mosaic-title{
    font-family:Arial,Helvetica,sans-serif;
    font-size:21px;
    line-height:1.28;
    font-weight:700;
    letter-spacing:-.02em;
    margin:0 0 12px;
    color:#3a3a3a;
}
.vv-sixth-mosaic-title a{color:inherit;text-decoration:none;}
.vv-sixth-mosaic-summary{
    font-size:15px;
    line-height:1.45;
    color:#5e5e5e;
    margin:0;
}
.vv-sixth-mosaic-card.is-highlight .vv-sixth-mosaic-kicker,
.vv-sixth-mosaic-card.is-highlight .vv-sixth-mosaic-dots,
.vv-sixth-mosaic-card.is-highlight .vv-sixth-mosaic-title,
.vv-sixth-mosaic-card.is-highlight .vv-sixth-mosaic-title a,
.vv-sixth-mosaic-card.is-highlight .vv-sixth-mosaic-author,
.vv-sixth-mosaic-card.is-highlight .vv-sixth-mosaic-summary{
    color:#fff;
}
@media (max-width: 980px){
    .vv-sixth-mosaic-grid{
        grid-template-columns:1fr;
    }
}
@media (max-width: 640px){
    .vv-sixth-mosaic-card{
        grid-template-columns:1fr;
        min-height:auto;
    }
    .vv-sixth-mosaic-media img,
    .vv-sixth-mosaic-placeholder{
        height:240px;
    }
    .vv-sixth-mosaic-content{
        padding:20px 16px 18px;
    }
}


/* ===== Categorias mais elegantes ===== */
.vv-archive-shell{
  padding: 22px 0 10px;
}
.vv-archive-hero{
  background:#fff;
  border:1px solid #e5e5e5;
  border-top:3px solid var(--vvn-blue, #428042);
  padding:32px 34px 28px;
  margin-bottom:28px;
}
.vv-archive-kicker{
  display:inline-block;
  font:700 12px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--vvn-blue, #428042);
  margin-bottom:12px;
}
.vv-archive-main-title{
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 5vw, 60px);
  line-height:1.02;
  letter-spacing:-.03em;
  margin:0 0 12px;
  color:#161616;
}
.vv-archive-desc{
  max-width:780px;
  font-size:18px;
  line-height:1.6;
  color:#5d5d5d;
}
.vv-archive-featured{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:26px;
  align-items:stretch;
  background:#fff;
  border:1px solid #e7e7e7;
  margin-bottom:26px;
  overflow:hidden;
}
.vv-archive-featured-media img,
.vv-archive-card-image img,
.vv-archive-placeholder{
  display:block;
  width:100%;
  height:100%;
}
.vv-archive-featured-media img,
.vv-archive-card-image img{
  object-fit:cover;
}
.vv-archive-featured-media{
  min-height:420px;
}
.vv-archive-placeholder{
  min-height:100%;
  background:linear-gradient(135deg,#ececec,#dcdcdc);
}
.vv-archive-featured-content{
  padding:34px 30px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.vv-archive-card-kicker{
  display:inline-block;
  font:700 12px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--vvn-blue, #428042);
  margin-bottom:14px;
}
.vv-archive-featured-title{
  margin:0 0 14px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 3.8vw, 52px);
  line-height:1.05;
  letter-spacing:-.03em;
  color:#191919;
}
.vv-archive-featured-title a,
.vv-archive-card-title a{
  color:inherit;
  text-decoration:none;
}
.vv-archive-featured-title a:hover,
.vv-archive-card-title a:hover{
  color:var(--vvn-blue, #428042);
}
.vv-archive-featured-excerpt{
  font-size:19px;
  line-height:1.65;
  color:#505050;
  margin:0 0 16px;
}
.vv-archive-featured-meta,
.vv-archive-card-meta{
  font-size:13px;
  color:#7f7f7f;
}
.vv-archive-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.vv-archive-card{
  background:#fff;
  border:1px solid #e7e7e7;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease;
}
.vv-archive-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(0,0,0,.06);
}
.vv-archive-card-image{
  display:block;
  aspect-ratio:16/10;
  background:#efefef;
}
.vv-archive-card-body{
  padding:22px 20px 20px;
}
.vv-archive-card-title{
  margin:0 0 12px;
  font-family: Georgia, "Times New Roman", serif;
  font-size:31px;
  line-height:1.08;
  letter-spacing:-.03em;
  color:#191919;
}
.vv-archive-card-excerpt{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.6;
  color:#575757;
}
.vv-archive-pagination{
  margin-top:28px;
}
.vv-archive-pagination .nav-links{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.vv-archive-pagination .page-numbers{
  min-width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #ddd;
  background:#fff;
  color:#222;
  text-decoration:none;
}
.vv-archive-pagination .page-numbers.current,
.vv-archive-pagination .page-numbers:hover{
  background:var(--vvn-blue, #428042);
  color:#fff;
  border-color:var(--vvn-blue, #428042);
}
.vv-archive-empty{
  background:#fff;
  border:1px solid #e7e7e7;
  padding:40px 32px;
}
.vv-archive-empty h2{
  margin:0 0 10px;
  font-family: Georgia, "Times New Roman", serif;
  font-size:34px;
}
.vv-archive-empty p{
  margin:0;
  color:#575757;
  line-height:1.6;
}

@media (max-width: 1100px){
  .vv-archive-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vv-archive-featured{ grid-template-columns:1fr; }
  .vv-archive-featured-media{ min-height:340px; }
}
@media (max-width: 700px){
  .vv-archive-hero{ padding:24px 18px 20px; }
  .vv-archive-grid{ grid-template-columns:1fr; gap:18px; }
  .vv-archive-card-title{ font-size:26px; }
  .vv-archive-featured-title{ font-size:38px; }
  .vv-archive-featured-content{ padding:24px 18px; }
}


/* ===== Carrossel de colunistas ===== */
.vv-columnists-home{
    margin: 36px 0 42px;
    padding-top: 18px;
    border-top: 1px solid #d9d9d9;
}
.vv-columnists-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:26px;
}
.vv-columnists-heading{
    margin:0;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 30px;
    line-height:1.1;
    font-weight: 800;
    color: var(--vvn-blue, #428042);
}
.vv-columnists-more{
    color: var(--vvn-blue, #428042);
    text-decoration:none;
    font: 700 16px/1 Arial, Helvetica, sans-serif;
}
.vv-columnists-more:hover{ text-decoration:underline; }

.vv-columnists-track-wrap{
    position:relative;
    padding: 10px 52px 0;
}
.vv-columnists-track{
    display:flex;
    gap:28px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scrollbar-width:none;
    -ms-overflow-style:none;
    padding: 8px 2px 10px;
}
.vv-columnists-track::-webkit-scrollbar{ display:none; }

.vv-columnist-card{
    position:relative;
    flex: 0 0 272px;
    scroll-snap-align:start;
    padding-top: 58px;
}
.vv-columnist-card-inner{
    position:relative;
    min-height: 408px;
    background:#032b73;
    border-radius: 10px;
    padding: 84px 14px 14px;
    text-align:center;
    box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
.vv-columnist-avatar{
    position:absolute;
    top:0;
    left:50%;
    transform:translateX(-50%);
    width:146px;
    height:146px;
    border-radius:50%;
    overflow:hidden;
    border:4px solid #1d52ff;
    background:#d8e5f8;
    z-index:2;
}
.vv-columnist-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.vv-columnist-avatar a,
.vv-columnist-avatar-fallback{
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}
.vv-columnist-avatar-fallback{
    font:700 54px/1 Georgia, serif;
    color:#032b73;
}
.vv-columnist-dots{
    position:absolute;
    top:34px;
    right:14px;
    color:#a7d4ff;
    font-size: 28px;
    line-height:1;
}
.vv-columnist-kicker{
    margin: 0 auto 10px;
    padding-bottom:10px;
    border-bottom:2px solid rgba(255,255,255,.85);
    font:700 13px/1.15 Arial, Helvetica, sans-serif;
    text-transform:uppercase;
    color:#ffd200;
}
.vv-columnist-title{
    margin:18px 0 0;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 22px;
    line-height:1.42;
    font-weight:500;
    color:#fff;
}
.vv-columnist-title a{
    color:inherit;
    text-decoration:none;
}
.vv-columnist-title a:hover{ text-decoration:underline; }

.vv-columnist-button{
    position:absolute;
    left:14px;
    right:14px;
    bottom:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    border-radius:8px;
    background:#fff;
    color:#1d52ff !important;
    font:700 20px/1 Arial, Helvetica, sans-serif;
    text-decoration:none;
    border:2px solid #2d58ff;
}
.vv-columnist-button:hover{
    background:#edf2ff;
}

.vv-columnists-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-20%);
    width:48px;
    height:48px;
    border-radius:999px;
    border:none;
    background:#f0f0f2;
    color:#6a6a6a;
    font-size:42px;
    line-height:1;
    cursor:pointer;
    z-index:3;
    box-shadow:0 4px 14px rgba(0,0,0,.08);
}
.vv-columnists-arrow.is-prev{ left:0; }
.vv-columnists-arrow.is-next{ right:0; background:#1d52ff; color:#fff; }
.vv-columnists-arrow[disabled]{ opacity:.45; cursor:default; }

.vv-columnists-dots-nav{
    display:flex;
    justify-content:center;
    gap:10px;
    margin-top:16px;
}
.vv-columnists-dots-nav button{
    width:12px;
    height:12px;
    border-radius:999px;
    border:none;
    padding:0;
    background:#d2d2d7;
    cursor:pointer;
}
.vv-columnists-dots-nav button.is-active{
    width:22px;
    background:#1d52ff;
}

@media (max-width: 900px){
    .vv-columnists-track-wrap{ padding: 8px 44px 0; }
    .vv-columnist-card{ flex-basis:240px; }
}
@media (max-width: 640px){
    .vv-columnists-header{ align-items:flex-start; flex-direction:column; }
    .vv-columnists-track-wrap{ padding:8px 0 0; }
    .vv-columnists-arrow{ display:none; }
    .vv-columnist-card{ flex-basis:82vw; }
}


/* ===== Correção: colunistas e saúde obedecem a cor principal ===== */
.vv-columnists-heading,
.vv-columnists-more,
.vv-columnists-more:hover,
.vv-columnists-dots-nav button.is-active,
.vv-columnists-arrow.is-next,
.vv-columnist-button,
.vv-columnist-button:hover,
.vv-columnist-avatar,
.vv-columnist-avatar-fallback {
    color: var(--vvn-blue) !important;
}

.vv-columnists-arrow.is-next,
.vv-columnists-dots-nav button.is-active,
.vv-columnist-avatar,
.vv-columnist-button,
.vv-columnist-button:hover {
    border-color: var(--vvn-blue) !important;
}

.vv-columnists-heading {
    color: var(--vvn-blue) !important;
}

.vv-columnists-more {
    color: var(--vvn-blue) !important;
}

.vv-columnists-dots-nav button.is-active {
    background: var(--vvn-blue) !important;
}

.vv-columnists-arrow.is-next {
    background: var(--vvn-blue) !important;
}

.vv-columnist-card-inner {
    background: var(--vvn-blue) !important;
}

.vv-columnist-avatar {
    border: 4px solid var(--vvn-blue) !important;
}

.vv-columnist-avatar-fallback {
    color: var(--vvn-blue) !important;
}

.vv-columnist-kicker {
    color: #ffffff !important;
}

.vv-columnist-button {
    color: var(--vvn-blue) !important;
}

.vv-columnist-button:hover {
    background: color-mix(in srgb, var(--vvn-blue) 8%, #ffffff 92%) !important;
}

/* Blocos de categoria / saúde */
.vv-category-heading,
.vv-category-title,
.vv-section-title,
.vv-home-section-title,
.vv-feed-title,
.vv-home-block-title,
.vv-archive-kicker,
.vv-archive-card-kicker,
.vv-archive-main-title a:hover,
.vv-archive-featured-title a:hover,
.vv-archive-card-title a:hover {
    color: var(--vvn-blue) !important;
}

.vv-category-header,
.vv-home-section-header,
.vv-section-header {
    border-bottom-color: color-mix(in srgb, var(--vvn-blue) 35%, #ffffff 65%) !important;
}

.vv-category-card,
.vv-home-category-card,
.vv-section-card,
.vv-post-card,
.vv-list-card {
    border-color: color-mix(in srgb, var(--vvn-blue) 35%, #ffffff 65%) !important;
}

.vv-category-card .vv-dots,
.vv-home-category-card .vv-dots,
.vv-section-card .vv-dots,
.vv-post-card .vv-dots {
    color: var(--vvn-blue) !important;
}

/* Fallbacks mais amplos para títulos azuis dos blocos */
[class*="category"] > h2,
[class*="section"] > h2,
[class*="block"] > h2 {
    color: var(--vvn-blue) !important;
}


/* ===== Bloco Opinião / Saúde com cor dinâmica ===== */
.vv-third-opinion-head {
    border-bottom-color: color-mix(in srgb, var(--vvn-blue) 38%, #ffffff 62%) !important;
}

.vv-third-opinion-title,
.vv-third-opinion-card-title,
.vv-third-opinion-card-title a,
.vv-third-dots,
.vv-third-feature-kicker,
.vv-third-feature-kicker a {
    color: var(--vvn-blue) !important;
}

.vv-third-opinion-card {
    border-color: color-mix(in srgb, var(--vvn-blue) 38%, #ffffff 62%) !important;
}

/* fallback para navegadores sem color-mix */
@supports not (color: color-mix(in srgb, red 50%, white 50%)) {
    .vv-third-opinion-head {
        border-bottom-color: var(--vvn-blue) !important;
    }
    .vv-third-opinion-card {
        border-color: var(--vvn-blue) !important;
    }
}


/* Colunistas com nome e foto reais */
.vv-columnist-avatar-img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.vv-columnist-kicker{
  color:#fff !important;
  opacity:.9;
}
.vv-columnist-name{
  margin:18px 0 8px;
  font:700 18px/1.15 Arial,Helvetica,sans-serif;
  color:#fff;
  text-transform:uppercase;
}
.vv-columnist-name a{
  color:#fff;
  text-decoration:none;
}
.vv-columnist-name a:hover{
  text-decoration:underline;
}
.vv-columnist-title{
  margin:0;
  font:500 20px/1.42 Arial,Helvetica,sans-serif;
  color:#111;
}
.vv-columnist-title a{
  color:inherit;
  text-decoration:none;
}
.vv-columnist-title a:hover{
  text-decoration:underline;
}


/* ===== Cor principal do painel aplicada no site inteiro ===== */
.vv-header,
.site-header {
    border-bottom-color: var(--vvn-primary) !important;
}

.vv-columnists-heading,
.vv-columnists-more,
.vv-third-opinion-title,
.vv-third-opinion-card-title,
.vv-third-opinion-card-title a,
.vv-third-feature-kicker,
.vv-third-feature-kicker a,
.vv-archive-kicker,
.vv-archive-card-kicker,
.vv-category-heading,
.vv-category-title,
.vv-section-title,
.vv-home-section-title,
.vv-feed-title,
.vv-home-block-title,
.vv-sixth-mosaic-kicker,
.footer-social-link,
.site-footer a:hover,
.vv-footer a:hover {
    color: var(--vvn-primary) !important;
}

.vv-third-opinion-head,
.vv-category-header,
.vv-home-section-header,
.vv-section-header,
.vv-archive-hero,
.site-footer,
.vv-footer {
    border-color: var(--vvn-primary) !important;
}

.vv-third-opinion-card,
.vv-category-card,
.vv-home-category-card,
.vv-section-card,
.vv-post-card,
.vv-list-card,
.vv-columnist-button,
.vv-columnist-avatar,
.vv-archive-pagination .page-numbers.current,
.vv-archive-pagination .page-numbers:hover {
    border-color: var(--vvn-primary) !important;
}

.vv-columnist-card-inner,
.vv-columnists-dots-nav button.is-active,
.vv-columnists-arrow.is-next,
.vv-archive-pagination .page-numbers.current,
.vv-archive-pagination .page-numbers:hover,
.btn-assine,
.vv-search button,
.search-submit {
    background: var(--vvn-primary) !important;
}

.vv-columnist-button,
.vv-search button,
.search-submit {
    color: #fff !important;
}

.vv-columnist-button:not(:hover) {
    background: #fff !important;
    color: var(--vvn-primary) !important;
}

.vv-bullet-item::before,
.vv-side-bullet-item::before,
.hero-bullets li::before,
.hero-side-list li::before,
.vv-third-bullet::before,
.vv-fourth-bullet::before,
.vv-fifth-bullet::before,
.vv-sixth-list li::before,
.vv-post-list li::before,
.vv-mini-bullet::before,
.vv-bullet::before {
    background: var(--vvn-primary) !important;
    color: var(--vvn-primary) !important;
    border-color: var(--vvn-primary) !important;
}

.vv-third-dots,
.vv-category-card .vv-dots,
.vv-home-category-card .vv-dots,
.vv-section-card .vv-dots,
.vv-post-card .vv-dots,
.vv-sixth-mosaic-dots,
.vv-columnist-dots {
    color: var(--vvn-primary) !important;
}

.vv-columnist-avatar-fallback,
.vv-columnists-more:hover,
.vv-archive-main-title a:hover,
.vv-archive-featured-title a:hover,
.vv-archive-card-title a:hover {
    color: var(--vvn-primary) !important;
}

/* Keep footer social hover with brand colors if already defined; otherwise primary fallback */
.footer-social-link:not(.footer-facebook):not(.footer-instagram):not(.footer-x):not(.footer-youtube):not(.footer-whatsapp):hover {
    background: var(--vvn-primary) !important;
    border-color: var(--vvn-primary) !important;
    color: #fff !important;
}


/* Bolinhas dos blocos 2 e 3 obedecendo a cor principal do site */
.vv-after-bullet-item::before,
.vv-after-side-bullet::before,
.vv-third-feature-bullet::before {
    background: var(--vvn-primary) !important;
    border-color: var(--vvn-primary) !important;
    color: var(--vvn-primary) !important;
}


/* Colunistas: exibir nome do colunista no topo e notícia abaixo */
.vv-columnist-kicker{
    min-height: 42px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-size: 12px !important;
    line-height: 1.1 !important;
    padding: 0 8px 10px;
}
.vv-columnist-title{
    margin-top: 16px !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
}


/* Ajuste final do bloco de colunistas: nome no topo e notícia abaixo */
.vv-columnist-name{
    display:none !important;
}
.vv-columnist-kicker{
    min-height:auto !important;
    margin: 0 auto 14px !important;
    padding: 0 8px 10px !important;
    border-bottom: 2px solid rgba(255,255,255,.85) !important;
    font: 700 13px/1.15 Arial, Helvetica, sans-serif !important;
    text-transform: uppercase !important;
    color: #ffd200 !important;
}
.vv-columnist-kicker a{
    color: inherit !important;
    text-decoration: none !important;
}
.vv-columnist-title{
    margin: 18px 0 0 !important;
    font: 500 20px/1.42 Arial, Helvetica, sans-serif !important;
    color: #fff !important;
}
.vv-columnist-title a{
    color: inherit !important;
    text-decoration: none !important;
}
.vv-columnist-title a:hover{
    text-decoration: underline !important;
}


/* Footer: descrição e copyright seguem a cor da fonte do site */
.footer-copy,
.footer-desc,
.footer-copyright,
.site-footer .footer-copy,
.site-footer .footer-desc,
.site-footer .footer-copyright,
.vv-footer .footer-copy,
.vv-footer .footer-desc,
.vv-footer .footer-copyright {
    color: var(--vvn-font-color, var(--vvn-text-color, inherit)) !important;
}


/* ===== Responsive mobile-only header / off-canvas ===== */
@media (max-width: 768px){
    .vv-header,
    .site-header{
        position: static !important;
        top: auto !important;
    }

    body{
        padding-top: 0 !important;
    }

    .vv-topbar{
        background: #d50000 !important;
        padding: 14px 0 !important;
        border-bottom: none !important;
    }

    .vv-mobile-header-row{
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        position: relative !important;
        min-height: 72px !important;
        gap: 12px !important;
    }

    /* hide desktop-only elements on mobile */
    .vv-logo-area{
        display: none !important;
    }

    .vv-menu-top:not(.is-open){
        display: none !important;
    }

    .vv-search{
        display: none !important;
    }

    .vv-mobile-menu-toggle,
    .vv-mobile-search-toggle{
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: transparent !important;
        border: 0 !important;
        color: #fff !important;
        padding: 0 !important;
        margin: 0 !important;
        cursor: pointer;
        z-index: 1102;
        flex: 0 0 auto;
    }

    .vv-mobile-menu-toggle{
        gap: 12px;
        min-width: 108px;
        justify-content: flex-start !important;
    }

    .vv-mobile-menu-icon{
        display: inline-flex;
        flex-direction: column;
        justify-content: center;
        gap: 5px;
    }

    .vv-mobile-menu-icon span{
        width: 24px;
        height: 3px;
        background: #fff;
        display: block;
        border-radius: 2px;
        transition: transform .25s ease, opacity .25s ease;
    }

    .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(1){
        transform: translateY(8px) rotate(45deg);
    }
    .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(2){
        opacity: 0;
    }
    .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(3){
        transform: translateY(-8px) rotate(-45deg);
    }

    .vv-mobile-menu-label{
        color: #fff;
        font: 800 18px/1 Arial, Helvetica, sans-serif;
        letter-spacing: .02em;
    }

    /* centered logo in mobile topbar */
    .vv-mobile-header-row .custom-logo-link,
    .vv-mobile-header-row .logo{
        position: absolute !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        top: 50% !important;
        transform-origin: center center;
        translate: -50% -50%;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        min-width: 138px;
        min-height: 68px;
        background: #fff;
        padding: 8px 14px;
        z-index: 1101;
    }

    .vv-mobile-header-row .custom-logo{
        max-height: 52px !important;
        width: auto !important;
    }

    .vv-mobile-header-row .logo a{
        color: #2d7b32 !important;
        font-size: 26px !important;
        line-height: 1 !important;
        text-decoration: none;
    }

    .vv-mobile-search-toggle{
        width: 56px;
        height: 56px;
        border-radius: 16px !important;
        border: 1px solid rgba(255,255,255,.24) !important;
        background: rgba(255,255,255,.06) !important;
        margin-left: auto !important;
    }

    .vv-mobile-search-glyph{
        font-size: 30px;
        line-height: 1;
        color: #fff;
    }

    /* mobile search panel */
    .vv-search.is-open{
        display: block !important;
        position: absolute !important;
        top: calc(100% + 8px) !important;
        left: 12px !important;
        right: 12px !important;
        background: #fff !important;
        border-radius: 12px;
        padding: 14px !important;
        box-shadow: 0 16px 30px rgba(0,0,0,.18);
        z-index: 1103;
    }

    .vv-search.is-open form{
        display: block !important;
    }

    .vv-search.is-open input,
    .vv-search.is-open input[type="search"],
    .vv-search.is-open input[type="text"]{
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* off-canvas mobile nav */
    .vv-menu-top{
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: min(320px, 86vw) !important;
        height: 100vh !important;
        background: #fff !important;
        transform: translateX(-105%) !important;
        transition: transform .3s ease !important;
        box-shadow: 10px 0 24px rgba(0,0,0,.18) !important;
        z-index: 1104 !important;
        padding: 84px 20px 20px !important;
        overflow-y: auto;
    }

    .vv-menu-top.is-open{
        display: block !important;
        transform: translateX(0) !important;
    }

    .vv-menu-top ul{
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    .vv-menu-top li{
        border-bottom: 1px solid #efefef !important;
        margin: 0 !important;
    }

    .vv-menu-top li:last-child{
        border-bottom: 0 !important;
    }

    .vv-menu-top a{
        display: block !important;
        padding: 14px 0 !important;
        color: #1f1f1f !important;
        font: 700 16px/1.2 Arial, Helvetica, sans-serif;
        text-decoration: none !important;
    }

    .vv-mobile-overlay{
        position: fixed;
        inset: 0;
        background: rgba(0,0,0,.35);
        opacity: 0;
        visibility: hidden;
        transition: opacity .25s ease, visibility .25s ease;
        z-index: 1103;
    }

    .vv-mobile-overlay.is-open{
        opacity: 1;
        visibility: visible;
    }

    body.vv-mobile-menu-open{
        overflow: hidden;
    }
}

@media (min-width: 769px){
    .vv-mobile-menu-toggle,
    .vv-mobile-search-toggle,
    .vv-mobile-overlay{
        display: none !important;
    }
}


/* ===== HARD FIX mobile header (remove desktop layout completely) ===== */
@media (max-width: 768px){

    /* REMOVE COMPLETELY desktop header blocks */
    .vv-logo-area,
    .vv-menu-top:not(.is-open),
    .vv-search,
    .vv-topbar nav,
    .vv-topbar ul,
    .vv-topbar li,
    .vv-topbar .menu,
    .vv-topbar .menu-top,
    .vv-topbar .nav,
    .vv-header .menu,
    .vv-header nav{
        display: none !important;
    }

    /* ensure only mobile header is visible */
    .vv-mobile-header-row{
        display: flex !important;
    }

}


/* ===== Mobile header final: hamburger left, logo center, search icon right ===== */
@media (max-width: 768px){

    /* show mobile toggles */
    .vv-mobile-toggle,
    .vv-mobile-search-toggle{
        display: inline-flex !important;
        position: absolute !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 1200 !important;
    }

    .vv-mobile-toggle{
        left: 16px !important;
        gap: 10px !important;
        min-width: auto !important;
        width: auto !important;
        height: 44px !important;
        align-items: center !important;
        justify-content: flex-start !important;
        background: transparent !important;
        border: 0 !important;
        padding: 0 !important;
        color: #fff !important;
    }

    .vv-mobile-toggle strong{
        display: inline-block !important;
        color: #fff !important;
        font: 800 16px/1 Arial, Helvetica, sans-serif !important;
        letter-spacing: .02em !important;
    }

    .vv-mobile-search-toggle{
        right: 16px !important;
        width: 46px !important;
        height: 46px !important;
        border-radius: 14px !important;
        border: 1px solid rgba(255,255,255,.28) !important;
        background: rgba(255,255,255,.06) !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        color: #fff !important;
    }

    .vv-mobile-search-icon,
    .vv-mobile-search-glyph{
        display: inline-block !important;
        font-size: 26px !important;
        line-height: 1 !important;
        color: #fff !important;
    }

    /* ensure logo stays centered */
    .vv-topbar .container{
        position: relative !important;
        min-height: 74px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .vv-topbar .custom-logo-link,
    .vv-topbar .logo{
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        translate: none !important;
        margin: 0 auto !important;
        z-index: 1101 !important;
    }

    /* hide search field completely on mobile until icon clicked */
    .vv-search,
    .vv-search form,
    .vv-search input,
    .vv-search input[type="search"],
    .vv-search input[type="text"]{
        display: none !important;
    }

    .vv-search.is-open{
        display: block !important;
        position: absolute !important;
        left: 12px !important;
        right: 12px !important;
        top: calc(100% + 8px) !important;
        background: #fff !important;
        border-radius: 12px !important;
        padding: 14px !important;
        box-shadow: 0 16px 30px rgba(0,0,0,.18) !important;
        z-index: 1201 !important;
    }

    .vv-search.is-open form,
    .vv-search.is-open input,
    .vv-search.is-open input[type="search"],
    .vv-search.is-open input[type="text"]{
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* if old desktop search is still rendering visually, force-hide */
    .vv-header input[type="search"]:not(.vv-search.is-open input),
    .vv-header input[type="text"]:not(.vv-search.is-open input){
        display: none !important;
    }
}


/* ===== Mobile header visibility fix ===== */
@media (max-width: 768px){
  .vv-topbar{
    background: #d50000 !important;
    padding: 14px 0 !important;
    border-bottom: none !important;
  }

  .vv-header,
  .site-header{
    position: static !important;
    top: auto !important;
    border-bottom: none !important;
  }

  body{
    padding-top: 0 !important;
  }

  .vv-mobile-header-row{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 74px !important;
    position: relative !important;
  }

  /* hide desktop pieces on mobile */
  .vv-logo-area{display:none !important;}
  .vv-topbar nav:not(.is-open){display:none !important;}
  .vv-search{display:none !important;}

  .vv-mobile-menu-toggle,
  .vv-mobile-search-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 3000 !important;
    background: transparent !important;
    color: #fff !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .vv-mobile-menu-toggle{
    left: 16px !important;
    gap: 10px !important;
    border: 0 !important;
    padding: 0 !important;
    min-width: 110px !important;
    height: 46px !important;
    justify-content: flex-start !important;
  }

  .vv-mobile-menu-icon{
    display: inline-flex !important;
    flex-direction: column !important;
    gap: 5px !important;
  }

  .vv-mobile-menu-icon span{
    display: block !important;
    width: 24px !important;
    height: 3px !important;
    background: #fff !important;
    border-radius: 2px !important;
  }

  .vv-mobile-menu-label{
    display: inline-block !important;
    color: #fff !important;
    font: 800 16px/1 Arial, Helvetica, sans-serif !important;
    letter-spacing: .02em !important;
  }

  .vv-mobile-search-toggle{
    right: 16px !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    padding: 0 !important;
  }

  .vv-mobile-search-glyph{
    display: inline-block !important;
    color: #fff !important;
    font-size: 26px !important;
    line-height: 1 !important;
  }

  /* centered mobile logo */
  .vv-mobile-header-row::before{
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 138px;
    height: 68px;
    background: #fff;
    z-index: 1;
  }

  .vv-mobile-header-row .custom-logo-link,
  .vv-mobile-header-row .logo{
    position: relative !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 138px !important;
    min-height: 68px !important;
    margin: 0 auto !important;
    background: transparent !important;
  }

  .vv-mobile-header-row .custom-logo{
    max-height: 52px !important;
    width: auto !important;
  }

  .vv-mobile-header-row .logo a{
    color: #2d7b32 !important;
    font-size: 26px !important;
    line-height: 1 !important;
    text-decoration: none !important;
  }

  /* search dropdown */
  .vv-search.is-open{
    display: block !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 8px) !important;
    background: #fff !important;
    border-radius: 12px !important;
    padding: 14px !important;
    box-shadow: 0 16px 30px rgba(0,0,0,.18) !important;
    z-index: 2900 !important;
  }
  .vv-search.is-open form,
  .vv-search.is-open input,
  .vv-search.is-open input[type="search"],
  .vv-search.is-open input[type="text"]{
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* offcanvas */
  .vv-menu-top{
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: min(320px, 86vw) !important;
    height: 100vh !important;
    background: #fff !important;
    transform: translateX(-105%) !important;
    transition: transform .3s ease !important;
    box-shadow: 10px 0 24px rgba(0,0,0,.18) !important;
    z-index: 3100 !important;
    padding: 84px 20px 20px !important;
    overflow-y: auto !important;
  }
  .vv-menu-top.is-open{
    display: block !important;
    transform: translateX(0) !important;
  }
  .vv-menu-top ul{
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  .vv-menu-top li{border-bottom:1px solid #efefef !important; margin:0 !important;}
  .vv-menu-top a{display:block !important; padding:14px 0 !important; color:#1f1f1f !important; font:700 16px/1.2 Arial,Helvetica,sans-serif !important;}

  .vv-mobile-overlay{
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0,0,0,.35) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity .25s ease, visibility .25s ease !important;
    z-index: 3050 !important;
  }
  .vv-mobile-overlay.is-open{
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.vv-mobile-menu-open{overflow:hidden !important;}
}

@media (min-width: 769px){
  .vv-mobile-menu-toggle,
  .vv-mobile-search-toggle,
  .vv-mobile-overlay{
    display: none !important;
  }
}


/* ===== Accurate mobile header layout ===== */
@media (max-width: 768px){
  .vv-header,
  .site-header{
    position: static !important;
    top: auto !important;
    border-bottom: none !important;
  }

  body{
    padding-top: 0 !important;
  }

  .vv-header-top{
    background: #d50000 !important;
    min-height: auto !important;
  }

  .vv-header-top-inner{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 78px !important;
    position: relative !important;
    grid-template-columns: none !important;
    gap: 0 !important;
  }

  /* desktop pieces off on mobile */
  .vv-top-nav:not(.is-open){
    display: none !important;
  }

  .vv-header-actions{
    display: block !important;
  }

  .vv-header-actions .vv-header-search{
    display: none !important;
  }

  .vv-icon-link,
  .vv-subscribe-btn,
  .vv-login-link,
  .vv-user-icon{
    display: none !important;
  }

  /* centered logo */
  .vv-branding-left{
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    padding: 0 72px !important;
    z-index: 2 !important;
  }

  .vv-logo-wrap{
    background: #fff;
    padding: 8px 14px;
    line-height: 0;
  }

  .vv-logo-wrap img{
    max-height: 52px !important;
    width: auto !important;
    display: block !important;
  }

  .vv-site-title{
    background:#fff;
    padding:10px 14px;
    color:#2d7b32 !important;
  }

  /* left hamburger */
  .vv-mobile-menu-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 5 !important;
    border: 0 !important;
    background: transparent !important;
    color: #fff !important;
    padding: 0 !important;
    min-width: 108px;
    cursor: pointer;
  }

  .vv-mobile-menu-icon{
    display: inline-flex !important;
    flex-direction: column !important;
    gap: 5px !important;
  }

  .vv-mobile-menu-icon span{
    display:block !important;
    width: 24px !important;
    height: 3px !important;
    background: #fff !important;
    border-radius: 2px !important;
    transition: transform .25s ease, opacity .25s ease !important;
  }

  .vv-mobile-menu-label{
    display:inline-block !important;
    color:#fff !important;
    font:800 16px/1 Arial,Helvetica,sans-serif !important;
    letter-spacing:.02em !important;
  }

  .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(1){
    transform: translateY(8px) rotate(45deg) !important;
  }
  .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(2){
    opacity: 0 !important;
  }
  .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(3){
    transform: translateY(-8px) rotate(-45deg) !important;
  }

  /* right search icon */
  .vv-mobile-search-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    background: rgba(255,255,255,.06) !important;
    color: #fff !important;
    z-index: 5 !important;
    cursor: pointer;
    padding: 0 !important;
  }

  .vv-mobile-search-glyph{
    font-size: 28px !important;
    line-height: 1 !important;
    color: #fff !important;
  }

  /* search dropdown */
  .vv-header-actions .vv-header-search.is-open{
    display: block !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 8px) !important;
    background: #fff !important;
    border-radius: 12px !important;
    padding: 14px !important;
    box-shadow: 0 16px 30px rgba(0,0,0,.18) !important;
    z-index: 1002 !important;
  }

  .vv-header-actions .vv-header-search.is-open .search-form,
  .vv-header-actions .vv-header-search.is-open .search-field{
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .vv-header-actions .vv-header-search.is-open .search-submit{
    display: none !important;
  }

  /* off-canvas menu */
  .vv-top-nav{
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: min(320px, 86vw) !important;
    height: 100vh !important;
    background: #fff !important;
    transform: translateX(-105%) !important;
    transition: transform .3s ease !important;
    box-shadow: 10px 0 24px rgba(0,0,0,.18) !important;
    z-index: 1003 !important;
    padding: 84px 20px 20px !important;
    overflow-y: auto !important;
  }

  .vv-top-nav.is-open{
    display:block !important;
    transform: translateX(0) !important;
  }

  .vv-top-menu{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  .vv-top-menu li{
    margin:0 !important;
    border-bottom:1px solid #efefef !important;
  }

  .vv-top-menu li:last-child{
    border-bottom:0 !important;
  }

  .vv-top-menu li a{
    display:block !important;
    padding:14px 0 !important;
    color:#1f1f1f !important;
    font:700 16px/1.2 Arial,Helvetica,sans-serif !important;
  }

  .vv-mobile-overlay{
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0,0,0,.35) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity .25s ease, visibility .25s ease !important;
    z-index: 1001 !important;
  }

  .vv-mobile-overlay.is-open{
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.vv-mobile-menu-open{
    overflow: hidden !important;
  }
}

@media (min-width: 769px){
  .vv-mobile-menu-toggle,
  .vv-mobile-search-toggle,
  .vv-mobile-overlay{
    display: none !important;
  }
}


/* HARD override remove red mobile header */
@media (max-width:768px){
  .vv-topbar,
  .vv-header-top,
  .site-header,
  header{
    background: #ffffff !important;
  }

  /* force remove any red inline/background */
  [style*="red"],
  [style*="#d50000"],
  [style*="#ff0000"]{
    background: #ffffff !important;
  }
}


/* FIX: mobile MENU button color follow font color */
@media (max-width:768px){
  .vv-mobile-menu-toggle{
    background: transparent !important;
    color: var(--vvn-primary, #000) !important;
    border: 2px solid var(--vvn-primary, #000) !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
  }

  .vv-mobile-menu-icon span{
    background: var(--vvn-primary, #000) !important;
  }

  .vv-mobile-menu-label{
    color: var(--vvn-primary, #000) !important;
  }
}


/* ===== MOBILE HEADER: MENU left, logo center, search icon right ===== */
@media (max-width: 768px){
  .vv-header,
  .vv-header-top,
  .site-header{
    position: static !important;
    top: auto !important;
    border-bottom: none !important;
  }

  body{
    padding-top: 0 !important;
  }

  .vv-header-top{
    background: #fff !important;
  }

  .vv-header-top-inner{
    min-height: 86px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
  }

  /* desktop parts hidden on mobile */
  .vv-top-nav:not(.is-open){
    display: none !important;
  }
  .vv-header-actions{
    display: none !important;
  }

  /* left menu button */
  .vv-mobile-menu-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    border: 2px solid var(--vvn-primary, #000) !important;
    border-radius: 14px !important;
    background: #fff !important;
    color: var(--vvn-primary, #000) !important;
    z-index: 10020 !important;
    cursor: pointer !important;
  }

  .vv-mobile-menu-icon{
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
  }

  .vv-mobile-menu-icon span{
    display: block !important;
    width: 24px !important;
    height: 3px !important;
    border-radius: 2px !important;
    background: var(--vvn-primary, #000) !important;
    transition: transform .25s ease, opacity .25s ease !important;
  }

  .vv-mobile-menu-label{
    display: none !important;
  }

  .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(1){
    transform: translateY(8px) rotate(45deg) !important;
  }
  .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(2){
    opacity: 0 !important;
  }
  .vv-mobile-menu-toggle.is-open .vv-mobile-menu-icon span:nth-child(3){
    transform: translateY(-8px) rotate(-45deg) !important;
  }

  /* centered logo */
  .vv-branding-left{
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    z-index: 2 !important;
  }

  .vv-logo-wrap{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 138px !important;
    min-height: 68px !important;
    background: #fff !important;
    padding: 8px 14px !important;
    line-height: 0 !important;
  }

  .vv-logo-wrap img{
    max-height: 52px !important;
    width: auto !important;
    display: block !important;
  }

  .vv-site-title{
    color: var(--vvn-primary, #000) !important;
  }

  /* right search icon */
  .vv-mobile-search-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 44px !important;
    height: 44px !important;
    border: 2px solid var(--vvn-primary, #000) !important;
    border-radius: 14px !important;
    background: #fff !important;
    color: var(--vvn-primary, #000) !important;
    z-index: 10020 !important;
    padding: 0 !important;
    margin: 0 !important;
    cursor: pointer !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .vv-mobile-search-glyph{
    display: inline-block !important;
    font-size: 24px !important;
    line-height: 1 !important;
    color: var(--vvn-primary, #000) !important;
  }

  /* hidden search panel until click */
  .vv-header-search,
  .vv-search{
    display: none !important;
  }

  .vv-header-search.is-open,
  .vv-search.is-open{
    display: block !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 8px) !important;
    background: #fff !important;
    border-radius: 12px !important;
    padding: 14px !important;
    box-shadow: 0 16px 30px rgba(0,0,0,.18) !important;
    z-index: 10021 !important;
  }

  .vv-header-search.is-open .search-form,
  .vv-header-search.is-open .search-field,
  .vv-search.is-open form,
  .vv-search.is-open input,
  .vv-search.is-open input[type="search"],
  .vv-search.is-open input[type="text"]{
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .vv-header-search.is-open .search-submit,
  .vv-search.is-open .search-submit{
    display: none !important;
  }

  /* offcanvas nav */
  .vv-top-nav{
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: min(320px, 86vw) !important;
    height: 100vh !important;
    background: #fff !important;
    transform: translateX(-105%) !important;
    transition: transform .3s ease !important;
    box-shadow: 10px 0 24px rgba(0,0,0,.18) !important;
    z-index: 10030 !important;
    padding: 84px 20px 20px !important;
    overflow-y: auto !important;
  }

  .vv-top-nav.is-open{
    transform: translateX(0) !important;
  }

  .vv-top-menu{
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .vv-top-menu li{
    margin: 0 !important;
    border-bottom: 1px solid #efefef !important;
  }

  .vv-top-menu li a{
    display: block !important;
    padding: 14px 0 !important;
    color: #1f1f1f !important;
    font: 700 16px/1.2 Arial, Helvetica, sans-serif !important;
  }

  .vv-mobile-overlay{
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0,0,0,.35) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity .25s ease, visibility .25s ease !important;
    z-index: 10025 !important;
  }

  .vv-mobile-overlay.is-open{
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.vv-mobile-menu-open{
    overflow: hidden !important;
  }
}

@media (min-width: 769px){
  .vv-mobile-search-toggle{
    display: none !important;
  }
}


/* Ensure mobile header buttons are clickable */
@media (max-width: 768px){
  .vv-mobile-menu-toggle,
  .vv-mobile-search-toggle{
    pointer-events: auto !important;
    cursor: pointer !important;
  }
  .vv-branding-left,
  .vv-logo-wrap,
  .vv-site-title{
    pointer-events: none !important;
  }
  .vv-mobile-menu-toggle,
  .vv-mobile-search-toggle,
  .vv-mobile-overlay,
  .vv-top-nav,
  .vv-search,
  .vv-header-search{
    z-index: 99999 !important;
  }
  .vv-top-nav{
    z-index: 99997 !important;
  }
  .vv-mobile-overlay{
    z-index: 99996 !important;
  }
}

/* ===== FIX: mobile search icon panel visible ===== */
@media (max-width: 980px){
  .vv-header-actions{
    display: block !important;
    position: static !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .vv-header-actions .vv-header-search{
    display: none !important;
  }

  .vv-header-actions .vv-header-search.is-open{
    display: block !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 8px) !important;
    background: #fff !important;
    border-radius: 12px !important;
    padding: 14px !important;
    box-shadow: 0 16px 30px rgba(0,0,0,.18) !important;
    z-index: 10021 !important;
  }

  .vv-header-actions .vv-header-search.is-open .search-form,
  .vv-header-actions .vv-header-search.is-open .search-field,
  .vv-header-actions .vv-header-search.is-open input,
  .vv-header-actions .vv-header-search.is-open input[type="search"],
  .vv-header-actions .vv-header-search.is-open input[type="text"]{
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}


.vv-mobile-search-toggle{
  text-decoration:none;
}

.vv-search-page{
  padding:32px 0 48px;
}

.vv-search-page-head{
  max-width:920px;
  margin:0 auto 28px;
}

.vv-search-page-kicker{
  display:inline-block;
  margin-bottom:10px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--vvn-blue);
}

.vv-search-page-title{
  margin:0 0 20px;
  font-size:clamp(28px, 4vw, 44px);
  line-height:1.08;
}

.vv-search-page-form{
  display:flex;
  gap:12px;
  align-items:center;
}

.vv-search-page-form input[type="search"]{
  flex:1 1 auto;
  min-width:0;
  height:56px;
  padding:0 18px;
  border:1px solid #d7d7d7;
  border-radius:999px;
  font-size:16px;
  background:#fff;
}

.vv-search-page-form button{
  height:56px;
  padding:0 24px;
  border:0;
  border-radius:999px;
  background:var(--vvn-blue);
  color:#fff;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
}

.vv-search-page-results{
  max-width:920px;
  margin:0 auto;
}

.vv-search-result-card{
  display:grid;
  grid-template-columns:220px minmax(0, 1fr);
  gap:18px;
  align-items:start;
  padding:20px 0;
  border-top:1px solid #e6e6e6;
}

.vv-search-result-card:last-child{
  border-bottom:1px solid #e6e6e6;
}

.vv-search-result-thumb,
.vv-search-result-thumb img,
.vv-search-result-thumb-placeholder{
  display:block;
  width:100%;
  border-radius:16px;
}

.vv-search-result-thumb img,
.vv-search-result-thumb-placeholder{
  aspect-ratio:16/10;
  object-fit:cover;
  background:#efefef;
}

.vv-search-result-meta{
  margin-bottom:8px;
  font-size:13px;
  color:#6f6f6f;
}

.vv-search-result-title{
  margin:0 0 10px;
  font-size:28px;
  line-height:1.15;
}

.vv-search-result-title a{
  text-decoration:none;
}

.vv-search-result-title a:hover{
  text-decoration:underline;
}

.vv-search-result-excerpt{
  font-size:16px;
  line-height:1.6;
  color:#404040;
}

.vv-search-empty{
  padding:12px 0 8px;
}

.vv-search-pagination{
  padding-top:24px;
}

.vv-search-pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:40px;
  height:40px;
  margin:0 6px 6px 0;
  padding:0 12px;
  border:1px solid #d9d9d9;
  border-radius:999px;
  text-decoration:none;
}

.vv-search-pagination .page-numbers.current{
  background:var(--vvn-blue);
  color:#fff;
  border-color:var(--vvn-blue);
}

@media (max-width: 767px){
  .vv-search-page{
    padding:22px 0 36px;
  }

  .vv-search-page-form{
    flex-direction:column;
    align-items:stretch;
  }

  .vv-search-page-form button{
    width:100%;
  }

  .vv-search-result-card{
    grid-template-columns:1fr;
    gap:14px;
  }

  .vv-search-result-title{
    font-size:22px;
  }
}


@media (max-width: 700px){
  .vv-branding-left[data-home-url]{
    cursor: pointer !important;
    position: relative !important;
    z-index: 8 !important;
    pointer-events: auto !important;
  }

  .vv-branding-left[data-home-url] .custom-logo-link,
  .vv-branding-left[data-home-url] .vv-logo-wrap,
  .vv-branding-left[data-home-url] img{
    pointer-events: none !important;
  }
}

.footer-social{
    display:flex;
    gap:12px;
    justify-content:center;
    margin-top:20px;
}
.footer-social a{
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:#f5f5f5;
    color:#000;
    text-decoration:none;
}
.footer-social a:hover{
    background:#428042;
    color:#fff;
}


/* Footer social icons visible + brand hover */
.site-footer .footer-social{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:20px;}
.site-footer .footer-social-link{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#f5f5f5;color:#000 !important;text-decoration:none;transition:all .2s ease;border:1px solid rgba(0,0,0,.08);opacity:1;}
.site-footer .footer-social-link i{font-size:18px;line-height:1;}
.site-footer .footer-social-link:hover{transform:translateY(-1px);text-decoration:none;color:#fff !important;}
.site-footer .footer-facebook:hover{background:#1877f2 !important;border-color:#1877f2 !important;}
.site-footer .footer-instagram:hover{background:#E1306C !important;border-color:#E1306C !important;}
.site-footer .footer-x:hover{background:#000 !important;border-color:#000 !important;}
.site-footer .footer-linkedin:hover{background:#0A66C2 !important;border-color:#0A66C2 !important;}


/* WhatsApp floating button */
.vv-whatsapp-float{
  position:fixed;
  right:20px;
  bottom:20px;
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#25D366;
  color:#fff;
  box-shadow:0 10px 24px rgba(0,0,0,.22);
  z-index:9999;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.vv-whatsapp-float:hover{
  transform:translateY(-2px) scale(1.03);
  box-shadow:0 14px 28px rgba(0,0,0,.26);
  background:#20ba5a;
  color:#fff;
}

.vv-whatsapp-float:focus-visible{
  outline:3px solid rgba(37,211,102,.32);
  outline-offset:3px;
}

.vv-whatsapp-float__icon{
  width:28px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.vv-whatsapp-float__icon svg{
  width:100%;
  height:100%;
  display:block;
}

@media (max-width: 767px){
  .vv-whatsapp-float{
    right:14px;
    bottom:14px;
    width:54px;
    height:54px;
  }
}


.vv-banner-slot {
  margin: 18px 0 24px;
}
.vv-banner-slot--header {
  margin: 0;
  padding: 14px 0 0;
}
.vv-banner-slot__inner {
  width: 100%;
  max-width: 970px;
  min-height: 250px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid var(--vvn-line);
  overflow: hidden;
}
.vv-banner-slot__script,
.vv-banner-slot__image,
.vv-banner-slot__image-link {
  display: block;
  width: 100%;
  max-width: 970px;
}
.vv-banner-slot__inner img {
  display: block;
  width: 100%;
  max-width: 970px;
  height: auto;
  aspect-ratio: 97 / 25;
  object-fit: cover;
}
.vv-banner-slot__script > *,
.vv-banner-slot__script iframe,
.vv-banner-slot__script img {
  max-width: 100%;
}
@media (max-width: 991px) {
  .vv-banner-slot__inner {
    min-height: auto;
  }
}
@media (max-width: 767px) {
  .vv-banner-slot { margin: 14px 0 20px; }
  .vv-banner-slot--header { padding-top: 10px; }
  .vv-banner-slot__inner {
    min-height: auto;
  }
}



/* Single page: sidebar à direita do post */
body.single .vv-single-page .container {
  width: min(calc(100% - 36px), 1280px);
}
body.single .vv-article-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 32px;
  align-items: start;
}
body.single .vv-article-main {
  min-width: 0;
  max-width: none;
}
body.single .vv-article-sidebar {
  width: 320px;
  min-width: 320px;
  max-width: 320px;
  align-self: start;
}
body.single .vv-article-sidebar .widget {
  background: #fff;
  border: 1px solid var(--vvn-line);
  padding: 18px;
  margin-bottom: 18px;
}
body.single .vv-article-sidebar .widget:last-child {
  margin-bottom: 0;
}
body.single .vv-article-sidebar .widget-title {
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--vvn-blue);
}

@media (max-width: 1080px) {
  body.single .vv-article-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  body.single .vv-article-sidebar {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }
}



/* Sidebar elegante na single */
body.single .vv-article-sidebar {
  position: sticky;
  top: 110px;
}

body.single .vv-article-sidebar .widget {
  background: linear-gradient(180deg, #ffffff 0%, #fcfcfc 100%);
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 14px;
  padding: 20px;
  margin-bottom: 20px;
  box-shadow: 0 8px 24px rgba(0,0,0,.05);
}

body.single .vv-article-sidebar .widget-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  padding: 0 0 12px;
  border-bottom: 1px solid rgba(0,0,0,.08);
  font-size: 20px;
  line-height: 1.2;
  position: relative;
}

body.single .vv-article-sidebar .widget-title::before {
  content: "";
  width: 4px;
  height: 20px;
  border-radius: 999px;
  background: var(--vvn-blue);
  display: inline-block;
}

body.single .vv-article-sidebar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

body.single .vv-article-sidebar li {
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

body.single .vv-article-sidebar li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

body.single .vv-article-sidebar li:first-child {
  padding-top: 0;
}

body.single .vv-article-sidebar a {
  color: #171717;
  font-weight: 700;
  line-height: 1.45;
  text-decoration: none;
  transition: color .2s ease, padding-left .2s ease;
}

body.single .vv-article-sidebar a:hover {
  color: var(--vvn-blue);
  padding-left: 4px;
}

body.single .vv-article-sidebar .wp-block-latest-posts__post-date,
body.single .vv-article-sidebar .post-date,
body.single .vv-article-sidebar .meta,
body.single .vv-article-sidebar .rss-date {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  color: #6f6f6f;
}

@media (max-width: 1080px) {
  body.single .vv-article-sidebar {
    position: static;
    top: auto;
  }
}



/* Ocultar sidebar no mobile */
@media (max-width: 768px) {
  body.single .vv-article-sidebar {
    display: none !important;
  }
}
