/*
Theme Name: S Theme
Theme URI: https://asithemes.com/theme/s-theme/
Description:
Author: AsiThemes
Author URI: https://asithemes.com/
Version: 1.1.6
Template: genesis
Template Version: 2.9.1
*/

html{
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}
body{
    margin: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary{
    display: block
}
audio, canvas, progress, video{
    display: inline-block;
    vertical-align: baseline
}
audio:not([controls]){
    display: none;
    height: 0
}
[hidden], template{
    display: none
}
a{
    background: 0 0
}
a:active, a:hover, a:focus{
    outline: 0
}
abbr[title]{
    border-bottom: 1px dotted
}
dfn{
    font-style: italic
}
mark{
    background: #ff0;
    color: #333
}
small{
    font-size: 80%
}
sub, sup{
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}
sup{
    top: -.5em
}
sub{
    bottom: -.25em
}
img{
    border: 0
}
svg:not(:root){
    overflow: hidden
}
figure{
    margin: 1em 40px
}
hr{
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}
pre{
    overflow: auto
}
code, kbd, pre, samp{
    font-family: monospace, monospace;
    font-size: 1em
}
button, input, optgroup, select, textarea{
    color: inherit;
    font: inherit;
    margin: 0
}
button{
    overflow: visible
}
button, select{
    text-transform: none
}
button, html input[type=button], input[type=reset], input[type=submit]{
    -webkit-appearance: button;
    cursor: pointer
}
button[disabled], html input[disabled]{
    cursor: default
}
button::-moz-focus-inner, input::-moz-focus-inner{
    border: 0;
    padding: 0
}
input{
    line-height: normal
}
input[type=checkbox], input[type=radio]{
    box-sizing: border-box;
    padding: 0
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{
    height: auto
}
input[type=search]{
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration{
    -webkit-appearance: none
}
:focus{
    outline: 0;
}
fieldset{
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}
legend{
    border: 0;
    padding: 0
}
textarea{
    overflow: auto
}
optgroup{
    font-weight: 700
}
table{
    border-collapse: collapse;
    border-spacing: 0
}
td, th{
    padding: 0
}

/* ## Box Sizing
--------------------------------------------- */
html,
input[type="search"]{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

*,
*:before,
*:after{
    box-sizing: inherit;
}

/* ## Float Clearing
--------------------------------------------- */
.author-box:before,
.clearfix:before,
.entry:before,
.entry-content:before,
.footer-widgets:before,
.nav-primary:before,
.nav-secondary:before,
.pagination:before,
.site-container:before,
.site-footer:before,
.site-header:before,
.site-inner:before,
.wrap:before{
    content: " ";
    display: table;
}
.author-box:after,
.clearfix:after,
.entry:after,
.entry-content:after,
.footer-widgets:after,
.nav-primary:after,
.nav-secondary:after,
.pagination:after,
.site-container:after,
.site-footer:after,
.site-header:after,
.site-inner:after,
.wrap:after{
    clear: both;
    content: " ";
    display: table;
}

/* # Defaults
---------------------------------------------------------------------------------------------------- */
/* ## Typographical Elements
--------------------------------------------- */
html{
    font-size: 62.5%; /* 10px browser default */
}
@media only screen and (max-width: 650px){
    html{
        font-size: 55%;
    }
}
body{
    color: #333;
    font-size: 1.8rem;
    font-weight: 300;
    line-height: 1.625;
    margin: 0;
    background-color: #fff;
}
/* Chrome fix */
body > div{
    font-size: 1.8rem;
}
a,
button,
input:focus,
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea:focus,
.button{
    -webkit-transition: all 0.1s ease-in-out;
    -moz-transition: all 0.1s ease-in-out;
    -ms-transition: all 0.1s ease-in-out;
    -o-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
}
a{
    color: #000;
    text-decoration: underline;
}
a:hover,
a:focus{
    color: #333;
    text-decoration: none;
}
p{
    margin: 0 0 28px;
    padding: 0;
}
ol,
ul{
    margin: 0;
    padding: 0;
}
li{
    list-style-type: none;
}
hr{
    border: 0;
    border-collapse: collapse;
    border-top: 1px solid #ddd;
    clear: both;
    margin: 1em 0;
}
b,
strong{
    font-weight: 700;
}
blockquote,
cite,
em,
i{
    font-style: italic;
}
blockquote{
    margin: 40px;
}
blockquote::before{
    content: "\201C";
    display: block;
    font-size: 6rem;
    height: 0;
    left: -3rem;
    position: relative;
    top: -1rem;
    line-height: 1;
    text-align: left;
}
.video-iframe{
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
}
.video-iframe iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ## Headings
--------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6{
    color: #333;
    font-weight: 400;
    line-height: 1.2;
    margin: 0 0 2rem;
}
h1{
    font-size: 3.6rem;
}
body:not(.woocommerce-page) .site-inner h2{
    font-size: 3rem;
}
body:not(.woocommerce-page) .site-inner h3{
    font-size: 2.4rem;
}
body:not(.woocommerce-page) .site-inner h4{
    font-size: 2rem;
}
body:not(.woocommerce-page) .site-inner h5{
    font-size: 1.8rem;
}
body:not(.woocommerce-page) .site-inner h6{
    font-size: 1.6rem;
}

/* ## Objects
--------------------------------------------- */
embed,
iframe,
img,
object,
video,
.wp-caption{
    max-width: 100%;
}
img{
    height: auto;
}
.featured-content img,
.gallery img{
    width: auto;
}

/* ## Gallery
--------------------------------------------- */
.gallery{
    overflow: hidden;
}
.gallery-item{
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 3.2%;
    text-align: center;
    padding: 0 1.6%;
}
.gallery-columns-2 .gallery-item{
    width: 50%;
}
.gallery-columns-3 .gallery-item{
    width: 33%;
}
.gallery-columns-4 .gallery-item{
    width: 25%;
}
.gallery-columns-5 .gallery-item{
    width: 20%;
}
.gallery-columns-6 .gallery-item{
    width: 16.6666%;
}
.gallery-columns-7 .gallery-item{
    width: 14.2857%;
}
.gallery-columns-8 .gallery-item{
    width: 12.5%;
}
.gallery-columns-9 .gallery-item{
    width: 11.1111%;
}
.gallery a,
.gallery img{
    display: block;
    width: 100%;
    height: auto;
}
.gallery a > img{
    display: block;
}
@media only screen and (max-width: 650px){
    .gallery-item{
        width: 50% !important;
        padding: 0 2%;
        margin: 0 0 4%;
    }
}

/* ## Forms
--------------------------------------------- */
input,
select,
textarea{
    background-color: #fff;
    border: 1px solid #ddd;
    color: #333;
    font-size: 1.8rem;
    font-weight: 300;
    padding: 10px;
    width: 100%;
    border-radius: 0;
}
input:focus,
textarea:focus{
    border: 1px solid #999;
    outline: none;
}
input[type="checkbox"],
input[type="image"],
input[type="radio"]{
    width: auto;
}
::-moz-placeholder{
    color: #333;
    font-weight: 300;
    opacity: 1;
}
::-webkit-input-placeholder{
    color: #333;
    font-weight: 300;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button{
    background-color: #fff;
    border: 2px solid #c9c9c9;
    border-radius: 10rem;
    color: #000;
    cursor: pointer;
    font-size: 2rem;
    font-weight: 300;
    padding: 1rem 7rem;
    width: auto;
    text-decoration: none;
}
@media only screen and (max-width: 375px){
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button{
        padding: 1rem 3rem;
    }
}
.button{
    display: inline-block;
}
button:hover,
input:hover[type="button"],
input:hover[type="reset"],
input:hover[type="submit"],
.button:hover,
button:focus,
input:focus[type="button"],
input:focus[type="reset"],
input:focus[type="submit"],
.button:focus{
    background-color: #fff;
    color: #000;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button{
    display: none;
}

/* ## Tables
--------------------------------------------- */
body:not(.woocommerce-page) table{
    border: 1px solid #ddd;
    border-collapse: collapse;
    border-spacing: 0;
    margin-bottom: 40px;
    width: 100%;
}
body:not(.woocommerce-page) th{
    font-weight: 500;
}
body:not(.woocommerce-page) td,
body:not(.woocommerce-page) th{
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    line-height: 1.3em;
    padding: 7px;
    text-align: left;
}
body:not(.woocommerce-page) td:last-child{
    border-right-width: 0;
}
body:not(.woocommerce-page) tr:last-child td{
    border-bottom-width: 0;
}
body:not(.woocommerce-page) tr:nth-of-type(even){
    background: #f7f7f7;
}

@media only screen and (max-width: 650px){

    body:not(.woocommerce-page) table,
    body:not(.woocommerce-page) thead,
    body:not(.woocommerce-page) tbody,
    body:not(.woocommerce-page) th,
    body:not(.woocommerce-page) td,
    body:not(.woocommerce-page) tr{
        display: block;
        width: 100% !important;
    }

    body:not(.woocommerce-page) th{
        display: none;
    }

    body:not(.woocommerce-page) td{
        padding: 6px 12px;
    }

    body:not(.woocommerce-page) td:before{
        content: attr(data-title);
        font-weight: 600;
        float: left;
        margin: 0 10px 0 0;
    }

    body:not(.woocommerce-page) td{
        border-right-width: 0;
    }

    body:not(.woocommerce-page) tr:last-child td{
        border-bottom-width: 1px;
    }

    body:not(.woocommerce-page) tr:last-child td:last-child{
        border-bottom-width: 0;
    }
}

/* ## Screen Reader Text
--------------------------------------------- */
.screen-reader-text,
.screen-reader-text span,
.screen-reader-shortcut{
    position: absolute !important;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    width: 1px;
    border: 0;
    overflow: hidden;
}
.more-link{
    position: relative;
}

/* # Structure and Layout
---------------------------------------------------------------------------------------------------- */
/* ## Site Containers
--------------------------------------------- */
.site-inner,
.wrap{
    margin: 0 auto;
    max-width: 90%;
}
.site-inner{
    clear: both;
    width: 90%;
    max-width: 1350px;
}
.site-inner.fixed{
    padding-top: 78px;
}
@media only screen and (max-width: 650px){
    .site-inner,
    .wrap{
        padding-left: 5%;
        padding-right: 5%;
    }
}
.sidebar-primary,
.sidebar-secondary{
    display: none;
}

/* ## Column Classes
--------------------------------------------- */
/* Link: http://twitter.github.io/bootstrap/assets/css/bootstrap-responsive.css */
.five-sixths,
.four-sixths,
.one-fourth,
.one-half,
.one-sixth,
.one-third,
.three-fourths,
.three-sixths,
.two-fourths,
.two-sixths,
.two-thirds{
    float: left;
    margin-left: 2.564102564102564%;
}
.one-half,
.three-sixths,
.two-fourths{
    width: 48.717948717948715%;
}
.one-third,
.two-sixths{
    width: 31.623931623931625%;
}
.four-sixths,
.two-thirds{
    width: 65.81196581196582%;
}
.one-fourth{
    width: 23.076923076923077%;
}
.three-fourths{
    width: 74.35897435897436%;
}
.one-sixth{
    width: 14.52991452991453%;
}
.five-sixths{
    width: 82.90598290598291%;
}
.first{
    clear: both;
    margin-left: 0;
}

@media only screen and (max-width: 650px){

    .five-sixths,
    .four-sixths,
    .one-fourth,
    .one-half,
    .one-sixth,
    .one-third,
    .three-fourths,
    .three-sixths,
    .two-fourths,
    .two-sixths,
    .two-thirds{
        margin: 0;
        width: 100%;
    }
}

/* # Common Classes
---------------------------------------------------------------------------------------------------- */
/* ## Avatar
--------------------------------------------- */
.avatar{
    float: left;
}
.alignleft .avatar,
.author-box .avatar{
    margin-right: 24px;
}
.alignright .avatar{
    margin-left: 24px;
}
.comment .avatar{
    margin: 0 16px 24px 0;
}

/* ## Genesis
--------------------------------------------- */
.breadcrumb{
    margin-bottom: 20px;
}
.archive-description,
.author-box{
    text-align: center;
}
.author-box-title{
    margin-bottom: 4px;
}
.archive-description p,
.author-box p{
    margin-bottom: 1rem;
}
.archive-description p:last-child,
.author-box p:last-child{
    margin-bottom: 6rem;
}

/* ## Search Form
--------------------------------------------- */
.search-form{
    overflow: hidden;
}
.site-header .search-form{
    float: right;
}
.entry-content .search-form{
    width: 50%;
}
.genesis-nav-menu .search input[type="submit"],
.widget_search input[type="submit"]{
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    width: 1px;
}
.site-header .widget_search{
    float: left;
}
.site-header .widget_search input[type="search"]{
    display: none;
    font-size: 1.4rem;
    padding: 10px;
    width: calc(100% - 25px);
    -webkit-appearance: none;
}
.site-header .widget_search input[type="submit"]{
    background: transparent none repeat scroll 0 0;
    border-radius: 0;
    color: #999;
    font-family: FontAwesome;
    height: auto;
    margin: 7px 0 0 6px;
    position: relative;
    width: auto;
    font-size: 1.9rem;
    display: inline-block;
}
.site-header .widget_search input[type="submit"]:hover{
    border: none;
}
.site-header .widget_search:hover input[type="search"],
.site-header .widget_search input[type="search"]:focus{
    display: inline-block;
}

@media only screen and (max-width: 650px){

    .site-header .widget_search input[type="search"]{
        font-size: 1.8rem;
    }
}

/* ## Titles
--------------------------------------------- */
.archive-title{
    font-size: 3.6rem;
    margin: 4rem auto 8rem;
    text-align: center;
    width: 90%;
}
.entry-title{
    font-size: 3.6rem;
    margin: 4rem auto 8rem;
}
.entry-title a{
    color: #333;
}
.entry-title a:hover,
.entry-title a:focus{
    color: #000;
}
.widget-title{
    font-size: 1.8rem;
    margin-bottom: 2rem;
}
.footer-widgets .widget-title{
    color: #fff;
}

@media only screen and (max-width: 650px){

    .archive-title,
    .entry-title{
        font-size: 3.4rem;
        margin: 4rem auto 6rem;
    }
}

/* ## WordPress
--------------------------------------------- */
a.aligncenter img{
    display: block;
    margin: 0 auto;
}
a.alignnone{
    display: inline-block;
}
.alignleft{
    float: left;
    text-align: left;
}
.alignright{
    float: right;
    text-align: right;
}
a.alignleft,
a.alignnone,
a.alignright{
    max-width: 100%;
}
img.centered,
.aligncenter{
    display: block;
    margin: 0 auto 24px;
    text-align: center;
}
img.alignnone,
.alignnone{
    display: block;
    margin-bottom: 24px;
}
a.alignleft,
img.alignleft,
.wp-caption.alignleft{
    margin: 0 24px 24px 0;
}
a.alignright,
img.alignright,
.wp-caption.alignright{
    margin: 0 0 24px 24px;
}
@media only screen and (max-width: 650px){

    .alignnone,
    .alignleft,
    .alignright,
    .aligncenter{
        float: none !important;
        display: block !important;
        margin: 0 0 2rem !important;
        width: 100% !important;
    }
}
.wp-caption-text{
    font-size: .9em;
    margin-top: 1rem;
    font-style: italic;
    line-height: 1.3;
}
.entry-content p.wp-caption-text{
    margin-bottom: 0;
}
.entry-content .wp-audio-shortcode,
.entry-content .wp-playlist,
.entry-content .wp-video{
    margin: 0 0 28px;
}

/* # Widgets
---------------------------------------------------------------------------------------------------- */
.widget{
    word-wrap: break-word;
}
.widget li li{
    border: 0;
    margin: 0 0 0 30px;
    padding: 0;
}
.widget_calendar table{
    width: 100%;
}
.widget_calendar td,
.widget_calendar th{
    text-align: center;
}

/* ## Featured Content
--------------------------------------------- */
.featured-content .entry{
    border-bottom: 2px solid #f5f5f5;
    margin-bottom: 2rem;
    padding: 0 0 2.4rem;
}
.featured-content .entry-title{
    font-size: 2rem;
}

/* # Plugins
---------------------------------------------------------------------------------------------------- */
/* ## Genesis eNews Extended
--------------------------------------------- */
.enews-widget input{
    margin-bottom: 1rem;
}
.enews-widget input[type="submit"]{
    margin: 0;
    width: 100%;
}
.enews form + p{
    margin-top: 1rem;
}
/* ## Jetpack
--------------------------------------------- */
#wpstats{
    display: none;
}

/* # Skip Links
---------------------------------------------------------------------------------------------------- */
.genesis-skip-link{
    margin: 0;
}
.genesis-skip-link li{
    height: 0;
    width: 0;
    list-style: none;
}

/* # Site Header
---------------------------------------------------------------------------------------------------- */
.site-header{
    position: relative;
}
.site-header.fixed{
    position: fixed;
    width: 100%;
    z-index: 100;
}
.site-header.fixed.scroll{
    background-color: rgba(255, 255, 255, 0.5);
}
.site-header .wrap{
    max-width: 95%;
    padding: 10px 0;
}
.site-header .sub-menu{
    border-top: 1px solid #eee;
}
.site-header .sub-menu .sub-menu{
    margin-top: -56px;
}
.site-header .genesis-nav-menu li li{
    margin-left: 0;
}
.site-header #menu-btn{
    display: none;
}

@media only screen and (max-width: 990px){

    body.noscroll{
        overflow: hidden;
        position: fixed;
        width: 100%;
    }

    body.noscroll #wpadminbar{
        position: fixed;
    }

    .site-header .wrap{
        position: relative;
    }

    .site-header .search-form{
        float: none;
        text-align: center;
    }

    .site-header #menu-btn{
        cursor: pointer;
        display: block;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 9999;
        width: 30px;
        height: 49px;
        padding-top: 36px;
    }

    .site-header #menu-btn .line{
        background: #3e3e3e none repeat scroll 0 0;
        border-radius: 10px;
        content: "";
        display: block;
        height: 3px;
        position: absolute;
        transition: all 0.3s ease 0s;
        width: 30px;
        z-index: -1;
    }

    .site-header #menu-btn .line:after,
    .site-header #menu-btn .line:before{
        background: #3e3e3e none repeat scroll 0 0;
        border-radius: 10px;
        content: "";
        display: block;
        height: 3px;
        position: absolute;
        transition: all 0.3s ease 0s;
        width: 30px;
        z-index: -1;
    }

    .site-header #menu-btn .line:before{
        top: -10px;
    }

    .site-header #menu-btn .line:after{
        top: 10px;
    }

    .site-header #menu-btn:hover{
        transition: top 0.4s ease 0s;
    }

    .site-header #menu-btn:hover .line:before{
        top: -11px;
    }

    .site-header #menu-btn:hover .line:after{
        top: 11px;
    }

    .site-header.open .wrap{
        padding: 10px 0 30px;
    }

    .site-header.open #menu-btn{
        position: absolute;
        padding-top: 28px;
    }

    .site-header.open #menu-btn .line{
        background: none;
    }

    .site-header.open{
        transition: none 0s ease 0s;
        z-index: 10;
    }

    .site-header.open .line{
        background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    }

    .site-header.open .line:after{
        background-color: #fff;
        top: 0 !important;
        transform: rotate(45deg);
    }

    .site-header.open .line:before{
        background-color: #fff;
        top: 0 !important;
        transform: rotate(-45deg);
    }

    .site-header.open .widget-area{
        background-color: #fff;
        display: flex;
        flex-direction: column;
        height: 100%;
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 999;
        margin: 0;
        overflow: auto;
        padding-top: 60px;
    }

    .site-header.open .widget-area > *{
        order: 99;
    }

    .site-header.open .widget-area .nav-primary{
        order: 1;
    }

    .site-header.open .widget-area .widget_search{
        order: 0;
    }

    .site-header.open .widget-area .widget_social{
        order: 2;
    }

    .site-header .widget_search input[type="search"]{
        display: inline-block;
        border-radius: 0;
    }

    .site-header.open .widget_search{
        width: 90%;
        margin: 0 auto;
    }

    .site-header.open .nav-primary ul{
        display: block !important;
        width: 90%;
        margin: 0 auto;
    }

    .site-header.open .nav-primary ul li{
        display: block;
        font-size: 2.5rem;
    }

    .site-header.open .nav-primary ul li a{
        font-size: 3rem;
        padding: 10px;
    }

    .site-header.open .genesis-nav-menu .sub-menu{
        border: medium none;
        left: 0;
        margin: 0;
        opacity: 1;
        position: relative;
        width: 100%;
    }

    .site-header.open .genesis-nav-menu .sub-menu a{
        border: medium none;
        font-size: 2rem;
        width: auto;
    }

    .site-header ul.genesis-nav-menu{
        float: none;
    }

    body.admin-bar .site-header.open .widget-area{
        top: 32px;
    }

    body.admin-bar .site-header.open .nav-primary{
        padding-bottom: 32px;
    }
}

@media only screen and (max-width: 782px){

    body.admin-bar .site-header.open .widget-area{
        top: 46px;
    }

    body.admin-bar .site-header.open .nav-primary{
        padding-bottom: 46px;
    }
}

@media only screen and (max-width: 650px){

    .site-header .wrap{
        max-width: 90%;
    }

    .site-header #menu-btn{
        padding-top: 27px;
        height: 41px;
    }

    .site-header.fixed.scroll{
        top: 0;
    }
}

/* ## Title Area
--------------------------------------------- */
.title-area{
    float: left;
    padding: 1rem 0;
    display: flex;
    align-items: center;
}
@media only screen and (max-width: 650px){
    .title-area{
        padding: 0;
        display: block;
    }
}
.header-full-width .title-area{
    width: 100%;
}
.site-title{
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0;
}
.site-title img{
    display: block;
    max-width: 20rem !important;
    height: auto;
}
.site-title a,
.site-title a:hover,
.site-title a:focus{
    color: #333;
    text-decoration: none;
}
.site-title a b{
    font-weight: 500;
}
.site-description{
    font-size: 2rem;
    font-weight: 300;
    line-height: 1.2;
    margin-left: 4rem;
    margin-bottom: 0;
}
@media only screen and (max-width: 650px){
    .site-description{
        margin-left: 0;
        font-size: 1.6rem;
    }
}

/* ## Widget Area
--------------------------------------------- */
.site-header .widget-area{
    float: right;
    margin-top: 7px;
    text-align: right;
}

@media only screen and (max-width: 990px){

    .site-header .widget-area{
        display: none;
        margin-top: 0;
    }
}

/* # Site Navigation
---------------------------------------------------------------------------------------------------- */
.genesis-nav-menu{
    display: table;
    font-size: 1.6rem;
    line-height: 1;
    margin: 0;
}
.genesis-nav-menu .menu-item{
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    position: relative;
}
.genesis-nav-menu a{
    color: #333;
    text-decoration: none;
    display: block;
    padding: 10px;
}
.genesis-nav-menu a:after{
    display: block;
    content: attr(data-title);
    font-weight: 700;
    height: 1px;
    color: transparent;
    overflow: hidden;
    visibility: hidden;
}
.genesis-nav-menu a:hover,
.genesis-nav-menu a:focus,
.genesis-nav-menu .current-menu-item > a,
.genesis-nav-menu .sub-menu .current-menu-item > a:hover,
.genesis-nav-menu .sub-menu .current-menu-item > a:focus{
    font-weight: 700;
}
.genesis-nav-menu .sub-menu{
    border-top: 1px solid #eee;
    margin: 0;
    opacity: 0;
    position: absolute;
    -webkit-transition: opacity .4s ease-in-out;
    -moz-transition: opacity .4s ease-in-out;
    -ms-transition: opacity .4s ease-in-out;
    -o-transition: opacity .4s ease-in-out;
    transition: opacity .4s ease-in-out;
    width: 200px;
    z-index: 99;
}
.genesis-nav-menu .menu-item:hover > .sub-menu{
    opacity: 1;
}
.genesis-nav-menu .menu-item > .sub-menu,
.genesis-nav-menu.menu .menu-item > a:focus + ul.sub-menu,
.genesis-nav-menu.menu .menu-item.sfHover > ul.sub-menu{
    left: 50%;
    transform: translateX(-50%);
    -ms-transform: translateX(-50%); /* IE 9 */
    -webkit-transform: translateX(-50%); /* Safari */
}
.genesis-nav-menu .sub-menu .menu-item{
    display: block;
}
.genesis-nav-menu .sub-menu .menu-item a{
    background-color: #fff;
    border: 1px solid #eee;
    border-top: 0;
    font-size: 1.4rem;
    padding: 20px;
}
.genesis-nav-menu .sub-menu .sub-menu{
    border-top: 0;
    margin: 0;
    position: relative;
}

@media only screen and (max-width: 990px){

    .genesis-nav-menu{
        text-align: center;
    }

    .genesis-nav-menu li{
        float: none;
    }

    .genesis-nav-menu .menu-item > .sub-menu,
    .genesis-nav-menu.menu .menu-item > a:focus + ul.sub-menu,
    .genesis-nav-menu.menu .menu-item.sfHover > ul.sub-menu{
        left: auto;
        transform: none;
        -ms-transform: none; /* IE 9 */
        -webkit-transform: none; /* Safari */
    }

    .genesis-nav-menu .sub-menu .menu-item a{
        background-color: transparent;
    }
}

/* ## Accessible Menu
--------------------------------------------- */
.menu .menu-item:focus{
    position: static;
}
.menu .menu-item > a:focus + ul.sub-menu,
.menu .menu-item.sfHover > ul.sub-menu{
    left: auto;
    opacity: 1;
}

/* ## Primary Navigation
--------------------------------------------- */
.nav-primary{
    background-color: transparent;
    float: left;
}
.nav-primary .wrap{
    padding: 0;
    max-width: 100%;
}
.nav-primary .genesis-nav-menu .sub-menu a{
    color: #333;
}
.nav-primary .genesis-nav-menu .sub-menu a:hover,
.nav-primary .genesis-nav-menu .sub-menu a:focus,
.nav-primary .genesis-nav-menu .sub-menu .current-menu-item > a{
    color: #000;
    text-decoration: underline;
}

/* ## Secondary Navigation
--------------------------------------------- */
.nav-secondary{
    background-color: #333;
}
.nav-secondary .genesis-nav-menu a{
    color: #fff;
    padding: 20px;
    text-decoration: none;
}
.nav-secondary .genesis-nav-menu a:hover,
.nav-secondary .genesis-nav-menu a:focus,
.nav-secondary .genesis-nav-menu .current-menu-item > a{
    color: #ccc;
    text-decoration: underline;
}

/* ## Entries
-------------------------------------------- */
.entry{
    margin-bottom: 40px;
}
.entry-content ol,
.entry-content ul{
    margin-bottom: 28px;
    margin-left: 40px;
}
.entry-content ol > li{
    list-style-type: decimal;
}
.entry-content ul > li{
    list-style-type: disc;
}
.entry-content ol ol,
.entry-content ul ul{
    margin-bottom: 0;
}
.entry-content code{
    background-color: #efefef;
}

/* ## Entry Meta
--------------------------------------------- */
p.entry-meta{
    font-size: 1.6rem;
    margin-bottom: 0;
}
.entry-header .entry-meta{
    margin-bottom: 24px;
}
.entry-footer .entry-meta{
    border-top: 2px solid #f5f5f5;
    padding-top: 24px;
}
.entry-categories,
.entry-tags{
    display: block;
}
.entry-comments-link::before{
    content: "\2014";
    margin: 0 6px 0 2px;
}

/* ## Pagination
--------------------------------------------- */
.archive-pagination{
    margin: 0 auto;
    padding: 8rem 0 4rem;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.archive-pagination > div{
    margin: 0 .3rem !important;
}
.adjacent-entry-pagination{
    margin-bottom: 0;
}
.archive-pagination ul{
    display: flex;
    justify-content: center;
    align-items: center;
}
.archive-pagination li{
    margin: 0 .3rem;
}
.archive-pagination a{
    background-color: transparent;
    color: #000;
    cursor: pointer;
    display: inline-block;
    font-size: 1.6rem;
    padding: .8rem 1.2rem;
    text-decoration: none;
}
.archive-pagination a:hover,
.archive-pagination a:focus,
.archive-pagination .active a{
    background-color: #f1f1f1;
}

@media only screen and (max-width: 650px){

    .archive-pagination ul{
        display: block;
    }

    .archive-pagination li{
        display: inline-block;
    }

    .archive-pagination li.pagination-previous,
    .archive-pagination li.pagination-next{
        display: block;
    }

    .archive-pagination a{
        margin-bottom: .4rem;
    }
}
@media only screen and (max-width: 375px){

    .archive-pagination > div a{
        padding: .6rem .8rem;
    }
}

/* ## Comments
--------------------------------------------- */
.comment-respond,
.entry-comments,
.entry-pings{
    margin-bottom: 4rem;
}
.children .comment-respond,
.children .entry-pings{
    padding: 2rem;
    margin-bottom: 0;
}
.children .comment-respond .form-submit{
    margin-bottom: 0;
}
.comment-list .comment-respond{
    margin-top: 2rem;
}
.comment-header{
    font-size: 1.6rem;
}
.comment-list li{
    margin-top: 3rem;
}
.comment-list li.comment{
    background-color: #f5f5f5;
    padding: 3rem;
}
.comment-list li.comment li{
    padding: 0 0 0 2rem;
    margin: 2rem 0 0 0;
    border-left: 1px solid #cacaca;
}
.comment-respond input[type="email"],
.comment-respond input[type="text"],
.comment-respond input[type="url"]{
    width: 100%;
}
.comment-respond .comment-form-cookies-consent input[type="checkbox"]{
    float: left;
    margin: 5px 10px 0 0;
}
.comment-respond .comment-form-cookies-consent label{
    margin: 0;
}
.comment-respond label{
    display: block;
    margin-right: 12px;
}
.entry-pings .reply{
    display: none;
}
.form-allowed-tags{
    background-color: #f5f5f5;
    font-size: 1.6rem;
    padding: 24px;
}
.entry-comments .comment-list{
    list-style: none;
    margin-left: 0;
}
.entry-comments .comment-author{
    margin-bottom: 0;
}
.entry-comments .comment-content{
    word-wrap: break-word;
}
.comment-reply-link{
    font-size: 1.5rem;
}
.comment-author-link{
    font-weight: 700;
    text-decoration: none;
}
.comment-time-link{
    color: #ababab;
    text-decoration: none;
}

@media only screen and (max-width: 650px){

    .comment-respond input[type="email"],
    .comment-respond input[type="text"],
    .comment-respond input[type="url"]{
        width: 100%;
    }
}

/* # Site Footer
---------------------------------------------------------------------------------------------------- */
.site-footer{
    font-size: 1.6rem;
    line-height: 2;
    padding: 4rem 0;
    text-align: center;
    width: 90%;
    margin: 0 auto;
}
.site-footer p{
    margin-bottom: 0;
}
.site-footer span{
    vertical-align: middle;
}
.site-footer .menu-footer-wrapper{
    display: inline-block;
    vertical-align: middle;
}
.site-footer .menu-footer-wrapper ul{
    margin: 0;
}
.site-footer .menu-footer-wrapper ul li{
    display: inline-block;
    margin-right: 5px;
}
.site-footer .menu-footer-wrapper ul li:last-child{
    margin-right: 0;
}
.site-footer .menu-footer-wrapper ul ul.sub-menu{
    display: none;
}
.site-footer .menu-footer-wrapper ul a{
    color: #000;
}

@media only screen and (max-width: 650px){
    .site-footer{
        font-size: 1.7rem;
    }

    .site-footer .wrap{
        max-width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .site-footer .menu-footer-wrapper{
        display: block;
        margin-top: 10px;
    }
}

/* # Single
---------------------------------------------------------------------------------------------------- */
#genesis-content{
    margin-left: auto;
    margin-right: auto;
}
body.single:not(.single-product):not(.asi-singular-project) #genesis-content,
.page-template-default:not(.woocommerce-page) #genesis-content{
    max-width: 720px;
}
body.single:not(.single-product) #genesis-content .entry .entry-header{
    text-align: center;
    margin-bottom: 6rem;
}
body.single:not(.single-product) .entry-title{
    font-size: 5rem;
    font-weight: 500;
    margin-bottom: 3rem;
}
body.single:not(.single-product) .entry-header .entry-meta{
    margin-bottom: 1rem;
}
body.single:not(.single-product) #genesis-content .entry .entry-content p{
    font-size: 1.8rem;
}
body.single .entry-content img{
    display: block;
}
body.single #genesis-content .galleryone{
    margin-bottom: 80px;
}
body.single #genesis-content .galleryone img{
    display: block;
    width: 100%;
    height: auto;
}
body.single #genesis-content #slider-post{
    position: relative;
    margin-bottom: 10rem;
}
body.single #genesis-content #slider-post .swiper-button-prev,
body.single #genesis-content #slider-post .swiper-button-next{
    background-image: none;
    background-size: 15px 41px;
    font-size: 4rem;
    height: 40px;
    width: 12px;
    z-index: 9;
}
body.single #genesis-content #slider-post .swiper-button-prev{
    left: -40px
}
body.single #genesis-content #slider-post .swiper-button-next{
    right: -40px;
}
body.single #genesis-content #slider-post .swiper-button-prev:before{
    content: "\f104";
    font-family: FontAwesome;
}
body.single #genesis-content #slider-post .swiper-button-next:before{
    content: "\f105";
    font-family: FontAwesome;
}
body.single #genesis-content #slider-post .swiper-slide{
    display: block;
}
body.single #genesis-content #slider-post .swiper-slide img{
    display: block;
    width: 100%;
}
body.single #genesis-content #slider-post .swiper-pagination{
    margin-top: 2rem;
    width: 100%;
    z-index: 9;
}
body.single #genesis-content #slider-post .swiper-pagination .swiper-pagination-bullet{
    background-color: #ababab;
    height: 12px;
    margin-right: 20px;
    width: 12px;
}
body.single #genesis-content #slider-post .swiper-pagination .swiper-pagination-bullet:last-child{
    margin-right: 0;
}
body.single #genesis-content #slider-post .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color: #585858;
}
body.single.asi-singular-project .site-inner{
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}
body.single.asi-singular-project .site-inner #genesis-content{
    padding-top: 4rem;
}
body.single.asi-singular-project .entry .entry-header,
body.single.asi-singular-project .entry .entry-content,
body.single.asi-singular-project .entry .entry-footer,
body.single.asi-singular-project .comment-respond,
body.single.asi-singular-project .entry-comments,
body.single.asi-singular-project .entry-pings{
    max-width: 720px;
    margin: 0 auto;
    width: 90%;
}
body.single.asi-singular-project .entry .entry-content{
    margin-top: 4rem;
}

@media only screen and (max-width: 990px){

    body.single #genesis-content .galleryone{
        margin-bottom: 4rem;
    }

    body.single #genesis-content #slider-post .swiper-button-prev{
        left: -30px;
    }

    body.single #genesis-content #slider-post .swiper-button-next{
        right: -30px;
    }
}

@media only screen and (max-width: 650px){

    body.single:not(.single-product) .entry-title{
        font-size: 3.6rem;
    }

    body.single.asi-singular-project .site-inner{
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    body.single.asi-singular-project .entry .entry-header,
    body.single.asi-singular-project .entry .entry-content,
    body.single.asi-singular-project .entry .entry-footer,
    body.single.asi-singular-project .comment-respond,
    body.single.asi-singular-project .entry-comments,
    body.single.asi-singular-project .entry-pings{
        padding-left: 5%;
        padding-right: 5%;
    }

    body.single #genesis-content .entry .entry-header{
        margin-bottom: 5rem;
    }

    body.single #genesis-content #slider-post .swiper-button-next,
    body.single #genesis-content #slider-post .swiper-button-prev{
        display: none;
    }

    body.single #genesis-content #slider-post .swiper-pagination .swiper-pagination-bullet{
        margin-right: 1rem;
    }
}

/* # Front page
---------------------------------------------------------------------------------------------------- */
body.page-template-front-page .site-inner{
    max-width: 100%;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}
article.front-page .top-wrapper{
    margin-top: 5rem;
    text-align: center;
}
article.front-page .top-wrapper .block{
    margin: 0 auto;
    max-width: 700px;
    width: 90%;
}
article.front-page .top-wrapper h1{
    font-size: 5rem;
    font-weight: 700;
    margin-bottom: 25px;
}
article.front-page .top-wrapper .content{
    font-size: 2rem;
    margin-bottom: 30px;
}
article.front-page .all-posts{
    margin: 8rem 0 4rem;
    text-align: center;
}

@media only screen and (max-width: 650px){
    article.front-page .top-wrapper h1{
        font-size: 3.5rem;
    }

    article.front-page .top-wrapper .content{
        font-size: 1.8rem;
    }
}

/* # Projects list
---------------------------------------------------------------------------------------------------- */
body.asi-projects-body .site-inner{
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}
.asi-projects-wrapper{
    margin-top: 8rem;
    display: flex;
    flex-wrap: wrap;
}
.asi-projects-wrapper .post{
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: 20%;
    position: relative;
    text-align: center;
    width: 33.333333%;
    margin-bottom: 0;
}
.asi-projects-wrapper .post > a{
    display: block;
    width: 100%;
    height: 100%;
}
.asi-projects-wrapper .post .layer{
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    opacity: 0;
    transition: opacity .7s cubic-bezier(.22, .61, .36, 1);
}
.asi-projects-wrapper .post:hover .layer{
    opacity: 1;
}
.asi-projects-wrapper .post .layer-inner{
    padding: 4rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
}
.asi-projects-wrapper .post .layer-inner .entry-title{
    font-size: 4rem;
    font-weight: 700;
    margin: 0 0 2rem;
}
.asi-projects-wrapper .post .entry-content{
    margin: 0 auto;
    max-width: 400px;
}
.asi-projects-wrapper .post .entry-content p{
    margin-bottom: 0;
}
@media only screen and (max-width: 2000px){
    .asi-projects-wrapper .post{
        padding-bottom: 30%;
        width: 50%;
    }
}
@media only screen and (max-width: 990px){
    .asi-projects-wrapper .post .entry-content{
        font-size: 1.6rem;
    }
}
@media only screen and (max-width: 650px){
    .asi-projects-wrapper .post{
        padding-bottom: 60%;
        width: 100%;
    }

    .asi-projects-wrapper .post .layer-inner .entry-title{
        font-size: 3.3rem;
    }
}
@media only screen and (max-width: 375px){
    .asi-projects-wrapper .post .layer-inner .entry-title{
        font-size: 2.8rem;
    }
}

/* # Posts lists
---------------------------------------------------------------------------------------------------- */
.asi-posts-wrapper{
    display: flex;
    flex-wrap: wrap;
}
.asi-posts-wrapper .asicolumn{
    margin: 0 0 2%;
    width: 30.6666%;
    box-sizing: border-box;
}
.asi-posts-wrapper .asicolumn:nth-child(2),
.asi-posts-wrapper .asicolumn:nth-child(3n+5){
    margin-left: 4%;
    margin-right: 4%;
}
.asi-posts-wrapper .asicolumn .entry-image-link{
    background-position: center center;
    background-size: cover;
    display: block;
    padding-bottom: 64.60%;
    height: 0;
}
.asi-posts-wrapper .asicolumn .entry-header{
    margin: 2rem auto 0;
    max-width: 300px;
}
.asi-posts-wrapper .asicolumn .entry-header .entry-title{
    text-align: center;
}
.asi-posts-wrapper .asicolumn .entry-header .entry-title a{
    color: #9b9b9b;
    display: block;
    font-size: 2.5rem;
    font-weight: 300;
    line-height: 1.3em;
    text-decoration: none;
}
.asi-posts-wrapper .asicolumn .entry-content *,
.asi-posts-wrapper .asicolumn .entry-header *{
    font-size: 1.7rem;
    line-height: 1.3;
    margin: 0;
}

@media only screen and (max-width: 1020px){

    .asi-posts-wrapper{
        justify-content: space-between;
    }

    .asi-posts-wrapper .asicolumn{
        width: 48%;
        margin-bottom: 5%;
    }

    .asi-posts-wrapper .asicolumn:nth-child(2),
    .asi-posts-wrapper .asicolumn:nth-child(3n+5){
        margin-left: 0;
        margin-right: 0;
    }
}

@media only screen and (max-width: 650px){

    .asi-posts-wrapper .asicolumn{
        width: 100%;
        margin-bottom: 10%;
    }

    .asi-posts-wrapper .asicolumn .entry-header .entry-title{
        font-size: 2.5rem;
    }

    .asi-posts-wrapper .asicolumn .entry-header .entry-title a{
        margin-bottom: 0;
    }
}

/* # 404
---------------------------------------------------------------------------------------------------- */
body.error404 .site-inner{
    max-width: 700px;
    text-align: center;
}
body.error404 .entry-content .search-form{
    width: 40%;
    margin: 0 auto;
    text-align: center;
}
body.error404 .entry-content .search-form input[type="submit"]{
    font-size: 2rem;
    margin: 2rem 0 0 0;
}
@media only screen and (max-width: 960px){

    body.error404 .entry-content .search-form{
        width: 60%;
    }
}
@media only screen and (max-width: 650px){

    body.error404 .entry-content .search-form{
        width: 100%;
    }
}

/* ## Social networks
--------------------------------------------- */
.social-wrapper .social{
    color: #dedede;
    margin: 0 2rem 0 0;
    font-size: 2.4rem;
}
.social-wrapper .social:last-child{
    margin-right: 0;
}
.social-wrapper .social.facebook:hover{
    color: #3b5998;
}
.social-wrapper .social.twitter:hover{
    color: #55acee;
}
.social-wrapper .social.instagram:hover{
    color: #8a3ab9;
}
.social-wrapper .social.pinterest:hover{
    color: #cb2027;
}
.social-wrapper .social.google-plus:hover{
    color: #dd4b39;
}
.social-wrapper .social.flickr:hover{
    color: #ff0084;
}
.social-wrapper .social.linkedin:hover{
    color: #007bb5;
}
.social-wrapper .social.skype:hover{
    color: #00aff0;
}
.social-wrapper .social.tripadvisor:hover{
    color: #00af87;
}
.social-wrapper .social.tumblr:hover{
    color: #32506d;
}
.social-wrapper .social.vimeo:hover{
    color: #aad450;
}
.social-wrapper .social.youtube:hover{
    color: #bb0000;
}
.social-wrapper .social.spotify:hover{
    color: #1db954;
}
.social-wrapper.social-footer{
    display: block;
}
.social-wrapper.social-footer.m{
    margin-top: 20px;
}
.social-wrapper.social-footer .social{
    color: #ababab;
}

@media only screen and (max-width: 650px){

    .social-wrapper.social-footer{
        display: block;
    }
}
