
header {
    position: relative;
    z-index: 10;
}

.blockUI.blockOverlay{
    position: fixed;
}

/*user account link menu*/
.header-account-link  .avatar-wrapper{
    height: 36px;
    width: 36px;
    margin: auto;
    position: relative;
    background-size: cover;
    background-position: center center;
    overflow: hidden;
    border-radius: 50%;
    box-shadow: rgba(0,0,0,0.125) 2px 2px 10px;
}

.header-account-link {
    position: relative;
    z-index: 10;
    text-align: center;
}

.header-account-link a.user-name {
    font-size: 14px;
    margin: 0 -40px;
}

.header-account-link ul {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height .3s ease-in-out;
    -moz-transition: max-height .3s ease-in-out;
    -o-transition: max-height .3s ease-in-out;
    -ms-transition: max-height .3s ease-in-out;
    transition: max-height .3s ease-in-out;
    position: absolute;
    top: 100%;
    left: -25px;
    width: auto;
    padding: 0 ;
    min-width: 200px;
    background-color: #fff;
    color: #333;
    text-align: left;
}

.header-account-link:hover ul{
    max-height: 500px;
    box-shadow: rgba(0,0,0,0.25) 10px 10px 15px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.header-account-link ul li{
    padding: 5px 20px;
    list-style: none;
    text-align: left;
    /*cursor: pointer;*/
}

.header-account-link ul li a:hover{
    text-decoration: underline;
}

.header-account-link .log-in-link{
    font-weight: 700;
    font-size: 14px;
    color: #333;
}


/*print settings*/
.print-only{
    display: none;
}

.columns-2 .fl-module-content{
    columns: 2;
}

.shadow{
    box-shadow: rgba(0,0,0,0.25) 10px 10px 15px;
}

body.fl-builder.fl-builder-edit #tidio-chat{
    display: none!important;
}

body .fl-builder-content.fl-theme-builder-header-scrolled,
body .fl-builder-content.fl-theme-builder-header-scrolled .fl-row{
    box-shadow: 0 1px 15px rgba(0,0,0,0.125);
}

li.menu-button a {
    text-align: center;
    border: none;
    border-radius: 0;
    cursor: pointer;
    display: inline-block;
}

li.menu-button a:hover {
    opacity: 0.8;
}

body .hyphens{
    -webkit-hyphens: auto!important;
    -moz-hyphens: auto!important;
    -ms-hyphens: auto!important;
    hyphens: auto!important;
}

a.btn.btn-default {
    padding: 15px 30px;
    display: inline-block;
    margin-bottom: 10px;
    margin-right: 10px;
}

a.btn.btn-default:hover{
    text-decoration: none;
    opacity: 0.9;
} 

.align-bottom{
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.position-relative{
    position: relative!important;
}

.position-absolute{
    position: absolute!important;
}

.position-absolute.bottom{
    top:unset!important;
    bottom:15px!important;
}

.position-absolute.left{
    right:unset!important;
    left:15px!important;
}

.position-absolute.top{
    bottom:unset!important;
    top:15px!important;
}

.position-absolute.right{
    left:unset!important;
    right:15px!important;
}

/*hover effects for fl photo module*/
/*https://kb.wpbeaverbuilder.com/article/608-add-hover-effects-to-the-photo-module*/
.hover-zoom-in .fl-photo-content {
  overflow: hidden;
}
.hover-zoom-in .fl-photo-content .fl-photo-img {
  -webkit-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
  will-change: transform;
}
.hover-zoom-in .fl-photo-content .fl-photo-img:hover {
  -webkit-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out;
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
}

.hover-lift > .fl-col-content.fl-node-content {
    -webkit-transition: padding-bottom 250ms linear;
    -moz-transition: padding-bottom 250ms linear;
    -o-transition: padding-bottom 250ms linear;
    -ms-transition: padding-bottom 250ms linear;
    transition: padding-bottom 250ms linear; 
}

.fl-col.hover-lift:hover > .fl-col-content.fl-node-content {
    padding-bottom: 10px;
}

.hover-lift > .fl-col-content.fl-node-content {
    -webkit-transition: opacity 250ms linear;
    -moz-transition: opacity 250ms linear;
    -o-transition: opacity 250ms linear;
    -ms-transition: opacity 250ms linear;
    transition: opacity 250ms linear; 
}

.fl-col.hover-fade:hover .fl-col-content:after {
    opacity: 0.75;
}

/*input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=number],
input[type=search],
input[type=url],
textarea {
    border-radius: 0;
}*/


/*woopack items*/
/*span.cart-contents-icon.fa.fa-shopping-cart {
    z-index: 10;
    position: relative;
    display: inline-block;
}

span.cart-contents-count-after {
    position: absolute;
    top: 6px;
    right: 10px;
    z-index: 0;
}

a.woopack-cart-contents.woopack-cart-icon {
    position: absolute;
    right: 17px;
    top: 10px;
}*/

/*woocommerce product zoom modal background opacity*/
.pswp.pswp--open.pswp--visible .pswp__bg {
    opacity: 0.8!important;
}



/*hide categories for uncategorized products*/
.product.product_cat-uncategorized .product_meta .posted_in{
    display: none
}

.full-bleed,
.bg-image.full-bleed,
.bg-color.full-bleed{
    position: absolute;
    top:0;left:0;right:0;bottom:0;
    background-size: cover;
    background-position: center center;
}

.bg-image.full-bleed{
    z-index: 0; 
}
.bg-color.full-bleed{
    z-index: 1; 
}

.fss-grid-inner .fl-button {
    /* z-index: 1; */
    position: relative;
}


.fl-row.fl-row-full-width {
    margin-top: -1px;
    margin-bottom: -1px!important;
}

.fss-clients-grid .pp-custom-grid-post{
    border:none;
}

.fss-clients.pp-custom-grid-post-image {
    display: block;
    height: 200px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}

.pp-custom-grid-post-image .bg-image.round,
.fss-custom-grid-post-image .bg-image.round{
    overflow: hidden;
    border-radius: 50%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    width: 100%;
    padding-bottom: 100%;
    margin-top: -50%;
}

/*FSS Team Module*/
.fss-grid-item.team{
    margin-bottom: 25px;
}

.fss-grid-item.team .image{
    width:100%;
    background-size: cover!important;
    background-position: center center!important;
}

.fss-grid-item.team .content{
    width:100%;
}

.hero-video, .hero-image{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

img.round {
    overflow: hidden;
    border-radius: 50%;
    display: inline-block;
    position: relative;
    margin-top:-150px;
}

.fss-publicize ul {
    display: inline-block;
    padding: 0;
}

.fss-publicize li {
    list-style: none;
    display: inline;
    margin-right: 10px;
    font-size: 1.5em;
}

h1.fl-heading {
    word-wrap: normal!important;
}

.fl-heading {
    display: inline-block;
    width:100%;
}

.pp-resource-icon i {
    font-size: 2em;
    margin-top: 20px;
    color: #333;
}

.fss-video-shortcode,
.fss-video-cat-shortcode{
    cursor: pointer;
    position: relative;
}

.fss-video-shortcode .mfp-video-link i,
.fss-resource.video .bg-image i{
    font-size: 36px;
    color:#fff;
    opacity: 0.9;
    -webkit-transition: opacity 0.15s ease-out;
    -moz-transition: opacity 0.15s ease-out;
    transition: opacity 0.15s ease-out;
}

.fss-resource.video .bg-image:hover i{
    opacity: 0.5;
}

.fss-video-shortcode .mfp-video-link,
.fss-resource.video .bg-image{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-repeat: no-repeat;
    background-position: center center!important;
    text-decoration: none!important;
    cursor: pointer;
}

.fss-resource.video .bg-image{
    background-size: cover!important;
}

.fss-video-shortcode .mfp-video-link{
    width: 100%;
    /*max-width: 200px;*/
    margin: auto;
    position: relative;
}

.fss-video-shortcode .fss-overlay,
.fss-video-cat-shortcode .fss-overlay{
    background-color: rgba(0,0,0,0.25);
    position: absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    -webkit-transition: opacity 250ms linear;
    -moz-transition: opacity 250ms linear;
    -o-transition: opacity 250ms linear;
    -ms-transition: opacity 250ms linear;
    transition: opacity 250ms linear; 
    opacity: 1;
    z-index: 1;
}

.fss-video-cat-shortcode .fss-link-overlay{
    position: absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-size: cover!important;
    background-position: center center!important;
    z-index: 10;
}


.fss-video-cat-shortcode .fss-overlay{
    background-color: rgba(0,0,0,0.5);
}

.fss-video-shortcode .preview-gif,
.fss-video-cat-shortcode .preview-gif{
    position: absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-size: cover!important;
    background-position: center center!important;
    z-index: 0;
}

.fss-video-cat-shortcode .box{
    background-size: cover!important;
    background-position: center center!important;
}

/*.fss-video-cat-shortcode .fss-overlay:hover,*/
.fss-video-shortcode .fss-overlay:hover{
    opacity: 0;
}

.fss-video-cat-shortcode {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.fss-video-cat-shortcode .title{
    position: relative;
    z-index: 2;
    font-size :2em;
}


/*Resources*/

.fss-resource span.date{
    display: block;
    text-align: center;
}

.fss-resource .button-wrapper {
    text-align: center;
}

.fss-resource.pdf .bg-image,
.fss-resource.excel .bg-image,
.fss-resource.word .bg-image {
    background-position: top center!important;
}

.fss-resources.list .fss-resource {
    width: 100%!important;
}

span.category {
    display: block;
    text-align: center;
    font-size: 1.25em;
    text-transform: uppercase;
}

.fss-resources.list .inner {
    display: flex;
}

.fss-resources.list .bg-image {
    width: 200px;
    min-width: 200px;
}

.fss-resources.list .resource-type{
    display: none;
}

.ui-widget-overlay {
    opacity: 0.5;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: black;
}

.ui-dialog.ui-widget.ui-widget-content {
    background-color: #fff;
    z-index: 1;
    position: relative;
    padding: 15px;
}

.mfp-container:before{
    height:20%;
}

.mfp-content{
  position: relative;
  display: flex;
  justify-content: center;
  width:90%;
  margin: 20px auto;
}

.mfp-modal {
    position: relative;
    margin: auto;
}

.mfp-modal.small{
    max-width: 450px;
}

.mfp-modal.medium {
    max-width: 980px;
}

.mfp-modal.large{
    max-width: 1200px;
}

#wpnb-bar .wpnbio-section {
    padding: 0 30px!important;
}

div#wpnbio-close:before{
    content: "\f00d"!important;
    font-family:"Font Awesome 5 Free"!important;
    font-weight: 900;
}

div#wpnbio-show:before{
    content: "\f062"!important;
    font-family:"Font Awesome 5 Free"!important;
    font-weight: 900;
}

#wpnbio-close img,
#wpnbio-show img{
    display: none!important;
}

html body div.mfp-wrap .mfp-close{
    background:transparent!important;
}

html body div.mfp-wrap div.mfp-container div.mfp-content button.mfp-close, 
html body div.mfp-wrap button.mfp-close:active, 
html body div.mfp-wrap button.mfp-close:hover, 
html body div.mfp-wrap button.mfp-close:focus {
    font-size: 32px;
    color: #333;
    background: #fff!important;
    border-radius: 50%;
    overflow: hidden;
    text-align: center;
    line-height: 30px!important;
    height: 30px!important;
    padding: 0!important;
    vertical-align: middle!important;
    width: 30px;
    top: -10px!important;
    right: -10px!important;
}


ul.fss-social-links-shortcode{
    list-style: none;
}

ul.fss-social-links-shortcode.center {
    padding-left: 0;
}

.fl-row.fl-row-full-width {
    margin-top: -1px;
    margin-bottom: -1px!important;
}

.fss-floating-social-icons {
    position: fixed;
    top: 30%;
    left: 0;
    z-index: 100;
}

.fss-floating-social-icons ul{
    list-style: none;
    padding-left:0;
}

.fss-floating-social-icons i.fab.fa-stack-1x:hover {
    width: 120%;
}

.fss-floating-social-icons .fa-stack-1x{
    color: #fff;
}

i.fa.fa-facebook.fa-stack-1x, 
i.fab.fa-facebook-f.fa-stack-1x {
    background-color: #4469B0;
}

i.fa.fa-twitter.fa-stack-1x, 
i.fab.fa-twitter.fa-stack-1x {
    background-color: #2696DD;
}

i.fa.fa-medium.fa-stack-1x,
i.fab.fa-medium-m.fa-stack-1x {
    background-color: #000000;
}
i.fa.fa-youtube.fa-stack-1x,
i.fab.fa-youtube.fa-stack-1x {
    background-color: #FF0100;
}

i.fa.fa-instagram.fa-stack-1x,
i.fab.fa-instagram.fa-stack-1x {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffe64a+0,e82840+50,682acc+100 */
    background: #ffe64a; /* Old browsers */
    background: -moz-linear-gradient(45deg,  #ffe64a 0%, #e82840 50%, #682acc 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(45deg,  #ffe64a 0%,#e82840 50%,#682acc 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(45deg,  #ffe64a 0%,#e82840 50%,#682acc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffe64a', endColorstr='#682acc',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.fss-simple-social-share .pinit-btn-div{
    position: relative;
}
.fss-simple-social-share .pinit-btn-div span{
    opacity: 0;
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
}


ul.fss-social-links-shortcode.left{
    padding-left:0;
}

/*events shortcode*/

.events-shortcode .event{
    margin-bottom: 15px;
    margin-top: 15px;
}

.events-shortcode.events-grid .bg-image {
    min-height: 150px!important;
    display: block;
    background-size: cover;
    background-position: center center;
}

.events-shortcode.events-list .inner,
.events-shortcode.events-grid .inner{
    background: #ffffff;
    box-shadow: 10px 10px 15px rgba(0,0,0,0.125);
}

.events-shortcode .content, 
.events-shortcode .button-wrapper {
    padding: 1px 15px;
}

.events-shortcode.events-list .inner{
    position: relative;
    margin-top:25px;
}

.events-shortcode.events-list .bg-image {
    display: block;
    background-position: center;
    background-size: cover;
}

/* overlay at start */
.mfp-fade.mfp-bg {
  opacity: 0;

  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}
/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}
/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;

  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}
/* content animate it */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}
/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

.pp-logos-content .pp-logos-wrapper .pp-logo {
    text-align: center!important;
    width: 50%;
}

.pp-logos-content .pp-logos-wrapper .pp-logo img{
    max-width: 70%;
    max-height: 60px;
    display: inline-block;
    vertical-align: middle;
}

.fl-col.oval-heading {
    border-radius: 50%;
    overflow: hidden;
}

/*modals*/

.mfp-container.mfp-image-holder.mfp-s-ready {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.fss-modal#event_modal{
    position: relative;
    background-color: rgba(0,0,0,0.25);
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0px;
    right: 0;
    z-index: 999999999;
}

.fss-modal{
    position: relative;
    background-color: transparent;
    /*display: none;*/
    /*position: fixed;
    top: 0;
    left: 0;
    bottom: 0px;
    right: 0;*/
    /*z-index: 999999999;*/
}

.fss-modal.small .modal-wrapper{
    width:50%;
    max-width: 480px;
    margin:auto;
}

.fss-modal .modal-wrapper,
.fss-modal.medium .modal-wrapper{
    width:75%;
    max-width: 1200px;
    margin:auto;
}

.fss-modal.large .modal-wrapper{
    width:90%;
    max-width: 992px;
    margin:auto;
}

.fss-modal .modal-wrapper .modal-close{
    position: absolute;
    right:15px;
    top:15px;
    cursor: pointer;
    font-size: 2em;
}

.fss-modal .modal-wrapper{
    position: fixed;
    display: flex;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*width: 90%;*/
    min-height: 550px;
    max-height: 550px;
    overflow-y:scroll;
    padding:30px;
    background-color: #fff;
}

.fss-modal .modal-image,
.fss-modal .modal-content{
    flex-grow: 1;
    min-width: 100%
}

.fss-modal .modal-image{
    background-size: cover;
    background-position: center center;
}

.fss-modal .fss-modal-header ,
.fss-modal .fss-modal-content{
    padding:10px 20px;
}

.fss-modal .fss-modal-header {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}

.fss-modal .fss-modal-header .title{
    text-align: center;
}

/*resources*/

.fss-heading.center{
    text-align: center;
}

.fss-resource {
    margin-bottom: 15px;
    margin-top: 15px;
}

.fss-resource .inner {
    background: #fff;
    box-shadow: rgba(0,0,0,0.125) 3px 3px 10px;
}

.fss-resource .inner .content{
    padding: 0 15px 15px;
}

.fss-resource .resource-type{
    padding: 15px 0 0;
}

.fss-resource .bg-image {
    display: block;
    min-height: 150px;
    background-size: cover!important;
    background-position: center center!important;
}

.fss-resource .resource-type{
    font-size: 1.2em;
    text-align: center;
}

.fss-resource .resource-type i{
    /*font-size: 1.7em;*/
    vertical-align: middle;
}
.fss-resource iframe {
    min-width: 100%;
}

/*resource filters*/
.fss-resource-filters {
    text-align: center;
    margin-bottom: 16px;
}

ul.fss-resource-filters li{
    list-style: none;
    display: inline-block;
    cursor: pointer;
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
    padding-left: 20px;
    margin-right: 16px;
    margin-bottom: 8px;
}

ul.fss-resource-filters li:hover{
    opacity: 0.9;
}

/*phones only*/
@media screen and (max-width: 480px){
    .fss-modal .modal-image {
        min-height: 250px;
    }
}

/*tablets and phones only*/
@media screen and (max-width: 768px){


    .fss-modal .modal-wrapper{
        flex-direction: column;
    }

    li.hide-heading > div > a, li.hide-heading > div > .fl-menu-toggle {
        display: none;
    }
    li.hide-heading .sub-menu{
        display:block!important;
    }

    ul.sub-menu {
        padding-left: 10px;
    }

    .fss-modal .modal-wrapper .modal-close {
        right: 5px;
        top: 5px;
    }

    .hero-video, 
    .hero-video .fl-bg-video, 
    .hero-video .fl-row-content-wrap{
        min-height:700px;
    }

    .position-absolute.mobile-top{
        bottom:unset!important;
        top:15px!important;
    }
}

/*above tablet*/
@media (min-width: 480px){

    .events-shortcode.events-list .bg-image {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 50%;
        bottom: 0;
    }

    .events-shortcode.events-list .event.has-image .content,
    .events-shortcode.events-list .event.has-image .button-wrapper {
        margin-left: 50%;
    }

}

/*above tablet*/
@media screen and (min-width: 768px){

    .fss-video-shortcode .mfp-video-link{
        min-height: 150px;
    }

    .fss-grid-item.team{
        /*display: flex;*/
    }
    .fss-grid-item.team .image{
        width: 33%;
        margin: 0.9%;
        float:left;
        margin-right: 25px;
    }

    .fss-grid-item.team .content{
        /*width:66%;*/
    }

    .events-shortcode.events-list .bg-image {
        right: 75%;
    }

    .events-shortcode.events-list .event.has-image .content,
    .events-shortcode.events-list .event.has-image .button-wrapper {
        margin-left: 25%;
    }

    .pp-logos-content .pp-logos-wrapper .pp-logo {
        clear: none!important;
        margin:0!important;
        width: 20%;
    }

    .fss-modal .modal-image,
    .fss-modal .modal-content{
        flex-grow: 1;
        min-width: 50%
    }

    .fss-modal .modal-content {
        padding-left: 25px;
    }

}

.nf-field-container.checkbox-container.label-right .field-wrap{
    flex-direction: column;
}

/*Ninja forms width delimiters*/
@media (min-width: 768px){

    .nf-field-container.half {
        width: 49%;
        display: inline-block;
        margin-right: 1%;
    }

    .nf-field-container.third {
        width: 32%;
        display: inline-block;
        margin-right: 1%;
    }

    .nf-field-container.quarter {
        width: 24%;
        display: inline-block;
        margin-right: 0.5%;
    }

    .nf-field-container.three-quarter {
        width: 74%;
        display: inline-block;
        margin-right: 1%;
    }

    .nf-field-container.twp-third {
        width: 65%;
        display: inline-block;
        margin-right: 1%;
    }

    .nf-field-container.right {
        float: right;
        margin-right: 0;
    }

    .nf-after-field {
        float: left;
    }
}/*end @media min 768*/