@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;600;700&display=swap');

/*Global------------------------------------------------------------------------*/
* {
	
	margin: 0rem;
	padding: 0rem;
	border: 0rem;
	box-sizing: border-box;
	list-style: none;
	
}

/*General Settings--------------------------------------------------------------*/

html,body {
	max-width: 100vw;
	font-family: 'Rubik', sans-serif;
	font-size: 1rem;
	line-height: 1.5rem;
	text-align: center;
	background: #fff;
	color: rgb(41, 41, 41);
	z-index: 0;
	scroll-behavior: smooth;
	
	
	
}

main {
	overflow-x: hidden;
	
}



a {
	max-width: 100vw;
	color: #3399cc;
	text-decoration: none;
	font-weight: 600;
}

h1 {
	font-size: 2rem;
	text-transform: uppercase;
	margin: 0rem 0rem 1rem 0rem;
}

h2 {
	font-size: 1.8rem;
	margin: 0rem 0rem 1rem 0rem;
	color: #ff9933;
}

h3 {
	font-size: 1.6rem;
	margin: 0rem 0rem 1rem 0rem;
}

h4 {
	font-size: 1.4rem;
	margin: 0rem 0rem 1rem 0rem;
}

h5 {
	font-size: 1.2rem;
	margin: 0rem 0rem 1rem 0rem;
}

h6 {
	font-size: 0.8rem;
	margin: 0rem 0rem 1rem 0rem;
}

p {
	font-size: 1rem;
	color: rgb(41, 41, 41);
	text-align: center;
	margin: 1rem 0rem 1rem 0rem;
}

/*main navigation menu-----------------------------------------------------------------------*/

.container {
	max-width: 100vw;
	width: 100%;
	z-index: 1;
  }
  
  .navbar {
	width: 100vw;
	background-color: #333333;
	height: 4.2rem;
  }
  
  .nav-container {
	display: block;
	position: relative;
	justify-content: space-between;
	align-items: center;
	height: 4rem;
  }

  .navbar .menu-items {
	display: flex;
  }
  
  .navbar .nav-container li {
	list-style: none;
  }
  
  .navbar .nav-container a {
	text-decoration: none;
	text-transform: uppercase;
	color: #ff9933;
	font-weight: 400;
	font-size: 2rem;
	padding: 0.8rem;
  }
  
  .navbar .nav-container a:hover{
	  font-weight: bolder;
  }

  .navbar .nav-container a:target{
	transition: all 1.8s ease;
  }
  
  .nav-container .checkbox {
	position: absolute;
	display: block;
	height: 2rem;
	width: 2rem;
	top: 1.5rem;
	right: 1.5rem;
	z-index: 5;
	opacity: 0;
	cursor: pointer;
  }
  
  .nav-container .hamburger-lines {
	display: block;
	height: 1.625rem;
	width: 2rem;
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
  }
  
  .nav-container .hamburger-lines .line {
	display: block;
	height: 0.25rem;
	width: 100%;
	border-radius: 0.625rem;
	background: #ff9933;
  }

  .nav-container .hamburger-lines .line1 {
	transform-origin: 0% 0%;
	transition: transform 0.4s ease-in-out;
  }
  
  .nav-container .hamburger-lines .line2 {
	transition: transform 0.2s ease-in-out;
  }
  
  .nav-container .hamburger-lines .line3 {
	transform-origin: 0% 100%;
	transition: transform 0.4s ease-in-out;
  }
  
  .navbar .menu-items {
	padding-top: 4.5rem;
	background-color: rgb(0, 0, 0);
	background-color:  rgba(0, 0, 0, 0.9);
	height: 100vh;
	min-width: 100vw;
	width: 100%;
	transform: translate(150%);
	display: flex;
	flex-direction: column;
	transition: transform 0.5s ease-in-out;
	text-align: center;
  }
  
  .navbar .menu-items li {
	margin-bottom: 1.2rem;
	font-size: 2rem;
	font-weight: 500;
  }
  
 /*logo------------------------------------------------------------------------------------*/

  .logo {
	position: absolute;
	max-width: 5rem;
	margin-top: 0.2rem;
	margin-right: 0rem;
	margin-bottom: 0rem;
	margin-left: 0.2rem;
	cursor: pointer;
  }


  

  /*Navigation popout code------------------------------------------------------------*/

  .nav-container input[type="checkbox"]:checked ~ .menu-items {
	transform: translateX(0);
  }
  
  .nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line1 {
	transform: rotate(45deg);
  }
  
  .nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line2 {
	transform: scaleY(0);
  }
  
  .nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line3 {
	transform: rotate(-45deg);
  }
  
 
/*landing page------------------------------------------------------------------------------------------------------------*/

.landing-page {
	display: inline-block;
	background-color: #fff;
	max-width: 100vw;
	width: 100%;
	
}

.landing-page .logo-full {
	margin: 1rem auto 1rem;
	display: block;
	max-width: 20rem;
}

.landing-page .welcome-text {
	max-width: 70vw;
	margin: 0rem auto 0rem;
}

.hero-image {
	max-width: 100%;
	margin: 0rem auto 0rem;
	display: block;
	background: #fff;
}



/*About Us-------------------------------------------------------------------------------------------------------*/

.activities-services  {
	display: inline-block;
	background-color: #fff;
	max-width: 70vw;
	width: 100%;
	margin: 1rem 0rem 1rem 0rem;
	border-bottom: #3399cc 0.2rem solid;
}

.activities-services p {
	max-width: 70vw;
}

.activities-services ul li  {
	display: flexbox;
	list-style:square inside;
	line-height: 200%;
	text-align: center;
	font-size: 1rem;
	
	margin: 0rem 2rem 0rem 2rem;
}

/*About Us - Meet The Team--------------------------------------------------------------------------------------------------*/

.meet-the-team{
	background: #fff;
	max-width: 80vw;
	width: 100%;
	margin: 2rem auto 2rem;
	
	
}

.team-members {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	text-align: center;
	background: #fff;
	max-width: 80vw;
	width: 100%;
	margin: 0rem auto 0rem;
	
}



.team-wrap {
	max-width: 27rem;
	margin: auto;
	padding: 0rem;
}

.team-members .team-wrap {
	display: flex;
	justify-content:stretch;
	align-items: stretch;
}

.team-member {
	flex: 1;
	background: #333333;
	height:fit-content;
	color: #fff;
	border-radius: 1rem;
	margin: 1rem 1rem 1rem 1rem;
	box-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.6);
	padding: .75rem 1rem;
}

.photograph{
	width: 100%;
	display: flex;
	justify-content: center;
}

.team-member .team-wrap .tm-bio{
	color: #fff;
}

.team-member p {
	color: #cccccc;
}

.other-staff {
	margin: 0rem 0rem;
}

.history {
	
	display: flex;
	max-width: 70vw;
	flex-direction: column;
	text-align: center;
	margin: 4rem auto 4rem;
	padding-top: 2rem;
	border-top: #3399cc 0.2rem solid;

}

/*---Programme---------------------------------------------------------------------------------------------------*/

.programme {
	max-width: 70vw;
	justify-content: center;
	margin: 0rem auto 0rem;
}

.programme h2 {
	text-transform: uppercase;
	margin: 0rem 0rem 2rem 0rem;
	
}

.programme .day-event {
	margin: 1rem 0rem 1rem 0rem;
}

.programme .monday {
	border-top: #3399cc solid 0.2rem;
}

.programme .day {
	
	margin: 1rem 0rem 1rem 0rem;
	padding: 1rem 0rem 1rem 0rem;
	border-bottom: #3399cc solid 0.2rem;
}

.booking {
	margin: 1rem 0rem 1rem 0rem;
	padding: 1rem 0rem 1rem 0rem;
}

/*Gallery-------------------------------------------------------------------------------------------------------*/

.container-img {
	
	max-width: 80vw;
	width: 40rem;
	margin: 2rem auto 2rem;
	box-shadow: 0rem 0rem 1rem #000;
	padding: 1rem 1rem;
	position: relative;
}

.container-img h1 {
	text-align: center;
	padding: 1rem;
}

.container-img .image-top {
	width: 100%;
	
} 

.container-img .image-top img {
	width: 100%;
	margin: 1rem auto 1rem;
}

.container-vid {
	
	max-width: 80vw;
	width: 40rem;
	margin: 2rem auto 2rem;
	box-shadow: 0rem 0rem 1rem #000;
	padding: 1rem 1rem;
	position: relative;
}

.container-vid h1 {
	text-align: center;
	padding: 1rem;
}

.container-vid .youtube-logo {
	max-width: 70vw;
	width: 10rem;
	margin: 1rem auto 1rem;
}

.container-vid .videos-top {
	width: 100%;
	

} 

.container-vid .videos-top iframe {
	width: 100%;
	margin: 1rem auto 1rem;
}

/*--Media/Facebook Feed------------------------------------------------------------------------------------------*/

/*.fb-container {
	max-width: 100vw;
	width: 100%;
	margin: 0rem auto 2rem;
}*/

/*Support Us-----------------------------------------------------------------------------------------------------*/

.support-image {
	position: relative;
	max-width: 80vw;
	width: 100%;
	margin: 0rem auto 0rem;
}

.support-image-text {
	position: absolute;
	top: 10%;
	left: 0;
	margin: 0rem auto 0rem;
	background: rgb(0, 0, 0);
	background:rgba(0, 0, 0, 0.6);
	padding: 0.5rem;
}

.support-image h3 span {
	color: #fff;
	
}

.support-image h6 span {
	color: #fff;
}

.support-image-pic {
	max-width: 80vw;
	width: 100%;
	margin: 0rem auto 0rem;
}

.support-create {
	max-width: 80vw;
	margin: 1rem auto 1rem;
	padding-bottom: 2rem;
	border-bottom: #3399cc 0.2rem solid;
}

.thanks {
	max-width: 80vw;
	margin: 0rem auto 0rem;
	padding: 2rem 0rem 2rem 0rem;

}

.thanks ul {
	margin: 0rem 0rem 1rem 0rem;
}

/*Contact Us-----------------------------------------------------------------------------------------------------*/

.contact-us {
	max-width: 80vh;
	width: 100%;
	margin: 2rem auto 2rem;
}

.contact-us .contact-images {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 80vw;
	width: 100%;
	margin: 1rem auto 1rem;
}

.contact-us .contact-images img {
	padding: 1rem;
	width: 10rem;
}

.contact-us .email {
	font-size: 1.2rem;
}

.contact-us .tel {
	font-size: 1.2rem;
}

/*Contact-Form---------------------------------------------------------------------------------------------------*/



.wrapper{
	max-width: 60vw;
	width: 100%;
	margin: 0rem auto 4rem;
	background: #fff;
	border-radius: 5px;
	border: #3399cc 2px solid;
	box-shadow: 10px 10px 10px 10px rgba(0,0,0,0.2);
  }
  .wrapper header{
	font-size: 22px;
	font-weight: 600;
	padding: 20px 30px;
	border-bottom: 1px solid #ccc;
  }


  @media (max-width: 800px){
	.wrapper {
	  max-width: 80vw;
	}
	
	.wrapper form{
	  margin: 35px 20px;
	}
		
  }

/*terms & conditions, privacy, cookies---------------------------------------------------------------------------*/

.psts{
	max-width: 80vw;
	width: 100%;
	min-height: 80vh;
	margin: 2rem auto 2rem;
	box-shadow: 10px 10px 10px 10px rgba(0,0,0,0.2);
	padding-top: 1rem;
}


/*footer---------------------------------------------------------------------------------------------------------*/

footer {
	max-width: 100vw;
	width: 100%;
	height: 38rem;
	margin: 0rem;
	padding: 0rem;
	/*height: 10rem;*/
}

.footer-main {
	background-color: #333333;
	border-top: #3399cc solid 0.2rem;
}

footer ul {
	text-align: center;
}

footer ul li{
	list-style: none;
	display:inline-block;
	padding: 1rem 1rem 1rem 1rem;
	margin: 0rem 0rem 0rem 0rem;
}

footer ul li a {
	text-decoration: none;
	color: #cccccc;
	text-transform: none;
	font-weight: unset;
}

footer ul li a:hover {
	color: #fff;
}

footer  ul li a:active {
	color: #3399cc;
}

footer .copyright {
	color: #fff;
	margin-top: 4rem;
}

.charity-ref {
	font-size: 0.9rem;
	text-align: center;
	color: #cccccc;
	z-index: 0;
  }


/*Media Queries--------------------------------------------------------------------------------------*/

@media only screen and (max-width: 550px) {

	.fb-container {
		max-width: 80vw;
		width: 360px;
		margin: 0rem auto 2rem;
	}

	
}

@media (max-width: 800px){
	.wrapper {
	  max-width: 80vw;
	}
	
	.wrapper form{
	  margin: 35px 20px;
	}
		
  }