
:root {
  --cv4-black:#05080d; --cv4-ink:#0a111c; --cv4-navy:#0d1b2b; --cv4-blue:#173450;
  --cv4-blue2:#244b73; --cv4-gold:#d4ad59; --cv4-gold2:#efd48c; --cv4-ivory:#f3f0e8;
  --cv4-text:#d9dee6; --cv4-muted:#9ca8b7; --cv4-line:rgba(255,255,255,.13);
  --cv4-shadow:0 22px 62px rgba(0,0,0,.28);
}
html { scroll-behavior:smooth; }
body#encore-theme { background-color:var(--cv4-black); background-image:linear-gradient(rgba(3,7,12,.78),rgba(3,7,12,.86)),url('chads-flow-bg.jpg'); background-position:center top; background-size:cover; background-attachment:fixed; }
.header.sticky { position:relative !important; top:auto !important; z-index:100; box-shadow:none; }
.header__wrap, .header__content--desktop, .header__content--mobile { background:#000 !important; }
.chads-v4, .chads-v4 * { box-sizing:border-box; }
.chads-v4 { font-family:inherit; }
.cv4-shell { width:min(1160px, calc(100% - 44px)); margin:0 auto; }
.cv4-kicker,.cv4-eyebrow { margin:0 0 13px; color:#9fb8d2; font-size:.71rem; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.cv4-kicker--gold { color:var(--cv4-gold2); }
.cv4-section-head { max-width:820px; margin:0 0 38px; }
.cv4-section-head h2 { margin:0 0 15px; color:#fff; font-size:clamp(2rem,4vw,3.15rem); line-height:1.18; letter-spacing:-.035em; }
.cv4-section-head > div { color:rgba(255,255,255,.68); font-size:1rem; line-height:1.85; }
.cv4-section-head > div p:last-child { margin-bottom:0; }
.cv4-section-head--light h2 { color:#fff; }
.cv4-btn { display:inline-flex; min-height:50px; padding:12px 21px; align-items:center; justify-content:center; border-radius:6px; font-size:.85rem; font-weight:900; text-align:center; transition:.2s ease; }
.cv4-btn:hover { transform:translateY(-2px); }
.cv4-btn--gold { color:var(--cv4-black)!important; background:linear-gradient(135deg,var(--cv4-gold2),var(--cv4-gold)); box-shadow:0 11px 30px rgba(212,173,89,.2); }
.cv4-btn--ghost { color:#fff!important; border:1px solid rgba(255,255,255,.35); background:rgba(255,255,255,.04); }
.cv4-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:28px; }

/* Intro */
.cv4-intro { position:relative; overflow:hidden; color:#fff; background:var(--cv4-black); }
.cv4-intro::before { content:""; position:absolute; inset:0; background-image:var(--cv4-intro-bg); background-size:cover; background-position:center; opacity:.46; filter:saturate(.78) contrast(1.07); }
.cv4-intro__veil { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,8,14,.97) 0%,rgba(4,8,14,.84) 47%,rgba(4,8,14,.68) 100%),linear-gradient(180deg,rgba(4,8,14,.12),rgba(4,8,14,.85)); }
.cv4-intro__inner { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr); gap:46px; align-items:center; padding:78px 0 72px; }
.cv4-intro h1 { margin:0 0 22px; color:#fff; font-size:clamp(2.7rem,5.6vw,5rem); line-height:1.05; letter-spacing:-.055em; }
.cv4-intro h1 span { display:block; color:var(--cv4-gold2); }
.cv4-intro__lead { max-width:720px; color:#fff; font-size:1.15rem; line-height:1.9; }
.cv4-intro__lead strong { color:var(--cv4-gold2); }
.cv4-intro__body { max-width:700px; color:rgba(255,255,255,.7); line-height:1.85; }
.cv4-path { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:34px; }
.cv4-path article { display:grid; grid-template-columns:28px 1fr; gap:9px; padding:14px; border:1px solid rgba(255,255,255,.12); border-radius:7px; background:rgba(5,13,23,.55); backdrop-filter:blur(8px); }
.cv4-path article > span { color:var(--cv4-gold2); font-size:.7rem; font-weight:900; }
.cv4-path strong { display:block; color:#fff; font-size:.8rem; }
.cv4-path p { margin:3px 0 0; color:rgba(255,255,255,.53); font-size:.68rem; line-height:1.5; }
.cv4-access { padding:30px; border:1px solid rgba(212,173,89,.42); border-radius:12px; background:linear-gradient(145deg,rgba(15,33,52,.94),rgba(7,15,25,.96)); box-shadow:var(--cv4-shadow); }
.cv4-access__label { color:var(--cv4-gold2); font-size:.68rem; font-weight:900; letter-spacing:.14em; }
.cv4-access h2 { margin:10px 0 13px; color:#fff; font-size:1.65rem; line-height:1.3; }
.cv4-access__intro { color:rgba(255,255,255,.68); font-size:.87rem; line-height:1.7; }
.cv4-access__steps { display:grid; gap:8px; margin:20px 0; }
.cv4-access__steps > div { display:grid; grid-template-columns:32px 1fr; gap:10px; align-items:start; }
.cv4-access__steps span { display:flex; width:29px; height:29px; align-items:center; justify-content:center; border-radius:50%; color:var(--cv4-black); background:var(--cv4-gold); font-size:.7rem; font-weight:900; }
.cv4-access__steps p { margin:3px 0 0; color:rgba(255,255,255,.72); font-size:.78rem; line-height:1.55; }
.cv4-format-list { display:grid; gap:7px; padding-top:17px; border-top:1px solid rgba(255,255,255,.1); }
.cv4-format-list article { display:grid; grid-template-columns:65px 1fr; gap:12px; padding:11px 12px; border-radius:6px; background:rgba(255,255,255,.045); }
.cv4-format-list article > span { color:var(--cv4-gold2); font-size:.61rem; font-weight:900; letter-spacing:.07em; }
.cv4-format-list strong { color:#fff; font-size:.8rem; }
.cv4-format-list p { margin:2px 0 0; color:rgba(255,255,255,.55); font-size:.69rem; line-height:1.5; }
.cv4-access__note { margin:17px 0 0; color:var(--cv4-gold2); font-size:.75rem; font-weight:900; }

/* Overview */
.cv4-overview { padding:84px 0 90px; color:#fff; background:rgba(7,14,23,.88); border-top:1px solid rgba(255,255,255,.06); }
.cv4-product-group { margin-top:32px; padding:24px; border:1px solid rgba(255,255,255,.11); border-radius:12px; background:rgba(7,15,25,.82); box-shadow:0 18px 55px rgba(0,0,0,.17); backdrop-filter:blur(5px); }
.cv4-product-group__head { display:grid; grid-template-columns:145px 1fr; gap:20px; align-items:start; padding-bottom:20px; border-bottom:1px solid rgba(255,255,255,.1); }
.cv4-product-group__head > span { color:var(--cv4-gold2); font-size:.68rem; font-weight:900; letter-spacing:.12em; }
.cv4-product-group__head h3 { margin:0 0 4px; color:#fff; font-size:1.25rem; }
.cv4-product-group__head p { margin:0; color:rgba(255,255,255,.54); font-size:.82rem; }
.cv4-overview-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; padding-top:20px; }
.cv4-overview-card { display:flex; min-width:0; flex-direction:column; overflow:hidden; border:1px solid rgba(255,255,255,.12); border-radius:10px; background:linear-gradient(145deg,rgba(15,31,49,.97),rgba(8,16,27,.98)); box-shadow:0 16px 40px rgba(0,0,0,.18); }
.cv4-overview-card__media { display:flex; width:100%; aspect-ratio:16/10; align-items:center; justify-content:center; padding:14px; background:linear-gradient(145deg,#07101a,#0b1b2b); border-bottom:1px solid rgba(255,255,255,.09); }
.cv4-overview-card__media img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.cv4-overview-card__content { display:flex; flex:1; flex-direction:column; padding:22px; }
.cv4-overview-card__type { margin:0 0 6px; color:var(--cv4-gold2); font-size:.64rem; font-weight:900; letter-spacing:.12em; }
.cv4-overview-card h3 { margin:0; color:#fff; font-size:1.12rem; line-height:1.35; }
.cv4-overview-card__punchline { margin:5px 0 12px; color:#b8c8d8; font-size:.76rem; font-weight:700; }
.cv4-overview-card__description { margin:0 0 17px; color:rgba(255,255,255,.64); font-size:.8rem; line-height:1.65; }
.cv4-overview-card dl { display:grid; gap:6px; margin:auto 0 16px; }
.cv4-overview-card dl > div { display:flex; justify-content:space-between; gap:12px; padding-bottom:7px; border-bottom:1px solid rgba(255,255,255,.08); }
.cv4-overview-card dt { color:rgba(255,255,255,.4); font-size:.67rem; }
.cv4-overview-card dd { margin:0; color:#fff; font-size:.72rem; text-align:right; }
.cv4-overview-card dd strong { color:var(--cv4-gold2); font-size:.9rem; }
.cv4-overview-card a { color:var(--cv4-gold2)!important; font-size:.77rem; font-weight:900; }
.cv4-overview__note { display:flex; gap:14px; margin-top:22px; padding:18px 20px; align-items:center; border-left:3px solid var(--cv4-gold); background:rgba(7,15,25,.78); }
.cv4-overview__note strong { color:#fff; white-space:nowrap; }
.cv4-overview__note span { color:rgba(255,255,255,.58); font-size:.8rem; }

/* Bundles */
.cv4-bundles { position:relative; overflow:hidden; padding:84px 0; color:#fff; background:rgba(2,5,9,.94); border-top:1px solid rgba(255,255,255,.06); }
.cv4-bundles__texture { position:absolute; inset:0; opacity:.07; background:url('chads-halftone-bg.jpg') center/cover; mix-blend-mode:screen; }
.cv4-bundles .cv4-shell { position:relative; }
.cv4-bundle-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.cv4-bundle { overflow:hidden; border:1px solid rgba(255,255,255,.16); border-radius:12px; background:rgba(7,15,25,.92); box-shadow:var(--cv4-shadow); }
.cv4-bundle--featured { border-color:rgba(212,173,89,.66); }
.cv4-bundle__media { display:flex; width:100%; aspect-ratio:16/10; align-items:center; justify-content:center; padding:10px; background:#050a10; border-bottom:1px solid rgba(255,255,255,.1); }
.cv4-bundle__media img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.cv4-bundle__body { padding:26px; }
.cv4-bundle__top { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.cv4-bundle__top span { color:var(--cv4-gold2); font-size:.66rem; font-weight:900; letter-spacing:.12em; }
.cv4-bundle__top em { padding:5px 9px; color:var(--cv4-black); border-radius:999px; background:var(--cv4-gold); font-size:.62rem; font-style:normal; font-weight:900; }
.cv4-bundle h3 { margin:14px 0 9px; color:#fff; font-size:1.34rem; line-height:1.4; }
.cv4-bundle__headline { color:rgba(255,255,255,.68); line-height:1.7; }
.cv4-bundle__includes { margin:20px 0; padding:17px 18px; border:1px solid rgba(255,255,255,.1); border-radius:7px; background:rgba(255,255,255,.04); }
.cv4-bundle__includes ul { margin:0; padding-left:1.2em; }
.cv4-bundle__includes li { margin:5px 0; color:rgba(255,255,255,.67); font-size:.8rem; }
.cv4-bundle__includes strong { color:#fff; }
.cv4-bundle__fit { display:grid; grid-template-columns:84px 1fr; gap:10px; color:rgba(255,255,255,.6); font-size:.78rem; }
.cv4-bundle__fit strong { color:var(--cv4-gold2); }
.cv4-bundle__pricing { display:flex; justify-content:space-between; gap:18px; align-items:end; margin-top:24px; padding-top:20px; border-top:1px solid rgba(255,255,255,.11); }
.cv4-bundle__pricing > div { display:grid; }
.cv4-bundle__pricing small { color:rgba(255,255,255,.4); text-decoration:line-through; }
.cv4-bundle__pricing strong { color:#fff; font-size:2rem; line-height:1.2; }
.cv4-bundle__pricing em { color:var(--cv4-gold2); font-size:.7rem; font-style:normal; font-weight:900; }

/* Diagnosis */
.cv4-diagnosis { position:relative; overflow:hidden; padding:82px 0; color:#fff; background:var(--cv4-black); }
.cv4-diagnosis::before { content:""; position:absolute; inset:0; background-image:var(--cv4-diagnosis-bg); background-size:cover; background-position:center; opacity:.38; }
.cv4-diagnosis__veil { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,8,14,.95),rgba(8,18,31,.74)); }
.cv4-diagnosis__inner { position:relative; }
.cv4-diagnosis-list { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.cv4-diagnosis-row { display:grid; grid-template-columns:38px 1fr auto 20px; gap:13px; align-items:center; padding:18px 19px; color:#fff!important; border:1px solid rgba(255,255,255,.13); border-radius:7px; background:rgba(6,13,22,.78); backdrop-filter:blur(8px); transition:.2s ease; }
.cv4-diagnosis-row:hover { transform:translateY(-2px); border-color:var(--cv4-gold); background:rgba(12,25,39,.94); }
.cv4-diagnosis-row > span { color:var(--cv4-gold2); font-size:.7rem; font-weight:900; }
.cv4-diagnosis-row h3 { margin:0 0 3px; color:#fff; font-size:.87rem; }
.cv4-diagnosis-row p { margin:0; color:rgba(255,255,255,.52); font-size:.7rem; line-height:1.5; }
.cv4-diagnosis-row strong { max-width:170px; color:var(--cv4-gold2); font-size:.74rem; text-align:right; }
.cv4-diagnosis-row em { color:var(--cv4-gold2); font-style:normal; }

/* Detailed products */
.cv4-details { padding:88px 0 96px; color:#fff; background:rgba(7,14,23,.88); border-top:1px solid rgba(255,255,255,.06); }
.cv4-detail-stack { display:grid; gap:28px; }
.cv4-detail-card { overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:13px; color:#fff; background:linear-gradient(145deg,rgba(13,29,45,.97),rgba(5,12,20,.98)); box-shadow:var(--cv4-shadow); }
.cv4-detail-card__top { display:grid; grid-template-columns:minmax(310px,.78fr) minmax(0,1.22fr); align-items:center; border-bottom:1px solid rgba(255,255,255,.1); }
.cv4-detail-card--reverse .cv4-detail-card__media { order:2; }
.cv4-detail-card--reverse .cv4-detail-card__intro { order:1; }
.cv4-detail-card__media { min-width:0; padding:22px; background:rgba(3,8,14,.54); }
.cv4-detail-card__image { display:flex; width:100%; aspect-ratio:16/10; align-items:center; justify-content:center; overflow:hidden; border-radius:8px; background:#04080d; }
.cv4-detail-card__image img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.cv4-detail-card__intro { padding:36px 38px 34px; }
.cv4-detail-card__label { margin:0 0 10px; color:var(--cv4-gold2); font-size:.67rem; font-weight:900; letter-spacing:.12em; }
.cv4-detail-card__intro h2 { margin:0 0 18px; color:#fff; font-size:clamp(1.8rem,3.4vw,2.75rem); line-height:1.12; letter-spacing:-.035em; }
.cv4-detail-card__intro h2 span { display:block; margin-top:8px; color:var(--cv4-gold2); font-size:.38em; line-height:1.45; letter-spacing:0; }
.cv4-detail-card__definition { padding:16px 18px; border-left:3px solid var(--cv4-gold); background:rgba(255,255,255,.05); }
.cv4-detail-card__definition p { margin:0; font-size:1rem; line-height:1.72; }
.cv4-detail-card__description { margin:18px 0 0; color:rgba(255,255,255,.65); font-size:.87rem; line-height:1.82; }
.cv4-detail-card__body { padding:26px 30px 30px; }
.cv4-detail-card__columns { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.cv4-detail-card__columns > div { padding:18px; border:1px solid rgba(255,255,255,.11); border-radius:8px; background:rgba(255,255,255,.04); }
.cv4-detail-card__columns h3 { margin:0 0 10px; color:#fff; font-size:.84rem; }
.cv4-detail-card__columns ul { margin:0; padding-left:1.15em; }
.cv4-detail-card__columns li { margin:5px 0; color:rgba(255,255,255,.61); font-size:.74rem; line-height:1.5; }
.cv4-detail-card__columns strong { color:#fff; }
.cv4-detail-card__meta { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:16px; }
.cv4-detail-card__meta > div { padding:14px 16px; border-top:1px solid rgba(255,255,255,.12); }
.cv4-detail-card__meta small { color:var(--cv4-gold2); font-size:.66rem; font-weight:900; }
.cv4-detail-card__meta p { margin:4px 0 0; color:rgba(255,255,255,.6); font-size:.73rem; line-height:1.5; }
.cv4-detail-card__closing { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:center; margin-top:18px; padding-top:18px; border-top:1px solid rgba(255,255,255,.12); }
.cv4-detail-card blockquote { margin:0; padding:16px 18px; border-left:2px solid var(--cv4-gold); background:rgba(255,255,255,.045); }
.cv4-detail-card blockquote p { margin:0; color:rgba(255,255,255,.68); font-size:.76rem; line-height:1.65; }
.cv4-detail-card blockquote footer { margin-top:7px; color:var(--cv4-gold2); font-size:.68rem; }
.cv4-detail-card__purchase { display:flex; gap:20px; align-items:center; }
.cv4-detail-card__price { display:grid; min-width:105px; }
.cv4-detail-card__price small { color:rgba(255,255,255,.45); font-size:.68rem; }
.cv4-detail-card__price strong { color:#fff; font-size:2.1rem; line-height:1.1; }
.cv4-detail-card__price span { color:var(--cv4-gold2); font-size:.67rem; font-weight:900; }
.cv4-detail-card__bundle-note { margin:13px 0 0; color:rgba(255,255,255,.47); font-size:.72rem; }

/* FAQ/final */
.cv4-faq { padding:86px 0; color:#fff; background:rgba(2,5,9,.94); border-top:1px solid rgba(255,255,255,.06); }
.cv4-faq__grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:64px; align-items:start; }
.cv4-faq__intro { position:sticky; top:90px; }
.cv4-faq__intro h2 { margin:0 0 15px; color:#fff; font-size:clamp(2rem,4vw,3rem); }
.cv4-faq__intro > div { color:rgba(255,255,255,.6); line-height:1.75; }
.cv4-faq__support { margin-top:24px; padding:18px; border-left:3px solid var(--cv4-gold); background:rgba(255,255,255,.045); }
.cv4-faq__support strong { color:#fff; }
.cv4-faq__support p { margin:5px 0 0; color:rgba(255,255,255,.54); font-size:.78rem; line-height:1.6; }
.cv4-faq__list details { border-top:1px solid rgba(255,255,255,.14); }
.cv4-faq__list details:last-child { border-bottom:1px solid rgba(255,255,255,.14); }
.cv4-faq__list summary { cursor:pointer; list-style:none; position:relative; padding:20px 42px 20px 0; color:#fff; font-weight:900; }
.cv4-faq__list summary::-webkit-details-marker { display:none; }
.cv4-faq__list summary::after { content:"+"; position:absolute; right:3px; top:12px; color:var(--cv4-gold2); font-size:1.6rem; font-weight:400; }
.cv4-faq__list details[open] summary::after { content:"−"; }
.cv4-faq__list details > div { padding:0 42px 20px 0; color:rgba(255,255,255,.6); font-size:.84rem; line-height:1.75; }
.cv4-final { position:relative; overflow:hidden; padding:86px 0; color:#fff; text-align:center; background:rgba(7,14,23,.9); border-top:1px solid rgba(255,255,255,.06); }
.cv4-final__texture { position:absolute; inset:0; opacity:.18; background:url('chads-flow-bg.jpg') center/cover; }
.cv4-final__inner { position:relative; max-width:850px; }
.cv4-final h2 { margin:0 0 17px; color:#fff; font-size:clamp(2.1rem,4.5vw,3.5rem); letter-spacing:-.04em; }
.cv4-final__inner > div:not(.cv4-final__actions) { color:rgba(255,255,255,.65); line-height:1.8; }
.cv4-final__actions { display:flex; justify-content:center; flex-wrap:wrap; gap:11px; margin-top:27px; }

@media (max-width:1040px) {
  .cv4-intro__inner { grid-template-columns:1fr; }
  .cv4-access { max-width:820px; }
  .cv4-diagnosis-list { grid-template-columns:1fr; }
}
@media (max-width:820px) {
  .cv4-shell { width:min(100% - 34px,760px); }
  .cv4-product-group__head { grid-template-columns:1fr; gap:6px; }
  .cv4-overview-grid,.cv4-bundle-grid { grid-template-columns:1fr; }
  .cv4-detail-card__top { grid-template-columns:1fr; }
  .cv4-detail-card--reverse .cv4-detail-card__media,.cv4-detail-card--reverse .cv4-detail-card__intro { order:initial; }
  .cv4-faq__grid { grid-template-columns:1fr; gap:35px; }
  .cv4-faq__intro { position:static; }
}
@media (max-width:620px) {
  .cv4-shell { width:calc(100% - 28px); }
  .cv4-intro__inner { padding:52px 0 58px; gap:30px; }
  .cv4-intro h1 { font-size:2.55rem; }
  .cv4-intro__lead { font-size:1rem; }
  .cv4-actions { display:grid; }
  .cv4-btn { width:100%; }
  .cv4-path { grid-template-columns:1fr; }
  .cv4-access { padding:23px; }
  .cv4-overview,.cv4-bundles,.cv4-diagnosis,.cv4-details,.cv4-faq,.cv4-final { padding-top:62px; padding-bottom:64px; }
  .cv4-section-head { margin-bottom:29px; }
  .cv4-section-head h2 { font-size:2rem; }
  .cv4-product-group { padding:16px; }
  .cv4-overview-card__content { padding:16px; }
  .cv4-overview-card__description { min-height:auto; }
  .cv4-overview__note { align-items:flex-start; flex-direction:column; }
  .cv4-bundle__body { padding:22px; }
  .cv4-bundle__headline { min-height:auto; }
  .cv4-bundle__pricing { align-items:stretch; flex-direction:column; }
  .cv4-diagnosis-row { grid-template-columns:27px 1fr 16px; padding:15px; }
  .cv4-diagnosis-row > strong { grid-column:2; text-align:left; }
  .cv4-diagnosis-row > em { grid-column:3; grid-row:1 / span 2; }
  .cv4-detail-card__media { padding:14px; }
  .cv4-detail-card__intro { padding:25px; }
  .cv4-detail-card__body { padding:20px; }
  .cv4-detail-card__columns,.cv4-detail-card__meta { grid-template-columns:1fr; }
  .cv4-detail-card__closing { grid-template-columns:1fr; }
  .cv4-detail-card__purchase { align-items:stretch; flex-direction:column; }
  .cv4-final__actions { display:grid; }
}

@media (max-width:767px){
  .header.sticky { position:sticky !important; top:0 !important; z-index:100; box-shadow:0 8px 25px rgba(0,0,0,.25); }
  body#encore-theme { background-attachment:scroll; }
}


/* V6 readability, image balance, and subtle CHADS texture refinements */
.cv4-kicker,.cv4-eyebrow { font-size:.79rem; }
.cv4-btn { font-size:.95rem; }

.cv4-path article > span { font-size:.78rem; }
.cv4-path strong { font-size:.94rem; line-height:1.45; }
.cv4-path p { font-size:.84rem; line-height:1.65; }
.cv4-access__label { font-size:.76rem; }
.cv4-access__intro { font-size:1rem; line-height:1.8; }
.cv4-access__steps span { font-size:.78rem; }
.cv4-access__steps p { font-size:.91rem; line-height:1.7; }
.cv4-format-list article > span { font-size:.7rem; }
.cv4-format-list strong { font-size:.94rem; }
.cv4-format-list p { font-size:.84rem; line-height:1.65; }
.cv4-access__note { font-size:.88rem; }

.cv4-product-group__head > span { font-size:.76rem; }
.cv4-product-group__head p { font-size:.95rem; line-height:1.7; }
.cv4-overview-card__type { font-size:.73rem; }
.cv4-overview-card h3 { font-size:1.28rem; }
.cv4-overview-card__punchline { font-size:.91rem; line-height:1.55; }
.cv4-overview-card__description { font-size:.96rem; line-height:1.78; }
.cv4-overview-card dt { font-size:.82rem; }
.cv4-overview-card dd { font-size:.89rem; }
.cv4-overview-card dd strong { font-size:1.05rem; }
.cv4-overview-card a { font-size:.92rem; }
.cv4-overview__note span { font-size:.94rem; line-height:1.7; }

.cv4-bundle__top span { font-size:.75rem; }
.cv4-bundle__top em { font-size:.72rem; }
.cv4-bundle h3 { font-size:1.48rem; }
.cv4-bundle__headline { font-size:1rem; line-height:1.78; }
.cv4-bundle__includes li { font-size:.92rem; line-height:1.62; }
.cv4-bundle__fit { font-size:.91rem; line-height:1.65; }
.cv4-bundle__pricing small { font-size:.82rem; }
.cv4-bundle__pricing em { font-size:.82rem; }

.cv4-diagnosis-row > span { font-size:.78rem; }
.cv4-diagnosis-row h3 { font-size:1rem; line-height:1.5; }
.cv4-diagnosis-row p { font-size:.86rem; line-height:1.65; }
.cv4-diagnosis-row strong { font-size:.88rem; line-height:1.5; }

.cv4-details { position:relative; isolation:isolate; overflow:hidden; background:rgba(4,10,17,.82); }
.cv4-details::before { content:""; position:absolute; inset:0; z-index:0; background:url('chads-flow-bg.jpg') center/cover fixed; opacity:.12; filter:saturate(.78) contrast(1.06); pointer-events:none; }
.cv4-details::after { content:""; position:absolute; inset:0; z-index:0; background:linear-gradient(180deg,rgba(3,8,14,.54),rgba(3,8,14,.76)); pointer-events:none; }
.cv4-details > .cv4-shell { position:relative; z-index:1; }
.cv4-detail-card { background:linear-gradient(145deg,rgba(13,29,45,.93),rgba(5,12,20,.95)); backdrop-filter:blur(6px); }
.cv4-detail-card__top { grid-template-columns:minmax(0,42fr) minmax(0,58fr); align-items:center; }
.cv4-detail-card--reverse .cv4-detail-card__top { grid-template-columns:minmax(0,58fr) minmax(0,42fr); }
.cv4-detail-card__media { min-width:0; padding:0; background:transparent; align-self:center; }
.cv4-detail-card__image { display:block; width:100%; aspect-ratio:auto; overflow:visible; border-radius:0; background:transparent; }
.cv4-detail-card__image img { display:block; width:100%; height:auto; object-fit:contain; object-position:center; }
.cv4-detail-card__intro { padding:34px 38px; }
.cv4-detail-card__label { font-size:.77rem; }
.cv4-detail-card__intro h2 span { font-size:.43em; }
.cv4-detail-card__definition p { font-size:1.08rem; line-height:1.78; }
.cv4-detail-card__description { font-size:1rem; line-height:1.88; }
.cv4-detail-card__body { padding:28px 30px 31px; }
.cv4-detail-card__columns h3 { font-size:1rem; }
.cv4-detail-card__columns li { font-size:.91rem; line-height:1.65; }
.cv4-detail-card__meta small { font-size:.76rem; }
.cv4-detail-card__meta p { font-size:.9rem; line-height:1.65; }
.cv4-detail-card blockquote p { font-size:.91rem; line-height:1.75; }
.cv4-detail-card blockquote footer { font-size:.78rem; }
.cv4-detail-card__price small { font-size:.78rem; }
.cv4-detail-card__price span { font-size:.78rem; }
.cv4-detail-card__bundle-note { font-size:.85rem; line-height:1.6; }

.cv4-faq__intro > div { font-size:1rem; }
.cv4-faq__support p { font-size:.91rem; line-height:1.7; }
.cv4-faq__list summary { font-size:1rem; line-height:1.55; }
.cv4-faq__list details > div { font-size:.96rem; line-height:1.82; }
.cv4-final__inner > div:not(.cv4-final__actions) { font-size:1rem; }

@media (max-width:820px) {
  .cv4-detail-card__top,.cv4-detail-card--reverse .cv4-detail-card__top { grid-template-columns:1fr; }
  .cv4-detail-card__media { padding:0; }
  .cv4-detail-card__image img { width:100%; height:auto; }
  .cv4-details::before { background-attachment:scroll; opacity:.1; }
}

@media (max-width:620px) {
  .cv4-kicker,.cv4-eyebrow { font-size:.74rem; }
  .cv4-intro__body { font-size:.98rem; }
  .cv4-path strong { font-size:.98rem; }
  .cv4-path p { font-size:.88rem; }
  .cv4-access__intro { font-size:.98rem; }
  .cv4-access__steps p,.cv4-format-list p { font-size:.9rem; }
  .cv4-product-group__head p { font-size:.94rem; }
  .cv4-overview-card__content { padding:20px; }
  .cv4-overview-card h3 { font-size:1.25rem; }
  .cv4-overview-card__punchline { font-size:.93rem; }
  .cv4-overview-card__description { font-size:.96rem; }
  .cv4-overview-card dt { font-size:.82rem; }
  .cv4-overview-card dd { font-size:.88rem; }
  .cv4-bundle__body { padding:24px 21px; }
  .cv4-bundle__headline,.cv4-bundle__includes li,.cv4-bundle__fit { font-size:.94rem; }
  .cv4-diagnosis-row h3 { font-size:1rem; }
  .cv4-diagnosis-row p { font-size:.88rem; }
  .cv4-diagnosis-row strong { font-size:.9rem; }
  .cv4-detail-card__intro { padding:27px 22px 25px; }
  .cv4-detail-card__body { padding:23px 20px 25px; }
  .cv4-detail-card__definition p { font-size:1rem; }
  .cv4-detail-card__description { font-size:.96rem; }
  .cv4-detail-card__columns > div { padding:18px 16px; }
  .cv4-detail-card__columns li,.cv4-detail-card__meta p,.cv4-detail-card blockquote p { font-size:.92rem; }
  .cv4-detail-card__bundle-note { font-size:.86rem; }
  .cv4-faq__list summary { font-size:1rem; }
  .cv4-faq__list details > div { font-size:.95rem; }
}


/* V7 visual rhythm and floating product-art refinements */

/* Hero: reveal more of the CHADS texture without compromising copy contrast. */
.cv4-intro {
  background:#03070c;
  border-bottom:1px solid rgba(212,173,89,.16);
}
.cv4-intro::before {
  opacity:.72;
  filter:saturate(.94) contrast(1.11) brightness(.83);
  background-position:center 42%;
}
.cv4-intro__veil {
  background:
    radial-gradient(circle at 79% 24%,rgba(76,44,98,.16),transparent 36%),
    linear-gradient(90deg,rgba(3,7,12,.97) 0%,rgba(4,9,16,.88) 43%,rgba(4,9,16,.57) 100%),
    linear-gradient(180deg,rgba(2,5,9,.12),rgba(2,6,11,.83));
}
.cv4-access {
  background:linear-gradient(145deg,rgba(15,33,52,.91),rgba(6,14,24,.94));
  box-shadow:0 26px 68px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(12px);
}

/* Product overview: use the intentional flat 'Before You Choose' tone, with subtle depth. */
.cv4-overview {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#020509;
}
.cv4-overview::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 8% 8%,rgba(31,72,111,.18),transparent 32%),
    radial-gradient(circle at 92% 82%,rgba(92,37,75,.12),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.018),transparent 28%);
  pointer-events:none;
}
.cv4-overview > .cv4-shell { position:relative; z-index:1; }
.cv4-product-group {
  background:linear-gradient(145deg,rgba(12,26,42,.92),rgba(5,12,20,.96));
  border-color:rgba(125,158,191,.18);
  box-shadow:0 24px 70px rgba(0,0,0,.31), inset 0 1px 0 rgba(255,255,255,.025);
}
.cv4-overview-card {
  border-color:rgba(148,177,207,.17);
  box-shadow:0 19px 48px rgba(0,0,0,.28);
}
.cv4-overview-card__media {
  background:linear-gradient(145deg,rgba(6,14,24,.96),rgba(12,30,48,.9));
}
.cv4-overview__note {
  background:rgba(11,24,38,.84);
  border-top:1px solid rgba(255,255,255,.045);
  border-bottom:1px solid rgba(255,255,255,.045);
}

/* Product details: stronger but controlled texture, with artwork floating inside each card. */
.cv4-details {
  background:#050b12;
}
.cv4-details::before {
  background:url('chads-flow-bg.jpg') center 43%/cover fixed;
  opacity:.24;
  filter:saturate(.88) contrast(1.08) brightness(.83);
}
.cv4-details::after {
  background:
    linear-gradient(180deg,rgba(3,8,14,.60),rgba(3,8,14,.72)),
    radial-gradient(circle at 83% 18%,rgba(95,41,79,.10),transparent 35%);
}
.cv4-detail-card {
  border-color:rgba(138,166,195,.18);
  background:linear-gradient(145deg,rgba(12,27,43,.91),rgba(4,11,19,.95));
  box-shadow:0 26px 72px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.025);
}
.cv4-detail-card__media {
  padding:30px 28px;
  background:transparent;
}
.cv4-detail-card__image {
  width:100%;
  max-width:520px;
  margin:0 auto;
  overflow:hidden;
  border:1px solid rgba(225,205,148,.18);
  border-radius:11px;
  background:transparent;
  box-shadow:
    0 26px 58px rgba(0,0,0,.48),
    0 5px 16px rgba(0,0,0,.30),
    0 0 0 1px rgba(255,255,255,.025);
  transform:translateZ(0);
}
.cv4-detail-card__image img {
  width:100%;
  height:auto;
  border-radius:inherit;
}
.cv4-detail-card__intro {
  position:relative;
}
.cv4-detail-card__intro::before {
  content:"";
  position:absolute;
  top:34px;
  bottom:34px;
  left:0;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(212,173,89,.25),transparent);
}
.cv4-detail-card--reverse .cv4-detail-card__intro::before {
  left:auto;
  right:0;
}

@media (max-width:820px) {
  .cv4-intro::before { background-position:center top; }
  .cv4-details::before { background-attachment:scroll; opacity:.19; }
  .cv4-detail-card__media { padding:23px 22px 7px; }
  .cv4-detail-card__image { width:min(100%,560px); }
  .cv4-detail-card__intro::before { display:none; }
}

@media (max-width:620px) {
  .cv4-intro::before { opacity:.64; }
  .cv4-intro__veil {
    background:
      linear-gradient(180deg,rgba(3,7,12,.82) 0%,rgba(3,7,12,.93) 62%,rgba(3,7,12,.98) 100%);
  }
  .cv4-overview::before {
    background:
      radial-gradient(circle at 4% 5%,rgba(31,72,111,.15),transparent 27%),
      radial-gradient(circle at 100% 94%,rgba(92,37,75,.10),transparent 28%);
  }
  .cv4-detail-card__media { padding:18px 17px 5px; }
  .cv4-detail-card__image {
    border-radius:9px;
    box-shadow:0 18px 38px rgba(0,0,0,.44),0 4px 12px rgba(0,0,0,.25);
  }
}


/* V8 Safari/Kajabi rendering safeguards
   Prevent theme-level header/compositing rules from collapsing custom section headings. */
.cv4-section-head,
.cv4-product-group__head {
  position:relative !important;
  display:block;
  width:100%;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  opacity:1 !important;
  transform:none !important;
  contain:none !important;
  visibility:visible !important;
  z-index:5;
}
.cv4-section-head {
  clear:both;
  margin-top:0;
  padding-top:0;
}
.cv4-section-head h2,
.cv4-product-group__head h3,
.cv4-section-head p,
.cv4-product-group__head p,
.cv4-product-group__head span {
  position:static !important;
  display:block;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  transform:none !important;
  white-space:normal !important;
  overflow-wrap:anywhere;
}
.cv4-product-group__head {
  display:grid;
  grid-template-columns:minmax(185px, 0.28fr) minmax(0, 1fr);
  gap:28px;
  align-items:start;
  padding:0 0 24px;
  margin:0 0 22px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.cv4-product-group__head > span {
  padding-top:5px;
  line-height:1.45;
}
.cv4-product-group__head h3 {
  margin:0 0 8px;
  font-size:clamp(1.5rem,2.1vw,2rem);
  line-height:1.3;
  letter-spacing:-.025em;
}
.cv4-product-group__head p {
  margin:0;
  max-width:820px;
  font-size:1.02rem;
  line-height:1.78;
}
.cv4-overview-grid {
  padding-top:0;
}

/* Explicit stacking keeps headings above texture layers in Kajabi and Safari. */
.cv4-overview > .cv4-shell,
.cv4-bundles > .cv4-shell,
.cv4-diagnosis > .cv4-shell,
.cv4-details > .cv4-shell,
.cv4-faq > .cv4-shell,
.cv4-final > .cv4-shell {
  position:relative;
  z-index:4;
}
.cv4-bundles__texture,
.cv4-diagnosis__texture {
  z-index:0;
  pointer-events:none;
}

/* Reduce GPU-compositing edge cases seen in Safari while preserving the V7 look. */
.cv4-access,
.cv4-product-group {
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}
.cv4-intro::before,
.cv4-details::before {
  filter:none !important;
  -webkit-filter:none !important;
  background-attachment:scroll !important;
}
.cv4-overview {
  isolation:auto;
}

@media (max-width:820px) {
  .cv4-product-group__head {
    grid-template-columns:1fr;
    gap:8px;
    margin-bottom:18px;
    padding-bottom:18px;
  }
  .cv4-product-group__head > span { padding-top:0; }
  .cv4-product-group__head h3 { font-size:1.65rem; }
  .cv4-product-group__head p { font-size:1rem; line-height:1.72; }
}

@media (max-width:620px) {
  .cv4-section-head { margin-bottom:27px; }
  .cv4-section-head h2 {
    font-size:clamp(1.85rem,8.4vw,2.35rem);
    line-height:1.22;
  }
  .cv4-product-group__head h3 {
    font-size:1.48rem;
    line-height:1.34;
  }
  .cv4-product-group__head p {
    font-size:.98rem;
    line-height:1.7;
  }
}


/* V9 interactive media CTAs and per-section background controls */
.chads-v4 { position:relative; isolation:isolate; background-color:var(--cv4-edit-bg-color,transparent); }
.cv4-editable-bg,
.cv4-editable-overlay { position:absolute; inset:0; z-index:0; pointer-events:none; }
.cv4-editable-bg { background-color:var(--cv4-edit-bg-color,transparent); background-image:var(--cv4-edit-bg-image,none); background-position:var(--cv4-edit-bg-position,center center); background-size:var(--cv4-edit-bg-size,cover); background-repeat:no-repeat; }
.cv4-editable-overlay { background:var(--cv4-edit-overlay-color,#05080d); opacity:var(--cv4-edit-overlay-opacity,0); }
.chads-v4 > :not(.cv4-editable-bg):not(.cv4-editable-overlay) { position:relative; z-index:1; }

/* Prevent legacy decorative layers from obscuring user-selected section backgrounds. */
.cv4-intro::before,.cv4-overview::before,.cv4-details::before,.cv4-details::after { background:none !important; opacity:0 !important; }
.cv4-bundles__texture,.cv4-final__texture { display:none !important; }
.cv4-intro__veil,.cv4-diagnosis__veil { background:transparent !important; }

.cv4-media-link { position:relative; cursor:pointer; text-decoration:none!important; }
.cv4-media-link img { transition:transform .32s ease,filter .32s ease; }
.cv4-media-link__overlay { position:absolute; inset:0; z-index:3; display:flex; align-items:center; justify-content:center; gap:10px; color:#070a0f; background:rgba(239,212,140,.92); opacity:0; transform:translateY(5px); transition:opacity .25s ease,transform .25s ease; pointer-events:none; }
.cv4-media-link__overlay strong { font-size:1rem; font-weight:900; letter-spacing:.02em; }
.cv4-media-link__overlay em { font-size:1.25rem; font-style:normal; line-height:1; }
.cv4-media-link:hover img,.cv4-media-link:focus-visible img { transform:scale(1.025); filter:brightness(.62) saturate(.9); }
.cv4-media-link:hover .cv4-media-link__overlay,.cv4-media-link:focus-visible .cv4-media-link__overlay { opacity:.96; transform:translateY(0); }
.cv4-media-link:focus-visible { outline:2px solid var(--cv4-gold2); outline-offset:3px; }

.cv4-overview-card__cta { display:flex!important; min-height:48px; margin-top:auto; padding:12px 15px; align-items:center; justify-content:space-between; border:1px solid rgba(239,212,140,.6); border-radius:6px; color:var(--cv4-black)!important; background:linear-gradient(135deg,var(--cv4-gold2),var(--cv4-gold)); box-shadow:0 10px 25px rgba(212,173,89,.17); font-size:.95rem!important; font-weight:900; transition:transform .2s ease,box-shadow .2s ease; }
.cv4-overview-card__cta:hover { transform:translateY(-2px); box-shadow:0 14px 30px rgba(212,173,89,.24); }
.cv4-overview-card__cta span { font-size:1.08rem; }

.cv4-bundle__media,.cv4-overview-card__media { overflow:hidden; }
.cv4-detail-card__image.cv4-media-link { display:block; overflow:hidden; }
.cv4-detail-card__image .cv4-media-link__overlay { border-radius:inherit; }

@media (hover:none),(pointer:coarse) {
  .cv4-media-link__overlay { inset:auto 10px 10px auto; width:auto; min-height:38px; padding:8px 12px; border-radius:5px; opacity:.95; transform:none; box-shadow:0 8px 22px rgba(0,0,0,.28); }
  .cv4-media-link__overlay strong { font-size:.78rem; }
  .cv4-media-link__overlay em { font-size:.95rem; }
  .cv4-media-link:hover img,.cv4-media-link:focus-visible img { transform:none; filter:none; }
}


/* ================================================================
   CHADS V10 — configurable CTA colors and subtle image interactions
   ================================================================ */

/* Primary buttons: hero, bundles, product details and final CTA. */
.chads-v4 .cv4-btn--gold,
.chads-v4 a.cv4-overview-card__cta {
  color:var(--chads-primary-btn-text)!important;
  background:var(--chads-primary-btn-bg)!important;
  border:1px solid var(--chads-primary-btn-border)!important;
  box-shadow:0 11px 30px rgba(0,0,0,.22);
}
.chads-v4 .cv4-btn--gold:hover,
.chads-v4 .cv4-btn--gold:focus-visible,
.chads-v4 a.cv4-overview-card__cta:hover,
.chads-v4 a.cv4-overview-card__cta:focus-visible {
  color:var(--chads-primary-btn-hover-text)!important;
  background:var(--chads-primary-btn-hover-bg)!important;
  border-color:var(--chads-primary-btn-hover-border)!important;
}

/* This higher-specificity selector prevents the card's generic gold link
   rule from overriding the CTA text color. */
.chads-v4 .cv4-overview-card a.cv4-overview-card__cta,
.chads-v4 .cv4-overview-card a.cv4-overview-card__cta:visited {
  color:var(--chads-primary-btn-text)!important;
}
.chads-v4 .cv4-overview-card a.cv4-overview-card__cta:hover,
.chads-v4 .cv4-overview-card a.cv4-overview-card__cta:focus-visible {
  color:var(--chads-primary-btn-hover-text)!important;
}

/* Secondary / ghost buttons. */
.chads-v4 .cv4-btn--ghost {
  color:var(--chads-secondary-btn-text)!important;
  background:var(--chads-secondary-btn-bg)!important;
  border:1px solid var(--chads-secondary-btn-border)!important;
}
.chads-v4 .cv4-btn--ghost:hover,
.chads-v4 .cv4-btn--ghost:focus-visible {
  color:var(--chads-secondary-btn-hover-text)!important;
  background:var(--chads-secondary-btn-hover-bg)!important;
  border-color:var(--chads-secondary-btn-hover-border)!important;
}

/* The image no longer becomes a full gold panel. It reacts subtly while
   a compact CTA badge appears in the center. */
.chads-v4 .cv4-media-link {
  position:relative;
  isolation:isolate;
}
.chads-v4 .cv4-media-link::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(180deg,rgba(2,5,9,.02),rgba(2,5,9,.34));
  opacity:0;
  transition:opacity .28s ease;
  pointer-events:none;
}
.chads-v4 .cv4-media-link__overlay {
  position:absolute;
  inset:0;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  color:inherit;
  background:transparent!important;
  opacity:0;
  transform:none;
  transition:opacity .24s ease;
  pointer-events:none;
}
.chads-v4 .cv4-media-link__overlay strong {
  display:inline-flex;
  min-height:44px;
  padding:10px 17px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--chads-image-cta-border);
  border-radius:6px;
  color:var(--chads-image-cta-text)!important;
  background:var(--chads-image-cta-bg);
  box-shadow:0 12px 30px rgba(0,0,0,.32);
  font-size:.9rem;
  font-weight:900;
  letter-spacing:.02em;
  transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease;
}
.chads-v4 .cv4-media-link__overlay em {
  display:none;
}
.chads-v4 .cv4-media-link:hover::after,
.chads-v4 .cv4-media-link:focus-visible::after {
  opacity:1;
}
.chads-v4 .cv4-media-link:hover img,
.chads-v4 .cv4-media-link:focus-visible img {
  transform:scale(1.018);
  filter:brightness(.82) saturate(.96);
}
.chads-v4 .cv4-media-link:hover .cv4-media-link__overlay,
.chads-v4 .cv4-media-link:focus-visible .cv4-media-link__overlay {
  opacity:1;
}
.chads-v4 .cv4-media-link:hover .cv4-media-link__overlay strong,
.chads-v4 .cv4-media-link:focus-visible .cv4-media-link__overlay strong {
  color:var(--chads-image-cta-hover-text)!important;
  background:var(--chads-image-cta-hover-bg);
  border-color:var(--chads-image-cta-hover-border);
  transform:translateY(-2px);
}

/* Mobile has no hover. Keep a compact, clearly clickable badge visible. */
@media (max-width:820px) {
  .chads-v4 .cv4-media-link::after { opacity:.1; }
  .chads-v4 .cv4-media-link__overlay {
    inset:auto 10px 10px auto;
    display:flex;
    width:auto;
    opacity:1;
  }
  .chads-v4 .cv4-media-link__overlay strong {
    min-height:36px;
    padding:7px 11px;
    font-size:.75rem;
  }
  .chads-v4 .cv4-media-link:hover img,
  .chads-v4 .cv4-media-link:focus-visible img {
    transform:none;
    filter:none;
  }
}
