.text-center {
  text-align: center;
}

.full-width-content {
  display: block;
  width: 100%;
}

.rep-content form {
  margin: 2rem auto;
}
.rep-content label {
  display: block;
}
.rep-content .btn {
  color: #333e48;
}

h2.top-margin {
  text-transform: uppercase;
  padding-top: 2rem;
  margin-top: 0;
}

.rep-results .rep {
  margin: 1rem;
  background: #fff;
  border: solid 4px #dfdfdf;
}
.rep-results .rep .container, .search-container {
  text-align: left;
  padding: 0;
}
@media (min-width: 641px) {
  .rep-results .rep .container, .search-container {
    display: flex;
  }
}
.rep-results .rep .container .column:first-child,
.rep-results .rep .container .center-column {
    padding: 2rem;
}

.rep-results .rep .container .center-column {
  text-align: center;
  width: 100%;
}

@media (min-width: 641px) {
  .rep-results .rep .container .column, .search-container .column {
    width: 50%;
    padding: 0;
  }
}
.search-container .column  {
  text-align: center;
}
.rep-results .rep .container .column.map iframe {
  max-width: 100% !important;
  height: 100%;
}
.rep-results .rep .container .column h3 {
  font-weight: bold;
  font-size: 1.6rem;
}
.rep-results .rep .container .column h4 {
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: bold;
  margin: 2rem 0 0;
}

.page-template-rep-search-template .woocommerce-breadcrumb, .page-template-rep-search-template-v2 .woocommerce-breadcrumb { display: none; }
.page-template-rep-search-template .page-title, .page-template-rep-search-template-v2 .page-title, .page-template-template-page-news .page-title {
  position: relative;
}
.page-template-template-page-news .page-title {
  margin-bottom: 2rem;
}
.page-template-rep-search-template .page-title h1, .page-template-rep-search-template-v2 .page-title h1, .page-template-template-page-news .page-title h1 {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  color: #fff;
  font-weight: bold;
  text-transform: uppercase;
}

.page-template-template-page-news #content > .text-center > .news.page-title .header-image, .page-template-rep-search-template-v2 #content > .text-center > .news.page-title .header-image { height: 250px; max-height: 100px; overflow: hidden; }
.page-template-template-page-news #content > .text-center > .news.page-title .header-image img, .page-template-rep-search-template-v2 #content > .text-center > .news.page-title .header-image img { margin-top: -50%; transform: translateY(50%); object-fit: cover; max-width: 200%; }
.page-template-template-page-news #content > .text-center > .news.page-title h1, .page-template-rep-search-template-v2 #content > .text-center > .news.page-title h1 { margin-bottom: 2rem; }

@media ( min-width: 641px ) {
  .page-template-rep-search-template .page-title h1, .page-template-rep-search-template-v2 .page-title h1, .page-template-template-page-news .page-title h1 { bottom: 1rem; }
  .page-template-template-page-news #content > .text-center > .news.page-title .header-image, .page-template-rep-search-template-v2 #content > .text-center > .news.page-title .header-image { max-height: 150px; }
}
@media ( min-width: 1200px ) {
  .page-template-rep-search-template .page-title h1, .page-template-rep-search-template-v2 .page-title h1, .page-template-template-page-news .page-title h1 { font-size: 3.5rem; }
  .page-template-template-page-news #content > .text-center > .news.page-title .header-image, .page-template-rep-search-template-v2 #content > .text-center > .news.page-title .header-image { max-height: 250px; }
}
@media ( min-width: 2400px ) {
  .page-template-template-page-news #content > .text-center > .news.page-title .header-image img, .page-template-rep-search-template-v2 #content > .text-center > .news.page-title .header-image img { transform: translateY(75%); }
}

#rep-search-form .choose-search { margin-bottom: 1rem; }
.firestop #fire-rep-search-form .choose-search { margin-bottom: 1rem; }
.firestop #fire-rep-search-form .choose-search a { color: #ed1c23; }
.rep-content .search-bar {   border: solid 2px #0787ea; padding: 1rem; margin: 1rem; text-align: center;}
.rep-content .firestop .search-bar { border-color: #ed1c23; }
.rep-content .search-bar label { display: block; margin: 10px 0; }

.rep-content .search-bar .submit input {
background: #0787ea; color: #fff; font-weight: bold; margin: 0;
}
.rep-content .firestop .search-bar .submit input { background: #ed1c23; }
.rep-content .search-bar .left input[type=text] { border-radius: 0;  }
.rep-content .search-bar .left select { border: solid 1px #ddd; padding: 0.5rem 1.65rem .5rem .65rem; }

@media (min-width: 641px) {
  #rep-search-form .choose-search label { display: inline-block; margin: 0 5px; }
  .rep-content .search-bar label { display: inline-block; vertical-align: middle; margin: 0 5px; }
  .rep-content .search-bar {
    display: flex; align-items: center; justify-content: center; border: none; padding: 0; margin: 0;
  }
  .rep-content .search-bar .left {
    border: solid 2px #0787ea; border-radius: 2.467em 0 0 2.467em; padding: .28em 2.134em; border-right: none; display: flex; vertical-align: middle; max-height: 46px;
  }
  .rep-content .firestop .search-bar .left { border-color: #ed1c23; }
  .rep-content .search-bar .left div { margin: 0 10px; display: flex; align-items: center; }
  .rep-content .search-bar .left input[type=text] { border: none; }
  .rep-content .search-bar .submit input {
    border-radius: 0 2.467em 2.467em 0; border: solid 2px #0787ea; border-left: none;
  }
  .rep-content .firestop .search-bar .submit input { border-color: #ed1c23; }
  .rep-content .search-bar .left select {
    border: none; color: #6b6b6b; padding: 0.5rem 1.65rem 0.5rem 0.65rem;
  }
}

.single-product.rep-content .wc-tab { border: none; border-top: solid 1px #ddd; border-radius: 0; }
.rep-content .wc-tabs { margin-top: 1em; }
.rep-content .wc-tabs>li a { font-size: 1em;  }
.rep-content .wc-tabs>li.firestop a { color: #ed1c23; }
.rep-content .wc-tabs>li.active.firestop a::before { background-color: #ed1c23; }
.rep-content .wc-tabs>li.active.firestop a::after { border-color: #ed1c23; }

.product-images-wrapper .magic-zoom { margin-bottom: 1rem; }
.product-images-wrapper h4 { color: #0275d8; font-size: inherit; margin: 0 0 5px; }
.woocommerce-product-gallery .woocommerce-product-gallery__wrapper { display: flex; flex-wrap: wrap; }
.woocommerce-product-gallery .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image { width: 20%; box-sizing: border-box; padding: 10px 10px 0 0;}
.woocommerce-product-gallery .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:first-child { width: 100%; padding: 0; }
.woocommerce-product-gallery.magic-zoom-box .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:first-child { width: 20%; padding: 10px 10px 0 0; }
.pswp__bg { background: rgba(0, 0, 0, 0.9) !important; }

#dist-map { width: 100%; height: 400px; }
#dist-map .marker-cluster { background-color: rgba(173, 11, 16, 0.6); }
#dist-map .marker-cluster div { background-color: rgba(173, 11, 16, 0.6); }
#dist-map .marker-cluster span { color: #fff; font-weight: bold;}
#dist-map .leaflet-popup-content a { color: #ed1c23; }

.dist-search-bar form { border: solid 2px #ed1c23; border-radius: 50px; display: flex; overflow: hidden; margin-top: 0; margin-bottom: 25px; }
.dist-search-bar form input, .dist-search-bar form select { padding: .35rem  1rem!important; border: none !important; background: none transparent !important; }
.dist-search-bar form button { background: #ed1c23 !important; margin: 0; border-color: #ed1c23 !important; color: #fff !important; font-weight: bold; border-radius: 0; }

.dist-reset { text-align: right; font-size: 1rem; margin: 1rem 0; }
.dist-reset a { color: #ed1c23 !important; }
.dist-reset a:hover { text-decoration: underline;}

.dist-search-results { margin: 2rem 0 1rem; }
.dist-search-results h2 { margin: 0 0 2rem; color: #ed1c23; }
.dist-search-results .results { padding: 0; list-style: none;}
.dist-search-results .results .dist { text-align: left; margin: 0 0 1rem; padding: 1rem; }
.dist-search-results .results .dist.highlight { background: #f6f6f6; }
.dist-search-results .results .dist .count { display: inline-block; background: #B9292A; border-radius: 100%; text-align: center; width: 36px; height: 36px; line-height: 36px; color: #fff; font-weight: bold;}
.dist-search-results .results .dist  h3 { font-size: 1rem; font-weight: bold; margin: 10px 0 3px; }

@media (min-width: 768px) {
  .dist-search-results .results { display: flex; gap: 15px; flex-wrap: wrap; }
  .dist-search-results .results .dist { width: calc(50% - 10px); margin-bottom: 0; }
}

@media (min-width: 960px) {
  #dist-map { height: 500px; }
  .dist-search-results .results .dist { width: calc(33% - 10px);  }
}