*{
  margin:0px;
  padding:0px;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Roboto', sans-serif;
  color: #252525;
  color: #777777;
  font-size:16px;
  margin: 0px;
}

h1{
  margin: 0 0 40px;
  font-size: 2.5em;
  font-family: 'Roboto Slab', serif;
}

h2{
  font-weight: 300;
  text-transform: uppercase;
}

h2, 
h3,
h4{
  margin: 0 0 20px;
  line-height: 1.33em;
}


h3{
  text-transform: uppercase;
  font-family: 'Roboto Slab', serif;
}

p{
  margin: 0 0 20px;
  line-height: 1.5em;
}

a{
  font-family: 'Montserrat', sans-serif;
  text-decoration: none;
  transition: .4s;
  color: inherit;
}

ul{
  margin-bottom: 20px;
  padding-left: 40px;
}

ul li{
  margin-bottom: 10px;
}

p.small-text{
  font-size: .9em;
}

.center-text{
  text-align: center;
}

.subpage-content p a{
  font-weight: bold;
  color: #595959;
  border-bottom: 1px solid #804b53;
}

.subpage-content p a:hover{
  color: #804b53;
}

.thank-you-content .container{
  width: fit-content;
  margin:0 auto;
  text-align: center;
}

.thank-you-content img{
  margin-top:20px;
}

hr {
  margin-bottom: 20px;
}


@media (min-width: 1100px) {

  .container {
    width:1100px;
    margin:0 auto;
  }

  .content{
    padding: 40px 0;
  }

  /*** HEADER DESKTOP STYLES ***/

  #navContainer{
    width: 100%;
    transition: .6s;
    position: fixed;
    top: 0;
    background: white;
    min-height: fit-content;
    z-index: 100;
    height: 93px;
    background-size: cover;
  }

  #top-header{
    font-size: .9em;
    padding-top:10px;
    height: 80px;
    background: white;
  }

  #top-header .container{
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
  }

  #top-header img{
    width: 230px;
    height: auto;
    position: absolute;
    top:0;
    z-index: 1;
  }

  #top-header-links{
    width: 700px;
/*    padding:10px 0;*/
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: white;
  }

  .top-header-link{
    display: flex;
    align-items: center;
  }

  .top-header-link i{
    color: #7A7A7A;
    margin-right:10px;
    font-size: 2em;
  }

  .top-header-link p{
    margin-bottom: 0px;
    line-height: 1.2em;
  }

  .top-header-link a{
    color: #7A7A7A;
    line-height: 1.2em;
  }

  .top-header-link a:hover{
    color: #f8610d;
  }

  a#header-contact{
    background: white;
    border: 2px solid #18ba60;
    color: #252525;
    font-weight: bold;
    border-radius: 30px;
    padding:10px 20px;
    display: inline-block;
    text-transform: uppercase;
    margin-left:20px;
  }

  a#header-contact:hover{
    background: #18ba60;
    color: #fff;
  }

  #full-width-nav{
    width: 100%;
    background: #1d7626;
  }

  .topnav{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 1000px;
    margin:0 auto;
    padding-left:200px;
  }

  .topnav a{
    color: #fff;
    padding: 16px 20px;
    font-weight: 500;
    min-width: 70px;
    text-align: center;
    text-transform: uppercase;
    font-size:.9em;
    border-right:1px solid #18ba60;
    z-index: 2;
  }

  .topnav a:hover{
/*    background: #f8610d;*/
    background: #18ba60;
/*    color: #f8610d;*/
  }

  .topnav a:first-of-type{
    border-left:1px solid #18ba60;
  }

  #myTopnav a.icon{
    display: none;
  }

  /*dropdown menu styles*/

  .dropdown {
    position: relative;
    display: inline-block;
  }

  .hidden {
    display: none;
    position: absolute !important;
    z-index: 1;
    padding-top: 10px;
    margin-left:10px;
/*    border-bottom: 1px solid #521c25;*/
  }

  .hidden a {
    color: #fff;
    padding: 8px 12px;
    text-decoration: none;
    display: block;
    text-transform: none;
    background-color: rgb(128, 75, 83, .9);
    border-bottom: none;
    font-size: .85em;
    width: 160px;
    transition: .4s ;
    border-radius: 0px;
    /*border-left: 1px solid #521c25;
    border-right: 1px solid #521c25;*/
  }

  .hidden a:hover{
    background-color: #a7abba;
/*    color: #fff;*/
    display: block;
    opacity: 1;
  }

  /*.hidden a:first-of-type{
    border-top: 1px solid #521c25;;
  }*/

  .dropdown:hover .hidden {
    display: block;
  }

  .dropbtn{
    cursor: default;
  }

  a.dropbtn:hover{
    color:#fff;
    background-color:transparent;
  }

  .hidden:hover{
      opacity: 1;
  }

  .about {
    float: right;
    margin:0px 0px 20px 20px;
  }

  .hidden {
      animation: fadeIn .5s;
      -webkit-animation: fadeIn .5s;
      -moz-animation: fadeIn .5s;
      -o-animation: fadeIn .5s;
      -ms-animation: fadeIn .5s;
    }
    @keyframes fadeIn {
      0% {opacity:0;}
      100% {opacity:1;}
    }

    @-moz-keyframes fadeIn {
      0% {opacity:0;}
      100% {opacity:1;}
    }

    img.mobile-logo{
      display: none;
    }

  /***HERO DEKSTOP STYLES***/

  #homepage-hero,
  .subpage-hero{
    margin-top:140px;
    margin-bottom: -40px;
  }

 .subpage-hero h1{
  margin-bottom: 0px;
 }

 #homepage-hero {
  background: url(images/homepage-hero-truck.jpg) no-repeat bottom right;
  background-size: cover;
  color: white;
  padding:200px 0;
 }

 #homepage-hero .container{
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
 }

 #homepage-hero h1{
  line-height: 1em;
  font-size: 3.4em;
  margin-bottom: 20px;
 }

 #homepage-hero p{
  font-size: 1.5em;
  font-weight: 300;
  width: 500px;
 }

 .hero-links{
  display: flex;
 }

 .hero-links a{
  padding:10px 20px;
  border-radius: 30px;
  color: white;
  margin-right: 20px;
  margin-bottom: 40px;
  display: inline-block;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
  width:150px;
  transition: .6s;
 }

 .hero-links a:first-of-type{
  background: #f8610d;
  border:2px solid #f8610d;
 }

 .hero-links a:first-of-type:hover{
  background: transparent;
/*  color: #f8610d;*/
 }

 .hero-links a:last-of-type{
  background: transparent;
  border:2px solid #18ba60;
 }

 .hero-links a:last-of-type:hover{
  background: #18ba60;
/*  color: #fff;*/
 }

 #family-owned{
  padding:60px 0 80px;
 }

 #family-owned .container{
  display: flex;
  justify-content: space-between;
  align-items: center;
 }

 .family-owned-text{
  width: 500px;
 }

 .family-owned-text h1{
  margin-bottom: 10px;
  color: #252525;
 }

 .short-green-border{
  display: block;
  height: 6px;
  border-radius: 5px;
  width: 75px;
  margin-bottom: 40px;
  background: #18ba60;
 }

 #family-owned img{
  width: 500px;
  height: auto;
 }

 #homepage-services{
  background: #dadada;
 }

 #homepage-services .container{
  display: flex;
  flex-direction: column;
  align-items: center;
 }

 #homepage-services h1{
  margin-bottom: 10px;
  color: #252525;
 }

 #homepage-service-container{
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin-top:20px;
 }

 .homepage-service{
  border:1px solid white;
  padding:20px;
  width: 310px;
  height: 255px;
  margin-bottom: 20px;
  background: transparent;
  transition: .2s;
  color: #252525;
  text-align: center;
 }

 .homepage-service img{
  display: block;
  margin: 0 auto 20px;
 }

 .homepage-service p{
  color: #939393;
  transition: .2s;
 }
 img.icon-white{
  display: none;
  transition: .4s;
 }

 .homepage-service:hover{
  background: #f8610d;
  color: white;
  border: 1px solid #f8610d;
  transform: scale(1.03);
 }

 .homepage-service:hover p{
  color: white;
 }

 .homepage-service:hover .icon-white{
  display: block;
 }

 .homepage-service:hover .icon-color{
  display: none;
 }

 #free-estimate{
  background: #212025;
 }

 #free-estimate .container{
  display: flex;
  justify-content: space-between;
  align-items: center;
 }

 #free-estimate img{
  width: 500px;
  height: auto;
 }

 .homepage-form{
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  width: 500px;
 }

 .estimate-form h1{
  color: white;
  margin-bottom: 10px;
 }

 .homepage-form input,
 .homepage-form textarea{
  padding:10px; 
  font-family: 'Roboto', sans-serif;
  color: #cecece;
  margin-bottom: 10px;
  background: transparent;
  border:1px solid #45434C;
  border-radius: 5px;
 }

 .homepage-form input{
  width: 44%;
 }

 .homepage-form textarea{
  width: 100%;
  height: 150px;
 }

 .homepage-form #submit{
  color: white;
  background: #18ba60;
  border: 2px solid #18ba60;
  text-align:center;
  width: 30%;
  padding: 15px;
  border-radius: 30px;
  margin-top:10px;
  transition: .4s;
  font-weight: bold;
  text-transform: uppercase;
 }

 .homepage-form #submit:hover{
  background: #45434C;
  cursor: pointer;
 }

 img.garbage-man{
  position: absolute;
  bottom: -1934px;
  left:0;
  width: 260px !important;
  height: auto;
  display: none;
 }

 #homepage-reviews{
  background: #f7f7f7;
 }

 #homepage-reviews h1{
  margin-bottom: 10px;
  color: #252525;
 }

 .reviews-container{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
 }

 .homepage-review{
  display: flex;
  flex-direction: column;
  color: #777777;
  width: 500px;
 }

 .homepage-review p{
  padding:20px;
  background: white;
  border:1px solid #cdcdcd;
 }

 .homepage-review h3{
  margin-bottom: 0px;
  color: #000002;
  margin-left:40px;
 }

 .homepage-review h4{
  font-size: 1em;
  font-weight: 300;
  margin-left:40px;
 }

  /*FOOTER DESKTOP STYLES*/

  footer {
    background: #29282e;
    padding:60px 20px;
    color: #A3A3A3;
  }

  footer .container{
    display: flex;
    justify-content: space-between;
  }

  .footer-col:first-of-type{
    width: 380px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .footer-col:first-of-type img{
    margin-bottom: 20px;
    align-self: flex-start;
    width: 240px;
    height: auto;
  }

  p.top-right{
    width: 250px;
/*    margin-left:140px;*/
    margin:-80px 0 30px;
  }

  .footer-social{
    display: flex;
    width: 80%;
    justify-content: center;
  }

  .footer-social i{
    color: white;
    background: #45434C;
    padding:10px;
    transition: .4s;
    margin-right:10px;
    border-radius: 5px;
  }

  .footer-social i:hover{
    background: #18ba60;
  }

  .footer-col h3{
    color: white;
    padding-left:16px;
    margin-bottom: 40px;
    margin-top:20px;
  }

  .footer-col:nth-of-type(2){
    width: 660px;
  }

  .footer-links{
    display: flex;
    justify-content: space-between;
    margin-bottom: 45px;
  }

  .footer-link-container{
    display: flex;
    align-items: center;
  }

  .footer-links a{
    color: #18ba60;
    font-weight: 600;
    padding:8px 16px;
  }

  .footer-links a:hover{
    color: white;
    background: #18ba60;
  }

  #footer-icon-links{
    display: flex;
    justify-content: space-between;
    padding-left:16px;
  }

  #footer-icon-links i{
    color: #18ba60;
    font-size: 2em;
    margin-right:8px;
  }

  #footer-icon-links a:hover{
    color: #18ba60;
  }

  #footer-icon-links p{
    margin-bottom: 0px;
    font-size: .9em;
    line-height: 1.2em;
  }

  #sub-footer{
    background: #141316;
    padding:25px 20px;
    color: #A3A3A3;
    text-align: center;
    font-size: .9em;
  }

  #sub-footer span{
    color: #18ba60;
  }

  #sub-footer a{
    border-bottom: 1px solid #18ba60;
  }

  #sub-footer a:hover{
    color: #18ba60;
  }

}

@media (max-width: 1090px) {

  .container {
    width: 100%;
    margin:0 auto;
  }

  .content{
    padding: 60px 20px;
  }

  h1{
    font-size: 2.2em;
  }


 /***** HEADER MOBILE STYLES *****/

  header{
    width: 100%;
    transition: 0.4s;
    position: fixed;
    top: 0;
    z-index: 110;
    background: #1d7626 !important;
  }

  #top-header {
    display: none;
  }

  #navContainer{
    width: 100%;
/*    padding: 8px 0 0px;*/
  }

  #navContainer img{
    width: 130px;
    height: auto;
    margin: 10px 0 6px 20px;
  }

  /*a.logo-color{
    height: 73px;
    display: inline-block;
  }*/

  /* Links inside the navbar */
  .topnav a { 
    float: left;
    font-size: 16px;
    color: #fff;
    background: transparent;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
  }

  /* Add a background color to navbar links on hover */
  .topnav a:hover{
/*    background: #f8610d;*/
    background: #18ba60;
  }

  /* When the screen is less than 1099 pixels wide, hide all links. 
  Show the link that should open and close the topnav (.icon) */
  .topnav a{
    display:none;
  }

  .topnav a.icon {
    display: block;
    position: absolute;
    font-size: 30px;
    top: 12px;
    right: 0;
    float: right;
    margin-right: 10px;
    color: #fff;
    transition: unset;
    background: transparent;
  }

  .topnav a.icon:hover{
    background-color:transparent;
    color: #fff;
  }

    /* The "responsive" class is added to the topnav with JavaScript when the user clicks on the icon. 
    This class makes the topnav look good on small screens (display the links vertically instead of horizontally) */
    .topnav.responsive {
      position: relative; 
      clear:both;
      margin-top: 0px;
      /*background: rgba(255, 255, 255, .95);*/
    }
    .topnav.responsive a.icon {
      position: absolute;
      right: 0px;
      top: -92px;
      border-bottom:none;
      transition: unset;
    }

    .topnav.responsive a {
      float: none;
      display: block;
      text-align: left;
      border-bottom:1px solid #18ba60;
      padding-left: 30px;
    }
    .topnav.responsive .dropdown {float: none;}
    .topnav.responsive .dropdown-content {position: relative;}
    .topnav.responsive .dropdown .dropbtn {
      display: block;
      width: 100%;
      text-align: left;
    }

    /* DROPDOWN MENU */

    .topnav.responsive .dropdown {float: none;}
    .topnav.responsive .dropdown-content {position: relative;}
    .topnav.responsive .dropdown .dropbtn {
      display: block;
      text-align: left;
    }

    .topnav.responsive,
    .hidden {
      animation: fadeIn .5s;
      -webkit-animation: fadeIn .5s;
      -moz-animation: fadeIn .5s;
      -o-animation: fadeIn .5s;
      -ms-animation: fadeIn .5s;
    }
    @keyframes fadeIn {
      0% {opacity:0;}
      100% {opacity:1;}
    }

    @-moz-keyframes fadeIn {
      0% {opacity:0;}
      100% {opacity:1;}
    }

    /* Dropdown Content */
    .hidden{
      display: none;
      margin: 15px 0px 5px;
    }

    .hidden a{
      margin-left: 25px !important;
      font-size: .9em;
     /* width: 150px;*/
      border-bottom: none !important;
      padding: 8px 16px;
      margin-top: 5px;
    }

    /* Show the dropdown menu (use JS to add this class to the .dropdown-content container when the user clicks on the dropdown button) */
    .show {display:block;}

    .dropbtn:hover{
      cursor: pointer;
    }

    /*#header-book{
      font-weight: bold;
    }    */

 /*HERO MOBILE STYLES*/ 

 #homepage-hero,
 .subpage-hero{
  margin-top:104px;
 }

 .subpage-hero h1{
  margin-bottom: 0px;
 }

 #homepage-hero {
  background: url(images/homepage-hero.jpg) no-repeat center;
  background-size: cover;
  height: 470px;
  color: white;
 }

 #homepage-hero .container{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-align: center;
 }

 #homepage-hero h1{
  line-height: 1.2em;
  font-size: 2.2em;
  margin-bottom: 20px;
 }

 #homepage-hero p{
  font-size: 1.25em;
  font-weight: 300;
  margin-bottom: 40px;
  max-width: 500px;
 }

 .hero-links{
  display: flex;
 }

 .hero-links a{
  padding:10px 20px;
  border-radius: 30px;
  color: white;
  margin-right: 10px;
  display: inline-block;
  font-weight: bold;
  /*text-transform: uppercase;
  text-align: center;*/
 }

 .hero-links a:first-of-type{
  background: #f8610d;
  border:2px solid #f8610d;
 }

 .hero-links a:first-of-type:hover{
  background: transparent;
/*  color: #f8610d;*/
 }

 .hero-links a:last-of-type{
  background: transparent;
  border:2px solid #18ba60;
 }

 .hero-links a:last-of-type:hover{
  background: #18ba60;
/*  color: #fff;*/
 }

#family-owned .container{
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
 }

 .family-owned-text{
  max-width: 450px;
  width: 100%;
 }

 .family-owned-text h1{
  margin-bottom: 10px;
  color: #252525;
  text-align: center;
 }

 .short-green-border{
  display: block;
  height: 6px;
  border-radius: 5px;
  width: 75px;
  margin:0 auto 40px;
  background: #18ba60;
 }

 #family-owned img{
  max-width: 450px;
  width: 100%;
  height: auto;
  margin:20px 0;
 }

 #homepage-services{
  background: #dadada;
 }

 #homepage-services .container{
  display: flex;
  flex-direction: column;
  align-items: center;
 }

 #homepage-services h1{
  margin-bottom: 10px;
  color: #252525;
 }

 #homepage-service-container{
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin-top:20px;
 }

 .homepage-service{
  border:1px solid white;
  padding:20px;
  width: 270px;
  height: 225px;
  margin: 0 10px 20px;
  background: transparent;
  transition: .2s;
  color: #252525;
  text-align: center;
 }

 .homepage-service img{
  display: block;
  margin: 0 auto 10px;
 }

 .homepage-service h3{
  margin-bottom: 10px;
 }

 .homepage-service p{
  color: #939393;
  transition: .2s;
  margin-bottom: 0px;
 }
 img.icon-white{
  display: none;
  transition: .4s;
 }

 .homepage-service:hover{
  background: #f8610d;
  color: white;
  border: 1px solid #f8610d;
  transform: scale(1.03);
 }

 .homepage-service:hover p{
  color: white;
 }

 .homepage-service:hover .icon-white{
  display: block;
 }

 .homepage-service:hover .icon-color{
  display: none;
 }

 #free-estimate{
  background: #212025;
 }

 #free-estimate .container{
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
 }

 #free-estimate img{
  max-width: 400px;
  width: 100%;
  height: auto;
 }

 .homepage-form{
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  max-width: 400px;
  width: 100%;
  margin-bottom: 40px;
 }

 .estimate-form h1{
  color: white;
  margin-bottom: 10px;
  text-align: center;
 }

 .homepage-form input,
 .homepage-form textarea{
  padding:10px; 
  font-family: 'Roboto', sans-serif;
  color: #cecece;
  margin-bottom: 10px;
  background: transparent;
  border:1px solid #45434C;
  border-radius: 5px;
 }

 .homepage-form input{
  width: 42%;
 }

 .homepage-form textarea{
  width: 100%;
  height: 150px;
 }

 .homepage-form #submit{
  color: white;
  background: #18ba60;
  border: 2px solid #18ba60;
  text-align:center;
  width: 42%;
  padding: 15px;
  border-radius: 30px;
  margin-top:10px;
  transition: .4s;
  font-weight: bold;
  text-transform: uppercase;
 }

 .homepage-form #submit:hover{
  background: #45434C;
  cursor: pointer;
 }

 img.garbage-man{
  display: none;
 }

 #homepage-reviews{
  background: #f7f7f7;
 }

 #homepage-reviews h1{
  margin-bottom: 10px;
  color: #252525;
  text-align: center;
 }

 #homepage-reviews .short-green-border{
  margin:0 auto 40px;
 }

 .reviews-container{
  display: flex;
  flex-direction: column;
  align-items: center;
 }

 .homepage-review{
  display: flex;
  flex-direction: column;
  color: #777777;
  max-width: 500px;
  width: 100%;
 }

 .homepage-review p{
  padding:20px;
  background: white;
  border:1px solid #cdcdcd;
 }

 .homepage-review h3{
  margin-bottom: 0px;
  color: #000002;
  margin-left:40px;
 }

 .homepage-review h4{
  font-size: 1em;
  font-weight: 300;
  margin-left:40px;
 }

 .homepage-review:first-of-type{
  padding-bottom: 20px;
  margin-bottom: 40px;
  border-bottom: 1px solid #cdcdcd;
 }

 /*FOOTER MOBILE STYLES*/

  footer {
    background: #29282e;
    padding:60px 20px 40px;
    color: #A3A3A3;
  }

  footer .container{
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .footer-col:first-of-type{
    width: 340px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .footer-col:first-of-type img{
    margin-bottom: 20px;
    align-self: flex-start;
    width: 200px;
    height: auto;
  }

  p.top-right{
    width: 220px;
/*    margin-left:140px;*/
    margin:-70px 0 30px;
  }

  .footer-social{
    display: flex;
    width: 100%;
    justify-content: space-around;
  }

  .footer-social i{
    color: white;
    background: #45434C;
    padding:10px;
    transition: .4s;
    border-radius: 5px;
  }

  .footer-social i:hover{
    background: #18ba60;
  }

  .footer-social{
    display: flex;
    width: 80%;
    justify-content: center;
  }

  .footer-social i{
    color: white;
    background: #45434C;
    padding:10px;
    transition: .4s;
    margin-right:10px;
    border-radius: 5px;
  }

  .footer-social i:hover{
    background: #18ba60;
  }

  .footer-col h3{
    color: white;
    margin-bottom: 40px;
    text-align: center;
  }

  .footer-col:nth-of-type(2){
    width: 100%;
    padding-top:50px;
    margin-top:50px;
    border-top:1px solid #45434C;
  }

  .footer-links{
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    margin-bottom: 30px;
  }

  .footer-links a{
    color: #18ba60;
    font-weight: 600; 
    margin:0 15px 20px;   
  }

  .footer-links a:hover{
    color: white;
  }

  #footer-icon-links{
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
  }

  #footer-icon-links i{
    color: #18ba60;
    font-size: 1.7em;
    margin-right:15px;
  }

  #footer-icon-links a:hover{
    color: #18ba60;
  }

  #footer-icon-links p{
    margin-bottom: 0px;
    line-height: 1.2em;
  }

  .footer-link-container{
    display: flex;
    align-items: center;
    width: 290px;
    margin: 0 20px 30px;
  }

  #sub-footer{
    background: #141316;
    padding:25px 20px;
    color: #A3A3A3;
    line-height: 1.5em;
    text-align: center;
    font-size: .9em;
  }

  #sub-footer span{
    color: #18ba60;
  }

  #sub-footer a{
    border-bottom: 1px solid #18ba60;
  }

  #sub-footer a:hover{
    color: #18ba60;
  }

  .about {
    display: block;
    width:50%;
    max-width: 200px;
    height: auto;
    margin:0 auto 20px;
  }
}
