/*
Theme Name:     Storybranding
Theme URI:      https://www.storybranding.com/
Description:    A custom theme for The Storybranding Group website.
Author:         Vess Studio
Author URI:     https://vess.studio/
Version:        1.0.2
Tags:           custom-menu, responsive-layout, whitelabel-page-template, translation-ready, sidebar-widgets

Text Domain: storybranding

License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
 1. Global
 2. Hyperlinks
 3. Headings
 4. Header
 5. Navigation
 6. Slideshow
 7. Buttons
 8. Content
 9. Social Buttons
10. Post Formats
11. White-Label Page
12. WordPress Gallery
13. Images
14. Pagination
15. Sidebar
16. Sidebar Widgets
17. Tag Cloud Widget
18. Text Widget
19. Custom Menu Widget
20. Calendar Widget
21. Recent Comments
22. Search Form
23. Footer
24. Comments
25. WooCommerce
26. Forms
27. Tables
28. Grid

--------------------------------------------------------------*/

/************************************************
*   1.  Global                                  *
************************************************/

body {
    background: #FFFFFF;
    color: #303030;
    font-size: 14px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0px auto 0px;
    padding: 0px;
    }
.body-wrap {
    overflow: hidden;
    }
p {
    margin-top: 0;
    }
.hidden {
    display: none;
    }
.clear {
    clear: both;
    }
.left {
    float: left;
    text-align: left;
    }
.right {
    float: right;
    text-align: right;
    }
.alignleft,
.alignright {
    display: block;
    margin: 12px auto 12px;
    }
.aligncenter {
    display: block;
    margin: 12px auto 12px;
    }
.text-left {
    text-align: left;
    }
.text-right {
    text-align: right;
    }
.text-center {
    text-align: center;
    }

@media (min-width: 768px) {
    .alignleft {
        float: left;
        margin: 12px 24px 12px 0px;
        }
    .alignright {
        float: right;
        margin: 12px 0px 12px 24px;
        }
    }

/************************************************
*   2.  Hyperlinks                              *
************************************************/

a {
    color: #75B011;
    text-decoration: none;
    transition: background .25s, color .25s;
    -moz-transition: background .25s, color .25s;
    -webkit-transition: background .25s, color .25s;
    -o-transition: background .25s, color .25s;
    }
a:focus, a:hover, a:active {
    color: #138DBF;
    outline: none;
    }
a img {
    border: none;
    }

.content a {
    font-style: italic;
    font-weight: 600;
    }
.content a.post-edit-link {
    font-style: normal;
    display: inline-block;
    }

footer a {
    color: #138DBF;
    }
footer a:focus,
footer a:hover,
footer a:active {
    color: #75B011;
    }

/************************************************
*   3.  Headings                                *
************************************************/

h1 {
    color: #238CC1;
    font-size: 2.2em;
    font-family: 'Myriad Pro', 'Cabin', Arial, sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: -1.2px;
    line-height: 1.4;
    margin: 4px 0 4px 0;
    padding: 4px 0 4px 0;
    }
h2 {
    color: #6BA715;
    font-size: 1.3em;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 600;
    font-style: normal;
    line-height: 1.4;
    margin: 4px 0 4px 0;
    padding: 4px 0 4px 0;
    }
h3 {
    color: #6BA715;
    font-size: 1.2em;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: -0.8px;
    line-height: 1.4;
    margin: 4px 0 4px 0;
    padding: 4px 0 4px 0;
    }
h4 {
    color: #6BA715;
    font-size: 1.6em;
    font-family: 'Myriad Pro', 'Cabin', Arial, sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: -0.4px;
    line-height: 1.4;
    margin: 4px 0 4px 0;
    padding: 4px 0 4px 0;
    }
h5 {
    color: #6BA715;
    font-size: 1.3em;
    font-family: 'Myriad Pro', 'Cabin', Arial, sans-serif;
    font-weight: 600;
    font-style: normal;
    line-height: 1.4;
    padding: 4px 0 4px 0;
    margin: 4px 0 4px 0;
    }
h6 {
    color: #238CC1;
    font-size: 1.1em;
    font-family: 'Myriad Pro', 'Cabin', Arial, sans-serif;
    font-weight: 400;
    font-style: normal;
    line-height: 1.4;
    padding: 4px 0 4px 0;
    margin: 2px 0 6px 0;
    }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: #6BA715;
    text-decoration: none;
    border: none;
    }
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover,
h1 a:active, h2 a:active, h3 a:active, h4 a:active, h5 a:active, h6 a:active,
h1 a:focus, h2 a:focus, h3 a:focus, h4 a:focus, h5 a:focus, h6 a:focus {
    text-decoration: none;
    border: none;
    }
.title {
    display: block;
    font-size: 1.25em;
    line-height: 1.4;
    letter-spacing: -0.4px;
    margin: 0 0 4px 0;
    padding: 0 0 4px 0;
    }
.headline {
    font-size: 2.5em;
    font-family: 'Myriad Pro', 'Cabin', Arial, sans-serif;
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: -1.2px;
    margin: 0;
    padding: 0 0 8px 0;
    }

/************************************************
*   4.  Header                                  *
************************************************/

header {
    width: 100%;
    background-color: #67A029;
    background-image: linear-gradient(#416704, #67A029);
    }
header .wrapper {
    width: 100%;
    background: url('img/header-bg.jpg') no-repeat center 0;
    }
@media (min-width: 768px) {
    header .wrapper {
        height: 250px;
        }
    .home header .wrapper {
        height: 339px;
        }
    }

header .container {
    max-width: 995px;
    padding-top: 2px;
    margin: 0 auto;
    }

.logo {
    font: 1px sans-serif;
    direction: ltr;
    text-indent: -99999px;
    width: 200px;
    height: 80px;
    background: url('img/logo.png') no-repeat 0 0;
    padding: 0;
    margin: 10px 0 10px 15px;
    float: left;
    position: relative;
    z-index: 15;
    }
.logo a {
    width: 100%;
    height: 100%;
    display: block;
    }
@media (min-width: 995px) {
    .logo {
        margin: 10px 0;
        }
    }

/* banner */
.home .banner {
    height: 237px;
    background-image: url('img/banner-home.jpg');
    }
.blog .banner,
.page-template-template-blog .banner,
.single-post .banner {
    background-image: url('img/banner-blog.jpg');
    }
.banner {
    width: 100%;
    height: 148px;
    background: #037DB0 url('img/banner.jpg') no-repeat 0 0;
    position: relative;
    clear: both;
    }
.banner:after {
    content:"";
    position:absolute;
    z-index:-1;
    width: 100%;
    height: 9px;
    background: url('img/banner-shadow.png') no-repeat 0 center;
    left: 0;
    bottom: -9px;
    }

.banner .button {
    color: #FFFFFF;
    font-style: normal;
    font-weight: 400;
    line-height: 1.35em;
    letter-spacing: 0.05em;
    text-align: right;
    vertical-align: middle;
    /*height: 35px;*/
    background: #7CC330;
    padding: 10px 42px 11px 0.9em;
    margin: 0;
    display: inline-block;
    overflow: hidden;
    position: absolute;
    bottom: 0; right: 0;
    z-index: 5;
    }
.banner .button span {
    text-transform: uppercase;
    }
.banner .button:after {
    content: "▶";
    color: #86B40B;
    text-align: center;
    line-height: 4em;
    width: 31px;
    height: 100%;
    background: #518A03;
    border: none;
    padding: 1px 0;
    margin: 0;
    position: absolute;
    bottom: 0; right: 0;
    }

.home .banner .img {
    width: 493px;
    height: 298px;
    background-image: url('img/banner-img-home.png');
    background-size: 410px;
    left: -90px;
    }
.banner .img {
    width: 390px;
    height: 212px;
    background: url('img/banner-img.png') no-repeat 0 0;
    position: absolute;
    bottom: 0; left: -45px;
    }
@media (min-width: 493px) {
    .home .banner .img {
        background-size: 493px;
        }
    }

/************************************************
*   5.  Navigation                              *
************************************************/

/*** ESSENTIAL STYLES ***/
.menu, .menu * {
    margin: 0;
    padding: 0;
    list-style: none;
    }
.menu {
    line-height: 1.0;
    display: inline-block;
    position: relative;
    z-index: 10;
    }
.menu ul {
    text-align: center;
    margin: 0px;
    padding: 0px;
    }
.menu ul ul, ul.menu ul {
    width: 100%;
    }
.menu ul li ul li, ul.menu ul li {
    width: 100%;
    margin: 0;
    }
.menu li:hover {
    visibility: inherit; /* fixes IE7 'sticky bug' */
    }
.menu li {
    display: block;
    position: relative;
    }
.menu a {
    display: block;
    position: relative;
    }
.menu li:hover ul {
    left: 0;
    top: 60px; /* match top ul list item height */
    z-index: 99;
    }
ul.menu li:hover li ul {
    top: -9999px;
    }
ul.menu li li:hover ul {
    left: 200px; /* match ul width */
    top: 0;
    }
ul.menu li li:hover li ul {
    top: -9999px;
    }
ul.menu li li li:hover ul {
    left: 200px; /* match ul width */
    top: 0;
    }

@media (min-width: 768px) {
    .menu li {
        /*float: left;*/
        display: inline-block;
        }
    .menu a {
        display: inline-block;
        }
    .menu ul ul, ul.menu ul {
        position: absolute;
        top: -9999px;
        width: 200px; /* left offset of submenus need to match (see below) */
        }
    }

/*** SKIN ***/
header nav {
    font-family: 'Myriad Pro', 'Cabin', Arial, sans-serif;
    text-align: right;
    position: relative;
    z-index: 10;
    display: none;
    }
@media (min-width: 925px) {
    header nav {
        display: block;
    }
}
header .menu {
    margin-top: 20px;
    }
header .menu li {
    text-align: inherit;
    float: none;
    }
header .menu li:last-child a {
    border-right: none;
    }
header .menu a {
    color: #DAF7AB;
    font-size: 0.95em;
    line-height: 1.25em;
    padding: 0.9em 10px 1em;
    border-right: 1px solid #90C95A;
    }
header .menu a:focus,
header .menu a:hover,
header .menu a:active {
    color: #FFFFFF;
    outline: 0;
    }

.navbar .menu-toggle {
    color: #FFFFFF;
    font-size: 1.2em;
    text-align: center;
    width: 92%;
    background-color: #0F88BB;
    background-image:
      linear-gradient(
        to right,
        #0F88BB,
        #1C9BC7,
        #0F88BB
      );
    padding: 0.8em 0;
    margin: 18px auto 0;
    display: block;
    cursor: pointer;
    }
@media (min-width: 768px) {
    .navbar .menu-toggle {
        display: none;
        }
    }

.navbar {
    font-family: 'Myriad Pro', 'Cabin', Arial, sans-serif;
    max-width: 995px;
    margin: 0 auto;
    }
.navbar .menu.toggled-on {
    display: block;
    }
.navbar .menu {
    font-size: 0;
    text-align: center;
    width: 92%;
    background-color: #0F88BB;
    background-image:
      linear-gradient(
        to right,
        #0F88BB,
        #1C9BC7,
        #0F88BB
      );
    margin: 0 auto;
    display: none;
    }
.navbar .menu:after {
    content:"";
    position:absolute;
    z-index:-1;
    width: 100%;
    height: 8px;
    background: url('img/navbar-shadow.png') no-repeat 0 center;
    left: 0;
    bottom: -8px;
    }
.navbar .menu > li {
    font-size: 14px;
    }
.navbar .menu a {
    color: #FFFFFF;
    font-style: normal;
    font-size: 1.2em;
    line-height: 60px;
    text-decoration: none;
    letter-spacing: 0.1px;
    background: transparent;
    margin: 0;
    padding: 0 13px;
    }
.navbar .menu a:focus,
.navbar .menu a:hover,
.navbar .menu a:active {
    outline: 0;
    }
.navbar .menu > li > a {
    background-color: #8CC726;
    background-image:
      linear-gradient(
        to top,
        #76B700,
        #8CC726
      );
    border-bottom: 1px solid #90C95A;
    }
.navbar .menu ul.sub-menu {
    font-size: 0.75em;
    background: #76B700;
    }
.navbar .menu ul.sub-menu ul {
    font-size: 1em;
    }
.navbar .menu ul li a {
    font-weight: 600;
    line-height: 1.5em;
    padding-top: 0.6em;
    padding-bottom: 0.6em;
    border-bottom: 1px solid #90C95A;
    display: block;
    }
.navbar .menu ul li a:focus,
.navbar .menu ul li a:hover,
.navbar .menu ul li a:active {
    background: #458607;
    }

@media (min-width: 768px) {
    .navbar .menu.toggled-on {
        display: inline-block;
        }
    .navbar .menu {
        width: 100%;
        margin-top: 18px;
        display: inline-block;
        }
    .navbar .menu > li > a {
        background-color: transparent;
        background-image: none;
        border: none;
        }
    .navbar .menu > li:focus > a,
    .navbar .menu > li:hover > a,
    .navbar .menu > li:active > a {
        background-color: #8CC726;
        background-image:
          linear-gradient(
            to top,
            #76B700,
            #8CC726
          );
        }
    .navbar .menu ul.sub-menu {
        text-align: left;
        }
    }

/************************************************
*   7. Buttons                                  *
************************************************/

.button {
    color: #FFFFFF;
    font-size: 1.05em;
    line-height: 1.1em;
    background: #248DC1;
    padding: 8px 25px 8px 10px;
    margin: 1em 0;
    display: inline-block;
    border: none;
    position: relative;
    }
.button:after {
    content: "";
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 7px solid #FFFFFF;
    margin: 0 10px;
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    }
.button:focus,
.button:hover,
.button:active {
    color: #FFFFFF;
    background: #7BAF00;
    }
form .button-input {
    padding: 0;
    margin: 0;
    }
form .button-input input {
    line-height: 1.1em;
    background: transparent;
    border: none;
    padding: 8px 25px 8px 10px;
    }

/************************************************
*   8. Content                                  *
************************************************/

#content {
    max-width: 995px;
    margin: 12px auto 0;
    overflow: hidden;
    }
.main.fullwidth {
    width: 100%;
    }
.main {
    width: 100%;
    min-height: 1px;
    float: left;
    position: relative;
    }
@media (min-width: 768px) {
    .main {
        width: 74%;
        }
    }
.main.fullwidth > .holder {
    padding-right: 15px;
    }
.main > .holder {
    padding: 0 15px;
    }
@media (min-width: 768px) {
    .main > .holder {
        padding: 0 45px 0 15px;
        }
    }
#breadcrumbs {
    font-size: 0.9em;
    margin-top: 0;
}
#breadcrumbs a {
    color: #138DBF;
    font-style: normal;
}
#breadcrumbs a:focus,
#breadcrumbs a:hover,
#breadcrumbs a:active {
    color: #75B011;
}
.content-bg {
    border: none;
    outline: none;
    width: 100%;
    min-height: 40px;
    background: url('img/content-bg.jpg') no-repeat 0 0;
    padding: 0 15px;
    margin: 0 -15px -26px -15px;
}
article {
    padding-bottom: 24px;
    }
.postauthor {
    color: #999999;
    font-size: 0.9em;
    margin-top: 12px;
    margin-bottom: 18px;
    padding: 6px 0;
    overflow: hidden;
    border-top: 1px solid #E4E4E4;
    border-bottom: 1px solid #E4E4E4;
    }
.posttitle {
    display: block;
    padding-bottom: 12px;
    }
.posttitle .headline {
    font-size: 1.7em;
    font-style: normal;
    letter-spacing: normal;
    }
.posttitle .headline a {
    font-style: normal;
    }
.postdate {
    display: block;
    color: #999999;
    font-size: 0.9em;
    text-shadow: none;
    margin-top: -2px;
    margin-bottom: 6px;
    overflow: hidden;
    }
.postdate p {
    padding: 0;
    margin-bottom: 0;
    }
.postmeta {
    display: block;
    color: #999999;
    font-size: 0.9em;
    padding: 12px 0;
    margin-bottom: 1em;
    border-top: 1px solid #E4E4E4;
    border-bottom: 1px solid #E4E4E4;
    overflow: hidden;
    }
.postmeta .left,
.postmeta .right {
    width: 48%;
    }
.postmeta p {
    margin-bottom: 0;
    }
.postmeta i,
.postauthor i {
    color: #CCCCCC;
    font-size: 1em;
    }

/* Testimonials */
.content .testimonials .quote {
    margin-bottom: 1.4em;
    }
.content .testimonials blockquote {
    margin: 0;
    }
.content .testimonials .author {
    font-weight: 600;
    }
.content .testimonials .title {
    font-size: inherit;
    }
.testimonial .headline {
    font-size: 2em;
    }
.testimonial .postmeta {
    display: none;
    }

/************************************************
*   9. Homepage                                 *
************************************************/

.home .columns h1,
.home .columns h2,
.home .columns h3,
.home .columns h4,
.home .columns h5,
.home .columns h6 {
    color: #138DBF;
    font-weight: 400;
}
.columns {
    width: 100%;
    padding-bottom: 8px;
    margin: 0.6em 0;
    overflow: hidden;
    }
.one-fourth {
    font-size: 0.9em;
    width: 84%;
    background-color: #F0F0F0;
    /*background-image:
      linear-gradient(
        to bottom,
        #E5E5E5 0%,
        #FFFFFF 300px
      );*/
    padding: 1em 4%;
    margin: 0 4% 1em;
    float: left;
    position: relative;
    }
/*.one-fourth:nth-child(4n+1) {
    margin-left: 0;
    }
.one-fourth:nth-child(4n) {
    margin-right: 0;
    }*/
.one-fourth:after {
    content: "";
    width: 100%;
    height: 8px;
    background: url('img/sidebar-widget-shadow.gif') no-repeat bottom center;
    display: block;
    position: absolute;
    bottom: -8px;
    left: 0;
    }
.one-fourth img {
    width: auto !important;
    height: auto !important;
    float: none;
    }
.columns .blog {
    width: 92%;
    padding: 0;
    }
.columns .blog .rss-link {
    display: block;
    position: absolute;
    top: 0.8em; right: 0.7em;
    }
.columns .blog .rss-link img {
    display: block;
    }
.columns .blog .heading {
    display: block;
    }
.columns .blog .heading img {
    width: 100% !important;
    display: block;
    }
.columns .blog .title {
    color: #FFFFFF;
    font-size: 1.1em;
    font-style: italic;
    background: #138DBF;
    padding: 0;
    position: relative;
    }
.columns .blog .title .post-title {
    color: #FFFFFF;
    padding: 1em 10% 1em 4%;
    display: block;
    }
.columns .blog .title .post-title:focus,
.columns .blog .title .post-title:hover,
.columns .blog .title .post-title:active {
    color: #c2edff
    }
.columns .blog .entry {
    padding: 1em 4% 1.5em;
    }
.columns .blog .entry .read-more {
    color: #138DBF;
    font-style: italic;
    font-weight: 600;
    }
.columns .blog .entry .read-more:focus,
.columns .blog .entry .read-more:hover,
.columns .blog .entry .read-more:active {
    color: #75B011;
    }
@media (min-width: 768px) {
    .one-fourth {
        width: 18%;
        padding: 1em 2%;
        margin: 0 1% 1em;
        }
    .columns .blog {
        width: 25%;
        padding: 0;
        }
    .columns .blog .title .post-title {
        padding: 1em 16% 1em 8%;
        }
    .columns .blog .entry {
        padding: 1em 8% 1.8em;
        }
    }

.clients {
    width: 98%;
    margin: 0 1% 1em;
    }
.clients h3 {
    color: #9A9A9A;
    font-size: 1.4em;
    font-weight: 400;
    padding: 1.2em 0;
    margin: 0 1em 0 0;
    float: left;
    }
.clients .client-logos {
    list-style: none;
    padding: 0;
    margin: 0;
    }
.clients .client-logo {
    margin: 0.5em 1.5em 0.5em 0;
    display: inline-block;
    }
.clients .client-logo img {
    vertical-align: middle;
    }

/************************************************
*   11. White-Label Page                        *
************************************************/

.page-template-template-whitelabel header,
.page-template-template-whitelabel .navbar,
.page-template-template-whitelabel footer .footer-left *,
.page-template-template-whitelabel footer .widget_sb_newsletter {
    display: none;
    }

/************************************************
*   13. Blog Teaser                             *
************************************************/

.blog-teaser {
    width: 100%;
    background: #77B500;
    margin: 1em 0;
    float: left;
    position: relative;
    }
.blog-teaser .teaser-heading {
    color: #FFFFFF;
    background: #77B500;
    width: 15%;
    padding: 1em 2%;
    float: left;
    }
.blog-teaser .teaser-heading h3 {
    color: #FFFFFF;
    font-weight: 400;
    font-size: 1.2em;
    letter-spacing: 0.03em;
    margin: 0;
    }
.blog-teaser .teaser-heading .rss-link {
    position: absolute;
    bottom: 0.4em;
    left: 14%;
    }
.blog-teaser .article {
    width: 79%;
    background: #FFFFFF url('img/blog-teaser-bg.jpg') no-repeat 0 0;
    padding: 0.6em 0 0.6em 2%;
    float: right;
}

/************************************************
*   14. Pagination                              *
************************************************/

.pagination {
    display: block;
    font-weight: bold;
    text-align: center;
    line-height: 24px;
    margin: -1px 0 0 0;
    padding: 18px 0;
    position: relative;
    z-index: 9;
    /*border-top: 1px solid #E4E4E4;*/
    }
.author-column .pagination {
    border: none;
    }
.pagination .page-numbers {
    display: inline-block;
    background: #FFFFFF;
    color: #666666;
    height: 24px;
    width: 24px;
    text-decoration: none;
    margin: 0px 2px;
    padding: 0px;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -khtml-border-radius: 2px;
    -webkit-border-radius: 2px;
    box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .2);
    -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .2);
    -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .2);
    }
.pagination .page-numbers:hover,
.pagination .page-numbers:active {
    background: #EEEEEE;
    height: 24px;
    width: 24px;
    line-height: 24px;
    padding: 0px;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -khtml-border-radius: 2px;
    -webkit-border-radius: 2px;
    }
.pagination .page-numbers.current {
    display: inline-block;
    background: #EEEEEE;
    height: 24px;
    width: 24px;
    line-height: 24px;
    padding: 0px;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -khtml-border-radius: 2px;
    -webkit-border-radius: 2px;
    }
#portfolio .number-next,
#portfolio .number-prev {
    display: block;
    background: none;
    width: 48px;
    height: 48px;
    font-size: 3em;
    line-height: 48px;
    top: 50%;
    margin-top: -48px;
    opacity: 1;
    position: absolute;
    cursor: pointer;
    overflow: visible;
    z-index: 8;
    }
#portfolio .number-next {
    right: 10px;
    }
#portfolio .number-prev {
    left: 10px;
    }
.page-links {
    display: block;
    overflow: hidden;
    margin: 12px 0px;
    }
.page-links .link-label {
    color: #000000;
    font-weight: bold;
    margin-left: 0px;
    }
.page-links span {
    margin: 0px 3px;
    }
#prevLink {
    float: left;
    padding: 0px;
    margin: 0px;
    }
#nextLink {
    float: right;
    padding: 0px;
    margin: 0px;
    }
#prevLink p, #nextLink p {
    padding: 0px;
    }
#prevLink p a, #nextLink p a {
    display: block;
    padding: 0px;
    }

/************************************************
*   15. Sidebar                                 *
************************************************/

.sidebar {
    font-size: 0.9em;
    line-height: 1.7em;
    text-align: right;
    min-height: 1px;
    padding: 0 15px;
    float: left;
    position: relative;
    }
@media (min-width: 768px) {
    .sidebar {
        width: 26%;
        padding: 0;
        }
    }
.sidebar li, .sidebar ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    }
.sidebar .title {
    font-size: 1.39em;
    }
.sidebar p {
    margin-top: 0;
    }
.sidebar a {
    color: #138DBF;
    font-weight: 600;
    }
.sidebar a:focus,
.sidebar a:hover,
.sidebar a:active {
    color: #75B011;
    }
.sidebar a.button {
    color: #FFFFFF;
    }

/************************************************
*   16. Sidebar Widgets                         *
************************************************/

.sidebar > div > .widget {
    display: block;
    margin: 0 0 25px;
    position: relative;
    }
.sidebar > div > .widget:after {
    content: "";
    width: 100%;
    height: 8px;
    background: url('img/sidebar-widget-shadow.gif') no-repeat bottom center;
    display: block;
    position: absolute;
    bottom: -10px;
    left: 0;
    }

/************************************************
*   17. Blog Widgets                            *
************************************************/

.sidebar .widget_recent_entries,
.sidebar .widget_categories,
.sidebar .widget_archive {
    padding: 4% 8% 0;
    background-color: #E5E5E5;
    background-image:
      linear-gradient(
        to bottom,
        #E5E5E5 0%,
        #FFFFFF 300px
      );
    }
.sidebar .widget_recent_entries ul,
.sidebar .widget_categories ul,
.sidebar .widget_archive ul {
    padding: 1% 5%;
    background-color: #FFFFFF;
    }
.sidebar .widget_recent_entries li:first-child,
.sidebar .widget_categories li:first-child,
.sidebar .widget_archive li:first-child {
    border-top: none;
    }
.sidebar .widget_recent_entries li,
.sidebar .widget_categories li,
.sidebar .widget_archive li {
    border-top: 1px solid #e5e5e5;
    }
.sidebar .widget_recent_entries ul a,
.sidebar .widget_categories ul a,
.sidebar .widget_archive ul a {
    font-weight: 600;
    padding: 0.5em 0;
    display: block;
    }

/************************************************
*   18. Text Widget                             *
************************************************/

.sidebar .widget_text {
    padding: 4% 8% 0;
    background-color: #E5E5E5;
    background-image:
      linear-gradient(
        to bottom,
        #E5E5E5 0%,
        #FFFFFF 300px
      );
    }
.sidebar .widget_text .textwidget {
    padding: 5%;
    background-color: #FFFFFF;
    }
.sidebar .widget_text blockquote {
    margin: 0;
    }

/************************************************
*   18. Callout Widget                          *
************************************************/

.sidebar .widget_callout {
    padding: 0;
    margin-bottom: 15px !important;
    }
.sidebar .widget_callout:after {
    display: none !important;
    }
.sidebar .widget_callout h3 {
    color: inherit;
    font-weight: 400;
    font-size: 1.4em;
    line-height: 1em;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    padding: 0;
    margin: 0 0 0.2em;
    }
.sidebar .widget_callout p {
    font-size: 0.7em;
    line-height: 1.2em;
    margin: 0;
    }
.sidebar .widget_callout a {
    color: #6BA715;
    padding-right: 16px;
    display: block;
    }
.sidebar .widget_callout a:focus,
.sidebar .widget_callout a:hover,
.sidebar .widget_callout a:active {
    color: #138DBF;
    }
.sidebar .widget_callout a:after {
    content: "▶";
    color: #FFFFFF;
    font-size: 0.8em;
    text-align: center;
    line-height: 5em;
    width: 10px;
    height: 100%;
    background: #6BA715;
    position: absolute;
    top: 0;
    right: 0;
    transition: background .25s, color .25s;
    -moz-transition: background .25s, color .25s;
    -webkit-transition: background .25s, color .25s;
    -o-transition: background .25s, color .25s;
}
.sidebar .widget_callout a:focus:after,
.sidebar .widget_callout a:hover:after,
.sidebar .widget_callout a:active:after {
    background: #138DBF;
}

/************************************************
*   18. Testimonals Widget                      *
************************************************/

.sidebar .widget_woothemes_testimonials {
    padding: 4% 8% 0;
    background-color: #E5E5E5;
    background-image:
      linear-gradient(
        to bottom,
        #E5E5E5 0%,
        #FFFFFF 300px
      );
    }
.sidebar .widget_woothemes_testimonials .testimonials {
    padding: 5%;
    background-color: #FFFFFF;
    }
.sidebar .widget_woothemes_testimonials .quote.first {
    display: block;
    }
.sidebar .widget_woothemes_testimonials .quote {
    display: none;
    }
.sidebar .widget_woothemes_testimonials blockquote {
    margin: 0 0 0.6em;
    }
.sidebar .widget_woothemes_testimonials .author {
    font-weight: 600;
    font-style: italic;
    }
.sidebar .widget_woothemes_testimonials .author .title {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    padding: 0;
    margin: 0;
    }
.sidebar .widget_woothemes_testimonials .btn-container {
    padding: 0 5%;
    margin-top: -5%;
    }

/************************************************
*   19. Custom Menu Widget                      *
************************************************/

.widget ul.menu {
    float: none;
    text-align: left;
    }
.widget ul.menu .current_page_item a,
.widget ul.menu .current-menu-item a {
    font-weight: 600;
    background: none;
    }
.widget ul.menu li a {
    display: block;
    background: none;
    color: #138DBF;
    height: auto;
    font-size: 1em;
    text-transform: none;
    line-height: 2;
    margin: 6px 0px;
    padding: 0px;
    }
.widget ul.menu li a:focus,
.widget ul.menu li a:hover,
.widget ul.menu li a:active {
    color: #75B011;
    background: none;
    }
.widget ul.menu li {
    float: none;
    display: block;
    background: none !important;
    margin: 0px;
    padding: 0px;
    width: 100%;
    }
.widget ul.menu li:hover {
    background: none !important;
    }
.widget ul.menu li:last-child {
    border-bottom: none;
    }
.widget ul.menu li span {
    top: 1px;
    right: 0px;
    }
.widget ul.menu li ul.sub-menu {
    background: none !important;
    width: 100%;
    margin: 0px;
    padding: 0px;
    position: static;
    z-index: 9;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    }
.widget ul.menu li ul.sub-menu li ul.sub-menu li {
    display: none;
    }

/************************************************
*   20. Newsletter Widget                       *
************************************************/

.widget_sb_newsletter .title {
    color: #238CC1;
    font-weight: 400;
    }
.widget_sb_newsletter .title span {
    font-size: 0.8em;
    font-weight: 600;
    }
.widget_sb_newsletter .email {
    font-size: 0.95em;
    font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
    padding: 4px 0.5em;
    outline: none;
    }
.widget_sb_newsletter .button input {
    padding-top: 6px;
    padding-bottom: 6px;
    }

/************************************************
*   21. Social Links Widget                     *
************************************************/

.widget_sb_social ul {
    list-style: none;
    padding: 0;
    margin: 0 -8px 0.4em 0;
    display: inline-block;
    }
.widget_sb_social li {
    margin-right: 8px;
    float: left;
    }
.widget_sb_social a {
    font: 1px sans-serif;
    direction: ltr;
    text-indent: -99999px;
    width: 28px;
    height: 28px;
    display: block;
    }
.widget_sb_social .icon-rss a {
    background: url('img/icon-rss.gif') no-repeat 0 0;
    }
.widget_sb_social .icon-in a {
    background: url('img/icon-linkedin.gif') no-repeat 0 0;
    }
.widget_sb_social .icon-tw a {
    background: url('img/icon-twitter.gif') no-repeat 0 0;
    }

/************************************************
*   23. Footer                                  *
************************************************/

footer {
    max-width: 995px;
    min-height: 24px;
    background: url('img/footer-bg.jpg') no-repeat center 0;
    padding-top: 20px;
    padding-bottom: 20px;
    margin: 1em auto 0;
    overflow: hidden;
    }
footer .menu {
    z-index: auto;
    }
.footer-left,
.footer-right {
    text-align: center;
    padding: 0 15px;
    }
@media (min-width: 768px) {
    .footer-left,
    .footer-right {
        text-align: inherit;
        width: 40%;
        min-height: 1px;
        float: left;
        }
    .footer-right {
        float: right;
        }
    }
@media (min-width: 995px) {
    .footer-left,
    .footer-right {
        padding: 0;
        }
    }

.footer-left {
    color: #7B7B7B;
    font-size: 0.86em;
    font-family: Arial, sans-serif;
    line-height: 1.5em;
    }
.footer-left .widget {
    margin-bottom: 1.2em;
    }
@media (min-width: 768px) {
    .footer-left .widget {
        margin-bottom: 0.4em;
        }
    }
.footer-left .widget ul.menu {
    font-weight: 600;
    }
.footer-left .widget ul.menu li:first-child {
    border-left: none;
    margin-left: 0;
    }
.footer-left .widget ul.menu li {
    width: auto;
    float: left;
    border-left: 1px solid #7B7B7B;
    margin-left: 5px;
    }
.footer-left .widget ul.menu li:first-child a {
    margin-left: 0;
    }
.footer-left .widget ul.menu li a {
    line-height: 1em;
    margin: 0 0 0 5px;
    }

.footer-right .copyright {
    font-size: 0.8em;
    font-family: Arial, sans-serif;
    margin: 1.5em 0;
    }
.footer-right .widget_sb_newsletter .title {
    font-size: 1.32em;
    letter-spacing: 0.2px;
    }
.footer-right .widget_sb_newsletter .email {
    min-width: 155px;
    }
@media (min-width: 768px) {
    .footer-right .copyright,
    .footer-right .widget_sb_newsletter {
        text-align: right;
        }
    }

/************************************************
*   26. Forms                                   *
************************************************/

form {
    display: block;
    overflow: hidden;
    }
form ul li {
    list-style: none;
    padding: 0px;
    }
.content form legend {
    font-weight: bold;
    padding-top: 10px;
    }
.content form label {
    margin-top: 6px;
    }
.content form input[type='url'],
.content form input[type='tel'],
.content form input[type='email'],
.content form input[type='text'],
.content form input[type='password'],
.content form input[type='number'],
.content form textarea,
.content form select {
    display: inline-block;
    background: #FFFFFF;
    font-size: 1em;
    line-height: 1.4;
    margin: 4px 12px 4px 0;
    padding: 3px 6px;
    border: 1px solid rgba(0,0,0, .25);
    outline: none;
    }
.content form input[type='url'],
.content form input[type='tel'],
.content form input[type='email'],
.content form input[type='text'],
.content form input[type='password'],
.content form input[type='number'] {
    width: 96%;
    }
@media (min-width: 768px) {
    .content form input[type='url'],
    .content form input[type='tel'],
    .content form input[type='email'],
    .content form input[type='text'],
    .content form input[type='password'],
    .content form input[type='number'] {
        width: 42%;
        }
    }
.content form textarea {
    width: 96%;
    }
.content form input[type='checkbox'],
.content form input[type='radio'] {
    margin-left: 0px;
    margin-right: 6px;
    }
.content form input[type='submit'] {
    margin-top: 0px;
    height: 36px;
    }
.content select {
    display: block;
    background: #FFFFFF;
    max-width: 98%;
    font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
    font-size: 1em;
    line-height: 1.4;
    margin: 4px 12px 4px 0px;
    padding: 8px !important;
    border: 1px solid rgba(0,0,0, .08);
    border-radius: 3px;
    -moz-border-radius: 3px;
    -khtml-border-radius: 3px;
    -webkit-border-radius: 3px;
    box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .1);
    -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .1);
    -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .1);
    }

/************************************************
*   27. Ninja Forms Restyled                    *
************************************************/

.nf-form-fields-required {
    font-size: 0.85em;
    margin-bottom: 1em;
    }
/*.ninja-forms-form-wrap label {
    color: #75B011;
    }*/

.nf-form-layout {
    color: #FFFFFF;
    width: 100%;
    margin: 1em auto;
    background: #77B500 url('img/highlight-box-bg.jpg') no-repeat center;
    -webkit-background-size: cover;
       -moz-background-size: cover;
         -o-background-size: cover;
            background-size: cover;
}

.nf-form-layout form {
    padding: 1em 2em;
}

@media (min-width: 768px) {

    .nf-form-layout {
        width: 80%;
    }

    .nf-form-layout form {
        padding: 2em 3em;
    }
}

.content .label-above .nf-field-label {
    margin-bottom: 0;
}

.content .nf-form-layout textarea,
.content .nf-form-layout input[type='url'],
.content .nf-form-layout input[type='tel'],
.content .nf-form-layout input[type='email'],
.content .nf-form-layout input[type='text'],
.content .nf-form-layout input[type='password'],
.content .nf-form-layout input[type='number'] {
    color: #303030;
    min-height: 32px;
    width: 100%;
    }
.ninja-forms-form-wrap .submit-wrap {
    text-align: right;
    }
.ninja-forms-form-wrap .submit-wrap input {
    color: #5E8C00;
    font-weight: 600;
    text-align: center;
    background-color: #C7DB9F;
    border: none;
    padding: 1em 1.5em;
    }
.recaptcha-wrap .nf-field-label {
    display: none;
    }
.ninja-forms-form-wrap .submit-wrap input:focus,
.ninja-forms-form-wrap .submit-wrap input:hover,
.ninja-forms-form-wrap .submit-wrap input:active {
    background-color: #e2efc9;
    }

/************************************************
*   28. Survey Form                             *
************************************************/

.survey-content .step-progress {
    overflow: hidden;
    }
.survey-content .step-progress ol {
    color: #C7C7C7;
    list-style: none;
    width: 100%;
    padding: 0;
    margin: 0.5em 0 1.5em;
    float: left;
    }
.survey-content .step-progress ol li {
    counter-increment: step-counter;
    font-weight: 600;
    padding-left: 50px;
    margin: 0 15px 15px 0;
    float: left;
    position: relative;
    }
@media (min-width: 768px) {
    .survey-content .step-progress ol li {
        width: 15%;
        /*margin: 0;*/
        }
    }
.survey-content .step-progress ol li:before {
    content: counter(step-counter);
    color: #FFFFFF;
    font-weight: 200;
    font-size: 1.5em;
    line-height: 0;
    text-align: center;
    background: #C7C7C7;
    border-radius: 50%;
    padding: 1em 0 0;
    margin-top: -2px;
    margin-left: -50px;
    position: absolute;
    width: 40px;
    height: 19px;
    }
.survey-content .step-progress ol li.active {
    color: #7BAF00;
    }
.survey-content .step-progress ol li.active:before {
    background: #7BAF00;
    }
.survey-content .step-content {
    display: none;
    }
.survey-content .step-content.active {
    display: block;
    }
.survey-content .button {
    background: #7BAF00;
    }
.survey-content .button:focus,
.survey-content .button:hover,
.survey-content .button:active {
    background: #248DC1;
    }

.highlight-box {
    color: #FFFFFF;
    padding: 20px;
    background: url('img/highlight-box-bg.jpg') no-repeat center center;
    -webkit-background-size: cover;
       -moz-background-size: cover;
         -o-background-size: cover;
            background-size: cover;
    }
@media (min-width: 768px) {
    .highlight-box {
        max-width: 32%;
        margin-top: 6px;
        }
    }
.highlight-box h1,
.highlight-box h2,
.highlight-box h3,
.highlight-box h4,
.highlight-box h5,
.highlight-box h6 {
    color: #FFFFFF;
    }
.highlight-box ul,
.highlight-box ol {
    padding-left: 1.5em;
    }
.highlight-box hr {
    border: 0;
    height: 1px;
    background-image:
      linear-gradient(
        to right,
        rgba(0, 0, 0, 0),
        rgba(255, 255, 255, 0.75),
        rgba(0, 0, 0, 0)
      );
    margin: 1em 0;
    }

.survey-content #step_1 .highlight-box {
    font-size: 0.9em;
    text-align: center;
    }
@media (min-width: 768px) {
    .survey-content .highlight-box {
        max-width: none;
        }
    .survey-content #step_1 .highlight-box {
        width: 30%;
        }
    }
.survey-contact-form {
    text-align: center;
    max-width: 450px;
    margin: 0 auto;
    }
.survey-contact-form .highlight-box {
    text-align: left;
    padding: 20px 8%;
    }
.survey-contact-form label {
    font-weight: 600;
    width: 40%;
    display: inline-block;
    }
.survey-contact-form input[type='url'],
.survey-contact-form input[type='tel'],
.survey-contact-form input[type='email'],
.survey-contact-form input[type='text'],
.survey-contact-form input[type='password'],
.survey-contact-form input[type='number'] {
    color: #303030;
    }

@media (min-width: 768px) {
    .survey-contact-form input[type='url'],
    .survey-contact-form input[type='tel'],
    .survey-contact-form input[type='email'],
    .survey-contact-form input[type='text'],
    .survey-contact-form input[type='password'],
    .survey-contact-form input[type='number'] {
        width: 52% !important;
        }
    }
.survey-contact-form .submit {
    font-weight: 600;
    text-align: center;
    margin-top: 1.3em;
    }
.survey-contact-form .submit .button {
    color: #5E8C00;
    background-color: #C7DB9F;
    }
.survey-contact-form .submit .button:after {
    border-left-color: #5E8C00;
    }

.survey-table {
    background: url('survey-form/assets/images/survey-table-bg.jpg') no-repeat 0 0;
    -webkit-background-size: contain;
       -moz-background-size: contain;
         -o-background-size: contain;
            background-size: contain;
    }
.survey-table th {
    text-align: center;
    padding: 0.5em 0 0;
    }
.survey-table tr:first-child th {
    color: #FFFFFF;
    text-align: left;
    border-bottom: solid 1px #FFFFFF;
    padding: 1em 1em;
    }
.survey-table tr:first-child th:first-child {
    border-right: solid 1px #FFFFFF;
    }
.survey-table th h2 {
    color: #FFFFFF;
    font-size: 1.1em;
    padding: 0;
    margin: 0;
    }
.survey-table td:first-child {
    text-align: left;
    }
.survey-table td {
    text-align: center;
    border-bottom: solid 1px #B2CA80;
    padding: 0.6em 0.4em;
    }
@media (min-width: 768px) {
    .survey-table td {
        padding: 0.6em 0.9em;
        }
    }
.content .survey-table input[type='radio'] {
    margin: 0;
    }
.survey-form .submit {
    font-size: 1.2em;
    text-align: center;
    padding: 1.5em;
    }
.survey-form .submit input {
    height: auto !important;
    padding: 1em 35px 1em 20px;
    }
.survey-form .button:after {
    margin: 0 20px;
    }
.survey-form .error {
    background-color: #F2DEDE;
    }

.survey-category {
    display: none;
    }
.survey-category.active {
    display: block;
    }
