/*!
// Contents
// ------------------------------------------------


 
 /*!--------- 1. SOMNUS SPECIFIC ----------*/
.pull-bottom-half {
    z-index: 10;
}
.pull-bottom-small {
    z-index: 10;
    margin-bottom: -120px;
}
.pull-top-small {
    z-index: 0;
    margin-bottom: -120px;
}
.fade-on-hover {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: 1;
}
.fade-on-hover:hover {
    opacity: .8;
}
.absolute {
    height: 100%;
    position: absolute;
    min-height: 200px;
}
.height-100 {
    position: absolute;
    height: 100%;
    top: 0;
}
.top-layer {
    z-index: 20 !important;
}
.page-title + .contained-page {
    margin-top: -120px;
    z-index: 10;
}
.contained-page + .cta {
    margin-top: -120px;
    z-index: 8;
    padding-top: 180px;
}
.fullwidth-map + .top-layer {
    margin-top: -120px;
    z-index: 10;
}
.team + .cta {
    margin-top: -180px;
}
@media all and (max-width: 768px) {
    .pull-bottom-half {
        margin-bottom: -240px !important;
    }
    .pull-left-sm {
        float: left !important;
    }
    .block-xs {
        display: block;
    }
    .pull-right {
        float: none !important;
    }
    .pull-top-small {
        margin-bottom: 0;
    }
    .height-100 {
        position: relative;
    }
    .page-title + .contained-page {
        margin-top: 0;
    }
}
/*!---------- 1. GLOBAL STYLES ----------*/
body {
    background: #f9fafb;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 14px;
    line-height: 22px;
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #666;
}
body.boxed-layout,
.boxed-layout .nav-container,
.boxed-layout .main-container {
    max-width: 1400px;
    margin: 0 auto;
    left: 0;
    right: 0;
}
ul {
    list-style: none;
    letter-spacing: .5px;
}
ul.bullets {
    list-style: inside;
}
ul.bullets span {
    display: inline-block;
    margin-left: 16px;
}
ul.bullets li {
    margin-bottom: 8px;
}
ul.bullets li:last-child {
    margin-bottom: 0;
}
.main-container {
    clear: both;
}
hr {
    border: none;
    border-top: 1px solid #ccc;
    margin: 0 0 24px 0;
    width: 100%;
}
.image-bg hr {
    border-color: #fff;
    opacity: .6;
}
.image-bg.bg-light hr {
    border-color: #ccc;
    opacity: 1;
}
.bg-dark hr {
    border-color: #555;
}
.inline-block {
    display: inline-block;
}
.list-inline {
    margin-left: 0;
}
.list-inline > li {
    padding: 0 4px;
}
.list-inline.wide > li {
    padding: 0 24px;
}
.list-inline > li:last-child {
    padding-right: 0;
}
.list-inline > li:first-child {
    padding-left: 0;
}
.overflow-hidden {
    overflow: hidden;
}
.display-block {
    display: block;
}
.right {
    right: 0;
}
.relative {
    position: relative;
    z-index: 5;
}
.spread-children * {
    display: inline-block;
    margin-left: 12px;
    margin-right: 12px;
}
.spread-children-large * {
    display: inline-block;
    margin-left: 24px;
    margin-right: 24px;
}
.container {
    position: relative;
}
/*!---------- 2. MIXINS ----------*/
.v-align-children {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
    flex-direction: row;
    -webkit-flex-direction: row;
}
.v-align-children-column {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
    flex-direction: column;
    -webkit-flex-direction: column;
}
.disable-select {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
@media all and (max-width: 990px) {
    .v-align-children {
        display: block !important;
    }
}
.v-align-transform {
    position: relative;
    transform: translate3d(0, -50%, 0);
    -webkit-transform: translate3d(0, -50%, 0);
    top: 50%;
    z-index: 2;
}
.align-bottom {
    position: absolute;
    bottom: 0;
    margin: 0 auto;
    left: 0;
    right: 0;
    z-index: 2;
}
.align-top {
    position: absolute;
    top: 0;
    margin: 0 auto;
    left: 0;
    right: 0;
    z-index: 2;
}
/*!---------- 3. TYPOGRAPHY ----------*/
@media all and (max-width: 767px) {
    .text-center-xs {
        text-align: center !important;
    }
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
pre,
table,
blockquote,
input,
select,
textarea {
    margin-bottom: 24px;
    margin-top: 0;
    padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: "Oswald", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 300;
    color: #333333;
}
h1,
.h1 {
    font-size: 56px;
    line-height: 64px;
}
h1.large {
    font-size: 72px;
    line-height: 80px;
    font-weight: 100;
}
@media all and (max-width: 990px) {
    h1.large {
        font-size: 56px;
        line-height: 64px;
    }
}
h2 {
    font-size: 40px;
    line-height: 48px;
}
h3 {
    font-size: 32px;
    line-height: 40px;
}
h4 {
    font-size: 24px;
    line-height: 32px;
}
h5 {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
}
h6,
.h6 {
    font-size: 12px;
    line-height: 24px;
    font-weight: 700;
}
@media all and (max-width: 767px) {
    h1,
    h1.large,
    .h1 {
        font-size: 32px;
        line-height: 40px;
        font-weight: 300;
    }
    h2 {
        font-size: 32px;
        line-height: 40px;
    }
    h3 {
        font-size: 24px;
        line-height: 32px;
    }
    h4 {
        font-size: 18px;
        line-height: 26px;
    }
    h5 {
        font-size: 16px;
        line-height: 24px;
        font-weight: 400;
    }
    h6,
    .h6 {
        font-size: 12px;
        line-height: 24px;
        font-weight: 700;
    }
}
.uppercase {
    text-transform: uppercase;
    font-weight: 300;
}
h1.uppercase {
    letter-spacing: 17px;
    margin-right: -17px;
}
h2.uppercase {
    letter-spacing: 10px;
    margin-right: -10px;
}
h3.uppercase {
    letter-spacing: 6px;
    margin-right: -6px;
}
h4.uppercase {
    letter-spacing: 4px;
    margin-right: -4px;
}
h5.uppercase {
    letter-spacing: 2px;
    margin-right: -2px;
}
h6.uppercase,
.h6-u {
    letter-spacing: 2px;
    font-weight: 700;
}
.bold-h6 {
    font-family: "Oswald", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 12px;
    line-height: 24px;
    text-transform: uppercase;
    font-weight: 300;
    letter-spacing: 2px;
    font-weight: 700;
}
p,
span {
    font-weight: 400;
    letter-spacing: .5px;
}
p.lead {
    font-size: 24px;
    font-weight: 400;
    line-height: 34px;
    color: #333;
    letter-spacing: 1px;
}
p.large {
    font-size: 16px;
}
.sub {
    font-size: 11px;
}
span.title {
    font-size: 20px;
    display: block;
    color: #333;
}
@media all and (max-width: 767px) {
    p.lead {
        font-size: 13px;
        line-height: 24px;
    }
    p {
        font-size: 12px;
    }
}
a,
a:visited,
a:focus,
a:active,
a:hover {
    text-decoration: none;
    outline: none;
}
a {
    font-weight: 400;
    color: #333334;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    cursor: poitner;
}
.image-bg a {
    color: #fff;
}
.image-bg a:hover {
    color: #fff;
    opacity: .9;
}
.bg-light a {
    color: #333334;
}
.bg-light a:hover {
    color: #333334;
    opacity: 1;
}
a:hover {
    color: #1a1a1a;
    text-decoration: none;
}
a.underline {
    display: inline-block;
    border-bottom: 1px solid;
    padding-bottom: -2px;
    line-height: 16px;
}
.label {
    font-family: "Oswald", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 12px;
    line-height: 24px;
    text-transform: uppercase;
    font-weight: 300;
    letter-spacing: 2px;
    font-weight: 700;
    letter-spacing: 1px;
    background: #333334;
    border-radius: 0;
    padding: 6px 12px;
    font-size: 10px;
    vertical-align: middle;
}
blockquote {
    overflow: hidden;
    font-family: "Merriweather", "Georgia", Times New Roman, Times, serif;
    font-size: 20px;
    line-height: 40px;
    font-style: italic;
    background: #f5f5f5;
    padding: 32px;
    color: #777;
    font-weight: 300;
}
.bg-secondary blockquote {
    background: #fff;
    border-color: #333334;
}
blockquote .author {
    font-size: 12px;
    display: block;
    float: right;
    margin-top: 16px;
}
.number {
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
@media all and (max-width: 767px) {
    blockquote {
        font-size: 16px;
        line-height: 32px;
    }
}
.text-left {
    text-align: left !important;
}
@media all and (max-width: 767px) {
    .text-left-xs {
        text-align: left !important;
    }
}
@media all and (max-width: 990px) {
    .text-center-sm {
        text-align: center;
    }
}
/*!---------- 4. COLOURS ----------*/
.bg-primary {
    background: #333334 !important;
}
.bg-secondary {
    background: #f1f4f5;
}
.bg-dark {
    background: #333333;
}
.bg-white {
    background: #fff;
}
.color-body {
    color: #666;
}
.bg-body {
    background: #f9fafb;
}
.color-primary {
    color: #333334 !important;
}
.color-red {
    color: #e31d3b !important;
}
/*!---------- 5. SECTIONS ----------*/
section,
footer {
    padding: 64px 0;
    position: relative;
    overflow: hidden;
}
footer {
    padding: 72px 0;
}
.fullscreen {
    height: 100vh;
}
.bg-dark h1,
nav.bg-dark h1,
footer.bg-dark h1,
.bg-primary h1,
.bg-dark h2,
nav.bg-dark h2,
footer.bg-dark h2,
.bg-primary h2,
.bg-dark h3,
nav.bg-dark h3,
footer.bg-dark h3,
.bg-primary h3,
.bg-dark h4,
nav.bg-dark h4,
footer.bg-dark h4,
.bg-primary h4,
.bg-dark h5,
nav.bg-dark h5,
footer.bg-dark h5,
.bg-primary h5,
.bg-dark h6,
nav.bg-dark h6,
footer.bg-dark h6,
.bg-primary h6 {
    color: #ffffff;
}
.bg-dark p,
nav.bg-dark p,
footer.bg-dark p,
.bg-primary p,
.bg-dark span,
nav.bg-dark span,
footer.bg-dark span,
.bg-primary span,
.bg-dark li,
nav.bg-dark li,
footer.bg-dark li,
.bg-primary li {
    color: #fefefe;
}
@media all and (max-width: 767px) {
    section {
        padding: 40px 0;
    }
}
.overlay:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #333333;
    opacity: 0.3;
    z-index: 2;
}
.overlay-heavy:before {
    opacity: .6;
}
.bg-light.overlay:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #ffffff;
    opacity: 0.1;
    z-index: 2;
}
.image-bg h1,
.image-bg h2,
.image-bg h3,
.image-bg h4,
.image-bg h5,
.image-bg h6 {
    color: #ffffff;
}
.image-bg p,
.image-bg span,
.image-bg li {
    color: #ffffff;
}
.image-bg .container {
    position: relative;
    z-index: 3;
}
.container.image-bg .row {
    position: relative;
    z-index: 3;
}
.background-image-holder {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
    background: #333333;
    background-size: cover !important;
    background-position: 50% 50% !important;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: 0;
}
.background-image-holder img {
    display: none;
}
.background-multiply .background-image-holder {
    background-color: #333334 !important;
    background-blend-mode: multiply;
}
.background-image-holder.fadeIn {
    opacity: 1;
}
.parallax > .background-image-holder,
.parallax .slides li > .background-image-holder {
    height: 100vh;
    top: -50vh;
    transition: all 0s ease !important;
    transition: opacity 0.3s ease !important;
    -webkit-transform-style: preserve-3d;
}
.parallax:first-child .slides li > .background-image-holder,
.parallax:first-child .background-image-holder {
    top: 0;
}
@media all and (max-width: 767px) {
    .parallax > .background-image-holder,
    .parallax .slides li > .background-image-holder {
        top: 0 !important;
    }
}
/*!---------- 6. BUTTONS ----------*/
.btn {
    border: 1px solid #7f7f81;
    padding: 0 26px;
    height: 50px;
    min-width: 150px;
    line-height: 46px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 0;
    color: #666;
    text-align: center;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    margin-right: 8px;
    margin-bottom: 24px;
}
.btn:last-child,
.btn:last-of-type {
    margin-right: 0;
}
.btn:hover {
    background: #333334;
    color: #fff;
}
.btn-icon {
    width: 40px;
    height: 40px;
    font-size: 20px;
    min-width: 0;
    padding: 0;
    line-height: 38px;
}
.btn-lg {
    height: 80px;
    line-height: 76px;
    min-width: 290px;
    font-size: 16px;
}
.btn-icon.btn-lg {
    width: 50px;
    height: 50px;
    line-height: 49px;
    font-size: 24px;
    min-width: 0;
}
.btn-icon.btn-sm {
    width: 30px;
    height: 30px;
    line-height: 29px;
    font-size: 13px;
    min-width: 0;
    padding: 0 0 0 1px!important;
}
.btn-sm {
    height: 30px;
    font-size: 11px;
    line-height: 27px;
    min-width: 0;
}
.btn-filled {
    background: #333334;
    color: #fff;
}
.btn-white,
.image-bg .btn,
.image-bg .btn:visited {
    color: #fff;
    border-color: #fff;
}
.btn-white.btn-filled {
    background: #fff;
    color: #333 !important;
    border-color: #fff !important;
}
.btn-white:hover,
.image-bg .btn:hover,
.image-bg .btn:visited:hover {
    background: #fff;
    color: #222;
}
.image-bg .btn.btn-filled,
.image-bg .btn-filled:visited {
    border-color: #333334;
}
.image-bg .btn-filled:hover {
    border-color: #fff;
}
.btn-rounded {
    border-radius: 25px;
}
body.btn-rounded .btn {
    border-radius: 25px !important;
}
.bg-light .btn {
    border-color: #222;
    color: #222;
}
.bg-light .btn:visited,
.bg-light .btn:visited:hover {
    color: #222;
}
.btn:visited {
    color: #333334;
}
.btn-white:visited,
.btn:visited:hover {
    color: #fff;
}
.btn-white:visited:hover {
    color: #222;
}
.btn-filled:visited {
    color: #fff;
}
.btn.bg-dark {
    color: #fff;
    border-color: #333333;
}
.btn.bg-dark:hover {
    background: #4d4d4d;
}
@media all and (max-width: 767px) {
    .timetable .btn {
        height: 35px;
        line-height: 32px;
        min-width: auto;
        text-transform: none;
        letter-spacing: 1px;
        font-size: 12px;
        padding: 0 15px;
    }
}
/*!---------- 7. NAVIGATION ----------*/
.nav-container {
    -webkit-backface-visibility: hidden;
    max-width: 100%;
}
nav {
    background: #f9fafb;
    -webkit-backface-visibility: hidden;
    max-width: 100%;
}
nav ul {
    margin-bottom: 0;
}
.module {
    display: inline-block;
    padding: 0 24px;
}
.module-group {
    display: inline-block;
}
.module.left,
.module-group.left {
    float: left;
}
.module.right,
.module-group.right {
    float: right;
}
nav .btn,
.nav-bar .btn {
    margin: 0;
    height: auto;
}
.nav-utility {
    height: 45px;
    line-height: 43px;
    overflow: hidden;
}
.nav-utility i {
    position: relative;
    top: 1px;
}
.nav-bar {
    height: 70px;
    max-height: 70px;
    line-height: 68px;
}
.nav-bar .module,
.nav-bar .module-group {
    height: 55px;
}
.nav-bar a {
    display: inline-block;
    height: 70px;
}
.logo {
    max-height: 60%;
}
.logo-light {
    display: none;
}
nav.bg-dark .logo-light {
    display: inline;
}
nav.bg-dark .logo-dark {
    display: none;
}
.has-dropdown {
    padding-right: 18px;
}
.has-dropdown:after {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 11px;
    content: "\e64b";
    font-family: 'themify';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
}
.menu {
    height: 55px;
    font-family: 'Lato', "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.menu li a {
    font-size: 11px;
    text-transform: uppercase;
    font-weight: normal;
    letter-spacing: 1px;
    color: #333333;
    opacity: 0.5;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
.menu li a:hover {
    opacity: 1 !important;
}
.menu > li {
    margin-right: 32px;
    float: left;
    position: relative;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: 1;
}
.menu > li:last-child {
    margin-right: 0;
}
.menu > li:last-child > ul {
    right: 0;
}
.menu > li:last-child > ul ul {
    left: auto;
    right: 100%;
}
.menu > li ul {
    text-align: left;
    width: 160px;
    padding: 8px 0;
    background: #333333;
    position: absolute;
    z-index: 99;
    opacity: 0;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    visibility: hidden;
    margin-top: 0;
}
.menu > li > ul > li {
    position: relative;
    line-height: 24px;
    width: 100%;
    vertical-align: top;
}
.menu > li > ul > li i {
    display: inline-block;
    margin-right: 2px;
}
.menu > li > ul > .has-dropdown:after {
    color: #fff;
    top: 5px;
    right: 24px;
    content: "\e649";
}
.menu > li > ul li a {
    color: #fff;
    height: auto;
    padding: 6px 24px;
}
.menu > li > ul > li > ul {
    left: 100%;
    top: 0;
}
.menu > li:hover > ul {
    opacity: 1;
    visibility: visible;
}
.menu > li > ul > li:hover > ul,
.has-dropdown:hover .mega-menu ul {
    opacity: 1;
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
    visibility: visible;
}
.mega-menu {
    width: auto !important;
    white-space: nowrap;
    line-height: 24px;
}
.mega-menu ul {
    position: relative !important;
    left: auto !important;
    padding: 0 !important;
}
.mega-menu > li {
    width: 200px !important;
    overflow: hidden;
    display: inline-block;
}
.mega-menu .title {
    letter-spacing: 1px;
    color: #fff;
    display: inline-block;
    padding: 6px 24px;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 600;
}
.make-right {
    right: 0;
}
.module.widget-handle {
    padding: 0 24px;
    cursor: pointer;
    position: relative;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin: 0;
}
@media all and (max-width: 1100px) {
    .module.widget-handle {
        padding: 0 16px;
    }
}
.module.widget-handle i {
    font-size: 20px;
    line-height: 53px;
    opacity: 0.5;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
.module.widget-handle:hover i,
.module.active i {
    opacity: 1;
}
nav .widget {
    margin: 0;
    padding: 24px;
}
nav .widget .title {
    display: none !important;
}
nav .widget,
nav .widget a:not(.btn) {
    color: #fff;
}
nav .widget hr {
    border-color: #777;
    margin-bottom: 16px;
}
nav .widget hr:first-of-type {
    display: none;
}
.nav-open {
    max-height: 10000px;
}
.nav-open .mobile-toggle {
    border-bottom: 1px solid #ccc;
}
@media all and (max-width: 1120px) {
    .menu > li {
        margin-right: 24px;
    }
}
@media all and (max-width: 990px) {
    nav.fixed {
        position: absolute !important;
        opacity: 1 !important;
    }
    nav.outOfSight {
        transform: translate3d(0, 0px, 0) !important;
        -webkit-transform: translate3d(0, 0px, 0) !important;
        -moz-transform: translate3d(0, 0px, 0) !important;
        transition: all 0.3s ease;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
    }
    .nav-bar,
    .nav-bar .module-group,
    .nav-bar .module {
        height: auto;
        overflow: hidden;
    }
    .nav-bar .module {
        padding: 0 16px;
    }
    .nav-bar .module-group {
        width: 100%;
        padding: 16px 0;
    }
    .nav-bar .module-group .module {
        display: block;
        float: none;
        width: 100%;
    }
    .menu {
        height: auto;
    }
    .menu a {
        height: auto;
        line-height: 24px;
        padding: 4px 0;
    }
    .menu li {
        line-height: 24px;
        float: none;
        display: block;
        width: 100%;
        max-width: 100%;
    }
    .menu > li ul {
        position: relative;
        width: 100%;
        opacity: 1;
        visibility: visible;
        transform: translate3d(0, 0px, 0);
        -webkit-transform: translate3d(0, 0px, 0);
        -moz-transform: translate3d(0, 0px, 0);
        left: 0;
    }
    .menu > li > ul {
        position: relative;
        opacity: 1;
        visibility: visible;
        display: none;
        transform: translate3d(0, 0px, 0);
        -webkit-transform: translate3d(0, 0px, 0);
        -moz-transform: translate3d(0, 0px, 0);
    }
    .menu > li > ul > li {
        text-align: center;
    }
    .menu > li > ul > .has-dropdown:after {
        content: "\e64b";
    }
    .menu > li > ul > li > ul {
        left: 0;
        display: none;
        padding: 0;
    }
    .menu > li > ul li a,
    .mega-menu .title {
        padding: 4px 16px;
    }
    .has-dropdown .has-dropdown li {
        padding-left: 18px;
    }
    .has-dropdown {
        padding-right: 0;
    }
    .mega-menu {
        margin-left: 0 !important;
    }
    .mega-menu li {
        width: 100% !important;
    }
    .toggle-sub > ul,
    .toggle-sub .mega-menu ul {
        display: block !important;
    }
    .module.widget-handle {
        border-left: none;
        border-top: 1px solid #ccc;
        line-height: 40px;
        min-height: 40px;
    }
    .module.widget-handle .menu {
        line-height: 40px;
    }
    .module.widget-handle .menu li {
        line-height: 40px;
    }
    .module.widget-handle i {
        line-height: 40px;
    }
    .module.widget-handle .title {
        display: inline-block;
        position: relative;
        bottom: 3px;
        margin-left: 8px;
    }
    .widget-handle .function {
        width: 100%;
        position: relative;
        opacity: 1;
        transform: translate3d(0, 0px, 0);
        -webkit-transform: translate3d(0, 0px, 0);
        -moz-transform: translate3d(0, 0px, 0);
        visibility: visible;
        margin-top: 0;
        display: none;
    }
    .toggle-widget-handle .function {
        display: block !important;
    }
    .mobile-toggle {
        border-left: 1px solid #ccc !important;
    }
    .mobile-toggle i {
        line-height: 53px !important;
    }
    nav.bg-dark .module.widget-handle {
        border-top: 1px solid #444;
    }
    nav.bg-dark .mobile-toggle {
        border-left: 1px solid #444 !important;
    }
    nav.bg-dark .nav-open .mobile-toggle {
        border-bottom: 1px solid #444;
    }
}
nav.outOfSight {
    transform: translate3d(0, -200px, 0);
    -webkit-transform: translate3d(0, -200px, 0);
    -moz-transform: translate3d(0, -200px, 0);
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
nav.scrolled {
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
}
nav.fixed,
nav.absolute {
    top: 0;
    width: 100%;
    z-index: 999;
    left: 0;
    right: 0;
}
nav.absolute {
    position: absolute;
}
nav.fixed {
    position: fixed;
    visibility: hidden;
    opacity: 0;
}
nav.fixed .nav-utility {
    display: none;
}
nav.fixed.scrolled {
    visibility: visible;
    opacity: 1;
}
@media all and (max-width: 990px) {
    nav.transparent .nav-open {
        background: #fff;
    }
    nav.transparent .nav-open .menu > li > a,
    nav.transparent .nav-open .module.widget-handle i,
    nav.transparent .nav-open .nav-utility {
        color: #333333;
    }
    nav.transparent .nav-open .logo-dark {
        display: inline;
    }
    nav.transparent .nav-open .logo-light {
        display: none;
    }
    nav.transparent .nav-open .has-dropdown:after {
        color: #333333;
    }
    .menu > li:last-child > ul ul {
        right: 0;
    }
}
nav.bg-dark .menu > li > a,
nav.bg-dark .module.widget-handle i,
nav.bg-dark .nav-utility {
    color: #fff;
    opacity: .7;
}
nav.bg-dark .module.widget-handle {
    border-left: 1px solid rgba(255, 255, 255, 0.2);
}
nav.bg-dark .nav-utility,
nav.bg-dark .nav-bar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.mobile-toggle {
    position: absolute !important;
    top: 0;
    border-left: none !important;
}
/*!---------- 8. TOOLTIPS ----------*/
.tooltip {
    font-size: 14px;
    font-family: "Oswald", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.tooltip-inner {
    border-radius: 0;
    padding: 9px 24px 12px 24px;
}
/*!---------- 9. ALERTS ----------*/
.alert {
    margin-bottom: 24px;
    background: none;
    border-radius: 0;
    font-weight: 600;
    padding: 12px 16px;
}
.alert .close {
    opacity: 1;
    font-size: 24px;
    top: -2px;
    right: -4px;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
.alert .close span {
    font-weight: 400;
}
.alert-warning {
    border: 1px solid #d88519;
    color: #d88519;
}
.alert-success {
    border: 1px solid #60b963;
    color: #60b963;
}
.alert-danger {
    border: 1px solid #c64444;
    color: #c64444;
}
/*!---------- 10. ICONS ----------*/
.icon {
    font-size: 64px;
    display: inline-block;
    color: #333333;
}
.image-bg.bg-light .icon {
    color: #333333;
}
.image-bg .icon,
.bg-dark .icon {
    color: #fff;
}
.icon-lg {
    font-size: 80px;
}
.icon-sm {
    font-size: 32px;
}
@media all and (max-width: 767px) {
    .icon {
        font-size: 48px;
    }
    .icon-lg {
        font-size: 64px;
    }
    .icon-sm {
        font-size: 22px;
    }
}
/*!---------- 11. FORMS ----------*/
input[type="text"],
textarea,
select,
input[type="password"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    max-width: 100%;
}
.bg-secondary input[type="text"] {
    background: #fff;
}
.input-lh {
    line-height: 50px;
}
input[type="text"],
input[type="password"] {
    background: #fff;
    border: none;
    width: 100%;
    height: 50px;
    padding-left: 20px;
    font-weight: 400;
    margin-bottom: 24px;
    border-radius: 0;
}
.image-bg input[type="text"],
.image-bg textarea {
    color: #555;
}
.image-bg.bg-light input.transparent {
    border-color: #333333;
}
input.transparent,
textarea.transparent {
    background: none !important;
    border: 1px solid rgba(255, 255, 255, 0.5);
    color: #fff;
}
input[type="text"]:focus,
input[type="password"]:focus {
    outline: 1px solid #ccc;
}
textarea {
    width: 100%;
    border: none;
    background: #f5f5f5;
    margin-bottom: 24px;
    border-radius: 0;
    padding: 16px 20px;
}
textarea:focus {
    outline: 1px solid #ccc;
}
::-webkit-input-placeholder {
    color: #777;
    font-size: 11px;
}
:-moz-placeholder {
    color: #777;
    font-size: 11px;
}
::-moz-placeholder {
    color: #777;
    font-size: 11px;
}
:-ms-input-placeholder {
    color: #777;
    font-size: 11px;
}
.transparent::-webkit-input-placeholder {
    color: #fff;
}
.transparent::-moz-input-placeholder {
    color: #fff;
}
.transparent:-moz-input-placeholder {
    color: #fff;
}
.transparent:-ms-input-placeholder {
    color: #fff;
}
input[type="submit"],
button.submit {
    height: 50px;
    line-height: 48px;
    border: 2px solid #333334;
    background: #333334;
    color: #fff;
    width: 100%;
    font-size: 11px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 1px;
}
.bg-primary input[type="submit"] {
    background: #fff;
    color: #333334;
}
input[type="submit"]:focus,
button.submit:focus {
    outline: none;
}
input[type="submit"].hollow {
    background: none;
    border: 2px solid #333334;
    color: #333334;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
input[type="submit"].hollow:hover {
    background: #333334;
    color: #fff;
}
.select-option {
    position: relative;
    cursor: pointer;
    height: 50px;
    overflow: hidden;
    margin-bottom: 24px;
}
.select-option i {
    position: absolute;
    font-size: 18px;
    right: 20px;
    top: 14px;
    z-index: 2;
    pointer-events: none;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    cursor: pointer;
}
.select-option:focus i {
    color: #fff;
}
.select-option select {
    margin-bottom: 0;
}
select {
    height: 50px;
    background: #f5f5f5;
    width: 100%;
    border-radius: 0;
    border: none;
    outline: none;
    padding-left: 20px;
    position: relative;
    font-size: 11px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 1px;
    color: #777;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    cursor: pointer;
}
select:focus {
    background: #eee;
}
select:active,
select:focus,
select:hover {
    outline: none;
    border: none;
}
.checkbox-option,
.radio-option {
    display: inline-block;
    width: 50px;
    height: 25px;
    border-radius: 25px;
    border: 1px solid #333334;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-bottom: 24px;
}
.checkbox-option .inner,
.radio-option .inner {
    width: 19px;
    height: 19px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0);
    border: 1px solid #333334;
    position: relative;
    top: 2px;
    left: 2px;
    display: inline-block;
    transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
}
.checkbox-option.checked .inner {
    transform: translate3d(25px, 0, 0);
    -webkit-transform: translate3d(25px, 0, 0);
    -moz-transform: translate3d(25px, 0, 0);
    background: #333334;
}
.checkbox-option input {
    width: 0;
    height: 0;
    opacity: 0;
    overflow: hidden;
}
.radio-option {
    width: 25px;
    height: 25px;
    text-align: left;
}
.radio-option:nth-of-type(n+2) {
    margin-left: 24px;
}
.radio-option input {
    width: 0;
    height: 0;
    opacity: 0;
    overflow: hidden;
}
.radio-option .inner {
    border: none;
    width: 19px;
    height: 19px;
    left: 2px;
    transform: scale(0);
    -webkit-transform: scale(0);
}
.radio-option.checked .inner {
    transform: scale(1);
    -webkit-transform: scale(1);
}
.radio-option.checked .inner {
    background: #333334;
}
.form-newsletter input[type="text"] {
    width: 250px;
    margin: 0;
}
.form-newsletter input[type="submit"] {
    width: 136px;
    margin: 0;
}
.form-newsletter input[type="submit"]:focus,
button.submit:focus {
    color: #fff;
}
.form-error,
.form-success {
    background: #58ce38;
    padding: 12px;
    width: 100%;
    color: #fff;
    max-width: 700px;
    margin: 16px auto 0;
}
.form-error {
    background: #ce3838;
}
.field-error {
    outline: 1px solid #ce3838 !important;
}
form iframe.mail-list-form {
    display: none;
}
.form-loading {
    border: 3px solid #ffffff;
    border-radius: 30px;
    height: 30px;
    left: 50%;
    margin: -15px 0 0 -15px;
    opacity: 0;
    margin: 0px auto;
    top: 50%;
    width: 30px;
    -webkit-animation: pulsate 1s ease-out;
    -webkit-animation-iteration-count: infinite;
    -moz-animation: pulsate 1s ease-out;
    -moz-animation-iteration-count: infinite;
    animation: pulsate 1s ease-out;
    animation-iteration-count: infinite;
    z-index: 99999;
}
@keyframes pulsate {
    0% {
        transform: scale(0.1);
        opacity: 0.0;
    }
    50% {
        opacity: 1;
    }
    100% {
        transform: scale(1.2);
        opacity: 0;
    }
}
@-webkit-keyframes pulsate {
    0% {
        transform: scale(0.1);
        opacity: 0.0;
    }
    50% {
        opacity: 1;
    }
    100% {
        transform: scale(1.2);
        opacity: 0;
    }
}
@media all and (max-width: 767px) {
    .form-newsletter input {
        min-width: 100%;
    }
}
/*!---------- 13. TABBED CONTENT ----------*/
.tabs {
    overflow: hidden;
}
.tabs li {
    display: inline-block;
    cursor: pointer;
}
.tabs.thirds li {
    width: 32.3333333%;
}
.tabs.thirds .tab-title {
    width: 100%;
}
.button-tabs .tab-title {
    border: 1px solid rgba(0, 0, 0, 0);
    padding: 13px;
    display: inline-block;
    text-align: center;
    min-width: 150px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: .6;
}
.button-tabs .tab-title span {
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: .5px;
}
.button-tabs .active .tab-title {
    border: 1px solid #333;
    opacity: 1;
}
.button-tabs.vertical {
    overflow: hidden;
}
.button-tabs.vertical .tabs {
    max-width: 30%;
    float: left;
}
.button-tabs.vertical .content {
    padding-left: 3%;
    max-width: 70%;
    float: right;
}
.button-tabs.vertical .tabs li,
.button-tabs.vertical .tab-title {
    width: 100%;
}
.button-tabs.vertical .tabs li {
    margin-bottom: 10px;
}
@media all and (max-width: 767px) {
    .button-tabs .tabs li {
        width: 49%;
        margin-bottom: 15px;
    }
    .button-tabs.vertical .tabs,
    .button-tabs.vertical .content {
        max-width: 100%;
        width: 100%;
        padding-left: 0;
    }
}
.tabbed-content .content > li {
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    display: none;
}
.tabbed-content .content .active {
    opacity: 1;
    visibility: visible;
    display: block;
}
/*!---------- 17. PAGINATION ----------*/
.pagination {
    margin: 0;
}
.pagination li {
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.pagination li a {
    width: 32px;
    height: 32px;
    padding: 0;
    text-align: center;
    padding-top: 6px;
    margin: 0 4px;
    color: #333333;
    font-weight: 400;
}
.pagination li a:hover,
.pagination li.active a,
.pagination li.active:hover a {
    background: #333334;
    color: #fff;
    border-color: #333334;
}
/*!---------- 21. WIDGETS ----------*/
.widget {
    margin-bottom: 48px;
}
.link-list {
    line-height: 32px;
}
.link-list a:after {
    content: "\e628";
    font-family: 'themify';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: 11px;
    display: inline-block;
    margin-left: 8px;
}
.widget ul:last-child,
.widget p:last-child {
    margin-bottom: 0;
}
.widget .title {
    font-family: "Oswald", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 12px;
    line-height: 24px;
    text-transform: uppercase;
    font-weight: 300;
    letter-spacing: 2px;
    font-weight: 700;
    margin-bottom: 12px;
}
.widget hr {
    margin-bottom: 12px;
}
.recent-posts {
    line-height: 24px;
}
.recent-posts li {
    margin-bottom: 8px;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
.recent-posts .date {
    display: block;
    letter-spacing: 0;
    opacity: .8;
}
.recent-posts li:hover .date {
    opacity: 1;
}
.tags {
    overflow: hidden;
}
.tags li {
    float: left;
    margin: 0 4px 4px 0;
}
.tags .btn-sm {
    padding: 0 8px;
    margin: 0;
}
.widget .gallery {
    overflow: hidden;
}
.widget .gallery li {
    width: 33.33333%;
    float: left;
    padding: 0 4px 4px 0;
}
.twitter-feed .user,
.twitter-feed .interact {
    display: none;
}
.widget .twitter-feed .timePosted {
    display: none;
}
.widget .tweet {
    margin-bottom: 0;
}
.widget .twitter-feed .slides li {
    margin-bottom: 24px;
}
.widget .twitter-feed .slides li:last-child {
    margin-bottom: 0;
}
.widget .twitter-feed .slides li:nth-of-type(n+3) {
    display: none;
}
.widget .twitter-feed .slides li:before {
    position: relative;
    top: 6px;
    float: left;
    display: inline-block;
    margin-right: 8px;
    color: #333333;
    content: "\e74b";
    font-family: 'themify';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: 13px;
}
.widget .twitter-feed p {
    padding-left: 22px;
    position: relative;
}
.bg-dark .widget .twitter-feed .slides li:before {
    color: #fff;
}
.widget .instafeed li {
    width: 33.3333%;
    display: inline-block;
    padding: 0 4px 4px 0;
}
.widget .instafeed li:nth-of-type(n+7) {
    display: none;
}
.widget .cart-overview img {
    width: 25%;
    padding-right: 2%;
}
.widget .cart-overview .description {
    display: inline-block;
    width: auto;
    line-height: 24px;
}
.widget .cart-overview span {
    display: block;
}
.widget .cart-overview li {
    margin-bottom: 24px;
    overflow: hidden;
}
.widget .cart-overview li:last-child {
    margin-bottom: 0;
}
.widget .cart-controls {
    max-height: 30px;
    line-height: 30px;
}
.cart-overview a {
    color: #333333;
}
.cart-overview a:hover {
    color: #333334;
}
.widget .flex-direction-nav li a {
    width: 16px;
    height: 16px;
    margin: -8px 0 0;
}
.widget .flex-direction-nav li a:before {
    font-size: 16px;
}
.widget .flex-direction-nav li a.flex-next {
    right: 8px;
}
.widget .flex-direction-nav li a.flex-prev {
    left: 8px;
}
.widget .flex-control-nav {
    display: none;
}
.widget .image-slider {
    margin: 0;
}
/*!---------- 22. IMAGE TILES ----------*/
img {
    max-width: 100%;
}
.image-tile {
    overflow: hidden;
    position: relative;
    margin-bottom: 24px;
}
.image-tile img {
    width: 100%;
    display: inline-block;
}
.image-tile .label {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 5;
}
.inner-title:before {
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(34, 34, 34, 0.9)));
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
    background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
    background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(34, 34, 34, 0.9) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#292929', GradientType=0);
    pointer-events: none;
}
.inner-title:hover:before {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
}
.inner-title .title {
    position: absolute;
    width: 100%;
    bottom: 24px;
    z-index: 5;
}
.inner-title .title h1,
.inner-title .title h2,
.inner-title .title h3,
.inner-title .title h4,
.inner-title .title h5,
.inner-title .title h6 {
    color: #ffffff;
}
.inner-title .title p,
.inner-title .title span,
.inner-title .title li {
    color: #ffffff;
}
.inner-title .title h5 {
    font-weight: 600;
}
.inner-title {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: 1;
}
.inner-title:hover {
    opacity: .95;
}
.inner-title.hover-reveal:before {
    opacity: 0;
}
.inner-title.hover-reveal .title {
    opacity: 0;
    transform: translate3d(0, 50px, 0);
    -webkit-transform: translate3d(0, 50px, 0);
    -moz-transform: translate3d(0, 50px, 0);
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
.inner-title.hover-reveal:hover .title {
    opacity: 1;
    transform: translate3d(0, 0px, 0);
    -webkit-transform: translate3d(0, 0px, 0);
    -moz-transform: translate3d(0, 0px, 0);
}
.inner-title.hover-reveal:hover:before {
    opacity: 1;
}
.outer-title img {
    display: inline-block;
    margin-bottom: 12px;
}
.hover-tile {
    position: relative;
    overflow: hidden;
    background: #333333;
}
.hover-tile img {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
.hover-tile:hover img {
    opacity: .5;
}
.hover-tile .hover-state {
    position: relative;
    transform: translate3d(0, -50%, 0);
    -webkit-transform: translate3d(0, -50%, 0);
    top: 50%;
    z-index: 2;
    position: absolute;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: 0;
    width: 100%;
}
.hover-state {
    z-index: 99;
    padding: 0 40px;
    cursor: default;
}
.hover-state h1,
.hover-state h2,
.hover-state h3,
.hover-state h4,
.hover-state h5,
.hover-state h6 {
    color: #ffffff;
}
.hover-state p,
.hover-state span,
.hover-state li {
    color: #ffffff;
}
.hover-state * {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transform: translate3d(0, 30px, 0) scale(1.05);
    -webkit-transform: translate3d(0, 30px, 0) scale(1.05);
}
.hover-tile:hover .hover-state {
    opacity: 1;
}
.hover-tile:hover .hover-state * {
    transform: translate3d(0, 0px, 0) scale(1);
    -webkit-transform: translate3d(0, 0px, 0) scale(1);
}
.hover-state *:last-child {
    margin-bottom: 0;
}
.border-thick {
    border: 16px solid #fff;
    border-top: none;
}
.border-thick.col-sm-6:first-child {
    border-right: 8px solid #fff;
}
.border-thick.col-sm-6:last-child {
    border-left: 8px solid #fff;
}
/*!---------- 23. SLIDERS ----------*/
.image-slider {
    position: relative;
}
.image-slider .slides {
    position: relative;
    overflow: hidden;
}
.image-slider .slides li {
    position: relative;
    height: 480px;
}
.image-slider .slides li > img {
    width: 100%;
}
.row .image-slider {
    margin-bottom: 24px;
}
@media all and (max-width: 767px) {
    .image-slider .slides li {
        height: 240px;
    }
}
.flex-direction-nav a.flex-next {
    right: 16px;
}
.flex-direction-nav a.flex-next:before,
.flex-direction-nav a.flex-prev:before {
    content: "\e649";
    font-family: 'themify';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: 24px;
    color: #fff;
}
.flex-direction-nav a.flex-prev {
    left: 16px;
}
.flex-direction-nav a.flex-prev:before {
    content: "\e64a";
}
.flex-direction-nav a {
    border: none;
    border-radius: 0;
    opacity: 1;
    text-shadow: none;
    color: rgba(0, 0, 0, 0);
    width: 24px;
    height: 24px;
    margin: -12px 0 0;
}
.flex-control-nav li a {
    background: none;
    border: 2px solid #333333;
    width: 10px;
    height: 10px;
}
.flex-direction-nav a:hover {
    background: none;
    border: none;
}
@media all and (max-width: 767px) {
    .flex-control-nav {
        display: none;
    }
}
.controls-inside .flex-control-nav {
    bottom: 24px;
    z-index: 10;
}
.controls-inside .flex-control-nav li a {
    border-color: #fff;
}
.controls-inside .flex-control-nav li a.flex-active {
    background: #fff;
}
.image-bg .flex-control-nav li a {
    border-color: #fff;
}
.image-bg .flex-control-nav li a.flex-active {
    background: #fff;
}
.slider-thumb-controls .flex-control-thumbs {
    margin: 0;
}
.slider-thumb-controls .flex-direction-nav {
    display: none;
}
@media all and (max-width: 767px) {
    .slider-thumb-controls .flex-control-thumbs {
        display: none;
    }
    .slider-thumb-controls .flex-direction-nav {
        display: block;
    }
}
.logo-carousel li {
    text-align: center;
}
.logo-carousel li {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: .5;
}
.logo-carousel li:hover {
    opacity: 1;
}
.logo-carousel img {
    max-height: 60px;
}
@media all and (max-width: 767px) {
    .logo-carousel .slides li {
        width: 100%;
    }
}
.text-slider .flex-direction-nav li a:before {
    color: #222;
}
.image-bg .text-slider .flex-direction-nav li a:before {
    color: #fff;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: .5;
}
.image-bg .text-slider .flex-direction-nav li a:hover:before {
    opacity: 1;
}
.text-slider .flex-direction-nav a.flex-prev {
    left: -60px;
}
.text-slider .flex-direction-nav a.flex-next {
    right: -60px;
}
/*!---------- 24. IMAGE GALLERIES ----------*/
.instafeed.grid-gallery {
    overflow: hidden;
    position: relative;
}
.instafeed.grid-gallery li {
    width: 20%;
    display: inline-block;
    float: left;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: 1;
}
.instafeed.grid-gallery li:nth-of-type(n+11) {
    display: none;
}
.instafeed.grid-gallery li:hover {
    opacity: .9;
}
.instafeed.grid-gallery li img {
    min-width: 100%;
}
@media all and (max-width: 990px) {
    .instafeed.grid-gallery li {
        width: 33.333333%;
    }
    .instafeed.grid-gallery li:nth-of-type(n+10) {
        display: none;
    }
}
.lightbox-grid,
.lightbox-grid ul,
.lightbox-grid li {
    position: relative;
    overflow: hidden;
}
.lightbox-grid li {
    width: 25%;
    float: left;
    border: 8px solid rgba(0, 0, 0, 0);
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    opacity: 1;
}
.lightbox-grid li:hover {
    opacity: .9;
}
.square-thumbs li {
    height: 285px;
}
.third-thumbs li {
    width: 33.33333vw;
    height: 33vw;
    border: none;
}
@media all and (max-width: 1190px) {
    .square-thumbs li {
        height: 235px;
    }
}
@media all and (max-width: 990px) {
    .lightbox-grid li {
        width: 33.33333%;
    }
    .square-thumbs li {
        height: 240px;
    }
}
@media all and (max-width: 767px) {
    .lightbox-grid li {
        width: 50%;
    }
    .third-thumbs li {
        height: 50vw;
    }
    .square-thumbs li {
        height: 185px;
    }
}
.lb-outerContainer {
    background: none;
    border-radius: 0;
}
.lightbox .lb-image {
    border-radius: 0;
}
.lb-data .lb-close,
.lb-nav a.lb-next,
.lb-nav a.lb-prev {
    background: none;
}
.lb-data .lb-close:before,
.lb-nav a.lb-next:before,
.lb-nav a.lb-prev:before {
    content: "\e646";
    font-family: 'themify';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    font-size: 24px;
    color: #fff;
}
.lb-nav a.lb-next:before,
.lb-nav a.lb-prev:before {
    position: absolute;
    top: 50%;
    font-size: 32px;
    margin-top: -16px;
}
.lb-nav a.lb-next:before {
    content: "\e649";
    right: 16px;
}
.lb-nav a.lb-prev:before {
    content: "\e64a";
    left: 16px;
}
/*!---------- 29. IMAGE BLOCKS ----------*/
.main-logo {
    max-height: 90%;
    vertical-align: top;
}
.image-small {
    max-height: 80px;
}
.image-xs {
    max-height: 50px;
}
.image-xxs {
    max-height: 22px;
}
.fade-half {
    opacity: 0.5;
}
.fade-1-4 {
    opacity: 0.75;
}
.fade-3-4 {
    opacity: 0.25;
}
.cast-shadow {
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}
.cast-shadow-light {
    -webkit-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
}
/*!---------- 33. MAPS ----------*/
.map-holder {
    overflow: hidden;
    position: relative;
}
.map-holder iframe {
    border: none;
    position: absolute;
    width: 100%;
    height: 150%;
    top: -25%;
    left: 0;
    z-index: 1;
}
.map-holder:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2;
}
.map-holder.interact:before {
    width: 0;
}
.map-holder.inline {
    height: 400px;
    overflow: hidden;
}
/*!---------- 34. TWITTER ----------*/
.twitter-feed.thirds li {
    width: 33.333333%;
    padding: 0 15px;
    float: left;
}
.twitter-feed.thirds ul {
    overflow: hidden;
}
@media all and (max-width: 990px) {
    .twitter-feed.thirds li {
        width: 50%;
    }
}
@media all and (max-width: 767px) {
    .twitter-feed.thirds li {
        width: 100%;
    }
}
.tweets-slider.large p {
    font-family: "Oswald", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 24px;
    line-height: 32px;
}
.tweets-slider.large .timePosted {
    font-size: 14px;
}
@media all and (max-width: 990px) {
    .tweets-slider.large p {
        font-size: 18px;
        line-height: 24px;
    }
}
@media all and (max-width: 767px) {
    .tweets-slider.large p {
        font-size: 14px;
    }
}
/*!---------- 35. FOOTERS ----------*/
footer span,
footer a {
    font-size: 12px;
}
footer.bg-dark a {
    color: #fff;
}
.footer-1 .logo {
    max-height: 30px;
}
.footer-1 .sub {
    opacity: .5;
}
.social-list {
    margin: 0;
}

.social-list a i {
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
}

.social-list a:hover i.ti-facebook {color: #3c5a99;}
.social-list a:hover i.ti-instagram {color: #ca3189;}
.social-list a:hover i.ti-youtube {color: #e14e42;}

.image-bg .social-list a {
    color: #fff;
}
.image-bg .social-list a:hover i.ti-facebook {
    color: blue;
}
.bg-dark .social-list a,
.image-bg .social-list a {
    color: #fff;
    opacity: .5;
}
.bg-dark .social-list a:hover {
    opacity: 1;
}
.image-bg .social-list a {
    opacity: 1;
}
.bg-light .social-list a {
    color: #222;
}
/*!---------- 35a. TABLES ----------*/
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
    padding: 16px 8px 12px 8px;
    vertical-align: middle;
    font-size: 16px;
    border-color: #c7c8c9;
}
tbody tr {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}
tbody tr:hover {
    background: #f1f4f5;
}
tbody td,
th {
    border-right: 1px solid #333;
}
th {
    border: none !important;
}
thead {
    border-top: 1px solid #c7c8c9;
}
.timetable th {
    font-family: 'Oswald';
    text-transform: uppercase;
    text-align: center;
    font-weight: 300;
    font-size: 22px !important;
    line-height: 32px !important;
    padding-top: 8px !important;
}
@media all and (max-width: 767px) {
    .table > thead > tr > th,
    .table > tbody > tr > th,
    .table > tfoot > tr > th,
    .table > thead > tr > td,
    .table > tbody > tr > td,
    .table > tfoot > tr > td {
        padding: 16px 8px 12px 8px;
        vertical-align: middle;
        font-size: 13px;
    }
    .timetable th {
        font-size: 12px !important;
        white-space: pre-wrap !important;
        line-height: normal !important;
    }
}
/*!---------- 35b. PAGES ----------*/
@media all and (max-width: 1200px) {
    .contained-page .col-md-10 {
        width: 100%;
    }
    .contained-page .col-md-offset-1 {
        margin: 0;
    }
}
/*!---------- 36. SPACING ----------*/
.mr0 {
    margin-right: 0;
}
.mb0 {
    margin-bottom: 0 !important;
}
.mb8 {
    margin-bottom: 8px;
}
.mb16 {
    margin-bottom: 16px;
}
.mb24 {
    margin-bottom: 24px;
}
.mb30 {
    margin-bottom: 30px;
}
.mb32 {
    margin-bottom: 32px;
}
.mb40 {
    margin-bottom: 40px;
}
.mb48 {
    margin-bottom: 48px;
}
.mb56 {
    margin-bottom: 56px;
}
.mb64 {
    margin-bottom: 64px;
}
.mb72 {
    margin-bottom: 72px;
}
.mb80 {
    margin-bottom: 80px;
}
.mb88 {
    margin-bottom: 88px;
}
.mb96 {
    margin-bottom: 96px;
}
.mb104 {
    margin-bottom: 104px;
}
.mb112 {
    margin-bottom: 112px;
}
.mb120 {
    margin-bottom: 120px;
}
.mb160 {
    margin-bottom: 160px;
}
.mb180 {
    margin-bottom: 180px;
}
.mb200 {
    margin-bottom: 200px;
}
.mb208 {
    margin-bottom: 208px;
}
.mb216 {
    margin-bottom: 216px;
}
.mt0 {
    margin-top: 0 !important;
}
.mt8 {
    margin-top: 8px;
}
.mt16 {
    margin-top: 16px;
}
.mt24 {
    margin-top: 24px;
}
.mt32 {
    margin-top: 32px;
}
.mt40 {
    margin-top: 40px;
}
.mt48 {
    margin-top: 48px;
}
.mt56 {
    margin-top: 56px;
}
.mt64 {
    margin-top: 64px;
}
.mt72 {
    margin-top: 72px;
}
.mt80 {
    margin-top: 80px;
}
.mt88 {
    margin-top: 88px;
}
.mt96 {
    margin-top: 96px;
}
.mt104 {
    margin-top: 104px;
}
.mt112 {
    margin-top: 112px;
}
.mt120 {
    margin-top: 120px;
}
.p32 {
    padding: 0 32px;
}
.p24 {
    padding: 24px;
}
.p0 {
    padding: 0;
}
.pt0 {
    padding-top: 0;
}
.pt8 {
    padding-top: 8px;
}
.pt16 {
    padding-top: 16px;
}
.pt24 {
    padding-top: 24px;
}
.pt32 {
    padding-top: 32px;
}
.pt40 {
    padding-top: 40px;
}
.pt48 {
    padding-top: 48px;
}
.pt64 {
    padding-top: 64px;
}
.pt72 {
    padding-top: 72px;
}
.pt80 {
    padding-top: 80px;
}
.pt88 {
    padding-top: 88px;
}
.pt96 {
    padding-top: 96px;
}
.pt104 {
    padding-top: 104px;
}
.pt112 {
    padding-top: 112px;
}
.pt120 {
    padding-top: 120px;
}
.pt160 {
    padding-top: 160px;
}
.pt180 {
    padding-top: 180px;
}
.pt240 {
    padding-top: 240px;
}
.pb0 {
    padding-bottom: 0;
}
.pb8 {
    padding-bottom: 8px;
}
.pb16 {
    padding-bottom: 16px;
}
.pb24 {
    padding-bottom: 24px;
}
.pb32 {
    padding-bottom: 32px;
}
.pb40 {
    padding-bottom: 40px;
}
.pb48 {
    padding-bottom: 48px;
}
.pb56 {
    padding-bottom: 56px;
}
.pb64 {
    padding-bottom: 64px;
}
.pb72 {
    padding-bottom: 72px;
}
.pb80 {
    padding-bottom: 80px;
}
.pb88 {
    padding-bottom: 88px;
}
.pb96 {
    padding-bottom: 96px;
}
.pb104 {
    padding-bottom: 104px;
}
.pb112 {
    padding-bottom: 112px;
}
.pb120 {
    padding-bottom: 120px;
}
.pb160 {
    padding-bottom: 160px;
}
.pb180 {
    padding-bottom: 180px;
}
.pb240 {
    padding-bottom: 240px;
}
@media all and (max-width: 990px) {
    .mb-s-0 {
        margin-bottom: 0;
    }
    .mb-s-8 {
        margin-bottom: 8px;
    }
    .mb-s-16 {
        margin-bottom: 16px;
    }
    .mb-s-24 {
        margin-bottom: 24px;
    }
    .mb-s-32 {
        margin-bottom: 32px;
    }
    .mb-s-40 {
        margin-bottom: 40px;
    }
    .mb-s-48 {
        margin-bottom: 48px;
    }
    .mb-s-64 {
        margin-bottom: 64px;
    }
    .mb-s-72 {
        margin-bottom: 72px;
    }
    .mb-s-80 {
        margin-bottom: 80px;
    }
    .mb-s-88 {
        margin-bottom: 88px;
    }
    .mb-s-96 {
        margin-bottom: 96px;
    }
    .mb-s-104 {
        margin-bottom: 104px;
    }
    .mb-s-112 {
        margin-bottom: 112px;
    }
    .mb-s-120 {
        margin-bottom: 120px;
    }
}
@media all and (max-width: 768px) {
    .mb-xs-0 {
        margin-bottom: 0;
    }
    .mb-xs-8 {
        margin-bottom: 8px;
    }
    .mb-xs-16 {
        margin-bottom: 16px;
    }
    .mb-xs-24 {
        margin-bottom: 24px;
    }
    .mb-xs-32 {
        margin-bottom: 32px;
    }
    .mb-xs-40 {
        margin-bottom: 40px;
    }
    .mb-xs-48 {
        margin-bottom: 48px;
    }
    .mb-xs-64 {
        margin-bottom: 64px;
    }
    .mb-xs-72 {
        margin-bottom: 72px;
    }
    .mb-xs-80 {
        margin-bottom: 80px;
    }
    .mb-xs-88 {
        margin-bottom: 88px;
    }
    .mb-xs-96 {
        margin-bottom: 96px;
    }
    .mb-xs-104 {
        margin-bottom: 104px;
    }
    .mb-xs-112 {
        margin-bottom: 112px;
    }
    .mb-xs-120 {
        margin-bottom: 120px;
    }
    .mt-xs-0 {
        margin-top: 0 !important;
    }
    .mt-xs-8 {
        margin-top: 8px;
    }
    .mt-xs-16 {
        margin-top: 16px;
    }
    .mt-xs-24 {
        margin-top: 24px;
    }
    .mt-xs-32 {
        margin-top: 32px;
    }
    .mt-xs-40 {
        margin-top: 40px;
    }
    .mt-xs-48 {
        margin-top: 48px;
    }
    .mt-xs-56 {
        margin-top: 56px;
    }
    .mt-xs-64 {
        margin-top: 64px;
    }
    .mt-xs-72 {
        margin-top: 72px;
    }
    .mt-xs-80 {
        margin-top: 80px;
    }
    .mt-xs-88 {
        margin-top: 88px;
    }
    .mt-xs-96 {
        margin-top: 96px;
    }
    .mt-xs-104 {
        margin-top: 104px;
    }
    .mt-xs-112 {
        margin-top: 112px;
    }
    .mt-xs-120 {
        margin-top: 120px;
    }
    .p0-xs {
        padding: 0;
    }
    .pt-xs-0 {
        padding-top: 0;
    }
    .pt-xs-8 {
        padding-top: 8px;
    }
    .pt-xs-16 {
        padding-top: 16px;
    }
    .pt-xs-24 {
        padding-top: 24px;
    }
    .pt-xs-32 {
        padding-top: 32px;
    }
    .pt-xs-40 {
        padding-top: 40px;
    }
    .pt-xs-48 {
        padding-top: 48px;
    }
    .pt-xs-64 {
        padding-top: 64px;
    }
    .pt-xs-72 {
        padding-top: 72px;
    }
    .pt-xs-80 {
        padding-top: 80px;
    }
    .pt-xs-88 {
        padding-top: 88px;
    }
    .pt-xs-96 {
        padding-top: 96px;
    }
    .pt-xs-104 {
        padding-top: 104px;
    }
    .pt-xs-112 {
        padding-top: 112px;
    }
    .pt-xs-120 {
        padding-top: 120px;
    }
    .pt-xs-160 {
        padding-top: 160px;
    }
    .pb-xs-0 {
        padding-bottom: 0;
    }
    .pb-xs-8 {
        padding-bottom: 8px;
    }
    .pb-xs-16 {
        padding-bottom: 16px;
    }
    .pb-xs-24 {
        padding-bottom: 24px;
    }
    .pb-xs-32 {
        padding-bottom: 32px;
    }
    .pb-xs-40 {
        padding-bottom: 40px;
    }
    .pb-xs-48 {
        padding-bottom: 48px;
    }
    .pb-xs-64 {
        padding-bottom: 64px;
    }
    .pb-xs-72 {
        padding-bottom: 72px;
    }
    .pb-xs-80 {
        padding-bottom: 80px;
    }
    .pb-xs-88 {
        padding-bottom: 88px;
    }
    .pb-xs-96 {
        padding-bottom: 96px;
    }
    .pb-xs-104 {
        padding-bottom: 104px;
    }
    .pb-xs-112 {
        padding-bottom: 112px;
    }
    .pb-xs-120 {
        padding-bottom: 120px;
    }
}


.faq .fa {
    font-size: 80px;
    color: #5fb5aa;
}

@media all and (max-width: 460px) {
    .faq .fa {
        font-size: 50px;
    }
}

.eact-logo {
    max-height: 37px;
}

.red {color: red;}