.hce-cvp26r,
.hce-cvp26r * { box-sizing: border-box; }

.hce-cvp26r {
  --cvp-navy: #173b5c;
  --cvp-blue: #236b96;
  --cvp-blue-deep: #165377;
  --cvp-teal: #147d83;
  --cvp-coral: #b85c58;
  --cvp-gold: #9b6422;
  --cvp-ink: #24394b;
  --cvp-muted: #506879;
  --cvp-line: #c7dce8;
  --cvp-mist: #eef7fc;
  --cvp-sky: #dceffa;
  --cvp-teal-soft: #e1f5f3;
  --cvp-rose: #fbeaec;
  --cvp-gold-soft: #fff2df;
  --cvp-white: #ffffff;
  background: linear-gradient(180deg, rgba(234,246,252,0.78), rgba(255,255,255,0) 960px);
  color: var(--cvp-ink);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(17px, 1.15vw, 19px);
  line-height: 1.72;
  margin: 0 0 0 50%;
  max-width: none;
  padding: 0 0 76px;
  transform: translateX(-50%);
  width: min(1180px, calc(100vw - 32px));
}

.hce-cvp26r a { color: var(--cvp-blue-deep); text-decoration-thickness: 0.09em; text-underline-offset: 0.15em; }
.hce-cvp26r a:hover,
.hce-cvp26r a:focus-visible { color: #794a13; }
.hce-cvp26r :focus-visible { outline: 3px solid var(--cvp-gold); outline-offset: 3px; }
.hce-cvp26r strong,
.hce-cvp26r b { color: var(--cvp-navy); }
.hce-cvp26r p { margin: 0 0 1.25em; }
.hce-cvp26r sup { font-size: 0.69em; line-height: 0; }
.hce-cvp26r sup a { font-weight: 850; margin-left: 0.14em; text-decoration: none; }
.hce-cvp26r h2,
.hce-cvp26r h3 { color: var(--cvp-navy); letter-spacing: -0.018em; line-height: 1.18; }
.hce-cvp26r h2 { font-size: clamp(34px, 4vw, 52px); margin: 0 0 24px; }

.hce-cvp26r > section { margin: 0 auto 78px; max-width: 930px; scroll-margin-top: 24px; }

.hce-cvp26r__intro {
  background: radial-gradient(circle at 86% 12%, rgba(255,255,255,0.9), transparent 30%), linear-gradient(125deg, var(--cvp-sky), var(--cvp-teal-soft) 56%, var(--cvp-rose));
  border: 1px solid #b9d7e4;
  border-radius: 0 0 28px 28px;
  box-shadow: 0 22px 52px rgba(23,59,92,0.12);
  margin: 0 0 34px;
  overflow: hidden;
  padding: clamp(34px, 6vw, 68px);
  position: relative;
}
.hce-cvp26r__intro::after { background: linear-gradient(90deg, var(--cvp-blue), var(--cvp-teal), var(--cvp-coral)); bottom: 0; content: ""; height: 8px; left: 0; position: absolute; width: 58%; }
.hce-cvp26r__eyebrow { color: var(--cvp-blue-deep); font-size: 17px; font-weight: 850; letter-spacing: 0.09em; margin-bottom: 12px; text-transform: uppercase; }
.hce-cvp26r__dek { color: var(--cvp-navy); font-size: clamp(25px, 3vw, 40px); font-weight: 730; line-height: 1.27; max-width: 960px; }
.hce-cvp26r__meta { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 26px; }
.hce-cvp26r__meta span { background: rgba(255,255,255,0.84); border: 1px solid #b7d4e3; border-radius: 999px; color: var(--cvp-ink); font-size: 17px; padding: 7px 12px; }

.hce-cvp26r__brief { background: linear-gradient(115deg, var(--cvp-gold-soft), #fffaf0); border: 1px solid #e1c68f; border-left: 7px solid var(--cvp-gold); border-radius: 16px; margin: 0 auto 70px; max-width: 980px; padding: clamp(24px, 4vw, 42px); }
.hce-cvp26r__brief > strong { display: block; font-size: 17px; letter-spacing: 0.09em; margin-bottom: 8px; text-transform: uppercase; }
.hce-cvp26r__brief p { font-size: 20px; margin-bottom: 0; }

.hce-cvp26r__visual,
.hce-cvp26r__photo { margin: 64px 0 80px; }
.hce-cvp26r__visual { background: rgba(255,255,255,0.97); border: 1px solid var(--cvp-line); border-radius: 22px; box-shadow: 0 20px 52px rgba(23,59,92,0.09); overflow: hidden; padding: clamp(24px, 4vw, 46px); }
.hce-cvp26r__visual figcaption { border-bottom: 1px solid var(--cvp-line); margin: 0 0 28px; padding-bottom: 18px; }
.hce-cvp26r__visual figcaption strong { display: block; font-size: clamp(26px, 3vw, 38px); line-height: 1.2; }
.hce-cvp26r__visual figcaption span { color: var(--cvp-muted); display: block; font-size: 17px; line-height: 1.5; margin-top: 8px; }
.hce-cvp26r__visual-note { background: var(--cvp-mist); border-left: 5px solid var(--cvp-blue); border-radius: 8px; color: var(--cvp-muted); font-size: 17px; margin: 22px 0 0; padding: 14px 16px; }

.hce-cvp26r__metric-grid { display: grid; gap: 14px; grid-template-columns: repeat(4, minmax(0,1fr)); }
.hce-cvp26r__metric { background: linear-gradient(160deg, var(--cvp-mist), var(--cvp-white)); border: 1px solid #c4dce8; border-radius: 14px; min-height: 244px; padding: 22px 18px; }
.hce-cvp26r__metric:nth-child(2) { background: linear-gradient(160deg, var(--cvp-teal-soft), var(--cvp-white)); }
.hce-cvp26r__metric:nth-child(3) { background: linear-gradient(160deg, var(--cvp-rose), var(--cvp-white)); }
.hce-cvp26r__metric:nth-child(4) { background: linear-gradient(160deg, var(--cvp-gold-soft), var(--cvp-white)); }
.hce-cvp26r__metric b { display: block; font-size: clamp(28px, 3vw, 40px); line-height: 1.08; }
.hce-cvp26r__metric span { color: var(--cvp-muted); display: block; font-size: 17px; line-height: 1.5; margin-top: 14px; }

.hce-cvp26r__flow-row { align-items: stretch; display: grid; gap: 8px; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); }
.hce-cvp26r__flow-row > div { background: var(--cvp-mist); border: 1px solid #c4dce8; border-radius: 12px; padding: 17px; }
.hce-cvp26r__flow-row > div:nth-of-type(even) { background: var(--cvp-teal-soft); }
.hce-cvp26r__flow-row b,
.hce-cvp26r__flow-row span { display: block; }
.hce-cvp26r__flow-row span { color: var(--cvp-muted); font-size: 17px; line-height: 1.5; margin-top: 6px; }
.hce-cvp26r__flow-row i { align-self: center; color: var(--cvp-gold); font-size: 28px; font-style: normal; font-weight: 850; }
.hce-cvp26r__loop { background: var(--cvp-gold-soft); border: 1px solid #dfc58e; border-radius: 999px; color: var(--cvp-ink); font-size: 17px; margin: 22px auto 0; max-width: 900px; padding: 13px 20px; text-align: center; }

.hce-cvp26r__photo img { background: var(--cvp-mist); border: 1px solid #c5dce7; border-radius: 20px; box-shadow: 0 20px 50px rgba(23,59,92,0.13); display: block; height: auto; object-fit: contain; width: 100%; }
.hce-cvp26r__photo figcaption { color: var(--cvp-muted); font-size: 17px; line-height: 1.55; margin: 14px auto 0; max-width: 930px; }

.hce-cvp26r__fishbone-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.hce-cvp26r__fishbone-grid article { background: var(--cvp-rose); border-top: 5px solid var(--cvp-coral); border-radius: 10px; min-height: 138px; padding: 17px; }
.hce-cvp26r__fishbone-grid article:nth-child(even) { background: var(--cvp-mist); border-top-color: var(--cvp-blue); }
.hce-cvp26r__fishbone-grid b,
.hce-cvp26r__fishbone-grid span { display: block; }
.hce-cvp26r__fishbone-grid span { color: var(--cvp-muted); font-size: 17px; line-height: 1.5; margin-top: 6px; }
.hce-cvp26r__fishbone-outcome { background: var(--cvp-gold-soft); border: 2px solid var(--cvp-gold); border-radius: 999px; color: var(--cvp-ink); font-size: 17px; margin: 20px auto 0; max-width: 680px; padding: 13px 22px; text-align: center; }

.hce-cvp26r__system-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.hce-cvp26r__system-grid article { background: var(--cvp-white); border: 1px solid var(--cvp-line); border-left: 6px solid var(--cvp-teal); border-radius: 10px; min-height: 130px; padding: 18px; }
.hce-cvp26r__system-grid article:nth-child(3n+2) { background: var(--cvp-mist); border-left-color: var(--cvp-blue); }
.hce-cvp26r__system-grid article:nth-child(3n) { background: var(--cvp-gold-soft); border-left-color: var(--cvp-gold); }
.hce-cvp26r__system-grid b,
.hce-cvp26r__system-grid span { display: block; }
.hce-cvp26r__system-grid span { color: var(--cvp-muted); font-size: 17px; line-height: 1.5; margin-top: 6px; }

.hce-cvp26r__table-wrap { overflow-x: auto; }
.hce-cvp26r table { border-collapse: collapse; font-size: 17px; line-height: 1.5; min-width: 900px; width: 100%; }
.hce-cvp26r th { background: var(--cvp-sky); color: var(--cvp-navy); font-weight: 780; text-align: left; }
.hce-cvp26r th,
.hce-cvp26r td { border: 1px solid var(--cvp-line); padding: 12px; vertical-align: top; }
.hce-cvp26r tbody tr:nth-child(even) { background: var(--cvp-mist); }

.hce-cvp26r__scorecard-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.hce-cvp26r__scorecard-grid article { background: var(--cvp-white); border: 1px solid var(--cvp-line); border-top: 6px solid var(--cvp-teal); border-radius: 10px; min-height: 140px; padding: 17px; }
.hce-cvp26r__scorecard-grid article:nth-child(even) { background: var(--cvp-mist); border-top-color: var(--cvp-blue); }
.hce-cvp26r__scorecard-grid b,
.hce-cvp26r__scorecard-grid span { display: block; }
.hce-cvp26r__scorecard-grid span { color: var(--cvp-muted); font-size: 17px; line-height: 1.5; margin-top: 6px; }

.hce-cvp26r__timeline-grid { display: grid; gap: 14px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.hce-cvp26r__timeline-grid article { background: linear-gradient(180deg, var(--cvp-gold-soft), var(--cvp-white)); border: 1px solid #e0c58c; border-radius: 14px; min-height: 180px; padding: 21px; }
.hce-cvp26r__timeline-grid article:nth-child(2) { background: linear-gradient(180deg, var(--cvp-sky), var(--cvp-white)); border-color: #b9d6e4; }
.hce-cvp26r__timeline-grid article:nth-child(3) { background: linear-gradient(180deg, var(--cvp-teal-soft), var(--cvp-white)); border-color: #b9dcd7; }
.hce-cvp26r__timeline-grid b { display: block; font-size: 18px; letter-spacing: 0.04em; text-transform: uppercase; }
.hce-cvp26r__timeline-grid span { color: var(--cvp-muted); display: block; font-size: 17px; line-height: 1.55; margin-top: 9px; }

.hce-cvp26r__related { background: linear-gradient(125deg, var(--cvp-sky), var(--cvp-teal-soft), var(--cvp-gold-soft)); border: 1px solid #b9d5e2; border-radius: 22px; margin: 0 auto 78px; max-width: 1040px; padding: clamp(28px, 5vw, 48px); }
.hce-cvp26r__related h2 { font-size: clamp(30px, 3vw, 42px); }
.hce-cvp26r__related-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.hce-cvp26r__related-grid a { background: rgba(255,255,255,0.86); border: 1px solid #bad4df; border-radius: 12px; color: var(--cvp-navy); padding: 18px; text-decoration: none; }
.hce-cvp26r__related-grid a:hover,
.hce-cvp26r__related-grid a:focus-visible { background: var(--cvp-white); color: #794a13; }
.hce-cvp26r__related-grid strong,
.hce-cvp26r__related-grid span { color: inherit; display: block; }
.hce-cvp26r__related-grid span { font-size: 17px; line-height: 1.5; margin-top: 6px; }

.hce-cvp26r > .hce-cvp26r__resources { background: linear-gradient(140deg, var(--cvp-mist), var(--cvp-rose)); border: 1px solid var(--cvp-line); border-radius: 18px; max-width: 1000px; padding: clamp(26px, 4vw, 42px); }
.hce-cvp26r__resources h2 { font-size: clamp(30px, 3vw, 42px); }
.hce-cvp26r__resources ul { columns: 2; gap: 42px; margin-bottom: 0; padding-left: 1.2em; }
.hce-cvp26r__resources li { break-inside: avoid; font-size: 17px; margin-bottom: 10px; }

.hce-cvp26r > .hce-cvp26r__references { border-top: 6px solid var(--cvp-teal); margin-top: 80px; max-width: 1000px; padding-top: 42px; }
.hce-cvp26r__references h2 { font-size: clamp(32px, 3.5vw, 46px); }
.hce-cvp26r__references ol { font-size: 17px; line-height: 1.55; padding-left: 1.55em; }
.hce-cvp26r__references li { margin-bottom: 13px; padding-left: 5px; scroll-margin-top: 24px; }

@media (max-width: 1060px) {
  .hce-cvp26r__scorecard-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 980px) {
  .hce-cvp26r__metric-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .hce-cvp26r__flow-row { grid-template-columns: 1fr; }
  .hce-cvp26r__flow-row i { justify-self: center; transform: rotate(90deg); }
}

@media (max-width: 760px) {
  .hce-cvp26r { font-size: 17px; margin-left: 0; transform: none; width: 100%; }
  .hce-cvp26r__intro { border-radius: 0 0 18px 18px; padding: 30px 20px; }
  .hce-cvp26r__meta { align-items: stretch; flex-direction: column; }
  .hce-cvp26r__meta span { border-radius: 9px; }
  .hce-cvp26r__metric-grid,
  .hce-cvp26r__fishbone-grid,
  .hce-cvp26r__system-grid,
  .hce-cvp26r__scorecard-grid,
  .hce-cvp26r__timeline-grid,
  .hce-cvp26r__related-grid { grid-template-columns: 1fr; }
  .hce-cvp26r__resources ul { columns: 1; }
  .hce-cvp26r__metric { min-height: 0; }
  .hce-cvp26r__visual { border-radius: 14px; padding: 21px 14px; }
  .hce-cvp26r__visual,
  .hce-cvp26r__photo { margin: 44px 0 58px; }
  .hce-cvp26r > section { margin-bottom: 60px; }
}

@media print {
  .hce-cvp26r { background: none; margin: 0; transform: none; width: 100%; }
  .hce-cvp26r__visual,
  .hce-cvp26r__photo img { break-inside: avoid; box-shadow: none; }
}
