.elementor-kit-8{--e-global-color-primary:#33A648;--e-global-color-secondary:#007CBF;--e-global-color-text:#7A7A7A;--e-global-color-accent:#1BB390;--e-global-color-23ec4ba:#0A0A0A;--e-global-color-ef18bb6:#111111;--e-global-color-294d80f:#161616;--e-global-color-e45bbf9:#2A2A2A;--e-global-color-394b901:#3A3A3A;--e-global-color-de75bcb:#4ADE80;--e-global-color-0ff165a:#22C55E;--e-global-color-d35abb2:#166534;--e-global-color-eba2605:#4ADE801F;--e-global-color-c7732f7:#4ADE8033;--e-global-color-4f24d75:#FFFFFF;--e-global-color-65c28de:#F5F5F0;--e-global-color-6438531:#E5E5E0;--e-global-color-d0e26a0:#A3A3A0;--e-global-color-0afd7f4:#6B6B68;--e-global-typography-primary-font-family:"DM Serif Display";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Epilogue";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Epilogue";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Epilogue";--e-global-typography-accent-font-weight:500;background-color:var( --e-global-color-23ec4ba );color:var( --e-global-color-d0e26a0 );font-family:"Epilogue", Sans-serif;font-weight:400;line-height:1.75em;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:var( --e-global-color-de75bcb );font-size:0.9rem;font-weight:700;line-height:1.65em;color:var( --e-global-color-23ec4ba );border-radius:4px 4px 4px 4px;padding:0.85rem 2rem 0.85rem 2rem;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:var( --e-global-color-0ff165a );border-radius:4px 4px 4px 4px;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 h1{color:var( --e-global-color-4f24d75 );font-family:"DM Serif Display", Sans-serif;font-size:clamp(2.8rem, 6vw, 5.2rem);font-weight:400;line-height:1.1em;}.elementor-kit-8 h2{color:var( --e-global-color-4f24d75 );font-family:"DM Serif Display", Sans-serif;font-size:clamp(2rem, 4vw, 3rem);font-weight:400;line-height:1.15em;}.elementor-kit-8 h3{color:var( --e-global-color-4f24d75 );font-family:"DM Serif Display", Sans-serif;font-size:1.6rem;font-weight:400;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */h1 span, h2 span, h3 span {
    color: var(--e-global-color-0ff165a);
    font-style: italic;
}






<style>
  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  body {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    background: #000000;
    color: #e9e9e9;
  }

  /* ============================================================
     PREVIEW SHELL — mirrors cpa360leadership.com's actual CSS vars
     ============================================================ */
  :root {
    --ast-global-color-0: #000000;
    --ast-global-color-1: #1a1a1a;
    --ast-global-color-2: #1a1a1a;
    --ast-global-color-3: #4a4a4a;
    --ast-global-color-4: #000000;
    --ast-global-color-5: #ffffff;
    --ast-global-color-6: #f7f7f7;
    --ast-global-color-7: #e9e9e9;
    --ast-global-color-8: #ffffff;
    --cpa-green: #33a648;
    --cpa-blue: #007cbf;
    --cpa-dark: #000000;
    --cpa-text: #e9e9e9;
    --cpa-subtext: #a0a0a0;
  }
  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  body {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    background: #111;
    color: var(--cpa-text);
  }

  /* ---- Preview nav ---- */
  .preview-label {
    font-family: 'Poppins', sans-serif;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--cpa-green);
    background: rgba(51,166,72,0.1);
    border: 1px solid rgba(51,166,72,0.25);
    display: inline-block;
    padding: 0.3rem 0.8rem;
    border-radius: 2px;
    margin-bottom: 0.75rem;
  }
  .preview-note {
    font-size: 0.8rem;
    color: #666;
    font-style: italic;
    margin-bottom: 2rem;
    border-left: 3px solid #333;
    padding-left: 1rem;
    line-height: 1.6;
  }
  .component-block {
    margin-bottom: 4rem;
  }

  /* ============================================================
     ACTUAL COMPONENT STYLES — paste these into Elementor CSS
     ============================================================ */

  /* ---- SHARED UTILITY ---- */
  .cpa360-section {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
    width: 100%;
  }
  .cpa360-container {
    max-width: 1200px;
    margin: 0 auto;
  }
  .cpa360-container-narrow {
    max-width: 820px;
    margin: 0 auto;
  }
  .cpa360-eyebrow {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--cpa-green);
    background: rgba(51,166,72,0.1);
    border: 1px solid rgba(51,166,72,0.25);
    display: inline-block;
    padding: 0.3rem 0.9rem;
    border-radius: 2px;
    margin-bottom: 1.25rem;
  }
  .cpa360-h2 {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(1.8rem, 3.5vw, 2.75rem);
    font-weight: 600;
    color: var(--cpa-green);
    line-height: 1.2em;
    margin-bottom: 1rem;
  }
  .cpa360-h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--cpa-green);
    line-height: 1.3em;
    margin-bottom: 0.5rem;
  }
  .cpa360-body {
    font-size: 0.95rem;
    color: var(--cpa-text);
    line-height: 1.75;
  }
  .cpa360-body-dim {
    font-size: 0.95rem;
    color: var(--cpa-subtext);
    line-height: 1.75;
  }
  .cpa360-divider {
    border: none;
    border-top: 1px solid #222;
    margin: 0;
  }

  /* Site button — matches .elementor-button exactly */
  .cpa360-btn-primary {
    display: inline-block;
    background-color: var(--cpa-green);
    color: #ffffff;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 1em;
    text-transform: capitalize;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 30px;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s;
  }
  .cpa360-btn-primary:hover { background-color: var(--cpa-blue); color: #fff; }

  .cpa360-btn-outline {
    display: inline-block;
    background-color: transparent;
    color: var(--ast-global-color-4);
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 1em;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 30px;
    border: 2px solid var(--cpa-green);
    cursor: pointer;
    transition: background-color 0.2s, color 0.2s;
  }
  .cpa360-btn-outline:hover { background-color: var(--cpa-green); color: #fff; }

  .cpa360-btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    background: transparent;
    color: var(--cpa-green);
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.875rem;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: gap 0.2s;
  }
  .cpa360-btn-ghost:hover { gap: 0.65rem; }
  .cpa360-btn-ghost::after { content: '→'; }

  /* ---- COMPONENT 1: HERO ---- */
  .cpa360-hero {
    background: var(--ast-global-color-0);
    min-height: 90vh;
    display: flex;
    align-items: center;
    padding: 80px 40px;
    position: relative;
    overflow: hidden;
  }
  .cpa360-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 55% 55% at 70% 50%, rgba(51,166,72,0.08) 0%, transparent 70%);
    pointer-events: none;
  }
  .cpa360-hero-inner { position: relative; z-index: 1; max-width: 780px; }
  .cpa360-hero-h1 {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(2.2rem, 5vw, 4.5rem);
    font-weight: 700;
    color: var(--ast-global-color-5);
    line-height: 1.1em;
    margin-bottom: 1.25rem;
    letter-spacing: -0.02em;
  }
  .cpa360-hero-h1 span { color: var(--cpa-green); }
  .cpa360-hero-sub {
    font-size: 1.1rem;
    color: var(--cpa-subtext);
    line-height: 1.75;
    max-width: 600px;
    margin-bottom: 2.25rem;
  }
  .cpa360-hero-ctas { display: flex; gap: 1rem; flex-wrap: wrap; }

  /* ---- COMPONENT 2: PROBLEM FRAMING ---- */
  .cpa360-problem {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
    border-top: 1px solid #1a1a1a;
    border-bottom: 1px solid #1a1a1a;
  }
  .cpa360-problem-inner {
    max-width: 820px;
    margin: 0 auto;
  }
  .cpa360-problem-headline {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(1.6rem, 3vw, 2.5rem);
    font-weight: 700;
    color: var(--ast-global-color-5);
    line-height: 1.2em;
    margin-bottom: 1rem;
  }
  .cpa360-problem-headline span { color: var(--cpa-green); }
  .cpa360-problem-sub {
    font-size: 1.05rem;
    color: var(--cpa-subtext);
    line-height: 1.8;
    margin-bottom: 1.25rem;
  }

  /* ---- COMPONENT 3: THREE PILLARS ---- */
  .cpa360-pillars {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
  }
  .cpa360-pillars-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
    margin-top: 2.5rem;
  }
  .cpa360-pillar-card {
    background: #0d0d0d;
    border: 1px solid #1e1e1e;
    border-radius: 8px;
    padding: 2rem;
    transition: border-color 0.2s;
  }
  .cpa360-pillar-card:hover { border-color: rgba(51,166,72,0.35); }
  .cpa360-pillar-num {
    font-size: 3.5rem;
    font-weight: 700;
    color: rgba(51,166,72,0.15);
    line-height: 1;
    margin-bottom: 0.75rem;
  }
  .cpa360-pillar-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--cpa-green);
    margin-bottom: 0.4rem;
  }
  .cpa360-pillar-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--ast-global-color-5);
    margin-bottom: 0.75rem;
    line-height: 1.3em;
  }
  .cpa360-pillar-body {
    font-size: 0.9rem;
    color: var(--cpa-subtext);
    line-height: 1.7;
    margin-bottom: 1.25rem;
  }

  /* ---- COMPONENT 4: WHO IT'S FOR ---- */
  .cpa360-whofits {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
  }
  .cpa360-whofits-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
  }
  @media (max-width: 768px) { .cpa360-whofits-split { grid-template-columns: 1fr; gap: 2rem; } }
  .cpa360-checklist {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 1.25rem;
  }
  .cpa360-checklist li {
    display: flex;
    gap: 0.85rem;
    align-items: flex-start;
    font-size: 0.95rem;
    color: var(--cpa-subtext);
    line-height: 1.65;
  }
  .cpa360-checklist li::before {
    content: '';
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    background: rgba(51,166,72,0.12);
    border: 1px solid rgba(51,166,72,0.3);
    border-radius: 50%;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 6l3 3 5-5' stroke='%2333a648' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
  }
  .cpa360-checklist li strong { color: var(--ast-global-color-5); display: block; margin-bottom: 0.1rem; }

  /* ---- COMPONENT 5: COUNCILS GRID ---- */
  .cpa360-councils {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
  }
  .cpa360-councils-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1px;
    background: #1e1e1e;
    border: 1px solid #1e1e1e;
    border-radius: 8px;
    overflow: hidden;
    margin-top: 2.5rem;
  }
  .cpa360-council-cell {
    background: #0d0d0d;
    padding: 1.5rem;
    cursor: pointer;
    transition: background 0.2s;
    text-decoration: none;
    display: block;
  }
  .cpa360-council-cell:hover { background: #1a1a1a; }
  .cpa360-council-tag {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--cpa-green);
    margin-bottom: 0.4rem;
  }
  .cpa360-council-name {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ast-global-color-5);
    line-height: 1.35;
  }

  /* ---- COMPONENT 6: ADVISORY SPLIT ---- */
  .cpa360-advisory {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
  }
  .cpa360-advisory-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
  }
  @media (max-width: 768px) { .cpa360-advisory-split { grid-template-columns: 1fr; gap: 2rem; } }
  .cpa360-advisory-items {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  .cpa360-advisory-item {
    display: grid;
    grid-template-columns: 110px 1fr;
    gap: 1.25rem;
    padding: 1.25rem 0;
    border-bottom: 1px solid #1e1e1e;
    align-items: start;
  }
  .cpa360-advisory-item:last-child { border-bottom: none; }
  .cpa360-advisory-label {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--cpa-green);
    padding-top: 2px;
  }
  .cpa360-advisory-desc {
    font-size: 0.9rem;
    color: var(--cpa-subtext);
    line-height: 1.65;
  }
  .cpa360-advisory-desc strong { color: var(--ast-global-color-5); }

  /* ---- COMPONENT 7: MARKETPLACE CARDS ---- */
  .cpa360-marketplace {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
  }
  .cpa360-market-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1.5rem;
    margin-top: 2.5rem;
  }
  .cpa360-market-card {
    background: #0d0d0d;
    border: 1px solid #1e1e1e;
    border-radius: 8px;
    padding: 1.75rem;
    transition: border-color 0.2s;
  }
  .cpa360-market-card:hover { border-color: rgba(51,166,72,0.3); }
  .cpa360-market-cat {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--cpa-green);
    margin-bottom: 0.4rem;
  }
  .cpa360-market-name {
    font-size: 1rem;
    font-weight: 600;
    color: var(--ast-global-color-5);
    margin-bottom: 0.5rem;
  }
  .cpa360-market-desc {
    font-size: 0.875rem;
    color: var(--cpa-subtext);
    line-height: 1.6;
  }

  /* ---- COMPONENT 8: CTA BAND ---- */
  .cpa360-cta-band {
    background: #0d0d0d;
    border-top: 1px solid #1e1e1e;
    border-bottom: 1px solid #1e1e1e;
    padding: 80px 40px;
    text-align: center;
  }
  .cpa360-cta-band-h2 {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(1.6rem, 3.5vw, 2.75rem);
    font-weight: 700;
    color: var(--ast-global-color-5);
    line-height: 1.2em;
    margin-bottom: 0.75rem;
  }
  .cpa360-cta-band-p {
    font-size: 1rem;
    color: var(--cpa-subtext);
    margin-bottom: 2rem;
    line-height: 1.7;
  }
  .cpa360-cta-band-btns {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
  }

  /* ---- COMPONENT 9: OPERATING RHYTHM ---- */
  .cpa360-rhythm {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
  }
  .cpa360-rhythm-list {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-top: 2rem;
    max-width: 900px;
  }
  .cpa360-rhythm-item {
    display: grid;
    grid-template-columns: 130px 1fr;
    gap: 1.5rem;
    padding: 1.5rem 0;
    border-bottom: 1px solid #1a1a1a;
    align-items: start;
  }
  .cpa360-rhythm-item:last-child { border-bottom: none; }
  .cpa360-rhythm-freq {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--cpa-green);
    padding-top: 2px;
  }
  .cpa360-rhythm-desc {
    font-size: 0.95rem;
    color: var(--cpa-subtext);
    line-height: 1.65;
  }
  .cpa360-rhythm-desc strong { color: var(--ast-global-color-5); }

  /* ---- COMPONENT 10: COUNCIL DETAIL PAGE ---- */
  .cpa360-council-detail {
    background: var(--ast-global-color-0);
    padding: 80px 40px;
    border-bottom: 1px solid #1e1e1e;
  }
  .cpa360-council-detail-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
  }
  @media (max-width: 768px) { .cpa360-council-detail-inner { grid-template-columns: 1fr; gap: 2rem; } }
  .cpa360-benchmark-box {
    background: rgba(51,166,72,0.07);
    border: 1px solid rgba(51,166,72,0.2);
    border-radius: 6px;
    padding: 1.5rem;
    font-size: 0.9rem;
    color: var(--cpa-text);
    font-style: italic;
    line-height: 1.7;
    margin-top: 1.5rem;
  }
  .cpa360-benchmark-box::before {
    content: 'Members are currently working on';
    display: block;
    font-style: normal;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--cpa-green);
    margin-bottom: 0.5rem;
  }
  .cpa360-info-card {
    background: #0d0d0d;
    border: 1px solid #1e1e1e;
    border-radius: 8px;
    padding: 1.75rem;
    margin-bottom: 1.5rem;
  }
  .cpa360-info-card:last-child { margin-bottom: 0; }

  /* ---- COMPONENT 11: INSIGHT HERO ---- */
  .cpa360-insight-hero {
    background: #0a0a0a;
    padding: 80px 40px;
    text-align: center;
    border-bottom: 1px solid #1e1e1e;
    position: relative;
    overflow: hidden;
  }
  .cpa360-insight-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 60% at 50% 100%, rgba(51,166,72,0.08) 0%, transparent 60%);
    pointer-events: none;
  }
  .cpa360-insight-year {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(3.5rem, 10vw, 8rem);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.03em;
    margin-bottom: 0.5rem;
    position: relative;
    z-index: 1;
  }
  .cpa360-insight-year .cpa-white { color: var(--ast-global-color-5); }
  .cpa360-insight-year .cpa-green { color: var(--cpa-green); }
  .cpa360-insight-tagline {
    font-size: 1.4rem;
    font-style: italic;
    font-weight: 400;
    color: var(--cpa-subtext);
    margin-bottom: 2rem;
    position: relative;
    z-index: 1;
  }
  .cpa360-insight-meta {
    display: inline-flex;
    gap: 1.5rem;
    align-items: center;
    background: #0d0d0d;
    border: 1px solid #1e1e1e;
    border-radius: 6px;
    padding: 0.75rem 2rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    justify-content: center;
    position: relative;
    z-index: 1;
  }
  .cpa360-insight-meta-item { text-align: center; }
  .cpa360-insight-meta-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #555;
  }
  .cpa360-insight-meta-val {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--ast-global-color-5);
  }
  .cpa360-insight-meta-sep {
    width: 1px;
    height: 32px;
    background: #1e1e1e;
  }

  /* ---- COMPONENT 12: NEWSLETTER SIGNUP ---- */
  .cpa360-newsletter {
    background: #0d0d0d;
    padding: 80px 40px;
    text-align: center;
    border-top: 1px solid #1e1e1e;
    border-bottom: 1px solid #1e1e1e;
  }
  .cpa360-newsletter-inner { max-width: 580px; margin: 0 auto; }
  .cpa360-email-row {
    display: flex;
    gap: 0;
    max-width: 480px;
    margin: 0 auto;
  }
  .cpa360-email-row input[type="email"] {
    flex: 1;
    padding: 0.85rem 1rem;
    background: #111;
    border: 1px solid #2a2a2a;
    border-right: none;
    color: var(--cpa-text);
    font-family: 'Poppins', sans-serif;
    font-size: 0.9rem;
    border-radius: 30px 0 0 30px;
    outline: none;
  }
  .cpa360-email-row input[type="email"]::placeholder { color: #555; }
  .cpa360-email-row input[type="email"]:focus { border-color: var(--cpa-green); }
  .cpa360-email-row button {
    background: var(--cpa-green);
    color: #fff;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    padding: 0.85rem 1.5rem;
    border: none;
    cursor: pointer;
    border-radius: 0 30px 30px 0;
    transition: background 0.2s;
  }
  .cpa360-email-row button:hover { background: var(--cpa-blue); }

  /* ---- PREVIEW WRAPPER ONLY ---- */
  .preview-section { margin-bottom: 1rem; }
  .preview-section-label {
    background: #111;
    color: #555;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 0.5rem 1rem;
    border-top: 1px solid #222;
    border-left: 3px solid var(--cpa-green);
    margin-bottom: 0;
  }
  .toc {
    background: #0d0d0d;
    border: 1px solid #1e1e1e;
    border-radius: 8px;
    padding: 2rem;
    margin-bottom: 3rem;
    max-width: 700px;
  }
  .toc h2 {
    font-size: 1rem;
    font-weight: 600;
    color: var(--cpa-green);
    margin-bottom: 1rem;
  }
  .toc ol {
    padding-left: 1.2rem;
  }
  .toc li {
    font-size: 0.875rem;
    color: var(--cpa-subtext);
    line-height: 1.8;
  }
  .toc li strong { color: var(--cpa-text); }

  /* ---- COUNCIL HERO (council pages only) ---- */
  .cpa360-council-hero {
    background: var(--ast-global-color-0);
    min-height: 55vh;
    display: flex;
    align-items: center;
    padding: 80px 40px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid #1e1e1e;
  }
  .cpa360-council-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 55% 70% at 85% 50%, rgba(51,166,72,0.07) 0%, transparent 70%);
    pointer-events: none;
  }
  .cpa360-council-hero-inner {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
  }
  .cpa360-back-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--cpa-subtext);
    font-family: 'Poppins', sans-serif;
    font-size: 0.8rem;
    font-weight: 500;
    text-decoration: none;
    margin-bottom: 2rem;
    transition: color 0.2s;
  }
  .cpa360-back-link::before { content: '←'; }
  .cpa360-back-link:hover { color: var(--cpa-green); }
  .cpa360-council-h1 {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(2rem, 4.5vw, 3.75rem);
    font-weight: 700;
    color: var(--ast-global-color-5);
    line-height: 1.1em;
    margin-bottom: 1.25rem;
    letter-spacing: -0.02em;
    max-width: 820px;
  }
  .cpa360-council-h1 span { color: var(--cpa-green); }
  .cpa360-council-hero-sub {
    font-size: 1.05rem;
    color: var(--cpa-subtext);
    line-height: 1.75;
    max-width: 640px;
    margin-bottom: 2rem;
  }
  .cpa360-council-hero-btns { display: flex; gap: 1rem; flex-wrap: wrap; }
/* ---- ADVISORY & MARKETPLACE PAGE ADDITIONS ---- */

  /* Page hero */
  .cpa360-advisory-page-hero {
    background: var(--ast-global-color-0);
    min-height: 55vh;
    display: flex;
    align-items: center;
    padding: 80px 40px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid #1e1e1e;
  }
  .cpa360-advisory-page-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 55% 65% at 80% 50%, rgba(51,166,72,0.07) 0%, transparent 70%);
    pointer-events: none;
  }
  .cpa360-advisory-page-hero-inner {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
  }

  /* Split layout: text left, stat/callout right */
  .cpa360-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: start;
    max-width: 1200px;
    margin: 0 auto;
  }
  @media (max-width: 768px) {
    .cpa360-split { grid-template-columns: 1fr; gap: 2rem; }
  }
  .cpa360-split-center { align-items: center; }

  /* Stat callout box */
  .cpa360-stat-box {
    background: #0d0d0d;
    border: 1px solid #1e1e1e;
    border-radius: 8px;
    padding: 2.5rem 2rem;
    text-align: center;
  }
  .cpa360-stat-num {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 700;
    color: var(--cpa-green);
    line-height: 1;
    margin-bottom: 0.4rem;
  }
  .cpa360-stat-label {
    font-size: 0.85rem;
    color: var(--cpa-subtext);
    line-height: 1.6;
  }
  .cpa360-stat-divider {
    border: none;
    border-top: 1px solid #1e1e1e;
    margin: 1.5rem 0;
  }

  /* Advisory process steps */
  .cpa360-steps {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-top: 1rem;
  }
  .cpa360-step {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 1.25rem;
    padding: 1.5rem 0;
    border-bottom: 1px solid #1a1a1a;
    align-items: start;
  }
  .cpa360-step:last-child { border-bottom: none; }
  .cpa360-step-num {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(51,166,72,0.1);
    border: 1px solid rgba(51,166,72,0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Poppins', sans-serif;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--cpa-green);
    flex-shrink: 0;
  }
  .cpa360-step-content {}
  .cpa360-step-title {
    font-family: 'Poppins', sans-serif;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ast-global-color-5);
    margin-bottom: 0.3rem;
    line-height: 1.3em;
  }
  .cpa360-step-desc {
    font-size: 0.875rem;
    color: var(--cpa-subtext);
    line-height: 1.65;
  }

  /* Marketplace card — richer than pillar card */
  .cpa360-mkt-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.5rem;
    margin-top: 2.5rem;
  }
  @media (max-width: 680px) {
    .cpa360-mkt-grid { grid-template-columns: 1fr; }
  }
  .cpa360-mkt-card {
    background: #0d0d0d;
    border: 1px solid #1e1e1e;
    border-radius: 8px;
    padding: 1.75rem;
    transition: border-color 0.2s;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }
  .cpa360-mkt-card:hover { border-color: rgba(51,166,72,0.35); }
  .cpa360-mkt-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
  }
  .cpa360-mkt-cat {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--cpa-green);
    background: rgba(51,166,72,0.1);
    border: 1px solid rgba(51,166,72,0.2);
    border-radius: 2px;
    padding: 0.2rem 0.6rem;
    display: inline-block;
    flex-shrink: 0;
  }
  .cpa360-mkt-name {
    font-family: 'Poppins', sans-serif;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--ast-global-color-5);
    line-height: 1.3em;
  }
  .cpa360-mkt-desc {
    font-size: 0.875rem;
    color: var(--cpa-subtext);
    line-height: 1.65;
    flex: 1;
  }
  .cpa360-mkt-card-footer {
    padding-top: 0.75rem;
    border-top: 1px solid #1a1a1a;
    font-size: 0.78rem;
    color: #3a3a3a;
    font-style: italic;
    line-height: 1.5;
  }

  /* Quote / pull callout */
  .cpa360-pullquote {
    background: rgba(51,166,72,0.07);
    border-left: 3px solid var(--cpa-green);
    border-radius: 0 6px 6px 0;
    padding: 1.5rem 1.75rem;
    margin: 2rem 0 0;
  }
  .cpa360-pullquote p {
    font-size: 1rem;
    color: var(--cpa-text);
    line-height: 1.75;
    font-style: italic;
  }
  .cpa360-pullquote cite {
    display: block;
    font-size: 0.78rem;
    font-style: normal;
    font-weight: 600;
    color: var(--cpa-green);
    margin-top: 0.75rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  /* ---- GLOBAL HEADER ---- */lor: var(--cpa-subtext);
    line-height: 1.75;
    max-width: 640px;
    margin-bottom: 2rem;
  }
  .cpa360-council-hero-btns { display: flex; gap: 1rem; flex-wrap: wrap; }




  /* ================================================================
     GLOBAL HEADER — add this to Elementor → Site Settings → Custom CSS
     alongside the existing cpa360-* component CSS.
     ================================================================ */

  .cpa360-header {
    position: sticky;
    top: 0;
    z-index: 200;
    background: rgba(0, 0, 0, 0.96);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid #1a1a1a;
    height: 68px;
    display: flex;
    align-items: center;
    padding: 0 40px;
    width: 100%;
    box-sizing: border-box;
  }

  .cpa360-header-inner {
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
  }

  /* ---- LOGO ---- */
  .cpa360-header-logo {
    display: flex;
    align-items: center;
    text-decoration: none;
    flex-shrink: 0;
  }
  .cpa360-header-logo img {
    height: 40px;
    width: auto;
    display: block;
  }
  /* Fallback text logo if image not available */
  .cpa360-header-logo-text {
    font-family: 'Poppins', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.02em;
    text-decoration: none;
    line-height: 1;
  }
  .cpa360-header-logo-text span {
    color: var(--cpa-green);
  }

  /* ---- DESKTOP NAV ---- */
  .cpa360-header-nav {
    display: flex;
    align-items: center;
    gap: 0;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .cpa360-header-nav li {
    position: relative;
  }
  .cpa360-header-nav a {
    font-family: 'Poppins', sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    color: #a0a0a0;
    text-decoration: none;
    padding: 0 1.1rem;
    height: 68px;
    display: flex;
    align-items: center;
    border-bottom: 2px solid transparent;
    transition: color 0.15s, border-color 0.15s;
    white-space: nowrap;
  }
  .cpa360-header-nav a:hover {
    color: #ffffff;
    border-bottom-color: var(--cpa-green);
  }
  .cpa360-header-nav a.cpa360-nav-active {
    color: #ffffff;
    border-bottom-color: var(--cpa-green);
  }

  /* Dropdown trigger arrow */
  .cpa360-header-nav .has-dropdown &gt; a::after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid currentColor;
    margin-left: 6px;
    opacity: 0.5;
    transition: transform 0.2s;
  }
  .cpa360-header-nav .has-dropdown:hover &gt; a::after {
    transform: rotate(180deg);
    opacity: 1;
  }

  /* ---- DROPDOWN ---- */
  .cpa360-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    min-width: 220px;
    background: #0d0d0d;
    border: 1px solid #1e1e1e;
    border-top: 2px solid var(--cpa-green);
    border-radius: 0 0 6px 6px;
    padding: 0.5rem 0;
    list-style: none;
    margin: 0;
    box-shadow: 0 8px 24px rgba(0,0,0,0.5);
    z-index: 300;
  }
  .cpa360-header-nav .has-dropdown:hover .cpa360-dropdown {
    display: block;
  }
  .cpa360-dropdown li a {
    height: auto;
    padding: 0.65rem 1.25rem;
    border-bottom: none;
    font-size: 0.825rem;
    color: #a0a0a0;
    display: block;
    white-space: nowrap;
  }
  .cpa360-dropdown li a:hover {
    color: var(--cpa-green);
    border-bottom: none;
    background: rgba(51,166,72,0.05);
  }

  /* ---- CTA BUTTON in header ---- */
  .cpa360-header-cta {
    font-family: 'Poppins', sans-serif;
    font-size: 0.825rem;
    font-weight: 600;
    color: #ffffff !important;
    background: var(--cpa-green);
    border: none;
    border-bottom: none !important;
    border-radius: 30px;
    padding: 0.55rem 1.4rem !important;
    height: auto !important;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: background 0.15s;
    margin-left: 0.75rem;
    display: inline-flex;
    align-items: center;
  }
  .cpa360-header-cta:hover {
    background: var(--cpa-blue) !important;
    color: #ffffff !important;
    border-bottom: none !important;
  }

  /* ---- MOBILE MENU BUTTON ---- */
  .cpa360-mobile-toggle {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    flex-direction: column;
    gap: 5px;
    align-items: flex-end;
  }
  .cpa360-mobile-toggle span {
    display: block;
    height: 2px;
    background: #a0a0a0;
    border-radius: 2px;
    transition: background 0.15s;
  }
  .cpa360-mobile-toggle span:nth-child(1) { width: 24px; }
  .cpa360-mobile-toggle span:nth-child(2) { width: 18px; }
  .cpa360-mobile-toggle span:nth-child(3) { width: 24px; }
  .cpa360-mobile-toggle:hover span { background: #ffffff; }

  /* ---- MOBILE MENU DRAWER ---- */
  .cpa360-mobile-menu {
    display: none;
    position: fixed;
    top: 68px;
    left: 0;
    right: 0;
    background: #0a0a0a;
    border-bottom: 1px solid #1e1e1e;
    z-index: 199;
    padding: 1rem 0 1.5rem;
    box-shadow: 0 8px 24px rgba(0,0,0,0.6);
  }
  .cpa360-mobile-menu.open {
    display: block;
  }
  .cpa360-mobile-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .cpa360-mobile-menu ul li a {
    font-family: 'Poppins', sans-serif;
    font-size: 0.95rem;
    font-weight: 500;
    color: #a0a0a0;
    text-decoration: none;
    display: block;
    padding: 0.75rem 2rem;
    border-left: 3px solid transparent;
    transition: color 0.15s, border-color 0.15s;
  }
  .cpa360-mobile-menu ul li a:hover,
  .cpa360-mobile-menu ul li a.cpa360-nav-active {
    color: #ffffff;
    border-left-color: var(--cpa-green);
  }
  .cpa360-mobile-menu .cpa360-mobile-sub {
    padding-left: 1rem;
    display: none;
    background: #050505;
  }
  .cpa360-mobile-menu .cpa360-mobile-sub.open {
    display: block;
  }
  .cpa360-mobile-menu .cpa360-mobile-sub li a {
    font-size: 0.85rem;
    padding: 0.6rem 2rem 0.6rem 3rem;
    color: #555;
  }
  .cpa360-mobile-menu .cpa360-mobile-sub li a:hover {
    color: var(--cpa-green);
    border-left-color: transparent;
  }
  .cpa360-mobile-menu-cta {
    padding: 1rem 2rem 0;
  }
  .cpa360-mobile-menu-cta a {
    display: block;
    text-align: center;
    font-family: 'Poppins', sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: #ffffff;
    background: var(--cpa-green);
    border-radius: 30px;
    padding: 0.75rem 1.5rem;
    text-decoration: none;
    transition: background 0.15s;
  }
  .cpa360-mobile-menu-cta a:hover {
    background: var(--cpa-blue);
  }

  /* ---- RESPONSIVE ---- */
  @media (max-width: 900px) {
    .cpa360-header-nav { display: none; }
    .cpa360-mobile-toggle { display: flex; }
    .cpa360-header { padding: 0 20px; }
  }
  @media (min-width: 901px) {
    .cpa360-mobile-menu { display: none !important; }
  }


  /* Instructions page styles */
  .instr-body { max-width: 900px; margin: 0 auto; padding: 3rem 2rem 6rem; }
  .instr-h1 { font-size: 1.6rem; font-weight: 700; color: #fff; margin-bottom: 0.5rem; }
  .instr-lead { font-size: 0.95rem; color: #666; line-height: 1.7; margin-bottom: 3rem; }
  .instr-step { margin-bottom: 3rem; }
  .instr-step-num {
    display: inline-flex; align-items: center; justify-content: center;
    width: 32px; height: 32px; border-radius: 50%;
    background: rgba(51,166,72,0.12); border: 1px solid rgba(51,166,72,0.3);
    font-size: 0.75rem; font-weight: 700; color: var(--cpa-green);
    margin-bottom: 0.75rem;
  }
  .instr-step-title { font-size: 1rem; font-weight: 700; color: #fff; margin-bottom: 0.5rem; }
  .instr-step-body { font-size: 0.875rem; color: #a0a0a0; line-height: 1.75; margin-bottom: 0.75rem; }
  .instr-step-body strong { color: #e9e9e9; }
  .instr-warning {
    background: rgba(0,124,191,0.08); border: 1px solid rgba(0,124,191,0.2);
    border-radius: 6px; padding: 1rem 1.25rem;
    font-size: 0.825rem; color: #a0a0a0; line-height: 1.65;
    margin-bottom: 1rem;
  }
  .instr-warning strong { color: var(--cpa-blue); }
  .instr-note {
    background: rgba(51,166,72,0.07); border: 1px solid rgba(51,166,72,0.2);
    border-radius: 6px; padding: 1rem 1.25rem;
    font-size: 0.825rem; color: #a0a0a0; line-height: 1.65;
    margin-bottom: 1rem;
  }
  .instr-note strong { color: var(--cpa-green); }
  pre {
    background: #0a0a0a; border: 1px solid #1e1e1e; border-radius: 6px;
    padding: 1.25rem 1.5rem; font-size: 0.78rem; color: #a0a0a0;
    line-height: 1.7; overflow-x: auto; white-space: pre-wrap;
    word-break: break-all; margin-bottom: 1rem;
    font-family: 'Courier New', Courier, monospace;
  }
  pre .hi { color: var(--cpa-green); }
  pre .hi-blue { color: var(--cpa-blue); }
  pre .hi-white { color: #fff; }
  hr.instr-hr { border: none; border-top: 1px solid #1a1a1a; margin: 3rem 0; }
  .instr-toc {
    background: #0d0d0d; border: 1px solid #1e1e1e; border-radius: 8px;
    padding: 1.5rem 2rem; margin-bottom: 3rem;
  }
  .instr-toc h3 { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--cpa-green); margin-bottom: 0.75rem; }
  .instr-toc ol { padding-left: 1.2rem; display: flex; flex-direction: column; gap: 0.35rem; }
  .instr-toc li { font-size: 0.85rem; color: #777; }
  .instr-toc li strong { color: #e9e9e9; }
  .page-map {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1px; background: #1e1e1e; border: 1px solid #1e1e1e;
    border-radius: 8px; overflow: hidden; margin-bottom: 1rem;
  }
  .page-map-cell {
    background: #0d0d0d; padding: 1rem 1.25rem;
  }
  .page-map-cell-name { font-size: 0.85rem; font-weight: 600; color: #fff; margin-bottom: 0.2rem; }
  .page-map-cell-url { font-size: 0.75rem; color: #444; font-family: monospace; }
</style>/* End custom CSS */