/*------------------------------------*\
    BASIC
\*------------------------------------*/

h1, h2, h3, h4, h5 ,h6 {
	line-height: 1;
    font-weight: 900;
    margin-top: 0px; 
    letter-spacing: -0.5px;
}

.underline:after {
	content:'';
	display:block;
	height: 2px;
	width:100%;
	margin:10px auto;
	background:#222;
}

p {
	margin: 0;
}

div {
	display: block;
}

.float-L {
    float:left;
}

.gform_wrapper ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
/*------------------------------------*\
    FOUNDATION
\*------------------------------------*/

.row {
    max-width:1150px;
    width:100%;
    margin:0 auto;
}


/*------------------------------------*\
    BUTTONS
\*------------------------------------*/

.btn {
    display: inline-block;
    background: #222;
    padding: 15px;
    color: #fff;
    font-size: 20px;
    line-height: .8;
    text-align: center;
} 

.special-btn:before {
    content: '';
    position:absolute;
    display:block;
    right:-1px;
    top:0;
    height:48px;
    width:1px;
    background-color: #ecb106;
    opacity:0;
    z-index:10;
    -webkit-transition:0s ease-out;
    transition:0s ease-out;
    border-radius:2px;
}

.special-btn:hover:before {
    opacity:1;
    -webkit-transition:.4s ease-out;
    transition:.4s ease-out;
    -webkit-transition-delay:.2s;
            transition-delay:.2s;
}

.special-btn {
    width: 165px;
    height:50px;
    display: inline-block;
    background-color: transparent;
    border: 1px solid #FFF;
    padding: 10px;
    text-align: center;
    color: #fff;
    border-radius: 2px;
    font-size: 20px;
    letter-spacing: 1px;
    position:relative;
}


.special-btn:after {
    content: '';
    left: -1px;
    top: -1px;
    position: absolute;
    height: 50px;
    width: 0;
    background-color: transparent;
    z-index: 1;
    border-top: 1px solid #ecb106;
    border-bottom: 1px solid #ecb106;
    border-left:1px solid #ecb106;
    overflow: hidden;
    opacity: 0;
    border-radius:2px;
    /*transition: .3s ease-in-out;*/
    -webkit-transition: all .4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
    transition:         all .4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}

.special-btn:hover:after {
    width:101.5%;
    opacity:1;
}

.special-btn span {
    overflow: hidden;
    position:relative;
}

.special-btn span:after {
    top: -2px;
    left: 0;
    width: 0;
    color: #ecb106;
    white-space:nowrap;
    overflow: hidden;
    position: absolute;
    content: attr(data-text);
    /*transition:.3s ease-in-out;*/
    -webkit-transition: all .4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
    transition:         all .4s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}

.special-btn:hover span:after {
    width:100%;
}

.fill {
    position: relative;
  height: 45px;
  outline: 0;
  overflow:hidden;
  background: #222;
  z-index: 1;
  transition:         .3s ease-in;
  -o-transition:      .3s ease-in;
  -ms-transition:     .3s ease-in;
  -moz-transition:    .3s ease-in;
  -webkit-transition: .3s ease-in;
}

.fill:hover {
  color: #222;
}

.fill:before {
  content: "";
  position: absolute;
  /*background: rgba(251, 193, 22, 0.48);*/
  background: #ecb106;
  bottom: 0;
  left: 0;
  right: 0;
  top: 100%;
  z-index: -1;
  opacity:0;
 -webkit-transition: all 600ms cubic-bezier(1, 0, 0, 1);
  transition:         all 600ms cubic-bezier(1, 0, 0, 1);
}

.fill:hover:before {
  top: 0;
  opacity:1;
}

.pad {
    padding: 40px 0;
}

.pad-full {
    padding: 40px 20px;
}

.pad-top {
    padding-top: 60px;
}

.pad-bottom {
    padding-bottom: 60px;
}

.pad-lrg {
    padding:120px 30px;
}

/*------------------------------------*\
    VERTICAL ALIGN SETTINGS
\*------------------------------------*/

.in-block {
	display: inline-block;
}

.inline-wedge:before {
	content: '';
	display:inline-block;
	height:100%;
	vertical-align: middle;
}

.just-inline:after {
	content: '';
	display: inline-block;
	width:100%;
}


/*------------------------------------*\
   GENERAL HELPER CLASSES
\*------------------------------------*/


.hide {display:none !important}

.show {display: block;}

.opaque {
	opacity:1;
}

.not-opaque {
	opacity:0;
}

.no-style {
    list-style:none;
    margin: 0;
    padding:0;
}

.txt-ctr {
    text-align: center;
}

.uppercase {
    text-transform:uppercase;
}

.pad-top {
    padding-top: 75px;
}


.spread {
    width:100%;
    height:100%;
}

.half-spread {
    width: 100%;
    height: 50%;
}

.sml-full {
    width:100%;
}

.full-height-vh {
    height:100vh;
} 

 .full-height {
    height: 100%;
}

.blur {
        -webkit-filter: blur(100px); /* Safari 6.0 - 9.0 */
    filter: blur(100px);
}
.bold {
    font-weight: 900;
}

.ital {
    font-style: italic;
}

.white-bg {
    background:#ffffff;
}

.black-bg {
    background:#000000;
}

.set-img {
    width:100%;
    display: inline-block;
    height: auto;
}

/*------------------------------------*\
   BACKGROUND CLASSES
\*------------------------------------*/

.cover {
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center;
} 

.contain {
	background-size: contain;
	background-repeat:no-repeat;
	background-position:center;
}

/*------------------------------------*\
   FLEX CLASSES
\*------------------------------------*/

.flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.row-r {
	-webkit-flex-direction: row-reverse;
	    -ms-flex-direction: row-reverse;
	        -webkit-box-orient: horizontal;
	        -webkit-box-direction: reverse;
	        flex-direction: row-reverse;
}

.col {
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            flex-direction: column;
}

.col-r {
	-webkit-flex-direction: column-reverse;
	    -ms-flex-direction: column-reverse;
	        -webkit-box-orient: vertical;
	        -webkit-box-direction: reverse;
	        flex-direction: column-reverse;
}

.wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.wrap-r {
	-webkit-flex-wrap:wrap-reverse;
	    -ms-flex-wrap:wrap-reverse;
	        flex-wrap:wrap-reverse;
}

.start-y {
    -webkit-align-items: flex-start;
            -webkit-box-align: start;
                -ms-flex-align: start;
            align-items: flex-start;
}

.center-y {
    -webkit-align-items: center;
            -webkit-box-align: center;
                -ms-flex-align: center;
            align-items: center;
}

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

.start-x {
    -webkit-justify-content: flex-start;
            -webkit-box-pack: start;
                -ms-flex-pack: start;
            justify-content: flex-start;
}

.center-x {
    -webkit-justify-content: center;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
            justify-content: center;
}


.spaced-b {
	-webkit-justify-content: space-between;
	        -webkit-box-pack: justify;
	            -ms-flex-pack: justify;
	        justify-content: space-between;
}

.spaced-a {
	-webkit-justify-content: space-around;
	        -ms-flex-pack: distribute;
	    justify-content: space-around;
	 
}

/*------------------------------------*\
    GRIDS
\*------------------------------------*/

.sml-full {
	width:100%;
}

@media only screen and (min-width:480px) {

    .med-full {
        width:100%;
    }

    .med-1-2 {
        width:50%;
    }

    .med-1-2-spaced {
        width:48%;
    }

    .med-1-3-spaced {
        width:33%;
    }


}

@media only screen and (min-width:950px) {

    .lrg-4-6 {
        width:85%;
    }
    
    .lrg-4-5 {
        width:80%;
    }

    .lrg-3-4 {
        width:75%;
    }

    .lrg-2-3 {
        width:66.6%;
    }

    .lrg-3-5 {
        width:60%;
    }

    .lrg-1-2 {
        width:50%;
    }

    .lrg-2-5 {
        width:40%;
    }

    .lrg-1-3 {
        width:33.3%;
    }

    .lrg-1-4 {
        width:25%;
    }

    .lrg-1-5 {
        width:20%;
    }

    .lrg-1-6 {
        width:15%;
    }
/*------------------------------------*\
   Spaced Grids
\*------------------------------------*/

    .lrg-5-6-spaced {
        width:81.3%;
    }

    .lrg-3-4-spaced {
        width:74%;
    }

    .lrg-2-3-spaced {
        width:65%;
    }

    .lrg-3-5-spaced {
        width:58%;
    }

    .lrg-1-2-spaced {
        width: 49%;
    }

    .lrg-2-5-spaced {
        width:38%;
    }

    .lrg-1-3-spaced {
        width:30.8%;
    }

    .lrg-1-4-spaced {
        width:23%;
    }

     .lrg-1-6-spaced {
        width:13.6%;
    }
        
    .lrg-full-height {
        height:100%;
    }


}

@media only screen and (max-width:950px) {

    .lrg-pad-top {
        padding-top: 75px;
    }



}



