/*!
 * Start Bootstrap - Full Width Pics (https://startbootstrap.com/template-overviews/full-width-pics)
 * Copyright 2013-2017 Start Bootstrap
 * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-full-width-pics/blob/master/LICENSE)
 */
@font-face {
    font-family: 'DIN-Bold';
    src: url('../fonts/DIN-Bold.ttf');
    src: url('../fonts/DIN-Bold.eot');
    src: url('../fonts/DIN-Bold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/DIN-Bold.woff') format('woff'),
         url('../fonts/DIN-Bold.svg#DIN-Bold') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'DIN-Medium';
    src: url('../fonts/DINRegular.ttf');
    src: url('../fonts/DINRegular.eot');
    src: url('../fonts/DINRegular.eot?#iefix') format('embedded-opentype'),
         url('../fonts/DINRegular.woff') format('woff'),
         url('../fonts/DINRegular.svg#DINRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'HelveticaNeue';
    src: url('../fonts/HelveticaNeue.eot');
    src: url('../fonts/HelveticaNeue.eot?#iefix') format('embedded-opentype'),
         url('../fonts/HelveticaNeue.woff') format('woff'),
         url('../fonts/HelveticaNeueu.svg#HelveticaNeue') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'HelveticaNeue-Bold';
    src: url('../fonts/Helvetica-Bold.eot');
    src: url('../fonts/Helvetica-Bold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Helvetica-Bold.woff') format('woff'),
         url('../fonts/Helvetica-Bold.svg#HelveticaNeue-Bold') format('svg');
    font-weight: normal;
    font-style: normal;
}
body {
  font-family: 'HelveticaNeue', 'sans-serif';
    font-size: 14px;
    overflow-x: hidden;
}
@media only screen and (min-width: 700px) and (max-width: 1000px){
    body{
        padding-top: 170px;
    }
}
.container-fluid{
    /*padding-left: 0;
    padding-right: 0;*/
}
.img-responsive{
    max-width: 100%;
}

.sections{
    padding-top: 80px;
    padding-bottom: 150px;
}

.bold{
    font-family: 'HelveticaNeue-Bold';
}
h1, h2, h3, h4{
    font-family: 'DIN-Bold';
    display: inline-block;
    line-height: 1em;
}

h1{
    font-size: 35px;
    color: white;
}

h2{
    font-size: 2.57em;
    color: #093c62;
}

.content-header p{
    margin: 0;
    padding: 0;
    font-size: 35px;
    font-family: 'DIN-Bold';
    color: white;
}

.mac-p{
    /*padding-top: 20px !important;*/
}

.mac-button{
    /*padding-top: 16px !important;*/
}

@media only screen and (max-width: 900px){
    h2{
        font-size: 2em;
    }
}

h4{
    font-size: 1.29em;
    color: #00a996;
}
.default-link{
   font-family: 'HelveticaNeue-Bold';
    color: #093c62;
    font-size: 14px;
}

.default-link:hover{
    text-decoration: underline;
    color: #093c62;
}

.privacy-link{
    color: #00a996;
}
.privacy-link:hover{
    color: #00a996;
    text-decoration: underline;
}
.bg-dark {
    background-color: #000!important;
}

.button{
    font-family: 'DIN-Bold';
    font-size: 14px;
    padding: 10px 30px;
    cursor: pointer;
    display: inline-block;
    line-height: 1px;
}

@media only screen and (max-width: 900px){
    .button{
        padding: 10px;
    }
}

.button:hover, .button:focus{
    text-decoration: none;
}

.button .zmdi, .default-link .zmdi{
    margin-right: 10px;
}

.btn-primary{
    background-color: #00a996;
    color: white;
    outline: 0;
}

.btn-primary:hover, .btn-primary:focus{
    background-color: #029585;
    outline: 0;
}

.btn-secondary, .btn-secondary:not(:disabled):not(.disabled).active, .btn-secondary:not(:disabled):not(.disabled):active{
    color: white;
    background: transparent;
    border: solid 1px white;
    outline: 0;
}

.btn-secondary:hover{
    color: #093c62;
    background-color: white;
    outline: 0;
}

.btn-tertiary, .btn-tertiary:not(:disabled):not(.disabled).active, .btn-tertiary:not(:disabled):not(.disabled):active{
    color: #093c62;
    background: transparent;
    border: solid 1px #093c62;
    outline: 0;
}

.btn-tertiary:hover{
    color: white;
    background-color: #093c62;
    outline: 0;
}

.btn-black, .btn-black:not(:disabled):not(.disabled).active, .btn-black:not(:disabled):not(.disabled):active{
    color: #000;
    background: transparent;
    border: solid 1px #000;
    outline: 0;
}

.btn-black:hover{
    color: white;
    background-color: #000;
    outline: 0;
}
.arrow-left-default:before{
    content: "";
    width: 13px;
    height: 11px;
    background: url(../images/arrow-left.png) no-repeat center;
    display: inline-block;
    margin-right: 15px;
}
.arrow-left-white:before{
    content: "";
    width: 13px;
    height: 11px;
    background: url(../images/arrow-left-white.png) no-repeat center;
    display: inline-block;
    margin-right: 15px;
}
.arrow-right-white:after, .banner-arrow-right-white:after{
    content: "";
    width: 13px;
    height: 11px;
    background: url(../images/arrow-right-white.png) no-repeat center;
    display: inline-block;
    margin-left: 15px;
}
.arrow-right-default:after{
    content: "";
    width: 13px;
    height: 11px;
    background: url(../images/arrow-right.png) no-repeat center;
    display: inline-block;
    margin-left: 15px;
}
.subtitle{
    font-size: 1.29em;
}

.img-responsive.hidden-sm-md{
    width: 100%;
}

.hidden-xs{
    display: block;
}

@media only screen and (max-width: 767px){
    .hidden-xs{
        display: none;
    }
    .hidden-sm-md{
        display: block;
    }
    .subtitle, .mobile-left{
        text-align: justify !important;
    }
    body{
        padding-top: 120px;
    }
}

.hidden-sm-xs{
    display: block;
}
@media only screen and (max-width: 1024px){
    .hidden-sm-xs{
        display: none;
    }
}

.hidden-md, .display-sm{
    display: none;
}

@media only screen and (max-width: 1024px){
    .hidden-md{
        display: block;
    }
}
@media only screen and (min-width: 900px) and (max-width: 1023px){
    .display-sm{
        display: block;
    }
    
}
@media only screen and (min-width: 900px){
    .hidden-sm-md{
        display: none;
    }
    
}

.content-header{
    background: url("../images/content-header-background.jpg") no-repeat;
    background-size: cover;
    background-position: top center;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 15px;
}

.list-style{
    padding-left: 15px;
}

/*Nav*/
.navbar{
    padding-top: 30px;
    padding-bottom: 30px;
}
.navbar-light .navbar-nav .nav-link, .navbar-nav .nav-link:focus{
    font-family: 'DIN-Medium';
    font-size: 1.14em;
    color: black;
}

.nav-item{
    margin-left: 25px;
}

.navbar-light .nav-link .nav-link:hover, .navbar-light .nav-item.active .nav-link, .navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link{
    color: #00a996;
}

.dropdown-menu{
    border: 0;
    border-radius: 0;
    padding: 0;
}

.dropdown-item.active, .dropdown-item:active{
    background-color: #00a996;
}

@media (max-width: 900px){
    .dropdown-item.active, .dropdown-item:active{
        background-color: #fff;
        color: #00a996;
    }
    .navbar-collapse {
        position: fixed;
        width: 0;
        height: 100%;
        top: 0;
        right: 0;
        overflow-y: scroll;
        z-index: 100;
        box-shadow: 10px 0 10px -10px #000;
        overflow: hidden;
        background: white;
    }
    .navbar-nav{
        margin-top: 20px;
    }
    .dropdown-item{
        padding-left: 0;
        font-size: 0.85em;
    }
    .navbar{
        position: fixed;
        z-index: 80;
        top: 0;
        width: 100%;
    }
    
    .navbar-nav .dropdown-menu{
        margin-bottom: 15px;
    }
}

.mobile-footer{
    position: absolute;
    bottom: 20px;
    left: 0;
}

.mobile-footer .footer-link, .mobile-footer .footer-link-divider{
    color: black;
}

.content-overlay{
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: fixed;
    background-color: black;
    opacity: 0.8;
    z-index: 80;
    display: none;
}

/*Home*/
.bg-image-full {
  background: no-repeat center center scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
  -o-background-size: cover;
    height: 750px;
}

.banner-copy{
    font-family: 'DIN-Bold';
    font-size: 4em;
    color: white;
    margin-top: 200px;
}
.banner-copy .button{
    padding: 20px 40px;
}

.navbar-brand{
    width: 25%;
}

@media only screen and (max-width: 900px){
    .banner-copy{
        font-size: 2em;
        margin-top: 80px;
        line-height: 3rem;
    }
    .bg-image-full{
        height: 500px;
    }
    .navbar-brand{
        width: 60%;
    }
    
    .mobile-center{
        text-align: center;
    }
}

.about-tlc{
    background: url(../images/tlc-section-about-background.png) no-repeat top left;
    background-size: cover;
}

@media only screen and (max-width: 900px){
    .about-tlc .col-md-4{
        margin-bottom: 20px;
    }   
}

.services-tlc{
    background: url(../images/tlc-section-services-background.jpg) no-repeat top left;
    background-size: cover;
}

.services-tlc .col-3{
    display: flex;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    align-items: center;
}

.services-tlc .img-responsive{
    width: 100%;
}

.services-tlc .mac-link{
    display: inline-block;
    padding-top: 10px;
    line-height: 1em !important;
}

body .services-tlc .color-link.mac-link:hover{
    border-bottom: 1px solid #2fb9a9; 
    text-decoration: none !important;
}

.border-box{
    border: solid 2px #029585;
    padding: 20px 25px;
    width: 85%;
    float: right;
}

.border-box p, .green-box p{
    font-size: 18px;
}

.section-about-image{
    float: right;
    margin-top: 116px;
}

.green-box{
    padding: 40px 25px 80px 25px;
    width: 85%;
    background-color: #029585;
    color: white;
}

@media only screen and (max-width: 900px){
    .about-tlc .pr-0{
        padding-right: 15px !important;
    }
    .about-tlc .pl-0{
        padding-left: 15px !important;
    }
    .section-about-image{
        float: none;
        width: 100%;
        margin-top: 10px;
    }
    .border-box, .green-box{
        float: none; 
        width: 100%;
    }
}

.services-tlc{
    color: white;
}
.services-tlc .color-link{
    text-decoration: none;
    line-height: 1.5em;
    font-family: 'DIN-Bold';
    font-size: 1.29em;
}

.services-tlc .color-link:hover{
    text-decoration: underline !important;
}

.careers-tlc{
    background: #f4f4f4;
}

@media only screen and (max-width: 900px){
    .careers-tlc img{
        margin-bottom: 10px;
    } 
}

.contact-tlc h4{
    margin-bottom: 0;
}

.footer-menu{margin-top: 80px;}

.footer-link{
    font-weight: bold;
    color: white;
}
.footer-link:hover{
    color: white;
    text-decoration: underline;
}
.footer-link-divider{
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px;
    color: white;
}

.footer-menu{
    background-color: #ebebeb;
}

.footer-menu h4{
    color: #000;
}

.footer-menu p{
    font-size: 12px;
}

.footer-menu a{
    color: #000;
    margin-bottom: 10px;
    display: block;
    font-size: 12px;
}

.footer-menu .col-md-4 a{
	float: left;
}

.footer-menu a:hover{
    text-decoration: underline;
    color: #000;
}

.footer-menu .text-justify{
    width: 70%;
    padding-left: 15px;
    display: block;
    float: left;
    margin-top: 8px !important;
}

.footer-menu img{
    height: 70px;
	margin-bottom: 20px;
}

@media screen and (max-width: 900px){
    
    .footer-menu img{
        width: auto;
    }
    
    .footer-menu .col-md-3{
        margin-bottom: 30px;
    }
    
    footer .text-left, footer .text-right{
        text-align: center !important;
    }
    
    footer .text-right{
        margin-bottom: 20px;
    }
    
}

/* Careers */
.color-link{
    color: #2fb9a9;
    text-decoration: underline;
}
.color-link:hover{
    opacity: .85;
    color: #2fb9a9;
}
.position-title{
    font-size: 1.29em;
    font-family: 'DIN-Bold';
    color: #093c62;
}
.position{
    font-size: 1.29em;
    font-family: 'DIN-Bold';
    color: #00a996;
}
.tab {
    float: left;
    height: auto;
    width: 30%;
}

/* Style the buttons that are used to open the tab content */
.tab button {
    display: block;
    background-color: transparent;
    color: #2fb9a9;
    padding: 0 0 10px 0;
    width: 100%;
    border: none;
    outline: none;
    text-align: left;
    cursor: pointer;
    transition: 0.3s;
    font-family: 'DIN-Bold';
    font-size: 20px;
}
.tab button .zmdi-circle{
    margin-right: 10px;
    font-size: 0.8em;
}

/* Change background color of buttons on hover */
.tab button:hover {
    color: #000;
}

/* Create an active/current "tab button" class */
.tab button.active {
    color: #000;
}

/* Style the tab content */
.tabcontent {
    float: left;
    padding: 5px 0 0 0;
    width: 70%;
    height: auto;
    min-height: 500px;
    display: none;
}

.tabcontent .bold{
    color: #093c62;
}

@media only screen and (max-width: 900px){
    .tab, .tabcontent{width: 100%;}
    
    .tabcontent{
        min-height: 100px;
        margin-bottom: 30px;
    }
}

ol li{
    margin-bottom: 10px;
}

/*Contact*/
input[type="text"], textarea{
    border: solid 1px black;
    width: 100%;
    padding: 8px 15px;
}
form select{
    width: 100%;
    height: 40px;
    border: solid 1px black;
    padding-left: 15px;
    padding-right: 15px;
}
input[type="submit"]{
   line-height: 1em;
    height: 40px;
    -webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
form .col-4 p{
    margin-top: 8px;
}
form .col-8{
    margin-bottom: 25px;
}

form textarea{
    height: 150px;
}

/* Overlay */

.overlay{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: black;
	opacity: .8;
	display: none;	
}
.overlay-content{
	position: absolute;
	width: 650px;
	height: 230px;
	left: 50%;
	top: 50%;
	margin-top: -115px;
	margin-left: -325px;
	background-color: white;
	padding: 50px 25px;
	display: none;	
}
.close-overlay{
	width: 100px;
	display: block;
	margin: 30px auto 0 auto;
    padding: 20px 30px;
}
.close-overlay-mac{
    margin: 10px auto 0 auto;
    padding: 25px 30px 15px 30px;
}

#map{
    height: 400px;
    width: 100%;
}

button.button{
    padding: 20px 30px;
}

.back-to-top{
    width: auto;
    height: auto;
    background-color: #34393f;
    border-radius: 10px;
    color: white;
    font-weight: bold;
    padding: 0 25px;
    position: fixed;
    bottom: 55px;
    cursor: pointer;
    opacity: 1;
    font-size: 3em;
}
.back-to-top:hover{
    opacity: 1;
}
@media (max-width: 900px) {
.back-to-top{
    right: 25px;
    bottom: 15px;
    padding: 0 20px;
}
    
}
@media (min-width: 992px) {
.back-to-top{
   right: 80px;
    bottom: 40px;
}
}

@media (min-width: 1200px) {
.back-to-top{
   right: 100px;
    bottom: 46px;
}
    .banner-copy p{
    line-height: 5rem;
}
}
@media (min-width: 1800px) {
.back-to-top{
   right: 380px;
    bottom: 56px;
}
}

.service-page{
    background: #f4f4f4;
}

/* About Flip Box */
.front {
    background-color: #00a996;
    color: white;
    text-align: center;
    font-size: 25px;
    font-family: 'DIN-Bold';
}
.back {
    border: solid 1px #00a996;
    text-align: justify;
    padding-left: 20px;
    padding-right: 20px;
    background: url(../images/flip-box-bg.jpg) no-repeat center 100%;
}

.mac-front{
    /*font-family: inherit;*/
}

.mac-front p{
    /*line-height: 5rem;
    font-weight: bold;*/
}

@media screen and (max-width: 1023px){
    .front p{
        margin-bottom: 0;
    }
    .mac-front p{
        /*padding-top: 20px;*/
    }
    .back{
        padding-top: 30px;
        padding-bottom: 30px;
        margin-bottom: 40px;
    }
}
@media screen and (min-width: 1024px){
    .flip-container {
        perspective: 1000px;
         margin-top: 30px;
        margin-bottom: 80px;
    }
        /* flip the pane when hovered */
        .flip-container:hover .flipper, .flip-container.hover .flipper {
            transform: rotateY(180deg);
            -webkit-transform: rotateY(180deg);
            -moz-transform: rotateY(180deg);
        }

    .flip-container, .front, .back {
        width: 100%;
        height: 225px;
    }

    /* flip speed goes here */
    .flipper {
        transition: 0.6s;
        -webkit-transition:  0.6s;
	   -moz-transition:  0.6s;
		-ms-transition:  0.6s;
		 -o-transition:  0.6s;
        transform-style: preserve-3d;
        position: relative;
    }

    /* hide back of pane during swap */
    .front, .back {
        backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
	   -moz-backface-visibility: hidden;
        position: absolute;
        top: 0;
        left: 0;
        display: flex;
        display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
        align-items: center;
    }

    /* front pane, placed above back */
    .front {
        z-index: 2;
        /* for firefox 31 */
        transform: rotateY(0deg);
        -webkit-transform: rotateY(0deg);
            -moz-transform: rotateY(0deg);
    }

    .front p{
            text-align: center;
        display: block;
        width: 100%;
    }

    /* back, initially hidden pane */
    .back {
        transform: rotateY(180deg);
        -webkit-transform: rotateY(180deg);
            -moz-transform: rotateY(180deg);
    }
    .back p{
        font-size: 18px;
    }
}
   