.mtpc-well:not(.mtpc-1col-section):not(.mtpc-2col-section):not(.mtpc-3col-section):not(.mtpc-4col-section) {
    background-color: rgba(0, 0, 0, 0.7) !important;
    border: 0 !important;
}

/* by Creasant */
.no-margin {
    margin-bottom: 0;
}

.footer-offset {
    margin-bottom: -100px !important;
}

.two-col-divider.mtpc-2col-section .mtpc-2col-section-wrapper > .mtpc-2col-item--2 {
    border-left: 1px solid #ff5800;
}

.block-grid-divider > * {
    box-sizing: border-box;
    align-items: stretch !important;
    background-color: #ffffff;
    padding: 1em 1.5em;
}

.block-grid-divider .mtpc-2col-item,
.block-grid-divider .mtpc-3col-item,
.block-grid-divider .mtpc-4col-item {
    box-sizing: border-box;
    flex-basis: unset;
    flex: 1;
}

.block-grid-divider .mtpc-2col-item:not(:first-child),
.block-grid-divider .mtpc-3col-item:not(:first-child),
.block-grid-divider .mtpc-4col-item:not(:first-child) {
    border-left: 1px solid #c4b4ab;
    padding-left: 1.4em;
    margin-left: -1.4em;
}

.block-grid-divider .mtpc-2col-item:not(:last-child),
.block-grid-divider .mtpc-3col-item:not(:last-child),
.block-grid-divider .mtpc-4col-item:not(:last-child) {
    padding-right: 1.4em;
}

.block-grid-divider h1,
.block-grid-divider h2,
.block-grid-divider h3,
.block-grid-divider h4,
.block-grid-divider h5,
.block-grid-divider h6 {
    margin-bottom: 0;
}

.block-card {
    background-color: #ffffff;
    padding: 1.5em 2em 2.5em;
}

.block-card .action-button,
.block-card .action-button-blue {
    width: 100%;
    max-width: 400px;
}

.wider-list li {
    margin-bottom: 1em;
}

.theme-card-grid .mtpc-2col-section-wrapper,
.theme-card-grid .mtpc-3col-section-wrapper,
.theme-card-grid .mtpc-4col-section-wrapper {
    align-items: stretch !important;
}

.theme-card-grid .field,
.theme-card-grid .field__items,
.theme-card-grid .field__item,
.theme-card-grid .mtpc-block {
    height: 100%;
}

.theme-card {
    background-color: #b35523cc;
    padding: 1.5em 1.5em;
    box-sizing: border-box;
}

.theme-card * {
    color: #ffffff;
}

.theme-card--light {
    background-color: #b355234d;
}

.theme-card--light * {
    color: #333333;
}

.theme-card--lighter {
    background-color: #b355231a;
}

.theme-card--lighter * {
    color: #333333;
}

.image-grid .mtpc-block-image-grid-item-wrapper {
    margin: 0 -5px;
}

.image-circle img {
    border-radius: 50%;
}

.block-intro {
    line-height: normal;
    padding-top: 60px !important;
    padding-bottom: 100px !important;
}

.block-events {
    padding-top: 60px !important;
    padding-bottom: 100px !important;
}

.events-grid .mtpc-block-image-grid-item-wrapper {
    margin: 0 -10px;
}

.events-grid .mtpc-image-caption {
    color: #ffffff;
    font-weight: 800;
    font-size: 0.95em;
}

.events-grid .action-button-blue {
    padding: 0.6em 1.5em;
    margin-top: 0.8em;
}














/* /events/winter — make Views Grid look like /events (3 per row + spacing + button + title)
   IMPORTANT: Views "Grid" uses .views-col (or td) as the columns, not .views-row.
*/

/* Center the listing area similar to /events */
.winter-programs-listing .view-content{
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 40px;
}

/* --- If the grid is DIV-based (common): .views-view-grid > .views-row > .views-col --- */
.winter-programs-listing .views-view-grid{
  width: 100%;
}

.winter-programs-listing .views-view-grid .views-row{
  /* make columns line up nicely and allow wrapping */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -ms-flex-wrap: wrap;
  flex-wrap: wrap;

  /* gutters (no flex-gap) */
  margin-left: -15px;
  margin-right: -15px;
}

.winter-programs-listing .views-view-grid .views-col{
  box-sizing: border-box;
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 40px;

  /* force 3-per-row */
  width: 33.3333% !important;
}

/* --- If the grid is TABLE-based: table.views-view-grid td --- */
.winter-programs-listing table.views-view-grid{
  width: 100%;
  table-layout: fixed; /* prevents “shrink to content” squeezing */
  border-collapse: separate;
  border-spacing: 30px 40px; /* spacing between cards (table mode) */
}

.winter-programs-listing table.views-view-grid td{
  vertical-align: top;
  width: 33.3333% !important; /* force 3-per-row */
}

/* Responsive */
@media (max-width: 1100px){
  .winter-programs-listing .views-view-grid .views-col{
    width: 50% !important;
  }

  .winter-programs-listing table.views-view-grid td{
    width: 50% !important;
  }
}

@media (max-width: 650px){
  .winter-programs-listing .view-content{
    padding: 0 20px;
  }

  .winter-programs-listing .views-view-grid .views-col{
    width: 100% !important;
  }

  .winter-programs-listing table.views-view-grid td{
    width: 100% !important;
  }
}

/* Images */
.winter-programs-listing .view-content img{
  display: block;
  width: 100% !important;
  height: 280px;     /* adjust if needed */
  object-fit: cover;
}

/* Titles (smaller than global h2) */
.winter-programs-listing .view-content h2{
  font-size: 1.25em;
  line-height: 1.25;
  margin: 16px 0 12px;
}

/* Button styling */
.winter-programs-listing .event-btn a,
.winter-programs-listing a.view-node,
.winter-programs-listing .views-field-view-node a{
  box-sizing: border-box;
  display: inline-block;
  background-color: #ffffff;
  border: 1px solid #00a3d9;
  color: #00a3d9;
  font-weight: 800;
  font-size: 0.91em;
  text-transform: capitalize;
  padding: 10px 28px;
  line-height: normal;
}

.winter-programs-listing .event-btn a:hover,
.winter-programs-listing a.view-node:hover,
.winter-programs-listing .views-field-view-node a:hover{
  background-color: #00a3d9;
  color: #ffffff;
  text-decoration: none;
}