/* Programme cards: full descriptions remain on detail pages. */
.cpi-program-card {height:100%}
.cpi-program-card .cpi-program-summary {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  flex: none;
  height: 3lh;
  max-width: none;
  margin-bottom: 24px;
}
.cpi-program-more {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: auto;
  padding: 15px 20px;
  min-height: 54px;
  border: 1px solid #60071f25;
  border-radius: 9px;
  background: #60071f06;
  color: #60071f;
  font-size: .875rem;
  font-weight: 650;
  transition: background .25s, color .25s, border-color .25s;
}
.cpi-program-card a:hover .cpi-program-more,
.cpi-program-card a:focus-visible .cpi-program-more {
  background: #60071f;
  border-color: #60071f;
  color: #fff8ec;
}
.cpi-program-more > span:last-child {font-size: 1.3rem;line-height:1}
/* Main footer: original brand, original content and original destinations. */
.cpi-footer {
  background: radial-gradient(ellipse at 10% 0%,#79213b55,transparent 55%),linear-gradient(130deg,#340c19,#220a12 70%);
  border-top: 3px solid #c79e67;
}
.cpi-footer-container {padding-block: 56px 24px}
.cpi-footer-grid {display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:42px 56px}
.cpi-footer-brand {
  grid-column: 1/-1;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:48px;
  padding-block-end:38px;
  border-bottom:1px solid #e7cda62b;
}
.cpi-footer-logo {width:172px;height:auto;max-height:112px;object-fit:contain}
.cpi-footer-blurb {max-width:44ch;margin:0;color:#f5eee0c7;font-size:1rem!important}
.cpi-footer-cta {
  display:inline-flex;align-items:center;justify-content:center;gap:40px;
  min-height:56px;padding:14px 26px;border-radius:10px;
  background:#f5eee0;color:#530f27;font-weight:650;font-size:.9375rem;
  border:1px solid #f5eee0;transition:background .2s;
}
.cpi-footer-cta:hover {background:#e4c69d}
.cpi-footer-cta:focus-visible,.cpi-footer a:focus-visible {outline:2px solid #e4c69d;outline-offset:5px}
.cpi-footer-grid > div:not(.cpi-footer-brand) > h3 {
  display:flex;align-items:center;gap:14px;color:#e7c598;
  font-size:.875rem;letter-spacing:.08em;margin-bottom:22px;
}
.cpi-footer-grid > div:not(.cpi-footer-brand) > h3::before {
  content:"";width:22px;height:1px;background:#c79e67;flex:none;
}
.cpi-footer-grid ul {list-style:none;margin:0;padding:0}
.cpi-footer-grid li {margin:0!important}
.cpi-footer-grid li > a {line-height:1.8;min-height:40px;padding-block:6px;color:#f5eee0bc;font-size:.875rem}
.cpi-footer-grid li > a:hover {color:#e7c598}
.cpi-footer-grid > div:last-child {
  align-self:start;padding:26px 28px;border:1px solid #e7cda629;
  border-radius:16px;background:#f5eee008;
}
.cpi-footer-grid > div:last-child ul > li:nth-child(-n+3) > a {
  display:flex;justify-content:flex-start;gap:12px;width:100%;overflow-wrap:anywhere;
  font-size:.9375rem;color:#f5eee0e6;
}
.cpi-footer-grid > div:last-child ul > li:nth-child(1) > a::before {content:"↗";color:#d9b380}
.cpi-footer-grid > div:last-child ul > li:nth-child(2) > a::before {content:"↗";color:#d9b380}
.cpi-footer-grid > div:last-child ul > li:nth-child(3) > a::before {content:"@";color:#d9b380}
.cpi-footer-grid > div:last-child ul > li:nth-child(4) {padding-block:14px 20px;color:#f5eee09e;font-size:.8125rem}
.cpi-footer-grid > div:last-child li:last-child > div {display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #e7cda629;padding-top:18px}
.cpi-footer-grid > div:last-child li:last-child > div > a {
  border:1px solid #e7cda62e;border-radius:7px;padding:7px 10px;
  min-height:36px;font-size:.6875rem;color:#e4c69d;text-decoration:none;
}
.cpi-footer-grid > div:last-child li:last-child > div > a:hover {background:#e7cda614}
.cpi-footer-bottom {display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e7cda625;margin-top:44px;padding-top:24px;color:#f5eee08f;font-size:.75rem}
.cpi-footer-bottom p {text-align:start!important;text-align-last:auto!important}
@media(max-width:1050px) {
  .cpi-footer-grid {grid-template-columns:1fr 1fr;gap:36px}
  .cpi-footer-brand {gap:28px;grid-template-columns:auto 1fr}
  .cpi-footer-brand .cpi-footer-cta {grid-column:2;justify-self:start}
  .cpi-footer-grid > div:last-child {grid-column:1/-1}
}
@media(max-width:600px) {
  .cpi-footer-container {padding-block:36px 22px}
  .cpi-footer-grid {grid-template-columns:1fr;gap:30px}
  .cpi-footer-brand {grid-template-columns:1fr;gap:22px;padding-bottom:30px}
  .cpi-footer-logo {width:150px}
  .cpi-footer-blurb {font-size:.875rem!important;max-width:none}
  .cpi-footer-brand .cpi-footer-cta {grid-column:auto;justify-self:stretch}
  .cpi-footer-grid > div:last-child {padding:24px 20px}
  .cpi-footer-grid li > a {min-height:44px}
  .cpi-footer-grid > div:nth-child(2) > ul {display:block}
  .cpi-footer-bottom {align-items:flex-start;flex-direction:column;gap:8px;margin-top:30px;padding-top:20px}
}
@media(prefers-reduced-motion:reduce){.cpi-program-more,.cpi-footer-cta{transition:none}}
