.page-companies-container {
  background: #FFFFFF; }

.list-categories-container {
  position: relative; }

.list-categories .table.category-table {
  margin-bottom: 3rem; }

.list-categories h1 {
  color: #00a17e;
  padding-bottom: 0.625rem;
  margin-bottom: 3rem;
  font-size: 2rem; }

.list-categories h1:after {
  content: ' ';
  background: #00a17e;
  height: 3px;
  width: 10%;
  position: absolute;
  left: 0;
  top: 3rem; }

.list-categories .table.category-table h2 a {
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 400;
  color: #00a17e; }

.page-categories .category-table h2 a:hover {
  text-decoration: none; }

.category-list-item .number {
  background: #00a17e;
  padding: 1rem;
  text-align: center; }

.category-list .category-list-item {
  box-shadow: 2px 1px 1px rgba(0, 0, 0, 0.15), 0 6px 6px rgba(0, 0, 0, 0.06);
  font-size: 1.3rem;
  margin-bottom: 1rem;
  background: white;
  border: 1px solid #EFEFEF; }
  .category-list .category-list-item .heading {
    padding: 1rem; }
  .category-list .category-list-item .heading h2 {
    padding: 0;
    margin: 0;
    font-size: 1.2rem; }
  .category-list .category-list-item .number {
    font-size: 1.2rem;
    color: white; }

.category-list .category-list-item:hover a {
  color: #808080;
  text-decoration: none; }

.category-list .category-list-item:hover .number {
  background: #808080; }

/* DIRECTORY SINGLE */
.page-companies .company-header {
  border: 1px solid #CECECE;
  padding: 0 2rem; }
  .page-companies .company-header .company-title h1.title {
    padding-bottom: 0.5rem;
    padding-top: 2rem; }
  .page-companies .company-header .company-title .categories {
    padding: 1rem 0;
    border-top: 1px solid #CECECE;
    display: inline-block;
    letter-spacing: 0.15rem;
    word-spacing: 0.2rem; }
    .page-companies .company-header .company-title .categories a {
      font-size: 1.2rem;
      letter-spacing: 0.15rem;
      word-spacing: 0.2rem; }
  .page-companies .company-header .company-logo {
    padding: 1rem 0 2rem;
    text-align: right; }

.page-companies .company-body {
  margin-top: 3rem;
  border: 1px solid #CECECE; }

.page-companies h2 {
  font-size: 1.4rem; }

.page-companies h5 {
  font-size: 1.15rem;
  font-weight: 400;
  margin-left: 15px;
  margin-bottom: 50px;
  margin-top: 15px; }

.company-details {
  border-top: 0.4rem solid #FFFFFF; }
  .company-details .directory-main {
    padding: 1.5rem 2rem; }
    .company-details .directory-main h2:before {
      content: '\2014';
      color: #00a17e;
      margin-right: 0.5rem; }
    .company-details .directory-main p {
      font-size: 1rem;
      line-height: 1.6;
      text-align: justify; }
    .company-details .directory-main p.lead {
      font-weight: 500; }
    .company-details .directory-main p:last-child {
      border-bottom: 5px solid #00a17e;
      padding-bottom: 2rem; }
    .company-details .directory-main ul li {
      line-height: 1.6; }

/* NAVIGATION TABS */
#company-tabs.navbar {
  padding: 0rem;
  border-bottom: 1px solid #CECECE; }
  #company-tabs.navbar .navbar-brand {
    font-weight: 500;
    padding: 1rem; }
  #company-tabs.navbar button {
    margin-right: 1rem; }

#company-tabs .navbar-nav {
  width: 100%; }

#company-tabs .nav-tabs {
  border-bottom: none; }

#company-tabs .nav-tabs > li > a {
  display: inline-block;
  height: 100%;
  width: 100%;
  border-top: 1px solid white;
  border-left: 0;
  border-bottom: 1rem solid grey;
  border-right: 0;
  font-size: 1.2rem;
  font-weight: 500;
  text-decoration: none;
  border-radius: 0; }

#company-tabs .nav-tabs > li > a:hover {
  border-left: 0;
  border-bottom-color: #00a17e;
  border-right: 0; }

#company-tabs .nav-tabs > li > a.disabled:hover {
  border-bottom-color: grey; }

#company-tabs .nav-item {
  border-right: 3px solid white; }

#company-tabs .nav-item:last-child {
  border-right: none; }

#company-tabs .nav-item a {
  border-left: 0;
  border-right: 0; }

#company-tabs .nav-item a.active, #company-tabs .nav-item a.disabled {
  border-top: 1px solid white; }

#company-tabs .nav-item a.active {
  border-bottom-color: #00a17e; }

#company-tabs .nav-item .disabled {
  color: #D3D3D3; }

.contact-form {
  background: #545454;
  padding: 2rem;
  color: white; }
  .contact-form h3 {
    padding-bottom: 20px;
    font-weight: 400;
    font-size: 24px; }
  .contact-form input.form-control {
    color: white;
    border-left: 0px;
    border-top: 0px;
    border-right: 0px;
    box-shadow: none;
    border-radius: 0px;
    background-color: transparent; }
  .contact-form ::placeholder {
    color: white;
    opacity: 1; }
  .contact-form :-ms-input-placeholder {
    color: white; }
  .contact-form ::-ms-input-placeholder {
    color: red; }
  .contact-form textarea.form-control {
    border-radius: 0px;
    background-color: transparent;
    color: white; }
  .contact-form .btn.btn-green {
    color: #FFFFFF;
    background: #00a17e; }

.page-companies .gallery {
  min-height: 15rem;
  padding: 5rem 1rem; }
  .page-companies .gallery .owl-carousel {
    position: relative; }
    .page-companies .gallery .owl-carousel .owl-nav {
      position: absolute;
      top: -5rem;
      right: 0;
      font-size: 2.4rem; }
      .page-companies .gallery .owl-carousel .owl-nav .owl-prev, .page-companies .gallery .owl-carousel .owl-nav .owl-next {
        width: 3rem;
        height: 3rem;
        line-height: 0 !important;
        border: 2px solid #869791 !important; }
        .page-companies .gallery .owl-carousel .owl-nav .owl-prev .fa, .page-companies .gallery .owl-carousel .owl-nav .owl-next .fa {
          color: #869791; }
        .page-companies .gallery .owl-carousel .owl-nav .owl-prev .fa:hover, .page-companies .gallery .owl-carousel .owl-nav .owl-next .fa:hover {
          color: white; }

.news-content, .resources-content {
  padding: 2rem 1rem; }

.news-content .item, .resources-content.item {
  margin-right: 0; }

.news-content .row div:nth-child(odd) .item, .resources-content .row div:nth-child(odd) .item {
  margin-right: 0.5rem; }

.news-content .row div:nth-child(even) .item, .resources-content .row div:nth-child(even) .item {
  margin-left: 0.5rem; }

.directory-sidebar .contact-form {
  background: #545454;
  padding: 2rem;
  color: white;
  margin-bottom: 1rem; }
  .directory-sidebar .contact-form h3 {
    padding-bottom: 20px;
    font-weight: 400;
    font-size: 24px; }
  .directory-sidebar .contact-form input.form-control {
    color: white;
    border-left: 0px;
    border-top: 0px;
    border-right: 0px;
    box-shadow: none;
    border-radius: 0px;
    background-color: transparent; }
  .directory-sidebar .contact-form ::placeholder {
    color: white;
    opacity: 1; }
  .directory-sidebar .contact-form :-ms-input-placeholder {
    color: white; }
  .directory-sidebar .contact-form ::-ms-input-placeholder {
    color: red; }
  .directory-sidebar .contact-form textarea.form-control {
    border-radius: 0px;
    background-color: transparent;
    color: white; }
  .directory-sidebar .contact-form .btn.btn-green {
    color: #FFFFFF;
    background: #00a17e; }

.directory-sidebar .section {
  margin-bottom: 1rem; }
  .directory-sidebar .section h2 {
    padding-top: 1.4rem;
    padding-left: 1rem;
    padding-bottom: 1rem;
    margin-right: 1rem;
    font-size: 1.6rem;
    color: #2c2c2c;
    border-bottom: 5px solid #00a17e; }
  .directory-sidebar .section .item {
    padding: 1rem; }
    .directory-sidebar .section .item h3 {
      font-size: 1.4rem;
      font-weight: 400;
      margin-bottom: 1.2rem; }
      .directory-sidebar .section .item h3 a {
        color: #00a17e; }
      .directory-sidebar .section .item h3 a:hover {
        text-decoration: none; }

.directory-sidebar .address h2 {
  margin-top: 20px;
  font-size: 24px;
  color: #2c2c2c;
  border-bottom: 2px solid #00a17e; }

.directory-sidebar .address #map {
  height: 200px;
  width: 100%; }

.directory-sidebar .address .contact-details {
  padding: 2rem;
  background: #EFEFEF; }
  .directory-sidebar .address .contact-details h3 {
    font-size: 1.2rem;
    font-weight: 500;
    margin-bottom: 1rem; }
  .directory-sidebar .address .contact-details p {
    margin-bottom: 0.5rem; }

/* A-Z DIRECTORY */
.page-list {
  margin: 5rem;
  padding: 2rem; }

.companies-list {
  margin: 3rem 0; }

.companies-list .companies-list-item {
  position: relative;
  border-left: 0.8rem solid #00a17e;
  margin-left: 2.2rem;
  padding-bottom: 3rem; }

.companies-list .companies-list-item ul {
  border-bottom: 2px dotted #ECECEC; }

.companies-list .companies-list-item ul li {
  margin-bottom: 1.5rem; }

.companies-list .companies-list-item a {
  font-size: 1.2rem;
  line-height: 1.6rem; }

.companies-list .companies-list-item a.active {
  color: #00a17e; }

.letter-container {
  position: absolute;
  left: -2rem;
  top: -2rem;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: #00a17e; }

.letter-container .letter {
  color: white;
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 0; }

.list-directory a {
  font-size: 1.25rem;
  line-height: 1.7; }

.listing-letters .letter {
  text-align: center;
  padding: 0.5rem 0.6rem; }

.listing-letters a.active {
  color: #00a17e; }

.listing-letters a {
  font-size: 2rem;
  color: inherit;
  font-weight: 500;
  font-family: 'Roboto', monospace; }

.listing-letters a:hover {
  text-decoration: none; }

.listing-letters a:hover {
  color: #00a17e; }

.listing-letters {
  margin-bottom: 5rem;
  background: #efefef;
  padding: 0 1rem;
  box-shadow: 0.2rem 0.2rem #CECECE; }

.most-popular a {
  font-size: 1rem;
  line-height: 1; }

.companies-list ul {
  list-style-type: none;
  margin-left: 4rem; }

.companies-list {
  position: relative;
  margin-top: 12px; }
