
/*
Grey:   #1a1a1a  rgba(26 , 26 , 26 , 1)
Light:  #e4a4c8  rgba(228, 164, 200, 1)
Medium: #cf5594  rgba(207, 85 , 148, 1)
Dark:   #822572  rgba(130, 37 , 114, 1)

*/

html{
	height: 100%;
	width: 100%;
	font-size: 12pt;
	}
body{
	height: 100%;
	width: 100%;
	margin: 0;
	position: absolute;
	color: #1a1a1a;
	background: #fff;
	background-size: cover;
	font-family: main, Verdana;
	}
.wrapper{
	width: 100%;
	margin: 0 auto;
	min-height: 100%;
	}
.innerwrapper{
	width: 90%;
	margin: 0 auto;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
	position: relative;
	}
header, .normal, footer, .homelower div{
	padding: 1em;
	box-sizing: border-box;
	}
footer{
	font-size: 0.7em;
	}
header{
	width: 100%;
	padding-top: 0;
	}
header .header-main{
	box-sizing: border-box;
	width: 90%;
	margin: 0 auto;
	font-family: mainBold;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 1em;
	}
header .sitename{
	height: 100%;
	}
header .sitename img{
	height: 64px;
	}
.social-media{
	display: flex;
	justify-content: flex-end;
	/*border-bottom: 1px solid #cf5594;*/
	margin-bottom: 1em;
	padding: 0.2em 0 0.2em 0;
	position: absolute;
	top: 0.2em;
	right: 0.2em;
	}
.social-media a{
	height: 1.25em;
	width: auto;
	margin-right: 0.2em;
	display: block;
	filter: saturate(0) brightness(1.8);
	transition: filter 0.25s;
	}
.social-media a:hover{
	filter: initial;
	}
.social-media img{
	height: 100%;
	width: auto;
	display: block;
	}
h1, h2, h3{
	font-family: mainLight;
	color: #822572;
	text-align: center;
	/*margin: 0 2em 2em 0;*/
	margin: 2em;
	}
h1{
	font-size: 2em;
	margin: 1em;
	}
.homelarge{
	font-size: 3.5em;
	font-family: main;
	text-align: center;
	}
/*
.homelarge:after {
  content: "";
  display: inline-block;
  width: 100%;
	}
*/
header nav {
	display: flex;
	justify-content: center;
	align-items: center;
	}
header nav ul{
	list-style-type: none;
	padding: 0;
	margin: 0;
	}
header nav li{
	display: inline-block;
	box-sizing: border-box;
	border-width: 0;
	border-top: solid rgba(0,0,0,0);
	border-bottom: solid rgba(0,0,0,0);
	}
header nav li + li{
	margin-left: 1em;
	}
.normal{
	padding: 1em;
	}
header nav ul li a,
header nav ul a{
	transition: color 0.2s;
	}
header nav ul li:hover a{
	transition: color 0.2s;
	transition: border-bottom 0.2s;
	border-bottom: 10px solid #e4a4c8;
	}
.home-paras{
	margin: 2em;
	text-align: center;
	}
.home-paras p{
	text-align: center;
	font-family: mainLight;
	color: #822572;
	font-size: 2em;
	}
.home-paras p + p{
	margin-top: 2em;
	}
nav a{
	text-decoration: none;
	}
.slider{
	width: 100%;
	height: 20em;
	overflow: hidden;
	position: relative;
	}
.slider:after{
	background-image: url("img/s1.jpg");
	background-position: center center;
	background-size: cover;
	width: 100%;
	height: 100%;
	content: ' ';
	display: block;
	position: absolute;
	top: 0;
	z-index: 5;
	}
.slidertext{
	/*background: rgba(0,0,0,0.8);8*/
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 200%;
	color: #fff;
	padding-left: 10%;
	padding-right: 10%;
	box-sizing: border-box;
	position: relative;
	z-index: 10;
	padding-top: 1em;
	padding-bottom: 1em;
	}
.slider img{
	width: 100%;
	display: block;
	}
section{
	margin-bottom: 3em;
	}
table.gapless tr{
	padding: 0;
	margin: 0;
	}
table.gapless td{
	padding: 0;
	margin: 0;
	}
table.gapless td:first-child{
	padding-right: 1em;
	}
ul{
	margin: 2em;
	}
.flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
	}
.flex > *{
	flex-basis: 0;
	flex-grow: 20;
	width: auto;
	overflow: hidden;
	}
.flex > * + *{
	margin-left: 2em;
	}
.flex > * img{
	width: 100%;
	display: block;
	}
p{
	margin: 2em;
	margin-top: 0;
	text-align: left;
	}
body.about-us p{
	text-align: justify;
	}
.fullwidth{
	display: block;
	width: 100%;
	height: auto;
	}
.floatimg{
	float: right;
	clear: both;
	width: 25em;
	height: auto;
	margin-left: 2em;
	margin-bottom: 2em;
	}
.modal{
	display: none;
	opacity: 0;
	transition: opacity 0.2s;
	background: rgba(0,0,0,0.7);
	position: fixed;
	justify-content: center;
	align-items: center;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	}
.modal > *{
	max-height: 100%;
	max-width: 100%;
	}
.center-block{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin: 2em;
	}
.programmes{
	display: flex;
	justify-content: space-between;
	margin: 2em;
	}
.partners{
	margin: 2em;
	}
section.partners .partner-wrap{
	display: flex;
	justify-content: center;
	margin-top: 2em;
	flex-wrap: wrap;
	align-items: stretch;
	}
section.partners .partner-wrap > .partner{
	/*width: calc((100% - 6em) /4)*/
	/*width: 25%;*/
	/*height: 6em;*/
	/* width: 150px;*/
	box-sizing: border-box;
	/*flex: 1 0;*/
	display: flex;
	align-items: center;
	padding: 1em;
	width: 10em;
	/*margin: 1em;
	background: #e4a4c8;*/
	}
section.partners .partner-wrap > .partner + .partner{
	/*margin-left: 2em;*/
	}
section.partners .partner-wrap > .partner img{
	/*width: 100%;
	width: 100%;
	height: auto;
	*/
	width: 100%;
	height: auto;
	}
	

main.partners .partner-wrap > .partner img{
	position: relative;
	max-width: 100%;
	max-height: 100%;
	}
main.partners .partner{	
	position: relative;
	min-height: 8em;
	display: flex;
	align-items: center;
	}
main.partners .partner-wrap{
	display: flex;
	justify-content: space-evenly;
	margin-top: 2em;
	flex-wrap: wrap;
	align-items: stretch;
	}
main.partners .partner-wrap > .partner{
	/*width: 150px;*/
	box-sizing: border-box;
	/*background: rgba(207, 85 , 148, 1);*/
	overflow: hidden;
	width: calc(50% - 2em);
	margin: 1em;
	}
main.partners .partner-wrap > .partner a{
	text-decoration: none;
	}
.partner-logo, .partner-content{
	height: 100%;
	width: 100%;
	padding: 1em;
	box-sizing: border-box;
	}
.partner-content p{
	margin: 1em;
	}
main.partners a.partner-content{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	}
main.partners .partner-logo{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	}
.partner-logo{
	position: relative;
	}
.partner-content{
	position: absolute;
	background: rgba(130, 37 , 114, 1);
	color: #fff;
	top: 100%;
	transition: top 0.25s;
	}
.partner:hover .partner-content{
	top: 0;
	}
img.fullwidth + img.fullwidth {
	margin-top: 2em;
	}
.programmes a  + a{
	margin-left: 2em;	
	}
.programmes a{
	background: url("img/s1.jpg");
	background-position: center center;
	background-size: cover;
	color: #fff;
	display: flex;
	align-items: center;
	text-align: center;
	flex: 1 0;
	text-decoration: none;
	}
.programmes h2{
	color: #fff;
	}
.programmes a:nth-child(3n){
	background: url("img/s1.jpg");
	}
.programmes a:nth-child(3n+1){
	background: url("img/s2.jpg");
	}
.programmes a:nth-child(3n+2){
	background: url("img/s3.jpg");
	}
.programmes a > div{
	padding: 1em;
	background: rgba(207, 85 , 148, 0.9);
	height: 100%;
	width: 100%;
	box-sizing: border-box;
	transition: background 0.25s;
	}
.programmes a > div:hover{
	background: rgba(130, 37 , 114, 0.9);
	}
a{
	color: #cf5594;
	}
@keyframes letterspacing{
	from {letter-spacing: 0.5em;}
	to      {letter-spacing: 0.1em;}
	}
	
:not(body).testimonials{
	margin: 2em;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	}
.testimonial{
	margin-bottom: 2em;
	text-align: justify;
	}
.testimonial-person{
	color: rgba(207, 85 , 148, 1);
	display: block;
	font-family: mainLight;
	text-align: right;
	}
/*-------------Gallery----------*/

.long-gallery{
	width: 25%; 
	box-sizing: border-box; 
	padding: 0.5em;
	}
.long-gallery img{
	width: 100%;
	transform: scale(1);
	transition: transform 0.5s;
	position: relative;
	z-index: 0;
	}
.long-gallery img:hover{
	transform: scale(2);
	z-index: 10;
	}

.gallery-container{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	}
.gallery-container > *{
	width: calc(16.66% - 2em);
	margin: 1em;
	font-size: 1em;
	height: 10em;
	}
@media (max-width: 1599px){
	.gallery-container > *{
		width: calc(20% - 2em);
		}
	}
@media (max-width: 1299px){
	.gallery-container > *{
		width: calc(25% - 2em);
		}
	}
@media (max-width: 999px){
	.gallery-container > *{
		width: calc(33.33% - 2em);
		}
	}
@media (max-width: 699px){
	.gallery-container > *{
		width: calc(50% - 2em);
		}
	}
@media (max-width: 399px){
	.gallery-container > *{
		width: calc(100% - 2em);
		}
	}
.gallery-container  a{
	/*
	width: 100%;
	height: 100%;
	display: block;
	*/
	overflow: hidden;
	}
.gallery-container  img{
	width: 100%;
	height: auto;
	/*object-fit: cover;*/
	}
.gallery-container  h2{
	background: #822572;
	color: #fff;
	margin: 1em;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0.5em;
	box-sizing: border-box;
	}
@font-face {font-family: mainBold; src: url("other/OpenSans-Bold.ttf");}
@font-face {font-family: mainLight; src: url("other/OpenSans-Light.ttf");}
@font-face {font-family: main; src: url("other/OpenSans-Regular.ttf");}

/* ()()()()()()()()()()()() Menu ()()()()()()()()()()()() */
body #mega-menu-wrap-main #mega-menu-main > li.mega-menu-flyout ul.mega-sub-menu{
	width: 13em;
	}

body #mega-menu-wrap-main #mega-menu-main > li.mega-menu-item > a.mega-menu-link,
body #mega-menu-wrap-main #mega-menu-main > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link{
	text-transform: uppercase;
	}	
#mega-menu-wrap-main .mega-menu-toggle .mega-toggle-block-1::after{
	content: "";
  }
#mega-menu-wrap-main .mega-menu-toggle.mega-menu-open .mega-toggle-block-1.mega-toggle-block-1::after {
	content: "";
	}
#mega-menu-wrap-main .mega-menu-toggle.mega-menu-toggle{
	-webkit-border-radius: 0 0 0 0;
	-moz-border-radius: 0 0 0 0;
	-ms-border-radius: 0 0 0 0;
	-o-border-radius: 0 0 0 0;
	border-radius: 0 0 0 0;
	}
#mega-menu-wrap-main .mega-menu-toggle.mega-menu-open + #mega-menu-main{
	z-index: 10;
	position: absolute;
	right: 0;
	}
#mega-menu-wrap-main {
	position: absolute;
	}
#mega-menu-wrap-main #mega-menu-main > li.mega-menu-item > a.mega-menu-link.mega-menu-link{
	white-space: nowrap;
	height: initial;
	line-height: initial;
	}
a.mega-menu-link{
	white-space: nowrap;
	}
body #mega-menu-wrap-main #mega-menu-main li.mega-menu-flyout.mega-menu-item-has-children > a.mega-menu-link::after, #mega-menu-wrap-main #mega-menu-main li.mega-menu-flyout li.mega-menu-item-has-children > a.mega-menu-link::after, #mega-menu-wrap-main #mega-menu-main > li.mega-menu-item-has-children > a.mega-menu-link::after{
	display: none;
	}
body #mega-menu-wrap-main #mega-menu-main > li.mega-menu-item > a.mega-menu-link{
	padding-left:  0.5vw;
	padding-right: 0.5vw;
	}
/* ()()()()()()()()()()()() Admin ()()()()()()()()()()()() */	
html body #wpadminbar {
	position: fixed;
	}
/* ()()()()()()()()()()()() Programme Page ()()()()()()()()()()()() */	
.two-columns{
	display: flex;
	align-items: stretch;
	flex-direction: column;
	flex-wrap: wrap;
	align-content: space-evenly;
	}
.two-columns .first{
	flex: 2 0 50%;
	page-break-after: always;
	}
.two-columns > div:not(:first-child){
	flex: 2 0 10%;
	}
.two-columns .second{
	display: flex;
	flex-direction: column;
	padding-right: 2em;
	flex: 0 1 auto;
	justify-content: space-between;
	}
.two-columns .second > *{
	width: 100%;
	height: auto;
	margin-bottom: 2em;
	}
/* ()()()()()()()()()()()() Form ()()()()()()()()()()()() */	
.wpcf7-form{
	width: 60%;
	margin: 0 auto;
	}
.wpcf7-form label,
.wpcf7-form span,
.wpcf7-form input,
.wpcf7-form textarea{
	width: 100%;
	}
	/* ()()()()()()()()()()()() Sizes ()()()()()()()()()()()() */	
@media (max-width: 950px){
	.social-media{
		position: relative;
		width: 100%;
		margin-bottom: 0;
		}
	}
@media (max-width: 699px){
	.innerwrapper{
		width: 100%;
		}
	header{
		align-items: center;
		}
	.sitename{
		/*animation: letterspacing 1s ease;*/
		}
	section{
		margin-bottom: 2em;
		}
	.programmes{
		flex-wrap: wrap;
		}
	.programmes a{
		width: 100%;
		flex: auto;
		}
	.programmes a + a{
		margin-left: 0;
		margin-top: 2em;	
		}
	/*
	.partners{
		flex-wrap: wrap;
		}
	.partners .color-block{
		/margin-bottom: 2em;
		}
	.partners .color-block  + .color-block{
		margin-left: 0;
		margin-top: 2em;		
		}
		*/
	
	main.partners .partner-wrap > .partner{
		width: 100%;
		max-width: initial;
		}
	main.partners .partner-wrap > .partner + .partner{
		margin-left: 0;
		margin-top: 2em;
		}
	header{
		flex-wrap: wrap;
		}
	header nav{
		/width: 100%;
		height: 2em;
		width: 2em;
		overflow: hidden;
		background: #e4a4c8;
		}
	header nav *{
		display: none;
		}
	header nav ul{
		width: 100%;
		display: flex;
		justify-content: space-between;
		margin-top: 10px;
		}
	header nav li{
		letter-spacing: 0;
		}
	header nav li:hover{
		letter-spacing: 0;
		}
	header nav li + li{
		margin-left: 0;
		}
	section.partners .partner-wrap > .partner{
		/*
		width: 50%;
		flex: auto;
		*/
		}
	body #mega-menu-wrap-main #mega-menu-main {
		/*position: relative
		display: flex;
		flex-direction: column;*/
		width: 13em;
		}
	.floatimg{
		width: 33%;
		clear: both;
		}
	.wpcf7-form{
		width: 100%;
		margin: 0 auto;
		}
	}
@media (max-width: 539px){

	}
@media (max-width: 399px){
	header nav ul{
		flex-direction: column
		}
	}