.elementor-10775 .elementor-element.elementor-element-b49fe33{--display:flex;--min-height:90px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.8;}.elementor-10775 .elementor-element.elementor-element-b49fe33::before, .elementor-10775 .elementor-element.elementor-element-b49fe33 > .elementor-background-video-container::before, .elementor-10775 .elementor-element.elementor-element-b49fe33 > .e-con-inner > .elementor-background-video-container::before, .elementor-10775 .elementor-element.elementor-element-b49fe33 > .elementor-background-slideshow::before, .elementor-10775 .elementor-element.elementor-element-b49fe33 > .e-con-inner > .elementor-background-slideshow::before, .elementor-10775 .elementor-element.elementor-element-b49fe33 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-db2db28 );--background-overlay:'';}.elementor-10775 .elementor-element.elementor-element-b49fe33:not(.elementor-motion-effects-element-type-background), .elementor-10775 .elementor-element.elementor-element-b49fe33 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-10775 .elementor-element.elementor-element-b1e2639{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-10775 .elementor-element.elementor-element-61c687c{text-align:center;}.elementor-10775 .elementor-element.elementor-element-61c687c .elementor-heading-title{font-family:var( --e-global-typography-425825f-font-family ), Sans-serif;font-size:var( --e-global-typography-425825f-font-size );font-weight:var( --e-global-typography-425825f-font-weight );color:var( --e-global-color-e89f197 );}.elementor-10775 .elementor-element.elementor-element-429753a{--display:flex;}@media(max-width:1024px){.elementor-10775 .elementor-element.elementor-element-61c687c .elementor-heading-title{font-size:var( --e-global-typography-425825f-font-size );}}@media(max-width:767px){.elementor-10775 .elementor-element.elementor-element-61c687c .elementor-heading-title{font-size:var( --e-global-typography-425825f-font-size );}}/* Start custom CSS */<style>
  /* ── Astra/Elementor-compatible reset ── */
  .cc-role-report * { box-sizing: border-box; margin: 0; padding: 0; }

  .cc-role-report {
    font-family: inherit;
    color: #333;
    max-width: 860px;
    margin: 0 auto;
    padding: 0 16px 48px;
    line-height: 1.7;
  }

  /* ── Header ── */
  .ccr-header {
    background: #1a3a5c;
    color: #fff;
    padding: 36px 32px 32px;
    border-radius: 4px;
    margin-bottom: 32px;
  }
  .ccr-header .ccr-kicker {
    font-size: 0.78rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    opacity: 0.75;
    margin-bottom: 8px;
  }
  .ccr-header h1 {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 12px;
    color: #ffffff !important;
  }
  .ccr-header .ccr-meta {
    font-size: 0.875rem;
    opacity: 0.8;
    line-height: 1.5;
  }
  .ccr-header .ccr-sub {
    margin-top: 10px;
    font-size: 0.8rem;
    opacity: 0.7;
  }

  /* ── Methodology note ── */
  .ccr-methodology {
    background: #f0f4f8;
    border-left: 4px solid #1a3a5c;
    padding: 14px 18px;
    font-size: 0.875rem;
    color: #555;
    border-radius: 0 4px 4px 0;
    margin-bottom: 32px;
  }

  /* ── Section headings ── */
  .ccr-section {
    margin-bottom: 40px;
  }
  .ccr-section-title {
    font-size: 1.2rem;
    font-weight: 700;
    color: #1a3a5c;
    border-bottom: 2px solid #1a3a5c;
    padding-bottom: 6px;
    margin-bottom: 18px;
  }
  .ccr-section p {
    margin-bottom: 14px;
    font-size: 0.95rem;
  }
  .ccr-section p:last-child { margin-bottom: 0; }

  /* ── Stat blocks ── */
  .ccr-stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 16px;
    margin-bottom: 32px;
  }
  .ccr-stat {
    background: #1a3a5c;
    color: #fff;
    border-radius: 4px;
    padding: 20px 16px;
    text-align: center;
  }
  .ccr-stat .ccr-stat-num {
    font-size: 2.4rem;
    font-weight: 800;
    line-height: 1;
    display: block;
    margin-bottom: 6px;
  }
  .ccr-stat .ccr-stat-label {
    font-size: 0.78rem;
    line-height: 1.4;
    opacity: 0.85;
  }
  .ccr-stat.ccr-stat-accent { background: #c0392b; }
  .ccr-stat.ccr-stat-mid   { background: #2e6da4; }

  /* ── Chart containers ── */
  .ccr-charts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    margin-bottom: 32px;
  }
  .ccr-chart-card {
    background: #fff;
    border: 1px solid #dde3ea;
    border-radius: 4px;
    padding: 20px;
  }
  .ccr-chart-card h3 {
    font-size: 0.85rem;
    font-weight: 600;
    color: #1a3a5c;
    margin-bottom: 14px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .ccr-chart-card canvas { max-height: 220px; }

  .ccr-chart-full {
    background: #fff;
    border: 1px solid #dde3ea;
    border-radius: 4px;
    padding: 20px;
    margin-bottom: 32px;
  }
  .ccr-chart-full h3 {
    font-size: 0.85rem;
    font-weight: 600;
    color: #1a3a5c;
    margin-bottom: 14px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .ccr-chart-full canvas { max-height: 260px; }

  /* ── Data table ── */
  .ccr-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
    margin-bottom: 18px;
  }
  .ccr-table th {
    background: #1a3a5c;
    color: #fff;
    text-align: left;
    padding: 8px 12px;
    font-weight: 600;
  }
  .ccr-table td {
    padding: 7px 12px;
    border-bottom: 1px solid #e8edf2;
  }
  .ccr-table tr:nth-child(even) td { background: #f5f7fa; }

  /* ── Blockquotes ── */
  .ccr-quote {
    border-left: 3px solid #2e6da4;
    padding: 10px 16px;
    margin: 16px 0;
    background: #f5f8fb;
    font-size: 0.9rem;
    font-style: italic;
    color: #444;
    border-radius: 0 4px 4px 0;
  }

  /* ── Warning callout ── */
  .ccr-warning {
    background: #fdf3f2;
    border-left: 4px solid #c0392b;
    padding: 14px 18px;
    font-size: 0.9rem;
    border-radius: 0 4px 4px 0;
    margin-bottom: 14px;
  }

  /* ── Recommendations list ── */
  .ccr-recs {
    list-style: none;
    padding: 0;
    counter-reset: rec-counter;
  }
  .ccr-recs li {
    padding: 10px 14px 10px 42px;
    border-bottom: 1px solid #e8edf2;
    font-size: 0.9rem;
    position: relative;
  }
  .ccr-recs li:last-child { border-bottom: none; }
  .ccr-recs li::before {
    content: counter(rec-counter);
    counter-increment: rec-counter;
    position: absolute;
    left: 12px;
    top: 10px;
    background: #1a3a5c;
    color: #fff;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    font-size: 0.72rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
  }

  /* ── Conclusion ── */
  .ccr-conclusion {
    background: #f0f4f8;
    border-radius: 4px;
    padding: 24px 28px;
    margin-bottom: 32px;
  }
  .ccr-conclusion p {
    font-size: 0.95rem;
    margin-bottom: 12px;
  }
  .ccr-conclusion p:last-child { margin-bottom: 0; }

  /* ── Signatory ── */
  .ccr-sig-wrap {
    margin-top: 16px;
  }
  .ccr-sig {
    display: inline-block;
    background: #1a3a5c;
    color: #fff;
    padding: 6px 14px;
    border-radius: 3px;
    font-size: 0.82rem;
    font-weight: 600;
  }

  @media (max-width: 540px) {
    .ccr-header h1 { font-size: 1.4rem; }
    .ccr-stat .ccr-stat-num { font-size: 1.9rem; }
    .ccr-charts-grid { grid-template-columns: 1fr; }
  }
</style>
</head>/* End custom CSS */