
  /* ==========================================================
     CPUK MEGA-BLOCK - single stylesheet for all 13 sections
     ========================================================== */

  /* Google Sites sandbox expansion overrides (defined once) */
  

  .cpuk-megablock {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: #333333;
  }

  /* ---------- Shared section wrapper ---------- */
  .cpuk-block {
    background-color: #ffffff;
    padding: 40px 20px;
    overflow: visible;
  }
  .cpuk-block--hero,.cpuk-block--reviews,
  .cpuk-block--functions,
  .cpuk-block--cic,
  .cpuk-block--principles,
  .cpuk-block--purpose,
  .cpuk-block--reviews {
    padding: 50px 20px;
  }

  .cpuk-container {
    max-width: 1000px;
    margin: 0 auto;
  }

  /* ---------- Section tag (grey label is the default) ---------- */
  .cpuk-section-tag {
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #666666;
    margin-bottom: 10px;
    text-transform: uppercase;
  }
  /* Hero uses the blue pill version */
  .cpuk-block--hero .cpuk-section-tag {
    display: inline-block;
    font-size: 11px;
    letter-spacing: 1.5px;
    color: #0056b3;
    background-color: #e6f0fa;
    padding: 6px 14px;
    border-radius: 20px;
    margin-bottom: 20px;
  }

  /* ---------- Shared section heading ---------- */
  .cpuk-heading {
    font-size: 32px;
    font-weight: 800;
    color: #0b1a30;
    margin: 0 0 25px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-align: left;
  }
  .cpuk-block--functions .cpuk-heading,
  .cpuk-block--principles .cpuk-heading,
  .cpuk-block--purpose .cpuk-heading,
  .cpuk-block--reviews .cpuk-heading {
    margin-bottom: 15px;
  }
  .cpuk-block--focus .cpuk-heading { margin-bottom: 40px; }
  .cpuk-block--cic .cpuk-heading { margin-bottom: 35px; }

  /* ---------- Shared intro paragraph ---------- */
  .cpuk-lead {
    font-size: 16px;
    line-height: 1.75;
    color: #4a5568;
    margin: 1em 0 40px 0;
  }
  .cpuk-block--wwd .cpuk-lead { line-height: 1.7; margin-bottom: 30px; }
  .cpuk-block--support .cpuk-lead { margin-bottom: 35px; }
  .cpuk-block--functions .cpuk-lead { max-width: 800px; }
  .cpuk-block--principles .cpuk-lead,
  .cpuk-block--purpose .cpuk-lead,
  .cpuk-block--reviews .cpuk-lead { max-width: 850px; }

  /* ---------- Shared navy banner ---------- */
  .cpuk-blue-banner {
    background-color: #0b1a30;
    border-radius: 8px;
    padding: 26px 32px;
    text-align: left;
    margin-top: 40px;
  }
  .cpuk-block--about .cpuk-blue-banner { margin-top: 30px; }
  .cpuk-blue-banner p {
    font-size: 16px;
    line-height: 1.6;
    color: #ffffff;
    margin: 0;
    font-weight: 500;
  }
  .cpuk-blue-banner em {
    font-style: italic;
    font-weight: 400;
    color: #e6f0fa;
  }

  /* ---------- Shared card look ---------- */
  .cpuk-card {
    background-color: #f8fafc;
    border-left: 0;
    border-radius: 0 6px 6px 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.03);
  }

  /* ---------- Custom icon family (inline SVG) ---------- */
  .cpuk-ico {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    flex-shrink: 0;
    display: block;
  }
  .cpuk-card-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: #e6f0fa;
    color: #0056b3;
    border-radius: 6px;
    margin-bottom: 14px;
  }

  /* ==========================================================
     1. HERO / ABOUT
     ========================================================== */
  .cpuk-hero-heading {
    font-size: 36px;
    font-weight: 800;
    color: #0b1a30;
    margin: 0 0 25px 0;
    line-height: 1.2;
    letter-spacing: -0.5px;
  }
  .cpuk-hero-heading span { color: #0056b3; }
  .cpuk-hero-text {
    font-size: 16px;
    line-height: 1.8;
    color: #4a5568;
    margin: 0 0 20px 0;
    max-width: 850px;
  }

  /* ==========================================================
     2. WHO WE ARE
     ========================================================== */
  .cpuk-split-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    margin-bottom: 35px;
    align-items: start;
  }
  .cpuk-intro-block p {
    font-size: 16px;
    line-height: 1.75;
    color: #4a5568;
    margin: 0 0 20px 0;
  }
  .cpuk-engagement-block {
    border-top: 3px solid #0056b3;
    padding-top: 15px;
  }
  .cpuk-engagement-block h3 {
    font-size: 16px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 16px 0;
  }
  .cpuk-bullet-list { list-style: none; padding: 0; margin: 0; }
  .cpuk-bullet-item {
    font-size: 15px;
    line-height: 1.65;
    color: #4a5568;
    position: relative;
    padding-left: 24px;
    margin-bottom: 14px;
  }
  .cpuk-bullet-item:last-child { margin-bottom: 0; }
  .cpuk-bullet-item::before {
    content: "\25C6";
    position: absolute;
    left: 0;
    top: 0;
    color: #0056b3;
    font-size: 11px;
    line-height: 24px;
  }

  /* ==========================================================
     3. WHAT WE DO
     ========================================================== */
  .cpuk-wwd-subheading {
    font-size: 18px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 20px 0;
  }
  .cpuk-feature-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 40px;
  }
  .cpuk-feature-row {
    display: flex;
    align-items: flex-start;
    background-color: #f8fafc;
    border-left: 0;
    padding: 16px 20px;
    border-radius: 0 6px 6px 0;
  }
  .cpuk-feature-icon {
    font-size: 14px;
    color: #0056b3;
    margin-right: 16px;
    margin-top: 2px;
    user-select: none;
  }
  .cpuk-feature-content {
    font-size: 15px;
    line-height: 1.5;
    color: #4a5568;
    font-weight: 500;
  }

  /* ==========================================================
     4. FOCUS AREAS
     ========================================================== */
  .cpuk-focus-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 30px;
    margin-bottom: 40px;
  }
  .cpuk-focus-card { display: flex; align-items: flex-start; }
  .cpuk-icon-circle {
    min-width: 54px;
    max-width: 54px;
    height: 54px;
    background-color: #e6f0fa;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
    color: #0056b3;
    flex-shrink: 0;
  }
  .cpuk-icon-circle .cpuk-ico { width: 24px; height: 24px; }
  .cpuk-focus-content h3 {
    font-size: 18px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 8px 0;
  }
  .cpuk-focus-content p {
    font-size: 15px;
    line-height: 1.6;
    color: #4a5568;
    margin: 0;
  }

  /* ==========================================================
     5. COMPLAINT HANDLING  and  6. WHO CAN WE HELP (shared grid)
     ========================================================== */
  .cpuk-functions-grid,
  .cpuk-support-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 40px;
  }
  .cpuk-function-card { padding: 24px 20px; }
  .cpuk-function-card h3 {
    font-size: 17px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 10px 0;
  }
  .cpuk-function-card p {
    font-size: 14px;
    line-height: 1.6;
    color: #4a5568;
    margin: 0;
  }
  .cpuk-support-card { padding: 20px; }
  .cpuk-support-card h3 {
    font-size: 16px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 10px 0;
  }
  .cpuk-support-card p {
    font-size: 14px;
    line-height: 1.6;
    color: #4a5568;
    margin: 0;
  }

  /* ==========================================================
     7. HOW WE DIFFER
     ========================================================== */
  .cpuk-matrix-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 40px;
    margin-bottom: 40px;
  }
  .cpuk-matrix-col { display: flex; flex-direction: column; }
  .cpuk-matrix-header {
    font-size: 18px;
    font-weight: 700;
    color: #0b1a30;
    padding: 14px 0;
    border-bottom: 2px solid #0b1a30;
    margin-bottom: 10px;
  }
  .cpuk-matrix-row {
    display: flex;
    align-items: center;
    padding: 16px 12px;
    margin-bottom: 8px;
    border-radius: 6px;
    background-color: #f8fafc;
  }
  .cpuk-highlight-row {
    background-color: #f0f7ff;
    border-left: 0;
  }
  .cpuk-matrix-icon {
    font-size: 16px;
    font-weight: bold;
    margin-right: 16px;
    width: 20px;
    text-align: center;
    flex-shrink: 0;
    user-select: none;
  }
  .cpuk-icon-cross { color: #c53030; }
  .cpuk-icon-check { color: #2f855a; }
  .cpuk-matrix-content {
    font-size: 15px;
    line-height: 1.5;
    color: #4a5568;
    font-weight: 500;
  }
  .cpuk-highlight-row .cpuk-matrix-content {
    color: #2d3748;
    font-weight: 600;
  }

  /* ==========================================================
     8. OUR STRUCTURE (CIC)
     ========================================================== */
  .cpuk-cic-grid {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 40px;
    margin-bottom: 40px;
    align-items: start;
  }
  .cpuk-cic-context p {
    font-size: 16px;
    line-height: 1.8;
    color: #4a5568;
    margin: 0 0 20px 0;
  }
  .cpuk-pillars-stack {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .cpuk-pillar-card {
    display: flex;
    align-items: flex-start;
    padding: 18px 20px;
  }
  .cpuk-pillar-badge {
    min-width: 36px;
    max-width: 36px;
    height: 36px;
    background-color: #e6f0fa;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 18px;
    color: #0056b3;
    flex-shrink: 0;
  }
  .cpuk-pillar-badge .cpuk-ico { width: 18px; height: 18px; }
  .cpuk-pillar-content h3 {
    font-size: 16px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 6px 0;
  }
  .cpuk-pillar-content p {
    font-size: 14px;
    line-height: 1.5;
    color: #4a5568;
    margin: 0;
  }

  /* ==========================================================
     9. METHODOLOGY
     ========================================================== */
  .cpuk-steps-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-bottom: 40px;
  }
  .cpuk-step-row {
    display: flex;
    align-items: flex-start;
    padding: 20px;
  }
  .cpuk-full-width-step { grid-column: span 2; }
  .cpuk-step-num {
    font-size: 20px;
    font-weight: 800;
    color: #0056b3;
    background-color: #e6f0fa;
    padding: 6px 12px;
    border-radius: 4px;
    margin-right: 20px;
    min-width: 28px;
    text-align: center;
    flex-shrink: 0;
    user-select: none;
  }
  .cpuk-step-content h3 {
    font-size: 18px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 8px 0;
  }
  .cpuk-step-content p {
    font-size: 15px;
    line-height: 1.6;
    color: #4a5568;
    margin: 0;
  }

  /* ==========================================================
     10. PRINCIPLES, 11. WHY CPUK EXISTS, 12. TESTIMONIALS
     ========================================================== */
  .cpuk-principles-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 40px;
  }
  .cpuk-principle-card {
    padding: 24px 18px;
    display: flex;
    flex-direction: column;
  }
  .cpuk-principle-card h3 {
    font-size: 16px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 10px 0;
    line-height: 1.3;
  }
  .cpuk-principle-card p {
    font-size: 13.5px;
    line-height: 1.6;
    color: #4a5568;
    margin: 0;
  }

  .cpuk-purpose-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 40px;
  }
  .cpuk-purpose-card {
    padding: 24px 20px;
    display: flex;
    flex-direction: column;
  }
  .cpuk-purpose-card h3 {
    font-size: 17px;
    font-weight: 700;
    color: #0b1a30;
    margin: 0 0 10px 0;
    line-height: 1.3;
  }
  .cpuk-purpose-card p {
    font-size: 14px;
    line-height: 1.6;
    color: #4a5568;
    margin: 0;
  }

  .cpuk-reviews-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 20px;
  }
  .cpuk-review-card {
    padding: 24px 18px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .cpuk-quote-mark {
    font-size: 36px;
    line-height: 1;
    font-weight: bold;
    color: #0056b3;
    opacity: 0.2;
    margin-bottom: -10px;
    font-family: Georgia, serif;
    user-select: none;
  }
  .cpuk-review-card p {
    font-size: 13.5px;
    line-height: 1.6;
    color: #4a5568;
    margin: 0 0 20px 0;
    flex-grow: 1;
  }
  .cpuk-reviewer-profile {
    display: flex;
    align-items: center;
    border-top: 1px solid #e2e8f0;
    padding-top: 14px;
  }
  .cpuk-reviewer-avatar {
    min-width: 36px;
    max-width: 36px;
    height: 36px;
    background-color: #0b1a30;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    margin-right: 12px;
    flex-shrink: 0;
    user-select: none;
  }
  .cpuk-reviewer-details { display: flex; flex-direction: column; }
  .cpuk-reviewer-name {
    font-size: 13.5px;
    font-weight: 700;
    color: #0b1a30;
    line-height: 1.2;
  }
  .cpuk-reviewer-location {
    font-size: 11px;
    color: #718096;
    margin-top: 2px;
  }
  .cpuk-stars {
    color: #dd6b20;
    font-size: 11px;
    margin-bottom: 4px;
    letter-spacing: 1px;
    user-select: none;
  }

  /* ==========================================================
     13. FOOTER
     ========================================================== */
  .cpuk-footer {
    background-color: #0b1a30;
    padding: 60px 20px 30px 20px;
    color: #ffffff;
    overflow: visible;
  }
  .cpuk-footer-main-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.9fr 0.9fr 1fr;
    gap: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .cpuk-footer-brand-title {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: 0.5px;
    margin: 0 0 15px 0;
    color: #ffffff;
  }
  .cpuk-footer-brand-title span { color: #3182ce; }
  .cpuk-footer-brand-desc {
    font-size: 13px;
    line-height: 1.6;
    color: #a0aec0;
    margin: 0 0 20px 0;
  }
  .cpuk-cic-status-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    color: #3182ce;
    background-color: rgba(49, 130, 206, 0.1);
    border: 1px solid rgba(49, 130, 206, 0.3);
    padding: 5px 12px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }
  .cpuk-footer-col h3 {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #ffffff;
    margin: 0 0 20px 0;
    border-bottom: 2px solid rgba(255, 255, 255, 0.1);
    padding-bottom: 8px;
  }
  .cpuk-footer-links { list-style: none; padding: 0; margin: 0; }
  .cpuk-footer-links li {
    margin-bottom: 12px;
    font-size: 13.5px;
    color: #a0aec0;
  }
  .cpuk-footer a {
    color: #a0aec0;
    text-decoration: none;
  }
  .cpuk-footer a:hover,
  .cpuk-footer a:focus { color: #ffffff; text-decoration: underline; }
  .cpuk-contact-item {
    font-size: 13.5px;
    line-height: 1.6;
    color: #a0aec0;
    margin-bottom: 14px;
  }
  .cpuk-contact-item strong { color: #ffffff; }
  .cpuk-call-note { font-size: 12px; color: #8fa0b5; }
  .cpuk-footer-disclaimer {
    font-size: 11.5px;
    line-height: 1.6;
    color: #8fa0b5;
    padding: 30px 0;
    margin: 0;
  }
  .cpuk-footer-bottom-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 12px;
    color: #8fa0b5;
  }

  /* ==========================================================
     RESPONSIVE - box layouts keep their own step points
     ========================================================== */
  @media (max-width: 950px) {
    .cpuk-principles-grid,
    .cpuk-reviews-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 24px;
    }
  }
  @media (max-width: 900px) {
    .cpuk-functions-grid,
    .cpuk-support-grid {
      grid-template-columns: repeat(2, 1fr);
    }
    .cpuk-footer-main-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 30px;
    }
  }
  @media (max-width: 850px) {
    .cpuk-purpose-grid {
      grid-template-columns: 1fr;
      gap: 20px;
    }
  }
  @media (max-width: 600px) {
    .cpuk-functions-grid,
    .cpuk-support-grid,
    .cpuk-reviews-grid {
      grid-template-columns: 1fr;
      gap: 16px;
    }
  }
  @media (max-width: 550px) {
    .cpuk-principles-grid {
      grid-template-columns: 1fr;
      gap: 16px;
    }
    .cpuk-footer-main-grid {
      grid-template-columns: 1fr;
      gap: 25px;
    }
  }

  /* ==========================================================
     RESPONSIVE - phone layout for spacing, headings and text
     (one shared switch point for every section)
     ========================================================== */
  @media (max-width: 768px) {
    .cpuk-block { padding: 30px 16px; }
    .cpuk-block--hero,
    .cpuk-block--functions,
    .cpuk-block--cic,
    .cpuk-block--principles,
    .cpuk-block--purpose,
    .cpuk-block--reviews { padding: 35px 16px; }

    .cpuk-heading { font-size: 26px; margin-bottom: 20px; }
    .cpuk-block--focus .cpuk-heading { margin-bottom: 30px; }
    .cpuk-block--cic .cpuk-heading { margin-bottom: 25px; }
    .cpuk-hero-heading { font-size: 28px; margin-bottom: 20px; }
    .cpuk-hero-text { font-size: 15px; line-height: 1.7; }
    .cpuk-lead { font-size: 15px; }
    .cpuk-blue-banner { padding: 20px 24px; }

    /* Who We Are */
    .cpuk-split-grid { grid-template-columns: 1fr; gap: 30px; }
    .cpuk-intro-block p, .cpuk-bullet-item { font-size: 15px; }
    .cpuk-engagement-block { padding-top: 20px; }

    /* What We Do */
    .cpuk-feature-row { padding: 14px 16px; }
    .cpuk-feature-content { font-size: 14px; }

    /* Focus Areas */
    .cpuk-focus-grid { grid-template-columns: 1fr; gap: 30px; }
    .cpuk-focus-content h3 { font-size: 16px; }
    .cpuk-focus-content p { font-size: 14px; }

    /* How We Differ */
    .cpuk-matrix-grid { grid-template-columns: 1fr; gap: 30px; }
    .cpuk-matrix-header { font-size: 16px; padding-bottom: 8px; }
    .cpuk-matrix-row { padding: 12px 10px; }
    .cpuk-matrix-content { font-size: 14px; }

    /* Our Structure */
    .cpuk-cic-grid { grid-template-columns: 1fr; gap: 30px; }
    .cpuk-cic-context p { font-size: 15px; }

    /* Methodology */
    .cpuk-steps-grid { grid-template-columns: 1fr; }
    .cpuk-full-width-step { grid-column: span 1; }
    .cpuk-step-row { padding: 16px; }
    .cpuk-step-content h3 { font-size: 16px; }
    .cpuk-step-content p { font-size: 14px; }

    /* Footer */
    .cpuk-footer { padding: 40px 16px 20px 16px; }
    .cpuk-footer-bottom-row {
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
    }
  }

/* theme overrides */
.cpuk-megablock .cpuk-heading{text-transform:none;letter-spacing:0;font-size:34px}
.cpuk-megablock>.cpuk-block:nth-of-type(even){background:#eef4fb}
.cpuk-megablock>.cpuk-block:nth-of-type(even) .cpuk-card,.cpuk-megablock>.cpuk-block:nth-of-type(even) .cpuk-feature-row,.cpuk-megablock>.cpuk-block:nth-of-type(even) .cpuk-matrix-row{background:#fff}
.cpuk-megablock .cpuk-card-badge,.cpuk-megablock .cpuk-pillar-badge,.cpuk-megablock .cpuk-icon-circle{background:#e6f0fa;color:#0056b3}
.cpuk-megablock .cpuk-lead,.cpuk-megablock .cpuk-hero-text{font-size:18px}
.cpuk-megablock .cpuk-blue-banner{background:linear-gradient(135deg,#0b1a30,#0f2a54)}
@media(max-width:768px){.cpuk-megablock .cpuk-heading{font-size:27px}}

/* v46 about: straight facts + people */
.cpuk-block--facts,.cpuk-block--people{padding:50px 20px}
.cpuk-block--people{background:#eef4fb}
.cpuk-facts-grid,.cpuk-people-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:8px}
.cpuk-fact,.cpuk-person{padding:24px 22px}
.cpuk-fact h3,.cpuk-person h3{font-size:19px;font-weight:700;color:#0b1a30;margin:0 0 12px;line-height:1.3}
.cpuk-person{text-align:center;display:flex;flex-direction:column;align-items:center}
.cpuk-person h3{margin:14px 0 2px}
.cpuk-person p{font-size:15px;line-height:1.6;color:#4a5568;margin:0}
.cpuk-person .cpuk-person-role{font-weight:700;color:#0056b3;margin:0 0 10px;text-transform:uppercase;letter-spacing:.06em;font-size:12.5px}
.cpuk-photo{width:180px;height:180px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 6px 18px rgba(11,26,48,.22);background:#dbe7f7}
.cpuk-photo-ph{display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:800;color:#fff;background:linear-gradient(135deg,#0b3d91,#2b6cb0)}
.cpuk-people-contact{text-align:center;margin:26px 0 0;font-size:15px;color:#4a5568}
@media(max-width:700px){.cpuk-facts-grid,.cpuk-people-grid{grid-template-columns:1fr}.cpuk-photo{width:150px;height:150px}}
.cpuk-person .cpuk-quote{font-style:italic;color:#2d3748}
.cpuk-photo-ph{overflow:hidden;align-items:flex-end}.cpuk-photo-ph svg{display:block}

/* v46 about hero image */
.cpuk-hero-img{position:relative;margin:28px 0 8px;border-radius:16px;overflow:hidden;box-shadow:0 14px 34px rgba(11,26,48,.25);background:#0b1a30}
.cpuk-hero-img img{display:block;width:100%;height:440px;object-fit:cover;object-position:50% 50%}
.cpuk-hero-img figcaption{position:absolute;left:0;right:0;bottom:0;padding:54px 28px 22px;color:#fff;font-size:26px;font-weight:800;line-height:1.2;letter-spacing:-.2px;background:linear-gradient(180deg,rgba(11,26,48,0),rgba(11,26,48,.82));text-shadow:0 2px 10px rgba(0,0,0,.4)}
@media(max-width:700px){.cpuk-hero-img img{height:300px;object-position:50% 60%}.cpuk-hero-img figcaption{font-size:19px;padding:44px 16px 14px}}

/* v46b About page: white / navy gradient bands */
.cpuk-block--hero,.cpuk-block--wwd,.cpuk-block--functions,.cpuk-block--compare,.cpuk-block--methodology,.cpuk-block--principles,.cpuk-block--purpose,.cpuk-block--facts{background:#fff}
.cpuk-block--about,.cpuk-block--focus,.cpuk-block--support,.cpuk-block--cic,.cpuk-block--NOREV,.cpuk-block--people{background:linear-gradient(135deg,#0b1a30,#16407a);color:#fff}
.cpuk-block--about .cpuk-heading,.cpuk-block--focus .cpuk-heading,.cpuk-block--support .cpuk-heading,.cpuk-block--cic .cpuk-heading,.cpuk-block--NOREV .cpuk-heading,.cpuk-block--people .cpuk-heading{color:#fff}
.cpuk-block--about .cpuk-lead,.cpuk-block--focus .cpuk-lead,.cpuk-block--support .cpuk-lead,.cpuk-block--cic .cpuk-lead,.cpuk-block--NOREV .cpuk-lead,.cpuk-block--people .cpuk-lead,.cpuk-block--about .cpuk-intro-block p,.cpuk-block--focus .cpuk-intro-block p,.cpuk-block--support .cpuk-intro-block p,.cpuk-block--cic .cpuk-intro-block p,.cpuk-block--NOREV .cpuk-intro-block p,.cpuk-block--people .cpuk-intro-block p,.cpuk-block--about .cpuk-engagement-block p,.cpuk-block--focus .cpuk-engagement-block p,.cpuk-block--support .cpuk-engagement-block p,.cpuk-block--cic .cpuk-engagement-block p,.cpuk-block--NOREV .cpuk-engagement-block p,.cpuk-block--people .cpuk-engagement-block p,.cpuk-block--about .cpuk-bullet-item,.cpuk-block--focus .cpuk-bullet-item,.cpuk-block--support .cpuk-bullet-item,.cpuk-block--cic .cpuk-bullet-item,.cpuk-block--NOREV .cpuk-bullet-item,.cpuk-block--people .cpuk-bullet-item,.cpuk-block--about .cpuk-cic-context p,.cpuk-block--focus .cpuk-cic-context p,.cpuk-block--support .cpuk-cic-context p,.cpuk-block--cic .cpuk-cic-context p,.cpuk-block--NOREV .cpuk-cic-context p,.cpuk-block--people .cpuk-cic-context p,.cpuk-block--about .cpuk-people-contact,.cpuk-block--focus .cpuk-people-contact,.cpuk-block--support .cpuk-people-contact,.cpuk-block--cic .cpuk-people-contact,.cpuk-block--NOREV .cpuk-people-contact,.cpuk-block--people .cpuk-people-contact{color:#fff}
.cpuk-block--about .cpuk-section-tag,.cpuk-block--focus .cpuk-section-tag,.cpuk-block--support .cpuk-section-tag,.cpuk-block--cic .cpuk-section-tag,.cpuk-block--NOREV .cpuk-section-tag,.cpuk-block--people .cpuk-section-tag{color:#fff}
.cpuk-block--about .cpuk-blue-banner,.cpuk-block--focus .cpuk-blue-banner,.cpuk-block--support .cpuk-blue-banner,.cpuk-block--cic .cpuk-blue-banner,.cpuk-block--NOREV .cpuk-blue-banner,.cpuk-block--people .cpuk-blue-banner{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3);color:#fff}
.cpuk-block--about .cpuk-card,.cpuk-block--focus .cpuk-card,.cpuk-block--support .cpuk-card,.cpuk-block--cic .cpuk-card,.cpuk-block--NOREV .cpuk-card,.cpuk-block--people .cpuk-card{color:#0f1f3a}
.cpuk-block--about .cpuk-people-contact a,.cpuk-block--focus .cpuk-people-contact a,.cpuk-block--support .cpuk-people-contact a,.cpuk-block--cic .cpuk-people-contact a,.cpuk-block--NOREV .cpuk-people-contact a,.cpuk-block--people .cpuk-people-contact a{color:#fff}
.cpuk-block--about h3,.cpuk-block--focus h3,.cpuk-block--support h3,.cpuk-block--cic h3,.cpuk-block--NOREV h3,.cpuk-block--people h3,.cpuk-block--about h4,.cpuk-block--focus h4,.cpuk-block--support h4,.cpuk-block--cic h4,.cpuk-block--NOREV h4,.cpuk-block--people h4,.cpuk-block--about strong,.cpuk-block--focus strong,.cpuk-block--support strong,.cpuk-block--cic strong,.cpuk-block--NOREV strong,.cpuk-block--people strong{color:#fff}
.cpuk-block--about p,.cpuk-block--focus p,.cpuk-block--support p,.cpuk-block--cic p,.cpuk-block--NOREV p,.cpuk-block--people p,.cpuk-block--about li,.cpuk-block--focus li,.cpuk-block--support li,.cpuk-block--cic li,.cpuk-block--NOREV li,.cpuk-block--people li{color:#fff}
.cpuk-block--about a,.cpuk-block--focus a,.cpuk-block--support a,.cpuk-block--cic a,.cpuk-block--NOREV a,.cpuk-block--people a{color:#fff}
.cpuk-block--about .cpuk-card h3,.cpuk-block--focus .cpuk-card h3,.cpuk-block--support .cpuk-card h3,.cpuk-block--cic .cpuk-card h3,.cpuk-block--NOREV .cpuk-card h3,.cpuk-block--people .cpuk-card h3,.cpuk-block--about .cpuk-card h4,.cpuk-block--focus .cpuk-card h4,.cpuk-block--support .cpuk-card h4,.cpuk-block--cic .cpuk-card h4,.cpuk-block--NOREV .cpuk-card h4,.cpuk-block--people .cpuk-card h4,.cpuk-block--about .cpuk-card strong,.cpuk-block--focus .cpuk-card strong,.cpuk-block--support .cpuk-card strong,.cpuk-block--cic .cpuk-card strong,.cpuk-block--NOREV .cpuk-card strong,.cpuk-block--people .cpuk-card strong,.cpuk-block--about .cpuk-card .cpuk-person-role,.cpuk-block--focus .cpuk-card .cpuk-person-role,.cpuk-block--support .cpuk-card .cpuk-person-role,.cpuk-block--cic .cpuk-card .cpuk-person-role,.cpuk-block--NOREV .cpuk-card .cpuk-person-role,.cpuk-block--people .cpuk-card .cpuk-person-role{color:#0f1f3a}
.cpuk-block--about .cpuk-card p,.cpuk-block--focus .cpuk-card p,.cpuk-block--support .cpuk-card p,.cpuk-block--cic .cpuk-card p,.cpuk-block--NOREV .cpuk-card p,.cpuk-block--people .cpuk-card p,.cpuk-block--about .cpuk-card li,.cpuk-block--focus .cpuk-card li,.cpuk-block--support .cpuk-card li,.cpuk-block--cic .cpuk-card li,.cpuk-block--NOREV .cpuk-card li,.cpuk-block--people .cpuk-card li,.cpuk-block--about .cpuk-quote,.cpuk-block--focus .cpuk-quote,.cpuk-block--support .cpuk-quote,.cpuk-block--cic .cpuk-quote,.cpuk-block--NOREV .cpuk-quote,.cpuk-block--people .cpuk-quote{color:#334155}
.cpuk-block--about .cpuk-blue-banner,.cpuk-block--focus .cpuk-blue-banner,.cpuk-block--support .cpuk-blue-banner,.cpuk-block--cic .cpuk-blue-banner,.cpuk-block--NOREV .cpuk-blue-banner,.cpuk-block--people .cpuk-blue-banner,.cpuk-block--about .cpuk-blue-banner p,.cpuk-block--focus .cpuk-blue-banner p,.cpuk-block--support .cpuk-blue-banner p,.cpuk-block--cic .cpuk-blue-banner p,.cpuk-block--NOREV .cpuk-blue-banner p,.cpuk-block--people .cpuk-blue-banner p,.cpuk-block--about .cpuk-blue-banner strong,.cpuk-block--focus .cpuk-blue-banner strong,.cpuk-block--support .cpuk-blue-banner strong,.cpuk-block--cic .cpuk-blue-banner strong,.cpuk-block--NOREV .cpuk-blue-banner strong,.cpuk-block--people .cpuk-blue-banner strong{color:#fff}
.cpuk-block--about .cpuk-split-grid *{border-color:#3b82d6}
.cpuk-block--about a,.cpuk-block--focus a,.cpuk-block--support a,.cpuk-block--cic a,.cpuk-block--NOREV a,.cpuk-block--people a{text-decoration:underline}
.cpuk-block--about .cpuk-card a,.cpuk-block--focus .cpuk-card a,.cpuk-block--support .cpuk-card a,.cpuk-block--cic .cpuk-card a,.cpuk-block--people .cpuk-card a{color:#0b4fb3}
/* v46b logo watermarks on navy sections */
.cpuk-block--about,.cpuk-block--focus,.cpuk-block--support,.cpuk-block--cic,.cpuk-block--NOREV,.cpuk-block--people{position:relative;overflow:hidden}
.cpuk-block--about>.cpuk-container,.cpuk-block--focus>.cpuk-container,.cpuk-block--support>.cpuk-container,.cpuk-block--cic>.cpuk-container,.cpuk-block--NOREV>.cpuk-container,.cpuk-block--people>.cpuk-container{position:relative;z-index:1}
.cpuk-block--about:before{content:"";position:absolute;right:-40px;top:50%;width:340px;aspect-ratio:760/1005;background:url(shield.png) center/contain no-repeat;opacity:.1;transform:translateY(-50%) rotate(10deg);pointer-events:none}
.cpuk-block--focus:before{content:"";position:absolute;left:-50px;top:40%;width:320px;aspect-ratio:760/1005;background:url(shield.png) center/contain no-repeat;opacity:.1;transform:translateY(-50%) rotate(-12deg);pointer-events:none}
.cpuk-block--support:before{content:"";position:absolute;right:20px;bottom:-70px;width:360px;aspect-ratio:760/1005;background:url(shield.png) center/contain no-repeat;opacity:.1;transform:rotate(-8deg);pointer-events:none}
.cpuk-block--cic:before{content:"";position:absolute;left:-30px;bottom:-60px;width:330px;aspect-ratio:760/1005;background:url(shield.png) center/contain no-repeat;opacity:.1;transform:rotate(14deg);pointer-events:none}
.cpuk-block--NOREV:before{content:"";position:absolute;right:60px;top:-50px;width:300px;aspect-ratio:760/1005;background:url(shield.png) center/contain no-repeat;opacity:.1;transform:rotate(6deg);pointer-events:none}
.cpuk-block--people:before{content:"";position:absolute;left:30px;top:-60px;width:320px;aspect-ratio:760/1005;background:url(shield.png) center/contain no-repeat;opacity:.1;transform:rotate(-10deg);pointer-events:none}
@media(max-width:700px){.cpuk-block--about:before,.cpuk-block--focus:before,.cpuk-block--support:before,.cpuk-block--cic:before,.cpuk-block--NOREV:before,.cpuk-block--people:before{width:190px!important;opacity:.09}}
.cpuk-cic-grid{align-items:stretch}.cpuk-pillars-stack{display:flex;flex-direction:column}.cpuk-pillars-stack>.cpuk-pillar-card{flex:1;display:flex;align-items:center}

/* v46b hero stats */
.cpuk-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0 0}
.cpuk-stat{background:#f1f6fc;border:1px solid #d6e4f5;border-radius:12px;padding:16px 14px;text-align:center}
.cpuk-stat strong{display:block;font-size:30px;line-height:1.1;color:#0b3a8a;font-weight:800}
.cpuk-stat span{display:block;margin-top:6px;font-size:15px;color:#334155;line-height:1.35}
@media(max-width:700px){.cpuk-stats{grid-template-columns:1fr 1fr;gap:10px}.cpuk-stat{padding:12px 8px}.cpuk-stat strong{font-size:24px}.cpuk-stat span{font-size:14px}}
.cpuk-card,.cpuk-person,.cpuk-people-grid>*,.cpuk-facts-grid>*,.cpuk-megablock .cpuk-card{border-left:0!important;border-radius:10px}

/* v46b hero caption bar under the image */
.cpuk-hero-img figcaption{position:static;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 24px;padding:18px 28px;background:linear-gradient(135deg,#0b1a30,#16407a);text-shadow:none;font-size:24px}
.cpuk-hero-img figcaption small{font-size:15px;font-weight:600;color:#cfe0f5;letter-spacing:.2px}
@media(max-width:700px){.cpuk-hero-img figcaption{padding:14px 16px;font-size:19px}.cpuk-hero-img figcaption small{font-size:14px;flex-basis:100%}.cpuk-hero-img img{height:270px}}

/* v46c small icons next to the "What We Can Help With" titles */
.cpuk-support-card .cpuk-sup-h{display:flex;align-items:center;gap:10px}
.cpuk-support-card .cpuk-sup-h svg{width:22px;height:22px;flex:none;fill:none;stroke:#0056b3;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* ===== ABOUT THEME D (v47f) ===== white reading page, navy band + navy highlight cards */
main .cpuk-section-tag{display:none!important}
main .cpuk-heading,main .cpuk-hero-heading{font-family:Georgia,"Iowan Old Style","Palatino Linotype",Charter,"Times New Roman",serif!important;text-transform:none!important;letter-spacing:-.01em!important;color:#0e2a57!important;font-weight:700!important}
main .cpuk-block{background:#fff!important;background-image:none!important}
main .cpuk-block--hero{padding:0!important}
main .cpuk-hero-band{background:linear-gradient(135deg,#0b1a30 0%,#10305f 100%)!important;padding:56px 20px 64px!important}
main .cpuk-hero-band .cpuk-container{max-width:1000px;margin:0 auto}
main .cpuk-hero-band .cpuk-hero-heading{color:#fff!important;font-size:clamp(32px,4.4vw,50px)!important;line-height:1.1!important;margin:0 0 18px!important}
main .cpuk-hero-band .cpuk-hero-text{color:#e6eefb!important;font-size:18px;line-height:1.65;max-width:760px}
main .cpuk-hero-rest{padding:36px 20px 20px;max-width:1040px;margin:0 auto}
main .cpuk-stat{background:#fff!important;border:1px solid #d5e0ef!important;border-radius:14px!important;box-shadow:0 6px 18px rgba(11,26,48,.07)!important}
main .cpuk-stat strong{font-family:Georgia,"Times New Roman",serif!important;color:#0e2a57!important}
main .cpuk-stat span{color:#44556b!important}
/* all former dark blocks become white; text turns dark */
main .cpuk-block--about,main .cpuk-block--support,main .cpuk-block--cic,main .cpuk-block--people{color:#1b2a3d!important}
main .cpuk-block--about :is(p,li,span,strong,em),main .cpuk-block--support :is(p,li,span,strong,em),main .cpuk-block--cic :is(p,li,span,strong,em),main .cpuk-block--people :is(p,li,span,strong,em),main .cpuk-block--about .cpuk-lead,main .cpuk-block--support .cpuk-lead,main .cpuk-block--cic .cpuk-lead,main .cpuk-block--people .cpuk-lead{color:#1b2a3d!important}
main :is(.cpuk-block--about,.cpuk-block--support,.cpuk-block--cic,.cpuk-block--people) h3{color:#0e2a57!important}
main :is(.cpuk-block--about,.cpuk-block--support,.cpuk-block--cic,.cpuk-block--people) a:not(.cpuk-btn){color:#0b5fd6!important}
main :is(.cpuk-block--about,.cpuk-block--support,.cpuk-block--cic,.cpuk-block--people) :is(.cpuk-card,.cpuk-support-card,.cpuk-person,.cpuk-director){background:#fff!important;border:1px solid #d5e0ef!important;border-radius:14px!important;box-shadow:0 6px 18px rgba(11,26,48,.07)!important}
/* the navy highlight cards */
main .cpuk-engagement-block,main .cpuk-block--about .cpuk-blue-banner{background:linear-gradient(135deg,#0b1a30 0%,#10305f 100%)!important;border:0!important;border-radius:16px!important;box-shadow:0 10px 26px rgba(11,26,48,.25)!important}
main .cpuk-engagement-block,main .cpuk-engagement-block :is(h3,p,li,span,strong),main .cpuk-block--about .cpuk-blue-banner,main .cpuk-block--about .cpuk-blue-banner :is(p,em,strong){color:#fff!important}
main .cpuk-engagement-block h3{font-family:Georgia,"Times New Roman",serif!important;font-size:24px!important}
main .cpuk-engagement-block{padding:28px 30px!important}
main .cpuk-blue-banner{padding:24px 30px!important}
/* light cards */
main .cpuk-card,main .cpuk-step-row{background:#fff!important;border:1px solid #d5e0ef!important;border-radius:14px!important;box-shadow:0 6px 18px rgba(11,26,48,.07)!important}
main .cpuk-step-num{background:#dbe6f5!important;color:#0e2a57!important;font-family:Georgia,serif!important}
main .cpuk-block{padding-top:48px!important;padding-bottom:48px!important}
main .cpuk-block--hero{padding:0!important}
@media(max-width:700px){main .cpuk-hero-band{padding:34px 16px 40px}main .cpuk-block{padding-top:34px!important;padding-bottom:34px!important}}
main .cpuk-blue-banner:not(.x){background:#eef3fa;color:#1b2a3d;border-radius:14px;padding:20px 26px}
main .cpuk-block--about .cpuk-blue-banner{background:linear-gradient(135deg,#0b1a30 0%,#10305f 100%)}
main .cpuk-blue-banner :is(p,em,strong){color:#1b2a3d}
main .cpuk-block--about .cpuk-blue-banner :is(p,em,strong){color:#fff!important}
main .cpuk-block::before,main .cpuk-block::after,main .cpuk-container::before,main .cpuk-container::after{display:none!important}
main .cpuk-hero-band{padding-bottom:44px!important}
main .cpuk-hero-rest{padding-top:30px!important}
main .cpuk-hero-img figcaption{font-family:Georgia,"Iowan Old Style","Palatino Linotype",Charter,"Times New Roman",serif!important;font-weight:700!important;font-size:24px!important;letter-spacing:-.01em}
main .cpuk-hero-img figcaption small{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;font-weight:400!important;font-size:15px!important}
/* ===== end ABOUT THEME D ===== */

/* WHO WE ARE: two equal-height cards, symmetrical (v47g) */
main .cpuk-block--about .cpuk-split-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:28px!important;align-items:stretch!important}
main .cpuk-block--about .cpuk-intro-block{background:#fff;border:1px solid #d5e0ef;border-radius:16px;box-shadow:0 6px 18px rgba(11,26,48,.07);padding:30px 32px;display:flex;flex-direction:column;justify-content:center}
main .cpuk-block--about .cpuk-intro-block p{margin:0 0 16px;font-size:17px;line-height:1.7}
main .cpuk-block--about .cpuk-intro-block p:last-child{margin-bottom:0}
main .cpuk-block--about .cpuk-engagement-block{margin:0!important;padding:30px 32px!important;height:auto}
@media(max-width:860px){main .cpuk-block--about .cpuk-split-grid{grid-template-columns:1fr!important;gap:20px!important}main .cpuk-block--about .cpuk-intro-block,main .cpuk-block--about .cpuk-engagement-block{padding:24px 20px!important}}
main .cpuk-block--about .cpuk-engagement-block{display:flex;flex-direction:column}
main .cpuk-block--about .cpuk-engagement-block .cpuk-bullet-list{flex:1;display:flex;flex-direction:column;justify-content:space-between;margin:0;padding:0}
main .cpuk-block--about .cpuk-engagement-block h3{margin:0 0 18px}
