/* An explicit grid and a sized canvas parent prevent WebKit from shrinking
   the chart to the canvas's intrinsic width inside Elementor flex items. */
.elementor .elementor-element.ubc-home-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: 48px !important;
  align-items: start !important;
}
.ubc-home-hero > .elementor-element-bbcbe43 { display: none !important; }
.elementor .ubc-home-hero > .elementor-element-ed7c693,
.elementor .ubc-home-hero > .ubc-home-chart-column {
  width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.elementor .ubc-home-chart-column .elementor-element-d701c26,
.elementor .ubc-home-chart-column .elementor-element-29c45b0,
.elementor .ubc-home-chart-column .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  align-self: stretch !important;
}
.ubc-home-chart {
  width: 100%;
  max-width: 680px;
  min-width: 0;
  margin: 0 auto;
  font-family: "IBM Plex Sans", Arial, sans-serif;
  color: #212429;
}
.ubc-home-chart__header { padding: 0 8px 12px 42px; }
.ubc-home-chart__title { margin: 0 0 8px; font-size: 18px; line-height: 1.3; font-weight: 600; }
.ubc-home-chart__legend { display: flex; flex-wrap: wrap; gap: 8px 20px; font-size: 13px; line-height: 1.4; }
.ubc-home-chart__legend span { display: inline-flex; align-items: center; gap: 8px; }
.ubc-home-chart__legend span::before { content: ""; display: inline-block; width: 24px; border-top: 3px solid #0073e6; }
.ubc-home-chart__legend span:last-child::before { border-top: 3px dashed #28a745; }
.ubc-home-chart__plot { position: relative; width: 100%; min-width: 0; height: 340px; }
.ubc-home-chart__plot > canvas { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; max-width: 100%; }
.ubc-home-chart__caption { margin: 8px 0 0; padding-left: 42px; font-size: 12px; line-height: 1.5; color: #687380; }
@media (max-width: 1224px) {
  .elementor .elementor-element.ubc-home-hero { grid-template-columns: minmax(0, 1fr); row-gap: 40px !important; }
}
@media (max-width: 767px) {
  .ubc-home-chart__plot { height: 280px; }
  .ubc-home-chart__header { padding-left: 32px; }
  .ubc-home-chart__caption { padding-left: 32px; }
  .ubc-home-chart__legend { font-size: 12px; gap: 7px 12px; }
}
