/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   THEME COLORS
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
   MISCELLANEOUS
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

#contactForm {
  margin-top: 2rem;
}

#captcha {
  margin-top: 0;
}

#scroll-icon .fa, #scroll-icon .fa:active, #scroll-icon .fa:focus {
  background: rgb(255 255 255 / 40%);
  border: 1px solid rgb(255 255 255 / 2%);
}

.yelp {
  position: relative;
  bottom: 1.4rem;
}


/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   TYPOGRAPHY
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
h1, h2, h3, h4 {
  color: #444444;
  font-family: 'Playfair Display', serif;
  font-weight: 700;
}

p { 
  line-height: 1.8;
  text-align:justify; 
}

li {
  line-height: 1.9;
}

a, a:active, a:focus, a:visited { 
  color: #28B592;
  -webkit-transition: color .3s linear;
  -moz-transition: color .3s linear;
  -ms-transition: color .3s linear;
  -o-transition: color .3s linear;
  transition: color .3s linear;
  font-weight: 600;
}

a:hover {
  color: #000;
  text-decoration:none;
}

ul, ol {
  font-family: 'Open Sans', sans-serif;
}

p, a, ul, li {
  font-size: 16px;
  line-height: 1.6;
}

p, ul, li {
  color: #757575;
}


/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   HEADER (LOGO, ETC)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

#topbar {
  background: #000;
}

#topbar-right {
  position: relative;
  left: 15px;
}

#topbar #topbar-right .item:not(:first-of-type) {
  margin-left: 15px;
}

#header-social i {
  height: initial;
  margin-right: 8px !important;
}

#header-social i:hover {
  background: transparent;
  color: #FFF;
}

.fa-google {
    padding: 8px 5px 8px 7px;
}

#topbar .item a {
  color: rgba(255, 255, 255, 0.77);
  font-family: 'Playfair Display', serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  padding: 7px 15px;
}

#topbar .item a:hover {
  background: transparent;
  color: white;
}

#topbar .highlighted a {
  background: #386C5F;
  color: #FFF;
  font-size: 14px;
  padding: 12px 25px;
}

#topbar .highlighted a:hover {
  background: #4FA08C;
}

#topbar #header-sendfiles a {
  background: transparent;
  font-size: 14px;
  padding: 7px 25px;
  -webkit-transition: color .3s ease;
  -moz-transition: color .3s ease;
  -o-transition: color .3s ease;
  transition: color .3s ease;
}

#topbar #header-sendfiles a:hover {
  color: #FFF;
}

#topbar .item i[class*='fa-'] {
  color: rgba(255, 255, 255, 0.89);
  font-size: 14px;
}

#header-logo {
  padding: 25px 0;
}

#header-logo img {
  -webkit-transition: width .4s ease;
  -o-transition: width .4s ease;
  -moz-transition: width .4s ease;
  transition: width .4s ease;
  width: 320px;
}

#header-logo.fixed-top {
  background: #FFF;
  padding: 20px 0;
}

#header-logo.fixed-top img {
  max-width: initial;
  min-width: initial;
  width: 280px;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   NAV MENU
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#toggle-open i {
  font-size: 26px;
}

#toggle-open i,
#toggle-open:hover i {
  color: #646B73;
}

#toggle-close i,
#toggle-close:hover i {
  color: #FFF;
}

#toggle-open .fa-layers .menu {
  color: #4FA08C;
  font-family: 'Playfair Display', serif;
  font-size: 11.5px;
  font-weight: 600;
}

#overlay-menu {
  background: rgba(21, 21, 21, 0.95);
}

#overlay-menu-links {
    margin-top: 10px;
}

#overlay-menu-links .nav-link,
#overlay-menu-links a, 
#overlay-menu-links a:active,
#overlay-menu-links a:focus, 
#overlay-menu-links a:active:focus {
  font-family: 'Playfair Display', serif;
  font-size: 40px;
}

#overlay-menu-links .dropdown-menu.show a {
    color: rgba(255, 255, 255, 0.48);
}

#overlay-menu-links .dropdown-menu a, 
#overlay-menu-links .dropdown-menu a:active, 
#overlay-menu-links .dropdown-menu a:focus, 
#overlay-menu-links .dropdowm-menu a:active:focus,
#overlay-menu-links .dropdown-menu.show a:hover {
  font-size: 25px;
}

#overlay-menu-links a:hover, 
#overlay-menu-links .show > a {
  color: #4FA08C;
}

#overlay-menu-links .dropdown-menu.show a:hover {
  color: #FFF;
}


.navbar .navbar-nav .nav-link {
  color: #565656;
  font-family: 'Playfair Display', serif;
  font-size: 17px;
  font-weight: 500;
}

.navbar .navbar-nav .nav-item.show .nav-link,
.navbar .navbar-nav .nav-link:hover {
  color: #000;
}

.dropdown-menu {
  border: 0;
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 999;
}

.navbar-nav .dropdown-menu {
  padding: 8px 0;
}

.navbar .dropdown-item, .navbar .dropdown-item:active, .navbar .dropdown-item:focus {
  color: #545454;
  font-family: 'Playfair Display', serif;
  font-size: 14px;
  font-weight: 400;
  padding: 0.35rem 1rem;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   CAROUSEL OR HEADER IMAGE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#myCarousel .carousel-caption {
  padding: 25px 30px 35px;
  top: 50%;
  width: 700px;
  background: transparent;
  box-shadow: none;
}

#myCarousel .carousel-caption h2 {
    color: rgb(255 255 255 / 94%);
    font-size: 60px;
    margin-bottom: 1.5rem;
    text-shadow: 3px 3px 12px rgb(0 0 0 / 32%);
    line-height: 1.2;
}

#myCarousel .carousel-caption p {
 color: rgba(255, 255, 255, 0.75);
  margin-bottom: 20px;
}

#myCarousel .carousel-caption-right p {
  text-align: right;
}




/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   BUTTONS
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.btn, .btn:active, .btn:focus, .btn:active:focus, .btn:not(:disabled):not(.disabled).active, .btn:not(:disabled):not(.disabled):active:focus, .btn-primary, .btn-primary:active, .btn-primary:focus, .btn-primary:active:focus, .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled):active:focus, .btn-default, .btn-default:active, .btn-default:focus, .btn-default:active:focus, .btn-default:not(:disabled):not(.disabled).active, .btn-default:not(:disabled):not(.disabled):active:focus {
  background: #386C5F;
  border: 0;
  box-shadow: none;
  color: #FFF;
  font-family: 'Playfair Display', serif;
  font-size: 15px;
  font-weight: 600;
  margin-top: 0;
  outline: 0;
  padding: 10px  22px;
  -webkit-transition: background 0.35s linear;
  -moz-transition: background 0.35s linear;
  -ms-transition: background 0.35s linear;
  -o-transition: background 0.35s linear;
  transition: background 0.35s linear;
  text-shadow: none;
  text-transform: none;
}


.btn:hover, .btn-primary:hover, .btn-default:hover {
  background: #4FA08C;
  color: #FFF;
  text-decoration:none;
}




#index-section,
#services-top,
#featured-services {
  padding: 90px 0 100px;
}



/* - - - - - - - - - - - - - - - - -  
   SERVICE BOXES
- - - - - - - - - - - - - - - - - */


#services-top .outer-img-holder {
  margin-bottom: 25px;
}

#services-top h2 {
  font-size: 26px;
  margin-bottom: 2rem;
}

#services-top .service-box h3 {
  color: #232526;
  font-size: 22px;
  font-weight: 400;
}

#services-top .service-box a:hover h3 {
  color: #4FA08C;
}

#services-top .service-box p:last-of-type {
  text-align: center;
}


/* - - - - - - - - - - - - - - - - -  
   INDEX COPY
- - - - - - - - - - - - - - - - - */
#index-section {
  background: #232526;
  padding: 70px 0 80px;
}

#index-section.parallax-bg {
  background-image: url("site_images/index-bg.jpg");
  border-bottom: 1px solid #F9F9F9;
  border-top: 1px solid #F9F9F9;
}

#index-section h1 {
  color: #FFF;
  font-size: 26px;
  margin-bottom: 2rem;
  text-align: center;
}

#index-section p {
  color: rgba(255, 255, 255, 0.83);
}


/* - - - - - - - - - - - - - - - - -  
   SERVICE BOXES - BOTTOM
- - - - - - - - - - - - - - - - - */

#featured-services h2 {
  font-size: 26px;
  margin-bottom: 2rem;
}

#featured-services .featured-service h3 {
  background: #386C5F;
  font-size: 17px;
  font-weight: 400;
  padding: 12px 24px;
}

#featured-services a:hover .featured-service h3 {
  background: #386C5F;
}




/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   CONSULTATION WIDGET
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#consultation-section {
  background: #444444;
  padding: 70px 0;
}

#consultation-section h2 {
  color: #FFF;
  font-size: 21px;
  font-weight: 400;
  margin-bottom: 10px;
}

#consultation-section h2 > span {
  color: #FFF;
  font-weight: 600;
}

#consultation-section p {
  color: rgba(255, 255, 255, 0.63);
}

#consultation-section .btn-primary, #consultation-section .btn-primary:active, #consultation-section .btn-primary:focus {
  padding: 14px 30px 12px;
  font-family: 'Playfair Display', serif;
  font-size: 17px;
  font-weight: 600;
}


/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   INNER PAGES
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#inner-copy {
    padding: 50px 30px 80px 15px;
}

#inner-copy p + h2, 
#inner-copy p + h3 {
  margin-top: 15px;
}

#inner-copy h1 {
  font-size: 25px;
  margin-bottom: 15px;
}

#inner-copy .all-svcs p + h2, 
#inner-copy .all-svcs p + h3 {
  margin-bottom: 0;
}

#bio-pics .col-md-4 {
  padding: 0 25px 30px 15px;
}

#bio-pics .col-md-4 h3 {
   margin-bottom: 0;
   margin-top: 8px;
}

#bio-pics .col-md-4 p {
  font-size: 1rem;
}


#inner-copy .bio img {
  width: 250px;
  padding-top: 0.6rem;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   SIDEBAR
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#sidebar h3 {
  color: #444;
  font-weight: 500;
}

#sidebar .sidebar-icon i {
  color: #505454;
}

#sidebar .sidebar-text p {
  font-size: 14px;
  text-align: left;
  margin-bottom: 20px;
}

#sidebar .btn-primary {
  background: #386C5F;
}

#sidebar .btn-primary:hover {
  background: #4FA08C;
}





/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   FOOTER
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

#footer-top {
  background: #000;
  padding: 70px 0 90px;
}

#footer-top h2 {
  color: #ECECEC;
  font-size: 18px;
  font-weight: 500;
  margin: 20px 0 15px;
}

#footer-top p,
#footer-top a, 
#footer-top a:active, 
#footer-top a:focus, 
#footer-bottom a, 
#footer-bottom a:active, 
#footer-bottom a:focus {
  color: rgba(255, 255, 255, 0.7);
  font-size: 13px;
}

#footer-top p,
#footer-top a {
  line-height: 1.8;
  font-weight: 400;
}

#footer-top i {
  color: rgba(255, 255, 255, 0.62);
  font-size: 15px;
  margin-right: 10px;
  width: 15px;
}

#footer-bottom {
  background: #000;
  border-top: 1px solid rgba(121, 121, 121, 0.1);
}

#footer-menu a,
#footer-bottom a, 
#footer-bottom p {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 400;
  text-align: left;
}


/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   MEDIA QUERIES
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */


@media all and (max-width: 1199px) {
}

@media all and (max-width: 1024px) {
  #header-logo img {
    width: 270px;
  }

  #header-logo.fixed-top img {
    width: 250px;
  }

  .navbar .navbar-nav .nav-link {
    padding: 10px 7px;
  }
}


@media all and (max-width: 991px) {
  #topbar-right {
    position: relative;
    left: 0px;
    padding-right: 1rem;
  }

 #index-section.parallax-bg {
    background: #232526;
  }
}

@media all and (max-width: 768px) {

  #topbar-right {
    padding: 0;
  }

#myCarousel .carousel-caption h2 {
    font-size: 32px;
    text-shadow: 3px 3px 12px rgb(0 0 0 / 62%);
}

  #consultation-section h2,
  #consultation-section p:last-of-type {
    text-align: center;
  }

  #consultation-section p:last-of-type {
    padding: 0 3rem;
  }
}

@media all and (max-width: 480px) {
  #header-phone {
    display: initial;
  }

  #header-social,
  #header-sendfiles {
    display: none;
  }

  #topbar #topbar-right .item {
    margin: 0;
  }

  #topbar .highlighted a,
  #topbar #header-phone a {
    font-size: 17px;
    padding: 12px 25px;
  }

  #topbar .item i[class*='fa-'] {
    font-size: 17px;
  }

  #header-logo img {
    width: 290px;
  }

  #header-logo.fixed-top img {
    min-width: initial;
    max-width: initial;
    width: 240px;
  }

  .fixed-top .navbar-button {
    top: 0px;
  }

  #overlay-menu-links .nav-link, 
  #overlay-menu-links a, 
  #overlay-menu-links a:active, 
  #overlay-menu-links a:focus, 
  #overlay-menu-links a:active:focus {
    font-size: 29px;
  }

  #overlay-menu-links .dropdown-menu a, 
  #overlay-menu-links .dropdown-menu a:active, 
  #overlay-menu-links .dropdown-menu a:focus, 
  #overlay-menu-links .dropdowm-menu a:active:focus, 
  #overlay-menu-links .dropdown-menu.show a:hover {
    font-size: 19px;
  }

  #services-top .service-box {
    margin: 20px 0;
  }

  #consultation-section h2 {
    padding: 0 1rem;
  }

  #sidebar h3 {
    font-size: 19px;
  }
}



@media all and (max-width: 425px) {
  #index-section, #services-top, #featured-services {
    padding: 90px 15px 100px;
  }

  #index-section {
    padding: 70px 15px 80px;
  }

  #footer-top {
    padding: 70px 15px 90px;
  }
}