/* Checkthevendor — Advertising & Affiliate Disclosure (visual, glassy). Uses site.css tokens. */

/* Page chrome: hide theme title, break out, trim the big top gap */
body:has(.ctv-disc) .wp-block-post-title{ display:none !important; }
body:has(.ctv-disc) main > .wp-block-group{ padding-top:28px !important; }
.entry-content > p:has(.ctv-disc), .wp-block-post-content > p:has(.ctv-disc){ max-width:none !important; }
.entry-content .ctv-disc, .wp-block-post-content .ctv-disc{ max-width:980px !important; margin-left:auto !important; margin-right:auto !important; }

.ctv-disc{ position:relative; }
.ctv-disc h2{ font-size:clamp(1.5rem,3vw,2rem); margin:0 0 8px; letter-spacing:-.02em; }
.ctv-dsub{ color:var(--ink-muted); font-size:1.05rem; line-height:1.6; margin:0 0 22px; max-width:680px; }
.ctv-dsection{ margin-top:54px; }
.ctv-dafter{ color:var(--ink-muted); font-size:1rem; line-height:1.65; margin:20px 0 0; max-width:760px; }
.ctv-dafter, .ctv-dscale-note{ padding-left:2px; }

/* Hero */
.ctv-dhero{ text-align:center; padding:8px 0 6px; }
.ctv-disc .ctv-eyebrow{ color:var(--brand-hover); }
.ctv-dhero h1{ font-size:clamp(2.1rem,5vw,3.2rem); line-height:1.04; letter-spacing:-.025em; margin:16px 0 14px; }
.ctv-dlede{ color:var(--ink-muted); font-size:1.15rem; line-height:1.65; max-width:660px; margin:0 auto; }

/* One-line promise (hero callout) */
.ctv-dpromise{ display:flex; gap:18px; align-items:flex-start; margin-top:30px; padding:24px 28px; border-radius:20px;
  background:linear-gradient(135deg,rgba(109,92,245,.14),rgba(0,182,122,.08)); border:1px solid rgba(109,92,245,.24);
  box-shadow:0 18px 50px rgba(20,22,39,.07); }
.ctv-dpromise__ic{ flex-shrink:0; width:48px; height:48px; border-radius:14px; background:var(--brand); color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 8px 22px rgba(109,92,245,.34); }
.ctv-dpromise b{ display:block; font-size:1.2rem; font-weight:600; letter-spacing:-.01em; margin-bottom:6px; color:var(--ink); }
.ctv-dpromise p{ margin:0; color:var(--ink-muted); line-height:1.6; }

/* How we make money — two cards */
.ctv-dmoney{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.ctv-dcard{ padding:24px 26px; }
.ctv-dcard__ic{ width:46px; height:46px; border-radius:13px; display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
.ctv-dcard__ic--aff{ background:rgba(109,92,245,.12); color:var(--brand-hover); }
.ctv-dcard__ic--spon{ background:rgba(245,158,40,.16); color:#9a5b09; }
.ctv-dcard h3{ font-size:1.18rem; margin:0 0 8px; }
.ctv-dcard p{ margin:0; color:var(--ink-muted); line-height:1.6; font-size:.97rem; }

/* The firewall — list of glass rules */
.ctv-drules{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; }
.ctv-drules li{ display:flex; gap:14px; align-items:flex-start; padding:16px 20px; border-radius:15px; color:var(--ink-muted); font-size:1rem; line-height:1.55; }
.ctv-drules li b{ color:var(--ink); font-weight:600; }
.ctv-drules__ic{ flex-shrink:0; width:26px; height:26px; border-radius:50%; background:#16b15f; color:#fff; display:flex; align-items:center; justify-content:center; margin-top:1px; }

/* What decides a grade */
.ctv-dgrade{ padding:24px 28px; }
.ctv-dcrit{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; }
.ctv-dcrit li{ display:flex; align-items:center; gap:14px; padding:11px 0; border-bottom:1px solid rgba(20,22,39,.07); }
.ctv-dcrit li:last-child{ border-bottom:0; }
.ctv-dcrit .nm{ flex:1; min-width:0; font-size:.97rem; color:var(--ink); font-weight:500; }
.ctv-dcrit__bar{ width:34%; max-width:240px; height:8px; border-radius:99px; background:rgba(20,22,39,.07); overflow:hidden; flex-shrink:0; }
.ctv-dcrit__bar i{ display:block; height:100%; border-radius:99px; background:var(--brand); transition:width 1.15s var(--ease-out); }
.ctv-dcrit .wt{ width:42px; text-align:right; font-weight:700; font-size:1rem; color:var(--brand-hover); font-variant-numeric:tabular-nums; flex-shrink:0; }
.ctv-dgrade__gate{ margin-top:18px; padding:16px 18px; border-radius:14px; background:rgba(239,108,26,.09); border:1px solid rgba(239,108,26,.22); color:var(--ink-muted); font-size:.95rem; line-height:1.6; }
.ctv-dgrade__gate b{ color:#c2410c; }
.ctv-dgrade__zero{ display:flex; align-items:center; gap:11px; margin-top:14px; padding:14px 18px; border-radius:14px; background:rgba(20,22,39,.04); border:1px solid rgba(20,22,39,.1); color:var(--ink-muted); font-size:.95rem; line-height:1.5; }
.ctv-dgrade__zero svg{ flex-shrink:0; color:#a3211d; }
.ctv-dgrade__zero b{ color:var(--ink); }
.ctv-dscale-note{ font-size:.95rem; color:var(--ink-muted); line-height:1.6; margin:16px 0 0; }
.ctv-dscale-note b{ color:var(--ink); font-weight:600; }
.ctv-dscale-note a{ color:var(--brand-hover); text-decoration:none; font-weight:500; white-space:nowrap; }
.ctv-dscale-note a:hover{ text-decoration:underline; }

/* How to tell — three labelled cards */
.ctv-dtell{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.ctv-dtell__c{ padding:20px 22px; }
.ctv-dtell__c p{ margin:12px 0 0; color:var(--ink-muted); line-height:1.55; font-size:.93rem; }
.ctv-dlabel{ display:inline-flex; align-items:center; font-size:.74rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; padding:5px 12px; border-radius:var(--pill); }
.ctv-dlabel--aff{ background:rgba(109,92,245,.13); color:var(--brand-hover); border:1px solid rgba(109,92,245,.26); }
.ctv-dlabel--spon{ background:rgba(245,158,40,.16); color:#9a5b09; border:1px solid rgba(245,158,40,.32); }
.ctv-dlabel--ed{ background:rgba(16,207,142,.14); color:#0a8a5e; border:1px solid rgba(16,207,142,.3); }

/* Why this exists */
.ctv-dwhy{ padding:24px 28px; }
.ctv-dwhy p{ margin:0 0 12px; color:var(--ink-muted); line-height:1.7; }
.ctv-dwhy p:last-child{ margin-bottom:0; }

/* Notes (boundary + legal) */
.ctv-dnote{ display:flex; align-items:flex-start; gap:12px; margin-top:22px; padding:15px 20px; border-radius:16px; font-size:.95rem; line-height:1.6;
  background:rgba(245,158,40,.11); border:1px solid rgba(245,158,40,.28); color:#7a4a14; }
.ctv-dnote svg{ flex-shrink:0; margin-top:2px; } .ctv-dnote b{ font-weight:600; color:inherit; }
.ctv-dnote--legal{ background:rgba(20,22,39,.04); border-color:rgba(20,22,39,.12); color:var(--ink-muted); }
.ctv-dnote--legal b{ color:var(--ink); }

/* Contact / right of reply */
.ctv-dcontact{ display:flex; gap:20px; align-items:flex-start; margin-top:40px; padding:30px 32px; border-radius:22px;
  background:var(--panel); color:#c6cadb; box-shadow:0 26px 60px rgba(20,22,39,.18); }
.ctv-dcontact__ic{ flex-shrink:0; width:52px; height:52px; border-radius:15px; background:rgba(255,255,255,.1); color:#fff; display:flex; align-items:center; justify-content:center; border:1px solid rgba(255,255,255,.14); }
.ctv-dcontact__bd{ flex:1; min-width:0; }
.ctv-dcontact h3{ font-size:1.35rem; margin:0 0 8px; color:#fff; }
.ctv-dcontact p{ margin:0 0 18px; line-height:1.65; color:#aab0c5; max-width:620px; }
.ctv-dcontact__act{ display:flex; gap:10px; flex-wrap:wrap; }
.ctv-dcontact__act .ctv-btn--ghost{ background:transparent; color:#fff !important; border:1px solid rgba(255,255,255,.28); }
.ctv-dcontact__act .ctv-btn--ghost:hover{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.45); }

@media (max-width:760px){
  .ctv-dmoney, .ctv-dtell{ grid-template-columns:1fr; }
  .ctv-dcrit li{ flex-wrap:wrap; }
  .ctv-dcrit__bar{ order:3; width:100%; max-width:none; }
  .ctv-dcontact{ flex-direction:column; gap:16px; padding:24px; }
  .ctv-dpromise{ flex-direction:column; gap:14px; }
}
