﻿/* Colours */
/*
    Grey: #8E908E; rgba(142,144,142,1);
    Light Grey: #E0E2E2; rgba(224,226,226,1);
    Body: #909090;

    ### Font-Sizes ###
    16px: 1em
    17px: 1.0625em;
    18px: 1.125em;
    19px: 1.1825em;
    20px: 1.25em;
    21px: 1.3125em;
    22px: 1.375em;
    23px: 1.4375em;
    24px: 1.5em;
    25px: 1.5625em;
    26px: 1.625em;
    27px: 1.6875em;
    28px: 1.75em;
    29px: 1.8125em;
    30px: 1.875em;
*/

/* ########################################################################################################################################### */
/* General */

body { background-color: #8E908E; color: #909090; font-family: 'Lato', sans-serif; }

.row.grey { background-color: #E0E2E2; }

.container {  }
.container.no-back {  }

.sidebar { padding-top: 10px; }

/* Links */
a { color: #8E908E; text-decoration: none; }
a:hover { color: #8C8F8F; }

/* Buttons */
.button, .button:link, .button:visited { background-color: rgba(142,144,142,1); border: none; color: #FFF; cursor: pointer; display: inline-block; font-family: 'Oxygen' sans-serif; font-size: 1em; font-weight: 300; letter-spacing: 0.15em; min-height: 13px; padding: 10px 15px; text-decoration: none; text-transform: uppercase; transition: all 0.2s linear; }
.button:hover, .button:active { background-color: rgba(140,143,143,1); }

/* Headings */
h1, h2, h3, h4, h5, h6, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: #8E908E; font-family: 'Oxygen', sans-serif; font-weight: 300; }
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover { color: #8C8F8F; }

h1 { font-size: 2em; font-weight: 300; letter-spacing: 0.15em; text-transform: uppercase; }

/* ########################################################################################################################################### */
/* Header */

.header-wrapper { background-color: #E0E2E2; position: relative; z-index: 1; }
.header-wrapper-mobile { background-color: rgba(224,226,226,0.7); display: none; height: 60px; left: 0; position: fixed; top: 0; width: 100%; z-index: 100; }

.header-mobile-topper { background-color: #FFF; display: none; height: 60px; width: 100%; }

header { }

/* Logos */
header .logo { display: block; float: left; padding: 0; }
header .logo img { height: 90px; }

.header-wrapper-mobile header .logo { padding: 5px 0; }
.header-wrapper-mobile header .logo img { height: 50px;  }

/* Social Media */
header ul.social-media { float: right; list-style: none; margin: 15px 0; padding: 0; }
header ul.social-media li { float: left; margin: 0 7px 7px; padding: 0; }
header ul.social-media li .fa { font-size: 1.25em; }

/* Main Navigation */
header:not(.mmenu) nav.main-nav-column { bottom: 0; padding: 0; position: absolute; right: 15px; }
header:not(.mmenu) ul.main-nav { list-style: none; margin: 0; }
header:not(.mmenu) ul.main-nav:after { clear: both; content: ''; display: table; }
header:not(.mmenu) ul.main-nav > li { display: block; float: left; position: relative; }
header:not(.mmenu) ul.main-nav > li:after { clear: both; content: ''; display: table;  }
header:not(.mmenu) ul.main-nav > li > a { color: #8E908E; display: block; font-family: 'Oxygen', sans-serif; font-weight: 300; letter-spacing: 0.15em; line-height: 50px; padding: 0 20px 0 25px; text-align: center; text-transform: uppercase; }
header:not(.mmenu) ul.main-nav > li:hover > a, header:not(.mmenu) ul.main-nav > li.selected > a { background-color: #8E908E; color: #FFF; }

/* Sub Menu */
header:not(.mmenu) ul.main-nav > li > ul.main-sub-menu { box-shadow: rgba(0,0,0,0.3) 3px 3px 5px; display: none; padding: 0; right: 0; position: absolute; top: 100%; width: 250px; z-index: 100; }
header:not(.mmenu) ul.main-nav > li:hover > ul.main-sub-menu { display: block; }

header:not(.mmenu) ul.main-sub-menu:after { clear: both; content: ''; display: table; }

header:not(.mmenu) ul.main-sub-menu > li > a { background-color: rgba(142,144,142,0.7); color: #FFF; display: inline-block; font-size: 1.25em; font-weight: bold; line-height: 50px; padding: 0 20px; text-align: right; width: 100%; }
header:not(.mmenu) ul.main-sub-menu > li:hover > a, header:not(.mmenu) ul.main-sub-menu > li.selected > a { background-color: rgba(140,143,143,0.7); }

/* Mobile and MMenu */
header.mmenu { display: none; }
header .main-nav-btn { cursor: pointer; display: none; float: left; height: 60px; margin: 0; padding: 18px 10px; text-indent: -9999px; width: 60px; z-index: 2; }
header .main-nav-btn a { display: block; height: 1px; padding: 0; position: relative; text-indent: -9999px; width: 100%; z-index: 2; }
header .main-nav-btn a:before, header .main-nav-btn a:after, header .main-nav-btn a span { background: none repeat scroll 0 0 #8E908E; content: ""; display: block; height: 4px; left: 0; position: absolute; transition-delay: 0.5s; transition-duration: 0.5s; transition-property: transform, top, bottom, left, opacity; transition-timing-function: ease; width: 40px; }
header .main-nav-btn a:before { top: 0; }
header .main-nav-btn a:after { top: 20px; }
header .main-nav-btn a span { text-indent: -9999px; top: 10px; }
html.mm-opening header .main-nav-btn a:before, html.mm-opening header .main-nav-btn a:after { top: 10px; }
html.mm-opening header .main-nav-btn a span { left: -50px; opacity: 0; }
html.mm-opening header .main-nav-btn a:before { transform: rotate(45deg); }
html.mm-opening header .main-nav-btn a:after { transform: rotate(-45deg); }

/*header.mmenu ul.main-nav li { float: none; width: 100%; }
header.mmenu ul.main-nav li a { border-bottom: 1px solid #8E908E; line-height: 45px; text-align: left; }

header.mmenu ul.main-sub-menu > li > a { padding: 0 20px; text-align: left; }*/

/* MMenu Override */
.mm-menu { background-color: #FFF; border-color: rgba(142,144,142,0.4); }
.mm-menu .mm-listview { border-color: rgba(142,144,142,0.4); }
.mm-menu .mm-navbar > *, .mm-menu .mm-navbar a { color: #8E908E; }
.mm-panels > .mm-panel { padding: 0px }

.mm-listview > li:not(.mm-divider):after { left: 0; }
.mm-listview > li > a, .mm-listview > li > span { padding: 10px 20px; }

.mm-panels > .mm-panel > .mm-listview { margin: 20px 0; }

/* Header End */

/* ########################################################################################################################################### */
/* Footer */

footer { color: #FFF; padding: 50px 0; position: relative; z-index: 10; }
footer .container { background-color: transparent; }

footer h3, footer h4, footer h5, footer h6, footer h3 a, footer h4 a, footer h5 a, footer h6 a { color: #FFF; }

footer a { color: #FFF; font-weight: bold; }
footer a:hover { color: #8C8F8F; }

footer i { color: #FFF; }

footer ul {  }
footer ul li {  }

footer ul.social-media { list-style: none; margin: 0 0 15px; padding: 0; }
footer ul.social-media li { float: left; margin: 0 7px 7px; padding: 0; }
footer ul.social-media li .fa { font-size: 1.5em; }

footer .copyright { display: inline-block; float: left; font-size: 0.75em; padding-bottom: 15px; }
footer .website-by { display: inline-block; float: right; font-size: 0.75em; padding-bottom: 15px; }
footer .website-by .bigthink { color: #8E61DE; font-size: 1em; font-weight: bold; }

/* ########################################################################################################################################### */
/* Homepage */

/* Content */
.home-content { padding: 0 50px; text-align: center; }

.home-content h1 { display: inline-block; }
.home-content h1:after { border-bottom: 1px solid #8E908E; content: ''; display: block; margin: 0 10%; padding: 7px 0 3px; width: 80%; }

/* ########################################################################################################################################### */
/* Flexslider */
.flexslider { height: 500px; height: 100vh; margin-top: -90px; padding: 90px 0 0 ; position: relative; z-index: 0; }

.flexslider .flex-viewport { height: 100%; }

.flexslider .slides { height: 100%; }
.flexslider .slides:after { clear: both; content: ''; display: table; }

.flexslider .slider-image { height: 100%; overflow: hidden; position: relative; }
.flexslider .slider-image .slide-caption-wrapper { bottom: 50%; left: 15px; max-width: 100%; padding: 15px 20px; position: absolute; width: 100%; }
.flexslider .slider-image .slide-caption { background-color: rgba(142,144,142, 0.8); color: #FFF; display: inline-block; font-family: 'Oxygen', sans-serif; font-size: 3em; font-weight: 300; max-width: 100%; padding: 15px 20px; }

.flexslider .slider-image img { height: 100%; padding: 0 0 0 100%; width: 100%; }

/* Controls */
.flexslider .flex-direction-nav { list-style: none; margin: 0; padding: 0; }
.flexslider .flex-direction-nav li { list-style: none; margin: 0; padding: 0; }
.flexslider .flex-direction-nav li a { color: #8E908E; display: block; font-size: 2.5em; height: 100%; position: absolute; text-align: center; transition: color 0.2s linear; top: 0; width: 55px; }
.flexslider .flex-direction-nav li a:before { display: block; position: relative; top: 50%; transform: translateY(-50%); } /* Use this if you are using font-awesome */
.flexslider .flex-direction-nav li a:hover { color: #8C8F8F; }

.flexslider .flex-direction-nav li a.flex-prev { left: 0px; }
.flexslider .flex-direction-nav li a.flex-next { right: 0px; }

/* FS Inner Override */
.flexslider.fs-inner { height: auto; margin-top: 0; padding: 0; }
.flexslider.fs-inner .slider-image img { height: auto; padding: 0; }

/* ########################################################################################################################################### */
/* Page */

.page-wrapper { background-color: #8E908E; box-shadow: rgba(0,0,0,0.3) -5px 0px 15px; }
.page-wrapper .page {  }

.hero-image { padding-bottom: 15px; }

/* Text Content */
.text-content:after { clear: both; content: ''; display: table; }
.text-content img, .text-content img.right { float: right; margin: 5px 0 20px 20px; }
.text-content img.left { float: left; margin: 5px 20px 20px 0px }
.text-content ul{  columns: 2; -webkit-columns: 2; -moz-columns: 2; list-style: none; font-weight: 700; }

/* Sub Menu */
nav.sub-menu { margin-bottom: 30px; }

nav.sub-menu ul, nav.sub-menu ul li { list-style: none; margin: 0; padding: 0; }

nav.sub-menu li a { color: #FFF; display: block; }
nav.sub-menu li a.selected, nav.sub-menu li a:hover { background-color: #8C8F8F; }

.level-two-menu > li > a { background-color: rgba(142,144,142,1); margin-bottom: 1px; padding: 10px 15px; }
.level-three-menu > li > a { background-color: rgba(142,144,142,0.7); padding: 10px 15px 10px 30px; }

/* ########################################################################################################################################### */
/* Forms */

.form-item.no-bottom { margin: 10px 0 0 0; }

.form-item .basic-label { color: #8E908E; font-weight: bold; padding-right: 30px; width: 50%; }
.form-item .basic-control { background-color: transparent; border: 1px solid rgba(142,144,142,0.7); color: #000; padding: 10px; width: 50%; }
.form-item .basic-control:hover, .form-item .basic-control:focus { border: 1px solid rgba(78,192,206,1); }
.form-item .required { float: left; font-weight: bold; margin-left: 50%; }

.form-item .radio-label { width: auto; }
.form-item .check-label { padding: 0 30px 0 0; }

/* File Upload */
.form-item .file-upload-wrapper { float: right; overflow: hidden; position: relative; width: 50%; }
.form-item .file-upload-wrapper .file-upload-text { background-color: transparent; border: 1px solid #990000; color: #FFF; overflow: hidden; padding: 10px; width: 100%; }
.form-item .file-upload-wrapper .file-upload-button { height: 100%; position: absolute; right: 0; top: 0; overflow: hidden; width: 100%; }
.form-item .file-upload-wrapper .file-upload-button span.button { border-left: none; height: 100%; padding: 7px 15px 0; position: absolute; right: 0; top: 0; }
.form-item .file-upload-wrapper .file-upload-button input.upload { cursor: pointer; filter: alpha(opacity=0); font-size: 20px; margin: 0; opacity: 0; padding: 0; position: absolute; right: 0; top: 0; width: 100%; }

/* Overrides */
.form-item.large .basic-label { width: 30%; }
.form-item.large .basic-control { width: 70%; }
.form-item.large .required { margin-left: 30%; }

.form-item.full .basic-label { margin-bottom: 10px; width: 100%; }
.form-item.full .basic-control { margin-bottom: 10px; width: 100%; }
.form-item.full .required { margin-bottom: 10px; margin-left: 0%; }
.form-item.full .file-upload-wrapper { width: 100%; }

.form-item.short .basic-label { text-align: left; width: 70% }
.form-item.short .basic-control { width: 30%; }
.form-item.short .required { margin-left: 70%; }

/* Select Input */
.select-wrapper { background-color: #FFF; border: none; border-radius: 5px; overflow: hidden; position: relative; width: 100%; }

.select-wrapper .select-icon { background-color: #E1E1E1; border-width: 1px 0 1px 1px; height: 100%; pointer-events: none; position: absolute; right: 0; top: 0; transition: all 0.2s linear; width: 33px; z-index: 1; }
.select-wrapper .select-icon > .one { width: 0; height: 0; border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 8px solid rgba(142,144,142,0.7); left: 50%; margin: -10px 0 0 -8px; position: absolute; top: 50%; transition: all 0.2s linear; }
.select-wrapper .select-icon > .two { width: 0; height: 0; border-left: 8px solid transparent; border-right: 8px solid transparent; border-top: 8px solid rgba(142,144,142,0.7); left: 50%; margin: 2px 0 0 -8px; position: absolute; top: 50%; transition: all 0.2s linear; }

.select-wrapper:hover .select-icon > .one { border-bottom: 8px solid rgba(78,192,206,1); }
.select-wrapper:hover .select-icon > .two { border-top: 8px solid rgba(78,192,206,1); }

.select-wrapper .select { -webkit-appearance: none; background: transparent; border: 0; border-radius: 0; color: #909090; cursor: pointer; font-size: 1.1825em; font-style: italic; height: 50px; line-height: 50px; outline: none; padding: 0 10px; position: relative; width: 120%; }
.select-wrapper .select option { background-color: #FFF; }

/* ########################################################################################################################################### */
/* Generic Table */
table:not([class]) { border: none; color: #333; margin-bottom: 30px; width: 100%; }
table:not([class]) tr:first-child th, table:not([class]) tr:first-child td { background-color: none; border: 1px solid #909090; color: #000; font-size: 0.9em; font-weight: bold; }
table:not([class]) th, table:not([class]) td { border-left: 1px solid #909090; padding: 7px 10px; text-align: left; }
table:not([class]) th:first-child, table:not([class]) td:first-child { border-left: none; }

/* ########################################################################################################################################### */
/* Accordion */
.accordion { margin: 0 0 40px; }
.accordion:after { clear: both; content: ""; display: table; }
.accordion .accordion-header { position: relative; outline: none; }
.accordion .accordion-header h3 { background-color: #4A5964; color: #FFF; cursor: pointer; font-size: 1.375em; height: 50px; margin: 5px 0 0; padding: 0 50px; transition: background 0.2s linear, color 0.2s linear; }
.accordion .accordion-header h3 span { display: block; position: relative; top: 50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.accordion .accordion-header .icon { color: #FFF; font-size: 1.125em; margin: -8px 0 0; position: absolute; left: 20px; top: 50%; width: 17px; }
.accordion .accordion-header .arrow { color: #FFF; font-size: 1.75em; margin: -10px 0 0; position: absolute; right: 20px; top: 50%; width: 25px;
                                    -ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); transform: rotate(0deg);
                                    -ms-transform-origin: 50% 50%; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%;
                                    -webkit-transition: 0.2s ease-in-out; -moz-transition: 0.2s ease-in-out; transition: 0.2s ease-in-out; }

.accordion .accordion-header.ui-state-active h3, .accordion .accordion-header:hover h3 { background-color: #FF9543; }
.accordion .accordion-header.ui-state-active .arrow, .accordion .accordion-header:hover .arrow { -ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg); }

.accordion .accordion-content { display: none; padding: 20px 0; }
.accordion .accordion-content:after { clear: both; content: ""; display: table; }
.accordion .accordion-content .accordion-content-wrapper { float: left; padding: 0 0 0 30px; width: 70%; }

/* ########################################################################################################################################### */
/* Page Documents */
ul.documents { list-style: none; margin: 0; padding: 0; }
ul.documents li { clear: both; list-style: none; margin: 0; padding: 0 0 20px 0; }
ul.documents li a { display: block; font-size: 1.5em; }
ul.documents li a > span { background-color: #900000; color: #FFF; display: inline-block; float: right; font-size: 0.7em; margin: 0 4px 0 0; padding: 5px 50px 5px 20px; position: relative; transition: background-color 0.2s linear; }
ul.documents li a:hover > span { background-color: #B50003; }
ul.documents li a > span > span { background: transparent url('/images/layout/download.png') no-repeat; bottom: 0; display: inline-block; float: right; height: 34px; position: absolute; right: -4px; width: 37px; }
ul.documents li a .updated { color: #FFF; font-size: 0.7em; }

ul.documents.lines li { border-top: 1px solid rgba(255,255,255,0.4); padding: 20px 0 30px; }

/* ########################################################################################################################################### */
/* Carousel Items */

/* Defaults */
.slick-carousel { clear: both; }
.slick-carousel-wrapper { position: relative; }
.slick-list { clear: both; overflow: hidden; position: relative; }
.slick-track:after { clear: both; content: ''; display: table; }
.carousel-item { float: left; width: 33%; }

.slick-control.fa { background-color: #D4D6D5; color: #8E908E; cursor: pointer; font-size: 2em; line-height: 70px; position: absolute; text-align: center; transition: color 0.2s linear; width: 50px; }
.slick-control:hover { color: #8C8F8F; }
.slick-prev.fa { left: -50px; top: 50%; transform: translateY(-50%); }
.slick-next.fa { right: -50px; top: 50%; transform: translateY(-50%); }

/* Homepage CTAs */
.homepage-carousel { margin: 0; padding: 10px 50px 0; }
.homepage-carousel .carousel-item { margin: 0 0 30px; padding: 0 15px 60px; position: relative; text-align: center; }
.homepage-carousel .carousel-item h3 { border-bottom: 1px solid #C6CED9; color: #8E908E; display: inline-block; font-size: 1.5em; margin: 15px 0 20px; padding: 0 0 20px; }
.homepage-carousel .carousel-item .carousel-image { height: 200px; position: relative; }
.homepage-carousel .carousel-item img { left: 50%; max-height: 100%; max-width: 100%; padding: 0; position: absolute; top: 50%; transform: translate(-50%,-50%); }
.homepage-carousel .carousel-item .button { bottom: 0; left: 50%; position: absolute; margin-right: -50%; transform: translateX(-50%); }

/* ########################################################################################################################################### */
/* News Pages */

.news-list { display: inline-block; width: 100%; }
.news-item:after { clear: both; content: ''; display: table; }
.news-item h3 { margin: 20px 0 5px; }
.news-item .published-date { font-style: italic; font-weight: normal; margin: 0 0 15px; }
.news-item .image { float: right; margin: 5px 0 20px 20px;  }

.news-page h1 { margin: 0 0 15px; }
.news-page .published-date { font-size: 0.9em; margin: 0 0 15px; }

.archive-list { padding: 0 0 30px; }
.archive-list ul li { padding: 0 0 10px; }

.news-item-footer { margin: 0 0 30px; }
.news-item-footer:after { clear: both; content: ''; display: table; }
.news-item-footer .image { border-radius: 50%; float: left; margin: 0 5% 5% 0; width: 20%; }
.news-item-footer .news-wrapper { float: left; width: 75%; }

.news-item-footer h3 { margin: 0 0 15px; }
.news-item-footer h3 a { color: #FFF; font-size: 0.9em; font-weight: bold; text-decoration: none; }
.news-item-footer .published-date { color: #FFF; font-size: 0.9em; font-style: italic; font-weight: normal; margin: 0 0 15px; }


/* ########################################################################################################################################### */
/* Contact Page */

.google-map { margin-bottom: 30px; }

.contact-information { margin-bottom: 30px; }
.contact-information i { color: #8E908E; }


/* ########################################################################################################################################### */
/* Page Lists */

.page-list { }
.page-list:after { clear: both; content: ''; display: table; }

.page-list .page-list-item:after { clear: both; content: ''; display: table; }

/* Full List */
.page-list.full-list .page-list-item { margin: 0 0 30px 0; width: 100%; }
.page-list.full-list .page-list-item .list-image { display: block; float: left; padding: 0 2% 0 0; width: 33%; }
.page-list.full-list .page-list-item .list-content { display: block; float: left; padding: 0 0 0 2%; width: 67%; }
.page-list.full-list .page-list-item .list-content p:last-child { margin-bottom: 0; }