/* ========================================================================== THEME / METADATA ========================================================================== */
/* Theme Name: Tema 3
Theme URI: https://darpion.com/
Author: Seu Nome
Author URI: https://darpion.com/
Description: Tema personalizado do site.
Version: 1.0.0
Text Domain: tema-wire-home */

/* ========================================================================== GLOBAL VARS (Paleta dinâmica via Customizer) ========================================================================== */
:root{
  /* Paleta */
  --brand-primary: rgb(3,72,114); /* #034872 */
  --brand-secondary: rgb(83,170,189); /* #53AABD */
  --brand-tertiary: rgb(230,241,246);/* #E6F1F6 */
  --footer-bg: rgb(237,248,250);
  --pagination-bg: var(--brand-primary);
  --text-color: rgb(16,50,58);

  /* Header */
  --hdr-grad-left: var(--brand-primary);
  --hdr-grad-right: var(--brand-secondary);
  --hdr-height:50px;
  --hdr-radius:100px;
  --hdr-max:1408px; /* largura máxima do “pill” */
  --hdr-gap:clamp(18px, 3vw, 44px);
  --hdr-pad-x:9px;

  /* Busca */
  --search-w:187px;
  --search-h:30px;
  --search-bg:#F2F4F6;
  --search-text:#111827;
  --search-ph:#8DA3AF;
  --search-icon: var(--brand-secondary);
  --search-ring: color-mix(in srgb, var(--brand-secondary) 35%, transparent);

  /* Hamburguer */
  --hb-w:51px;
  --hb-h:28px;
  --hb-bar-w:22px;
  --hb-bar-h:3px;
  --hb-gap:5px;

  /* Drawer */
  --drawer-w:360px;

  /* Logo */
  --logo-h:26px;

  /* Hero (home) */
  --hero-radius:17px;
  --hero-min-h:310px;
  --hero-pad-top:50px;
  --hero-pad-right:0px;
  --hero-pad-bottom:100px;
  --hero-pad-left:0px;
  --hero-gap:26px;
  --hero-content-pad-x:40px;
  --hero-max:1241px;

  /* Categoria – lista wide compacta */
  --cat-wide-bg: color-mix(in srgb, var(--brand-primary) 90%, white);

  background-color:#fff;
}

/* ========================================================================== RESET ========================================================================== */
*,*::before,*::after{ box-sizing:border-box; }

/* ========================================================================== HEADER (pill) ========================================================================== */
.header,.site-header{
  position:sticky; top:0; z-index:100; background:transparent; border:0; padding-top:40px; margin-bottom:14px;
}
.site-header .container,
.header .header-inner,
.site-header .inside-navigation{
  max-width:var(--hdr-max); width:min(100%, var(--hdr-max)); margin:0 auto; padding:0; position:relative;
}
.header .header-inner, .site-header .inside-navigation{
  height:var(--hdr-height); padding:0 7px;
  background:linear-gradient(90deg,var(--hdr-grad-left),var(--hdr-grad-right));
  border-radius:var(--hdr-radius);
  display:grid !important; grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center; column-gap:var(--hdr-gap);
  box-shadow:0 8px 24px rgba(3,72,114,.12);
  isolation:isolate;
}

/* Branding / Logo */
.site-brand{ margin:0; display:flex; align-items:center; height:var(--hdr-height); }
.logo-wrap{ display:flex; align-items:center; height:var(--hdr-height); }
.logo-wrap .custom-logo-link{ display:inline-flex; align-items:center; height:var(--hdr-height); line-height:0; text-decoration:none !important; }
.custom-logo{ display:block; max-height:var(--logo-h); height:auto; width:135px; }
.site-brand a{ color:#fff; font-weight:800; font-size:26px; letter-spacing:.04em; }

/* Right actions */
.header-actions{ position:relative; z-index:10; justify-self:end; display:flex; align-items:center; gap:24px; height:var(--hdr-height); }

/* Busca */
.header .search-form,.site-header .search-form,.header .header-search{
  position:relative; z-index:10; display:flex; align-items:center; justify-content:space-between;
  width:var(--search-w); height:var(--search-h); padding:0 12px; margin:4px;
  border-radius:100px; background:var(--search-bg); border:0; gap:10px;
}
.header .search-form:focus-within{ box-shadow:0 0 0 3px var(--search-ring); }
.header .search-field{
  flex:1; min-width:0; background:transparent; border:0; outline:none;
  font:400 14px/1 "Rubik",system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  color:var(--search-text);
}
.header .search-field::placeholder{ color:var(--search-ph); }
.header .search-submit{ display:flex; align-items:center; justify-content:center; width:24px; height:24px; background:transparent; border:0; cursor:pointer; color:var(--search-icon); }
.header .icon-search{ width:20px; height:20px; display:block; }

/* Hamburger */
.nav-toggle{
  display:inline-flex; flex-direction:column; justify-content:center; align-items:center; gap:var(--hb-gap);
  width:var(--hb-w); height:var(--hb-h); background:transparent; border:0; cursor:pointer; color:#fff;
  border-radius:6px; position:relative; z-index:1002;
}
.nav-toggle-bar{
  width:var(--hb-bar-w); height:var(--hb-bar-h); background:#fff; border-radius:2px;
  transition:transform .25s ease, opacity .25s ease, background-color .25s ease;
}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(2){ opacity:0; }
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(1){ transform:translateY(calc(var(--hb-bar-h) + var(--hb-gap))) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(3){ transform:translateY(calc(-1 * (var(--hb-bar-h) + var(--hb-gap)))) rotate(-45deg); }
.nav-toggle:focus-visible{ outline:2px solid rgba(255,255,255,.6); outline-offset:2px; }

/* ========================================================================== NAV (desktop) ========================================================================== */
.site-header .main-navigation{ position:static; transform:none; width:auto; height:50px; background:transparent; box-shadow:none; overflow:visible; }
.site-header .main-navigation .main-nav{ width:100%; display:flex; justify-content:right; align-items:center; min-width:0; max-width:100%; }
.site-header .main-navigation .menu{ margin:7px 0; display:flex; align-items:center; gap:28px; list-style:none; height:34px; white-space:nowrap; }
.site-header .main-navigation .menu > li{ display:flex; align-items:center; position:relative; height:34px; }
.site-header .main-navigation .menu > li > a{
  display:flex; align-items:center; height:100%; padding:0 8px; color:#fff;
  font-family:'Rubik',system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  font-weight:300; font-size:12px; letter-spacing:.06em; text-transform:uppercase; text-decoration:none;
  opacity:.9; transition:opacity .18s ease;
}
.site-header .main-navigation .menu > li > a:hover{ opacity:1; }

/* Current underline */
.site-header .main-navigation .menu > .current-menu-item > a,
.site-header .main-navigation .menu > .current_page_item > a{
  position:relative; opacity:1;
}
.site-header .main-navigation .menu > .current-menu-item > a::after,
.site-header .main-navigation .menu > .current_page_item > a::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:rgba(255,255,255,.9); border-radius:2px;
}

/* Dropdown */
.site-header .main-navigation .menu > li.menu-item-has-children > a::after{
  content:""; display:inline-block; width:6px; height:6px; margin-left:6px;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg) translateY(-1px);
}
.site-header .main-navigation .menu .sub-menu{
  position:absolute; left:0; top:calc(100% + 10px); min-width:220px; padding:8px; background:#fff;
  border:1px solid #e5e7eb; border-radius:12px; box-shadow:0 12px 40px rgba(0,0,0,.12);
  opacity:0; visibility:hidden; transform:translateY(6px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s; z-index:300;
}
.site-header .main-navigation .menu li:hover > .sub-menu{ opacity:1; visibility:visible; transform:translateY(0); }
.site-header .main-navigation .menu .sub-menu a{
  display:block; padding:8px 10px; border-radius:8px; color:#111827; font:500 15px/1 'Rubik',system-ui; text-decoration:none;
}
.site-header .main-navigation .menu .sub-menu a:hover{ background:#f3f4f6; color:var(--brand-primary); }

/* ========================================================================== OFF-CANVAS ========================================================================== */
.drawer-overlay{
  position:fixed; inset:0; z-index:900; background:rgba(0,0,0,.45); opacity:0; pointer-events:none;
}
.js-drawer-ready .drawer-overlay{ transition:opacity .2s ease; }
.drawer-overlay[hidden]{ display:none !important; }
.drawer-overlay.is-open{ opacity:1; pointer-events:auto; }
#drawer-nav,.drawer-nav{
  position:fixed; top:0; right:0; bottom:0; z-index:1000; width:var(--drawer-w); height:100dvh;
  background:#fff; color:#111; transform:translateX(100%); visibility:hidden;
  box-shadow:-24px 0 48px rgba(0,0,0,.18); overscroll-behavior:contain;
}
.js-drawer-ready #drawer-nav, .js-drawer-ready .drawer-nav{ transition:transform .24s ease; }
#drawer-nav.is-open,.drawer-nav.is-open{ transform:translateX(0); visibility:visible; }
#drawer-nav .drawer-close,.drawer-nav .drawer-close{
  position:sticky; top:34px; float:right; width:36px; height:36px; margin:8px 6px 0 0; border:0; border-radius:10px;
  background:#eef2f7; color:var(--brand-primary); cursor:pointer; font-size:22px; display:inline-flex; align-items:center; justify-content:center;
}
#drawer-nav .drawer-close:hover,.drawer-nav .drawer-close:hover{ background:#e5edf6; }
#drawer-nav .main-nav,.drawer-nav .main-nav{ display:block; height:100%; overflow:auto; padding:65px 16px 24px; }
#drawer-nav .menu,.drawer-nav .menu{ display:flex; flex-direction:column; gap:8px; list-style:none; margin:0; padding:0; }
#drawer-nav .menu > li,.drawer-nav .menu > li{ position:relative; }
#drawer-nav .menu > li > a,.drawer-nav .menu > li > a{
  display:flex; align-items:center; height:44px; width:100%; padding:0 14px; border-radius:10px; color:var(--brand-primary);
  font:500 16px/1 'Rubik',system-ui; opacity:.95; text-decoration:none; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  transition:background .18s ease, opacity .18s ease, color .18s ease;
}
#drawer-nav .menu > li > a:hover,.drawer-nav .menu > li > a:hover{ background:#F3F4F6; opacity:1; }
#drawer-nav .menu > .current-menu-item > a,
#drawer-nav .menu > .current_page_item > a,
.drawer-nav .menu > .current-menu-item > a,
.drawer-nav .menu > .current_page_item > a{
  background:#EEF2F7; color:var(--brand-primary);
}
#drawer-nav .menu .sub-menu,.drawer-nav .menu .sub-menu{
  position:static; margin:6px 0 0; padding:6px; background:#f9fafb; border:1px solid #e5e7eb; border-radius:10px;
}
#drawer-nav .menu .sub-menu a,.drawer-nav .menu .sub-menu a{
  display:block; padding:8px 10px; border-radius:8px; color:#111827; font:500 15px/1 'Rubik',system-ui; text-decoration:none;
}
#drawer-nav .menu .sub-menu a:hover,.drawer-nav .menu .sub-menu a:hover{ background:#eef2f7; color:var(--brand-primary); }

html.no-scroll,body.no-scroll{ overflow:hidden; }
html.no-js #drawer-nav,html.no-js .drawer-nav{ position:fixed; transform:translateX(100%); }
html.no-js .drawer-overlay{ display:none !important; }

/* ========================================================================== ACCESSIBILITY ========================================================================== */
.site-header .site-brand a,
.site-header .main-navigation a,
.site-header #drawer-nav a,
.site-header .drawer-nav a,
.site-header .main-navigation .menu > li > a,
.site-header #drawer-nav .menu > li > a,
.site-header .drawer-nav .menu > li > a,
.site-header .main-navigation .menu .sub-menu a,
.site-header #drawer-nav .menu .sub-menu a,
.site-header .drawer-nav .menu .sub-menu a{
  text-decoration:none !重要;
}
.site-header .site-brand a:focus-visible,
.site-header .main-navigation a:focus-visible,
.site-header #drawer-nav a:focus-visible,
.site-header .drawer-nav a:focus-visible{
  outline:2px solid rgba(255,255,255,.45); outline-offset:2px; border-radius:6px;
}

/* ========================================================================== HERO (desktop - home) ========================================================================== */
.section--hero{ margin-top:16px; }
.hero-banner{
  width:min(100%, var(--hero-max)); margin-inline:auto; position:relative; display:flex; align-items:center; border-radius:var(--hero-radius); overflow:hidden;
  min-height:var(--hero-min-h); padding:var(--hero-pad-top) var(--hero-pad-right) var(--hero-pad-bottom) var(--hero-pad-left);
  background-image: linear-gradient(270deg, rgba(3,72,114,0) 27.53%, var(--hdr-grad-left) 59.72%), var(--hero-img);
  background-size:100% 100%, cover; background-position:center right, center;
}
.hero-banner__content{
  position:relative; z-index:1; display:flex; flex-direction:column; gap:var(--hero-gap); max-width:720px; color:#fff;
  padding-left:var(--hero-content-pad-x); padding-right:24px;
}
.hero-banner__title{
  width:min(100%, 650px); margin:0;
  font-family:"Rubik",system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  font-weight:600; font-size:40px; line-height:1; color:#fff;
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden;
}
.hero-banner__excerpt{
  width:min(100%, 650px); max-width:450px; margin:0; font:400 14px/1.4 "Rubik",system-ui; color:#E8F1F6; opacity:.95;
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:5; overflow:hidden;
}
.hero-banner__cta{ margin-top:16px; }
.hero-banner__cta .btn,
.hero-banner__cta a,
.hero-banner__cta .wp-element-button{
  display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; min-width:160px; height:54px; padding:20px 40px; gap:8px;
  border-radius:100px; border:0 !important; background:#FFFFFF !important; color:var(--brand-primary) !important; text-decoration:none;
  font:500 19px/1 "Rubik",system-ui;
}
.hero-banner__cta .btn:hover,
.hero-banner__cta a:hover,
.hero-banner__cta .wp-element-button:hover{ transform:translateY(-1px); }

/* ========================================================================== VR SPOTLIGHT (desktop) ========================================================================== */
.vr-spotlight{
  --vr-max-width:1241px;
  --vr-bg-left:#0a466e;
  --vr-bg-right:#0e6286;
  --vr-text:#fff;
  --vr-shadow:130px 130px 130px 130px rgba(0,0,0,.22);
  --vr-radius:18px;
  --vr-left-w:clamp(340px, 42%, 540px);
  --vr-left-min-h:480px;
  --vr-img-bleed:14px;
  --vr-gap:192px;
  --vr-right-w:500px;
  --vr-right-gap:9px;
  --vr-card-size:234px;
  --vr-title-size:clamp(21px, 2.4vw, 24px);
  --vr-desc-size:11px;
  --vr-cta-width:283px;
  --vr-cta-xpad:47px;
  --vr-cta-ypad:17px;
  --vr-cta-font:18px;
  --vr-glow-c1:rgba(3,72,114,0);
  --vr-glow-c2:rgba(3,72,114,1);
  --vr-safe:34px;
  --vr-hero-pos:30% center;
  --vr-hero-zoom:1.28;
  --vr-seam:min( calc(var(--vr-left-w) + var(--vr-img-bleed) - var(--vr-safe)), calc(100% - (var(--vr-right-w) + var(--vr-gap)) - var(--vr-safe)) );
  --vr-feather:34px;
  --vr-left-fade-w:120px;
  --vr-pillar-w:430px;
  --vr-pillar-offset:22px;

  width:100%; max-width:var(--vr-max-width); margin:28px auto 44px; border-radius:var(--vr-radius);
  color:var(--vr-text); overflow:hidden; isolation:isolate; box-shadow:0 16px 40px rgba(0,0,0,.12);
  background:linear-gradient(90deg,var(--vr-bg-left),var(--vr-bg-right)); position:relative;
}
.vr-spotlight::before{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:0;
  background-image:
    linear-gradient(90deg, rgba(7,22,34,.34) 0, rgba(7,22,34,0) var(--vr-left-fade-w)),
    radial-gradient(135% 120% at 48% 105%, rgba(3,72,114,0) 0%, rgba(3,72,114,.10) 42%, rgba(3,72,114,.34) 66%, rgba(3,72,114,.66) 86%, rgba(3,72,114,.92) 100%),
    linear-gradient(180deg, rgba(3,72,114,0) 0%, rgba(3,72,114,.10) 52%, rgba(3,72,114,.34) 78%, rgba(3,72,114,.68) 100%),
    var(--vr-hero-img, none);
  background-size:100% 100%,100% 100%,100% 100%, calc(100% * var(--vr-hero-zoom)) calc(100% * var(--vr-hero-zoom));
  background-position:0 0,0 0,0 0,var(--vr-hero-pos);
  background-repeat:no-repeat; filter:brightness(1.04) contrast(1.02) saturate(1);
}
.vr-spotlight::after{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image: radial-gradient(var(--vr-pillar-w) 80% at calc(var(--vr-seam) + var(--vr-pillar-offset)) 50%, rgba(14,98,134,.36) 0%, rgba(14,98,134,.22) 35%, rgba(14,98,134,.12) 58%, rgba(14,98,134,0) 100%);
  background-repeat:no-repeat;
}
.vr-spotlight__wrap{
  display:grid; grid-template-columns:minmax(280px, var(--vr-left-w)) minmax(var(--vr-right-w), 1fr); gap:var(--vr-gap);
  padding:51px; align-items:flex-end; position:relative; z-index:1;
}
.vr-spotlight__left{ position:relative; width:100%; max-width:var(--vr-left-w); min-height:var(--vr-left-min-h); display:flex; align-items:flex-end; padding:16px; background:transparent; }
.vr-spotlight__img{ display:none !important; }
.vr-spotlight__left::after{ content:none !important; }
.vr-spotlight__glass{ background:transparent !important; border:0 !important; padding:0 !important; box-shadow:none !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important; }
.vr-spotlight__copy{ position:relative; z-index:2; display:grid; gap:14px; padding:0; }
.vr-spotlight__title{ margin:0; font:600 var(--vr-title-size)/1 'Rubik',system-ui; }
.vr-spotlight__desc{ margin:0 0 4px; max-width:46ch; font:400 var(--vr-desc-size)/1.25 'Rubik',system-ui; }
.vr-spotlight__cta{
  display:inline-flex; align-items:center; justify-content:center; width:min(100%, var(--vr-cta-width)); white-space:nowrap;
  padding:var(--vr-cta-ypad) var(--vr-cta-xpad); border-radius:100px; background:#fff; color:var(--brand-primary); text-decoration:none;
  text-transform:uppercase; font:600 var(--vr-cta-font)/1 'Rubik',system-ui; letter-spacing:.02em; box-shadow:var(--vr-shadow);
}
.vr-spotlight__cta:hover{ transform:translateY(-1px); }
.vr-spotlight__right{
  width:var(--vr-right-w); max-width:var(--vr-right-w); height:var(--vr-right-w);
  display:grid; grid-template-columns:repeat(2, var(--vr-card-size)); grid-template-rows:repeat(2, var(--vr-card-size)); gap:var(--vr-right-gap);
}
.vr-card{ position:relative; width:var(--vr-card-size); height:var(--vr-card-size); overflow:hidden; border-radius:20px; box-shadow:var(--vr-shadow); background:#0e3954; }
.vr-card__link{ position:absolute; inset:0; display:grid; text-decoration:none; color:#fff; }
.vr-card__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.vr-card__overlay{ position:absolute; inset:0; }
.vr-card__copy{ position:relative; align-self:end; padding:26px; display:grid; gap:13px; }
.vr-card__title{ margin:0; font:600 14px/1 'Rubik',system-ui; }
.vr-card__pill{
  align-self:start; display:inline-flex; align-items:center; justify-content:center; height:18px; padding:3px 8px; border-radius:999px;
  background:#fff; color:#000; font:700 13px/1 'Rubik',system-ui; border:1px solid rgba(255,255,255,.8); box-shadow:0 10px 24px rgba(0,0,0,.22);
}
.vr-spotlight a:focus-visible{ outline:2px solid rgba(255,255,255,.6); outline-offset:2px; border-radius:8px; }

/* ========================================================================== TRENDING ========================================================================== */
.trending{
  --trend-max:1200px; --trend-gap:20px;
  --trend-badge-bg:#e6f1f6; --trend-badge-text: var(--brand-secondary);
  --trend-card-grad1: color-mix(in srgb, var(--brand-primary) 70%, #1d2a33);
  --trend-card-grad2: var(--brand-primary);
  --trend-card-radius:20px; --trend-card-pad:13px; --trend-card-min-h:154px;
  --trend-img-w:149px; --trend-img-h:116px;
  --trend-title-size:14px;
  --trend-btn-bg:#fff; --trend-btn-text:#000000; --trend-btn-border:#d7e7ee;
  margin:14px auto 48px;
}
.trending__wrap{ width:min(100%, var(--trend-max)); margin:0 auto; padding:0 14px; }
.trending__head{ display:grid; justify-items:center; gap:8px; margin-bottom:16px; }
.trend-badge{ display:inline-block; padding:4px 10px; border-radius:999px; background:var(--trend-badge-bg); color:var(--trend-badge-text); font:700 11px/1 'Rubik',system-ui; text-transform:uppercase; letter-spacing:.02em; }
.trending__title{ margin:0; color:#0a466e; font:700 28px/1 'Rubik',system-ui; letter-spacing:.02em; }
.trending__grid{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:var(--trend-gap); }
.trend-card{
  position:relative; overflow:hidden; background:linear-gradient(180deg, var(--trend-card-grad1), var(--trend-card-grad2));
  border-radius:var(--trend-card-radius); box-shadow:0 16px 34px rgba(0,0,0,.18); min-height:var(--trend-card-min-h);
  transition:box-shadow .12s ease, transform .12s ease;
}
.trend-card__link{
  position:absolute; inset:0; display:grid; grid-template-columns:var(--trend-img-w) 1fr; gap:14px; align-items:center; padding:var(--trend-card-pad);
  text-decoration:none; color:#fff;
}
.trend-card__img{ width:var(--trend-img-w); height:var(--trend-img-h); object-fit:cover; border-radius:12px; box-shadow:0 8px 18px rgba(0,0,0,.25); display:block; }
.trend-card__copy{ display:grid; align-content:center; gap:10px; }
.trend-card__title{
  margin:0; font:600 var(--trend-title-size)/1.25 'Rubik',system-ui;
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden;
}
.trend-card__btn{
  justify-self:start; display:inline-flex; align-items:center; gap:8px; padding:7px 16px; border-radius:999px; border:1px solid var(--trend-btn-border);
  background:var(--trend-btn-bg); color:var(--trend-btn-text); font:700 12px/1 'Rubik',system-ui; box-shadow:0 8px 18px rgba(0,0,0,.12);
  transition:transform .12s ease, box-shadow .12s ease, opacity .12s ease;
}
.trend-card__btn:hover{ transform:translateY(-1px); }
.trend-card__btn:active{ transform:translateY(0); box-shadow:0 6px 14px rgba(0,0,0,.18); }

/* ========================================================================== ALSO (Veja também) ========================================================================== */
.also{
  --also-max:1286px; --also-gap:22px;
  --also-badge-bg:#F3F5F7; --also-badge-text: var(--brand-secondary);
  --also-btn-bg: var(--brand-secondary); --also-btn-text:#ffffff;
  margin:10px auto 44px;
}
.also__wrap{ width:min(100%, var(--also-max)); margin:0 auto; padding:0 14px; }
.also__title{ margin:0 0 16px; text-align:center; color:#0a466e; font:800 clamp(26px, 3.4vw, 36px)/1 'Rubik',system-ui; letter-spacing:.02em; }
.also__grid{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:var(--also-gap); }
.also .also-card{ display:flex; flex-direction:column; gap:12px; background:transparent; border:0; }
.also .also-card__link{ display:flex; flex-direction:column; gap:12px; color:inherit; text-decoration:none; }
.also .also-card__link::after{ content:none !important; }
.also .also-card__badge{
  align-self:flex-start; display:inline-flex; align-items:center; justify-content:center; height:11px; padding:6px 14px; border-radius:999px;
  background:var(--also-badge-bg); color:var(--also-badge-text); font:437 11px/1 'Rubik',system-ui; text-transform:uppercase; letter-spacing:.01em; border:0; margin:4px 0 2px;
}
.also .also-card__img{ width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:18px; }
.also .also-card__copy{ display:grid; gap:10px; }
.also .also-card__title{
  margin:0; color:#10323A !important; font:800 14px/1.12 'Rubik',system-ui;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.also .also-card__btn{
  justify-self:start; display:inline-flex; align-items:center; justify-content:center; height:22px; padding:0 18px; border-radius:999px;
  background:var(--also-btn-bg); color:var(--also-btn-text); font:800 12px/1 'Rubik',system-ui; border:0; box-shadow:0 10px 24px rgba(0,0,0,.12);
}
.also .also-card__btn:hover{ transform:translateY(-1px); }

/* ========================================================================== FOOTER ========================================================================== */
.footer{ margin:40px 0 0; background:transparent; }
.footer .container{ width:min(100%, calc(var(--hdr-max) + (var(--hdr-pad-x,9px) * 2))); margin-inline:auto; }

/* top */
.footer-top{
  background:var(--footer-bg); border-radius:20px; padding:80px 60px; box-shadow:0 8px 20px rgba(0,0,0,.04);
}
.footer-grid{ display:grid; grid-template-columns:minmax(230px, 1fr) minmax(420px, 1.15fr) minmax(220px, .9fr); gap:118px; align-items:start; }

/* brand */
.footer-brand{ display:grid; justify-items:center; text-align:center; row-gap:8px; min-width:0; }
.footer-brand .custom-logo{ max-height:56px; width:auto; }
.footer-brand .custom-logo-link{ display:inline-flex; line-height:0; }
.footer-brand .muted{ color:rgb(27,39,39); opacity:1; font:450 14px/1.25 'Rubik',system-ui; margin-top:6px; }
.footer-brand .logo{ font:800 36px/1 'Rubik',system-ui; color:#0a466e; }
.footer-title{ margin:0 0 10px; color:#0a466e; font:800 26px/1 'Rubik',system-ui; letter-spacing:.02em; }
.footer-sub{ margin:0 0 12px; color:#10323A; opacity:.9; font:400 12px/1.35 'Rubik',system-ui; }

/* newsletter */
.footer-newsletter{ text-align:center; }
.footer-newsletter .footer-title{ margin:0 0 8px; color:var(--brand-primary); font:600 clamp(32px, 5vw, 42px)/1 'Rubik',system-ui; letter-spacing:.01em; }
.footer-newsletter .footer-sub{ margin:0 auto 16px; max-width:219px; color:#10323A; opacity:1; font:450 13px/1.2 'Rubik',system-ui; }
.newsletter{ display:flex; align-items:center; justify-content:center; gap:12px; flex-wrap:wrap; }
.newsletter input[type="email"]{
  height:37px; flex:1 1 260px; min-width:180px; max-width:225px; border:0; border-radius:100px 5px 5px 100px; background:#fff;
  box-shadow:0 0 0 1px rgba(3,72,114,.12) inset, 0 2px 0 rgba(3,72,114,.06);
  font:400 14px/1 'Rubik',system-ui; color:#111827;
}
.newsletter input::placeholder{ color:#8DA3AF; }
.footer .btn{
  flex:0 0 auto; height:39px; border:0; border-radius:5px 100px 100px 5px; background:var(--brand-primary); color:#fff;
  font:800 14px/1 'Rubik',system-ui; letter-spacing:.01em; box-shadow:0 8px 18px rgba(3,72,114,.18); cursor:pointer;
}
.footer .btn:hover{ transform:translateY(-1px); }
.footer .btn:active{ transform:translateY(0); box-shadow:0 6px 14px rgba(3,72,114,.22); }
.footer-note{ margin:12px auto 0; max-width:520px; text-align:center; color:var(--brand-primary); font:400 12px/1.3 'Rubik',system-ui; }

/* links */
.footer-links{ list-style:none; margin:0; display:grid; gap:8px; }
.footer-links a{ text-decoration:none; color:black; font:500 14px/1.2 'Rubik',system-ui; }
.footer-links a:hover{ opacity:.9; }

/* category band */
.footer-cats{
  margin-top:22px; background:var(--footer-bg); border-radius:20px; padding:22px 28px; display:flex; align-items:center; justify-content:space-between; gap:40px;
  box-shadow:0 8px 20px rgba(0,0,0,.04);
}
.footer-cats__title{ margin:0; color:#0a466e; font:800 clamp(22px, 2.2vw, 34px)/1 'Rubik',system-ui; letter-spacing:.02em; }
.footer-cats__nav{ list-style:none; margin:0; padding:0; display:flex; gap:38px; flex-wrap:wrap; align-items:center; justify-content:flex-end; }
.footer-cats__nav a{ text-decoration:none; color:#0b2230; font:800 12px/1 'Rubik',system-ui; letter-spacing:.06em; text-transform:uppercase; }
.footer-cats__nav a:hover{ opacity:.9; }

/* bottom */
.footer-bottom{ margin-top:10px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.footer .copy{ margin:14px 0 0; text-align:left; color:#4d8b99; font:500 12px/1 'Rubik',system-ui; }
.footer-brandmark img{ display:block; height:28px; width:auto; object-fit:contain; }

/* brand safe breaks */
.footer-brand{ row-gap:4px; }
.footer-brand__line,.footer-brand .muted:first-of-type{ max-width:36ch; margin:6px auto 0; white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; hyphens:auto; }
.footer-brand__subline{ max-width:23ch; margin:6px auto 0; overflow-wrap:anywhere; word-break:break-word; hyphens:auto; line-height:1.2; }
.footer-brand__line{ margin:4px auto 0; }
.footer-brand__subline{ margin-top:0; line-height:1.15; }
.footer-brand small.muted{ margin-top:0; line-height:1.15; }

/* ========================================================================== HERO DE CATEGORIA ========================================================================== */
.section--cat-hero{ margin:16px 0 12px; }
.cat-hero{
  width:min(100%, var(--hdr-max, 1241px)); margin-inline:auto; position:relative; min-height:280px; border-radius:20px; overflow:hidden;
  background-image: linear-gradient(90deg, rgba(3,72,114,.92) 0%, rgba(3,72,114,.70) 40%, rgba(3,72,114,.38) 65%, rgba(3,72,114,.10) 85%, rgba(3,72,114,0) 100%), var(--cat-hero-bg, none);
  background-size:100% 100%, cover; background-position: var(--cat-hero-pos, center right), center; background-repeat:no-repeat;
  box-shadow:0 16px 34px rgba(0,0,0,.14); display:flex; align-items:center; justify-content:flex-start; padding:40px 46px; color:#fff;
}
.cat-hero__title{
  margin:0; font:800 clamp(26px, 3.6vw, 40px)/1.05 "Rubik",system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  text-shadow:0 2px 10px rgba(0,0,0,.25);
}
.cat-hero__desc{ margin-top:10px; max-width:52ch; color:#E8F1F6; font:400 14px/1.35 "Rubik",system-ui; opacity:.95; }

/* Centralizado e overlay vertical */
.cat-hero--center{
  justify-content:center; text-align:center; padding:48px 28px;
  background-image: linear-gradient(180deg, rgba(3,72,114,0) 0%, rgba(3,72,114,.45) 36%, rgba(3,72,114,.80) 70%, rgba(3,72,114,.96) 100%), var(--cat-hero-bg, none);
  background-size:100% 100%, cover; background-position: var(--cat-hero-pos, center 22%), center;
}
.cat-hero--center .cat-hero__title{ text-shadow:0 3px 14px rgba(0,0,0,.35); }
.cat-hero--center .cat-hero__desc{ margin-left:auto; margin-right:auto; }

/* ========================================================================== ARCHIVES / CATEGORIES ========================================================================== */
.section--archive .archive-head{ width:min(100%, var(--hdr-max)); margin:20px auto 10px; padding:0 14px; }
.section--archive .archive-title{ margin:0 0 8px; color:#0a466e; font:800 28px/1 'Rubik',system-ui; letter-spacing:.02em; }
.section--archive .archive-desc{ margin:0 0 18px; color:#10323A; opacity:.9; font:400 14px/1.35 'Rubik',system-ui; }

/* grid de cards */
.cards{
  width:min(100%, var(--hdr-max)); margin:0 auto 26px; padding:0 14px;
  display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:20px;
}

/* card */
.card{ display:flex; flex-direction:column; border-radius:16px; overflow:hidden; background:#fff; box-shadow:0 10px 24px rgba(0,0,0,.06); }
.card__thumb img, .card > a img{ display:block; width:100%; height:auto; aspect-ratio:600/360; object-fit:cover; }
.card__copy{ display:grid; gap:10px; padding:14px; }
.card__title{ margin:0; color:#10323A; font:800 16px/1.15 'Rubik',system-ui; }
.card__title a{ color:inherit; text-decoration:none; }
.card__title a:hover{ opacity:.9; }
.card__meta{ color:#4c6672; font:500 12px/1 'Rubik',system-ui; }
.card__cta{ margin-top:6px; }

/* ========================================================================== PAGINAÇÃO (fallback .pagination) ========================================================================== */
.pagination{ width:min(100%, var(--hdr-max)); margin:10px auto 40px; padding:0 14px; }

/* =============================== CATEGORIA — Faixa com 4 posts =============================== */
:root{ --cat-strip-max:800px; }
.cat-strip{ max-width:var(--cat-strip-max); width:100%; margin:10px auto 12px; padding:0 14px; }
.cat-strip__grid{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:14px; }

/* card compacto */
.mini-card{
  position:relative; height:210px; border-radius:16px; overflow:hidden; box-shadow:0 10px 22px rgba(0,0,0,.12);
  transition:transform .12s ease, box-shadow .12s ease;
}
.mini-card:hover{ transform:translateY(-2px); box-shadow:0 14px 28px rgba(0,0,0,.15); }
.mini-card__link{ position:absolute; inset:0; display:grid; color:#fff; text-decoration:none; }
.mini-card__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
.mini-card:hover .mini-card__img{ transform:scale(1.02); }
.mini-card__overlay{ position:absolute; inset:0; pointer-events:none; background:linear-gradient(0deg, rgba(0,41,63,1) 0%, rgba(0,41,63,.62) 40%, rgba(0,41,63,0) 66%); }
.mini-card__copy{ position:absolute; left:12px; right:12px; bottom:10px; display:grid; gap:7px; }
.mini-card__title{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  font:800 12.5px/1.12 'Rubik',system-ui; text-shadow:0 1px 6px rgba(0,0,0,.25);
}
.mini-card__btn{
  justify-self:start; display:inline-flex; align-items:center; justify-content:center; height:20px; padding:0 10px; border-radius:999px;
  background:#fff; color:#0a2230; font:800 10px/1 'Rubik',system-ui; box-shadow:0 8px 18px rgba(0,0,0,.12); text-decoration:none;
}
.mini-card__btn:hover,.mini-card__btn:focus,.mini-card__btn:active{ text-decoration:none; }
.mini-card__btn:focus-visible{ outline:2px solid var(--search-ring, #fff); outline-offset:2px; }

/* =============================== CATEGORIA — Lista em linha =============================== */
.cat-list{ max-width:var(--cat-strip-max); width:100%; margin:6px auto 26px; padding:0 14px; }
.cat-list__grid{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; padding:23px 0 16px; }

/* CARD WIDE */
.wide-card{
  display:grid; grid-template-columns:137px 1fr; align-items:center; min-height:116px; padding:12px;
  border-radius:20px; overflow:visible; background:var(--cat-wide-bg); box-shadow:0 12px 26px rgba(0,0,0,.12); gap:16px;
}
.wide-card__thumb{ height:100%; border-radius:12px; overflow:hidden; box-shadow:0 8px 20px rgba(0,0,0,.18); }
.wide-card__thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.wide-card__copy{ display:grid; gap:8px; padding:0; color:#fff; }
.wide-card__title{
  margin:0; font:800 13px/1.12 'Rubik',system-ui; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.wide-card__btn{
  justify-self:start; display:inline-flex; align-items:center; justify-content:center; height:22px; padding:0 12px; border-radius:999px; background:#fff;
  color:#0a2230; font:800 11px/1 'Rubik',system-ui; box-shadow:0 8px 18px rgba(0,0,0,.12); text-decoration:none;
}
.wide-card__btn:hover,.wide-card__btn:focus,.wide-card__btn:active{ text-decoration:none; }
.wide-card__btn:focus-visible{ outline:2px solid var(--search-ring, #fff); outline-offset:2px; }

/* =============================== PAGINAÇÃO — barra COMPLETA (.pager) =============================== */
.pager{
  --pag-bg: var(--pagination-bg);
  --pag-chip:#ffffff;
  --pag-accent: var(--pagination-bg);
  width:min(100%, var(--hdr-max)); margin:20px auto 40px; padding:18px 22px; background:var(--pag-bg); color:#fff; border-radius:16px;
  box-shadow:0 18px 40px rgba(0,0,0,.14);
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px;
}
.pager__side{ display:flex; align-items:center; gap:10px; }
.pager__side--prev{ justify-self:start; }
.pager__side--next{ justify-self:end; }
.pager__label{ font:700 14px/1 'Rubik',system-ui; color:#fff; opacity:.95; }
.pager a.page-numbers{ text-decoration:none; color:var(--pag-accent); }

/* Bolinha + seta */
.pager__chev{
  position:relative; display:inline-grid; place-items:center; width:32px; height:32px; border-radius:999px; background:var(--pag-chip);
  box-shadow:0 8px 18px rgba(0,0,0,.16); pointer-events:none;
}
.pager__chev::after{ content:""; width:12px; height:12px; border-right:3px solid var(--pag-accent); border-bottom:3px solid var(--pag-accent); transform:rotate(-45deg); }
.pager__side--prev .pager__chev::after{ transform:rotate(135deg); }

/* Números */
.pager__nums{
  justify-self:center; display:inline-flex; align-items:center; gap:14px; padding:8px 16px; background:#fff; border-radius:999px;
  box-shadow:0 10px 22px rgba(0,0,0,.12);
}
.pager__nums .page-numbers{ display:inline-grid; place-items:center; min-width:26px; height:26px; padding:0 6px; border-radius:999px; color:var(--pag-accent); font:600 14px/1 'Rubik',system-ui; }
.pager__nums a.page-numbers:hover{ background:color-mix(in srgb, var(--pag-accent) 8%, #fff); }
.pager__nums .page-numbers.current{ background:#fff; color:var(--pag-accent); border:2px solid var(--pag-accent); font-weight:800; }
.pager__nums .page-numbers.dots{ color:#446b81; padding:0 2px; }

/* Anti overlay ícones */
.pager .page-numbers.prev::before, .pager .page-numbers.prev::after,
.pager .page-numbers.next::before, .pager .page-numbers.next::after,
.pager .page-numbers.prev .gp-icon, .pager .page-numbers.next .gp-icon,
.pager .page-numbers.prev .dashicons, .pager .page-numbers.next .dashicons,
.pager .page-numbers.prev .fa, .pager .page-numbers.next .fa,
.pager .page-numbers.prev .fas, .pager .page-numbers.next .fas,
.pager .page-numbers.prev .far, .pager .page-numbers.next .far,
.pager .page-numbers.prev .icon, .pager .page-numbers.next .icon,
.pager .page-numbers.prev svg, .pager .page-numbers.next svg{ display:none !important; }

/* =============================== PAGINAÇÃO — the_posts_pagination (.pagination.is-bar) =============================== */
.pagination.is-bar{
  --pag-accent: var(--pagination-bg);
  --pag-chip:#ffffff;
  width:min(100%, var(--hdr-max)); margin:24px auto 40px; padding:12px 22px;
  background:var(--pagination-bg); border-radius:14px; box-shadow:0 10px 26px rgba(0,0,0,.10);
}
.pagination.is-bar .nav-links{ position:relative; display:flex; align-items:center; justify-content:center; gap:6px; min-height:36px; }

/* chips numéricos */
.pagination.is-bar .page-numbers:not(.prev):not(.next){
  display:inline-flex; align-items:center; justify-content:center; height:28px; min-width:28px; padding:0 10px; background:#fff; color:var(--pag-accent);
  border-radius:999px; font:700 12px/1 'Rubik',system-ui; text-decoration:none; box-shadow:inset 0 -1px 0 rgba(0,0,0,.06);
}
.pagination.is-bar .page-numbers.current{ outline:2px solid var(--pag-accent); outline-offset:0; }

/* labels laterais + bolinha */
.pagination.is-bar .page-numbers.prev, .pagination.is-bar .page-numbers.next{
  position:absolute; top:50%; transform:translateY(-50%); display:inline-flex; align-items:center; color:#ffffff; text-decoration:none; font:500 13px/1 'Rubik',system-ui;
}
.pagination.is-bar .page-numbers.prev{ left:18px; padding-right:42px; }
.pagination.is-bar .page-numbers.next{ right:18px; padding-left:42px; }
.pagination.is-bar .page-numbers.prev::before, .pagination.is-bar .page-numbers.next::before{
  content:""; position:absolute; top:50%; transform:translateY(-50%); width:28px; height:28px; border-radius:999px; background:var(--pag-chip); box-shadow:0 8px 18px rgba(0,0,0,.12);
}
.pagination.is-bar .page-numbers.prev::after, .pagination.is-bar .page-numbers.next::after{
  content:""; position:absolute; top:50%; width:12px; height:12px; border-right:3px solid var(--pag-accent); border-bottom:3px solid var(--pag-accent); transform:translateY(-50%) rotate(-45deg);
}
.pagination.is-bar .page-numbers.prev::after{ transform:translateY(-50%) rotate(135deg); }
.pagination.is-bar .page-numbers.prev::before{ right:14px; }
.pagination.is-bar .page-numbers.prev::after{ right:20px; }
.pagination.is-bar .page-numbers.next::before{ left:14px; }
.pagination.is-bar .page-numbers.next::after{ left:20px; }
.pagination.is-bar a.page-numbers:hover{ opacity:.95; transform:translateY(-1px); }
.pagination.is-bar a.page-numbers:focus-visible{ outline:2px solid #fff; outline-offset:2px; border-radius:8px; }

/* Anti overlay */
.pagination.is-bar .page-numbers.prev .gp-icon,
.pagination.is-bar .page-numbers.next .gp-icon,
.pagination.is-bar .page-numbers.prev .dashicons,
.pagination.is-bar .page-numbers.next .dashicons,
.pagination.is-bar .page-numbers.prev .fa,
.pagination.is-bar .page-numbers.next .fa,
.pagination.is-bar .page-numbers.prev .fas,
.pagination.is-bar .page-numbers.next .fas,
.pagination.is-bar .page-numbers.prev .far,
.pagination.is-bar .page-numbers.next .far,
.pagination.is-bar .page-numbers.prev .icon,
.pagination.is-bar .page-numbers.next .icon,
.pagination.is-bar .page-numbers.prev svg,
.pagination.is-bar .page-numbers.next svg{ display:none !important; }

/* ================================ SINGLE / ARTIGO ================================ */
/* Layout: conteúdo + sidebar */
.container--article{
  width:min(100%, var(--hdr-max, 980px)); margin:12px auto 40px; /* aproxima do topo */
  padding:40px 14px 40px;
  display:grid; grid-template-columns:minmax(0,1fr) 480px; /* sidebar maior */
  column-gap:96px; /* distância lateral entre texto e sidebar */
  row-gap:50px; /* bem perto do share no topo */
  align-items:start; grid-auto-rows:auto; /* garante altura automática das linhas */
}

/* >>> Posicionamento explícito no grid (resolve o "vão") <<< */
/* share na linha 1, coluna 1 */
.container--article > .share-strip--top{ grid-column:1; grid-row:1; justify-self:start; align-self:start; }
/* sidebar fixa na coluna 2, ocupando as linhas 1 e 2 */
.container--article > .article-sidebar{ grid-column:2; grid-row:1 / span 2; align-self:start; }
/* artigo na linha 2, coluna 1 (logo abaixo do share) */
.container--article > article.article-content{ grid-column:1; grid-row:2; margin-top:0 !important; padding-top:0 !important; }

/* HERO do artigo (claro, centralizado) */
.article-hero{
  --h: 360px; --hero-pos: center 50%;
  margin:18px auto 8px; width:min(100%, var(--hdr-max, 980px)); padding:0 14px;
  display:flex; align-items:center; justify-content:center; min-height:var(--h);
  border-radius:20px; box-shadow:0 16px 34px rgba(0,0,0,.14);
  background: linear-gradient(180deg, rgba(7,22,34,0) 0%, rgba(7,22,34,.55) 70%, rgba(7,22,34,.75) 100%), var(--hero, none);
  background-size:100% 100%, cover; background-position:center, var(--hero-pos);
}
.article-hero__wrap{ width:100%; max-width:var(--hdr-max, 980px); margin:0 auto; padding:0 14px; text-align:center; }
.article-hero__date{
  margin:0 0 10px; color:#fff; opacity:.95;
  font:500 13px/1 'Rubik', system-ui, -apple-system, 'Segoe UI', Roboto, Ubuntu, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
  text-shadow:0 2px 10px rgba(0,0,0,.25); display:block;
}
.article-hero__title{
  margin:0 auto; color:#fff; font:800 clamp(24px, 4.5vw, 42px)/1.06 'Rubik', system-ui, -apple-system, 'Segoe UI', Roboto, Ubuntu, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
  text-shadow:0 2px 10px rgba(0,0,0,.30); max-width:980px;
}

/* >>> SEM IMG DESTACADA: mantém a faixa para exibir o TÍTULO <<< */
.article-hero[style*="--hero: none"]{
  min-height:auto !important;
  padding:18px 14px !important;
  margin:12px auto 8px !important;
  background:transparent !important;
  box-shadow:none !important;
  display:block !important; /* não esconde mais o título */
}
.article-hero[style*="--hero: none"] .article-hero__wrap{ text-align:left; padding:0; }
.article-hero[style*="--hero: none"] .article-hero__title{
  color: var(--heading, #034872) !important;
  text-shadow:none !important;
}
.article-hero[style*="--hero: none"] .article-hero__date{
  color: var(--muted-text, #4c6672) !important;
  text-shadow:none !important;
}

/* ===== Título inline (logo abaixo do share) ===== */
.article-title--inline{
  display:block;
  margin:2px 0 10px !important; color: black; font:800 clamp(22px,3.2vw,32px)/1.05 'Rubik',system-ui;
}

/* Conteúdo */
.article-content{ background:transparent; border-radius:0; box-shadow:none; padding:0; margin-top:0; }

/* >>> TEXTO DO ARTIGO = PRETO PADRÃO <<< */
.article-body{
  color:#111; /* preto padrão */
  max-width:86ch; margin-left:0; margin-right:auto;
  font-size:16px; line-height:1.65;
}
.article-body h2,.article-body h3{ color:#0a466e; margin:1.25em 0 .6em; }
.article-body p{ margin:.85em 0; }
.article-body img,.article-body figure{ max-width:100%; height:auto; display:block; border-radius:12px; margin:14px auto; }
.single-article .page-links{ margin-top:14px; }

/* ===== Bloco de ADS inline (entre seções) ===== */
.ad-slot, .ads-slot{ display:block; width:100%; margin:18px 0 14px; }
.ad-slot__label{ display:inline-block; font:600 12px/1.2 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; color:#6b7a86; margin:0 0 6px; }
.ad-slot__box{
  border-radius:12px; background:#eef3f6; border:1px solid #d9e4ea; height:140px; box-shadow:0 6px 18px rgba(0,0,0,.06);
  display:flex; align-items:center; justify-content:center; color:#7b8793; font:700 16px/1.2 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; letter-spacing:.06em;
}

/* Fallback visual para quem ainda usa .ads-slot--inline */
.ads-slot--inline{ border-radius:12px; background:#e5e7eb; color:#333; text-align:center; height:140px; }
.ads-slot--inline::before{
  content:"ADS"; display:inline-block; margin-top:calc(140px/2 - 10px); font:700 16px/1 'Rubik',system-ui; letter-spacing:.04em;
}

/* Sidebar (Veja mais sobre ...) */
.article-sidebar{ align-self:start; }
.asb__card.asb__card--grid{ background:#F6F8F9; border:1px solid #D9E4EA; border-radius:22px; box-shadow:0 12px 28px rgba(0,0,0,.08); padding:53px 39px; }
.asb__card--grid .asb__title{
  margin:0 0 56px; text-align:center; color:#0a466e; font:800 clamp(20px,3.2vw,22px)/1.05 'Rubik',system-ui;
}
.article-sidebar .asb__card--grid .asb-grid{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; align-items:stretch; }
.article-sidebar .asb__card--grid .asb-grid > .asb-item{ min-width:0; }

/* Tiles */
.article-sidebar .asb__card--grid .asb-item{
  position:relative; display:block; height:200px; border-radius:16px; color:#fff; overflow:hidden; box-shadow:0 10px 22px rgba(0,0,0,.16);
  text-decoration:none; transition:transform .15s ease, box-shadow .15s ease; background:var(--img, none) center/cover no-repeat;
}
.article-sidebar .asb__card--grid .asb-item::before{
  content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(7,22,34,.0) 0%, rgba(7,22,34,.55) 60%, rgba(7,22,34,.85) 100%); z-index:0;
}
.article-sidebar .asb__card--grid .asb-item:hover{ transform:translateY(-2px); box-shadow:0 16px 30px rgba(0,0,0,.22); }

/* conteúdo interno */
.article-sidebar .asb__card--grid .asb-item > span:not(.asb-item__media){
  position:absolute; left:12px; right:12px; bottom:12px; display:grid; gap:8px; z-index:1;
}
.article-sidebar .asb__card--grid .asb-item__title{
  margin:0; font:800 15px/1.22 'Rubik',system-ui; color:#fff; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; text-shadow:0 1px 10px rgba(0,0,0,.35);
}
.article-sidebar .asb__card--grid .asb-item__btn{
  justify-self:start; display:inline-grid; place-items:center; height:24px; padding:0 12px; border-radius:999px; background:#fff; color:#0a466e;
  font:800 11.5px/1 'Rubik',system-ui; box-shadow:0 8px 20px rgba(0,0,0,.22); border:1px solid #E5EEF3;
}

/* Share strip (X / IG / WA / FB) */
.share-strip{ padding:26px 167px; background:#F3F3F3; border-radius:12px; }
.share-list{ display:flex; align-items:center; gap:66px; list-style:none; margin:0; padding:0; }
.share-btn{ --share-bg:#0a466e; width:28px; height:28px; border-radius:999px; display:grid; place-items:center; background:var(--share-bg); box-shadow:0 8px 18px rgba(0,0,0,.12); text-decoration:none; transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease; }
.share-btn:hover{ transform:translateY(-1px); box-shadow:0 12px 24px rgba(0,0,0,.16); }
.share-btn:active{ transform:translateY(0); opacity:.9; }
.share-btn svg{ width:14px; height:14px; display:block; fill:#fff; }
.share-btn:focus-visible{
  outline:3px solid color-mix(in srgb, var(--share-bg) 35%, white); outline-offset:2px;
  box-shadow:0 0 0 4px #fff, 0 0 0 8px color-mix(in srgb, var(--share-bg) 25%, transparent);
}

/* Top pill (esquerda da coluna do texto) */
.share-strip--top{
  display:inline-flex; width:auto; margin:4px 0 2px; padding:20px 153px; border-radius:10px;
}
.share-strip--top .share-list{ gap:30px; }

/* Rodapé (barra centralizada) */
.share-strip--bottom{ width:min(100%, var(--hdr-max, 980px)); margin:22px auto; padding:14px 18px; border-radius:12px; }
.share-strip--bottom .share-list{ justify-content:center; }

/* ========================================================================== Texto global & Acessibilidade ========================================================================== */
.single-article .article-content > :first-child{ margin-top:0 !important; }

/* >>> Single: força texto preto e links com a cor da marca <<< */
body.single .entry-content,
body.single .entry-content *:not(a):not(.btn):not(.wp-element-button){
  color:#111 !important;
}
body.single .entry-content a{
  color: var(--brand-primary, #034872) !important;
}
body.single .entry-content a:hover{
  color: color-mix(in srgb, var(--brand-primary, #034872) 90%, #000) !important;
}
/* Títulos internos mantém cor de destaque */
body.single .entry-content h1,
body.single .entry-content h2,
body.single .entry-content h3,
body.single .entry-content h4{
  color: var(--heading, var(--brand-primary, #034872)) !important;
}

/* (demais textos globais seguem tokens) */
.card__title,
.card__meta,
.section--archive .archive-title,
.section--archive .archive-desc,
.footer-sub,
.footer-links a,
.trending__title,
.also__title { color: var(--text-color); }

/* Respeita usuários que preferem menos movimento */
@media (prefers-reduced-motion: reduce){
  *{ animation:none !important; transition:none !important; }
}

/* ALSO na single: agora 4 colunas */
.also--single{ margin:16px auto 30px; }
.also--single .also__wrap{ width:min(100%, var(--hdr-max)); }
.also--single .also__grid{ grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }

/* versão compacta (cards menores) */
.also--compact .also__title{ font-size: clamp(22px, 3vw, 30px); margin-bottom: 12px; }
.also--compact .also-card{ gap:10px; }
.also--compact .also-card__img{ border-radius:14px; }
.also--compact .also-card__badge{ height: 10px; padding: 4px 12px; font: 700 10px/1 'Rubik',system-ui; }
.also--compact .also-card__title{ font: 800 13px/1.15 'Rubik',system-ui; -webkit-line-clamp: 3; }
.also--compact .also-card__btn{ height: 20px; padding: 0 14px; font: 800 10.5px/1 'Rubik',system-ui; }

/* ============================== CONTATO — H1 em faixa (hero) ============================== */
.page-contact .contact-hero-title{
  width: min(100%, var(--page-max, 980px));
  margin: 8px auto 16px !important;
  padding: 72px 36px;
  background: color-mix(in srgb, var(--brand-tertiary) 80%, #fff);
  border: 1px solid color-mix(in srgb, var(--brand-primary) 18%, #fff);
  border-radius: 18px;
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  color: #0a466e;
  font: 500 clamp(28px, 4.6vw, 44px)/1.05 'Rubik', system-ui;
  text-align: center;
}
/* Título da página de contato alinhado à esquerda */
.page-contact .contact-hero-title{
  text-align: left;
  padding-left: 22px;
  padding-right: 22px;
}
/* Opcional: dá um respiro entre a faixa e o texto introdutório */
.page-contact .contact-intro{ margin-top: 6px; }
/* Esconde o segundo título do bloco de introdução (h2) */
.page-contact .contact-intro__title{ display:none !important; }



/* ============================== CONTATO — Intro + Form (clean) ============================== */
.section--page .contact-intro, .section--page .contact-form{
  width: min(100%, var(--page-max, 980px)); margin: 12px auto; border: 0; border-radius: 0; box-shadow: none; background: transparent; padding: 0;
}
.section--page .contact-intro h2{ margin: 0 0 10px; color:#0a466e; font: 800 clamp(18px, 2.6vw, 22px)/1.1 'Rubik',system-ui; }
.section--page .contact-intro p{ margin: .6em 0; color: var(--text-color); font: 500 14.5px/1.55 'Rubik',system-ui; }
.section--page .contact-form .contact-form__title{ display:none !important; }
.section--page .contact-form .contact-form__grid{ display:block; }
.section--page .contact-form .field{ display:block; margin-bottom:10px; }
.section--page .contact-form .sr-only{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.section--page .contact-form .hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0; pointer-events:none; }
.section--page .contact-form input[type="text"],
.section--page .contact-form input[type="email"],
.section--page .contact-form textarea{
  width: 100%; height: 44px; padding: 0 14px; border-radius: 12px; border: 1px solid #e6eef4; background: #ffffff; color: var(--text-color);
  font: 500 14px/1 'Rubik',system-ui; outline: none; box-shadow: inset 0 -1px 0 rgba(0,0,0,.06);
}
.section--page .contact-form textarea{ height: 200px; padding: 12px 14px; resize: vertical; line-height: 1.45; }
.section--page .contact-form ::placeholder{ color:#8DA3AF; }
.section--page .contact-form input:focus,
.section--page .contact-form textarea:focus{
  box-shadow: 0 0 0 3px var(--search-ring, rgba(83,170,189,.35));
  border-color: color-mix(in srgb, var(--brand-secondary) 36%, #e6eef4);
}
.section--page .contact-form .actions{ margin-top:10px; }
.section--page .contact-form .actions .btn-pill,
.section--page .contact-form button[type="submit"],
.section--page .contact-form input[type="submit"]{
  display:inline-flex; align-items:center; justify-content:center; height:34px; padding:0 18px; border:0; border-radius:999px; background:var(--brand-primary); color:#fff;
  font:800 13px/1 'Rubik',system-ui; box-shadow:0 10px 22px rgba(3,72,114,.18); cursor:pointer;
}
.section--page .contact-form .actions .btn-pill:hover,
.section--page .contact-form button[type="submit"]:hover,
.section--page .contact-form input[type="submit"]:hover{ transform:translateY(-1px); }

@media (prefers-color-scheme: dark){
  .section--page .contact-form input[type="text"],
  .section--page .contact-form input[type="email"],
  .section--page .contact-form textarea{
    background:#0F1F27; border-color:#1a2b33; color:#eaf2f4;
  }
}
/* ======================== AUTHOR BOX — layout do mockup (azul) ======================== */
/* wrapper em 2 colunas: [pill de redes | cartão do autor] */
.author-row{
  width:min(100%, var(--hdr-max, 980px));
  margin:28px auto 12px;
  padding:0 14px;
  display:grid;
  grid-template-columns:90px 1fr; /* pill | card */
  gap:20px;
  align-items:stretch;
}

/* Pill vertical (X/IG/WA/FB) — azul claro de fundo + botões na cor da marca */
.author-share{
  align-self:stretch;
  background: color-mix(in srgb, var(--brand-primary, #034872) 12%, #f1f6f9);
  border-radius:18px;
  padding:16px 0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:22px;
  box-shadow:0 12px 26px rgba(0,0,0,.08);
  min-height:160px;
}
.author-share a{
  width:44px; height:44px;
  border-radius:999px;
  background: var(--brand-primary, #034872);
  color:#fff;
  display:grid; place-items:center;
  text-decoration:none;
  box-shadow:0 10px 22px rgba(3,72,114,.26);
  transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.author-share a:hover{ transform: translateY(-1px); box-shadow:0 14px 26px rgba(3,72,114,.32); }
.author-share a:active{ transform:none; opacity:.92; }
.author-share a svg{ width:20px; height:20px; fill:currentColor; display:block; }

/* Cartão do autor — azul escuro com texto branco */
.author-box{
  align-self:stretch;
  display:grid;
  grid-template-columns:120px 1fr;
  gap:22px;
  background: color-mix(in srgb, var(--brand-primary, #034872) 85%, #0a3350);
  border-radius:22px;
  padding:34px 32px;
  color:#fff;
  box-shadow:0 16px 34px rgba(0,0,0,.14);
}
.author-box__tag{
  grid-column:1 / -1;
  margin:0 0 6px;
  color:#ffffff;
  font:700 16px/1 'Rubik',system-ui;
  opacity:.95;
}
.author-box__media{
  width:120px; height:120px;
  border-radius:999px;
  overflow:hidden;
  background:#d8e6ef; /* placeholder */
  display:grid; place-items:center;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
.author-box__media img{ width:100%; height:100%; object-fit:cover; display:block; }

.author-box__copy{ display:grid; align-content:center; gap:10px; }
.author-box__name{
  margin:0;
  font:800 clamp(26px, 4.2vw, 42px)/1.05 'Rubik',system-ui;
  color:#fff;
}
.author-box__bio{
  margin:0;
  font:500 15.5px/1.55 'Rubik',system-ui;
  color:#eef6fb;
  max-width:70ch;
}

/* Responsivo */
@media (max-width: 700px){
  .author-row{ grid-template-columns:1fr; gap:14px; }
  .author-share{
    flex-direction:row; justify-content:center;
    padding:12px; border-radius:16px; gap:14px;
  }
  .author-box{
    grid-template-columns:80px 1fr;
    padding:20px; border-radius:18px;
  }
  .author-box__media{ width:80px; height:80px; }
  .author-box__name{ font-size:clamp(22px, 6vw, 30px); }
}

/* (opcional) garante que um share de rodapé legado não apareça */
.share-strip--bottom{ display:none !important; }



/* ======================================================================
   PÁGINAS: Sobre nós / Termos de Uso / Política de Privacidade
   (título em faixa/pill, centralizado, igual ao print)
   ====================================================================== */

/* 1) H1 em “faixa” */
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about)
  :is(.wp-block-post-title, .entry-title),
.legal-hero-title{
  width: min(100%, var(--page-max, 980px));
  margin: 8px auto 16px !important;
  padding: clamp(36px, 7vw, 72px) clamp(18px, 4vw, 36px);
  background: color-mix(in srgb, var(--brand-tertiary) 80%, #fff);
  border: 1px solid color-mix(in srgb, var(--brand-primary) 18%, #fff);
  border-radius: 18px;
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  color: #0a466e;
  font: 800 clamp(26px, 4.6vw, 44px)/1.05 'Rubik', system-ui;
  text-align: center;
}

/* Meta opcional (última atualização) */
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .legal-meta,
.legal-meta{
  width: min(100%, var(--page-max, 980px));
  margin: 10px auto 20px;
  padding: 14px 18px;
  background: #F3F5F7;
  border: 1px solid #E6EEF4;
  border-radius: 12px;
  color: #0a466e;
  font: 500 13px/1.35 'Rubik', system-ui;
  box-shadow: 0 8px 18px rgba(0,0,0,.04);
}

/* Container do conteúdo centralizado */
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .entry-content{
  width: min(100%, var(--page-max, 980px));
  margin: 0 auto;
}

/* >>> NOVO: centraliza o bloco do artigo nas páginas <<< */
.section--page .article-content{
  width: min(100%, var(--page-max, 980px));
  margin: 0 auto;              /* centraliza o container do artigo */
  padding: 0;
}

/* >>> NOVO: centraliza a coluna de leitura (mantém alinhamento à esquerda) <<< */
.section--page .article-body{
  max-width: 64ch;             /* largura de leitura confortável */
  margin-left: auto;
  margin-right: auto;          /* centraliza a coluna */
  /* se quiser tudo alinhado ao centro (não recomendado p/ texto longo):
     text-align:center; */
}

/* Títulos e parágrafos internos */
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .entry-content h2{
  color:#0a466e; font-weight:800; margin:1.2em 0 .6em;
}
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .entry-content p{
  color: var(--text-color, #10323A);
}

/* Tabela (bordas suaves e sombra) */
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .entry-content table{
  width:100%; border-collapse:collapse; background:#fff;
  border:1px solid #E6EEF4; border-radius:12px; overflow:hidden;
  box-shadow:0 8px 18px rgba(0,0,0,.05);
}
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .entry-content th,
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .entry-content td{
  padding:12px 10px; border-bottom:1px solid #EEF3F6;
  font:500 14px/1.35 'Rubik', system-ui; color:#10323A;
}
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .entry-content th{
  background:#F7FAFC; color:#0a466e; font-weight:800;
}
body:is(.privacy-policy,
        .page-termos-de-uso, .page-termos, .page-terms,
        .page-sobre-nos, .page-sobre, .page-about) .entry-content tr:last-child td{
  border-bottom:0;
}
/* VR Spotlight — DESKTOP com foto + gradiente da cor primária */
.vr-spotlight{
  background-image:
    linear-gradient(90deg,
      rgba(3,72,114,0) 0%,
      color-mix(in srgb, var(--brand-primary) 62%, transparent) 55%,
      color-mix(in srgb, var(--brand-primary) 88%, #071622) 100%
    ),
    var(--vr-hero-img, var(--hero, none));
  background-size: 100% 100%, cover;
  background-position: center, var(--vr-hero-pos, center 35%);
  background-repeat: no-repeat;
}


/* =====================================================================
   MOBILE (≤768px) — HEADER com "bolacha" da lupa + overlay
   ===================================================================== */
@media (max-width: 768px){

  .header, .site-header{ padding-top:12px; margin-bottom:12px; }
  .site-header .inside-navigation{
    width: min(calc(100% - 16px), var(--hdr-max));
    margin-inline: auto;

    height:58px;
    display:grid;
    grid-template-columns: auto 1fr auto !important;
    align-items:center;
    column-gap:14px;

    padding-inline: max(10px, env(safe-area-inset-left)) max(10px, env(safe-area-inset-right));

    border-radius:20px;
    background:linear-gradient(90deg, var(--hdr-grad-left), var(--hdr-grad-right));
    box-shadow:0 8px 24px rgba(3,72,114,.12);
    overflow:visible;
  }

  .site-brand,
  .header-actions{ min-width:0; }

  .logo-wrap .custom-logo{ max-height: clamp(20px, 4.8vw, 26px); width:100px; height:auto; }
  .site-brand a{ font-size: clamp(20px, 6vw, 26px); }

  .site-header .main-navigation,
  .site-header .menu-bar-items,
  .site-header .inside-navigation .avatar,
  .site-header .inside-navigation [class*="avatar"],
  .site-header .inside-navigation > img:not(.custom-logo){
    display:none !important;
  }

  .header-actions{
    justify-self:end;
    display:flex; align-items:center; gap:12px; height:58px;
    flex-wrap:nowrap;
  }

  .nav-toggle{
    display:inline-flex !important; width:44px; height:38px;
    gap:6px; border-radius:10px; flex:0 0 auto;
  }
  .nav-toggle-bar{ width:22px; height:3px; }

  .header .search-form,
  .site-header .search-form,
  .header .header-search{
    --chip-h: 38px;
    --chip-w: 72px;
    position:relative; z-index:2;
    flex:0 0 var(--chip-w);
    width:var(--chip-w); height:var(--chip-h);
    padding:0;
    border-radius:999px;
    background:#fff;
    display:inline-flex; align-items:center; justify-content:center;
    box-shadow:
      0 8px 22px rgba(3,72,114,.12),
      0 0 0 2px rgba(83,170,189,.24) inset;
    cursor:pointer;
    transition: box-shadow .18s ease, transform .08s ease;
  }
  .header .search-form:hover,
  .header .search-form:focus-within{
    box-shadow:
      0 10px 24px rgba(3,72,114,.16),
      0 0 0 3px color-mix(in srgb, var(--brand-secondary) 30%, transparent);
  }

  .header .search-field{
    position:absolute !important;
    width:1px; height:1px; margin:-1px; padding:0; border:0;
    overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(100%);
    white-space:nowrap;
  }

  .header .search-submit{
    display:grid; place-items:center;
    inline-size:100%; block-size:100%;
    border:0; background:transparent;
    color:var(--brand-secondary); border-radius:inherit;
    cursor:pointer; user-select:none;
    transition:transform .08s ease;
  }
  .header .search-submit:active{ transform:scale(.98); }

  .header .icon-search{ width:18px; height:18px; display:block; }
}

/* ============================================================
   BUSCA EM OVERLAY
   ============================================================ */
.search-overlay[hidden]{ display:none !important; }
.search-overlay{
  position:fixed; inset:0; z-index:1002;
  background:rgba(0,0,0,.45);
  display:grid; place-items:center;
}
.search-overlay__panel{
  width:min(92vw, 520px);
  background:#fff; border-radius:16px;
  box-shadow:0 18px 44px rgba(0,0,0,.18);
  padding:0px; position:relative;
}
.search-overlay__close{
  position:absolute; top:12px; right:12px;
  width:38px; height:38px; border:0; border-radius:10px;
  background:#eef2f7; color:var(--brand-primary); font-size:22px; cursor:pointer;
}
.search-overlay__form{ display:grid; grid-template-columns:1fr auto; gap:10px; }
.search-overlay__form input[type="search"]{
  height:44px; border:1px solid #e6eef4; border-radius:12px; padding:0 12px;
  font:500 14px/1 "Rubik",system-ui; color:#111827;
}
.search-overlay__form .btn{
  height:44px; border:0; border-radius:12px; padding:0 18px;
  background:var(--brand-primary); color:#fff; font:800 14px/1 "Rubik",system-ui;
}

html.no-scroll, body.no-scroll{ overflow:hidden !important; }

/* =====================================================================
   DESKTOP (≥769px) — header, busca visível e hambúrguer oculto
   ===================================================================== */
@media (min-width: 769px){

  .site-header .inside-navigation{
    width: min(calc(100% - 20px), var(--hdr-max));
    margin-inline: auto;
    padding-inline: 9px;
    border-radius: var(--hdr-radius, 100px);
  }

  .site-header .main-navigation{ display:block !important; }
  .nav-toggle{ display:none !important; }

  .header-actions{
    position:relative; z-index:10;
    justify-self:end; display:flex; align-items:center;
    gap:24px; height:var(--hdr-height);
    min-width:0;
  }

  .header .search-form,
  .site-header .search-form,
  .header .header-search{
    position:relative; z-index:10;
    display:flex; align-items:center; justify-content:space-between;
    width:var(--search-w); height:var(--search-h);
    padding:0 12px; margin:4px;
    border-radius:100px; background:var(--search-bg); border:0; gap:10px;
    box-shadow:none;
  }
  .header .search-form:focus-within{ box-shadow:0 0 0 3px var(--search-ring); }

  .header .search-field{
    position:static !important; width:auto; height:auto; margin:0; padding:0;
    clip:auto; clip-path:none; white-space:normal; pointer-events:auto; caret-color:auto;
    flex:1; min-width:0; background:transparent; border:0; outline:none;
    font:400 14px/1 "Rubik",system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
    color:var(--search-text); opacity:1;
  }
  .header .search-field::placeholder{ color:var(--search-ph); }

  .header .search-submit{
    display:flex; align-items:center; justify-content:center;
    width:24px; height:24px; background:transparent; border:0; cursor:pointer;
    color:var(--search-icon);
  }
  .header .icon-search{ width:20px; height:20px; display:block; }
}

/* ============================================================
   DRAWER — MOBILE (≤768px)
   ============================================================ */
@media (max-width: 768px){

  .js-drawer-ready .drawer-overlay{
    backdrop-filter: blur(2px) saturate(120%);
    -webkit-backdrop-filter: blur(2px) saturate(120%);
  }

  .js-drawer-ready #drawer-nav,
  .js-drawer-ready .drawer-nav{
    width: min(92vw, var(--drawer-w, 360px));
    max-width: 92vw;
    height: 100dvh;
    right: 0;
    transform: translateX(100%);
    visibility: hidden;
    border-radius: 16px 0 0 16px;
    box-shadow: -24px 0 48px rgba(0,0,0,.18);
    contain: layout paint;
    background:#fff;
  }
  .js-drawer-ready #drawer-nav.is-open,
  .js-drawer-ready .drawer-nav.is-open{
    transform: translateX(0);
    visibility: visible;
  }

  .js-drawer-ready #drawer-nav .drawer-close,
  .js-drawer-ready .drawer-nav .drawer-close{
    position: sticky;
    top: calc(env(safe-area-inset-top) + 8px);
    margin: 8px 8px 0 auto;
    float: none;
    z-index: 2;
  }

  .js-drawer-ready #drawer-nav .main-nav,
  .js-drawer-ready .drawer-nav .main-nav{
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    padding: calc(env(safe-area-inset-top) + 56px) 14px
             calc(env(safe-area-inset-bottom) + 18px);
    scrollbar-gutter: stable;
  }

  .js-drawer-ready #drawer-nav .main-nav{ scrollbar-width: thin; scrollbar-color: rgba(3,72,114,.35) transparent; }
  .js-drawer-ready #drawer-nav .main-nav::-webkit-scrollbar{ width: 6px; }
  .js-drawer-ready #drawer-nav .main-nav::-webkit-scrollbar-thumb{ background: rgba(3,72,114,.35); border-radius: 10px; }
  .js-drawer-ready #drawer-nav .main-nav::-webkit-scrollbar-track{ background: transparent; margin: 8px; }
}


/* ============================================================
   HERO — MOBILE (≤768px)
   ============================================================ */
@media (max-width: 768px){

  .hero-banner,
  article.hero-banner{
    min-height: 554px;
    border-radius: 20px;
    overflow: hidden;

    /* >>> ALTERADO AQUI: usa gradiente 200deg + var(--hdr-grad-left) <<< */
    background-image: linear-gradient(
        200deg,
        rgba(3, 72, 114, 0) 10.53%,
        var(--hdr-grad-left) 107.72%
      ),
      var(--hero-img, var(--hero, none)) !important;
    background-size: 100% 100%, cover;
    background-position: center, center;

    padding: 126px 22px 30px max(12px, env(safe-area-inset-left));
    display: flex;
    align-items: flex-end;
    box-shadow: 0 16px 34px rgba(0,0,0,.14);
    contain: layout paint;
  }

  .hero-banner__content,
  .hero-banner__wrap{
    width: 100%;
    display: grid;
    gap: 14px;
    color: #fff;
  }

  .hero-banner__title{
    margin: 0;
    color: #fff;
    font: 800 clamp(20px, 6.2vw, 32px)/1.06 'Rubik', system-ui;
    text-shadow: 0 2px 10px rgba(0,0,0,.30);
    display: -webkit-box; -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden;
  }

  .hero-banner__excerpt{
    margin: 0;
    color: #E8F1F6;
    opacity: .95;
    font: 500 14px/1.45 'Rubik', system-ui;
    max-width: 60ch;
  }

  .hero-banner__cta{ margin-top: 8px; }
  .hero-banner__cta .btn,
  .hero-banner__cta a,
  .hero-banner__cta .wp-element-button{
    display: inline-flex;
    align-items: center; justify-content: center;
    height: 48px; padding: 0 22px;
    border-radius: 999px; border: 0;
    background: #fff; color: var(--brand-primary);
    font: 800 15px/1 'Rubik', system-ui;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(0,0,0,.18);
  }
  .hero-banner__cta .btn:hover,
  .hero-banner__cta a:hover,
  .hero-banner__cta .wp-element-button:hover{
    transform: translateY(-1px);
  }

  .hero-banner img,
  .hero-banner__img{ display: none !important; }
}

@media (max-width: 768px){
  .hero-banner[style*="--hero: none"],
  .hero-banner[style*="--hero-img: none"]{
    display: none !important;
  }
}

/* ============================================================
   VR SPOTLIGHT — MOBILE
   - Usa a imagem do post via --vr-hero-img no ::before
   - Overlay neutro no ::after
   - Nada de brand no fundo; brand só nos botões
   ============================================================ */

@media (max-width: 768px){

  .vr-spotlight{
    --pad-x: 18px;
    --hero-min: 430px;

    position: relative;
    border-radius: 20px;
    overflow: hidden;
    color:#fff;

    /* sem gradiente/cores da brand no container */
    background: none !important;
    box-shadow: 0 16px 34px rgba(0,0,0,.14);
    isolation: isolate;
  }

  /* FOTO DO POST — vem da var --vr-hero-img definida no HTML */
  .vr-spotlight::before{
    content:"";
    position:absolute; inset:0;
    z-index:0;
    border-radius:inherit;
    background: var(--vr-hero-img, var(--hero, none)) center / cover no-repeat !important;
    filter:none !important;                 /* remove filtros do desktop */
  }

  /* OVERLAY neutro por cima da foto (sem usar brand) */
  .vr-spotlight::after{
    content:"";
    position:absolute; inset:0;
    z-index:1; pointer-events:none;
    border-radius:inherit;
    background: linear-gradient(
      180deg,
      rgba(7,22,34,0) 0%,
      rgba(7,22,34,.70) 55%,
      rgba(7,22,34,.92) 100%
    ) !important;
  }

  /* garante que elementos decorativos do desktop não interfiram */
  .vr-spotlight__img,
  .vr-spotlight__left::after,
  .vr-spotlight__glass{ display:none !important; }

  /* conteúdo acima da imagem/overlay */
  .vr-spotlight__wrap{
    position: relative; z-index: 2;
    display:block;
    min-height: var(--hero-min);
    padding: 312px var(--pad-x) 0 !important;
  }

  .vr-spotlight__left{
    min-height: 0; padding: 0; background: transparent; box-shadow: none !important;
  }

  .vr-spotlight__copy{ display:grid; gap:12px; max-width:36ch; }
  .vr-spotlight__title{
    margin:0;
    font:800 clamp(22px, 7vw, 32px)/1.06 'Rubik', system-ui;
    text-shadow:0 2px 10px rgba(0,0,0,.35);
    display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden;
  }
  .vr-spotlight__desc{
    margin:0; color:#E8F1F6; opacity:.95;
    font:500 14px/1.45 'Rubik', system-ui;
    max-width:60ch;
  }

  /* CTA — fundo branco, texto usa a brand (somente aqui) */
  .vr-spotlight__cta{
    margin-top:8px;
    display:inline-flex; align-items:center; justify-content:center;
    height:82px; padding:43px 5px;
    border-radius:999px; border:0;
    background:#fff; color:var(--brand-primary);
    text-transform:none; font:800 15px/1 'Rubik',system-ui;
    box-shadow:0 12px 28px rgba(0,0,0,.18);
    text-decoration:none;
  }

  /* carrossel de cards */
  .vr-spotlight__right{
    width:100%; max-width:100%; height:auto;
    display:grid !important;
    grid-template-columns:none !important;
    grid-template-rows:none !important;
    grid-auto-flow: column;
    grid-auto-columns: 80%;
    gap:14px;

    overflow-x:auto; overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-inline: 0;

    margin:16px 0 18px;
    padding:12px 0 20px;

    scrollbar-width:none; -ms-overflow-style:none;
  }
  .vr-spotlight__right::-webkit-scrollbar{ display:none; }

  .vr-card{
    position:relative; height:260px;
    border-radius:18px; overflow:hidden;
    background:#0e3954; box-shadow:0 12px 24px rgba(0,0,0,.20);
    scroll-snap-align:start; scroll-snap-stop:always;
  }
  .vr-card__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
  .vr-card__overlay{
    position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(7,22,34,0) 0%, rgba(7,22,34,.65) 60%, rgba(7,22,34,.92) 100%);
  }
  .vr-card__copy{
    position:absolute; left:12px; right:12px; bottom:12px;
    display:grid; gap:10px; color:#fff;
  }
  .vr-card__title{
    margin:0; font:800 14px/1.12 'Rubik',system-ui;
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  }
  /* Pill “Ler mais” — fundo claro; texto pode usar brand se quiser */
  .vr-card__pill{
    align-self:start; display:inline-flex; align-items:center; justify-content:center;
    height:22px; padding:0 12px; border-radius:999px;
    background:#fff; color:var(--brand-primary);
    font:800 11px/1 'Rubik',system-ui; border:0;
    box-shadow:0 10px 22px rgba(0,0,0,.18);
  }

  body{ overflow-x:hidden; }
}

/* ============================================================
   TRENDING — MOBILE
   ============================================================ */
@media (max-width: 768px){

  .trending{
    --trend-gap:14px;
    --trend-mobile-bg: color-mix(in srgb, var(--brand-secondary) 65%, var(--brand-primary));
    margin: 12px auto 28px;
  }

  .trending__wrap{ padding: 0 12px; }
  .trending__head{ gap:6px; margin-bottom: 33px; }
  .trending__title{ font:800 clamp(22px, 7vw, 28px)/1 'Rubik',system-ui; }

  .trending__grid{
    grid-template-columns: 1fr;
    gap: var(--trend-gap);
  }

  .trend-card{
    min-height: unset;
    background: var(--trend-mobile-bg);
    box-shadow: 0 12px 22px rgba(0,0,0,.14);
    border-radius: 18px;
  }

  .trend-card__link{
    grid-template-columns: 88px 1fr;
    align-items: center;
    gap: 12px;
    padding: 12px;
  }

  .trend-card__img{
    width: 88px;
    height: 68px;
    border-radius: 12px;
    box-shadow: 0 8px 16px rgba(0,0,0,.22);
  }

  .trend-card__copy{ gap: 8px; }
  .trend-card__title{
    color:#fff;
    font: 800 14px/1.18 'Rubik',system-ui;
    -webkit-line-clamp: 2;
  }

  .trend-card__btn{
    padding: 7px 14px;
    font: 800 12px/1 'Rubik',system-ui;
    background:#fff;
    color:#0a2230;
    border-color: #d7e7ee;
    box-shadow: 0 8px 18px rgba(0,0,0,.12);
  }
}
@media (max-width: 768px){
  .trend-card{ min-height: auto; }
  .trend-card__link{
    position: static;
    inset: auto;
    display: grid;
    grid-template-columns: 88px 1fr;
    gap: 12px;
    align-items: center;
    padding: 12px;
  }
}

/* ============================================================
   CAT-STRIP — SLIDER MOBILE
   ============================================================ */
@media (max-width: 768px){
  .cat-strip{ margin:12px 0 20px; }
  .cat-strip__grid{
    display:grid;
    grid-template-columns: none !important;
    grid-template-rows: none !important;

    grid-auto-flow:column;
    grid-auto-columns:85%;
    gap:12px;

    overflow-x:auto; overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    padding:0 12px 10px;

    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .cat-strip__grid::-webkit-scrollbar{ display:none; }

  .mini-card{
    position:relative;
    border-radius:16px; overflow:hidden;
    background:#0e3954;
    box-shadow:0 12px 24px rgba(0,0,0,.20);
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  .mini-card__img{
    width:100%; height:170px; object-fit:cover; display:block;
  }
  .mini-card__overlay{
    position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(7,22,34,0) 0%, rgba(7,22,34,.65) 60%, rgba(7,22,34,.92) 100%);
  }
  .mini-card__copy{
    position:absolute; left:10px; right:10px; bottom:10px;
    display:grid; gap:8px; color:#fff;
  }
  .mini-card__title{
    margin:0; font:800 14px/1.2 'Rubik',system-ui;
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  }
  .mini-card__btn{
    align-self:start; display:inline-flex; align-items:center; justify-content:center;
    height:22px; padding:0 12px; border-radius:999px;
    background:#fff; color:#0a2230; font:800 11px/1 'Rubik',system-ui; border:0;
    box-shadow:0 10px 22px rgba(0,0,0,.18);
  }
}

/* ALSO — MOBILE ajustes */
@media (max-width: 768px){
  .also .also-card{ gap: 8px !important; }
  .also .also-card__img{
    flex: 0 0 128px !important;
    width: 128px !important;
    height: 88px !important;
    border-radius: 14px;
  }
  .also .also-card__link{ align-items: flex-start !important; }
  .also .also-card__copy{ gap: 4px !important; }
  .also .also-card__badge{
    padding: 3px 9px !important;
    font: 700 9.5px/1 'Rubik',system-ui !important;
    margin: 0 0 2px 0 !important;
  }
  .also .also-card__title{
    font: 800 13.5px/1.15 'Rubik',system-ui !important;
    -webkit-line-clamp: 2 !important;
    margin: 0 !important;
  }
  .also .also-card__btn{
    height: 20px; padding: 0 12px;
    font: 800 10.5px/1 'Rubik',system-ui;
    margin-top: 2px !important;
  }
}

/* ============================================================
   ALSO — MOBILE (layout 1 coluna)
   ============================================================ */
@media (max-width: 768px){

  .also{ margin:12px auto 24px; }
  .also__wrap{ padding:0 12px; }
  .also__title{ font:800 clamp(22px,7vw,26px)/1 'Rubik',system-ui; margin:0 0 41px; text-align:center; }

  .also__grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .also__grid > *:nth-child(n+7){ display:none !important; }

  .also .also-card{
    display:grid !important;
    grid-template-columns:150px 1fr;
    grid-auto-rows:auto;
    column-gap:16px;
    row-gap:10px;
    align-items:start;
    padding:0 !important;
    background:transparent !important; border:0 !important; box-shadow:none !important; gap:0 !important;
  }

  .also .also-card__link{
    display:contents !important;
    color:inherit; text-decoration:none;
  }

  .also .also-card__img{
    grid-column:1; grid-row:1 / span 3;
    width:140px !important; height:106px !important; aspect-ratio:auto !important;
    object-fit:cover; border-radius:14px; box-shadow:0 10px 20px rgba(0,0,0,.14);
  }

  .also .also-card__badge{
    grid-column:2; grid-row:1;
    justify-self:start; align-self:start;
    display:inline-flex !important; width:auto !important;
    padding:4px 10px !important; margin:0 !important;
    border-radius:999px; height:auto; border:0;
    font:700 10px/1 'Rubik',system-ui !important;
    background:var(--also-badge-bg); color:var(--also-badge-text);
    padding-left:0px;
  }

  .also .also-card__copy{
    grid-column:2; grid-row:2 / span 2;
    display:grid;
    gap:10px !important;
    align-content:start;
    padding-left:0px;
  }

  .also .also-card__title{
    margin:0 !important; color:#10323A !important;
    font:800 14px/1.15 'Rubik',system-ui !important;
    display:-webkit-box; -webkit-box-orient:horizontal; -webkit-line-clamp:2; overflow:hidden;
  }
  .also .also-card__btn{
    justify-self:start;
    height:22px; padding:0 14px; margin-top:2px !important;
    font:800 11px/1 'Rubik',system-ui;
  }
}

/* ============================================================
   FOOTER — MOBILE
   ============================================================ */
@media (max-width: 768px){

  .footer .container{ padding:0 12px; }
  .footer-top,
  .footer-cats{
    text-align:center !important;
    padding:28px 18px !important;
    border-radius:20px;
  }

  .footer-grid{
    grid-template-columns:1fr !important;
    gap:22px !important;
    justify-items:center;
  }

  .footer-brand,
  .footer-newsletter{ justify-items:center; text-align:center !important; }
  .footer-title,
  .footer-sub{ text-align:center !important; }

  .newsletter{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    place-items:center;
    width:100%;
  }
  .newsletter input[type="email"],
  .footer .btn{
    width:min(100%, 320px) !important;
    border-radius:12px !important;
  }
  .footer-note{ text-align:center !important; margin-left:auto; margin-right:auto; }

  .footer-links{
    list-style:none;
    padding:0 !important;
    margin:0 !important;
    display:grid;
    gap:10px;
    justify-items:center;
    text-align:center;
  }
  .footer-links li{ margin:0; }
  .footer-links a{ display:inline-block; }

  .footer-cats{
    display:flex; flex-direction:column !important;
    align-items:center !important; gap:14px !important;
  }
  .footer-cats__title{ text-align:center !important; }
  .footer-cats__nav{
    width:100%; padding:0; margin:0;
    display:flex; flex-wrap:wrap; gap:12px 18px !important;
    justify-content:center !important; text-align:center;
  }

  .footer-bottom{
    margin-top:14px;
    display:flex; flex-direction:column !important;
    align-items:center !important; gap:8px !important;
  }
  .footer-brandmark{ display:block !important; order:1; }
  .footer-brandmark img{ height:63px; width:auto; display:block; }

  .footer .copy{
    order:2;
    text-align:center !important;
    margin:0 !important;
  }
}

/* ============================================================
   CAT-LIST — MOBILE (cards 1x1 com azul do tema)
   ============================================================ */
@media (max-width: 768px){

  .cat-list__grid{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    padding: 0 12px !important;
  }

  .wide-card{
    display: grid !important;
    grid-template-columns: 118px 1fr;
    align-items: center;
    gap: 14px;
    padding: 12px;
    border-radius: 18px;

    /* azul padrão do site */
    background: var(--card-bg, var(--brand-primary, rgb(12, 84, 123)));
    color: #fff;

    box-shadow: 0 12px 28px rgba(0,0,0,.18);
    overflow: hidden;
  }

  .wide-card::before,
  .wide-card::after{ content:none !important; }

  .wide-card__thumb{
    display: block;
    width: 118px; height: 86px;
    border-radius: 14px; overflow: hidden;
    box-shadow: 0 10px 20px rgba(0,0,0,.20);
  }
  .wide-card__thumb img{
    width: 100%; height: 100%; object-fit: cover; display:block;
  }

  .wide-card__copy{
    display: grid; gap: 10px;
    align-content: start;
    min-width: 0;
  }

  .wide-card__title{
    margin: 0;
    color: #fff !important;                /* garante contraste */
    font: 800 14.5px/1.18 'Rubik', system-ui;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-wrap: balance;
  }

  .wide-card__btn{
    justify-self: start;
    display: inline-flex; align-items: center; justify-content: center;
    height: 26px; padding: 0 14px;
    border-radius: 999px; border: 0;
    background: #fff; color: #0a2230;      /* pill branco sobre o azul */
    font: 800 12px/1 'Rubik', system-ui;
    box-shadow: 0 10px 22px rgba(0,0,0,.18);
    text-decoration: none;
  }
}
/* ===== SINGLE — MOBILE (≤768px) — só DATA + TÍTULO centralizados, sem box/overlay/share ===== */
@media (max-width: 768px){

  /* Remove qualquer card/box/overlay do topo */
  .article-hero{
    margin: 59px 0 27px;
    background: transparent !important;
    background-image: none !important;   /* ignora --hero */
    box-shadow: none !important;
    border-radius: 0 !important;
    min-height: auto !important;
    padding: 0 !important;
    overflow: visible !important;
    display: block !important;
  }
  .article-hero::before,
  .article-hero::after{ content: none !important; }

  /* Wrapper simples e centralizado */
  .article-hero__wrap{
    width: 100%;
    padding: 0 12px;
    text-align: center;
    color: var(--text-color, #10323A) !important;
  }

  /* Data acima do título */
  .article-hero__date{
    display: block;
    margin: 0 0 8px;
    font: 700 11px/1.1 'Rubik', system-ui;
    color: color-mix(in srgb, var(--brand-primary, rgb(12,84,123)) 60%, #0f2026) !important;
    opacity: .9;
  }

  /* Título centralizado, texto escuro, sem sombra */
  .article-hero__title{
    display: block !important;
    margin: 0 0 4px;
    color: var(--heading, var(--brand-primary, rgb(12,84,123))) !important;
    font: 800 clamp(20px, 6vw, 26px)/1.18 'Rubik', system-ui;
    text-shadow: none !important;
  }

  /* Some com o share do topo */
  .share-strip--top,
  .share-strip.share-strip--top{
    display: none !important;
  }

  /* Evita título duplicado abaixo (era usado quando existia share acima) */
  .article-title--inline{
    display: none !important;
  }

  /* ===== LAYOUT: garante 1 coluna no mobile para não “apertar” o texto ===== */
  .container--article{
    width: min(100%, calc(100% - 20px));
    margin-inline: auto;
    display: grid !important;
    grid-template-columns: 1fr !important;   /* força uma coluna */
    gap: 0px 50px;
  }
  .container--article > *{
    grid-column: 1 / -1 !important;         /* filhos ocupam toda a largura */
  }

  /* Evita colunas múltiplas vindas do editor/bloques */
  .single-article .article-body{
    padding: 0 0px;
    color: var(--text-color, #10323A);
    column-count: initial !important;
    column-width: auto !important;
  }
}

/* ===== SINGLE — MOBILE: esconder a sidebar "Veja mais sobre ..." ===== */
@media (max-width: 768px){
  .article-sidebar,
  .asb__card--grid{
    display: none !important;
  }
}

/* Garante a primária do site, caso o customizer não injete */
:root{ --brand-primary: rgb(12,84,123); }
/* SHARE compacto — mobile */
@media (max-width: 768px){
  .author-share{
    padding: 8px 10px;      /* ↓ menos respiro */
    min-height: 60px;       /* ↓ altura mínima menor (ajuste fino aqui) */
    gap: 12px;              /* ↓ espaço entre ícones */
    border-radius: 14px;    /* cantos um pouco menos arredondados */
  }
  /* (opcional) diminuir os botões também */
  .author-share a{
    inline-size: 32px;
    block-size: 32px;       /* eram ~36px; ajuste se quiser ainda menor */
    box-shadow: 0 8px 18px rgba(0,0,0,.08);
  }
}
/* ===== AUTHOR BOX — MOBILE (layout stackado, sem mudar cor) ===== */
@media (max-width: 768px){
  .author-row{
    width: min(100%, calc(100% - 20px));
    margin: 10px auto 14px;
    display: grid;
    gap: 10px;
  }

  .author-box{
    /* mantém a cor que você já usa (fallback: var(--brand-primary)) */
    background: var(--author-box-bg, var(--brand-primary)) !important;
    border: 0 !important;
    box-shadow: var(--shadow-md, 0 10px 22px rgba(0,0,0,.14));
    border-radius: 18px;
    padding: 18px 16px 20px;
    margin: 0 8px;
    text-align: center;
    display: block !important;          /* sai do grid 2 colunas */
  }

  .author-box__media{
    display: block;
    margin: 0 auto 10px;
  }
  .author-box__media img{
    width: 96px; height: 96px;
    border-radius: 999px; object-fit: cover; display: block;
    margin: 0 auto;
    /* leve destaque sem mudar a cor do cartão */
    box-shadow: 0 8px 18px rgba(0,0,0,.18);
    border: 3px solid rgba(255,255,255,.35);
  }

  .author-box__tag{
    display: inline-block;
    margin: 2px 0 6px;
    font: 800 12px/1 'Rubik', system-ui;
    color: #fff;
    opacity: .95;
  }

  .author-box__name{
    margin: 0 0 8px;
    font: 800 clamp(22px, 7vw, 28px)/1.08 'Rubik', system-ui;
    color: #fff;
  }

  .author-box__bio{
    margin: 0 auto;
    max-width: 36ch;
    font: 400 14px/1.45 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    color: #fff;
    opacity: .95;
  }
}

/* AUTHOR BOX — ajustes de altura e alinhamento (MOBILE) */
@media (max-width: 768px){
  .author-box{
    /* mais “corpo” vertical */
    padding: 34px 18px 28px !important;
    min-height: 300px !important;     /* ↑ aumenta a altura mínima */
    margin-top: 16px !important;
    overflow: visible !important;      /* evita cortes de sombra do avatar */
    display: block !important;
  }

  .author-box__media{
    margin: 0 auto 12px !important;    /* avatar central e com respiro */
  }
  .author-box__media img{
    width: 112px !important;
    height: 112px !important;
    border-radius: 999px;
    object-fit: cover;
    display: block;
    margin: 0 auto;
    border: 4px solid rgba(255,255,255,.40);  /* aro */
    box-shadow: 0 10px 22px rgba(0,0,0,.18);
  }

  .author-box__tag{
    margin-top: 4px !important;
    margin-bottom: 6px !important;
    font: 800 12px/1 'Rubik', system-ui !important;
  }

  .author-box__name{
    margin: 0 0 10px !important;
    font: 800 clamp(24px, 7.2vw, 30px)/1.06 'Rubik', system-ui !important;
  }

  .author-box__bio{
    max-width: 40ch !important;        /* um pouco mais largo */
    margin: 0 auto !important;
    font: 400 15px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
    opacity: .95;
  }
}

/* AUTHOR BOX — corrigir recorte do avatar e dar mais altura (MOBILE) */
@media (max-width: 768px){
  .author-box{
    /* mais espaço no topo para o avatar não encostar no raio */
    padding: 72px 18px 28px !important;   /* antes ~34px */
    min-height: 300px !important;
    overflow: visible !important;
  }

  /* avatar no fluxo normal, centralizado e com aro */
  .author-box__media{
    position: static !important;
    display: block !important;
    margin: 0 auto 12px !important;
  }
  .author-box__media img{
    position: static !important;
    width: 104px !important;
    height: 104px !important;
    border-radius: 999px;
    object-fit: cover;
    display: block;
    margin: 0 auto;
    border: 4px solid rgba(255,255,255,.40);
    box-shadow: 0 10px 22px rgba(0,0,0,.18);
  }

  .author-box__tag{
    margin-top: 2px !important;
    margin-bottom: 8px !important;
  }
}
/* ===== MOBILE (≤768px) — SHARE + AUTHOR BOX ===== */
@media (max-width: 768px){

  /* Pill vertical de compartilhamento (encolher altura) */
  .author-share{
    min-height: 82px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  /* Author Box — mais altura, avatar sem “corte” no raio */
  .author-box{
    padding: 72px 18px 28px !important;   /* espaço extra no topo p/ o avatar */
    min-height: 300px !important;         /* aumente se quiser a caixa mais alta */
    overflow: visible !important;
  }
  .author-box__media{
    position: static !important;
    display: block !important;
    margin: 0 auto 12px !important;       /* centraliza o avatar */
  }
  .author-box__media img{
    position: static !important;
    width: 74px  !important;
    height: 80px !important;
    border-radius: 999px;
    object-fit: cover;
    display: block;
    margin: 0 auto;
    border: 4px solid rgba(255,255,255,.40);
    box-shadow: 0 10px 22px rgba(0,0,0,.18);
  }
  .author-box__tag{
    margin-top: 2px !important;
    margin-bottom: 8px !important;
  }
}

/* =============================
   SINGLE PAGES — MOBILE (≤768px)
   Título em pill azul + conteúdo limpo
   ============================= */
@media (max-width: 768px){

  /* reativa o H1 nas PÁGINAS (foi ocultado globalmente) */
  body.page .article-title--inline{
    display:block !important;
  }

  /* container da página */
  .section--page{
    width: min(100%, calc(100% - 20px));
    margin: 12px auto 24px;
    padding: 0; /* o inline style pode ter 0 14px; este zera no mobile */
  }

  /* H1 “pill” (única caixa) — fundo azul claro e texto no azul da marca */
  body.page .legal-hero-title{
    display: block !important;
    margin: 10px 0 16px;
    padding: 66px 18px; /* mais alto */
    background: color-mix(in srgb, var(--brand-primary, rgb(12,84,123)) 12%, #f5fdff);
    color: var(--brand-primary, rgb(12,84,123));
    border-radius: 18px;
    box-shadow: 0 10px 22px rgba(0,0,0,.10);
    text-align:center;
    font: 600 clamp(22px, 6.8vw, 28px)/1.12 'Rubik', system-ui; /* maior */
  }

  /* limpa qualquer “segunda box” do conteúdo */
  .section--page .article-content{
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
  }

  .section--page .article-body{
    color: var(--text-color, #10323A);
    font: 400 14px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  }

  /* neutraliza grupos/has-background do editor */
  .section--page .article-body > .wp-block-group,
  .section--page .article-body .has-background,
  .section--page .article-body > [style*="background"]{
    background: transparent !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* títulos internos do corpo */
  .section--page .article-body h2{
    margin: 22px 0 10px;
    color: var(--heading, var(--brand-primary, rgb(12,84,123)));
    font: 800 18px/1.15 'Rubik', system-ui;
  }
  .section--page .article-body h3{
    margin: 16px 0 8px;
    color: var(--heading, var(--brand-primary, rgb(12,84,123)));
    font: 800 16px/1.15 'Rubik', system-ui;
  }
}

/* garante a primária (se o customizer não injetar) */
:root{ --brand-primary: rgb(12,84,123); }

/* ======== PATCH: mostrar hambúrguer + gaveta no DESKTOP ======== */
@media (min-width: 769px){
  /* força o botão a aparecer no desktop (sem afetar mobile) */
  .header .nav-toggle,
  .site-header .nav-toggle{
    display:inline-flex !important;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:var(--hb-gap);
    width:var(--hb-w);
    height:var(--hb-h);
    background:transparent;
    border:0;
    color:#fff;
    border-radius:6px;
    cursor:pointer;
    z-index:1002; /* acima do gradiente do header */
  }
  .header .nav-toggle .nav-toggle-bar,
  .site-header .nav-toggle .nav-toggle-bar{
    width:var(--hb-bar-w);
    height:var(--hb-bar-h);
    background:#fff;
    border-radius:2px;
    transition:transform .25s ease, opacity .25s ease, background-color .25s ease;
  }

  /* mantém a navegação horizontal visível junto do hambúrguer (opcional) */
  .site-header .main-navigation{ display:block !important; }

  /* garante que a gaveta funciona igual no desktop */
  .js-drawer-ready #drawer-nav,
  .js-drawer-ready .drawer-nav{
    width:var(--drawer-w);
    right:0;
    border-radius:0;            /* borda reta no desktop (ajuste fino) */
  }
  .drawer-overlay{ backdrop-filter:none; -webkit-backdrop-filter:none; }
}

/* === FIX VR SPOTLIGHT — MOBILE (força foto + gradiente) === */
@media (max-width: 768px){
  .vr-spotlight{
    background:
      linear-gradient(
        180deg,
        rgba(3,72,114,0) 0%,
        rgba(3,72,114,.72) 55%,
        rgba(3,72,114,.94) 100%
      ),
      var(--vr-hero-img, var(--hero, none)) !important;
    background-size: 100% 100%, cover !important;
    background-position: center, var(--vr-hero-pos, center 35%) !important;
    background-repeat: no-repeat !important;
  }
}


/* ============================================================
   OVERRIDES DINÂMICOS — tudo deriva de --brand-primary
   (colar no FINAL do style.css)
   ============================================================ */

/* Links */
a, a:visited{ color: var(--link); }
a:hover, a:focus{ color: var(--link-hover); }

/* Botões (tema + WP) */
.btn,
.wp-element-button,
.button,
input[type="submit"],
.footer .btn {
  background: var(--btn-primary-bg) !important;
  color: var(--btn-primary-text) !important;
  border-color: transparent !important;
}
.btn:hover,
.wp-element-button:hover,
.button:hover,
input[type="submit"]:hover,
.footer .btn:hover {
  background: var(--btn-primary-hover) !important;
}
.btn:active,
.wp-element-button:active,
.button:active,
input[type="submit"]:active {
  background: var(--btn-primary-active) !important;
}

/* Chips/pills */
.trend-card__btn,
.also .also-card__btn,
.vr-card__pill,
.mini-card__btn,
.wide-card__btn {
  background: var(--chip-bg) !important;
  color: var(--chip-text) !important;
  border: 1px solid color-mix(in srgb, var(--brand-primary) 18%, #fff) !important;
}

/* Títulos que antes tinham azul fixo */
.trending__title,
.also__title,
.footer-title,
.section--archive .archive-title,
.article-body h2,
.article-body h3,
.page-contact .contact-hero-title,
body:is(.privacy-policy,.page-termos-de-uso,.page-terms,.page-sobre-nos,.page-about) .entry-content h2 {
  color: var(--heading) !important;
}

/* Busca/focus/ícones */
.header .search-form:focus-within,
.site-header .search-form:focus-within { box-shadow: 0 0 0 3px var(--search-ring) !important; }
.header .search-submit,
.header .icon-search { color: var(--brand-secondary) !important; }

/* Newsletter */
.footer-newsletter .footer-title { color: var(--brand-500) !important; }
.newsletter input[type="email"]{
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--brand-primary) 12%, #e8eef2) inset,
    0 2px 0 color-mix(in srgb, var(--brand-primary) 6%, #000);
}
.footer-note{ color: var(--brand-500) !important; }

/* Badges/cards */
.trend-badge,
.also .also-card__badge { background: var(--chip-bg) !important; color: var(--chip-text) !important; }
.trend-card{ background: linear-gradient(180deg, var(--brand-600), var(--brand-500)) !important; }

/* Paginação */
.pager{
  --pag-bg: var(--brand-500) !important;
  --pag-chip:#fff !important;
  --pag-accent: var(--brand-500) !important;
}
.pagination.is-bar{
  --pag-accent: var(--brand-500) !important;
  --pag-chip:#fff !important;
}

/* Hero/Spotlight (gradientes a partir da principal) */
.hero-banner{
  background-image:
    linear-gradient(270deg, rgba(3,72,114,0) 27.53%, var(--hdr-grad-left) 59.72%),
    var(--hero-img, var(--hero, none)) !important;
}
.vr-spotlight{ background: linear-gradient(90deg, var(--brand-600), var(--brand-500)) !important; }

/* Footer e links */
.footer-links a{ color: var(--text-color) !important; }
.footer-cats{ background: var(--footer-bg) !important; }

/* Hovers suaves globais */
a.btn:hover,
a.wp-element-button:hover,
button:hover,
.footer-links a:hover { filter: saturate(1.02) brightness(.98); }

/* Acessibilidade — foco visível */
:where(a,button,.btn,.wp-element-button,input[type="submit"]):focus-visible{
  outline: 3px solid var(--search-ring) !important;
  outline-offset: 2px;
  border-radius: 8px;
}
/* ======================================================================
   OVERRIDES DINÂMICOS (final do style.css)
   Tudo deriva de --brand-primary (lógica “uma cor molda o resto”)
   ====================================================================== */

/* Links */
a, a:visited{ color: var(--link); }
a:hover, a:focus{ color: var(--link-hover); }

/* =========================
   BOTÕES — Variantes globais
   ========================= */
:root{
  --btn-radius: 999px;
  --btn-h: 38px;
  --btn-xpad: 18px;
}
/* base */
.btn, .wp-element-button, .button,
input[type="submit"], button[type="submit"]{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:var(--btn-h); padding:0 var(--btn-xpad);
  border-radius:var(--btn-radius); font:700 13px/1 'Rubik',system-ui;
  text-decoration:none; cursor:pointer; border:1px solid transparent;
  transition: filter .12s ease, transform .06s ease, background-color .12s ease, border-color .12s ease;
}

/* Solid (padrão) */
.btn--solid, .btn:not([class*="btn--"]), .wp-element-button,
input[type="submit"], button[type="submit"]{
  background: var(--btn-primary-bg); color: var(--btn-primary-text); border-color: transparent;
}
.btn--solid:hover, .wp-element-button:hover,
input[type="submit"]:hover, button[type="submit"]:hover{ background: var(--btn-primary-hover); }
.btn--solid:active, .wp-element-button:active,
input[type="submit"]:active, button[type="submit"]:active{ background: var(--btn-primary-active); }

/* Soft (fundo clarinho) — bom p/ “Ler mais…” */
.btn--soft{
  background: var(--brand-100); color: var(--brand-700); border-color: color-mix(in srgb, var(--brand-primary) 20%, #fff);
}
.btn--soft:hover{ background: var(--brand-200); }
.btn--soft:active{ background: var(--brand-300); }

/* Outline */
.btn--outline{
  background: transparent; color: var(--brand-500); border-color: var(--brand-500);
}
.btn--outline:hover{ background: var(--brand-100); }
.btn--outline:active{ background: var(--brand-200); }

/* Ghost */
.btn--ghost{
  background: transparent; color: var(--brand-600); border-color: transparent;
}
.btn--ghost:hover{ background: var(--brand-100); }
.btn--ghost:active{ background: var(--brand-200); }

/* Gradient */
.btn--gradient{
  background: linear-gradient(90deg, var(--brand-600), var(--brand-400));
  color:#fff; border-color: transparent;
}
.btn--gradient:hover{ filter: brightness(.98) saturate(1.02); }

/* Foco visível */
:where(a,button,.btn,.wp-element-button,input[type="submit"]):focus-visible{
  outline: 3px solid var(--focus-ring);
  outline-offset: 2px; border-radius: 10px;
}

/* =========================
   COMPONENTES DO TEMA
   ========================= */

/* Pills “Ler mais…” e variações */
.trend-card__btn,
.also .also-card__btn,
.mini-card__btn,
.wide-card__btn,
.vr-card__pill{
  @apply btn--soft; /* ignorado pelo navegador, mas deixo como doc */
  background: var(--brand-100) !important;
  color: var(--brand-700) !important;
  border: 1px solid color-mix(in srgb, var(--brand-primary) 18%, #fff) !important;
}
.trend-card__btn:hover,
.also .also-card__btn:hover,
.mini-card__btn:hover,
.wide-card__btn:hover,
.vr-card__pill:hover{
  background: var(--brand-200) !important;
}

/* Títulos que estavam com azul fixo */
.trending__title,
.also__title,
.footer-title,
.section--archive .archive-title,
.article-body h2, .article-body h3,
.page-contact .contact-hero-title,
body:is(.privacy-policy,.page-termos-de-uso,.page-terms,.page-sobre-nos,.page-about) .entry-content h2{
  color: var(--heading) !important;
}

/* Busca + ícone */
.header .search-form:focus-within,
.site-header .search-form:focus-within{ box-shadow:0 0 0 3px var(--focus-ring) !important; }
.header .search-submit, .header .icon-search{ color: var(--brand-secondary) !important; }

/* TRENDING: gradiente derivado */
.trend-card{
  background: linear-gradient(180deg, var(--brand-600), var(--brand-500)) !important;
}

/* VR Spotlight (desktop): gradiente da primária */
.vr-spotlight{ background: linear-gradient(90deg, var(--brand-600), var(--brand-500)) !important; }

/* Faixa “Categorias” no rodapé */
.footer-cats{ background: var(--footer-bg) !important; }
.footer-cats__title{ color: var(--heading) !important; }
.footer-cats__nav a{ color: #0b2230; }
.footer-cats__nav a:hover{ color: var(--brand-700); }

/* Author sidebar card (asb__card) com neutros derivados */
.asb__card.asb__card--grid{
  background: var(--surface-2) !important;
  border: 1px solid var(--border) !important;
}
.asb__card--grid .asb__title{ color: var(--heading) !important; }
.asb__card--grid .asb-item__btn{
  background:#fff; color: var(--brand-600); border:1px solid var(--border);
}
.asb__card--grid .asb-item__btn:hover{ background: var(--brand-100); color: var(--brand-700); }

/* HERO das páginas legais/Sobre: usa brand-tertiary */
body:is(.privacy-policy,.page-termos-de-uso,.page-terms,.page-sobre-nos,.page-sobre,.page-about) .legal-hero-title{
  background: color-mix(in srgb, var(--brand-tertiary) 80%, #fff) !important;
  border: 1px solid color-mix(in srgb, var(--brand-500) 18%, #fff) !important;
  color: var(--heading) !important;
}

/* Newsletter */
.footer-newsletter .footer-title{ color: var(--brand-500) !important; }
.newsletter input[type="email"]{
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--brand-primary) 12%, #e8eef2) inset,
    0 2px 0 color-mix(in srgb, var(--brand-primary) 6%, #000);
}

/* Paginação derivada */
.pager{
  --pag-bg: var(--pagination-bg) !important;
  --pag-chip:#ffffff !important;
  --pag-accent: var(--pagination-bg) !important;
}
.pagination.is-bar{
  --pag-accent: var(--pagination-bg) !important;
  --pag-chip:#ffffff !important;
}

/* Header gradient e hovers do menu */
.site-header .inside-navigation{
  background: linear-gradient(90deg, var(--hdr-grad-left), var(--hdr-grad-right)) !important;
}
.site-header .main-navigation .menu > li > a:hover{ opacity:1; text-shadow:0 0 0 currentColor; }
/* ================================================================
   CAMADA DIDÁTICA — tudo lê tokens legíveis para o cliente
   ================================================================ */

/* Links */
a, a:visited{ color: var(--link); }
a:hover, a:focus{ color: var(--link-hover); }

/* Botões (padrão do site controlado por --gbtn-*) */
:root{ --btn-radius: 999px; --btn-h: 38px; --btn-xpad: 18px; }
.btn, .wp-element-button, .button,
input[type="submit"], button[type="submit"]{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:var(--btn-h); padding:0 var(--btn-xpad);
  border-radius:var(--btn-radius); font:700 13px/1 'Rubik',system-ui;
  text-decoration:none; cursor:pointer; border:1px solid var(--gbtn-border, transparent);
  background: var(--gbtn-bg, var(--brand-500)); color: var(--gbtn-text, #fff);
  transition: filter .12s ease, transform .06s ease, background-color .12s ease, border-color .12s ease;
}
.btn:hover, .wp-element-button:hover,
input[type="submit"]:hover, button[type="submit"]:hover{
  background: var(--gbtn-bg-hover, var(--gbtn-bg));
  filter: brightness(0.98);
}
.btn:active, .wp-element-button:active,
input[type="submit"]:active, button[type="submit"]:active{
  background: var(--gbtn-bg-active, var(--gbtn-bg-hover, var(--gbtn-bg)));
  filter:none;
}
:where(a,button,.btn,.wp-element-button,input[type="submit"]):focus-visible{
  outline: 3px solid var(--focus-ring);
  outline-offset: 2px; border-radius: 10px;
}

/* Pills “Ler mais…” — usam tokens --pill-* + overrides se houver */
:root{
  --pill-bg-final: var(--pill-bg-override, var(--pill-bg, var(--brand-100)));
  --pill-text-final: var(--pill-text-override, var(--pill-text, var(--brand-700)));
  --pill-border-final: var(--pill-border, color-mix(in srgb, var(--brand-primary) 18%, #fff));
}
.trend-card__btn,
.also .also-card__btn,
.mini-card__btn,
.wide-card__btn,
.vr-card__pill{
  background: var(--pill-bg-final) !important;
  color: var(--pill-text-final) !important;
  border: 1px solid var(--pill-border-final) !important;
}
.trend-card__btn:hover,
.also .also-card__btn:hover,
.mini-card__btn:hover,
.wide-card__btn:hover,
.vr-card__pill:hover{
  background:
    color-mix(in srgb, var(--pill-bg-final) 85%, #fff) !important;
}

/* Header (gradiente ou sólido, já definido por --hdr-grad-*) */
.site-header .inside-navigation{
  background: linear-gradient(90deg, var(--hdr-grad-left), var(--hdr-grad-right)) !important;
}

/* Newsletter/rodapé/categorias — tudo deriva */
.footer-newsletter .footer-title{ color: var(--heading) !important; }
.footer-cats{ background: var(--footer-bg) !important; }
.footer-cats__title{ color: var(--heading) !important; }

/* Títulos que estavam “fixos” em azul */
.trending__title,
.also__title,
.section--archive .archive-title,
.article-body h2, .article-body h3,
.page-contact .contact-hero-title,
body:is(.privacy-policy,.page-termos-de-uso,.page-terms,.page-sobre-nos,.page-sobre,.page-about) .entry-content h2{
  color: var(--heading) !important;
}

/* Paginação */
.pager{
  --pag-bg: var(--pagination-bg) !important;
  --pag-chip:#ffffff !important;
  --pag-accent: var(--pagination-bg) !important;
}
.pagination.is-bar{
  --pag-accent: var(--pagination-bg) !important;
  --pag-chip:#ffffff !important;
}

/* Foco */
.header .search-form:focus-within,
.site-header .search-form:focus-within{ box-shadow:0 0 0 3px var(--focus-ring) !important; }
/* ===========================================================
   AJUSTES QUE FALTAVAM PEGAR A COR PRINCIPAL
   (colar no FINAL do style.css)
   =========================================================== */

/* 1) Barra de compartilhamento do topo do artigo */
.share-strip--top,
nav.share-strip.share-strip--top{
  background: var(--surface-2) !important;
  border: 1px solid var(--border) !important;
  border-radius: 14px !important;
}
.share-strip--top a,
.share-strip--top button,
.share-strip--top .share-btn{
  background: var(--brand-100) !important;
  color: var(--brand-700) !important;
  border: 1px solid color-mix(in srgb, var(--brand-primary) 18%, #fff) !important;
  width: 42px; height: 42px; border-radius: 999px;
  display: inline-flex; align-items: center; justify-content: center;
}
.share-strip--top a:hover,
.share-strip--top button:hover,
.share-strip--top .share-btn:hover{
  background: var(--brand-200) !important;
  color: var(--brand-800, var(--brand-700)) !important;
}

/* 2) “Veja mais sobre …” (asb grid) — overlay e título */
.asb__card.asb__card--grid{
  background: var(--surface-2) !important;
  border: 1px solid var(--border) !important;
}
.asb__card--grid .asb__title{ color: var(--heading) !important; }

/* overlay azul que ficava fixo */
.asb-item::before{
  /* degrade leve usando a cor principal */
  background: linear-gradient(
    180deg,
    color-mix(in srgb, var(--brand-primary) 20%, #000) 0%,
    color-mix(in srgb, var(--brand-primary) 10%, transparent) 100%
  ) !important;
}

/* 3) Títulos grandes das páginas “Sobre/Termos/Contato” */
.article-title--inline.legal-hero-title,
.article-title--inline.contact-hero-title,
.legal-hero-title, .contact-hero-title{
  background: color-mix(in srgb, var(--brand-100) 80%, #fff) !important;
  border: 1px solid color-mix(in srgb, var(--brand-500) 22%, #fff) !important;
  color: var(--heading) !important;
}

/* container do hero dessas páginas (aquele fundo esverdeado) */
.legal-hero, .contact-hero, .legal-hero-wrap{
  background: var(--surface-2) !important;
  border: 1px solid var(--border) !important;
  border-radius: 16px !important;
}

/* Botão “Ler mais…” dentro desse bloco (garantia) */
.asb__card--grid .asb-item__btn{
  background: var(--brand-100) !important;
  color: var(--brand-700) !important;
  border: 1px solid color-mix(in srgb, var(--brand-primary) 18%, #fff) !important;
}
.asb__card--grid .asb-item__btn:hover{ background: var(--brand-200) !important; }

/* Botões globais — derivados da cor principal (sem overrides no Customizer) */
:root{
  --gbtn-bg:        var(--brand-500);
  --gbtn-text:      #fff;
  --gbtn-border:    transparent;
  --gbtn-bg-hover:  var(--brand-600);
  --gbtn-bg-active: var(--brand-700);
}
/* Links globais */
a, a:visited{ color: var(--link); }
a:hover, a:focus{ color: var(--link-hover); }

/* Botões globais (qualquer botão) */
.btn, .wp-element-button, .button, input[type="submit"]{
  background: var(--gbtn-bg);
  color: var(--gbtn-text);
  border-color: var(--gbtn-border);
}
.btn:hover, .wp-element-button:hover, .button:hover, input[type="submit"]:hover{
  background: var(--gbtn-bg-hover);
}
.btn:active, .wp-element-button:active, .button:active, input[type="submit"]:active{
  background: var(--gbtn-bg-active);
}
/* 1) Botões não devem herdar o a:hover global (cor/opacity) */
a.btn:hover,
.btn:hover,
.wp-element-button:hover,
.button:hover,
input[type="submit"]:hover {
  color: var(--gbtn-text, #fff) !important; /* mantém a cor do texto do botão */
  opacity: 1 !important;                    /* sem desbotar */
  filter: none !important;
}

/* 2) CTA do HERO: fixa branco no fundo e azul no texto (sem sumir no hover) */
.hero-banner__cta a,
.hero-banner__cta .wp-element-button {
  background: #fff !important;
  color: var(--brand-600) !important;
}
.hero-banner__cta a:hover,
.hero-banner__cta .wp-element-button:hover {
  background: #fff !important;              /* continua branco */
  color: var(--brand-700) !important;       /* só escurece o texto */
  transform: translateY(-1px);
}

/* 3) (Opcional) Garanta que TODO botão mantenha a cor do texto no hover/active */
.btn, .wp-element-button, .button, input[type="submit"] {
  color: var(--gbtn-text, #fff) !important;
}
.btn:active, .wp-element-button:active, .button:active, input[type="submit"]:active {
  color: var(--gbtn-text, #fff) !important;
}
/* === VR Spotlight — destrava a cor e usa a cor da marca === */

/* 1) NÃO force mais um fundo sólido aqui */
.vr-spotlight{ background: none !important; }

/* 2) Volta a lógica foto + gradiente, mas derivado da brand */
.vr-spotlight{
  background-image:
    linear-gradient(
      90deg,
      color-mix(in srgb, var(--brand-primary) 0%, transparent) 0%,
      color-mix(in srgb, var(--brand-primary) 55%, transparent) 55%,
      color-mix(in srgb, var(--brand-primary) 88%, #071622) 100%
    ),
    var(--vr-hero-img, var(--hero, none));
  background-size: 100% 100%, cover;
  background-position: center, var(--vr-hero-pos, center 35%);
}

/* 3) Overlays que estavam com azul fixo → passam a ler a brand */
.vr-spotlight::before{
  background-image:
    linear-gradient(90deg, rgba(7,22,34,.34) 0, rgba(7,22,34,0) var(--vr-left-fade-w)),
    radial-gradient(135% 120% at 48% 105%,
      color-mix(in srgb, var(--brand-primary) 0%,  transparent) 0%,
      color-mix(in srgb, var(--brand-primary) 10%, transparent) 42%,
      color-mix(in srgb, var(--brand-primary) 34%, transparent) 66%,
      color-mix(in srgb, var(--brand-primary) 66%, transparent) 86%,
      color-mix(in srgb, var(--brand-primary) 92%, transparent) 100%
    ),
    linear-gradient(180deg,
      color-mix(in srgb, var(--brand-primary) 0%,  transparent) 0%,
      color-mix(in srgb, var(--brand-primary) 10%, transparent) 52%,
      color-mix(in srgb, var(--brand-primary) 34%, transparent) 78%,
      color-mix(in srgb, var(--brand-primary) 68%, transparent) 100%
    ),
    var(--vr-hero-img, none);
}

.vr-spotlight::after{
  background-image:
    radial-gradient(
      var(--vr-pillar-w) 80% at calc(var(--vr-seam) + var(--vr-pillar-offset)) 50%,
      color-mix(in srgb, var(--brand-primary) 36%, transparent) 0%,
      color-mix(in srgb, var(--brand-primary) 22%, transparent) 35%,
      color-mix(in srgb, var(--brand-primary) 12%, transparent) 58%,
      rgba(0,0,0,0) 100%
    );
}

/* 4) (opcional) se quiser zerar QUALQUER “corzinha” e deixar só a foto:
.vr-spotlight::before,
.vr-spotlight::after{ background-image: none !important; }
*/

/* 5) Tire os defaults azuis das variáveis locais (garante neutralidade) */
.vr-spotlight{
  --vr-bg-left:  var(--brand-600);
  --vr-bg-right: var(--brand-400);
}
/* Pills/Chips — “Ler mais…” dentro da sidebar/also/etc */
.asb__card--grid .asb-item__btn,
.trend-card__btn,
.also .also-card__btn,
.mini-card__btn,
.wide-card__btn,
.vr-card__pill{
  background: var(--pill-bg-final) !important;
  color: var(--pill-text-final) !important;
  border: 1px solid var(--pill-border-final) !important;
}
.asb__card--grid .asb-item__btn:hover,
.trend-card__btn:hover,
.also .also-card__btn:hover,
.mini-card__btn:hover,
.wide-card__btn:hover,
.vr-card__pill:hover{
  background: color-mix(in srgb, var(--pill-bg-final) 85%, #fff) !important;
}



/* HEADER MOBILE — logo central; busca colada à esquerda; hambúrguer à direita */
@media (max-width: 768px){

  /* Header é o referencial de posicionamento */
  .site-header .inside-navigation,
  .header .header-inner{
    position: relative !important;
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important; /* [esq] [LOGO] [dir] */
    align-items: center !important;
  }

  /* LOGO exatamente no meio */
  .site-header .site-brand,
  .header .site-brand,
  .site-header .logo-wrap,
  .header .logo-wrap{
    grid-column: 2 !important;
    justify-self: center !important;
    z-index: 2;
  }

  /* Remove o “bloco” das ações do layout e posicione os filhos nas bordas */
  .site-header .header-actions,
  .header .header-actions{
    display: contents !important;       /* os filhos passam a ser irmãos diretos do header */
  }

  /* Busca ANCORADA à ESQUERDA */
  .site-header .search-form,
  .header .search-form,
  .header .header-search{
    position: absolute !important;
    left: max(10px, env(safe-area-inset-left)) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 72px !important;
    height: 38px !important;
    margin: 0 !important;
    pointer-events: auto !important;    /* clicável */
    z-index: 3;
  }

  /* Hambúrguer ANCORADO à DIREITA */
  .site-header .nav-toggle,
  .header .nav-toggle{
    position: absolute !important;
    right: max(10px, env(safe-area-inset-right)) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    pointer-events: auto !important;
    z-index: 3;
  }
}




/* PATCH: afasta placeholder/texto do canto esquerdo */
input[placeholder="Digite seu melhor e-mail"]{
  padding-left: 20px !important; /* ajuste fino aqui: 18–24px */
}
/* ===== SEARCH DESKTOP – lock antiderrapante ===== */
@media (min-width: 769px){

  /* contêiner é a âncora e corta qualquer overflow estranho */
  .site-header .search-form,
  .header .search-form,
  .site-header .header-search,
  .header .header-search{
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: var(--search-w, 187px) !important;
    height: var(--search-h, 30px) !important;
    padding: 0 12px !important;
    gap: 10px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--search-bg, #F2F4F6) !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  /* zera wrappers do bloco de busca do WP, se houver */
  .site-header .search-form .wp-block-search__inside-wrapper{
    all: unset !important;
    display: contents !important;
  }

  /* campo */
  .site-header .search-form .search-field,
  .header .search-form .search-field,
  .site-header .search-form input[type="search"]{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    height: 100% !important;
    padding: 0 !important;                 /* sem padding extra */
    margin: 0 !important;
    font: 400 14px/1 "Rubik", system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, "Helvetica Neue", Arial, "Noto Sans", sans-serif !important;
    color: var(--search-text, #111827) !important;
  }
  .site-header .search-form .search-field::placeholder{
    color: var(--search-ph, #8DA3AF) !important;
  }

  /* botão: SEM bolacha no desktop */
  .site-header .search-form .search-submit,
  .header .search-form .search-submit,
  .site-header .search-form button[type="submit"],
  .site-header .search-form input[type="submit"],
  .site-header .wp-block-search__button{
    position: static !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;          /* <- mata o círculo */
    background: transparent !important;   /* <- sem fundo */
    color: var(--search-icon, var(--brand-secondary)) !important;
    box-shadow: none !important;
  }

  /* se usa SVG/ícone */
  .site-header .search-form .icon-search,
  .header .search-form .icon-search{
    width: 20px !important;
    height: 20px !important;
    display: block !important;
  }

  /* foco visível; só o anel, nada de reestilizar o botão */
  .site-header .search-form:focus-within{
    box-shadow: 0 0 0 3px var(--search-ring, color-mix(in srgb, var(--brand-secondary) 35%, transparent)) !important;
  }
}

/* Fix: autor box cortando frase (desktop e mobile) */
.author-row,
.author-box {
  overflow: visible;              /* nada de aparar o conteúdo */
}

.author-row {                     /* se for flex/grid, alinhar pelo topo */
  align-items: start;
}

.author-box__copy {
  height: auto;
  max-height: none;
}

.author-box__bio {
  display: block;                 /* remove -webkit-box herdado */
  overflow: visible;              /* sem corte */
  white-space: normal;            /* quebra de linha normal */
  -webkit-line-clamp: unset;      /* desfaz clamp */
  line-clamp: unset;
}
/* SEARCH OVERLAY — MOBILE: mostra e estiliza o botão "Buscar" */
@media (max-width: 768px){
  .search-overlay__form{
    display: grid !important;
    grid-template-columns: 1fr auto !important; /* campo | botão */
    gap: 10px !important;
    align-items: center !important;
  }

  /* cobre todas as variantes de submit do WP */
  .search-overlay__form .search-submit,
  .search-overlay__form button[type="submit"],
  .search-overlay__form input[type="submit"],
  .search-overlay__form .wp-block-search__button,
  .search-overlay__form .btn{
    display: inline-flex !important;
    align-items: center; justify-content: center;
    height: 44px !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: var(--brand-primary) !important;
    color: #fff !important;
    font: 800 14px/1 "Rubik",system-ui !important;
    box-shadow: 0 10px 22px rgba(3,72,114,.18);
    cursor: pointer;
  }
@media (max-width: 768px){
  .container--article{
    padding-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right)) !important;
  }
.article-body, body.single .article-body, .section--page .article-body {
            margin-left: 0px !important;
            margin-right: 20px !important;
        }
/* ==== MOBILE (≤768px) — imagens do corpo do artigo ==== */
@media (max-width: 768px){
  .article-body img,
  .article-body figure{
    max-width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
     margin-right: 20px !important;
    margin-left: 0px !important;
  }
}


  /* garante que o input ocupe só a 1ª coluna */
  .search-overlay__form input[type="search"]{
    grid-column: 1 / 2 !important;
  }
}
/* ==== MOBILE (≤768px) — altura da logo via Customizer ==== */
@media (max-width: 768px){
  .logo-wrap .custom-logo,
  .site-header .custom-logo,
  .site-brand .custom-logo,
  .site-logo .custom-logo,
  a.custom-logo-link img{
    max-height: var(--logo-h-mobile) !important;
    height: auto !important;
    width: auto !important;
  }
}

/* (opcional) usar o slider como teto, mantendo um clamp “responsivo” */
@media (max-width: 768px){
  .logo-wrap .custom-logo,
  .site-header .custom-logo{
    max-height: min(var(--logo-h-mobile), clamp(20px, 4.8vw, 999px)) !important;
  }
}
/* VR Spotlight — limpar overlays antigos e padronizar o degradê */

/* mata qualquer overlay herdado (o do “favo de mel”) */
.vr-spotlight .vr-card__overlay{
  background: none !important;
  display: none !important;
}

/* base segura: imagem no fundo, link/gradiente no meio, texto por cima */
.vr-spotlight .vr-card,
.vr-spotlight .vr-card__link{ position:relative; overflow:hidden; }
.vr-spotlight .vr-card__img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;
}

/* degradê (igual do print2) — aparece em TODOS os cards */
.vr-spotlight .vr-card__link::after{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background: linear-gradient(
    180deg,
    rgba(7,22,34,0) 0%,
    rgba(7,22,34,.65) 60%,
    rgba(7,22,34,.92) 100%
  ) !important;
}

/* conteúdo por cima */
.vr-spotlight .vr-card__copy{ position:relative; z-index:2; }
.vr-spotlight .vr-card__title{ text-shadow:0 1px 10px rgba(0,0,0,.35); }
.vr-spotlight .vr-card__pill{
  background:#fff !important; color:var(--brand-primary) !important; border:0 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.22);
}

 (opção: usar a cor do tema no degradê)
.vr-spotlight .vr-card__link::after{
  content:""; position:absolute; inset:0; pointer-events:none; z-index:1;
  background: linear-gradient(
    180deg,
    color-mix(in srgb, var(--brand-primary) 0%,  transparent) 0%,
    color-mix(in srgb, var(--brand-primary) 65%, transparent) 60%,
    color-mix(in srgb, var(--brand-primary) 92%, #071622) 100%
  ) !important;
}




  });
});
