/*
Theme Name: CILT Forum
Author: John King
*/


/* CSS for CILT */
/* Design by Sarah @ Borderless */
/* CSS by John King */

/* Normalise / Reset CSS */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0;
	padding: 0;	border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
article, aside, figcaption, figure, footer, header, nav, section {display: block;}
html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
a { outline: 0; }
b, strong { font-weight: 700; }
.stronger { font-weight: 500; }
i, em { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
li { list-style: none; list-style-image: none; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
form { margin: 0; }
button, input, select, textarea { font-size: 100%; font-family: inherit; line-height: inherit; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


/* ------------------------------------------------------------------------ */
/* Main Layout and Positioning CSS */

html {
	min-width: 320px;
}

body {
	background: #ebebeb; 
}

.holder {
	display: block;
	width: 100%;	
}

.lt-ie9 .holder {
	min-width: 950px;
}

.constrictor {
	position: relative;
	max-width: 910px;
	padding: 0px 20px;
	margin: 0px auto;	
}

.lt-ie9 .constrictor {
	width: 910px;
}

.main-content {
	overflow: hidden;
	min-height: 300px;
	margin-bottom: 10px;
}

.shift-left {
	float: left;
}

.shift-right {
	float: right;
}


/* ------------------------------------------------------------------------ */
/* Base Font CSS */

body, button, input, select, textarea, #bbpress-forums { 
	font-family: 'Roboto', sans-serif;
	color: #333333;
	font-size: 15px;
	line-height: 1.25em;
	font-weight: 400;
}

a {
	color: #361163;
	text-decoration: none;
}

a:hover {
	color: #505050;
	text-decoration: underline;
}

article a {
	text-decoration: underline;
}

h1, h2, h3, h4, h5, h6 {
	margin-bottom: 8px;
	line-height: 1.25em;
	font-size: 15px;
	font-weight: 700;
	color: #434343;
}

h1 {
	margin: 0px 0px 20px 0px;
	font-size: 34px;
	font-weight: normal;
	max-width: 760px;
	line-height: 34px;
}

h1.no-gap {
	margin-bottom: 0px;
}

h1.title span {
	display: inline-block;
	padding-right: 10px;
	padding-top: 6px;
	padding-bottom: 6px;
	background: #ebebeb;
	padding-left: 3000px;
	margin-left: -3000px;
	text-transform: uppercase;
}

h1.title span em {
	font-style: normal;
}

h2,
#bbpress-forums #bbp-user-wrapper h2.entry-title {
	margin: 15px 0px 20px 0px;
	padding: 0px;
	font-size: 20px;
}

h3 {
	margin: 10px 0px 10px 0px;
}

h2.light-title,
h3.light-title {
	font-weight: 400;
	margin-bottom: 15px;
}

h3.light-title {
	margin-top: 0px;
	margin-bottom: 10px;
}

h2.light-title span,
h3.light-title span {
	font-weight: 700;
}

#bbpress-forums #bbp-user-wrapper h2.entry-title:first-child {
	margin-top: 0px;
}

h4 {
	margin: 10px 0px 15px 0px;
	font-size: 18px;
	font-weight: normal;
}

.title-link {
	margin: 10px 0px 10px;
	line-height: 1.066em;
	font-size: 24px;
	font-weight: 500;
}

.title-link-small {
	font-size: 20px;
}

.title-link a {
	display: block;
	color: #505050;
}

.color-gold {
	color: #b38e5e;
}

p {
	margin-bottom: 20px;
	line-height: 1.375em;
}

p.small {
	font-size: 12px;
}

label, input, select, textarea {
	font-size: 14px;
	color: #434343;
}


/* ------------------------------------------------------------------------ */
/* Form CSS */

header form,
.main-content form,
.members-box,
form.wpcf7-form {
	padding: 16px;
	overflow: hidden;
	background: #ebebeb;
}

#new-post {
	margin-bottom: 20px;
	background: #ebebeb;
}

.contact-form form input[type="text"],
.contact-form form textarea,
#wp-bbp_topic_content-wrap,
#wp-bbp_reply_content-wrap {
	width: 100%;
	margin-bottom: 15px;
}

.contact-form form textarea {
	height: 165px;
}

.contact-form form input[type="submit"] {
	float: right;
	background: #361163;
}

.wpcf7 br,
.placeholder .contact-form form label {
	display: none;
}

select {
	box-sizing: border-box;
	min-width: 160px;
	width: 100%;
	padding: 5px 4px 5px 4px;
}

input[type="text"],
input[type="search"],
input[type="password"],
input[type="email"] {
	box-sizing: border-box;
	padding: 5px 4px 5px 4px;
	border: none;
	width: 100%;
}

input[type="submit"],
button.submit,
a.button,
span.button a {
	min-width: 100px;
	padding: 3px 5px;
	border: none;
	background: #361163;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	line-height: 19px;
	text-transform: uppercase;
}

.main-content button.submit,
.main-content a.button {
	padding: 10px;
}

.main-content .home-page-col button.submit {
	padding: 3px 5px;
}

textarea {
	box-sizing: border-box;
	padding: 5px 4px 5px 4px;
	border: none;
}

div.bbp-submit-wrapper {
	margin-top: 0px;
}


/* ------------------------------------------------------------------------ */
/* Top Bar CSS */

#top-bar {
	min-height: 35px;
}

#local {
	float: left;
}

#local .username {
	line-height: 35px;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
}

#local .username span {
	color: #b38e5e;
}

#search {
	float: right;
	margin-top: 5px;
}

.search input[type="search"],
.search input[type="text"] {
	display: inline;
	width: 338px;
	padding-left: 26px;
	background: #fff url(graphics/search-icon.png) no-repeat 5px 50%;
	font-size: 12px;
}

.search input[type="search"] {
	vertical-align: bottom;
}

.search input[type="submit"] {
	display: inline;
	background-color: #b38e5e;
	min-width: 0px;
}

#mob-nav {
	display: none;
}

#mob-nav .menu-toggle {
	float: left;
	height: 35px;
	line-height: 35px;
	cursor: pointer;
	font-size: 18px;
	font-weight: 700;
	text-transform: uppercase;
	color: #fff;
}
	
#mob-nav .menu-toggle .icon-open {
	float: left;
	height: 35px;
	width: 30px;
	background: transparent url(graphics/site-icons.png) no-repeat -60px -58px;
}
	
#mob-nav .menu-toggle .icon-close {
	background-position: -110px -58px;
}

#mob-nav .menu-close {
	display: none;
	position: absolute;
	top: 0px;
	right: 0px;
	width: 40px;
	height: 35px;
	background: transparent url(graphics/site-icons.png) no-repeat -5px -58px;
	cursor: pointer;
}

#mob-nav .mob-nav-dropdown {
	position: absolute;
	top: 35px;
	left: 0;
	right: 0px;
	display: block;
	z-index: 1000;
	display: none;
	background: #361163;
}

#mob-nav .search {
	margin: 10px;
}

#mob-nav input[type="search"] {
	width: 100%;
	margin-top: 0px;
	font-size: 16px;
}

#mob-nav li {
	border-top: 1px solid #80729f;
}
	
#mob-nav li a {
	display: block;
	padding: 5px 10px;
	line-height: 1.25em;
	border-left: 5px solid #361163;
	font-size: 25px;
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
}

#mob-nav li a:hover {
	background-color: #6a4f8b;
	border-color: #6a4f8b;
}

#mob-nav li.active > a {
	border-color: #b38e5e;
}


/* ------------------------------------------------------------------------ */
/* Header CSS */

header {
	text-align: center;
}

header #logo { 
	float: left;
}

header #logo a { 
	display: block;
	padding: 16px 0px 14px 0px; 
}

header #user-actions {
	float: right;
	margin-top: 60px;
	text-align: right;
	font-size: 14px;
	line-height: 30px;
	vertical-align: middle;
}

header #user-actions .user-action {
	display: inline-block;
	line-height: 30px;
	vertical-align: middle;
}

header #user-actions .user-action a {
	display: inline-block;
	height: 30px;
	padding-right: 8px;
	color: #777777;
}

header #user-actions .user-action a:hover {
	color: #b38e5e;
}

header #user-actions .user-action span {
	float: left;
	height: 30px;
	width: 30px;
	background: transparent url(graphics/site-icons.png) no-repeat -10px -110px;
}

header #user-actions .user-action-profile span {
	background-position: -60px -110px;
}

header #user-actions .user-action-logout span {
	background-position: -110px -110px;
}

header #user-actions .user-action-admin a:hover span {
	background-position: -10px -160px;
}

header #user-actions .user-action-profile a:hover span {
	background-position: -60px -160px;
}

header #user-actions .user-action-logout a:hover span {
	background-position: -110px -160px;
}


/* ------------------------------------------------------------------------ */
/* Content Generic CSS */

.border-top {
	padding-top: 15px;
	border-top: 1px solid #cacaca;
}

article {
	padding-bottom: 15px;
}

article img,
img.responsive {
	max-width: 100%;
	height: auto;
}

article figure,
article .meta {
	max-width: 600px;
	margin: 0px 0px 18px 0px;
}

article .meta-container {
	max-width: 600px;
}

.single .main-content .meta {
	float: left;
	margin-top: 3px;
}

article figcaption {
	line-height: 1.125em;
	padding-top: 4px;
	font-size: 12px;
	color: #777777;
}

img.shift-left {
	margin: 2px 10px 15px 0px;
}

.page article .text-container {
	clear: both;
	max-width: 800px;
}

article .text-container:first-child h2:first-child {
	margin-top: 0px;
}

.page article .text-container:first-of-type p:first-of-type,
.page article .text-container.large-first-para p:first-of-type,
p.forum-description {
	font-size: 18px;
}

article ul,
article ol {
	padding-left: 20px;
	margin-bottom: 20px;
}

article ul {
	padding-left: 5px;
	list-style-type: none;
}

article ul li,
ul.bullet-list li {
	background: transparent url(graphics/bullet.png) no-repeat 0px 4px;
	padding-left: 13px;
	margin-bottom: 4px;
}

article ol li {
	list-style-type: decimal;
	margin-bottom: 4px;
	color: #b38e5e;
	font-weight: 700;
}

article ol li .ol-normalise {
	color: #505050;
	font-weight: 400;
}

.video-container {
	position: relative;
	margin: 25px auto;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.breadcrumb {
	padding: 0px 0px 12px 16px;
	font-size: 12px;
	font-weight: 700;
	background: transparent url(graphics/site-icons.png) no-repeat -170px -65px; 
}

.breadcrumb a {
	color: #b38e5e;
	text-decoration: none;
}


/* ------------------------------------------------------------------------ */
/* Home Page */

.home-page-cols .home-page-col {
	float: left;
	width: 50%;
	box-sizing: border-box;
}

.home-page-cols .home-page-col-1 {
	padding-right: 8%;
	border-right: 7px solid #ebebeb;
}

.home-page-cols .home-page-col-2 {
	padding-left: 8%;
}

.home-page-cols .home-page-col h2 {
	margin-bottom: 24px;
	font-size: 22px;
	font-weight: 400;
	color: #361163;
}

.home-page-cols .home-page-col h2 strong {
	font-weight: 700;
}

.bbp-login-form .bbp-username,
.bbp-login-form .bbp-email,
.bbp-login-form .bbp-password,
.bbp-login-form .bbp-remember-me,
.bbp-login-form .bbp-submit-wrapper {
	margin: 0px 0px 10px 0px;
}

.bbp-login-form .bbp-remember-me,
.bbp-login-form .lost-password {
	margin-bottom: 0px;
}

.bbp-login-form .bbp-actions {
	clear: both;
	margin-bottom: 0px;
}

.bbp-login-form .bbp-submit-wrapper {
	clear: both;
	margin-bottom: 3px;
	margin-top: 10px;
}

.bbp-login-form .lost-password {
	font-size: 12px;
	padding-right: 20px;
}

.bbp-login-form label,
form.wpcf7-form label {
	width: auto;
	padding: 0px 8px 0px 0px;
	line-height: 27.5px;
}

.bbp-login-form .bbp-remember-me label {
	padding: 0px;
	line-height: 22px;
}


/* ------------------------------------------------------------------------ */
/* User Profiles */

#bbpress-forums #bbp-user-wrapper {
	float: none;
	margin-top: 20px;
}

#bbpress-forums #bbp-single-user-details {
	width: 180px;
}

#bbpress-forums #bbp-user-body {
	margin-left: 200px;
}

#bbpress-forums #bbp-single-user-details #bbp-user-navigation li {
	padding-left: 0px;
}

#bbpress-forums #bbp-your-profile {
	padding: 0px 0px 0px 0px;
	background: #fff;
}

#bbpress-forums #bbp-user-wrapper #bbp-your-profile h2.entry-title {
	margin-bottom: 0px;
}

#bbpress-forums #bbp-your-profile fieldset {
	float: none;
	padding: 15px 0px 0px 0px;
	margin-bottom: 12px;
	border: none;
	border-bottom: 1px solid #cacaca;
}

#bbpress-forums #bbp-your-profile fieldset.submit {
	border: none;
}

#bbpress-forums #bbp-your-profile fieldset select {
	width: auto;
}

#bbpress-forums #bbp-your-profile fieldset label.shift-left {
	float: left;
}

#bbpress-forums #bbp-your-profile fieldset input,
#bbpress-forums #bbp-your-profile fieldset textarea,
#bbpress-forums #bbp-your-profile fieldset fieldset.password {
	width: 70%;
}

#bbpress-forums #bbp-your-profile fieldset span.description {
	clear: both;
	display: block;
	box-sizing: border-box;
	margin: 3px 0px !important;
	padding-top: 0px;
	font-size: 12px;
	boorder: 1px solid #f5a045;
	background-color: #fcebd9;
}

#bbpress-forums #password #pass-strength-result {
	display: block;
	float: none;
}


/* ------------------------------------------------------------------------ */
/* Course List  + Course Directory */

.forum-list {
	padding: 0px 0px 40px;
}

.forum-list ul li a {
	display: block;
	min-height: 30px;
	margin-top: 15px;
	padding: 10px 30px 10px 0px;
	border-top: 5px solid #cacaca !important;
	border-bottom: 1px solid #cacaca !important;
	background: transparent url(graphics/site-icons.png) no-repeat 100% -755px;
	color: #505050;
	text-decoration: none;
}

.forum-list ul li:first-child a {
	margin-top: 0px;
}

.forum-title {
	font-size: 18px;
	margin-bottom: 10px;
}

.forum-list ul li a:hover .forum-title  {
	text-decoration: underline;
}

.forum-list ul li p {
	margin-bottom: 0px;
}

.forum-list ul li p.forum-list-meta,
.topic-list ul li p.topic-list-meta,
.reply-list li p.reply-list-meta {
	margin: 8px 0px 0px 0px;
	font-size: 13px;
}


/* ------------------------------------------------------------------------ */
/* Single Forum Pages */

.topic-list {
	padding: 0px 20px 20px 20px;
	background: #ebebeb;
}

.topic-list h3 {
	font-size: 20px;
	line-height: 39px;
	font-weight: 400;
}

.topic-list h3 .button {
	float: right;
}

#bbp-user-topics-started .topic-list h3 .button {
	display: none;
}

.topic-list > ul {
	border-top: 5px solid #cacaca;
}

.topic-list > ul > li {
	padding-bottom: 5px;
	border-bottom: 1px solid #cacaca;
}

.topic-list > ul > li.sticky-topic {

}

.topic-list a.topic-list-title {
	display: block;
	padding: 10px 30px 2px 0px;
	background: transparent url(graphics/site-icons.png) no-repeat 100% -755px;
	font-size: 18px;
	text-decoration: none;
}

.topic-list a.topic-list-title:hover span {
	text-decoration: underline;
}

textarea#bbp_reply_content,
textarea#bbp_topic_content,
textarea#bbp_forum_content {
	width: 100%;
}

#new-post label {
	display: block;
	padding-bottom: 4px;
}

#new-post #bbp_topic_title {
	margin-bottom: 10px;
}


/* ------------------------------------------------------------------------ */
/* Single Topic Replies */

ul.reply-list {
	clear: both;
   border: 1px solid #ebebeb;
}

#bbp-user-body ul.reply-list {
	clear: none;
}

ul.reply-list li {
   padding: 10px 15px;
}

ul.reply-list li.reply:nth-child(odd) {
   background-color: #ebebeb !important;
}


/* ------------------------------------------------------------------------ */
/* Pagination */

.bbp-pagination {
	margin: 10px 0px 10px 0px;
	line-height: 30px;
	font-size: 12px;
}

.bbp-pagination-links {
	float: right;
}

.bbp-pagination-links a,
.bbp-pagination-links a:hover,
.bbp-pagination-links span.current {
	float: none;
	display: inline-block;
	padding: 0px 12px;
	margin-left: 5px;
	border: 1px solid #b38e5e;
	font-weight: 700;
	text-transform: uppercase;
	vertical-align: top;
	opacity: 1;
}

.bbp-pagination-links a,
.bbp-pagination-links a:hover {
	background: #b38e5e;
	color: #ffffff;
	text-decoration: none;
}

.bbp-pagination-links span.current {
	border-color: #ebebeb;
	background: #ffffff;
}


/* ------------------------------------------------------------------------ */
/* Contact */

form.wpcf7-form {
	max-width: 600px;
	padding-bottom: 5px;
	margin-bottom: 20px;
	overflow: hidden;
	font-size: 14px;
}

form.wpcf7-form .label,
label.bbp_stick_topic {
	display: block;
	padding-bottom: 3px;
}

form.wpcf7-form option.option-placeholder,
select:disabled {
	color: #cacaca;
}

form.wpcf7-form textarea {
	height: 165px;
}

form.wpcf7-form input[type="submit"] {
	float: right;
	margin: 10px 0px 15px 0px;
}

form.wpcf7-form p {
	margin-bottom: 10px;
}

span.wpcf7-not-valid-tip {
	display: block;
	padding-top: 2px;
}

div.wpcf7-response-output {
	margin: 30px 0px 10px;
	padding: 5px;
	background: #efe3fe;
	border-color: #361163;
}
   

/* ------------------------------------------------------------------------ */
/* Insert Link Modal Window */

#wp-link p.howto,
#wp-link #search-panel,
#wp-link #wp-link-close span {
	display: none;
}

#wp-link input[type="text"] {
	border: 1px solid #cacaca;
}


/* ------------------------------------------------------------------------ */
/* Search Results */

.search-results-section {
	padding: 10px 0px 40px;
}

.search-results-section ul li a {
	display: block;
	min-height: 30px;
	padding: 15px 0px 15px 0px;
	border-bottom: 1px solid #cacaca;
	color: #505050;
	text-decoration: none;
}

.search-results-section .result-title {
	font-size: 18px;
	margin-bottom: 10px;
}

.search-results-section .result-title span {
	color: #361163;
}

.search-results-section ul li a:hover .result-title {
	text-decoration: underline;
}

.search-results-section ul li p {
	margin-bottom: 0px;
	font-size: 14px;
}


/* ------------------------------------------------------------------------ */
/* Footer CSS */

footer.constrictor {
	padding: 25px 10px 0px 10px;
	background: transparent url(graphics/footer-folder.png) no-repeat 0px 0px;
}

footer p {
	font-size: 14px;
}

footer a {
	color: #505050;
}


/* ------------------------------------------------------------------------ */
/* Colours CSS */

.bg-white {
	background-color: #fff;
}

.bg-purple {
	background-color: #361163;
}


/* ------------------------------------------------------------------------ */
/* Responsive CSS */

@media (min-width: 621px) {

	#local {
		display: block !important;
	}
	
}

@media (max-width: 620px) {

	#mob-nav {
		display: block;
	}

	.constrictor {
		padding-left: 10px;
		padding-right: 10px;
	}

	input, textarea {
		font-size: 16px !important;
	}
	
	input[type="submit"] {
		padding-top: 6px;
		padding-bottom: 5px;
	}
	
	nav,
	#search,
	#local .username span,
	header #user-actions {
		display: none;
	}	
	
	#top-bar .constrictor {
		padding-left: 0px;
	}
	
	#local {
		float: right;
	}
	
	header #logo { 
		float: none;
		display: inline-block;
		margin-left: auto;
		margin-right: auto;
	}
	
	article .text-container {
		max-width: none;
	}
	
	.home-page-cols .home-page-col {
		float: none;
		width: 100%;
		padding: 0px 0px 30px 0px;
		border: none;
	}
	
	#bbpress-forums div.bbp-submit-wrapper {
		float: right;
	}

	#bbpress-forums #bbp-single-user-details {
		float: none;
		width: 100%;
		margin-bottom: 20px;
	}

	#bbpress-forums #bbp-user-body {
		margin-left: 0px;
	}

	#bbpress-forums #bbp-single-user-details #bbp-user-navigation li {
		float: left;
	}
	
	#bbpress-forums #bbp-your-profile fieldset div {
		float: none;
		margin-bottom: 10px;
	}
	
	#bbpress-forums #bbp-your-profile fieldset label[for] {
		float: none;
		width: 100%;
		text-align: left;
	}
	
	#bbpress-forums #bbp-your-profile fieldset label.shift-left {
		float: none;
	}

	#bbpress-forums #bbp-your-profile fieldset input,
	#bbpress-forums #bbp-your-profile fieldset textarea,
	#bbpress-forums #bbp-your-profile fieldset fieldset.password {
		width: 100%;
	}

	
}

/* ------------------------------------------------------------------------ */
/* Print Style Sheet */

@media print {
	* { background: transparent !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important;}
	a, a:visited { text-decoration: underline; }
	a[href]:after { content: " (" attr(href) ")"; }
	abbr[title]:after { content: " (" attr(title) ")"; }
	a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	thead { display: table-header-group; }
	tr, img { page-break-inside: avoid; }
	img { max-width: 100% !important; }
	p, h2, h3 { orphans: 3; widows: 3; }
	h2, h3 { page-break-after: avoid; }
}