/*
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: 4.0em;
	line-height: 1.1em;
	margin-bottom: .1em;
}
h2, .h2, .banner h2, h2.uppercase{
	font-size: 2.7em;
    line-height: 1.15em;
	margin-bottom: .3em
}
h3, .h3, .banner h3, h3.uppercase {
	font-size: 1.5em;
    line-height: 1.3em;
	margin-bottom: .2em
}
h4, .h4, .banner h4, h4.uppercase {
	font-size: 1.2em;
    line-height: 1.3em;
    margin-bottom: .25em;
}
h5, .h5, .banner h5, h5.uppercase{
    font-size: .8em;
    line-height: 1.1em;
    margin-bottom: .2em;
}
.uppercase{
    letter-spacing: 0 !important;
}
.no-margin p{
    margin-bottom: 0;
}
b:not(h1 b), strong:not(h1 strong){
    font-weight: 800;
}

/*MAIN HEADER + NAV + OFF CANVAS STYLING*/

#logo:not(.stuck #logo) img {
    padding: 20px 0 8px !important;
}
.shade-top {
    background: linear-gradient(180deg, #000 0, transparent 92%);
    opacity: .85;
}
.page-template-page-transparent-header .shade-top{
    display: none;
}
.header-bg-container:not(.stuck .header-bg-container):after {
    content: '';
    border-bottom: 1px solid rgba(216, 207, 196, 1);
    display: block;
    margin-left: 21.5em;
    position: relative;
    bottom: 0;
    margin-top: 4.8em;
}
.transparent .nav-dark .nav>li>a{
    color: #fff;
}
.header-main .nav > li > a, .nav-column>li>a, .nav-dropdown>li>a, .nav-vertical-fly-out>li>a, .nav-dropdown li.active>a{
    color: var(--primary-color);
}
.transparent .nav-dark .nav>li>a:hover, .header-main .nav > li > a:hover, .nav-column>li>a:hover, .nav-dropdown>li>a:hover, .nav-vertical-fly-out>li>a:hover, .nav-dropdown li.active>a:hover{
    color: var(--success-color);
}
.nav-size-medium>li>a{
    font-size: 1.05em;
}
.header-main .nav.nav-left > li > a{
    font-size: 1.15em;
}
.nav-spacing-xlarge>li {
    margin: 0 14px;
}
.header-button-1 a{
    font-size: 1.2em;
    padding: 3px 25px;
}
.header-button-2 a.is-large{
    font-size: 1.4em;
    color: #fff;
}
.off-canvas-left.dark .mfp-content, .off-canvas-right.dark .mfp-content{
    background-color: #fff;
}
.off-canvas .sidebar-menu a:not(.button,.social-icons a){
    color: var(--primary-color);
    font-size: .95em;
}
.off-canvas .sidebar-menu a:not(.button,.social-icons a):hover{
    color: var(--secondary-color);
}
.off-canvas .header-button a{
    display: block;
}

/*BUTTON STYLING*/

.button {
	font-weight: 700;
	letter-spacing: 0;
}
.button.white:not(.is-outline,.is-underline,.is-link) span, .button.white:not(.is-underline,.is-link):hover span{
    color: var(--primary-color);
}
.button.alert:not(.is-underline,.is-link,.is-outline) span{
    color: var(--primary-color);
}
.social-icons a{
    color: var(--secondary-color);
}
.social-icons a:hover, .dark .social-icons a{
    color: var(--success-color);
}
.dark .social-icons a:hover{
    color: var(--alert-color);
}

/*OTHER STYLING*/

.section.hero-image{
    min-height: calc(100vw / (16.101 / 9)) !important;
    height: 100%;
    width: 100%;
    position: relative;
}
.section.inside-image{
    min-height: calc(100vw / (18.101 / 9)) !important;
    height: 100%;
    width: 100%;
    position: relative;
}

ul li.bullet-arrow, ul li.bullet-checkmark, ul li.bullet-star, ul li.bullet-cross{
    border: none;
    padding: 0 0 0 23px;
}
ul li::marker, ol li::marker{
    color: var(--secondary-color);
}
.dark ul li::marker, .dark ol li::marker{
    color: #fff;
}
ul li.bullet-arrow:before, ul li.bullet-checkmark:before, ul li.bullet-star:before{
    color: var(--secondary-color);
}
.col-inner ul li, .col-inner ol li{
    margin-bottom: .3em;
}
.top-fade:before{
    content: '';
    display: block;
    z-index: 1;
    position: absolute;
    height: 100%;
    overflow: hidden;
    width: 100%;
    background: linear-gradient(to bottom, rgba(239,235,231,1) 0%,rgba(239,235,231,0.5) 100%);
    /*Permalink: https://colorzilla.com/gradient-editor/#efebe7+0,efebe7+100&1+0,0.5+100*/ 
}
.section-boxed, .section-boxed .section-bg{
    margin-right: 3.5%;
	margin-left: 3.5%;
	width: inherit;
    border-radius: 40px;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
}
.row-divided>.col+.col:not(.large-12){
    border-width: 2px;
    border-color: var(--alert-color);
}

.wpcmtt-tooltip .qtip-content{
    margin-bottom: 30px;
}
.corners-round>.col-inner, .corners-round .banner, .corners-round .banner-bg, .corners-round .box-image, .corners-round .image-zoom, .corners-round .message-box, .corners-round .message-box-bg-image, .corners-round .message-box-bg-overlay {
    border-radius: 40px;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
}
.corners-round-left>.col-inner, .corners-round-left .banner, .corners-round-left .banner-bg {
    border-radius: 40px 0 0 40px;
    -webkit-border-radius: 40px 0 0 40px;
    -moz-border-radius: 40px 0 0 40px;
}
.corners-round-bottom>.col-inner {
    border-radius: 0 0 40px 40px;
    -webkit-border-radius: 0 0 40px 40px;
    -moz-border-radius: 0 0 40px 40px;
}

.corners-round-top>.col-inner, .corners-round-top .banner, .corners-round-top .banner-bg, .corners-round-top .box-image,  .corners-round-top .image-zoom, .corners-round-top .message-box, .corners-round-top .message-box-bg-image, .corners-round-top .message-box-bg-overlay  {
    -webkit-border-top-left-radius: 40px;
    -webkit-border-top-right-radius: 40px;
    -moz-border-radius-topleft: 40px;
    -moz-border-radius-topright: 40px;
    border-top-left-radius: 40px;
    border-top-right-radius: 40px;
}


legend{
    border:none;
    text-transform: none;
}
.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;
    padding-top: 2px;
}
.gform_wrapper.gravity-theme .gfield_label{
    margin-bottom: 1px;
}
.gform_wrapper.gravity-theme #field_submit .gform-button--width-full, .gform_wrapper.gravity-theme .gform_footer .gform-button--width-full{
    margin-right: 0 !important;
}
.gform_button.button{
    background-color: var(--success-color) !important;
}
.gform_button.button:hover{
    background-color: var(--secondary-color) !important;
    box-shadow: none;
}
.accordion-title{
    background-color: #f0ebe8;
    border-top: 3px solid #fff;
    font-size: 100%;
}
.accordion-title.active{
    border-color: #fff;
    background-color: #f0ebe8;
}
.accordion-inner{
    padding: 1em;
}
.col-front>.col-inner{
    z-index: 1;
}
.banner p{
    margin-top: 0;
}

/* ULTIMATE FAQ PLUGIN */

/*
.ewd-ufaq-faq-div{
    margin: 4px 0 !important;
    padding: 5px 5px 5px 8px !important;
}
*/
.ewd-ufaq-faq-title{
    background-color: #f0ebe9;
    padding: 4px 7px;
}
.ewd-ufaq-faq-title .ewd-ufaq-post-margin-symbol{
    margin-right: 2px !important;
}
.ewd-ufaq-faq-title .ewd-ufaq-post-margin-symbol:after{
    font-family: 'fl-icons' !important;
    content: '\f106' !important;
    font-size: 28px;
    color: #605e5d;
}
.ewd-ufaq-post-active .ewd-ufaq-faq-title .ewd-ufaq-post-margin-symbol:after{
    font-family: 'fl-icons' !important;
    content: '\f107' !important;
    font-size: 28px;
    color: var(--secondary-color);
}
.ewd-ufaq-faq-title .ewd-ufaq-post-margin-symbol span{
    display: none !important;
}
.ewd-ufaq-faq-title-text h4{
    font-family: 'Nunito', sans-serif !important;
    font-weight: 400 !important;
    font-size: 1.05em;
    padding-top: 2px;
}
.ewd-ufaq-post-active .ewd-ufaq-faq-title-text h4{
    font-weight: 700 !important;
}
.ewd-ufaq-faq-title:hover h4, .ewd-ufaq-faq-title:hover .ewd-ufaq-post-margin-symbol:after{
    color: var(--secondary-color);
}
.ewd-ufaq-faq-body{
    background-color: #fff !important;
    padding: 15px 25px 1px !important;
}
.ewd-ufaq-expand-collapse-div{
    margin: 10px !important;
}
.ewd-ufaq-toggle-all-symbol{
    display: none;
}
.ewd-ufaq-expand-all, .ewd-ufaq-collapse-all{
    border: 1px solid #000;
    border-radius: 99px;
    padding: 5px 15px;
    font-weight: 500;
}
.ewd-ufaq-expand-all:hover, .ewd-ufaq-collapse-all:hover{
    background-color: #000;
    color: #fff !important;
}

/*REAL TESTIMONIALS STYLING*/

.sp-testimonial-pro-section .tpro-testimonial-title {
    border-bottom: 2px solid var(--secondary-color);
    padding-bottom: 6px;
}
.sp-testimonial-pro-wrapper .sp-testimonial-pro-section.sp-tpCarousel {
    padding-bottom: 0 !important;
}

/* TIMELINE */

.ctl-before-content{
    display: none;
}
.ctl-wrapper .ctl-title{
    color: #000 !important;
    padding: 10px 20px 0 !important;
}
.ctl-wrapper .ctl-vertical-wrapper.ctl-compact-wrapper .ctl-labels, .ctl-wrapper .ctl-description{
    padding: 10px 20px 10px !important;
}
.wp-caption-text{
    font-size: .85em;
    font-style: italic;
    margin-top: 8px;
}
.ctl-media.full a:after{
    content: 'View larger image';
    position: relative;
    display: inline-block;
    top: 15px;
    height: 24px;
    font-size: .85em;
}
.ctl-media.full a:hover:before{
    content: '\f00e';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    display: inline-block;
    font-size: 1.5em;
    background-color: #fff;
    border-radius: 99px;
    padding-top: 25px;
    height: 50px;
    width: 50px;
    top: 30%;
    left: 45%;
}
/*
.ctl-media.full a:hover img{
    opacity: .2;
}
*/
.ctl-description img{
    min-width: unset !important;
}
[data-aos][data-aos][data-aos-duration="400"], body[data-aos-duration="400"] [data-aos] {
    transition-duration: 1.4s !important;
}
.glightbox-clean .gslide-title{
    font-family: 'Nunito', sans-serif !important;
}

/*************** SECTION 2 - MOBILE QA FIXES ONLY  ***************/
@media only screen and (max-width: 549px) {
    .header-bg-container:after {
        display: none !important;
    }
    h1, .h1, .banner h1, h1.uppercase {
	   font-size: 2.5em;
    }
    h2, .h2, .banner h2, h2.uppercase{
	   font-size: 1.8em;
    }
    h3, .h3, .banner h3, h3.uppercase {
	   font-size: 1.35em;
    }
    h4, .h4, .banner h4, h4.uppercase {
        font-size: 1.1em;
    }
    #logo:not(.stuck #logo) img {
        padding: 14px 0 !important;
    }
    .transparent #logo img {
        max-height: 80px !important;
    }
    .section-boxed, .section-boxed .section-bg{
        margin-right: 2.5%;
        margin-left: 2.5%;
        border-radius: 30px;
        -webkit-border-radius: 30px;
        -moz-border-radius: 30px;
    }
    .corners-round-left>.col-inner, .corners-round-left .banner, .corners-round-left .banner-bg {
        border-radius: 40px 40px 0 0;
        -webkit-border-radius: 40px 40px 0 0;
        -moz-border-radius: 40px 40px 0 0;
    }
    .section.hero-image{
        min-height: calc(100vw / (10.101 / 9)) !important;
    }
    .section.inside-image{
        min-height: calc(100vw / (9.101 / 9)) !important;
    }
    p .alignleft, p .alignright, .entry-content .alignleft, .entry-content .alignright{
        display: block;
        margin-bottom: .5em;
        margin-left: auto;
        margin-right: auto;
    }
    .ctl-media.full a:after{
        left: 40%;
    }
    .ctl-media.full a:hover:before{
        padding-left: 12px;
    }
}

/*************** SECTION 3 - MEDIUM GRID AND UP  ***************/
@media only screen and (min-width: 550px) and (max-width: 850px) {
    .header-bg-container:after {
        display: none !important;
    }
    h1, .h1, .banner h1, h1.uppercase {
	   font-size: 3.0em;
    }
    h2, .h2, .banner h2, h2.uppercase{
	   font-size: 2.2em;
    }
    h3, .h3, .banner h3, h3.uppercase {
	   font-size: 1.4em;
    }
    h4, .h4, .banner h4, h4.uppercase {
        font-size: 1.15em;
    }
    #logo:not(.stuck #logo) img {
        padding: 14px 0 !important;
    }
    .transparent #logo img {
        max-height: 80px !important;
    }
    .section.hero-image{
        min-height: calc(100vw / (9.101 / 9)) !important;
    }
    .section.inside-image{
        min-height: calc(100vw / (12.101 / 9)) !important;
    }
    p .alignleft, .entry-content .alignleft {
        display: inline;
        float: left;
        margin-right: 1.5em;
    }
    p .alignright, .entry-content .alignright{
        display: inline;
        float: right;
        margin-left: 1.5em;
    }
    .ctl-media.full a:after{
        left: 40%;
    }
    .ctl-media.full a:hover:before{
        padding-left: 12px;
    }
}

/*************** SECTION 4 - Midsize  ***************/
@media only screen and (min-width: 850px) and (max-width: 1150px) {
    h1, .h1, .banner h1, h1.uppercase {
        font-size: 3.7em;
    }
    .section.hero-image{
        min-height: calc(100vw / (14.101 / 9)) !important;
    }
    .section.inside-image{
        min-height: calc(100vw / (15.101 / 9)) !important;
    }
    nav-size-medium>li>a{
        font-size: .95em;
    }
    .header-main .nav.nav-left > li > a{
        font-size: 1.0em;
    }
    .nav-spacing-xlarge>li {
        margin: 0 7px;
    }
    #logo{
        margin-right: 15px;
        width: 170px !important;
    }
    .header-button-1 a{
        font-size: 1.05em;
        padding: 3px 15px;
    }
    .header-bg-container:not(.stuck .header-bg-container):after{
        margin-left: 13.75em;
    }
}

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