/* CONTENTS

~1. RESET
~2. COLOURS
~3. TYPOGRAPHY
~4. LAYOUT
~5. HEADER & FOOTER
~6. COMMON ELEMENTS
~7. CLASSES AND IDs
~8. FORMS
~9. PAGE STYLING


 END CONTENTS */

/* ~1. RESET */
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline
}
/* END ~1. RESET */

/* ~2. COLOURS */

.red {
    color:#c00000;
}

.background-red {
    background:#c00000;
}

.grey {
    color:#383838;
}

.background-grey {
    background:#383838;
}


/* END ~2. COLOURS */

/* ~3. TYPOGRAPHY */

/* Available font-stacks:
font-family: 'Maven Pro', sans-serif;
*/

body {
    font-family: 'Maven Pro', sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 27px;
    color: #363636;
    font-weight:500;
}

.tleft {text-align:left;}

.tright {text-align: right;}

.tcenter {text-align: center;}

strong, b {font-weight: 700;} /* change as needed */

u {text-decoration: underline;}

/* ~3. END TYPOGRAPHY */

/* ~4. LAYOUT */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

* {
    border-radiud: 0;
    -moz-border-radiud: 0;
    -webkit-border-radius: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

html {
    overflow-y: scroll;
    height: 100%;
    width: 100%;
}

.clear {
    clear: both;
}

#wrapper {
    float: left;
    width: 100%;
}

.container {
    overflow: auto;
    width: 1200px;
    height: 100%;
    margin: 0 auto;
    padding: 10px 20px;
}

.col1-12 {
    width: 8.333%;
    width: calc(100% / 12);
    width: -webkit-calc(100% / 12);
    width: -moz-calc(100% / 12);
    padding: 0 10px;
}

.col2-12 {
    width: 16.666%;
    width: calc(100% / 12 * 2);
    width: -webkit-calc(100% / 12 * 2);
    width: -moz-calc(100% / 12 * 2);
    padding: 0 10px;
}

.col3-12 {
    width: 24.999%;
    width: calc(100% / 12 * 3);
    width: -webkit-calc(100% / 12 * 3 - 1px);
    width: -moz-calc(100% / 12 * 3);
    padding: 0 10px;
}

.col4-12 {
    width: 33.333%;
    width: calc(100% / 12 * 4);
    width: -webkit-calc(100% / 12 * 4);
    width: -moz-calc(100% / 12 * 4);
    padding: 0 10px;
}

.col5-12 {
    width: 41.666%;
    width: calc(100% / 12 * 5);
    width: -webkit-calc(100% / 12 * 5);
    width: -moz-calc(100% / 12 * 5);
    padding: 0 10px;
}

.col6-12 {
    width: 49.999%;
    width: calc(100% / 12 * 6);
    width: -webkit-calc(100% / 12 * 6);
    width: -moz-calc(100% / 12 * 6);
    padding: 0 10px;
}

.col7-12 {
    width: 58.333%;
    width: calc(100% / 12 * 7);
    width: -webkit-calc(100% / 12 * 7);
    width: -moz-calc(100% / 12 * 7);
    padding: 0 10px;
}

.col8-12 {
    width: 66.666%;
    width: calc(100% / 12 * 8);
    width: -webkit-calc(100% / 12 * 8);
    width: -moz-calc(100% / 12 * 8);
    padding: 0 10px;
}

.col9-12 {
    width: 74.999%;
    width: calc(100% / 12 * 9);
    width: -webkit-calc(100% / 12 * 9);
    width: -moz-calc(100% / 12 * 9);
    padding: 0 10px;
}

.col10-12 {
    width: 83.333%;
    width: calc(100% / 12 * 10);
    width: -webkit-calc(100% / 12 * 10);
    width: -moz-calc(100% / 12 * 10);
    padding: 0 10px;
}

.col11-12 {
    width: 91.666%;
    width: calc(100% / 12 * 11);
    width: -webkit-calc(100% / 12 * 11);
    width: -moz-calc(100% / 12 * 11);
    padding: 0 10px;
}

.col12-12 {
    width: 100%;
    padding: 10px 0
}

.col {
    overflow: hidden;
    float: left;
    display: block;
    position: relative;
}


.col:first-of-type {
    padding-left: 0;
}

.col:last-of-type {
    padding-right: 0;
}

main, #main, header, #pre_header, #post_header, footer, #pre_footer, #post_footer {
    float: left;
    width: 100%;
}

.col1-12:nth-of-type(12n) {
    padding-right: 0;
}

.col1-12:nth-of-type(12n+1) {
    padding-left: 0;
}

.col2-12:nth-of-type(6n) {
    padding-right: 0;
}

.col2-12:nth-of-type(6n+1) {
    padding-left: 0;
}

.col3-12:nth-of-type(4n) {
    padding-right: 0;
}

.col3-12:nth-of-type(4n+1) {
    padding-left: 0;
}

.col4-12:nth-of-type(3n) {
    padding-right: 0;
}

.col4-12:nth-of-type(3n+1) {
    padding-left: 0;
}

.col6-12:nth-of-type(2n) {
    padding-right: 0;
}

.col6-12:nth-of-type(2n+1) {
    padding-left: 0;
}

.fleft {
    float: left;
}

.fright {
    float: right;
}

/* END ~4. LAYOUT */


/* ~5. HEADER & FOOTER */

#logo {
	padding-bottom: 10px;
}

#logo img {
    float: left;
    width:auto;
    height:auto;
    max-height:100px;
    max-width: 100%;
}

header {
    float:left;
    width:100%;
    overflow:visible;
    background:#ffffff;
    border-top:10px solid #c00000;
}

#post_header {
    z-index:3;
    float:left;
    width:100%;
    background:rgba(192,0,0,0.7);
    position:relative;
    height:47px;
    overflow:visible;
}

#post_header .container{
    overflow:visible;
    padding:0 20px;
}

nav ul {
    width:100%;
    margin:0;
}

nav ul li {
    display: inline-block;
    position: relative;
    float:left;
    margin-right:40px;
}

nav ul li a {
    display:inline-block;
    font-weight:700;
    color:#1b1b1b;
    padding:10px 0;
    text-transform:uppercase;
}

nav ul li a.active {
    color:#ffffff;
}

nav ul li a:hover {
    color:#ffffff;
}

.col12-12#nav {
    padding:0;
    overflow:visible;
}

nav li ul {
    width: 325px;
    position: absolute;
    background: rgba(192,0,0,0.7);
    display: none;
    top: 47px;
    left: 0;
    padding: 0 0 0 0;
    z-index: 10;
    margin-left: 20px;
}

nav li > ul li {
    border-bottom: 1px solid #FFFFFF;
    text-align: left;
    padding: 3px 5px !important;
    width: 100%;
}

nav li > ul li:last-of-type {
    border-bottom: none
}

nav li > ul > li > ul {
    display: none;
    left: 100%;
    margin-left: 0;
    top: 0;
    padding-top: 0;
}

nav ul > li:hover > ul, nav ul > li > ul:hover, nav ul > li > ul > li:hover > ul, nav ul > li > ul > li > ul:hover {
    display: block;
}

nav li ul li a {
    color: #fff;
    padding:inherit;
    font-weight:normal;
}

nav li ul li a:hover{
    opacity:0.5;
}


/*
nav {
    float: right;
    text-align: right;
}

nav > li:first-child {
    padding: 0;
}

nav li {
    display: inline-block;
    position: relative;
    padding: 0 0 0 20px;
}
*/
#pre_footer ul, #post_footer ul, #pre_header ul, #post_header ul, nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
#fixed-contact {
    position:fixed;
    left:0;
    top:50%;
    transform:translateY(-50%);
    z-index:3;
    background:#c00000;
}

#fixed-contact ul {
    list-style-type:none;
    padding:10px;
    text-align:center;
}

#fixed-contact ul li {
    padding:5px;
}

#fixed-contact ul li a {
    font-size:24px;
    color:#fff;
}

#fixed-contact ul li a:hover {
    color:#1b1b1b;
}
header .container {
    overflow: visible;
    height: 105px;
}

#search {
    text-align:right;
    float:right;
}

#search a.contact_number {
	font-weight: 600;
	margin-right: 15px;
	position: relative;
	top: 3px;
}

#search a.contact_number span {
	font-size: 14px;
}

.social-media-list {
    float:right;
    text-align:right;
    padding:0;
    margin-bottom:5px;
}

.social-media-list li {
    display:inline-block;
    float:right;
    list-style-type:none;
    font-size:12px;
    margin-left:5px;
}

.social-media-list li a {
    color:#636363;
}

.g-recaptcha{
    float: left;
}
#RecaptchaField2{
    float: left;
}

#RecaptchaField1{
    float: left;
}


.social-media-list li a:hover {
    color:#c00000;
}

#job_feed {
	background-color: #EBEBEB;
	padding: 20px;
}

#job_feed div.col12-12 {
	overflow: visible;
}

#job_feed .pagination {
	display: none;
}

#job_feed .post {
	border: 1px solid #C00000;
	margin-bottom: 10px;
	min-height: 64px;
	padding-bottom: 0;
	padding: 10px 10px 6px 10px;
}

#job_feed .post h2 {
	margin-bottom: 0;
}

#job_feed .post h2 a, #job_feed .post p, #job_feed .post a {
	font-size: 13px;
}

#job_feed::-webkit-scrollbar {
    width: 20px;
}
 
#job_feed::-webkit-scrollbar-track {
    border-radius: 0;
}
 
#job_feed::-webkit-scrollbar-thumb {
    border-radius: 0;
}

#header-search-form input,
#header-search-form button {
    height:30px;
    width:auto;
    border:1px solid #c00000;
    line-height:100%;
    padding: 0 5px;
    margin:0;
}


#header-search-form button {
    padding:0 10px;
    background:#c00000;
}

footer {
    background:#383838;
    float:left;
    width:100%;
    color:#ffffff;
    padding:40px 0;
}

footer,
footer p,
footer li,
footer a,
footer address,
footer h4 {
    color:#ffffff;
    font-size:14px;
    line-height:18px;
    font-weight:400;
}

footer h4 {
    font-weight:700;
    text-transform:uppercase;
    margin-bottom:5px;
}

footer ul {
    list-style-type:none;
    float:left;
    padding:0;
    margin-right:50px;
}

footer #footer_links ul:last-of-type {
    margin-right:0;
}

footer #newsletter input {
    height:30px;
    background:none;
    border:2px solid #fff;
    color:#ffffff;
    padding:0 10px;
    line-height:100%;
    margin:0;
    margin-bottom:10px;
}

footer #newsletter input[type="submit"] {
    width:100%;
    background:#ffffff;
    color:#c00000 !important;
    font-weight:800;
    text-transform:uppercase;
    margin-bottom:0;
}

ul.footer_social_links li {
	display: inline;
	float: left;
	margin-left: 20px;
}

ul.footer_social_links li a {
	color: #FFFFFF;
}

.share_button {
	background-color: #FFFFFF;
	color: #c00000;
	float: left;
	margin-top: 20px;
	padding: 12px 0 10px 0;
	text-transform: uppercase;
	width: 100%;
}

#post_footer {
    background:#c00000;
    color:#ffffff;
    font-size:14px;
}

/* END ~5. HEADER & FOOTER */

/* ~6. COMMON ELEMENTS */

body {
    height: 100%;
    width: 100%;
    background: #ffffff;
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
    content: '';
    content: none
}

a {
    color: #363636;
    text-decoration: none;
}

h1 {
    font-family: 'Maven Pro', sans-serif;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 36px;
    margin-bottom: 0;
    text-transform:uppercase;
}

h2 {
    font-family: 'Maven Pro', sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 36px;
    margin-bottom: 26px;
    text-transform:uppercase;
}

h3 {
    font-family: 'Maven Pro', sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 27px;
    margin-bottom: 27px;
    text-transform:uppercase;
}

p {
    font-family: 'Maven Pro', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 27px;
    margin-bottom: 27px;
}

blockquote {
    font-family: 'Maven Pro', sans-serif;
    font-size: 17px;
    line-height: 27px;
    margin: 10px 20px;
    padding: 10px;
    background-color: #ebebeb;
    border-left: 4px solid #c000000;
    font-weight:500;
}

ul {
    list-style: disc;
    padding: 10px 35px;
}

ol {
    list-style: decimal;
    margin: 10px 35px;
}

hr {
    float: left;
    width: 100%;
    border: none;
    padding: 10px 0;
    border-top: 1px solid #959595;
    margin:0;
}

/* END ~6. COMMON ELEMENTS */

/* ~7. CLASSES AND IDs */

.red_box{
    float:left;
    width:100%;
    background:#c00000;
    color:#fff;
    padding: 20px;
    margin-bottom: 25px;
}

.red_box a{
    color:#fff !important;
    text-decoration:underline;
    font-size: 21px;
}

.red_box p{
    margin:0;
}

/* END ~7. CLASSES AND IDs */

/* ~8. FORMS */

form {
    float: left;
    width: 100%;
}

.honey {
    display: none
}

label {
    float: left;
    width: 100%;
    font-size: 12px;
}

textarea {
    height: 100px
}

input, textarea, select {
    float: left;
    width: 100%;
    font-family: 'Maven Pro', sans-serif;
    border: 1px solid #959595;
    outline: none;
    background: #FFFFFF;
    color: #363636;
    padding: 10px;
    margin: 10px 0;
}

button, input[type='submit'] {
    width: auto;
    border: none;
    outline: none;
    background: #c000000;
    color: #FFFFFF;
    padding: 10px 20px;
    margin: 10px 0;
    cursor: pointer;
}

.button{
    width: auto;
    border: none;
    outline: none;
    background: #c00000;
    color: #FFFFFF !important;
    padding: 10px 20px;
    margin: 10px 0;
    cursor: pointer;
}

/* END ~8. FORMS */

/* ~9. PAGE STYLING */
#image-slider {
    width:100%;
    float:left;
    position:relative;
    z-index:1;
}

#search-jobs {
    background:rgba(255,255,255,0.6);
    margin-top:-240px;
    z-index:2;
    float:left;
    width:100%;
    position:absolute;
    height:auto;
    bottom:0;
    left:0;
}

.home-template  #search-jobs {
    margin-top:-240px;
    position:relative;
    height:195px;
}

#top-blocks {
    width:100%;
    float:left;
    background:rgba(255,255,255,0.6);
    position:relative;
    z-index:2;
    margin-top:-45px;
    height:370px;
    margin-bottom:30px;
}


#top-blocks .col3-12,
#top-blocks .container,
#top-blocks .col12-12 {
    height:100%;
    padding-top:0;
    padding-bottom:0;
}

#top-blocks .col3-12 {
    position:relative;
}

#top-blocks .twitter .col_wrap{
    
    background:url(../images/twitter-background.jpg);
    background-size: 100% auto;
    background-position:top-right;
    background-repeat:no-repeat;
    background-color:#c00000;
}

#top-blocks .blog_prev .col_wrap{
    background:url(../images/mouse-red-background.jpg);
    background-size:cover;
}

#top-blocks .col_cont {
    padding:20px;
}

#top-blocks .col3-12:first-of-type .col_cont {
    padding-right:20px;
}

#top-blocks .col3-12:last-of-type .col_cont {
    padding-left:20px;
}

#top-blocks .twitter,
#top-blocks .blog_prev {
    color:#fff;
}

#top-blocks .twitter .col_cont,
#top-blocks .blog_prev .col_cont {
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    height:auto;
}

#top-blocks .twitter .col_cont p,
#top-blocks .blog_prev .col_cont p {
    margin-bottom:0;
    padding-bottom:20px;
    border-bottom:solid 5px #ffffff;
}

#top-blocks .twitter h2,
#top-blocks .blog_prev h2 {
    margin-bottom:0;
}
#top-blocks .twitter h2 a {
    color:#fff;
}
#top-blocks .twitter p,
#top-blocks .blog_prev p {
    font-size:16px;
    line-height:21px;
}

#top-blocks .twitter p a {
    color:#ffffff;
    font-weight:700;
}

#top-blocks .blog_prev h2 a {
    color:#ffffff;
}

#top-blocks .col_wrap{
    position:relative;
    width:100%;
    height:100%;
    overflow:hidden;
}

#top-blocks .image img {
    position:absolute;
    min-width:100%;
    min-height:100%;
    height:auto;
    width:auto;
    top:-999px;
    bottom:-999px;
    left:-999px;
    right:-999px;
    margin:auto;
}

#page-intro p strong {
    text-transform:uppercase;
    color:#c00000;
    font-size:1.1rem;
}

#page-intro {
    margin:20px 0;
    float:left;
    width:100%;
}

#bottom-blocks {
    border-top:1px solid #959595;
    width:100%;
    float:left;
    padding-top:10px;
    margin-bottom:50px;
}

.button.cta {
    width:100%;
    padding:30px 0;
    text-align:center;
    border:1px solid #c00000;
    display:block;
}
.button.cta:before {
    content:'';
    display:inline-block;
    vertical-align:middle;
    margin-right:-0.25em;
}

.button .cta-middle {
    width:auto;
    display:inline-block;
    vertical-align:middle;
    text-align:left;
}

.button .cta-middle p{
    line-height:20px;
    font-size:18px;
    float:left;
    margin-bottom:0;
    font-weight:700;
    text-transform:uppercase;
}

.button .cta-middle strong {
    font-size:27px;
    line-height:29px;
}

.button .cta-middle i {
    font-size:54px;
    line-height:48px;
    margin-right:10px;
}

.cta-links .col6-12:nth-of-type(odd) .button.cta{
    background:#fff;
    color:#c00000 !important;
}
.cta-links .col6-12:nth-of-type(odd) .button.cta {
    color:#c00000 !important;
}
.cta-links .col6-12:nth-of-type(even) .button.cta{
    background:#c00000;
    color:#ffffff;
}
.cta-links .col6-12:nth-of-type(even) .button.cta a {
    color:#ffffff;
}


#job-links .red .col_wrap{
    background:url(../images/red-box-bg.png);
    background-size:cover;
        background-position:center;
}

#job-links .dark .col_wrap{
    background:url(../images/dark-box-bg.png);
    background-size:cover;
    background-position:center;
}

#job-links .medium .col_wrap{
    background:url(../images/medium-box-bg.png);
    background-size:cover;
    background-position:center;
}

#job-links .light .col_wrap{
    background:url(../images/light-box-bg.png);
    background-size:cover;
    background-position:center;
}

#job-links .col3-12 {
    height:280px;
}

#job-links .col3-12 .col_wrap {
    width:100%;
    height:100%;
    padding:20px;
}

#job-links .col_wrap img {
    display:block;
    margin:0 auto;
    margin-bottom:20px;
}

#job-links .col_wrap h3 {
    color:#ffffff;
    text-transform:uppercase;
    font-size:24px;
    text-align:center;
    line-height:25px;
    padding-bottom:10px;
    border-bottom:5px solid #fff;
}

#job-links .dark .col_wrap h3,
#job-links .medium .col_wrap h3,
#job-links .light .col_wrap h3 {
    line-height:50px;
}
#job-links .medium .col_wrap h3,
#job-links .light .col_wrap h3 {
    color:#c00000;
    border-bottom:5px solid #c00000;
}

#banner-image {
    height:345px;
    overflow:hidden;
    margin:0 auto;
    width:100%;
    float:left;
    position:relative;
    z-index:1;
    margin-top:-47px;

}

#banner-image img {
    position:absolute;
    left:-999px;
    right:-999px;
    top:-999px;
    bottom:-999px;
    margin:auto;
    min-height:100%;
    min-width:100%;
}

.contact-template hr {
    padding:0;
    margin:0;
}


#page-intro p:last-of-type {
    margin-bottom:0;
}
.contact-template .map {
    position:relative;
}
.contact-template .map .address {
    position:absolute;
    height:auto;
    left:0;
    top:40px;
    width:100%;
    z-index:2;
}

.contact-template .map address {
    background:rgba(192,0,0,0.7);
    color:#ffffff;
    width:auto;
    float:left;
    padding:20px;
}
#page-content {
    width:100%;
    float:left;
}



/* END ~9. PAGE STYLING */



article.col:last-of-type {
    padding-right:50px;
}

aside .col12-12 {
    padding-top:0;
    padding-bottom:0;
    position:relative;
}


aside .twitter .col_wrap{
    background:url(../images/twitter-background.jpg);
    background-size:cover;
}

aside .blog_prev .col_wrap{
    background:url(../images/mouse-red-background.jpg);
    background-size:cover;
}

aside .col_cont {
    padding:20px;
}



aside .twitter,
aside .blog_prev {
    color:#fff;
    margin-bottom:30px;
}

aside .twitter .col_cont,
aside .blog_prev .col_cont {
    position:absolute;
    bottom:10px;
    left:0;
    right:0;
    height:auto;
}

aside .twitter .col_cont p,
aside .blog_prev .col_cont p {
    margin-bottom:0;
    padding-bottom:20px;
    border-bottom:solid 5px #ffffff;
}

aside .twitter h2,
aside .blog_prev h2 {
    margin-bottom:0;
}

aside .twitter p,
aside .blog_prev p {
    font-size:16px;
    line-height:21px;
}

aside .twitter p a {
    color:#ffffff;
    font-weight:700;
}

aside .blog_prev h2 a {
    color:#ffffff;
}

aside .col_wrap{
    position:relative;
    width:100%;
    min-height:350px;
}

em.jnum {
    font-style: italic;
    opacity: 0.7;
}