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

/*************** ADD CUSTOM CSS HERE.   ***************/

/* Typography */

@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,400i,600,600i,700,700i,800");
html {
    background-color: #f2f2f2;
}

[data-animate] {
    transition: filter .6s, transform .9s, opacity 0.75s ease-in, -webkit-filter .6s, -webkit-transform .8s!important;
}

.mfp-wrap {
    background-color: rgba(54,0,0,0.64);
}

body {
    box-shadow: 0px 0px 32px rgba(0,0,0,0.125);
}

a {
    color: #D75F5F;
}

h1, .h1 {
    font-size: 2.25em;
}

h2, .h2{
    font-size: 1.875em;
}

h3, .h3 {
    font-size: 1.5em;
}

h4, .h4 {
    font-size: 1.125em;
}

p.lead {
    font-size: 1.125em;
}

p a:hover {
    text-decoration: underline;
    color: #F34C4C;
}

.services .subheading {
    color: #D75F5F;
}
.subheading {
    font-style: italic;
    color: #D75F5F;
    letter-spacing: 4px;
    font-weight: 700;
    font-size: 1.5em;
    padding-bottom: .5em;
    border-bottom: 2px solid #D75F5F;
    max-width: 220px;
    margin: 0 auto 1em;
}

/* Buttons */
a.button {
    font-size: 1.125em;
    font-style: italic;
    font-weight: 700;
    letter-spacing: 0;
    border:0;

}

a.button span {

}

a.btn-primary:hover {
    box-shadow: -4px 4px 0 0 rgba(0,0,0,0.15);
    background-color: #F34C4C!important;
}

a.btn-secondary {
    color: #8B8989!important;
    background-color: #F4F2F0!important;
}

a.btn-secondary:hover {
    box-shadow: -4px 4px 0 0 rgba(0,0,0,0.15);
    color: #F34C4C;
}


/* Tabs */
.mfp-bg {
    background-color: #1C2E3E!important;
}

.mfp-close {
    color: white!important;
}

.off-canvas .nav>li>a {
    color: #D75F5F;
    font-style: italic;
}
.nav .tab {
    margin-right: 0.25em;
}
.nav .tab a {
    border-radius: 0;
    font-size: 1.125em;
    padding: 0.1em 2em;
    font-style: italic;
    font-weight: 700!important;

    background-color: #F4F2F0!important;

}

.nav .tab.active a {
    background-color: #D75F5F!important;
    padding: 0.25em 2em;
}

.nav .tab a:hover {
    color: #F34C4C!important;
}

.nav .tab.active a:hover {
    color:white!important;
}


.nav .tab a span {

}

#menu-item-9 {
    border: 2px solid white;
    transition: all .3s;
        -webkit-transition: all .3s;
        -moz-transition: all .3s;
        -ms-transition: all .3s;
        -o-transition: all .3s;
}

.nav-sidebar .menu-main-cta {
    border: 2px solid #D75F5F!important;
    max-width: 14em!important;
    color: #D75F5F!Important;


}

.nav-sidebar .menu-main-cta a {

}

.nav-sidebar .menu-visit-ext-btn {
    margin-top: 1em;
    font-size: 0.75em;
}

#menu-item-9:hover {
    border: 2px solid #F34C4C;
}



@media screen and (max-width: 849px) {
    
    ul.mobile-nav.nav-right {
        transform: scale(1.75);
        transform-origin: right;
        margin-top: .5em;
        position: fixed;
        top: 1em;
        right: 1em;
    }
    
    ul.mobile-nav.nav-right .button {
        border-radius: 0!important;
        box-shadow: -4px 4px 0 0 rgba(0,0,0,0.15);
    }
    header {
        margin-top: 1em;
    }
}
@media only screen and (max-width: 48em) {
    /*************** ADD MOBILE ONLY CSS HERE  ***************/
    
    
    .nav .tab.active a {
        background-color: #D75F5F!important;
        padding: 0.25em 2em;
    }
    
    #logo {
    }
    
    section.buehne .divider {
        height: 70px!important;
        margin-left: 1em;
    }
    
    
    
    .tabbed-content .row .col {
        padding-bottom: 0!important;
    }
    
    }
@media screen and (max-width: 450px) {
    .section {
        padding: 50px 0!important;
    }

    .footer {
        text-align: center;
    }

    .footer .widget-text {
        text-align: center!important;
    }

    .lightbox-content h3 {
        line-height: 133%;
    }

    .mfp-container {
        padding:15px;
    }
    p.intro-text-large {
        font-size: 1.5em!important;
        text-align: center!important;
        margin-top: 5em;
    }
    section.buehne h1 {
        font-size:1em!important;
        padding-left: 1em;
        text-align: center;
    }

}

@media screen and (max-width: 350px) {
    .buehne-divider {
        display:none;
    }

    .off-canvas .sidebar-menu {
        padding:0!important;
    }

    p.intro-text-large {
        font-size: 1.25em!important;
        text-align: center!important;
        margin-top: 2em!important;
        margin-bottom: 0!important;
    }

    section.buehne h1 {
        padding:0!important;
        text-align:center!important;
    }

    .team .person-description p {
        font-size:0.9em;
    }
}
@media screen and (min-width: 850px) {
    .header-inner .flex-col.sticky {
        display:block!important;
        transition: all .3s;
    }

    .header-inner .flex-col.sticky .nav-icon {
        position: fixed;
        margin-top:1em;
        transform: scale(1.75);
        transform-origin: right;
    }

    .header-inner .flex-col.sticky .nav-icon a {
        border-radius: 0;
        box-shadow: -4px 4px 0 0 rgba(0,0,0,0.15);
    }

}

@media screen and (min-width: 480px) {
    .medium-text-center .pull-left {
        float:left;
    }

    .medium-text-center .pull-right {
        float:right;
    }
}

/* Header */
#masthead .header-inner {
    align-items: flex-start;
}

#top-bar {
    margin-bottom: 1.5em;
}

.header-nav-main .menu-item {
    margin: 0 .5em;
    padding: 0.2em 1em;

    
}

.header-nav-main .menu-item:hover {
    background-color: #F34C4C!important;
    box-shadow: -4px 4px 0 0 rgba(0,0,0,0.15);
    transition: all .3s;
        -webkit-transition: all .3s;
        -moz-transition: all .3s;
        -ms-transition: all .3s;
        -o-transition: all .3s;
}

.header-nav-main .menu-item a {
    font-style: italic;
    font-weight: 600;
    color: white!important;
    font-size: 1.125em;

}

ul#top-links {
    list-style: none;
}

ul#top-links li a {
    background-color: rgba(0,0,0,0.25);
    color: white;
    display: block;
    font-style: italic;
    font-weight: 600;
    color: white!important;
    font-size: 1em;
    padding: 0.5em 1em;

}

ul#top-links li a span {
    display: block;

}


/* Buehne */

section.buehne {
    padding-top: 25%!important;
    padding-bottom: 5%!important;
    overflow: hidden;
}

.section.buehne .bg-fill {
    animation: kenburns 50s linear;
    -ms-animation: kenburns 50s linear;
    -webkit-animation: kenburns 50s linear;
    -moz-animation: kenburns 50s linear;
    animation-iteration-count: infinite;
}

@-webkit-keyframes kenburns {
    0% {
      -webkit-transform-origin: bottom left;
      -moz-transform-origin: bottom left;
      -ms-transform-origin: bottom left;
      -o-transform-origin: bottom left;
      transform-origin: bottom left;
      transform: scale(1.0);
      -ms-transform: scale(1.0);
      /* IE 9 */
      
      -webkit-transform: scale(1.0);
      /* Safari and Chrome */
      
      -o-transform: scale(1.0);
      /* Opera */
      
      -moz-transform: scale(1.0);
      /* Firefox */
    }
    50% {
      transform: scale(1.2);
      -ms-transform: scale(1.2);
      /* IE 9 */
      
      -webkit-transform: scale(1.2);
      /* Safari and Chrome */
      
      -o-transform: scale(1.2);
      /* Opera */
      
      -moz-transform: scale(1.2);
      /* Firefox */
    }
    100% {
        -webkit-transform-origin: bottom left;
        -moz-transform-origin: bottom left;
        -ms-transform-origin: bottom left;
        -o-transform-origin: bottom left;
        transform-origin: bottom left;
        transform: scale(1.0);
        -ms-transform: scale(1.0);
        /* IE 9 */
        
        -webkit-transform: scale(1.0);
        /* Safari and Chrome */
        
        -o-transform: scale(1.0);
        /* Opera */
        
        -moz-transform: scale(1.0);
        /* Firefox */
      }
  }

section.buehne .divider {
    transform: skew(-12deg);
    -webkit-transform: skew(-12deg);
	   -moz-transform: skew(-12deg);
	     -o-transform: skew(-12deg);
}

section.buehne h1 {
    color: white;
    font-size: 1.125em;
    font-weight: 700;
}

p.intro-text-large {
    font-size: 1.875em;
    color: white;
    font-weight: 900;
    text-align: right;
    line-height: 1.33;
}

.scroll-for-more {
    background-color: #F4F2F0;
    opacity: 1!important;
    transform: skew(-12deg) translateX(-50%);
    -webkit-transform: skew(-12deg) translateX(-50%);
	   -moz-transform: skew(-12deg) translateX(-50%);
	     -o-transform: skew(-12deg) translateX(-50%);
}

.scroll-for-more i {
    color: #D75F5F;
    transform: skew(12deg);
    -webkit-transform: skew(12deg);
	   -moz-transform: skew(12deg);
	     -o-transform: skew(12deg);

}

/* Slider */
.slider .flickity-page-dots {
    bottom: -35px;
    left:0;
    right:0;
}

.slider .flickity-page-dots .dot {
    background-color: #D75F5F;
    border: 0;
    opacity: 1;
    width:8px;
    height:8px;
}

.slider .flickity-page-dots .dot.is-selected {
    background-color: #F34C4C;
    transform: scale(1.5);
    margin: 0 .4em;
}

.flickity-prev-next-button {
    background: #D75F5F;
    width: 72px;
    height: 72px;
    opacity: 1!important;
}

.flickity-prev-next-button.previous {
    left:0;
    -webkit-clip-path: polygon(0 0, 100% 0, 78% 100%, 0% 100%);
    clip-path: polygon(0 0, 100% 0, 78% 100%, 0% 100%);
}

.flickity-prev-next-button.next {
    right:0;
    -webkit-clip-path: polygon(12% 0, 100% 0, 100% 100%, 0% 100%);
    clip-path: polygon(12% 0, 100% 0, 100% 100%, 0% 100%);
}

.flickity-prev-next-button svg {
    max-width: 75%;
    fill:white;
}

.flickity-prev-next-button:hover, .flickity-prev-next-button:hover {
    background: #F34C4C;
    box-shadow: -4px 4px 0 0 rgba(0,0,0,0.15)!important;
}


.flickity-prev-next-button:hover svg, .flickity-prev-next-button:hover .arrow {
    fill: white!important;
}

.locations .nav-pills {
    min-height: 63px;
}

.locations .img .caption {
    padding:1em!important;
    
}

/* Services */
.services ul li.bullet-checkmark {
    border:0;
    font-style: italic;
    font-weight: 700;
    font-size: 1.125em;
    margin-bottom: .75em;
    padding-left:32px;
}

.services ul li.bullet-checkmark:before {
    color: #D75F5F;
    font-size: 18px;
}

/* Team */

.team-member-name {
    background-color: #D75F5F;
    color: white;
    display: inline-block;
    padding: 1em 2em 1em 2em;
    width: 85%;
    margin-left: -24px;
    margin-top: -48px;
    margin-bottom: 1em;

    -webkit-clip-path: polygon(0 1%, 100% 0, 92% 100%, 0% 100%);
    clip-path: polygon(0 1%, 100% 0, 92% 100%, 0% 100%);
}

.team-member-name h3 {
    color: white;
}

.team .person-description p {
    margin:0;
}

.team .person-description a {
    font-weight: 400;
    text-align: center;
    font-style: normal;
    margin-bottom: 0;
    padding-top: 1em;
    border-top: 1px solid #D75F5F;
    display: block;
}

.team .person-description i {

}




/* Projects */

.show-more {
    display: none;
}

.portfolio-item .box img {
    -webkit-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
}

.portfolio-item .box:hover img {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}



/* Form */
form .button input {
    margin:0;
    border:0;
    background-color: transparent!important;
    box-shadow: none!important;
}

form .button input:hover {
    border:0!important;
    background-color: transparent!important;
    box-shadow: none!important;
}  

.wpcf7-mail-sent-ok {
    background: #398f14;
    color: white;
    text-align: center;
    padding: 1em!important;
}

.wpcf7-submit {
    text-transform: none!important;
}

.wpcf7 .wpcf7-not-valid-tip {
    display: none;
}


::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    font-weight: 400;
    font-size: 1.125em;
    color: #4E4E4E;
  }
  ::-moz-placeholder { /* Firefox 19+ */
    font-weight: 400;
    font-size: 1.125em;
    color: #4E4E4E;
  }
  :-ms-input-placeholder { /* IE 10+ */
    font-weight: 400;
    font-size: 1.125em;
    color: #4E4E4E;
  }
  :-moz-placeholder { /* Firefox 18- */
    font-weight: 400;
    font-size: 1.125em;
    color: #4E4E4E;
  }

.mfp-figure:after {
    background: white!important;
}


/* Footer */
.footer-1 {
    background-color: #322412!important;
    padding: 40px 0 40px
}

.footer-1 .row {
    align-items: flex-end;
}

#social-icons {
    margin-top: 1.5em;
}

#social-icons li {
    color:#D75F5F;
    display: inline;
    margin-right: 1em;
    font-size: 2em;
}

#custom_html-5 {
    text-align: right;
}

.footer-secondary {
    padding:0;
}

