/* v1.0.1: Full-width breakout for narrow WordPress page templates. */
.cft-wrap {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: min(1480px, calc(100vw - 64px));
  max-width: none;
  margin: 34px 0;
  padding: 14px 8px;
  clear: both;
}
.cft-wrap .cft-card {
  grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
  gap: 38px;
  padding: 34px 38px;
}
.cft-wrap .cft-progress-side {
  grid-template-columns: 185px minmax(0, 1fr);
  gap: 26px;
}
.cft-wrap .cft-raised {
  font-size: clamp(42px, 4.9vw, 80px);
  letter-spacing: -.055em;
  line-height: 1.12;
  overflow-wrap: normal;
  word-break: normal;
  white-space: nowrap;
}
.cft-wrap .cft-goal { white-space: nowrap; }
.cft-wrap .cft-percent { white-space: nowrap; }
.cft-wrap .cft-recent h3 { font-size: clamp(25px, 2.1vw, 34px); }
.cft-wrap .cft-recent-title { gap: 16px; }
.cft-wrap .cft-gift-person strong { line-height: 1.35; }
.cft-wrap .cft-supporters { min-width: 0; }

@media (max-width: 1100px) {
  .cft-wrap .cft-card { grid-template-columns: 1fr; }
  .cft-wrap .cft-recent { border-left: 0; border-top: 1px solid #e1e5ed; padding-left: 0; padding-top: 28px; }
  .cft-wrap .cft-progress-side { grid-template-columns: 185px minmax(0, 1fr); }
}
@media (max-width: 700px) {
  .cft-wrap { width: calc(100vw - 24px); margin: 18px 0; padding: 5px; }
  .cft-wrap .cft-card { padding: 22px 16px; gap: 22px; }
  .cft-wrap .cft-progress-side { grid-template-columns: 105px minmax(0, 1fr); gap: 12px; }
  .cft-wrap .cft-raised { font-size: clamp(28px, 7vw, 44px); white-space: normal; overflow-wrap: anywhere; }
  .cft-wrap .cft-goal { white-space: normal; }
  .cft-wrap .cft-percent { white-space: normal; }
  .cft-wrap .cft-thermometer { height: 280px; width: 100px; }
  .cft-wrap .cft-thermo-body { left: 9px; bottom: 40px; width: 43px; height: 222px; border-width: 4px; }
  .cft-wrap .cft-thermo-liquid { left: 4px; right: 4px; }
  .cft-wrap .cft-thermo-bulb { left: 0; bottom: 4px; width: 63px; height: 63px; border-width: 5px; }
  .cft-wrap .cft-ticks { left: 58px; top: 15px; bottom: 17px; font-size: 9px; }
  .cft-wrap .cft-ticks span:before { width: 6px; margin-right: 3px; }
}
