html, body {
  height: 100%;
  margin: 0;
}

body {
 display: grid;
 grid-template-rows: auto 1fr auto;
 /* header, main, footer */
  min-height: 100vh;
}

button.btn-route {
    width: 220px;
}


.masonry-grid-fitrows{
  display:flex; flex-wrap:wrap;
  margin-left:-12px; margin-right:-12px;
  align-items:flex-start;                 /* do not stretch to container height */
  height:auto !important;                 /* override inline height:1166px */
}
.masonry-grid-fitrows > .masonry-grid-item{
  padding:12px; width:100%; display:flex;
}
@media (min-width:576px){ .masonry-grid-fitrows > .masonry-grid-item{width:50%} }
@media (min-width:992px){ .masonry-grid-fitrows > .masonry-grid-item{width:25%} }

/* CARD */
.masonry-grid-item .listing-item{
  display:flex; flex-direction:column; width:100%;
  background:var(--brand-primary-color);
  border-radius:4px; overflow:hidden;
  /* no min-height here */
}
.masonry-grid-item .listing-item:hover{background:var(--brand-secondary-color)}

/* BODY at bottom */
.masonry-grid-item .body{margin-top:auto; padding:16px}
.masonry-grid-item h3{margin:0}

/* Title = max 2 lines so all cards equal */
.masonry-grid-item h3 a{
  color:#fff; display:-webkit-box; -webkit-box-orient:vertical;
  -webkit-line-clamp:2; overflow:hidden;
  line-height:1.35; min-height:calc(1.35em * 2);
      font-weight: 800;
}

.fixed-header-on .header.fixed.animated {
    background-color: var(--nav-bg-main-color);
}     

.fixed-header-on .header .logo img {
    max-height: 55px;
}
