/* HTML Set up */
footer {  position: relative;  padding:0px; z-index:3;  background: #eff8ed}
.cms-footer { width: 100%; margin: 0 auto; padding:0px;  display: flex; flex-direction: row; flex-wrap: wrap;   justify-content: space-between; }
.cms-footer-navigation { width: 100%; margin: auto;  display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; } 
.cms-footer-bottom-bar { width: 100%;margin:0; padding: 15px 0px;  text-align: center; font-size:0.8rem;color: #3c3c3c; border-top: solid 1px #e6e6e5;}
.cms-footer-logo{ width: 154px; height: 80px; display: block; background: url("../images/logo.png") no-repeat left top; background-size: cover; }
.cms-footer-links-holder { margin: 0 auto; padding:30px 0px 50px 0px; position: relative; display:flex;  flex-wrap:wrap;  align-content: flex-start;vertical-align: top; }
.cms-footer-links-holder:nth-child(1) { width:20%;}
.cms-footer-links-holder:nth-child(2) { width:30%;}
.cms-footer-links-holder:nth-child(3) { width:20%;}
.cms-footer-links-holder:nth-child(4) { width:30%;}

.cms-footer-links { margin: 10px 0px; padding: 0; width: 100%; vertical-align: top; display: flex; flex-wrap: wrap; list-style: none; -webkit-transition: max-height .5s; transition: max-height .5s; }
.cms-footer-links li{flex:0 0 100%; margin:2px 0px; line-height: 2rem;   color:#3c3c3c; }

.cms-footer-links.half { width: 100%;display: flex; flex-wrap: wrap; margin: 10px 0px;  padding: 0; }
.cms-footer-links.half li{flex:0 0 50%; margin:2px 0px; }

  /* Typography */ 
footer h3 { width: 100%!important;font-size: 1.15rem!important;  font-weight: 700!important; line-height: 3em; margin-bottom:5px; display: flex; }
footer h3 a {  font-weight:700; vertical-align: top; color:#87c279!important; }
footer p, footer li {  margin:6px 3px; padding:0px;  font-weight:400; font-size: .9rem; line-height: 1.7rem;}

footer a { color:#3c3c3c!important;  text-decoration: none; -webkit-transition: color .5s, background .5s; transition: color .5s, background .5s; }
footer a:hover { opacity: .5; text-decoration: none;}
  
.cms-social-icons { margin:20px 0px; padding: 0px; width: 100%; display: flex; flex-wrap: wrap; justify-content: flex-start;  position: relative; }
.cms-social-icons li {display: flex; margin: 0px 5px; padding:5px 0px; border-radius:99rem;  list-style: none;  }
.cms-social-icons li i{ color: #87c279; }
.cms-social-icons li a {   border-radius: 0; transition: all 0.3s ease 0s;  opacity:1;   }
.cms-social-icons li a:hover{opacity:0.5;   }
   
.cms-cd-top { display: inline-block; position: fixed; z-index: 9999; bottom: 40px; right: 10px; height: 50px; width:50px;   overflow: hidden; text-indent: 100%; white-space: nowrap; background: url(../images/icon/icon-top.svg) no-repeat center 8px #232326; border-radius:5px;  background-size:28px 28px;  visibility: hidden; opacity: 0; box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);  -webkit-transition: opacity .3s 0s, visibility 0s .3s; -moz-transition: opacity .3s 0s, visibility 0s .3s; transition: opacity .3s 0s, visibility 0s .3s; }
.cms-cd-top.cd-is-visible, .cms-cd-top.cd-fade-out, .no-touch .cms-cd-top:hover { -webkit-transition: opacity .3s 0s, visibility 0s 0s; -moz-transition: opacity .3s 0s, visibility 0s 0s; transition: opacity .3s 0s, visibility 0s 0s; }
.cms-cd-top.cd-is-visible { visibility: visible; opacity: 1; }
.cms-cd-top.cd-fade-out { opacity: .8; }
.no-touch .cms-cd-top:hover { background-color: #2b70b8; opacity: 1; }

.no-touch-call{cursor:pointer; pointer-events: none;} 
 
 
/* Responsive Tablet Sizes */
@media only screen and (max-width:1024px) {
.cms-footer{ flex-wrap: wrap; }
.cms-footer .cms-footer-navigation { width: 100%; }
.cms-footer .cms-footer-navigation .cms-footer-links-holder { padding: 0 10px; }
}
/* Responsive Mobile Sizes */
@media only screen and (max-width: 999px) {
.cms-footer-links-holder { width: 100%; padding: 0; border-bottom: solid 1px rgba(102,102,102,.2); }
.cms-footer-links-holder h3 {  width: 100%!important;  display: block; margin: 0; padding: 0px; box-shadow: 0px 1px rgba(255,255,255,.1); cursor: pointer;/* Down Arrows */ }
.cms-footer-links-holder h3::after { float: right; margin-right: 10px;margin-top: 20px; width: 10px; height: 10px; content: ""; display: inline-block; vertical-align: middle;  border-top: 2px solid #333; border-right: 2px solid #333; -moz-transform: rotate(135deg); -ms-transform: rotate(135deg); -webkit-transform: rotate(135deg); transform: rotate(135deg); -webkit-transition: transform .5s; transition: transform .5s; }
.cms-footer-links-holder:nth-child(1), .cms-footer-links-holder:nth-child(2), .cms-footer-links-holder:nth-child(3), .cms-footer-links-holder:nth-child(4), .cms-footer-links-holder:nth-child(5), .cms-footer-links-holder:nth-child(6) { width: 100%; }
.cms-footer-links-holder::last-child {border-bottom: none;}
.cms-footer-links { max-height: 0; overflow: hidden; padding:0px;  }
.cms-footer-links-holder.active h3::after { -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
.cms-footer-links-holder.active .cms-footer-links { max-height: 10000px; }
.cms-footer-links-holder:nth-child(1) h3::after {display: none;}
.cms-social-icons { margin:10px; padding: 0px;  }
.cms-footer-logo{ margin-top: 20px; }
.cms-footer-bottom-bar {text-align: center;}
.no-touch-call{cursor:pointer; pointer-events: auto;}    
 }
.footer-end{width: 100%; display:flex; flex-wrap: wrap; justify-content: center; align-content: center; margin: 0; padding:80px 30px 160px 30px; background: url(../images/index/footer-bg.jpg) no-repeat left top #fbfaf5; background-size: 100% auto;   }
.footer-wrap{  flex: 0 0 80%; }
.cms-footer-box{ width: 100%; display:flex; flex-wrap: wrap; }
.cms-footer-title{ width: calc(40% - 20px); padding-right: 20px;display:flex;justify-content: flex-end; font-size: 2rem; font-weight: 500; color: #336633;   }
.cms-footer-txt{ width: calc(60% - 60px);  padding: 20px 30px;display:flex; justify-content: flex-start; flex-direction: column;    border-left: solid 1px #336633; }
.cms-footer-txt h3{ margin-bottom: 25px; color: #4ca338;font-size: 1.75rem; font-weight: 400;  }
.cms-footer-txt p{ font-weight: 400;  color: #333;line-height: 1.875; }
@media only screen and (max-width: 999px) {
.footer-end{ padding:50px 10px 100px 10px ; background: url(../images/index/footer-bg.jpg) no-repeat left bottom #fff; background-size: 100% auto;   }
.footer-wrap{  flex: 0 0 100%; }
.cms-footer-txt{   padding: 0px 30px;  }
.cms-footer-box{ width: 100%; padding: 0px; }

}

@media only screen and (max-width: 767.98px) {
.cms-footer-title{ width: calc(100% - 20px); padding-left: 10px;display:flex;justify-content: flex-start;font-size: 2rem;    }
.cms-footer-txt{ width: calc(100% - 20px);  padding: 10px;display:flex; justify-content: flex-start; flex-direction: column;    border-left:none; }
   
}
 @media only screen and (min-width:1900px) {
.footer-end{ padding:100px 30px;  }
}
