.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media (min-width: 40em) {
  .sm-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
@media (min-width: 52em) {
  .md-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
@media (min-width: 64em) {
  .lg-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.flex-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.flex-wrap {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.items-start {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  -ms-grid-row-align: flex-start;
  align-items: flex-start;
}
.items-end {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  -ms-grid-row-align: flex-end;
  align-items: flex-end;
}
.items-center {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  -ms-grid-row-align: center;
  align-items: center;
}
.items-baseline {
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  -ms-grid-row-align: baseline;
  align-items: baseline;
}
.items-stretch {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  -ms-grid-row-align: stretch;
  align-items: stretch;
}
.self-start {
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
}
.self-end {
  -webkit-align-self: flex-end;
  -ms-flex-item-align: end;
  align-self: flex-end;
}
.self-center {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
}
.self-baseline {
  -webkit-align-self: baseline;
  -ms-flex-item-align: baseline;
  align-self: baseline;
}
.self-stretch {
  -webkit-align-self: stretch;
  -ms-flex-item-align: stretch;
  align-self: stretch;
}
.justify-start {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.justify-end {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.justify-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.justify-between {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.justify-around {
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}
.content-start {
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
}
.content-end {
  -webkit-align-content: flex-end;
  -ms-flex-line-pack: end;
  align-content: flex-end;
}
.content-center {
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
}
.content-between {
  -webkit-align-content: space-between;
  -ms-flex-line-pack: justify;
  align-content: space-between;
}
.content-around {
  -webkit-align-content: space-around;
  -ms-flex-line-pack: distribute;
  align-content: space-around;
}
.content-stretch {
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
}
.flex-auto {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
}
.flex-none {
  -webkit-box-flex: 0;
  -webkit-flex: none;
  -ms-flex: none;
  flex: none;
}
.order-0 {
  -webkit-box-ordinal-group: 1;
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
}
.order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}
.order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}
.order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
}
.order-last {
  -webkit-box-ordinal-group: 100000;
  -webkit-order: 99999;
  -ms-flex-order: 99999;
  order: 99999;
}
.locations-map-container {
  margin-bottom: 20px;
}
.locations-map-container > .locations-controls {
  max-width: 1200px;
  margin: 0 auto 20px;
}
.locations-map-container > .locations-controls .locations-homeaddress button {
  color: white;
  background: #016a3a;
  text-transform: uppercase;
}
.locations-map-container > .locations-controls .locations-filters button {
  text-transform: uppercase;
  padding: 11px 15px;
  background: white;
  border: solid 1px #e9e9e9;
  font-weight: 400;
}
.locations-map-container > .locations-controls .locations-filters button.selected {
  background: #016a3a;
  color: #ffffff;
}
.locations-map-container > .locations-controls .secondary-filter > label {
  padding: 11px 15px;
  background: #ededed;
  float: left;
  font-weight: normal;
  font-size: 16px;
}
.locations-map-container > .locations-main-area {
  height: 640px;
  max-width: 1400px;
  margin: 0 auto;
}
.locations-map-container > .locations-main-area > [class*='col-'] {
  padding-right: 0;
  padding-left: 0;
}
.locations-map-container > .locations-main-area .locations-list {
  overflow: auto;
  overflow-x: hidden;
  border-top: 1px solid #e2e2e2;
  border-bottom: 1px solid #e2e2e2;
  height: 100%;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > div {
  border-bottom: solid 1px #999;
  padding: 2em 1em;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > div div:first-child {
  min-width: 36px;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > div.selected-location {
  background-color: #ededed;
  margin-top: -1px;
  border-top: solid 1px;
  border-color: #ddd;
  z-index: 300;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > .location-result-inner {
  padding-top: 20px;
  padding-bottom: 40px;
  border-bottom: 1px solid #e2e2e2;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > .location-result-inner > [class*='col-'] {
  padding-right: 0;
  padding-left: 0;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > .location-result-inner.selected-location {
  background-color: #ededed;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > .location-result-inner span.title {
  font-size: 18px;
  font-weight: bold;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > .location-result-inner img.location-marker {
  padding-top: 10px;
  width: 35px;
  display: inline-block;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > .location-result-inner span.location-distance {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #016a3a;
  text-align: center;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > .location-result-inner div.location-address {
  font-size: 18px;
  line-height: 24px;
  padding-top: 0px;
}
.locations-map-container > .locations-main-area .locations-list .locations-results-listitems > .location-result-inner .location-category {
  float: left;
  margin-right: 10px;
}
.popup-tip-anchor {
  height: 0;
  position: absolute;
  /* The max width of the info window. */
  width: 275px;
}
/* The bubble is anchored above the tip. */
.popup-bubble-anchor {
  position: absolute;
  width: 100%;
  bottom: 8px;
  left: 0;
}
/* Draw the tip. */
.popup-bubble-anchor::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  /* Center the tip horizontally. */
  transform: translate(-50%, 0);
  /* The tip is a https://css-tricks.com/snippets/css/css-triangle/ */
  width: 0;
  height: 0;
}
/* The popup bubble itself. */
.popup-bubble-content {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-25px, calc(-100% - 50px));
  /* Style the info window. */
  background-color: white;
  padding: 0px;
  border-radius: 5px;
  font-family: sans-serif;
  overflow-y: auto;
  height: 175px;
  width: 270px;
  box-shadow: 0px 2px 10px 1px rgba(0, 0, 0, 0.5);
}
.popup-bubble-content.backwards {
  transform: translate(calc(-100% + 25px), calc(-100% - 50px));
}
.popup-bubble-content .main-content-column {
  height: 100%;
}
.popup-bubble-content .main-content-column > div {
  padding: 1em 2em;
}
.popup-bubble-content .hero-img {
  background-size: cover;
  color: white;
}
.popup-bubble-content .hero-img .name {
  font-size: 1.75em;
  text-transform: uppercase;
  font-weight: bold;
  text-shadow: 1px 2px 7px #333;
}
.popup-bubble-content .hero-img .state {
  font-size: 1.25em;
  text-transform: uppercase;
  text-shadow: 1px 2px 7px #333;
}
.nowrap {
  white-space: nowrap;
}
.credit-types .type-list {
  padding-left: .5em;
}
.credit-types .type-list > div {
  display: inline;
  white-space: nowrap;
  margin-right: .25em;
}
.credit-types .type-list > div:after {
  content: ',';
}
.credit-types .type-list > div:last-child:after {
  content: '';
}
.location-entry {
  padding-left: 1em;
}
.location-entry .name {
  font-weight: bold;
  padding-right: .25em;
  font-size: 1.3em;
}
.location-entry .state {
  color: #888;
}
.location-entry .name,
.location-entry .state {
  text-transform: uppercase;
}
.location-entry .credit-types {
  padding: 0.8em 0;
}
.location-entry .credit-types .type-list {
  padding-left: 0;
}
.location-entry .credit-types-label {
  padding-right: .25em;
}
