/*   
Theme Name: Hoji
Description: This is the theme for the Hoji Website
Author: Stephen Gacheru
Author URI: http://www.stepehngacheru.com
Version: 1.0
*/



/* ==========================================================================
   Base styles: Hacks and Overides
   ========================================================================== */

.clearfix:after {
     visibility: hidden;
     display: block;
     font-size: 0;
     content: " ";
     clear: both;
     height: 0;
     }
.clearfix { display: inline-block; }
/* start commented backslash hack \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* close commented backslash hack */


::-webkit-input-placeholder {
  color: #555;
}

:-moz-placeholder {
  /* Firefox 18- */
  color: #555;
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: #555;
}

:-ms-input-placeholder {
  color: #555;
}

/*Accordion/collapsible override*/

.collapsible{
  box-shadow: none;
  margin-top: 3em;
  margin-bottom: 3.5em;
}


.collapsible-header{
  font-size:1.2rem;
  padding: 1rem 2rem;
  font-weight: 300;
}

.collapsible-body {
   background: #f9f9f9;
}

.collapsible-body p {
   padding-left: 2rem;
}


/* ==========================================================================
   Global styles
   ========================================================================== */
h1,h2,h3,h4,h5{
  font-weight: 300;
  letter-spacing: -2px !important;
}

h1{
  font-size: 2.9rem;
}

p{
  font-weight: 300;  
}


a{
  color: #FF9800;
}

a:hover{
  text-decoration: underline;
}

.border-bottom{
  border-bottom:#ddd solid 1px !important; 
}




/* ==========================================================================
   Content 
   ========================================================================== */

}
/* Top Navigation
======================= */


 nav.main-nav{
  background-color: #FF9800 !important;

}

nav.main-nav a:hover{
  text-decoration: none;
}

nav.main-nav ul a{
  font-size: 0.95rem;
  text-transform: uppercase;
}


nav.main-nav .center{
 margin-left: 7em;
}
nav.main-nav .sign-up{
  border: #fff solid 2px;
  line-height: 35px;
}

nav.main-nav .small-nav a{
  font-size: 0.85em;
}

nav.main-nav .brand-logo .logo {
  margin-top: 5px;
  width: 87px;
  height: 47px;
}


/* Main Content
======================= */

/*--Home page--*/

.hero{
  background: #333;
  background-image: url(images/hero.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-position: center center;
  min-height:600px;
 }

 .hero h1{
    font-size: 4.3rem; 
    padding-top: 6.7rem;
    color: #fff;
    letter-spacing: -3px;
    font-weight: 300;
    margin-bottom: 0 !important;
  }

  .hero p{
    font-size: 1.8rem;
    color: #fff;
    font-weight: 300;

  }

  .hero a{
    margin-top: 0.5rem;
  }

 .hero .work-btn{
  margin-left: 2rem;
  background: transparent !important;
  border:#fff solid 1px !important; 
 }

 .section-content{
  padding: 3rem 0;
}

 .section-content-slider{
  padding-bottom:6rem;
}

.summary{
  text-align: center;
}

.summary h2{
  font-size: 3.4em;
  letter-spacing: -1px;
  line-height: 80%;
}

.summary h3{
  font-size: 1.6em;
  letter-spacing: 0px !important;
  }

.summary p{
  color: #666;
}

.summary-icon {
    width: 80px;
    height: 80px;
    border: solid 2px #FF9800;
    border-radius: 50%;
    vertical-align: top;
    text-align: center;
    font-size: 40px !important;
    line-height: 75px !important;
    margin-top: 0.5em;
    color: #FF9800;
    text-align: center;
}

.light-grey-bg{
  background: #fafafa;
}

.light-grey-bg .bx-wrapper .bx-viewport{
  background: none !important;
   height: 540px !important;
}

.desktop-slider img{
  padding-left: 1.5em;
  padding-top: 1.2em;

}

.phone-slider-container {
  display: none;
  }

.phone-slider img{
  padding-left: 1.5em;
  padding-top: 1.2em;
}

.mobile-app-content{
  padding-left: 3.5em;
  padding-top: 5em;
}

.mobile-app-content p{
  font-size: 1.25em;
  color: #777;
  }

.testimony{
  text-align: center;
   color: #fff;
   background-color: #333;
  background-image: url(images/testimony-bg.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-position: center center;
 padding: 7.5rem 0 5rem;
}

.testimony .bx-wrapper .bx-viewport{
  background: none !important;

}

.testimony .bx-wrapper .bx-pager {
  padding-top: 5.5em;
}

.testimony q{
  font-size: 1.9em;
  font-weight: 200;
  color: #fad59f;
}

.testimony p{
  font-size: 1.1em;
  color: #fff;
}

.clients{
  background: #fafafa;
}

.clients-logos {
  text-align: center;
  padding: 10px 15px;
}

.clients-logos h4{
  padding-bottom:0.4em;
}

.clients-logos a {
  -webkit-opacity: 0.4;
  -moz-opacity: 0.4;
  opacity: 0.7;
}
.clients-logos a img {
  margin: 10px 20px;
  vertical-align: top;
}

.clients-logos a:hover {
  -webkit-opacity: 0.7;
  -moz-opacity: 0.7;
  opacity: 0.7;
}
.clients-logos a:hover img {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

/*--Inner pages--*/

.inner-container p{
  font-size: 1.22rem;
  font-weight: 300;
  line-height: 1.7 !important;
  color: #777;
}


.lead{
  margin-bottom: 2em;
}
.lead p{
  font-size: 1.45rem;
  font-weight: normal;
  color: #555;
}

.lead hr{
  width: 20%;
  border: solid 2px #FF9800;
  margin-left: 0;
  margin-bottom: 2.5rem;
}


/*--Plain pages--*/

.plain-container{
  font-weight: 300;
  line-height: 1.7 !important;
  color: #777; 
  font-size: 1.1rem;
}

.plain-container h1,h2,h3,h4{
  color: #555;
}

.plain-container h3 {
  font-size: 2.1rem;
  letter-spacing: -1px !important;  
}
.plain-container h3 {
  font-size: 1.8rem;
  letter-spacing: -0.5px !important;  
}

.plain-container h4 {
  font-size: 1.6rem;
  letter-spacing: -0.5px !important;  
}


/*About*/

.team-container{
  /*margin-top: 1rem;*/
}

.team-container h4{
  font-size: 1.8rem;
  letter-spacing: -0.5px !important;

}

.team-container p{
  font-size: 1.05rem;
  line-height: 1.75;
}

.team-container img{
  width: 90%;
  height: auto;
  border: #eee solid 1px;
}

/*Features*/

.feature-row h4{
  font-size: 1.4rem;
  letter-spacing: -0.5px !important;
}

.feature-row p{
  font-size: 0.9rem;
  }

.feature-icon {
    width: 60px;
    height: 60px;
    border: solid 2px #FF9800;
    border-radius: 50%;
    vertical-align: top;
    text-align: center;
    font-size: 30px !important;
    line-height: 55px !important;
    margin-top: 0.4em;
    color: #FF9800;
    text-align: center;
}

/*Pricing - Transactional*/

.pricing-container h5{
  letter-spacing: 0 !important;
}

.pricing-container .noUi-horizontal {
    height: 15px;
    margin-top: 3em;
    margin-bottom: 1em;
}

.pricing-container  label{
    margin-top: 1.7em;
    display: block;
    color: #555;
    font-size: 1em;
  }

.pricing-container  input[type="number"] {
  border: 1px #ddd solid;
  padding-left: 5px;
  margin-top: 0.9em;
  border-radius: 5px;
  font-size: 1.15em;
  background: #fafafa;
  }

.pricing-container table{
  border: 1px solid #d0d0d0;
  margin-top:1em;
  margin-bottom:1em;
  margin-left:-0.8em;
}

.pricing-container table .right-table{
  text-align: right !important;
}

.pricing-container table .bold{
  font-weight:bold;
}

/*Pricing - Subscription*/

.pricing-tables {
  padding: 0 7px 25px;
  font-size: 0;
  letter-spacing: -4px;
  white-space: nowrap; 
}

  .pricing-tables h3 {
    font-size: 1.5rem;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: 0 !important;
    color: #444; 
    font-weight: normal;
    padding-bottom: 1rem;
  }

  .pricing-tables .credits {
    font-size:1.3rem;
    line-height: 1.5;
    color: #444;
    margin-top: 0;
  }

.plan {
  display: inline-block;
  vertical-align: top;
  width: 24%;
  border: 5px solid #ddd;
  min-height: 100px;
  margin: 70px -3px 50px -2px;
  padding: 0 10px 35px;
  font-size: 1.6rem;
  letter-spacing: 0;
  white-space: normal;
  text-align: center;
}

.plan .head {
    padding: 0 0 01px; 
  }

  .plan .price {
  display: block;
  font-weight: bold;
  text-transform: uppercase;
 }

 .price .price-main {
  display: block;
  padding: 0 0 17px;
  color: #777;
  font-size: 1.4rem;
  vertical-align: top;
  line-height: 1;
  white-space: nowrap;

}
.recommended .price .price-main {
    font-size: 1.6rem;
  }

.price .price-main .code {
  font-size: 1.1rem;
  display: inline-block;
  vertical-align: top;
  margin: 0 7px 0 0;
  position: relative; 
  color: #777;
  font-weight: normal;
}

.price .price-main .month {
  font-size: 1.1rem;
  font-weight: normal;
  color: #555;
}

.recommended .price .price-main .month {
    font-size: 1.2rem; }

.plan ul {
  display: block;
  position: relative;
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.75;
  padding: 29px 0 22px;
  min-height: 117px;
  list-style: none;
  color: #777;
   }

.plan ul:before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 60px;
  margin: 0 0 0 -30px;
  height: 5px;
  background: #4CAF50 ; 
}

.plan li{
 border-bottom:#ddd solid 1px;
 padding-top: 0.5em;
 padding-bottom: 0.5em;
}

.plan.recommended {
  margin-top: 40px;
  width: 28%;
  position: relative;
  z-index: 99;
  background: #f9f9f9;
  border-color: #FF9800; 
}

  .plan.recommended ul {
    min-height: 176px;
    line-height: 32px;
    padding: 37px 0 22px; 
  }

.plan .btn{
  font-size: 0.6em; 
  background: #fcfcfc;
  color: #777;
  box-shadow: none;
  border: solid 1px #ccc;
}

.plan.recommended .btn{
  color: #fff;
  border: none;
}

/*--Contact--*/

.contact-details{
  color: #666;
  font-size: 0.87rem;
  margin-top:1rem;
}

.contact-details h6{
  color: #555;
  font-size: 1rem;
  padding-top: 1rem;
}

.contact-details a{
  color: #555;
}

.contact-details a:hover{
  color: #FF9800;
}

.contact-button {
    position: relative;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    vertical-align: middle;
    z-index: 1;
    will-change: opacity, transform;
    transition: all .3s ease-out;
    background-color: #4CAF50 !important;
    border: none;
    border-radius: 2px;
    display: inline-block;
    height: 36px;
    line-height: 36px;
    outline: 0;
    padding: 0 2rem;
    text-transform: uppercase;
    vertical-align: middle;
    -webkit-tap-highlight-color: transparent;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
    color: #fff;
}

.contact-button:hover {
    box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
}

/*contact form override*/

div.wpcf7-response-output {
    margin: 2em 0 1em;
    padding: 0.4em 1em;
}

div.wpcf7-mail-sent-ok {
    border: none;
    background-color: #4CAF50;
    color: #fff;
}

div.wpcf7-validation-errors {
    border: none;
    background-color: #ee6e73;
    color: #fff;
}

span.wpcf7-not-valid-tip {
    color: #ee6e73;
}

 /*--Blog--*/
 
 .blog-container{
   padding-bottom: 4rem;
}

.blog-container h1.page-header{
  border-bottom:#ddd solid 1px; 
  padding-bottom: 1.5rem;
}

.blog-container h2{
  font-size: 2.1em;
  letter-spacing: -1px !important;  
  margin-bottom: 0.5rem !important;
  line-height: 1.2;
}

.blog-container h2 a{
  color: #555;
}

.blog-container h2 a:hover{
  color: #FF9800;
  text-decoration: none;
}

.blog-list{
  border-bottom:#ddd solid 1px; 
  padding-top: 0.5rem;
  padding-bottom: 2rem;
}

.blog-list.single-list{
  border-bottom:none; 

}

.blog-list .meta {
   font-size:0.9rem;
   letter-spacing: 0;
   color: #999;
  }

  .blog-list .meta .time{
   /*padding-left: 0.1rem;*/
  }
 
  .blog-list h3{
    font-size: 1.8em;
    letter-spacing: -1px !important;
  }

  .blog-list h4{
    font-size: 1.5em;
    letter-spacing: -0.5px !important;
  }

  .blog-list h5{
    font-size: 1.2em;
    letter-spacing: 0 !important;
  }

  .blog-list p {
    font-size: 1.1rem;
    line-height: 1.7 !important;
    color: #888;
  }

  .blog-list .excerpt a {
    padding-top: 0.5em;
    display: block;
  }

  .blog-list ul, ol {
    padding-left: 2em;
    color: #888;
    font-size: 1.1rem !important;
    font-weight: 300 !important;
  }

  .blog-list ul li{
    list-style: disc;
  }

  .blog-list blockquote {
    border-left: 5px solid #FF9800;
    color: #777;
  }

  .comment-form{
    padding-top: 0.5em;
  }

  .comment-header{
    padding-bottom: 0.5em;
  }

  .commentlist{
     padding-left:0;
  }

  .commentlist li{
    border-bottom:#ddd solid 1px; 
    margin-bottom: 1.2em;
    padding-bottom: 1em;
    list-style:none;
  }

  .commentmetadata a{
    color: #999;
    font-size: 0.8em;
  }

  .commentlist .reply a{
    font-size: 0.8em;
  }

  .commentlist .children{
    padding-top:1em;
    border-top: #ddd solid 1px;
    margin-top: 1em;
  }

  .commentlist .children li{
     list-style: none;
  }

  .commentlist .children li:last-of-type{
     border-bottom: none;
     padding-bottom: 0;
  }

  .cancel-comment-reply {
     padding-bottom: 1em;
  }

/* _pagination */
.pagination { 
  clear:both; 
  padding: 10px 4px;  
  margin-top:10px; 
}
.pagination a { 
  text-decoration:none;
}

.older-posts a{ 
  float:left;  
  margin-top:30px; 
  background-color:#fff; 
  border: #ddd solid 1px; 
  -moz-border-radius: 3px; 
  -webkit-border-radius: 3px; 
  padding:6px;  
}
.newer-posts a{ 
  float:right;  
  margin-top:30px; 
  background-color:#fff; 
  border: #ddd solid 1px; 
  -moz-border-radius: 3px; 
  -webkit-border-radius: 3px; 
  padding:6px; 
}

.older-posts a:hover, .newer-posts a:hover{
  background: #FF9800 ;
  color: #fff;
  border: #FF9800 solid 1px;
}





  .sidebar{
  margin-top:3rem;   
}

.sidebar h3{
  font-size:1.5rem; 
  letter-spacing: 0 !important;  
 }
  
   .sidebar .widget_recent_entries{
     border: #ddd solid 1px;
  }

  .sidebar .widget_recent_entries h3{ 
    
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding:1rem;
    border-bottom: #ddd solid 1px;
  }

  .sidebar .widget_recent_entries ul{
     margin-top: 0;
     margin-bottom: 0;
  }

  .sidebar .widget_recent_entries li{
    border-bottom: #ddd solid 1px;
    padding: 1rem;
  }

  .sidebar .widget_recent_entries li a{
    color: #555;
  }

  .sidebar .widget_recent_entries li a:hover{
    color:  #FF9800;
    text-decoration: none;
  }

  .sidebar .widget_recent_entries li:last-child{
    border-bottom: none;
  }

  .sidebar .widget_recent_entries .post-date {
    color: #aaa;
    font-size: 0.8rem;
    display:block;
}


.error-page{
  margin-top: 5em;
  margin-bottom: 10em
}

.error-page h1{
  font-size: 6em;
  letter-spacing: -5px !important;
  color: #666;
}

.error-page .lead p{
  letter-spacing: -1px !important;
  /*color: #666;*/
  font-weight:300;
  font-size: 1.7em;
}

/* ==========================================================================
   Footer 
   ========================================================================== */

footer {
  background-color: #FF9800;
  padding-top: 1.2em;
  padding-bottom: 0.1em;
  color: #fff;
}

footer a{
  color: #fff;
  
}

footer .links ul{
  margin-bottom: 0 ;
}

footer .links li{
  display:inline;
  padding-right: 1em;
  margin-bottom: 0 !important;
  text-transform: uppercase;
}

footer .links li a{
  font-size: 0.9em;
}

footer .smaller-links li{
  display:inline;

}

footer .smaller-links li a{
  font-size: 0.8em;
  text-transform:capitalize;
}

footer .contacts  p{
  font-size: 1em;
  color: #fff;
  margin-bottom: 0 ;
  line-height: 2;
  }

footer .foot-note{
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  padding-top: 0.5em;
}

footer .foot-note  p{
  font-size: 0.75em;
  font-weight: 300;
  letter-spacing: 0.5px ;
  margin-top: 1.2em ;
  margin-bottom: 0.2em ;
  }

  footer .foot-note  span{
  padding-left: 1em;
  }


/* ============================= */
/* ! Layout for Mobile   */
/* ============================= */

@media only screen and (max-width: 767px) {

  .hero{
  min-height:510px;
 }

 .hero h1{
    font-size: 3.5rem; 
    padding-top: 3rem;
    letter-spacing: -2px;
  }

  .hero a{
    display: inline-block;
  }

 .hero .work-btn{
  margin-left: 0.2em;
 }

 .section-content{
  padding: 2rem 0;
}

.summary{
  text-align: center;
}


.summary h2{
  font-size: 3em;
  line-height: 80%;
}

.summary h3{
  font-size: 2em;
  }

.mobile-app-content{
  padding-left:0;
  padding-top: 3em;
}

.testimony{
 padding: 4rem 0 2rem;
}

.desktop-slider-container {
  display: none;

  }

.phone-slider-container{
  display: block;
}

.phone-slider li img{   
  display: block;
}

.testimony q{
  font-size: 1.9em;
}

.testimony p{
  font-size: 1.3em;
}

.feature-row h4{
  font-size: 1.6rem;
}

.feature-row p{
  font-size: 1.1rem;
  }

.lead hr{
  width: 30%;
}

}

