/** GLOBAL **/
body {
  background: #ffffff;
  font-family: "Open Sans", sans-serif;
  -webkit-font-smoothing: antialiased;
  color: #333333;
  margin-bottom: 60px;
}
*,
*:after,
*:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
a,
.link {
  text-decoration: none;
  color: #009999;
}
a:hover,
.link:hover {
  color: #008080;
}
input[type="submit"],
button,
.button {
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 8px 30px;
  font-size: 14px;
  cursor: pointer;
}
input[type="submit"].primary,
button.primary,
.button.primary {
  color: #ffffff;
  background: #009999;
}
input[type="submit"].primary:hover,
button.primary:hover,
.button.primary:hover {
  background: #008080;
}

/** STARS **/
.rab-rating {
  position: relative;
  display: inline-block;
}
.rab-star-container {
  color: #ff9721;
  position: absolute;
  left: 0;
  top: 0;
  width: 0%;
  overflow: hidden;
  white-space: nowrap;
  box-sizing: border-box;
  margin: auto;
}
.rab-star {
  display: inline-block;
  text-align: center;
  white-space: nowrap;
}
.fa-1 {font-size:12px}
.fa-2 {font-size:24px}
.fa-3 {font-size:36px}
.fa-4 {font-size:48px}
.fa-5 {font-size:60px}

/** CIRCLE AVATARS **/
.circle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-size: 28px;
  color: #fff;
  line-height: 40px;
  text-align: center;
}
.circle-color-0 {background-color: #009688;}
.circle-color-1 {background-color: #9c26b0;}
.circle-color-2 {background-color: #ff5722;}
.circle-color-3 {background-color: #ff9802;}
.circle-color-4 {background-color: #4caf51;}

/** REVIEWS **/
.review-row {
  margin-bottom: 30px;
  padding: 15px 0;
  border-bottom: 1px solid #f0f0f0;
}
.review-meta {
  padding-right: 20px;
}
.review-content {
  padding-left: 15px;
  border-left: 3px solid #f0f0f0;
}
@media (max-width: 991px) {
  .review-content {
    margin-top: 12px;
    padding-left: 0;
    border-left: none;
  }
}
.review-body {
  font-size: 14px;
  margin-top: 10px;
  line-height: 1.6;
}
.review-title {
  margin-top: 0;
  font-size: 17px;
}
.review-recommended {
  margin: 5px 0;
  width: 150px;
  border-radius: 3px;
  background-color: #5bb85c;
  color: white;
  text-align: center;
}
.review-date {color: gray}
.review-user {font-weight: 600;}
.review-response {
  background-color: #ffefc0;
  margin-top: 20px;
  padding: 12px;
}
.review-response .heading {
  font-size: 12px;
}
.review-response .review-response-text {
  font-size: 14px;
}

/** NAVBAR **/
.navbar-static-top {
  margin-bottom: 0;
}
.index-page .navbar {margin-bottom: 0px}
.logo-container img.logo {
  max-height: 40px;
}

/** INDEX PAGE **/
.index-page .about-us {
  background-color: #009999;
  color: white;
  font-size: 12px;
  padding: 50px 100px;
}
@media (max-width: 480px) {
  .index-page .about-us {padding: 10px 20px}
}
.index-page-welcome {
  text-align: center;
  color: white;
  text-shadow: 2px 2px 2px rgba(0,0,0,0.3);
  padding-top: 100px;
}
.background-overlay-metro {
  height: 400px;
  background-size: cover;
  background-position: center;
  background-image: linear-gradient(to bottom, rgba(0,0,0,0.15), rgba(0,0,0,0.15), rgba(0,0,0,0.15), rgba(0,0,0,0.15), rgba(0,0,0,0.6));
}

/** BUSINESS PAGE **/
#business-name {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  font-size: 36px;
  color: #595651;
}
#segment-name {
  margin-top: 0;
  margin-bottom: 0;
  color: rgba(104, 104, 104, 0.8);
}
.avg-rating {
  font-size: 68px;
  color: #ff9721;
}
.star-text {
  color: #aaaaaa;
}
#total-ratings {
  color: #686868;
  font-size: 14px;
  margin-bottom: -10px;
}
.progress {
  background: rgba(245, 245, 245, 0);
  border: 0px solid rgba(245, 245, 245, 0);
  border-radius: 0px;
  height: 20px;
  margin-bottom: 0;
  box-shadow: none;
}
.progress .progress-bar-custom {
  background: #f9c68c;
}
.histogram-label {
  margin-top: 3px;
  padding-right: 0;
  padding-left: 10px;
}
.histogram-bar {
  margin-top: 3px;
  padding-left: 2px;
}
.gray-background {
  position: absolute;
  background-image: linear-gradient(to bottom, #e4e4e4, #f9f9f9, #e4e4e4);
  background-repeat: no-repeat;
  width: 100%;
  height: 380px;
  border: solid 0.5px #d6d6d6;
  background-position: top;
  background-size: cover;
  z-index: -19349;
}
.rab-container {
  font-size: 16px;
}
.business-hour {
  padding-right: 30px;
  padding-bottom: 4px;
}
.ratings-details {
  padding-left: 0;
}
.module-header {
  padding-bottom: 4px;
}

/** LISTING CARDS **/
.module-body {
  padding: 15px;
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  margin-bottom: 10px;
  background: #fff;
  transition: box-shadow 0.2s;
}
.module-body:hover {
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.module-header a {
  font-size: 16px;
  color: #009999;
}
.module-header a:hover {
  color: #006666;
}
.ratings-details {
  font-size: 13px;
  color: #666;
}

/** CATEGORY LIST **/
.segment-list-container ul li {
  padding: 8px 0;
  border-bottom: 1px solid #f0f0f0;
}
.segment-list-container ul li a {
  font-size: 15px;
  font-weight: 500;
}

/** CTA BOX **/
.cta-box {
  padding: 18px;
  border: 1px solid #009999;
  border-radius: 4px;
  margin-top: 15px;
  background: linear-gradient(135deg, #f0fafa 0%, #e8f8f8 100%);
}
.cta-box h4 {
  font-size: 14px;
  font-weight: 600;
  color: #009999;
  margin-top: 0;
  margin-bottom: 8px;
}
.cta-box p {
  font-size: 13px;
  color: #555;
  margin-bottom: 12px;
}
.cta-box a.btn-cta {
  display: inline-block;
  padding: 9px 18px;
  background: #009999;
  color: #fff;
  border-radius: 3px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
}
.cta-box a.btn-cta:hover {
  background: #008080;
}

/** HERO SECTION **/
.hero-section {
  min-height: 380px;
  background: linear-gradient(135deg, #009999 0%, #005f5f 100%);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 60px 20px;
}
.hero-section h1 {
  color: #fff;
  font-size: 36px;
  font-weight: 700;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
  margin-bottom: 15px;
}
.hero-section p {
  color: rgba(255,255,255,0.9);
  font-size: 18px;
}
.hero-stats {
  margin-top: 25px;
  display: flex;
  justify-content: center;
  gap: 40px;
}
.hero-stat {
  text-align: center;
  color: #fff;
}
.hero-stat .num {
  font-size: 32px;
  font-weight: 700;
}
.hero-stat .label {
  font-size: 13px;
  opacity: 0.8;
}

/** BREADCRUMB **/
.breadcrumb {
  background: rgba(255, 255, 255, 1);
  border-radius: 3px;
  border: solid 0.3px #cccccc;
  margin-top: 20px;
}
.breadcrumb .link {
  color: #eb830d;
}

/** FOOTER **/
.footer {
  background-color: #333333;
  color: #999999;
  height: auto;
  line-height: 1em;
  position: absolute;
  bottom: 0;
  width: 100%;
}
.footer .link {
  color: #999999;
}
.footer .link:hover {
  color: #999999;
}
.footer .rab-container {
  min-height: 0px;
  padding-top: 20px;
  padding-bottom: 20px;
  margin-left: 5%;
  margin-right: 5%;
  margin-bottom: 10px;
}

/** PAGINATOR **/
.paginator {color: #008080}
.paginator .pagination {
  font-size: 14px;
  border-radius: 3px;
}

/** CATEGORY LIST **/
.segment-list-container {
  padding: 15px 0px 15px 0px;
}
.segment-list-container li {
  margin-bottom: 5px;
}

/** MISC **/
.small-padding {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 2px;
  padding-right: 2px;
}
.vcenter {
  display: inline-block;
  vertical-align: middle;
  float: none;
}
html {
  position: relative;
  min-height: 100%;
}
body > .container {
  padding: 0px 15px 0;
}