/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** SECTION 1 - START HERE   ***************/

h1, .h1, .banner h1, h1.uppercase {
    font-size: 3.2em;
    letter-spacing: .14em !important;
    line-height: 1.1em;
    font-weight: 600 !important;
    margin-bottom: .2em;
}
h2, .h2, .banner h2, h2.uppercase {
    font-size: 2.6em;
    line-height: 1.2em;
    margin-bottom: .2em;
}
h3, .h3, .banner h3, h3.uppercase {
    font-size: 1.5em;
    line-height: 1.35em;
    margin-bottom: .25em;
}
h4, .h4, .banner h4, h4.uppercase {
    font-size: 1.15em;
    letter-spacing: .07em !important;
    line-height: 1.4em;
    margin-bottom: .25em;
}
h5, .h5, .banner h5, h5.uppercase {
    letter-spacing: .08em !important;
    font-size: 1.0em;
    font-weight: 600;
}
h6, .h6, .banner h6, h6.uppercase {
    letter-spacing: .08em !important;
    font-size: .9em;
    opacity: 1;
}
.uppercase{
    letter-spacing: 0 !important;
}
.is-thin, .thin-font {
    font-weight: 400 !important;
}

/** HEADER + MENUS **/

.shade-top {
    background: linear-gradient(180deg, #000 0, transparent 85%);
    opacity: .8;
}
.header-nav-main.nav.nav-right a {
    text-transform: none !important;
    letter-spacing: 0;
}
.transparent .header-main .nav > li > a{
    color: #fff;
}
.transparent .header-main .nav > li > a:hover{
    color: var(--success-color);
}
.nav-size-medium>li>a {
    font-size: 1.15em;
}
.nav-spacing-large>li {
    margin: 0 13px;
}
#masthead .header-button-1 a{
    font-size: 1.2em;
    color: #fff;
}
.header-button-1 i{
    margin-right: 1px !important;
    font-size: 14px;
}
.has-dropdown .icon-angle-down{
    display: none;
}
.nav-column>li>a, .nav-dropdown>li>a, .nav-vertical-fly-out>li>a{
    font-family: 'Josefin Sans', sans-serif;
    color: #000;
}
.nav-column>li>a:hover, .nav-dropdown>li>a:hover, .nav-vertical-fly-out>li>a:hover{
    color: var(--primary-color);
}
#top-bar .header-button-1 a{
    font-size: 1.25em;
    color: var(--primary-color);
}
#top-bar .header-button-2 a{
    color: var(--primary-color);
}
#top-bar .nav>li.header-divider{
    border-color: rgba(0, 31, 96, .24);
}
.off-canvas-left.dark .mfp-content, .off-canvas-right.dark .mfp-content{
    background-color: var(--primary-color);
}
.off-canvas .sidebar-menu a:not(.button):not(.social-icons a){
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 500;
    color: #fff;
    font-size: .9em;
}
.off-canvas .header-button-1 a{
    display: block;
    background-color: #8e8e8e !important;
    font-size: 1.25em;
    padding-top: 5px;
    padding-bottom: 5px;
}
.off-canvas .header-button-2 a{
    display: block;
    background-color: var(--success-color) !important;
    font-size: 1.15em;
    padding-top: 5px;
    padding-bottom: 5px;
    color: var(--primary-color);
}
.off-canvas .header-button-2 a:hover{
    background-color: #000 !important;
    color: #fff;
}
.off-canvas .header-button-1 a:hover{
    background-color: #000 !important;
}
.nav-sidebar.nav-vertical>li+li.header-social-icons{
    border-top: 0;
    padding-top: 0;
}
.html .social-icons{
    text-align: center;
    color: var(--success-color);
}
.off-canvas li.html.header-button-1{
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 10px;
}
.off-canvas li.html.header-button-2{
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
}
.social-icons:not(.off-canvas .social-icons) a{
    color: var(--primary-color);
}

/** BUTTONS **/

.button {
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 600;
    letter-spacing: .08em;
}
.button.white:not(.button.white.is-outline):not(.button.white.is-underline):not(.button.white.is-link) span, .button.white:not(.button.white.is-underline):not(.button.white.is-link):hover span{
    color: var(--primary-color);
}
.button.alert.is-outline span{
    color: var(--primary-color);
}
.button.alert.is-outline:hover span{
    color: #fff;
}

/** OTHER **/

.section-boxed{
    width: inherit;
    margin-left: 2%;
    margin-right: 2%;
}
ul li.bullet-arrow, ul li.bullet-checkmark, ul li.bullet-star, ul li.bullet-cross{
    border: none;
    padding: 5px 0 5px 23px;
}
legend{
    border: none;
    text-transform: none;
}
.gfield-choice-input{
    margin-bottom: 0 !important;
}
.gform_required_legend{
    display: none;
}
.gform_wrapper.gravity-theme .gfield_header_item, .gform_wrapper.gravity-theme .gform_fileupload_rules, .gform_wrapper.gravity-theme .ginput_complex label{
    font-size: 13px;
}
.gform_wrapper.gravity-theme .gfield_label{
    margin-bottom: 2px;
}
.icon-box-left.overlap{
    align-items: center;
}
.icon-box-left .icon-box-img+.icon-box-text {
    padding-left: 0;
    margin-left: -35px;
    z-index: 1;
    margin-top: 10px;
}
.white-line h4:before{
    content: '';
    flex: 1;
    margin-right: 1rem;
    height: 1px;
    max-width: 80px;
    background-color: #fff;
}
.white-line h4{
	display: flex;
    align-items: center;
    justify-content: flex-end;
}

.small-margin h3{
    margin-bottom: .1em;
}
.no-padding .ux-logo-link{
    padding: 0 !important;
}
.no-padding .ux-logo.right img{
    float: right;
}
.accordion-title{
    border-top: 5px solid #fff;
    font-size: 100%;
    background-color: #f4f4f4;
}
.toggle{
    color: #858585;
}
.process-accordion .accordion-title{
    border-top: none;
}
.process-accordion .accordion-inner{
    padding: .75em .5em 0;
}

/**REAL TESTIMONIALS**/

.sp-testimonial-pro-wrapper .sp-testimonial-pro-section.sp-tpCarousel {
    padding-bottom: 0 !important;
}
.sp-tpro-modal-testimonial .tpro-testimonial-title .sp-tpro-testimonial-title, .sp-tpro-modal-testimonial .tpro-client-testimonial, .sp-tpro-modal-testimonial .tpro-client-name {
    text-align: left !important;
}

/** PORTFOLIO **/

.portfolio-archive .portfolio-box.box h6{
    font-size: 1.6em;
}
.portfolio-box.box .portfolio-box-category{
    color: #fff;
    opacity: 1;
    margin-top: .4em;
}
.portfolio-archive  .portfolio-box.box .portfolio-box-category{
    font-size: 1em;
}
.portfolio-box.box-shade .shade{
    opacity: .8;
    background: linear-gradient(0deg, #202020 0, rgba(50, 50, 50, 0) 40%);
}
.portfolio-archive .portfolio-box.box-shade .box-text, .portfolio-archive .portfolio-box.box-shade .shade, .portfolio-archive .portfolio-box .image-cover, .portfolio-archive .portfolio-box .portfolio-box-category {
    transition: all 0.25s 0s ease-in-out;
}
.portfolio-archive .portfolio-box.box-shade:hover .shade{
    background: linear-gradient(0deg, #202020 0, rgba(50, 50, 50, 0) 50%);
}
.portfolio-archive .portfolio-box.box-shade:hover .box-text{
    bottom: 18%;
}
.portfolio-archive .title-overlay.fill, .portfolio-single-page .title-overlay.fill{
    background-color: transparent !important;
}
.portfolio-archive .featured-title .page-title-inner {
    padding-top: 60px;
    padding-bottom: 40px;
}
.portfolio-archive h1.entry-title{
    font-size: 3em;
}
.portfolio-archive .portfolio-box:hover .image-cover{
    filter: blur(4px);
    -webkit-filter: blur(4px);
}
.portfolio-archive .portfolio-box-category:after {
    content: '';
    display: block;
    border-bottom: solid 2px transparent;
    width: 18%;
    margin: 10px auto 0;
}
.portfolio-archive .portfolio-box:hover .portfolio-box-category:after {
    border-color: var(--success-color);
}
.portfolio-page-wrapper .portfolio-element-wrapper>.row.row-small, .portfolio-page-wrapper .portfolio-element-wrapper>.container.mb-half, .portfolio-single-page .portfolio-top .row:not(.portfolio-summary .row){
    max-width: 1425px !important;
}
.portfolio-single-page .portfolio-share{
    display: none;
}
.portfolio-single-page .portfolio-summary>.row{
    margin: 0 auto;
    max-width: 1050px !important;
}
.portfolio-single-page .portfolio-summary.pb{
    padding-bottom: 0;
}
.portfolio-single-page .portfolio-summary>.row>.col{
    padding: 0 20px 20px !important;
}
.portfolio-single-page .featured-title{
    background-color: var(--primary-color) !important;
    text-shadow: none !important;
}
.portfolio-single-page .featured-title .page-title-bg{
    box-shadow: none !important;
}
.portfolio-single-page .featured-title .page-title-inner{
    padding: 40px 20px 50px;
}
.portfolio-single-page .featured-title .title-bg.fill{
    display: none;
}
.portfolio-single-page h1.entry-title{
    color: #fff;
    font-size: 2.4em;
}
.portfolio-single-page h1.entry-title:after {
    content: '';
    display: block;
    border-bottom: solid 2px var(--success-color);
    width: 120px;
    margin: 30px auto 0;
}
.portfolio-single-page .featured_item_cats a{
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    opacity: 1;
}
.portfolio-single-page .featured_item_cats{
    margin-bottom: 10px;
}
.portfolio-archive .nav.filter-nav>li>a{
    font-size: 1em;
    text-transform: capitalize;
    letter-spacing: 0;
    padding-bottom: .3em;
}
.portfolio-archive .nav.filter-nav>li.active>a{
    color: var(--secondary-color);
}
.portfolio-archive .nav-line-bottom.filter-nav>li>a:before{
    background-color: var(--success-color);
}
.portfolio-archive .nav.filter-nav>li{
    margin: 0 10px;
}
.portfolio-archive ul.nav.filter-nav{
    margin-bottom: 15px;
}

/*************** SECTION 2 - MOBILE QA FIXES ONLY  ***************/
@media only screen and (max-width: 549px) {
    .transparent .header-main{
        height: 80px !important;
    }
    .transparent #logo img{
        max-height: 80px !important;
    }
    h1, .h1, .banner h1, h1.uppercase{
        font-size: 2em;
		letter-spacing: .06em !important;
    }
    .scale h1{
        font-size: 7.75vw;
    }
    h2, .h2, .banner h2, h2.uppercase{
		font-size: 1.7em;
    }
    h3, .h3, .banner h3, h3.uppercase {
		font-size: 1.3em;
    }
    h4, .h4, .banner h4, h4.uppercase{
		font-size: 1.1em;
    }
    .portfolio-archive .featured-title .page-title-inner {
        padding-top: 70px;
        padding-bottom: 30px;
    }
    .portfolio-archive h1.entry-title{
        font-size: 2em;
    }
    .portfolio-archive .portfolio-box.box h6{
        font-size: 1.4em;
    }
    .portfolio-single-page .featured-title .page-title-inner{
        padding: 20px 20px 30px;
    }
    .portfolio-single-page h1.entry-title{
        font-size: 1.6em;
    }
}

/*************** SECTION 3 - MEDIUM GRID AND UP  ***************/
@media only screen and (min-width: 550px) and (max-width: 850px) {
    .transparent .header-main{
        height: 80px !important;
    }
    .transparent #logo img{
        max-height: 80px !important;
    }
    h1, .h1, .banner h1, h1.uppercase{
		font-size: 2.4em;
    }
    h2, .h2, .banner h2, h2.uppercase{
		font-size: 2em;
    }
    h3, .h3, .banner h3, h3.uppercase {
		font-size: 1.3em;
    }
    h4, .h4, .banner h4, h4.uppercase{
		font-size: 1.1em;
    }
    .portfolio-archive .featured-title .page-title-inner {
        padding-top: 80px;
        padding-bottom: 30px;
    }
    .portfolio-archive h1.entry-title{
        font-size: 2.5em;
    }
    .portfolio-archive .portfolio-box.box h6{
        font-size: 1.4em;
    }
    .portfolio-single-page .featured-title .page-title-inner{
        padding: 20px 20px 30px;
    }
    .portfolio-single-page h1.entry-title{
        font-size: 1.8em;
    }
}
/*************** SECTION 4 - Midsize 2  ***************/
@media only screen and (min-width: 850px) and (max-width: 1050px) {
    .nav-right.nav-size-medium>li>a {
        font-size: .95em;
    }
    .nav-left.nav-size-medium>li>a {
        font-size: .9em;
    }
    .nav-spacing-large>li {
        margin: 0 6px;
    }
    #logo{
        width: 180px !important;
        margin-right: 10px;
    }
    #masthead .header-button-1 a {
        font-size: 1.05em;
    }
    #masthead .header-button-1 i{
        display: none;
    }
}

/*************** SECTION 5 - Midsize 1  ***************/
@media only screen and (min-width: 1050px) and (max-width: 1215px) {
    .nav-size-medium>li>a {
        font-size: 1.05em;
    }
    .nav-spacing-large>li {
        margin: 0 10px;
    }
    #logo{
        width: 235px !important;
    }
}

/*************** SECTION 6 - DESKTOP AND UP  ***************/
@media only screen and (min-width: 1000px) {
    
}