/* ============================================================
   AVELDEN BUSINESS EDITORIAL – design layer for Kadence
   Register: Reuters / Politico / Business Insider. Ink on white,
   hairlines, one brand color, one accent used with discipline.

   AD SAFETY (Raptive / Ad Manager):
   · No selector targets anything with "adthrive", "google_ads" or "ad-" in class or id.
   · No overflow:hidden / transform / contain on body, #wrapper, #inner-wrap,
     .content-container, .entry-content, .primary-sidebar (sticky and in-content ads).
   ============================================================ */

/* ---------- tokens ---------- */
:root {
  --ave-brand:      #0E0E0E;
  --ave-accent:     #19B26B;
  --ave-accent-text:#0B7A47;
  --ave-ink:        #111418;
  --ave-ink-2:      #2E3238;
  --ave-stone:      #6B7280;
  --ave-hair:       #E5E7EB;
  --ave-soft:       #F4F7F5;
  --ave-paper:      #FFFFFF;
  --ave-sans:  'AVE Sans', 'AVE Sans Fallback', Arial, sans-serif;
  --ave-serif: 'AVE Serif', 'AVE Serif Fallback', Georgia, 'Times New Roman', serif;
  --ave-measure: 700px;

  /* Kadence global palette and fonts */
  --global-palette1: var(--ave-brand);
  --global-palette2: var(--ave-accent-text);
  --global-palette3: var(--ave-ink);
  --global-palette4: var(--ave-ink-2);
  --global-palette5: var(--ave-stone);
  --global-palette6: #9CA3AF;
  --global-palette7: var(--ave-hair);
  --global-palette8: var(--ave-soft);
  --global-palette9: var(--ave-paper);
  --global-body-font-family: var(--ave-sans);
  --global-heading-font-family: var(--ave-sans);
}

body.ave {
  font-family: var(--ave-sans);
  color: var(--ave-ink-2);
  background: var(--ave-paper);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.ave h1, body.ave h2, body.ave h3, body.ave h4, body.ave h5, body.ave h6 {
  font-family: var(--ave-sans);
  color: var(--ave-ink);
  letter-spacing: -0.015em;
}
body.ave a { color: var(--ave-brand); text-decoration-thickness: 1px; text-underline-offset: 3px; }
body.ave a:hover { color: var(--ave-accent-text); }
body.ave :focus-visible { outline: 2px solid var(--ave-accent); outline-offset: 3px; }

/* ---------- header ---------- */
body.ave #masthead { border-top: 4px solid var(--ave-brand); border-bottom: 1px solid var(--ave-hair); background: var(--ave-paper); }
body.ave #masthead .custom-logo { max-height: 34px; width: auto; }
@media (max-width: 768px) { body.ave #masthead .custom-logo { max-height: 24px; } }
/* logo replaces the text title (Kadence prints both by default) */
body.ave #masthead .brand.has-logo-image .site-title-wrap,
body.ave #masthead .site-branding:has(.custom-logo) .site-title-wrap,
body.ave #masthead .site-branding:has(.custom-logo) .site-title,
body.ave #masthead .site-branding:has(.custom-logo) .site-description { display: none !important; }
body.ave #masthead .site-title { font-family: var(--ave-sans); font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--ave-brand); }
body.ave #masthead .site-description { font: 500 11px/1.4 var(--ave-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--ave-stone); }
body.ave .header-navigation .menu > li > a,
body.ave .mobile-navigation .menu > li > a {
  font-family: var(--ave-sans); font-weight: 600; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--ave-ink); text-decoration: none;
}
body.ave .header-navigation .menu > li > a:hover,
body.ave .header-navigation .menu > li.current-menu-item > a { color: var(--ave-accent-text); }

/* ---------- kicker (Kadence shows the category above the title) ---------- */
body.ave .entry-taxonomies,
body.ave .entry-taxonomies a {
  font: 700 12px/1.2 var(--ave-sans); letter-spacing: .14em; text-transform: uppercase;
  color: #0B7A47; text-decoration: none;
}
body.ave .entry-taxonomies a:hover { color: var(--ave-brand); }
body.ave .entry-taxonomies .category-style-pill a { background: transparent; padding: 0; color: #0B7A47; }

/* BREAKING: give a post the tag "breaking" and it carries the label above the headline */
body.ave article.tag-breaking .entry-taxonomies::before {
  content: "BREAKING"; display: inline-block; margin-right: 10px; padding: 4px 8px;
  background: var(--ave-accent); color: #fff; font: 800 11px/1 var(--ave-sans); letter-spacing: .14em;
}

/* ---------- single article ---------- */
body.ave.single .entry-header { max-width: var(--ave-measure); margin-left: auto; margin-right: auto; }
body.ave.single h1.entry-title {
  font: 700 clamp(30px, 4.2vw, 46px)/1.12 var(--ave-sans); letter-spacing: -0.02em; color: var(--ave-ink); margin: 10px 0 14px;
}
body.ave .entry-meta, body.ave .entry-meta a {
  font: 500 13px/1.5 var(--ave-sans); color: var(--ave-stone); letter-spacing: .02em; text-decoration: none;
}
body.ave .entry-meta .posted-by a { color: var(--ave-ink); font-weight: 600; }
body.ave .entry-meta > * + *::before { color: var(--ave-hair); }

body.ave.single .entry-content.single-content { font-family: var(--ave-serif); }
body.ave.single .single-content > p,
body.ave.single .single-content > ul,
body.ave.single .single-content > ol,
body.ave.single .single-content > h2,
body.ave.single .single-content > h3,
body.ave.single .single-content > blockquote,
body.ave.single .single-content > figure { max-width: var(--ave-measure); margin-left: auto; margin-right: auto; }
body.ave.single .single-content > p,
body.ave.single .single-content li { font: 400 19.5px/1.7 var(--ave-serif); color: var(--ave-ink-2); }
@media (max-width: 680px) { body.ave.single .single-content > p, body.ave.single .single-content li { font-size: 19px; } }
body.ave.single .single-content > h2 { font: 700 26px/1.25 var(--ave-sans); margin-top: 1.8em; }
body.ave.single .single-content > h3 { font: 700 21px/1.3 var(--ave-sans); margin-top: 1.5em; }
body.ave.single .single-content a { color: var(--ave-brand); text-decoration-color: var(--ave-accent); }

/* lead image, figures, captions, credits */
body.ave .post-thumbnail img, body.ave .single-content figure img { border-radius: 0; }
body.ave .single-content figcaption,
body.ave .wp-element-caption,
body.ave .post-thumbnail figcaption {
  font: 400 13px/1.5 var(--ave-sans); color: var(--ave-stone); text-align: left; margin-top: 8px;
}

/* quotes */
body.ave.single .single-content > blockquote,
body.ave .single-content .wp-block-quote {
  border-left: 4px solid var(--ave-accent); padding: 4px 0 4px 22px; margin-top: 1.6em; margin-bottom: 1.6em;
  font: italic 400 22px/1.5 var(--ave-serif); color: var(--ave-ink);
}
body.ave .single-content .wp-block-quote cite { font: normal 600 13px/1.4 var(--ave-sans); color: var(--ave-stone); letter-spacing: .04em; }

/* "Sources:" paragraph */
body.ave .abe-sources {
  border-top: 1px solid var(--ave-hair); padding-top: 16px; margin-top: 2.2em;
  font: 400 14px/1.6 var(--ave-sans) !important; color: var(--ave-stone) !important;
}
body.ave .abe-sources strong, body.ave .abe-sources b { color: var(--ave-ink); font-weight: 700; }

/* "Correction:", "Update:", "Editor's note:" */
body.ave .abe-note {
  background: var(--ave-soft); border-left: 4px solid var(--ave-brand); padding: 14px 18px;
  font: 400 15px/1.55 var(--ave-sans) !important; color: var(--ave-ink-2) !important;
}

/* paid links (FTC): the label must sit next to the link; this only styles it */
body.ave .single-content a[rel~="sponsored"]::after { content: " (Paid link)"; font: 600 12px var(--ave-sans); color: var(--ave-stone); }

/* ---------- archives and home (Kadence loop) ---------- */
body.ave .loop-entry { box-shadow: none; border-radius: 0; border-bottom: 1px solid var(--ave-hair); background: transparent; }
body.ave .loop-entry .entry-title, body.ave .loop-entry .entry-title a {
  font: 700 22px/1.22 var(--ave-sans); letter-spacing: -0.012em; color: var(--ave-ink); text-decoration: none;
}
body.ave .loop-entry .entry-title a:hover { color: var(--ave-accent-text); }
body.ave .loop-entry .entry-summary p { font: 400 16px/1.55 var(--ave-serif); color: var(--ave-ink-2); }
body.ave .loop-entry .post-thumbnail { border-radius: 0; }
/* home: the newest story leads */
body.ave.home .loop-entry:first-of-type .entry-title,
body.ave.home .loop-entry:first-of-type .entry-title a { font-size: clamp(28px, 3.4vw, 40px); line-height: 1.12; }
body.ave .archive-title, body.ave .page-title { font: 700 34px/1.15 var(--ave-sans); letter-spacing: -0.02em; }

/* ---------- buttons, forms ---------- */
body.ave .button, body.ave button, body.ave input[type="submit"], body.ave .wp-block-button__link {
  border-radius: 0; background: var(--ave-brand); color: #fff; font: 600 13px/1 var(--ave-sans); letter-spacing: .08em; text-transform: uppercase;
}
body.ave .button:hover, body.ave button:hover, body.ave input[type="submit"]:hover, body.ave .wp-block-button__link:hover { background: var(--ave-accent-text); color: #fff; }
body.ave input[type="text"], body.ave input[type="email"], body.ave input[type="search"], body.ave textarea { border-radius: 0; border-color: var(--ave-hair); font-family: var(--ave-sans); }

/* ---------- footer ---------- */
body.ave .site-footer, body.ave .site-footer .site-footer-row-container-inner { background: #0E0E0E; color: rgba(255,255,255,.82); }
body.ave .site-footer a { color: #fff; text-decoration: none; font: 500 13px/1.6 var(--ave-sans); letter-spacing: .04em; }
body.ave .site-footer a:hover { color: #19B26B; }
body.ave .site-footer .footer-html, body.ave .site-footer p { font: 400 13px/1.6 var(--ave-sans); color: rgba(255,255,255,.7); }
