::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}
::selection {
    background: #b3d4fc;
    text-shadow: none;
}


html {
    background-color: #222;
}
body {
    background-color: #fff;
    opacity: 0;
    -webkit-transition: opacity .2s ease-in-out;
       -moz-transition: opacity .2s ease-in-out;
         -o-transition: opacity .2s ease-in-out;
            transition: opacity .2s ease-in-out;
}
.no-js body,
.wf-active body,
.wf-inactive body {
    opacity: 1;
}


header {
    position: relative;
    z-index: 5;
    color: #fff;
    background-color: #222;

  -webkit-box-shadow: 1px 0px 5px 0px rgba(0,0,0,0.5);
          box-shadow: 1px 0px 5px 0px rgba(0,0,0,0.5);

}
header .logo.moduletable {
    position: absolute;
}
header .logo p {
    margin: 18px 0 0;
}
header .logo a {
    display: block;
    width: 300px;
    max-width: 100%;
    height: 92px;
    background: url('../img/logo.png') center no-repeat;
}
header .search.moduletable {
    position: relative;
    float: right;
    margin-top: 10px;
}
header .search input {
    border: 0;
    border-radius: 30px;
    padding-left: 10px;
    padding-right: 35px;
    line-height: 20px;
}
header .search .btn {
    position: absolute;
    right: 5px;
    padding: 0;
    line-height: 28px;
    text-transform: uppercase;
    color: #222;
    background: none;
}
header .main-menu {
    clear: right;
    float: right;
    margin-top: 55px;
}
header .main-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
header .main-menu li {
    position: relative;
    float: left;
}
header .main-menu button,
header .main-menu a {
    display: block;
    padding: 10px 15px;
    border: 0;
    font-size: 14px;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff;
    background: none;
    -webkit-transition: color .2s ease-in-out, background-color .2s ease-in-out;
       -moz-transition: color .2s ease-in-out, background-color .2s ease-in-out;
         -o-transition: color .2s ease-in-out, background-color .2s ease-in-out;
            transition: color .2s ease-in-out, background-color .2s ease-in-out;
}
header .main-menu button:hover,
header .main-menu button:focus,
header .main-menu a:hover,
header .main-menu a:focus,
header .main-menu .open > a,
header .main-menu .open > a:hover,
header .main-menu .open > a:focus {
    background-color: #888888;
}
header .main-menu button {
    display: none;
}
header .main-menu ul ul {
    position: absolute;
    top: 100%;
    left: -9999px;
    width: 200px;
    background-color: rgba(34,34,34,.75);
}
header .main-menu ul li:hover ul {
    left: 0;
}
header .main-menu ul li:last-child:hover ul {
    left: auto;
    right: 0;
}
header .main-menu ul ul li {
    position: static;
    float: none;
}
header .main-menu ul ul a {
    font-size: 1rem;
}
@media (max-width: 991px) {
    header {
        height: auto;
    }
    header .logo.moduletable {
        position: static;
        margin: 0 auto;
        width: 300px;
    }
    header .search.moduletable {
        width: calc(100% - 80px);
    }
    header .search input {
        width: 100%;
    }
    header .main-menu.moduletable {
        float: left;
        clear: none;
        margin-top: 0;
    }
    header .main-menu button {
        display: block;
        width: 70px;
        margin-top: 5px;
        text-align: center;
    }
    header .main-menu.open button {
        background-color: #ba6592;
    }
    header .main-menu ul {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: rgba(34,34,34,.75);
    }
    header .main-menu.open ul {
        display: block;
    }
    header .main-menu li {
        position: relative;
        float: none;
    }
    header .main-menu li.parent > a {
        margin-right: 37px;
    }
    header .main-menu li.parent:before {
        content: "+";
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        width: 37px;
        height: 37px;
        text-align: center;
        line-height: 37px;
        cursor: pointer;
    }
    header .main-menu li.parent.open:before {
        content: "−";
    }
    header .main-menu .open > a {
        background: none;
    }
    header .main-menu ul ul,
    header .main-menu.open ul ul {
        position: static;
        display: none;
        width: auto;
        background: none;
    }
    header .main-menu ul .open ul,
    header .main-menu.open ul .open ul {
        display: block;
    }
    header .main-menu ul ul a {
        padding-left: 20px;
    }
}


.homepage-flex-viewport {
    width: 100%;
}
.homepage-slideshow .slides > li {
    background-position: center;
    background-repeat: no-repeat;
    background-color: #fff;
}
.homepage-slideshow.layout-fullimage .slides > li {
    /*background-size: cover;*/
}
.homepage-slideshow .slide-link {
    display: block;
}
.homepage-slideshow .container {
    position: relative;
    height: 400px;
}
.homepage-slideshow.layout-default .container:before,
.homepage-slideshow.layout-default .container:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    display: block;
    width: 100px;
    background-color: #000;
}
.homepage-slideshow.layout-default .container:before {
    left: 0;
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(225,225,225,1)), color-stop(100%, rgba(225,225,225,0)));
    background: -webkit-linear-gradient(left, rgba(225,225,225,1) 0%, rgba(225,225,225,0) 100%);
    background:    -moz-linear-gradient(left, rgba(225,225,225,1) 0%, rgba(225,225,225,0) 100%);
    background:     -ms-linear-gradient(left, rgba(225,225,225,1) 0%, rgba(225,225,225,0) 100%);
    background:      -o-linear-gradient(left, rgba(225,225,225,1) 0%, rgba(225,225,225,0) 100%);
    background:     linear-gradient(to right, rgba(225,225,225,1) 0%, rgba(225,225,225,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00000000',GradientType=1 );
}
.homepage-slideshow.layout-default .container:after {
    right: 0;
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(225,225,225,0)), color-stop(100%, rgba(225,225,225,1)));
    background: -webkit-linear-gradient(left, rgba(225,225,225,0) 0%, rgba(225,225,225,1) 100%);
    background:    -moz-linear-gradient(left, rgba(225,225,225,0) 0%, rgba(225,225,225,1) 100%);
    background:     -ms-linear-gradient(left, rgba(225,225,225,0) 0%, rgba(225,225,225,1) 100%);
    background:      -o-linear-gradient(left, rgba(225,225,225,0) 0%, rgba(225,225,225,1) 100%);
    background:     linear-gradient(to right, rgba(225,225,225,0) 0%, rgba(225,225,225,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#000000', GradientType=1);
}
.homepage-slideshow .slide-description {
    position: absolute;
    right: 0;
    bottom: 20px;
    z-index: 5;
    padding: 20px;
    color: #fff;
    background-color: rgba(34,34,34,.75);
}
.homepage-slideshow .slide-description :first-child {
    margin-top: 0;
}
.homepage-slideshow .slide-description :last-child {
    margin-bottom: 0;
}
.homepage-slideshow.e2slideshow {
    position: relative;
}
.homepage-flex-direction-nav {
    margin: 0;
    padding: 0;
    list-style: none;
}
.homepage-flex-direction-nav a {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100px;
    text-align: center;
    font-size: 3.5rem;
    line-height: 400px;
    text-decoration: none;
    color: #fff;
    background-color: rgba(34,34,34,.75);
    opacity: 0;
    -webkit-transition: opacity .2s ease-in-out;
       -moz-transition: opacity .2s ease-in-out;
         -o-transition: opacity .2s ease-in-out;
            transition: opacity .2s ease-in-out;
}
.homepage-flex-direction-nav a span {
    display:block;
    transform: scale(0.8, 1.5);
}

.homepage-slideshow:hover .homepage-flex-direction-nav a {
    opacity: .5;
}
.homepage-slideshow .homepage-flex-direction-nav a:hover {
    opacity: 1;
}
.homepage-flex-prev { left: 0; }
.homepage-flex-next { right: 0; }
.homepage-slideshow {    background:#fff;
}
.homepage-slideshow .image-wrap {
    position: relative;
    text-align: center;
    max-width: 1534px;
     margin: 0 auto;
}
.homepage-slideshow .image-wrap:before,
.homepage-slideshow .image-wrap:after { 
    width: 307px;
    position: absolute;
    content: ' ';
    display: block;
    top: 0;
    bottom: 0;
}
.homepage-slideshow .image-wrap:before { 
    left: 0;
    background-color: #fff;
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255,255,255,1)), color-stop(100%, rgba(255,255,255,0)));
    background: -webkit-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    background:    -moz-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    background:     -ms-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    background:      -o-linear-gradient(left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    background:     linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff00',GradientType=1 );

}
.homepage-slideshow .image-wrap:after { 
    right: 0;
    background-color: #fff;
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255,255,255,0)), color-stop(100%, rgba(255,255,255,1)));
    background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
    background:    -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
    background:     -ms-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
    background:      -o-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
    background:     linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff00',GradientType=1 );

}
.homepage-slideshow .image-wrap img {
}
.homepage-flex-control-nav {width: 100%; position: absolute; bottom: 0px; text-align: center; margin: 0; padding: 0;}
.homepage-flex-control-nav li {margin: 0 3px; display: inline-block; zoom: 1; *display: inline;}
.homepage-flex-control-paging li a {width: 6px; height: 6px; display: block; background: #ccc; background: rgba(255,255,255,0.5); cursor: pointer; text-indent: -9999px; -webkit-border-radius: 20px; -moz-border-radius: 20px; -o-border-radius: 20px; border-radius: 20px; -webkit-box-shadow: 0 0 6px rgba(0,0,0,0.3); -moz-box-shadow: 0 0 6px rgba(0,0,0,0.3); -o-box-shadow: 0 0 6px rgba(0,0,0,0.3); box-shadow: 0 0 6px rgba(0,0,0,0.3); }
.homepage-flex-control-paging li a:hover { background: #eee; background: rgba(255,255,255,0.7); }
.homepage-flex-control-paging li a.homepage-flex-active { background: #fff; background: rgba(255,255,255,0.9); cursor: default; }

body > .container {
    padding-top: 40px;
}
@media (max-width: 991px) {
    body > .container {
        padding-top: 40px;
    }
    .main {
        margin-bottom: 40px;
    }
}


.breadcrumbs {
    color: #999;
}
.breadcrumbs ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.breadcrumbs li {
    float: left;
}
.breadcrumbs a {
    color: #999;
}
.breadcrumbs .divider {
    padding: 0 8px;
}
.breadcrumbs .active span {
    color: #222;
}


.cta.moduletable {
    padding: 10px;
    background-color: #ccc;
}
.cta.moduletable :first-child {
    margin-top: 0;
}
.cta.moduletable :last-child {
    margin-bottom: 0;
}
.e2articles h4 {
    margin-bottom: 0;
}
.e2articles h4 + p {
    margin-top: 5px;
}

.sidebar-right h3 {
    margin-top: 70px;
}
/*.item-page p:first-child {
    font-size: 1.3rem;
}
*/

ul.mt_listings {
    padding: 0;
    list-style: none;
}


label[for] {
    cursor: pointer;
}
input,
select,
textarea,
.ccms_form_element input,
.ccms_form_element select,
.ccms_form_element textarea {
    padding: 4px;
    border: solid 1px #ccc;
    -webkit-transition: border-color .2s ease-in-out, -webkit-box-shadow .2s ease-in-out, box-shadow .2s ease-in-out;
       -moz-transition: border-color .2s ease-in-out, -moz-box-shadow .2s ease-in-out, box-shadow .2s ease-in-out;
         -o-transition: border-color .2s ease-in-out, box-shadow .2s ease-in-out;
            transition: border-color .2s ease-in-out, box-shadow .2s ease-in-out;
}
input:focus,
select:focus,
textarea:focus,
.ccms_form_element input:focus,
.ccms_form_element select:focus,
.ccms_form_element textarea:focus {
    border-color: #222;
    box-shadow: 0 0 3px rgba(0,0,0,.5);
}
textarea,
.ccms_form_element textarea {
    height: 200px;
}


.ccms_form_element {
    margin: 0;
    padding: 0;
}
.ccms_form_element + .ccms_form_element {
    margin-top: 5px;
}
.ccms_form_element.cfdiv_checkbox {
    margin-top: 10px;
    margin-bottom: 10px;
}
.ccms_form_element.cfdiv_submit {
    margin-top: 20px;
    margin-left: 150px;
}
.ccms_form_element label,
.ccms_form_element input,
.ccms_form_element select,
.ccms_form_element textarea,
.ccms_form_element input[type="file"] {
    margin: 0;
}
.ccms_form_element input[type="checkbox"],
.ccms_form_element input[type="radio"] {
    margin: 0 5px 0 0;
}
.ccms_form_element label {
    padding: 5px 10px 5px 0;
}
.ccms_form_element.cfdiv_checkboxgroup div label,
.ccms_form_element .full_label {
    padding: 0;
}
.ccms_form_element.cfdiv_checkboxgroup > div {
    padding-top: 5px;
}
.latest-news.moduletable {
    padding-left: 70px;
}
.latest-news.category-module {

    margin: 0; padding: 0; list-style: none;
}
.latest-news li {
    padding-bottom: 20px;
}
.latest-news h3 {
    border-bottom: 1px solid rgb(221, 221, 221);
    margin-bottom: 15px;
}
.latest-news .item-image {
    float: none !important;
}
.latest-news h4 {
    margin: 0;
}
.latest-news h4 a {
    color: #666;
    text-decoration: none;
}
.latest-news .mod-articles-category-introtext {
    margin: 0;
}
.latest-news .mod-articles-category-date {
    font-size: 12px; 
    color: #666;
}
.latest-news .mod-articles-category-introtext {
    font-size: 12px;
}

/* Blog Layout */ 
.blog {

}
.blog h2 { 
margin: 0 0 10px;
}
.blog h2 a {
    color: #666;
    text-decoration: none;
}
.blog .pull-left {
    padding-right: 20px;
}
.blog .items-row  { padding-bottom: 40px;}

footer {
    margin-top: 100px;
    padding-top: 20px;
    color: #fff;
    background-color: #222;
}
footer p {
    font-size: .9rem;
}
footer a,
footer a:hover,
footer a:focus {
    color: #fff;
}


.ir { font: ~"0/0" a; color: transparent !important; text-shadow: none; background-color: transparent; border: 0; }


@media print {
}
