/* =========================================================
   CENIT — Site-wide Readability + Contrast (consolidated)
   (updated with precise clamp + alignment fix for .cenit-qa)
   ========================================================= */

/* Brand tokens */
:root{
  --cenit-ink:#0F172A;      /* body text */
  --cenit-head:#1F2937;     /* headings */
  --cenit-slate:#475569;    /* paragraphs */
  --cenit-muted:#64748B;    /* meta text */
  --cenit-border:#E5E7EB;   /* card borders */
  --cenit-amber:#F5A623;    /* brand amber */

  /* NEW: normalize Elementor inner padding so we can cancel it per breakpoint */
  --cenit-section-pad:20px;
}
@media (max-width:1024px){ :root{ --cenit-section-pad:18px; } }
@media (max-width:768px) { :root{ --cenit-section-pad:16px; } }
@media (max-width:560px) { :root{ --cenit-section-pad:12px; } }

/* Base text & headings */
html body :where(p, li, dd, .elementor-widget-text-editor){
  color:var(--cenit-slate) !important; font-size:17px; line-height:1.7;
}
html body :where(h1,h2,h3,h4,.elementor-heading-title){
  color:var(--cenit-head) !important; font-weight:800 !important; letter-spacing:-.2px;
}

/* Links (readable by default) */
html body a{ color:#0F172A; text-decoration:none }
html body a:hover{ text-decoration:underline; text-underline-offset:2px }

/* Buttons: strong contrast + consistent hover */
html body :where(.elementor-button, a.elementor-button, .btn, .prrc-hero__cta){
  font-weight:800; box-shadow:none !important;
}
html body :where(.elementor-button--primary, .btn--primary, .prrc-hero__cta--primary){
  background:var(--cenit-amber) !important; color:#1F2937 !important; border-color:rgba(0,0,0,.06) !important;
}
html body :where(.elementor-button--secondary, .btn--ghost, .prrc-hero__cta--secondary){
  background:#fff !important; color:#111827 !important; border:1px solid var(--cenit-border) !important;
}
html body :where(.elementor-button, .btn, .prrc-hero__cta):hover{ transform:translateY(-1px) }

/* Cards / custom blocks */
html body :where(.prrc-hero,.cenit-trust-band,.cenit-infosec,.cenit-resources,.cenit-faq){
  background:#fff; border:1px solid var(--cenit-border); border-radius:16px;
}

/* Chips / badges */
html body :where(.prrc-hero__chip,.chip,.badge){
  border-color:#C7CCDB !important; color:#2A324B !important;
}

/* FAQ spacing (if used) */
html body .cenit-faq details.faq-item{ padding:0 }
html body .cenit-faq summary.faq-q{ padding:16px }
html body .cenit-faq .faq-a{ padding:8px 16px 16px 52px }

/* Trust rail logos */
html body .cenit-trust-band .logo img{ opacity:.98 }
html body .cenit-trust-band .logo img.color-to-mono{ filter:grayscale(100%) brightness(0) invert(12%) }

/* Footer Contact Band (inline variant) — readable right cards */
html body .cenit-contact-band.is-inline .cb__cards .card{
  background:#fff; border:1px solid var(--cenit-border);
}
html body .cenit-contact-band.is-inline .cb__cards .card :where(h3,p,li,small){
  color:#111827 !important;
}
html body .cenit-contact-band.is-inline .cb__cards .card a{
  color:#0F172A !important; text-decoration:underline; text-underline-offset:2px;
}

/* Safety: hide legacy hero if still present */
html body .old-hero{ display:none !important }

/* ===== Contrast Patch v2 (targets stubborn pale text) ===== */

/* Elementor text widgets, icon lists, toggles/accordions, excerpts */
html body .elementor-widget-text-editor,
html body .elementor-widget-text-editor :where(p,li),
html body .elementor-icon-list-text,
html body .elementor-tab-content,
html body .elementor-toggle .elementor-tab-content,
html body .elementor-accordion .elementor-tab-content,
html body .elementor-post__excerpt,
html body .elementor-cta__description{
  color:#475569 !important;
}

/* Headings that inherit light colors from theme */
html body .elementor-widget-heading .elementor-heading-title{
  color:#1F2937 !important; font-weight:800 !important;
}

/* Lists inside Elementor text blocks */
html body .elementor-widget-text-editor ul li,
html body .elementor-widget-text-editor ol li{
  color:#475569 !important;
}

/* InfoSec & Trust cards copy */
html body .cenit-infosec .card :where(p,li),
html body .cenit-trust-band .card :where(p,li){
  color:#374151 !important;
}

/* Eyebrow/pill labels (keep readable) */
html body .cb__wrap .cb__eyebrow,
html body .cenit-infosec .infosec__eyebrow,
html body .cenit-trust-band .eyebrow{
  color:#111827 !important; border-color:#E5E7EB !important;
}

/* Ghost/outline buttons on light backgrounds */
html body :where(.btn--ghost, .elementor-button--secondary){
  color:#111827 !important; border-color:#E5E7EB !important; background:#fff !important;
}

/* Any “muted” helper text still too faint */
html body small,
html body .has-text-color[class*="muted"],
html body .text-muted{
  color:#64748B !important;
}

/* === CENIT | Border Restore Pack (light lines around small boxes) === */
:root{ --cenit-border-strong:#D6DEE8 }

html body :where(.badge,.chip,.pill,.eyebrow,.cb__eyebrow){
  border:1px solid var(--cenit-border-strong) !important;
  background:#fff;
}
html body .cenit-infosec .card{
  border:1px solid var(--cenit-border-strong) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.06);
}
html body .cenit-trust-band .rail{
  border:1px solid var(--cenit-border-strong) !important;
}
html body .cenit-trust-band .logo{
  border:1px dashed #D1D5DB !important;
  background:#FAFBFF;
}
html body .doc-row,
html body .cb__wrap .row--boxed,
html body .row--boxed{
  border:1px solid var(--cenit-border-strong) !important;
  border-radius:12px;
  background:#fff;
}
html body :where(.prrc-hero,.cenit-trust-band,.cenit-infosec,.cenit-resources,.cenit-faq){
  border:1px solid var(--cenit-border) !important;
}

/* === Cenit | Hero form states (safe, site-wide) === */
.cenit-heroform .status {
  display:none; margin-top:8px; padding:10px 12px; border-radius:10px; font-size:13px;
}
.cenit-heroform .status.is-error { display:block; background:#FEF2F2; color:#7F1D1D; border:1px solid #FCA5A5; }
.cenit-heroform .status.is-ok    { display:block; background:#ECFDF5; color:#065F46; border:1px solid #A7F3D0; }
.cenit-heroform [aria-invalid="true"] { border-color:#DC2626 !important; outline: 3px solid rgba(220,38,38,.2); }

/* ===========================
   Clamp & alignment framework
   =========================== */
.cenit-qa, .cenit-path, .cenit-trust-band, .cenit-contact-band {
  margin-left:auto; margin-right:auto; max-width:none; box-sizing:border-box;
}

/* Internal clamps (these mirror your Choose-your-path width) */
.cenit-path__wrap,
.cenit-trust-band .trust-wrap,
.cenit-contact-band .cb__wrap{
  max-width:1120px; margin:0 auto;
}

/* ===== HERO FORM SPECIFIC ALIGNMENT FIX =====
   Robust against Elementor widget/column padding, without touching other widgets.
   1) Stretch the hero widget to cancel the container padding
   2) Then clamp the inner card to 1120px (same as Choose your path)
*/
.elementor-widget-html .elementor-widget-container > .cenit-qa{
  position:relative;
  left: calc(-1 * var(--cenit-section-pad));
  width: calc(100% + (2 * var(--cenit-section-pad)));
}

/* If :has() is supported, also zero the wrapper padding around just this widget */
.elementor-widget-container:has(> .cenit-qa){
  padding-left:0 !important;
  padding-right:0 !important;
}

/* Clamp the inner hero card to match 1120px */
.cenit-qa .cenit-qa__card{
  max-width:1120px;
  margin:0 auto;
}

/* Safety: if the hero form sits inside a padded column, cancel only for this instance */
.elementor-column .elementor-widget-wrap:has(> .elementor-widget-html > .elementor-widget-container > .cenit-qa){
  padding-left:0 !important;
  padding-right:0 !important;
}
/* ============ FIX: remove full-width borders on non-hero widgets ============ */
/* Kill section-level border/background so it doesn't span 100% width */
.cenit-path,
.cenit-trust-band,
.cenit-contact-band,
.cenit-infosec,
.cenit-resources,
.cenit-faq{
  border: 0 !important;
  background: transparent !important;
}

/* Put the border on the inner clamps so it lines up with content (1120px) */
.cenit-path__wrap,
.cenit-trust-band .trust-wrap,
.cenit-contact-band .cb__wrap,
.cenit-infosec .infosec__wrap,
.cenit-resources .res__wrap,
.cenit-faq .faq__wrap{
  max-width: 1120px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--cenit-border);
  border-radius: 16px;
  padding: 28px 20px; /* matches your other blocks */
}

/* Safety: if any block lacks a named *__wrap, fall back to first child */
.cenit-infosec > div:first-child:not([class*="__wrap"]),
.cenit-resources > div:first-child:not([class*="__wrap"]),
.cenit-faq > div:first-child:not([class*="__wrap"]){
  max-width: 1120px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--cenit-border);
  border-radius: 16px;
  padding: 28px 20px;
}
/* =============================
   Cenit blocks: clamp borders to inner wrap (NOT full width)
   ============================= */

/* 0) Cancel Elementor’s padding around these HTML widgets only */
.elementor-widget-html .elementor-widget-container
  > :is(.cenit-path,.cenit-trust-band,.cenit-contact-band,.cenit-infosec,.cenit-resources,.cenit-faq){
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 1) Remove section-level border/background (they span full width) */
:where(.cenit-path,.cenit-trust-band,.cenit-contact-band,.cenit-infosec,.cenit-resources,.cenit-faq){
  border: 0 !important;
  background: transparent !important;
  padding: 0; /* we’ll pad the inner clamp instead */
}

/* 2A) Modern browsers: if an inner wrap exists, style THAT (keeps border aligned to 1120px) */
:where(.cenit-path,.cenit-trust-band,.cenit-contact-band,.cenit-infosec,.cenit-resources,.cenit-faq):has(> :is([class*="__wrap"],.trust-wrap,.cb__wrap)) 
  > :is([class*="__wrap"],.trust-wrap,.cb__wrap){
  max-width: 1120px; margin: 0 auto;
  background: #fff;
  border: 1px solid var(--cenit-border);
  border-radius: 16px;
  padding: 28px 20px;
}

/* 2B) Fallback: no wrap child? Style the first real child as the clamp */
:where(.cenit-path,.cenit-trust-band,.cenit-contact-band,.cenit-infosec,.cenit-resources,.cenit-faq):not(:has(> :is([class*="__wrap"],.trust-wrap,.cb__wrap)))
  > :not(script,style):first-child{
  max-width: 1120px; margin: 0 auto;
  background: #fff;
  border: 1px solid var(--cenit-border);
  border-radius: 16px;
  padding: 28px 20px;
}

/* 3) Safety: ensure any accidental second-level wrapper still clamps */
:where(.cenit-path,.cenit-trust-band,.cenit-contact-band,.cenit-infosec,.cenit-resources,.cenit-faq)
  > :not(script,style):first-child
  > :is([class*="__wrap"],.trust-wrap,.cb__wrap){
  max-width: 1120px; margin: 0 auto;
}

/* 4) Do NOT touch the hero form (it already looks correct) */
.cenit-qa, .cenit-qa * { /* no-op guard to prevent overrides */ }
/* =========================
   CENIT blocks: fix borders/width
   Scope: ONLY sections with a class starting with "cenit-" that are embedded
          via Elementor HTML widgets. Hero form (.cenit-qa) is excluded.
   ========================= */

/* 0) Kill Elementor’s inner padding for these widgets only */
.elementor-widget-html .elementor-widget-container
  > section[class^="cenit-"]:not(.cenit-qa),
.elementor-widget-html .elementor-widget-container
  > section[class*=" cenit-"]:not(.cenit-qa){
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 1) Remove the FULL-WIDTH border/background on the outer section */
.elementor-widget-html .elementor-widget-container
  > section[class^="cenit-"]:not(.cenit-qa),
.elementor-widget-html .elementor-widget-container
  > section[class*=" cenit-"]:not(.cenit-qa){
  border: 0 !important;
  background: transparent !important;
  /* no extra padding on the shell */
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* 2) Apply the border/clamp to the INNER wrap (preferred) */
.elementor-widget-html .elementor-widget-container
  > section.cenit-path:not(.cenit-qa)        > .cenit-path__wrap,
.elementor-widget-html .elementor-widget-container
  > section.cenit-trust-band:not(.cenit-qa)  > .trust-wrap,
.elementor-widget-html .elementor-widget-container
  > section.cenit-contact-band:not(.cenit-qa)> .cb__wrap,
.elementor-widget-html .elementor-widget-container
  > section.cenit-infosec:not(.cenit-qa)     > .infosec__wrap,
.elementor-widget-html .elementor-widget-container
  > section.cenit-resources:not(.cenit-qa)   > .resources__wrap,
.elementor-widget-html .elementor-widget-container
  > section.cenit-faq:not(.cenit-qa)         > .cenit-faq__wrap{
  max-width: 1120px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--cenit-border);
  border-radius: 16px;
  padding: 28px 20px;
  box-sizing: border-box;
}

/* 3) Fallback: if a block doesn’t have a named wrap, style its first real child */
.elementor-widget-html .elementor-widget-container
  > section[class^="cenit-"]:not(.cenit-qa)
  > :not(script):not(style):first-child,
.elementor-widget-html .elementor-widget-container
  > section[class*=" cenit-"]:not(.cenit-qa)
  > :not(script):not(style):first-child{
  max-width: 1120px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--cenit-border);
  border-radius: 16px;
  padding: 28px 20px;
  box-sizing: border-box;
}

/* 4) Absolute guard: never restyle the hero quick assessment (already aligned) */
.elementor-widget-html .elementor-widget-container > section.cenit-qa{
  border: 1px solid var(--cenit-border) !important; /* keep its own look */
  background: #fff !important;
  border-radius: 16px !important;
  padding: 0 !important; /* its inner wrap handles spacing */
}
/* ===== CENIT | Last-wins readability patch (article hero + footer only) ===== */

/* --- Single post/article hero on dark band --- */
.single-post .entry-header,
.single .entry-header {
  color: #F5F7FB !important;
}

.single-post .entry-title,
.single .entry-title,
.single-post .elementor-widget-theme-post-title .elementor-heading-title,
.single .elementor-widget-theme-post-title .elementor-heading-title {
  color: #FFFFFF !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.35) !important;
  font-weight: 800 !important;
}

/* Meta/breadcrumb/link text that sits in the same dark band */
.single-post .entry-header .post-meta,
.single-post .entry-header .post-meta a,
.single-post .elementor-widget-breadcrumbs,
.single-post .elementor-widget-breadcrumbs a {
  color: #EAF1FA !important;
}
.single-post .entry-header .post-meta a:hover,
.single-post .elementor-widget-breadcrumbs a:hover {
  color: #FFFFFF !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

/* Category/Tag “pills” near the title (if rendered) */
.single-post .entry-header :is(.cat-links a, .tag-links a, .badge, .pill, .eyebrow) {
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: #FFFFFF !important;
  border-radius: 999px !important;
}

/* --- Footer on navy (Elementor Footer template + theme footers) --- */
:root { --cenit-footer-ink: #E8EEF6; --cenit-footer-ink-strong:#FFFFFF; --cenit-footer-line:#324155; }

.elementor-location-footer,
.site-footer,
footer {
  color: var(--cenit-footer-ink) !important;
}
.elementor-location-footer *,
.site-footer *,
footer * {
  color: inherit !important;           /* inherit the readable ink */
}

/* Headings and widget titles in footer */
.elementor-location-footer .elementor-heading-title,
footer .widget-title,
.site-footer .widget-title {
  color: var(--cenit-footer-ink-strong) !important;
  font-weight: 800 !important;
}

/* Links in footer */
.elementor-location-footer a,
.site-footer a,
footer a {
  color: var(--cenit-footer-ink) !important;
  text-decoration: none !important;
}
.elementor-location-footer a:hover,
.site-footer a:hover,
footer a:hover {
  color: var(--cenit-footer-ink-strong) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

/* Small text/icon-list in footer */
.site-footer .elementor-icon-list-text { color: var(--cenit-footer-ink) !important; }

/* Divider lines in footer */
.elementor-location-footer .elementor-divider-separator,
.site-footer .elementor-divider-separator,
footer hr {
  border-color: var(--cenit-footer-line) !important;
  background: var(--cenit-footer-line) !important;
  color: var(--cenit-footer-line) !important;
}
/* ---------- Cenit: glossary page fixes ---------- */
body.single-glossary .entry-content,
body.single-glossary .glossaryTermContent,
body.single-glossary .cmtt_content {
  max-width: 820px;
  margin: 0 auto;
  font-family: system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size: 18px;
  line-height: 1.7;
  color: #1f2937;
}

/* STOP odd wrapping/hyphenation/justification from theme or plugins */
body.single-glossary .entry-content p,
body.single-glossary .entry-content li,
body.single-glossary .entry-content div,
body.single-glossary .entry-content span {
  word-break: normal !important;          /* no breaking every few chars */
  overflow-wrap: normal !important;
  hyphens: none !important;
  text-align: left !important;            /* kill justify if applied */
  letter-spacing: normal;
}

/* Cards: white background and consistent spacing */
body.single-glossary .cenit-card {
  background: #fff !important;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 1.15rem 1.25rem;
  margin: 1rem 0;
  box-shadow: 0 1px 0 rgba(17, 24, 39, 0.03);
}

/* Accordions: force white (no grey), cleaner summary line */
body.single-glossary details.cenit-acc,
body.single-glossary .cenit-faq details {
  background: #fff !important;            /* remove grey */
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: .9rem 1rem;
  margin: .65rem 0;
}
body.single-glossary summary.cenit-acc-sum,
body.single-glossary .cenit-faq summary {
  cursor: pointer;
  font-weight: 700;
  color: #0f172a;
  list-style: none;
}
body.single-glossary summary.cenit-acc-sum::-webkit-details-marker,
body.single-glossary .cenit-faq summary::-webkit-details-marker { display: none; }

/* Headings inside entry */
body.single-glossary .entry-content h1 { 
  color: #0f172a;
  font-weight: 800;
  font-size: clamp(2rem, 3.5vw, 2.5rem);
  line-height: 1.2;
  margin: 0 0 .6em;
}
body.single-glossary .entry-content h2 {
  color: #111827;
  font-size: clamp(1.25rem, 2.2vw, 1.5rem);
  margin: 1.4rem 0 .7rem;
}

/* Make the little “badges” tidy */
body.single-glossary .cenit-badges { display: flex; flex-wrap: wrap; gap: .45rem; margin: .6rem 0 0; }
body.single-glossary .cenit-badge { font-size: .85rem; padding: .25rem .55rem; border: 1px solid #e5e7eb; border-radius: 999px; background: #f9fafb; color: #374151; }

/* Lists */
body.single-glossary .entry-content ul,
body.single-glossary .entry-content ol { padding-left: 1.15rem; }
body.single-glossary .entry-content li { margin: .45rem 0; }

/* Kill any skin that paints grey behind blocks inside the glossary area */
body.single-glossary .entry-content [class*="background"],
body.single-glossary .entry-content .elementor-widget-container { background: transparent !important; }
/* ===== Cenit fix: glossary layout & accordions ===== */

/* Scope: single glossary term pages only */
body.single-glossary .entry-content,
body.single-glossary .glossaryTermContent,
body.single-glossary .cmtt_content {
  max-width: 820px;
  margin: 0 auto;
  font-family: system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size: 18px;
  line-height: 1.7;
  color: #1f2937;
}

/* 1) Kill forced multi-column / justification / hyphenation */
body.single-glossary .cenit-card,
body.single-glossary .cenit-card * {
  -webkit-columns: auto !important;
  columns: auto !important;
  -webkit-column-count: initial !important;
  column-count: initial !important;
  -webkit-column-gap: normal !important;
  column-gap: normal !important;
  text-align: left !important;
  hyphens: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  letter-spacing: normal !important;
}

/* Make lists behave like normal lists (not grid/flex columns) */
body.single-glossary .cenit-list { display: block !important; padding-left: 1.15rem; }
body.single-glossary .cenit-list li { display: list-item !important; margin: .45rem 0; }
body.single-glossary .cenit-list li > strong {
  display: inline;            /* prevent column-like label layout */
  margin-right: .35rem;
  white-space: normal;
}

/* 2) White cards only (no grey) */
body.single-glossary .cenit-card {
  background: #fff !important;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 1.1rem 1.25rem;
  box-shadow: 0 1px 0 rgba(17,24,39,.03);
}

/* 3) Accordions: force white + tidy summary line */
body.single-glossary details.cenit-acc,
body.single-glossary .cenit-faq details {
  background: #fff !important;         /* kill grey */
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: .9rem 1rem;
  margin: .65rem 0;
}
body.single-glossary summary.cenit-acc-sum,
body.single-glossary .cenit-faq summary {
  cursor: pointer;
  font-weight: 700;
  color: #0f172a;
  list-style: none;
}
body.single-glossary summary.cenit-acc-sum::-webkit-details-marker,
body.single-glossary .cenit-faq summary::-webkit-details-marker { display: none; }

/* Headings inside the entry */
body.single-glossary .entry-content h1 {
  color: #0f172a; font-weight: 800;
  font-size: clamp(2rem, 3.5vw, 2.5rem);
  line-height: 1.2; margin: 0 0 .6em;
}
body.single-glossary .entry-content h2 {
  color: #111827; font-size: clamp(1.25rem, 2.2vw, 1.5rem);
  margin: 1.4rem 0 .7rem;
}

/* Badges remain neat */
body.single-glossary .cenit-badges { display:flex; flex-wrap:wrap; gap:.45rem; margin:.6rem 0 0; }
body.single-glossary .cenit-badge { font-size:.85rem; padding:.25rem .55rem; border:1px solid #e5e7eb; border-radius:999px; background:#f9fafb; color:#374151; }
/* ===== Glossary polish (term pages) ===== */
body.single-glossary .entry-content,
body.single-glossary .glossaryTermContent,
body.single-glossary .cmtt_content {
  max-width: 820px;
  margin: 0 auto;
  font-family: system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size: 18px;
  line-height: 1.7;
  color: #1f2937;
}

/* Stop odd column-like wraps / justify / hyphenation */
body.single-glossary .entry-content p,
body.single-glossary .entry-content li,
body.single-glossary .entry-content div,
body.single-glossary .entry-content span {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  text-align: left !important;
  letter-spacing: normal !important;
}

/* Links: consistent brand color + tidy underline on hover only */
body.single-glossary .entry-content a {
  color: #005a8c;
  text-decoration: none;
  border-bottom: 0;
  background-image: none !important; /* kills dotted underline skins */
}
body.single-glossary .entry-content a:hover {
  color: #0073b5;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 2px;
}

/* Cards white + soft border */
body.single-glossary .cenit-card {
  background: #fff !important;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 1.1rem 1.25rem;
  margin: 1rem 0;
  box-shadow: 0 1px 0 rgba(17,24,39,.03);
}

/* Accordions: always white, never grey; control default open via HTML 'open' */
body.single-glossary details.cenit-acc,
body.single-glossary .cenit-faq details {
  background: #fff !important;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: .9rem 1rem;
  margin: .65rem 0;
}
body.single-glossary summary.cenit-acc-sum,
body.single-glossary .cenit-faq summary {
  cursor: pointer; font-weight: 700; color: #0f172a; list-style: none;
}
body.single-glossary summary.cenit-acc-sum::-webkit-details-marker,
body.single-glossary .cenit-faq summary::-webkit-details-marker { display: none; }

/* Headings size/spacing */
body.single-glossary .entry-content h1 {
  color: #0f172a; font-weight: 800;
  font-size: clamp(2rem, 3.5vw, 2.5rem);
  line-height: 1.2; margin: 0 0 .6em;
}
body.single-glossary .entry-content h2 {
  color: #111827; font-size: clamp(1.25rem, 2.2vw, 1.5rem);
  margin: 1.4rem 0 .7rem;
}

/* Badges */
body.single-glossary .cenit-badges { display:flex; flex-wrap:wrap; gap:.45rem; margin:.6rem 0 0; }
body.single-glossary .cenit-badge { font-size:.85rem; padding:.25rem .55rem; border:1px solid #e5e7eb; border-radius:999px; background:#f9fafb; color:#374151; }

/* Lists */
body.single-glossary .entry-content ul,
body.single-glossary .entry-content ol { padding-left:1.15rem; }
body.single-glossary .entry-content li { margin:.45rem 0; }

/* Remove any theme skin that paints grey behind blocks */
body.single-glossary .entry-content [class*="background"],
body.single-glossary .entry-content .elementor-widget-container { background: transparent !important; }
/* ---------- Cenit: Glossary title + grey bar override ---------- */

/* 1) Title color (covers theme + plugin variants) */
body.single-glossary .entry-title,
body.single-glossary h1.entry-title,
body.single-glossary .cmtt-glossary .entry-title,
body.single-glossary .glossary .entry-title,
body.single-glossary .cmtt_term_title,
body.single-glossary .cmtt_term_title a,
body.single-glossary .cenit-glossary h1 {
  color:#0f172a !important;       /* dark slate */
  text-shadow:none !important;
}

/* 2) Kill the light-grey header/hero background (and any overlay) */
body.single-glossary .entry-header,
body.single-glossary .page-header,
body.single-glossary .archive-header,
body.single-glossary .hero,
body.single-glossary .page-hero,
body.single-glossary .section--page-title,
body.single-glossary .page-title-wrap,
body.single-glossary .cmtt_term_header {
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 0 12px !important;      /* small gap below title */
}
body.single-glossary .entry-header::before,
body.single-glossary .page-hero::before,
body.single-glossary .hero::before {
  content:none !important;         /* remove gradient overlays */
}

/* 3) Breadcrumb bars that masquerade as a title strip */
body.single-glossary .breadcrumb,
body.single-glossary .breadcrumbs,
body.single-glossary nav.breadcrumbs {
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

/* 4) If the title is a link, keep the same color */
body.single-glossary .entry-title a { color:#0f172a !important; }

/* 5) (Optional) un-capitalize if theme forces uppercase */
body.single-glossary .entry-title { text-transform:none !important; }
/* Center the theme title block to the same width as content */
body.single-glossary .entry-header,
body.single-glossary .entry-header .container,
body.single-glossary .entry-header .wrap,
body.single-glossary .page-header,
body.single-glossary .archive-header {
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Make sure the H1 itself uses your color/weight */
body.single-glossary .entry-title,
body.single-glossary h1.entry-title {
  color:#0f172a !important;
  font-weight:800;
  line-height:1.2;
}