/*
—————————————————————————
Global
—————————————————————————
*/
html {
	background:#fff;
}
body {
	font:16px/1.4 Quicksand, sans-serif;
}
.wrapper {
	max-width:1350px;
	padding:0 30px;
	margin:auto;
}
h1 {
	font:bold 3em/1 Quicksand;
	margin-bottom:0.75em;
	letter-spacing:-1px;
}
h1.small {
	font-size:2.2em;
	letter-spacing:0;
}
h1.block-heading {
	padding:35px 30px;
	margin:0;
	color:#fff;
}
h1.blue   { background:#02c9dd }
h1.purple { background:#832891 }
h1.orange { background:#ff7e00 }

h2 {
	font-weight:bold;
	margin:1.6em 0 0.75em 0;
	font-size:1.6em;
	line-height:1.2;
}
h2 em {
	display:block;
	color:#f60;
	font-weight:bold;
	font-style:normal;
	line-height:1.1;
}
h2 span.label {
	display:block;
	font-size:0.7em;
	font-weight:normal;
	color:#aaa;
}
h2.large {
	font-size:2.2em;
}
h3 {
	font:1.3em/1.3 Quicksand;
	margin-bottom:0.8em;
	margin-top:1.5em;
}
h2:first-child,
h3:first-child {
	margin-top:0;
}
h4 {
	font-weight:bold;
}
a {
	color:inherit;
	text-decoration:none;
}
strong {
	font-weight:bold;
}
p {
	margin-bottom:1em;
}
.dropcap > p:first-child:first-letter {
	float:left;
	color:#fff;
	background:#02c9dd;
	padding:0 6px;
	font-weight:bold;
	font-size:2.6em;
	line-height:1;
	margin:-1px 8px 0 0;
	border-radius:3px;
}
.dropcap-purple > p:first-child:first-letter {
	background:#832891;
}

/*
—————————————————————————
Header
—————————————————————————
*/
#header {
	height:180px;
	position:relative;
	z-index:2;
}
#logo {
	width:300px;
	height:154px;
	background:url(/Images/logo-kuf.png) no-repeat;
	background-size:300px 154px;
	position:absolute;
	top:12px; left:0;
}
#logo span {
	display:none;
}
#nav {
	position:absolute;
	bottom:30px; right:0;
}
#nav li {
	float:left;
	position:relative;
}
#nav li:before {
	content:'';
	float:left;
	width:32px;
	height:32px;
	background:url(/Images/star-orange.png) center no-repeat;
	background-size:20px 19px;
}
#nav li:nth-child(2):before {
	display:none;
}
#nav a {
	float:left;
	padding:0 12px;
	color:#000;
	font-size:1.3em;
	line-height:35px;
	transition:background 150ms linear;
	border-radius:4px;
}
#nav li:hover a.top {
	background:#eee;
}
#nav li.active a,
#nav li.active:hover a.top {
	color:#fff;
	background:#832891;
}
#nav li ul {
	display:none;
	position:absolute;
	top:35px; left:32px;
	background:#fff;
	width:200px;
	border-radius:4px;
	border:4px solid #ddd;
}
#nav li:first-child ul {
	left:0;
}
#nav li:hover ul {
	display:block;
}
#nav ul li {
	float:none;
}
#nav ul li a,
#nav li.active ul li a {
	float:none;
	display:block;
	font-size:16px;
	border-radius:0;
	color:inherit;
	background:#fff;
}
#nav ul li a:hover,
#nav li.active ul li a:hover {
	background:#eee;
}
#nav ul li:before {
	display:none;
}
.phone {
	position:absolute;
	top:26px; right:150px;
	color:#832891;
	line-height:1;
	font-size:1.3em;
	margin:0;
}
.phone span {
	margin-left:1em;
}
.phone em {
	font-style:normal;
}
.signin {
	position:absolute;
	top:22px; right:0;
	color:#fff;
	background:#f60;
	font-weight:bold;
	line-height:1.7;
	padding:0 1em;
	border-radius:4px;
}
#close {
	display:none;
}
#hamburger {
	display:none;
	position:absolute;
	top:23px; right:20px;
	width:36px;
	height:35px;
	z-index:1;
	cursor:pointer;
	border-radius:3px;
}

/*
—————————————————————————
Home
—————————————————————————
*/
#alert {
	color:#fff;
	background:#f60;
	padding:10px;
	text-align:center;
	margin-bottom:10px;
}
#alert strong {
	text-transform:uppercase;
	margin-right:4px;
}
#grid .block {
	float:left;
	box-sizing:border-box;
	height:270px;
	color:#fff;
	text-align:center;
	overflow:hidden;
	position:relative;
}
#grid .block1 { width:20% }
#grid .block2 { width:40% }
#grid .block3 { width:60% }
#grid .block4 { width:80% }

.block h3 {
	font-size:2em;
	line-height:1.1;
	margin:0;
	padding:0 10px;
}
.block .middle {
	display:table;
	width:100%;
	height:270px;
	color:inherit;
}
.block .middle div {
	display:table-cell;
	vertical-align:middle;
	transition:transform 200ms ease-in-out;
}
.block img {
	position:absolute;
	top:0; left:50%;
	margin-left:-216px;
}
.block2 img {
	margin-left:-270px;
}
.block a.middle:hover div {
	transform:scale(1.2);
}
p.intro {
	font-size:1.5em;
	padding:0.3em 1.2em 0 1.2em;
	margin-bottom:0.9em;
	line-height:1.3;
}
p.intro b {
	font-size:1.1em;
}
p.intro small {
	font-size:0.7em;
}
p.intro .nowrap {
	white-space:nowrap;
}
a.start {
	display:inline-block;
	margin:0 0.4em;
	color:#fff;
	background:rgba(0,0,0,0.3);
	line-height:2.2;
	padding:0 1em;
	border-radius:4px;
	transition:background 200ms ease-in-out;
	font-weight:bold;
	font-size:1.1em;
}
a.start:hover {
	background:rgba(0,0,0,0.4);
}
.block .button {
	display:inline-block;
	line-height:1.5;
    border-bottom: 1px solid rgba(255,255,255,0.5);
}
a.video span {
	position:absolute;
	top:16px; left:16px;
	color:#fff;
	line-height:1.6em;
	padding:0 8px;
	background:rgba(0,0,0,0.3);
}
a.video:after {
	content:'';
	background:rgba(0,0,0,0.5) url(/Images/icon-play.png) center no-repeat;
	background-size:28px 32px;
	position:absolute;
	bottom:16px; left:16px;
	width:72px;
	height:54px;
	border-radius:4px;
	opacity:0.5;
	transition:opacity 100ms linear;
}
a.video:hover:after {
	opacity:0.8;
}

/*
—————————————————————————
Page Template
—————————————————————————
*/
#page {
	display:table;
	width:100%;
}
#text {
	width:80%;
	display:table-cell;
	background:#fff;
	padding:40px;
	vertical-align:top;
}
.markdown a {
	color:#02c9dd;
	font-weight:bold;
}
img.hero {
	float:right;
	margin:0 10px 40px 40px;
	max-height:500px;
	max-width:300px;
	transform:rotate(3deg);
}
#thumbs {
	margin:30px -14px 0 0;
	padding-top:8px;
}
#thumbs li {
	float:left;
	margin:0 14px 14px 0;
}
#thumbs img {
	display:block;
	width:150px;
	height:150px;
	background:#f2f2f2;
}
#thumbs a:hover img {
	opacity:.93;
}

/*
—————————————————————————
Sidenav
—————————————————————————
*/
#sidebar {
	display:table-cell;
	background:#eee;
	width:20%;
	padding:30px;
	box-sizing:border-box;
	vertical-align:top;
}
#sidebar li a {
	display:block;
	padding:0.5em 0;
	border-bottom:1px solid #ccc;
	color:inherit;
}
#sidebar li.active a {
	font-weight:bold;
}
#sidebar li:last-child a {
	border:0;
}

#sidebar.sidebar-blue a { border-color:#02c9dd }
#sidebar.sidebar-blue li.active a { color:#02c9dd }

#sidebar.sidebar-purple a { border-color:#c752d9 }
#sidebar.sidebar-purple li.active a { color:#c752d9 }

.subnav {
	margin-top:30px;
	font-size:0.9em;
}
#sidebar .subnav li.active a {
	color:#f60;
}
#sidebar .subnav a {
	border-color:#ccc;
}

/*
—————————————————————————
Footer
—————————————————————————
*/
#footer {
	padding:40px;
	background:#f5f5f5;
	margin-top:40px;
	font-size:0.85em;
	position:relative;
}
#footer address {
	float:left;
	margin-right:5em;
}
#footer address strong,
#footer address span {
	display:block;
}
#footer #links {
	float:left;
}
#social-icons {
	float:right;
}
#social-icons li {
	float:left;
	margin-left:8px;
}
#social-icons a {
	display:block;
	width:40px;
	height:40px;
}
#social-icons a {
	background-repeat:no-repeat;
	background-position:center;
	background-size:40px 40px;
	border-radius:3px;
}
#social-icons a.vimeo    { background-image:url(/Images/icon-vimeo.png) }
#social-icons a.facebook { background-image:url(/Images/icon-facebook.png) }

#social-icons span {
	display:none;
}

/*
——————————————————————
Forms
——————————————————————
*/
.form h3 {
	font-weight:bold;
	margin-top:2em;
}
.form h3:first-child {
	margin-top:0;
}
.form p {
	margin-bottom:0.8em;
}
.form p.checkboxes input {
	margin-right:4px;
	position:relative;
	top:1px;
}
.form label {
	display:block;
	font-size:13px;
	margin-bottom:1px;
	color:#777;
}
.form .checkboxes label {
	display:inline;
	color:inherit;
	margin:0;
	font-size:inherit;
}
.form input.text,
.form textarea,
.form select {
	display:block;
	padding:5px 6px;
	border-radius:4px;
	border:1px solid #ccc;
	width:100%;
	box-sizing:border-box;
	max-width:400px;
	box-shadow:2px 2px #ccc;
}
.form select {
	display:inline-block;
	width:auto;
}
.form select.full {
	width:100%;
}
.form input.text:focus,
.form textarea:focus,
.form select:focus {
	outline:none;
	border-color:#02c9dd;
	box-shadow:2px 2px #02c9dd;
}
.form input.postcode {
	display:inline-block;
	width:80px;
}
.form textarea {
	height:120px;
}
.form input.button {
	display:inline-block;
	color:#fff;
	background:#832891;
	width:140px;
	padding:8px 5px;
	border-radius:4px;
	text-align:center;
	font-weight:bold;
	text-decoration:none;
	margin:0 auto 10px auto;
	border:0;
	cursor:pointer;
	margin-top:20px;
	outline:none;
	-webkit-appearance:none;
}
.form input.button:hover  {
	background:#741982;
}
.form input.button:active  {
	background:#641171;
}
.form input.delete-button {
	background:#ccc !important;
	margin-left:6px;
}
.form .add-button {
	display:inline-block;
	background:#eee;
	padding:10px;
	border-radius:7px;
	margin:2em 0 1em 0;
}
.form .add-button input {
	margin-right:5px;
}
.validation-container {
	color:#e00;
	margin-bottom:1em;
}
.confirm {
	display:inline-block;
	color:#fff;
	font-weight:bold;
	font-size:1.3em;
	background:#02c9dd;
	border-radius:10px;
	padding:6px 15px;
}
.confirm:before {
	content:'✓ ';
}
.form .total {
	display:inline-block;
	padding:4px 0;
	border-top:1px solid #aaa;
	border-bottom:4px double #aaa;
	margin-bottom:1.8em;
}
.total span {
	margin-left:5px;
}
.form p.error {
	color:#fff;
	background:red;
	position:relative;
	top:18px;
	line-height:1.1;
	display:inline-block;
	padding:4px 9px;
	border-radius:4px;
	font-weight:bold;
}

/*
——————————————————————
Contact
——————————————————————
*/
.thanks p {
	font-size:0.9em;
}
.thanks a {
	color:#832891;
	font-weight:bold;
}
img.sig {
	display:block;
	width:130px;
	height:50px;
}


/*
——————————————————————
Photo Galleries
——————————————————————
*/
#albums li {
	float:left;
	width:200px;
	height:290px;
	margin-right:20px;
}
#albums li a {
	display:block;
	font-size:14px;
}
#albums img {
	display:block;
	width:200px;
	height:200px;
	background:#f2f2f2;
	margin-bottom:12px;
}
#albums li a:hover img {
	opacity:.93;
}
#albums li a strong {
	display:block;
	padding:0 20px;
	text-align:center;
	position:relative;
	z-index:1;
}
#albums li a span {
	display:block;
	text-align:center;
}
#images {
	margin-right:-14px;
	padding-top:8px;
}
#images li {
	float:left;
	margin:0 14px 14px 0;
}
#album img {
	display:block;
	width:150px;
	height:150px;
	background:#f2f2f2;
}
#album a:hover img {
	opacity:.93;
}
#albumHeader {
	height:30px;
	border-bottom:1px solid #ddd;
	margin-bottom:20px;
}
#albumHeader span {
	float:left;
	line-height:25px;
}
#albumHeader ul {
	float:right;
}
#albumHeader li {
	float:left;
}

/*
——————————————————————
Videos
——————————————————————
*/
#videos li {
	float:left;
	width:200px;
	height:220px;
	margin-right:20px;
}
#videos li a {
	display:block;
	font-size:14px;
}
#videos img {
	display:block;
	width:200px;
	height:150px;
	background:#f2f2f2;
	margin-bottom:12px;
}
#videos li a:hover img {
	opacity:.93;
}
#videos li a strong {
	display:block;
	padding:0 20px;
	text-align:center;
	position:relative;
	z-index:1;
}
#videos li a span {
	display:block;
	text-align:center;
}

/*
——————————————————————
Lists & Buttons
——————————————————————
*/
ul.bullet {
	padding-left:1.2em;
	margin-bottom:1.3em;
}
ul.bullet li {
	list-style-type:none;
}
ul.bullet li:before {
	float:left;
	font-family:Arial,sans-serif;
    content: "\25cf";
    color:#02c9dd;
    font-size:0.8em;
	width:1.5em;
	margin-left:-1.5em;
	position:relative;
	top:0.1em;
}
ul.bullet ul li:before {
    content: "–";
	margin-left:-1.2em;
}
ol, ul.bullet ul {
	padding-left:18px;
	margin-bottom:1em;
}
ol li {
	padding-left:1em;
}
ol li,
ul.bullet ol li {
	list-style:decimal;
	background:none;
}
ol ul.bullet li, ul.bullet ul li {
	padding-left:0;
	margin:0;
}
.register-button {
	display:inline-block;
	color:#fff;
	background:#832891;
	padding:6px 20px;
	border-radius:4px;
	text-align:center;
	font-weight:bold;
	margin:0 auto 10px auto;
	border:0;
	cursor:pointer;
}

/*
—————————————————————————
Map
—————————————————————————
*/
#map {
	height:400px;
	margin-bottom:30px;
}
#locations li {
	margin-bottom:1em;
	background:url(/Images/mapicon.png) 0 3px no-repeat;
	background-size:13px 20px;
	padding-left:22px;
}
#locations li strong {
	cursor:pointer;
}
#locations div {
	display:none;
}

/*
—————————————————————————
Staff
—————————————————————————
*/
#staff {
	width:103%;
	margin:-20px -3% 0 0;
}
#staff li {
	margin-bottom:1.5em;
	float:left;
	width:47%;
	box-sizing:border-box;
	margin-right:3%;
	border-top:1px solid #ddd;
}
#staff li:nth-child(odd) {
	clear:left;
}
#staff li:nth-child(1),
#staff li:nth-child(2) {
	border-top:0;
}
#staff a {
	position:relative;
	display:block;
	padding:20px 0 0 170px;
	min-height:197px;
}
#staff img {
	position:absolute;
	top:17px; left:0;
	width:145px;
	height:207px;
	border-radius:4px;
}
#staff a:hover img {
	opacity:0.94;
}
#staff p.staff-name {
	margin-bottom:0.5em;
}
#staff p.staff-name strong {
	display:block;
	color:#f60;
	font-size:1.1em;
}
#staff p.staff-name span {
	display:block;
	color:#aaa;
	font-size:0.9em;
}
.staff-image-wrapper a {
	outline:none;
}
.staff-image-wrapper img {
	float:right;
	margin:-40px 10px 40px 40px;
	max-height:400px;
	transform:rotate(3deg);
}

/*
—————————————————————————
Testimonials
—————————————————————————
*/
#testimonials {
	width:102.33%;
	margin:0 -2.33% 0 0;
}
#testimonials li {
	float:left;
	width:31%;
	margin:0 2.33% 24px 0;
	min-height:230px;
	padding:16px;
	box-sizing:border-box;
	background:#f2f2f2;
	border-bottom:1px solid #eee;
	border-radius:4px;
}
#testimonials li:nth-child(3n+1) {
	clear:left;
}
#testimonials q {
	display:block;
	margin-bottom:5px;
}
#testimonials cite {
	display:block;
}
#testimonials cite strong {
	display:block;
	color:#f60;
}
#testimonials cite span {
	display:block;
	color:#aaa;
	font-size:0.9em;
}
#testimonials li:nth-child(even) cite strong {
	color:#02c9dd;
}

/*
—————————————————————————
FAQs
—————————————————————————
*/
#view-all {
	display:inline-block;
	color:#fff;
	background:#832891;
	width:150px;
	padding:6px 5px;
	border-radius:4px;
	text-align:center;
	font-weight:bold;
	margin:0 auto 10px auto;
	border:0;
	cursor:pointer;
}
#view-all.blue {
	background:#02c9dd;
}
#faqs li.top {
	margin-bottom:1em;
	border-bottom:1px solid #ddd;
}
#faqs .question {
	cursor:pointer;
}
#faqs .question-active {
	font-weight:bold;
	color:#f60;
}
#faqs .question:before {
	content:'+';
	color:#aaa;
	display:inline-block;
	border:1px solid #ccc;
	margin-right:0.8em;
	border-radius:4px;
	line-height:1;
	width:1.2em;
	text-align:center;
	box-sizing:border-box;
}
#faqs .question-active:before {
	content:'-';
	color:#aaa;
	font-weight:normal;
}
#faqs .answer {
	display:none;
	padding-left:2em;
}
#faqs .answer-active {
	display:block;
}

/*
—————————————————————————
Courses
—————————————————————————
*/
.courses {
	width:102%;
	margin-right:-2%;
}
.courses h3 {
	margin-bottom:0.3em;
}
.courses li {
	float:left;
	width:48%;
	margin:0 2% 20px 0;
	background:#eee;
	padding:20px;
	box-sizing:border-box;
}
.courses dt, .courses dd {
	float:left;
}
.courses dt {
	clear:left;
	font-weight:bold;
	color:#02c9dd;
	margin-right:0.3em;
}
.courses a.button, .courses span.button {
	display:inline-block;
	color:#fff;
	background:#02c9dd;
	font-weight:bold;
	line-height:1.7;
	padding:0 1em;
	border-radius:4px;
	margin-top:0.8em;
}
.courses .limited {
	margin-left:0.5em;
	font-weight:bold;
	color:#f60;
}
.location {
	margin-bottom:1em;
}
.location:nth-child(even) .courses dt {
	color:#f60;
}
.location:nth-child(even) .courses a.button {
	background:#f60;
}

/*
—————————————————————————
Basic Page
—————————————————————————
*/
.basic-page {
	padding-top:20px;
}

/*
—————————————————————————
Self Service
—————————————————————————
*/
.ss-button {
	display:inline-block;
	color:#fff;
	background:#f60;
	font-weight:bold;
	line-height:1.7;
	padding:0 1em;
	border-radius:4px;
}
.back-button {
	padding:0 0.7em;
}
.back-button:before {
    content:'';
    display:inline-block;
    width:5px;
    height:9px;
    background:url(/Images/arrow-back.png) no-repeat;
    background-size:5px 9px;
    margin-right:0.7em;
}
.eway-button,
.eway-button span {
	-webkit-box-shadow:none !important;
	-moz-box-shadow:none !important;
	box-shadow:none !important;
	outline:none !important;
	font:bold 16px/36px Quicksand, sans-serif !important;
	height:36px !important;
}
.eway-button span {
	background:none !important;
}
.eway-button {
	background:#832891 !important;
	-webkit-border-radius:4px !important;
	-moz-border-radius:4px !important;
	border-radius:4px !important;
	padding:0 15px !important;
}
.eway-button:hover  {
	background:#741982 !important;
}
.eway-button:active  {
	background:#641171 !important;
}