/*#234485*/

div.clear{
	clear: both;
}

div.divMessage{
	padding: 15px;
	margin-bottom: 20px;
	color: white;
	font-weight: bold;
	text-align: center;
	line-height: 1.5em;
}

div.divMessage a{
	color: white;
}

div.divMessage_confirm{
	background-color: green;
}

div.divMessage_error{
	background-color: red;
}

div.divMessage_info{
	background-color: #ff0099;
}

/*******************GENERIC***************************/

#divContent{
	padding: 30px 0;
}

#divMobileCtr{
	display: none;
	background-color: #234485;
}

@media (max-width: 1200px){
	.page{
		margin: 0 30px !important
	}
}

.page{
	max-width: 1200px;
	margin: auto;
	position: relative;

}

.marginBase30{
	margin-bottom: 30px;
}

.TBC{
	color: red;
	font-size: 11px;
	margin: 20px 0;
	padding: 10px;
	background-color: #ccc;
	border-radius: 10px;
	display: none;
}

.hidden{
	display: none;
}

.padded20{
	padding: 20px;
}

/*********************BLOCK LAYOUTS**************************/

.flexRow{
	display: flex;
	flex-wrap: wrap;
}

.flexCell50percent{
	flex: 0 48%;
	flex-direction: column;
}

.flexCell25percent{
	flex: 0 24%;
	flex-direction: column;
}

@media (max-width: 1000px){

	.flexCell25percent{
		flex: 0 33%;
		flex-direction: column;
	}

}

@media (max-width: 800px){

	.flexCell25percent{
		flex: 0 48%;
		flex-direction: column;
	}
}

@media (max-width: 360px){

	.flexCell25percent{
		flex: 0 100%;
		flex-direction: column;
	}
}

/*********************HEADER**************************/

header{
	/*padding: 10px;*/
	text-align: left;
	position: relative;
	box-shadow: 0 5px 15px 0 rgb(0 0 0 / 25%);
	z-index: 10000;
}

@media (max-width: 1200px){
	header{
		/* box-shadow: none; */
		border-bottom: 1px solid #4d4d4d;
	}

	header .page{
		margin: 0 30px !important;
	}

	#head-img-logo-strap{
		display: none;
	}

}

#aHeaderHome{
	display: inline-block;
	vertical-align: middle;
	padding: 20px;
}

#aHeaderPractitioner{
	margin-top: 10px;

}

#aHeaderPractitioner img{
	height: 50px;
}

#divHeaderAccount{
	position: absolute;
	right: 0px;
	top: 10px;
}

#divHeaderAccount{
	font-size: 14px;
}

#divHeaderAccount a{
	color: #1f497d;
	text-decoration: none;
}


#aMyAccount{
	position: relative;

}

.message_alert{
	position: absolute;
	right:5px;
	top:24px;
	background-color: red;
	font-weight: 700;
	color: white;
	font-size: 20px;
	width:24px;
	height:24px;
	line-height: 24px;
	border-radius: 12px;
	text-align: center;
}

@media (max-width: 800px){

	#aHeaderPractitioner{
		display: none !important;
	}

	#divHeaderAccount .right span{
		display: none;
	}

	#head-img-logo{
		height: 100px;
	}
}

.divBurgerMenuButtonContainer{
	display: none;
	position: absolute;
	right: 0;
	bottom: 0;
}

@media (max-width: 1200px){
	.divBurgerMenuButtonContainer{
		display: block;
		top:50px;
		right:0px;
		height:20px;

	}

	#divNavCtr, #divNavMemberCtr{
		display: none;
	}
}

.hamburger{
	font: inherit;
	display: inline-block;
	overflow: visible;
	margin: 0;
	padding: 15px;
	cursor: pointer;
	transition-timing-function: linear;
	transition-duration: .15s;
	transition-property: opacity, filter;
	text-transform: none;
	color: inherit;
	border: 0;
	background-color: transparent
}

.hamburger.is-active:hover,
.hamburger:hover{
	opacity: .7
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner:after,
.hamburger.is-active .hamburger-inner:before{
	background-color: #000
}

.hamburger-box{
	position: relative;
	display: inline-block;
	width: 40px;
	height: 24px
}

.hamburger-inner{
	top: 50%;
	display: block;
	margin-top: -2px
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before{
	position: absolute;
	width: 40px;
	height: 4px;
	transition-timing-function: ease;
	transition-duration: .15s;
	transition-property: transform;
	border-radius: 4px;
	background-color: #000
}

.hamburger-inner:after,
.hamburger-inner:before{
	display: block;
	content: ""
}

.hamburger-inner:before{
	top: -10px
}

.hamburger-inner:after{
	bottom: -10px
}

.hamburger--collapse .hamburger-inner{
	top: auto;
	bottom: 0;
	transition-delay: .13s;
	transition-timing-function: cubic-bezier(.55, .055, .675, .19);
	transition-duration: .13s
}

.hamburger--collapse .hamburger-inner:after{
	top: -20px;
	transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity .1s linear
}

.hamburger--collapse .hamburger-inner:before{
	transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19)
}

.hamburger--collapse.is-active .hamburger-inner{
	transition-delay: .22s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1);
	transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--collapse.is-active .hamburger-inner:after{
	top: 0;
	transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s linear .22s;
	opacity: 0
}

.hamburger--collapse.is-active .hamburger-inner:before{
	top: 0;
	transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
	transform: rotate(-90deg)
}

#divHeaderAccount a{
	text-decoration: none;
	border: 1px solid #ccc;
	padding: 10px 10px;
	border-radius: 10px;
	display: inline-block;
}

#aBasket.active{
	color: #fff;
	font-weight: 700;
	background-color: #0c0;
}

#aBasket.active i, #aBasket.active span{
	color: #fff;
}

#divHeaderAccount a:hover{
	background-color: #ccc;
}

#divHeaderAccount i{
	margin: 0 10px;
}

#divEmulated{
	background-color: red;
	color: white;
	position: fixed;
	bottom: 0;
	width: 100%;
	text-align: center;
	padding: 10px;
	font-weight: 700;
	opacity: 0.5;
}

#divEmulated:hover{
	opacity: 1;
}

/*******************NAVIGATION*************************/

#divNavCtr{
	background: #234485;
	border-bottom: solid #000 1px;
	z-index: 20;
}

#divNavMemberCtr{
	background: #333;
	z-index: 20;
}

.ulNavFull li ul{
	z-index: 30;
}

.ulNavFull{
	vertical-align: middle;
	display: inline-block;
	font-size: 13px;
}

.ulNavFull li{
	display: inline-block;
	vertical-align: middle;
	text-align: left;
	position: relative;

}

.ulNavFull li a{
	display: block;
	color: #fff;
	font-weight: 400;
	vertical-align: middle;
	line-height: 40px;
	padding: 0 15px;
	text-decoration: none;
}

.ulNavFull li:hover > .ulHeaderSubNavFull{
	display: block;
	transition: opacity 2s;
	-webkit-transition: opacity 2.0s;
	-moz-transition: opacity 2.0s;
	-o-transition: opacity 2.0s;
	display: flex;
	flex-direction: column
}


.displayDesktopDefault .mobileMenuChevron{
	display: none;

}

.ulNavFull li a:hover{
	background-color: #000;
}

.ulHeaderSubNavFull{
	position: absolute;
	left: 0;
	top: 40px;
	margin-left: 0px;
	border-top: 1px solid #000;
	display: none;
}

.ulHeaderSubNavFull li{
	text-align: left;
	margin-left: 0px !important;
	line-height: 40px;
}

.ulHeaderSubNavFull li a{
	display: block;
	border: red;
	padding: 0 20px;
	border-bottom: 1px solid #999;
	text-decoration: none;
	white-space: nowrap;
	width: 100%;

}

#divNavCtr .ulHeaderSubNavFull li a{
	background-color: #234485;
}

#divNavMemberCtr .ulHeaderSubNavFull li a{
	background-color: #333;
}

#divNavCtr .ulHeaderSubNavFull li a:hover, #divNavMemberCtr .ulHeaderSubNavFull li a:hover{
	background-color: #000;
}

/********************MOBILE NAVIGATION************************/

#divMobileCtr{
	display: flex;
}

#divMobileCtr > div{
	flex-grow: 1;
	max-width: 100vw;
}

#divMobileCtr.navMembersLoggedIn > div{
	max-width: 50vw;
}

.ulNavFullMobile{
	background-color: #333;
}

.ulMobileNavMain{
	background-color: #234485;
}

.ulNavFullMobile li{
	/*padding: 16px 16px 0 16px;*/
}


.ulNavFullMobile a{
	color: white;
	font-size: 14px;
	text-decoration: none;
	display: block;
	padding: 16px;
	border-top:1px solid rgba(255,255,255,0.25);
}

.ulNavFullMobile a:hover{
	opacity:0.5;
	}


.mobileMenuChevron {
	/*transform: rotate(180deg);*/
	transition: transform 400ms ease-in;
	float: right;
	height: 17px;
	width:20px;
	padding: 8px;
	cursor: pointer;
	background-image:url('/modules/main/images/header/chevron.png');
}

.liParentNav.active .mobileMenuChevron{
	transform: rotate(180deg);
}

.childMenuItem{
	margin-top: 16px;
	width: 100%;
}

.childMenuItem a{
	display: block;
}

.ulNavFull .childMenuItem{
	margin: 0;
	border-right: none;
}

@media (max-width: 1200px){
	.mobileMenuChevron{
		display: block;
	}

	.ulHeaderSubNavFull{
		display: none;
		position: relative;
		top: 0;
		border: none;
	}

	.ulHeaderSubNavFull li a{
		border-bottom: none;
	}

}

@media (max-width: 800px){
	#divMobileCtr{
		flex-direction: column;
	}

	#divMobileCtr.navMembersLoggedIn > div{
		max-width: 100vw;
	}

	.ulHeaderSubNavFull{
		position: relative;
		border: none;
		top: 0px;

		background-image: url(/modules/main/images/header/nav_arrow.png);
		background-repeat: no-repeat;
		background-position: top 24px right 20px;
		background-size: 10px;
	}

	.ulHeaderSubNavFull li{
		border: none;
	}

	.ulHeaderSubNavFull li a{
		display: block;
		border-bottom: 0;
	}


}

/*********************FOOTER**************************/

.breadcrumb{
	margin-bottom: 20px;
	color: #666;
}

/*********************FOOTER**************************/

footer{
	padding: 25px 0 50px;
	border-top: #ccc 10px solid;
	background-color: #333;
	color: #ccc;
	text-align: center;
}

.divFootRow{
	margin: 20px 0;
}

.aSocialFooter{
	background-size: cover;
	width: 50px;
	height: 50px;
	display: inline-block;
	border-radius: 50%;
	margin: 0 20px;
	opacity: 0.5;
}

.aSocialFooter:hover{

	opacity: 1;
}

#aFacebook{
	background-image: url('/modules/main/images/footer/facebook.png');
}

#aLinkedIn{
	background-image: url('/modules/main/images/footer/linkedin.png');
}

#aX{
	background-image: url('/modules/main/images/footer/x.png');
}

#aInstagram{
	background-image: url('/modules/main/images/footer/instagram.png');
}

ul.ulFootNavPartners {
	display: flex;
	justify-content: center;
}

ul.ulFootNavPartners img {
	margin: 0 16px;
	height: 75px;
}

ul.ulFootNavMain li{
	display: inline-block;
	padding: 0 20px;
	text-align: center;
	vertical-align: top;
	border-right: 1px solid #999;
	line-height: 30px;

}

ul.ulFootNavMain li:last-child{
	border-right: none !important;

}

ul.ulFootNavMain li a{
	padding: 0 10px;
	display: block;
	font-weight: 700;
	color: #ccc;
	text-decoration: none;
}

.ulFootNavMain li .ulFootNavSub{
	display: block;
	transition: opacity 2s;
	-webkit-transition: opacity 2.0s;
	-moz-transition: opacity 2.0s;
	-o-transition: opacity 2.0s;
	display: flex;
	flex-direction: column
}

ul.ulFootNavSub li{
	display: block;
	margin: 5px 0;
	font-size: 12px;
	line-height: 16px;
	border-right: none;

}

ul.ulFootNavSub li a{
	padding: 10px;
	display: block;
	font-weight: 400;
	color: #ccc;
	text-decoration: none;
}

/*********************EVENT**************************/

.divEventQuestion{
	padding: 10px 0;
}

.divTabHolder{
	padding-top: 20px;
	padding-left: 20px;

}

.tab{
	display: inline-block;
	border: 1px solid #ccc;
	border-bottom: 0;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;

}

.tab a{
	display: block;
	line-height: 40px;
	padding: 0 20px;
}

.tab a.active{
	background-color: #666;
	color: white;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}

.tabcontent{
	border-top: 1px solid #ccc;
	padding: 40px 0;
}

@media (max-width: 800px){

	.divTabHolder{
		padding: 0;
	}

	.tab{
		display: block;
		border-bottom: 1px solid #ccc;
		margin-bottom: 10px;
	}

	.tab a, .tab a.active{
		border-radius: 5px;
	}

	.tabcontent{
		border-top: 0px solid #ccc;
	}

}

/*********************BASKET*******************************/

/*BASKET TABLE*/

.divTable{
	display: table;
	width: 100%;
	margin-bottom: 20px;
}

.divTableRow{
	display: table-row;
}

.divTableCell{
	display: table-cell;
	vertical-align: middle;
	padding: 15px;
	line-height: 24px;
	border-bottom: 2px solid #dddddd;
}

.divTable .divTableRow:last-child .divTableCell{

	border: none !important;
}

.divTableCell div{
	line-height: 24px;
}

.divTableRowHeader{
	background-color: #eeeeee;
}

.divTableRowHeader .divTableCell{
	font-weight: 700;
}

.divTableCell.highlight{
	font-weight: 700;
}

.divTutorEventHeader {
	writing-mode: vertical-rl;
}

/***************ACCOUNT*****************************/
.aAssetAction{
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	display: inline-block;
	width: 30px;
	height: 30px;
	margin-left: 3px;
	position: relative;
}

.aAssetAction.tick{
	background-image: url('/library/images/icons/tick.png');
}
.aAssetAction.tick_disabled{
	background-image: url('/library/images/icons/tick_disabled.png');
}

.aAssetAction.approve{
	background-image: url('/library/images/icons/approve.png');
}

.aAssetAction.pdf{
	background-image: url('/library/images/icons/pdf.png');
}

.aAssetAction.pdf.passed{
	background-image:url('/library/images/icons/certificate.png');
}


.aAssetAction.pdf.plain{
	background-image:url('/library/images/icons/pdf-plain.png');
}

.aAssetAction.certificate{
	background-image: url('/library/images/icons/certificate.png');
}

a.aAssetAction.paid_full{
	background-image: url('/library/images/icons/paid_full.png');
}

a.aAssetAction.paid_part{
	background-image: url('/library/images/icons/paid_part.png');
}

a.aAssetAction.paid_none{
	background-image: url('/library/images/icons/paid_none.png');
}

.aAssetAction.coursework{
	background-image: url('/library/images/icons/coursework.png');
}

.aAssetAction.coursework_download{
	background-image: url('/library/images/icons/coursework_download.png');
}

.aAssetAction.delete{
	background-image: url('/library/images/icons/delete.png');
}

.aAssetAction.view{
	background-image: url('/library/images/icons/view.png');
}


.spnWarningIcon{
	display: inline-block;
	position: absolute;
	width: 18px;
	height: 18px;
	background-color: red;
	border-radius: 10px;
	right: -7px;
	top: -7px;
	color: white;
	text-align: center;
	line-height: 18px;
	font-size: 12px;
	font-weight: 700;
	border: 1px solid white;
}

/***************DASHBOARD*******************************/

#divAccountHome div a{
	display: block;
	width: 100%;
	position: relative;
}

#divAccountHome div a:hover{
	border-color: #ccc;
}

#divAccountHome div a img{
	max-width: 80%;
	max-height: 125px;
}

.divAccountHomeSubtitle{
	padding-top: 10px;
	display: block;
	width: 100%;
	font-size: 12px;
	font-weight: 700;

}

.imgAccountAlert{
	width: 40px;
	top: 0px;
	right: 25%;
	position: absolute;
}

/*

Widgets

*/

.divLatestNewsArticleContainer h1{
	font-size: 18px;
	margin-bottom: 0;
	padding: 16px;
	line-height: 25px;
}

.divLatestNewsArticleContainer p{
	font-size: 14px;
	padding: 16px !important;
}

.divLatestNewsArticleContainer a{
	font-size: 16px;
	color: #dbeef3;
	padding: 16px !important;
}

.divLatestNewsArticleContainer img {
	width: 100%;
	max-width: 100% !important;
}

.divLatestNewsArticleContainer{
	color: #dbeef3;
	background-color: #1f497d;
}

/*************NEWS ITEM****************/
.divImgNewsView{
	float: right;
	margin: 0 0 30px 30px;
	width: 40%;
	padding: 10px;
	border: 1px solid #ccc;
}

.divImgNewsView img{
	width: 100%;
}

@media (max-width: 1000px){
	.divImgNewsView{
		float: none;
		padding: none;
		border: none;
		margin: 0 0;
		width: 100%;
	}
}


/******************CPD VIDEOS****************/

.spnCpdMinutes{
	width:45px;
	height:50px;
	background-image: url('/modules/main/images/cpd_clock.png');
	background-size: cover;
	position: absolute;
	top:10px;
	right:10px;
}

.spnCpdMinutesTxt{
	font-size:10px;
	font-weight: bold;	position: absolute;
	top:22px;
	width: 100%;
	text-align: center;
}

.spnCpdVideoWatched{
	width:36px;
	height:36px;
	background-image: url('/modules/main/images/video_watched.png');
	background-size: cover;
	position: absolute;
	top:10px;
	left:10px;
}



/*************EVENTS LISTINGS****************/

.divCategoryEvent{
	background-color: #234485;
	padding: 16px 20px 2px;
	margin-bottom: 2px;
}

.divCategoryEvent a{
	color: white;
}

.divCategoryEvent:hover a{
	text-decoration: none;
}

.divCategoryEvent:hover{
	background-color: #000;

}

/*divMapEvent*/

.divMapEvent{
	font-size: 13px;
	line-height:20px;
	border: 1px solid #ccc;
	background-color: #eee;
	padding: 5px;
	margin: 5px 0;
	border-radius: 5px;
}
.divMapEvent:hover{
	background-color: #fff;
	}

.divMapEventWarning{
	color:red
}

/******SEARCH HIGHLIGHT ***************/
.divHighlightBox{
	padding: 10px;
	background-color: #99ffff;
	border: 1px solid #6cf;
	border-radius: 2px;
	margin-bottom: 10px;
}

.divEventNoteBox {
	background-color: #E10015;
	border: 1px solid #C80000;
	color: white;
}


/**********RESPONSIVE VIDEO***********/

.video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*********************MESSAGES********************/

.message_new, .message_new a{
	color: #000099;
	font-weight: bold;

}
.message_read, .message_read a{
	color: #666;
}