/* sdc-case-hub.css | Static, manually maintained BlueMonkey hub.
   Scope: .pot-page.case-hub only. Load once after site CSS.
   No global reset, layout-template overrides, Font Awesome or JavaScript dependency. */
.pot-page.case-hub {
  --ch-navy:#41567c;
  --ch-dark:#35435c;
  --ch-yellow:#d3be00;
  --ch-pale:#ecf4f8;
  --ch-line:#d0cbc1;
  color:#333;
  font:inherit;
  font-size:16px;
  line-height:1.85;
  min-width:0;
  margin:0;
  padding:0;
  text-align:left;
  overflow-wrap:anywhere;
  box-sizing:border-box;
}
.pot-page.case-hub .ch-hero {
  position:relative;
  padding:27px 32px 28px;
  background:var(--ch-navy);
  border:0;
  border-bottom:5px solid var(--ch-yellow);
  color:#fff;
  box-sizing:border-box;
}
.pot-page.case-hub .ch-eyebrow {
  margin:0 0 4px;
  padding:0;
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  line-height:1.7;
}
.pot-page.case-hub .ch-page-title {
  margin:0;
  padding:0;
  border:0;
  background:none;
  color:#fff;
  font-size:32px;
  font-weight:700;
  line-height:1.5;
  letter-spacing:.06em;
}
.pot-page.case-hub .ch-hero-lead {
  margin:10px 0 0;
  padding:0;
  color:#fff;
  font-size:14px;
  line-height:1.9;
  letter-spacing:.01em;
}
.pot-page.case-hub .ch-introduction { padding:28px 0 32px; }
.pot-page.case-hub .ch-intro-text { margin:0; padding:0; font-size:15px; line-height:2; }
.pot-page.case-hub .ch-list-title {
  position:relative;
  margin:0 0 24px;
  padding:0 0 13px;
  border:0;
  border-bottom:3px solid var(--ch-line);
  background:none;
  color:var(--ch-navy);
  font-size:24px;
  font-weight:700;
  line-height:1.55;
  letter-spacing:.04em;
}
.pot-page.case-hub .ch-list-title::after {
  content:""; position:absolute; left:0; bottom:-3px;
  width:80px; height:3px; background:var(--ch-yellow);
}
.pot-page.case-hub .ch-card { margin:0 0 28px; padding:0; min-width:0; }
.pot-page.case-hub .ch-card-link {
  display:grid;
  grid-template-columns:minmax(0, .91fr) minmax(0, 1.09fr);
  align-items:start;
  gap:0;
  padding:0;
  margin:0;
  border:1px solid #d6dce3;
  border-bottom:3px solid var(--ch-navy);
  border-radius:0;
  background:#fff;
  color:var(--ch-navy);
  text-decoration:none;
  opacity:1;
  box-sizing:border-box;
  transition:border-color .18s ease, box-shadow .18s ease;
}
.pot-page.case-hub .ch-card-visual {
  min-width:0;
  padding:20px 0 20px 20px;
  box-sizing:border-box;
}
.pot-page.case-hub .ch-card-image {
  display:block;
  margin:0;
  padding:0;
  width:100%;
  max-width:100%;
  height:auto;
  border:0;
  border-radius:0;
  vertical-align:bottom;
  opacity:1;
}
.pot-page.case-hub .ch-card-body { min-width:0; padding:20px 24px 22px; box-sizing:border-box; }
.pot-page.case-hub .ch-service-label {
  display:inline-block;
  max-width:100%;
  box-sizing:border-box;
  margin:0 0 14px;
  padding:4px 9px;
  background:var(--ch-pale);
  color:var(--ch-navy);
  border:1px solid #d9e4ed;
  font-size:12px;
  font-weight:700;
  line-height:1.65;
  letter-spacing:0;
}
.pot-page.case-hub .ch-company { margin:0 0 10px; padding:0; color:#333; font-size:16px; font-weight:700; line-height:1.7; }
.pot-page.case-hub .ch-card-title {
  margin:0 0 14px;
  padding:0;
  border:0;
  background:none;
  color:var(--ch-navy);
  font-size:21px;
  font-weight:700;
  line-height:1.75;
  letter-spacing:.01em;
}
.pot-page.case-hub .ch-card-summary { margin:0 0 20px; padding:0; color:#555; font-size:14px; line-height:1.95; }
.pot-page.case-hub .ch-card-cta {
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:13px;
  padding-top:14px;
  border-top:1px solid #e3e7ec;
  color:var(--ch-navy);
  font-size:14px;
  font-weight:700;
  line-height:1.65;
}
.pot-page.case-hub .ch-arrow {
  position:relative;
  display:inline-block;
  width:20px;
  height:12px;
  flex:0 0 20px;
  color:var(--ch-navy);
}
.pot-page.case-hub .ch-arrow::before {
  content:""; position:absolute; width:19px; height:1px; left:0; top:6px;
  background:currentColor;
}
.pot-page.case-hub .ch-arrow::after {
  content:""; position:absolute; right:1px; top:3px; width:6px; height:6px;
  border-top:1px solid currentColor; border-right:1px solid currentColor;
  transform:rotate(45deg);
}
.pot-page.case-hub .ch-card-link:hover {
  text-decoration:none; color:var(--ch-navy); opacity:1;
  border-color:#97a7bb; border-bottom-color:var(--ch-navy);
  box-shadow:0 4px 16px rgba(53,67,92,.10);
}
.pot-page.case-hub .ch-card-link:hover .ch-card-image { opacity:1; }
.pot-page.case-hub .ch-card-link:hover .ch-card-title { text-decoration:underline; text-underline-offset:4px; }
.pot-page.case-hub .ch-card-link:focus-visible,
.pot-page.case-hub .ch-side-service:focus-visible,
.pot-page.case-hub .ch-side-link:focus-visible,
.pot-page.case-hub .ch-breadcrumb a:focus-visible { outline:3px solid var(--ch-navy); outline-offset:4px; }
.pot-page.case-hub .ch-unbroken { white-space:nowrap; }
.pot-page.case-hub .ch-sidebar { margin:0; padding:0; }
.pot-page.case-hub .ch-side-section { margin:0 0 30px; padding:0; }
.pot-page.case-hub .ch-side-title {
  margin:0;
  padding:13px 15px;
  border:0;
  border-left:4px solid var(--ch-yellow);
  background:var(--ch-pale);
  color:var(--ch-navy);
  font-size:17px;
  font-weight:700;
  line-height:1.7;
  letter-spacing:.02em;
}
.pot-page.case-hub .ch-side-note { margin:0; padding:15px 13px 0; color:#666; font-size:12px; line-height:1.8; }
.pot-page.case-hub .ch-side-list { margin:0; padding:0; list-style:none; }
.pot-page.case-hub .ch-side-list li { margin:0; padding:0; border-bottom:1px solid #d6dce3; list-style:none; }
.pot-page.case-hub .ch-side-service,
.pot-page.case-hub .ch-side-link {
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:space-between;
  padding:16px 13px;
  color:var(--ch-navy);
  background:transparent;
  font-size:14px;
  font-weight:700;
  line-height:1.8;
  text-decoration:none;
  opacity:1;
  box-sizing:border-box;
}
.pot-page.case-hub .ch-side-service span:first-child,
.pot-page.case-hub .ch-side-link span:first-child { min-width:0; }
.pot-page.case-hub .ch-side-service:hover,
.pot-page.case-hub .ch-side-link:hover { background:#f6f8fa; color:var(--ch-navy); text-decoration:underline; opacity:1; }
.pot-page.case-hub .ch-breadcrumb { padding:19px 0 27px; }
.pot-page.case-hub .ch-breadcrumb ol { display:flex; flex-wrap:wrap; gap:5px 0; margin:0; padding:0; list-style:none; font-size:12px; color:#666; line-height:1.8; }
.pot-page.case-hub .ch-breadcrumb li { list-style:none; padding:0; margin:0; }
.pot-page.case-hub .ch-breadcrumb a { color:#666; text-decoration:none; }
.pot-page.case-hub .ch-breadcrumb a:hover { text-decoration:underline; }
.pot-page.case-hub .ch-breadcrumb li+li::before { content:">"; margin:0 10px; color:#888; }
@media (max-width:979px) {
  .pot-page.case-hub .ch-side-section { margin-bottom:24px; }
  .pot-page.case-hub .ch-sidebar { padding-top:0; }
}
@media (max-width:767px) {
  .pot-page.case-hub .ch-hero { padding:23px 23px 24px; }
  .pot-page.case-hub .ch-page-title { font-size:28px; }
  .pot-page.case-hub .ch-hero-lead { font-size:13px; }
  .pot-page.case-hub .ch-introduction { padding:24px 0 26px; }
  .pot-page.case-hub .ch-intro-text { font-size:15px; }
  .pot-page.case-hub .ch-list-title { font-size:22px; margin-bottom:22px; }
  .pot-page.case-hub .ch-card-link { grid-template-columns:minmax(0,1fr); }
  .pot-page.case-hub .ch-card-visual { padding:0; }
  .pot-page.case-hub .ch-card-body { padding:21px 20px 22px; }
  .pot-page.case-hub .ch-card-title { font-size:21px; line-height:1.7; }
  .pot-page.case-hub .ch-card-summary { font-size:15px; }
  .pot-page.case-hub .ch-service-label { margin-bottom:13px; }
  .pot-page.case-hub .ch-company { font-size:16px; }
  .pot-page.case-hub .ch-card-cta { font-size:15px; }
  .pot-page.case-hub .ch-side-link,
  .pot-page.case-hub .ch-side-service { font-size:15px; min-height:54px; }
  .pot-page.case-hub .ch-breadcrumb { padding:15px 0 22px; }
}
@media (prefers-reduced-motion:reduce) {
  .pot-page.case-hub .ch-card-link { transition:none; }
}
@media print {
  .pot-page.case-hub .ch-hero { print-color-adjust:exact; -webkit-print-color-adjust:exact; }
  .pot-page.case-hub .ch-card { break-inside:avoid; }
  .pot-page.case-hub .ch-card-link { box-shadow:none; }
}
