
	body {
		background-color: #f8f8f8;
		color:#5a5b5c;
		font:16px/1.5 'Barlow', 'courier', 'Serif';
		overflow-x:hidden;
		width:100%;}

	html, body {
		height:100%;
		margin:0;
		padding:0;
	}


	nav .logo {
		max-width:94px;
	}

	nav .logo img,
	footer,
	footer h4 {
		width:100%;
	}



/* assets ------------------------------------------------------------------------------------------------------------------------------------- */

	.asset_button_close				{width:26px; height:24px; background:url(/_images/_sprites.png) no-repeat -331px -64px; display:block; cursor:pointer;}
	.asset_button_close:hover		{background:url(/_images/_sprites.png) no-repeat -331px -94px;}

	.asset_button_remove			{width:26px; height:18px; background:url(/_images/_sprites.png) no-repeat -331px -127px; display:block; cursor:pointer;}
	.asset_button_remove:hover		{background:url(/_images/_sprites.png) no-repeat -331px -147px;}


	.asset_							{background:url(/_images/_sprites.png) no-repeat; float:left;}
	.asset_.button_					{display:block; cursor:pointer;}
	.asset_.icon_					{display:block;}
	.asset_.show_on_hover			{display:none !important; cursor:pointer;}
	.asset_.show_on_hover:hover		{display:block !important;}

	.asset_.icon_.ie				{width:23px; height:22px; background-position:-127px -169px;}


	.asset_button						{border:2px solid transparent;
										 border-radius:3px;
										 cursor:pointer;
										 display:block;
										 font-size:1em;
										 float:left;
										 line-height:40px;
										 letter-spacing:-1px;
										 position:relative;
										 white-space: nowrap;}
	.asset_button:hover,
	.asset_button:hover div,
	.asset_button:hover p				{text-decoration:underline !important;}
	.adapt_width						{width:auto !important; padding-right:15px; }

	.asset_button.grey_mud				{border:1px solid #4f4d46;}
	.asset_button.grey_mud:hover		{color:#2f2d26; border:1px solid #2f2d26;}

	.asset_button.grey_mud2				{color:#f4f2eb; background-color:#2f2d26;}
	.asset_button.grey_mud2:hover		{color:#2f2d26;  background-color:#f5c624;}
	
	.asset_button.green_gold			{color: #937407; border:1px solid #4f4d46;}
	.asset_button.green_gold2			{color: #C5B16B; background-color:#48512A;}

	.asset_button.black					{border:1px solid #484848;}
	.asset_button.black:hover			{color:#222; border:1px solid #222;}

	.asset_button.black2				{color:#f4f2eb; background-color:#222;}
	.asset_button.black2:hover			{color:#222;  background-color:#f5c624;}



	.btn {
		border-radius:5px;
		font-family:Barlow, /*Gantari,*/ arial, helvetica;
		font-size: calc(15px + 0.3vw);
		font-weight:600;
		letter-spacing:2px;
		margin-top:30px;
		padding: calc(15px + 0.4vw);
		text-transform:uppercase;
	}
	
	.btn:hover {
		text-decoration:underline;
	}
	
	.btn.dark {
		background-color: #333;
		border-color:transparent;
		color: #f9d46a !important;
	}
	
	.btn.dark:hover {
		color: #EFFF00 !important;
	}
	
	.btn.dark_blur {
		background-color: transparent;
		box-shadow: 0px 0px 40px rgb(0 0 0 / 50%);
		backdrop-filter: blur(5px) brightness(1);	
		color: #F0D163 !important;
		transition:0.4s all ease;
	}
	
	.btn.dark_blur:hover {
		box-shadow: 0px 0px 20px rgb(0 0 0 / 50%);
		backdrop-filter: blur(5px) brightness(1.3);
		color: #fff !important;
		text-decoration:none;
	}
	
	#media-banner .btn svg {
		fill: #ddd;
		display: inline-block;
		height:20px;
		margin-bottom: 4px;
		-webkit-transition: .4s all ease;
		transition: .4s all ease;
	}

	#media-banner .btn:hover svg {
		fill: #F0D163;
		-webkit-transform: translate(5px,0);
		-ms-transform: translate(5px,0);
		transform: translate(5px,0);
	}
	
	.btn.border_highlight:after {
		background-color: #F0D163;
		bottom: -3px;
		content: "";
		height: 3px;
		left: 50%;
		position: absolute;
		width: 0;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		-webkit-transition: width .4s;
		transition: width .4s;
	}

	.btn.border_highlight:hover:after {
		width: 100%;
	}
	
	.close_x,
	.o_toggle {
		cursor:pointer;
		display:inline-flex;
		display:-webkit-inline-flex;
		align-items:center;
		-webkit-align-items:center;
		width:auto;
	}
	
	/*.close_x::before {
		background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'><g fill-rule='evenodd'><path fill='%23000000' d='M16.48,14.11l10.98,10.98l-2.12,2.12L14.35,16.23L3.38,27.21l-2.12-2.12l10.98-10.98L1.25,3.13l2.12-2.12l10.98,10.98 L25.33,1.01l2.12,2.12L16.48,14.11z'/></g></svg>") no-repeat;
		background-size: contain;
		content:' ';
		height:1em;
		margin: auto 10px auto 0px;
		width:1em;
	}*/
	
	.o_toggle {
		transition: .3s all;
		-webkit-transition: .3s all;
	}
	
	.o_toggle::after {
		transition: transform .3s ease-in-out;
		-webkit-transition: transform .3s ease-in-out;
		background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'><g fill-rule='evenodd'><path fill='%23ffffff' d='M25.33,7.2H3.38L1.25,9.32l13.1,13.1l13.1-13.1L25.33,7.2z M6.38,10.2l15.95,0l-7.98,7.98L6.38,10.2z'/></g></svg>") no-repeat;
		background-size: contain;
		content:' ';
		height:1em;
		margin: auto 0px auto 10px;
		width:1em;
	}
	
	#docs .btn.o_toggle,
	.gen #explainer #docs .btn.o_toggle {
		border:none;
		text-decoration:none;
	}
	
	/*.btn.point:after {
		color: #ddd;
		content: '\e127';
		display: inline-block;
		font-family: 'glyphicons halflings';
		font-weight: 400;
		margin-left: 10px;
		-webkit-transition: .4s all ease;
		transition: .4s all ease;
	}

	.btn.point:hover:after {
		color: #cee1a9;
		-webkit-transform: translate(5px,0);
		-ms-transform: translate(5px,0);
		transform: translate(5px,0);
	}*/
	
	
	
	

	.btn.ani {
		flex-direction: column;
		-webkit-flex-direction: column;
		align-items: center;
		-webkit-align-items: center;
		justify-content: center;
		-webkit-justify-content: center;
		background-color: #394228;
		border: 2px solid #fff;
		color: #333;
		padding: 5px 15px;
		position: relative;
		display: flex;
		display: -webkit-flex;
		box-shadow: 0 0 0 rgb(100 100 100 / 0%);
		width: 40px;
		height: 2em;
		-webkit-transition: all .3s;
		-moz-transition: all .3s;
		-ms-transition: all .3s;
		overflow: hidden;
		text-decoration:none;
		transition: all .3s;
	}
	
	.btn.ani:after, 
	.btn.ani:before {
		float: left;
		font-size: calc(1rem + .3vw);
		transition: all .3s;
		-webkit-transition: all .3s;
		-moz-transition: all .3s;
		-ms-transition: all .3s;
		transition-delay: 0.2s;
		-webkit-transition-delay: 0.2s;
		-moz-transition-delay: 0.2s;
		-ms-transition-delay: 0.2s;
	}

	.btn.ani:before {
		content: ' ';
		background-color: #7a0000;
		width: 1.5em;
		height: 1.5em;
		position: absolute;
		border-radius: 1.5em;
		right: -10px;
		z-index:0;
	}

	/*[data-onclick]:hover .btn.ani:after, 
	.btn.ani:hover:after {
		color: #566c2c;
		left: 45px;
	}*/

	[data-onclick]:hover .btn.ani:after, 
	.btn.ani:hover:after {
		color: #ffffff;
	}

	.btn.ani:after {
		color: #fff;
		content: "\e080";
		font-family: 'glyphicons halflings';
		font-size: calc(1rem + .4vw);
		height: 100%;
	}

	[data-onclick]:hover .btn.ani:before, 
	.banner.caption .btn.ani:after,
	.btn.ani:hover:before {
		color: #fff;
		font-weight: 700;
	}
	
	[data-onclick]:hover .btn.ani,
	.btn.ani:hover {
		color: #36e;
		cursor: pointer;
		box-shadow: -8px 0 10px rgb(200 200 200 / 40%);
		-webkit-transform: translate(5px);
		-moz-transform: translate(5px);
		-ms-transform: translate(5px);
		transform: translate(5px);
		width: 75px;
	}


	.btn.ani:hover:after {
		content: "Go";
		font-family: unset;
		z-index:1;
	}


	.btn.ani:hover:before {
		color: #ffffff;
		background-color: #ffab00;
		height: 100px;
		width: 90px;
		z-index:0;
	}


/* adjustment ----------------------------------------------------------------------------------------------------------------------------------- */

	.pad0					{padding:0px !important;}
	.pad5					{padding:5px;}
	.pad3					{padding:3px;}
	.pad10					{padding:10px;}
	.pad20					{padding:20px;}

	.pad20_bottom			{padding-bottom:20px;}
	.pad10_bottom			{padding-bottom:10px;}
	.pad15_bottom			{padding-bottom:15px;}
	.pad5_bottom			{padding-bottom:5px;}
	.pad0_bottom			{padding-bottom:0px;}

	.pad20_top				{padding-top:20px;}
	.pad15_top				{padding-top:15px;}
	.pad10_top				{padding-top:10px;}
	.pad0_top				{padding-top:0px !important;}
	.pad5_top				{padding-top:5px;}


	.pad0_left				{padding-left:0px !important;}
	.pad5_left				{padding-left:5px;}
	.pad10_left				{padding-left:10px;}
	.pad20_left				{padding-left:20px;}
	.pad15_left				{padding-left:15px;}

	.pad0_right				{padding-right:0px !important;}
	.pad5_right				{padding-right:5px;}
	.pad10_right			{padding-right:10px;}
	.pad15_right			{padding-right:15px;}
	.pad20_right			{padding-right:20px;}

	.block					{float:left; display:block;}
	.display_block			{display:block;}
	.display_inline			{display:inline;}
	.inline_block			{display:inline-block;}
	.float_left				{float:left;}
	.float_right			{float:right !important;}

	.eleHidden, 
	.jspCap, 
	label.flat input, 
	label.flat input[type=radio] {display:none;}
	

	.rowx					{clear:left; float:left; width:100%;}

	.height_100pc			{height:100% !important;}
	.width_100pc			{width:100%;}
	.width_95pc				{width:95%;}
	.width_50pc				{width:50%;}


	svg { 					 fill: currentColor;
							 vertical-align: sub; }

	.flex-group {		    display: -webkit-flex;
							display: flex;
							-webkit-flex-flow: row wrap;
							flex-flow: row wrap; }

	.flex-between {		    -webkit-justify-content: space-between;
							justify-content: space-between;}

	.flex-column {			flex-flow: column !important;
							-webkit-flex-flow: column !important; }

	.flex-align-center {	align-items:center;
							-webkit-align-items:center;
							justify-content: center;
							-webkit-justify-content: center;}



/* links ----------------------------------------------------------------------------------------------------------------------------------- */

	A						{color:inherit; text-decoration:none;}
	A:active,
	A:hover					{color:inherit; text-decoration:underline;}


	[data-onclick-me],
	[data-onclick],
	[data-onclick] img,
	[data-onclick] h2,
	[data-onclick] a,
	[data-onclick] .full {
		cursor: pointer;
	}
	
	.body_cms p a:not(.btn) {
		color: #123074;
		text-decoration: underline;
	}
	

/* colour ----------------------------------------------------------------------------------------------------------------------------------- */

	.black_shadow_white		{color:#000; text-shadow:1px 1px #fff;}
	.text_shadow_black		{text-shadow:1px 1px #000;}
	.text_shadow_white		{text-shadow:1px 1px #fff;}

/* borders ----------------------------------------------------------------------------------------------------------------------------------- */

	.border_none			{border:none !important;}





/*	Home page -------------------------------------------------------------------------------------------------------------------- */


	body {											overflow-x:hidden;}

	section,
	body > div,
	body#home #locations > *,
	body#home #locations #addresses > * > * {		clear:both;
													float:left;
													width:100%;}

	body > section.two_col {						overflow:hidden;}
	

	section .inner {								background-color: #fff;
													padding-bottom:40px;
													padding-top:40px; }

	section .inner p {								float:left;
													margin:0px;
													padding-top: 20px;
													width:100%; }


	#intro .inner > div > div {						background-color:#fff;
													border: 6px double #bfc5b6;
													float:left; 
													padding:25px 11%; }

	

	.bnr,
	.bnr .screen_tint,
	.gen #top-banner .container-fluid,
	#developing-karate,
	#developing-karate > div,
	.venue_locations,
	.venue_locations > div,
	a.thumb_logo,
	#developing-karate,
	.panes,
	.panes > *,
	.panes > * > *,
	.panes .article > *,
	#stay-in-the-know,
	#stay-in-the-know .col_a,
	#stay-in-the-know #subscribe .group,
	#stay-in-the-know #subscribe .btn,
	footer,
	footer #sponsors,
	footer #sitemap,
	footer #sitemap > * {
		display:flex;
		display:-webkit-flex;
	}

	#top-banner,
	#top-banner .screen_tint,
	.gen #top-banner .container-fluid,
	#developing-karate > div,
	.venue_locations > div,
	a.thumb_logo,
	.panes > *,
	.panes > * > *,
	.panes .article > *,
	#stay-in-the-know .col_a,
	#stay-in-the-know #subscribe .btn,
	footer,
	footer #sitemap {
		flex-direction:column;
		-webkit-flex-direction:column;
	}
	
	footer #sponsors {
		flex-wrap:wrap;
		-webkit-flex-wrap:wrap;
	}

	/*footer #sitemap {
		flex-direction:row;
		-webkit-flex-direction:row;
	}*/

	footer #sponsors {
		justify-content:center;
		-webkit-justify-content:center;
	}




	
	.article > div {
		flex:1;
		-webkit-flex:1;
		background-color:#fff;
		border-radius:0px 0px 5px 5px;
		/*margin-bottom: 40px;*/
		padding:0px calc(15px + 1vw);
		text-align:left;
	}
	
	.article .btn {
		background-color:#394228;
		color:#fff;
		margin:auto auto 20px auto;
		text-align:center;
	}

	

	.panes .article picture {
		border-radius:5px 5px 0px 0px;
		overflow:hidden;
	}
	
	.panes .article picture, 
	.panes .article picture img {
		max-height:450px;
		object-fit:cover;
	}

	.panes h2,
	.panes h3 {
		letter-spacing:1px;
		margin-bottom:20px;
		margin-top:20px;
	}
	
	.bnr h3, 
	.panes h3 {
		font-weight: 600;
	}
	
	/*.panes .article p {
		color:#585858;
	}
	
	.panes .article h3 {
		color:#3a3b3c;
	}*/
	
	.panes .article p:last-of-type {
		margin-bottom:1vw;
	}
	





	.bnr,
	#latest-news, 
	#news #calendar,
	#developing-karate,
	#stay-in-the-know,
	footer #sitemap > *,
	footer #smallprint > * {
		margin-left:20px;
		width:calc(100% - 40px); 
	}
	
	
	footer #smallprint > * {
		padding-left: 20px;
	}
	
	.bnr {
		overflow-x:hidden;
	}
	
	
	/*.bnr video,
	.bnr > picture {
		left: 20px;
	}*/
		
		
	.bnr h2,
	.bnr h3 {
		font-family: Barlow, sans-serif;
	}


	
	#top-banner {	
		border:none;	
		height:70vh;
		max-height: 800px; 
	}
	

	.bnr,
	#top-banner {
		border:none;	
		overflow-y: hidden;
		position: relative;
		text-align:center; 
	}
	
	#top-banner.bnr {
		margin-left:0px;
		width:100%;
	}
	

	#top-banner > div > div {
		padding-top:18vh;
		text-align:center; 
	}
	
	
	.bnr > .screen_tint {
		backdrop-filter: brightness(0.8);
		height: 100%; 
		margin: 0px;
	}
	
	
	
	.venue_locations > div {
		justify-content: space-between;
		-webkit-justify-content: space-between;
	}
	
	a.thumb_logo,
	#stay-in-the-know #subscribe .btn {
		align-items: center;
		-webkit-align-items: center;
		justify-content: center;
		-webkit-justify-content: center;
	}
	
	
	a.thumb_logo {
		float: left;
		height: 400px;
		overflow: hidden;
		position: relative;
		z-index: 1;
	}	
	

	#developing-karate h3,
	.venue_locations .location h3 {	
		margin-top:20px;
	}
	

	#developing-karate .article p,
	.venue_locations p {
		margin-bottom: auto;
	}

	.venue_locations .location * {
		text-align:left;
		width:100%;
	}

	.venue_locations a.btn {
		border:1px solid #a59b8d;
		font-size:1em;
		font-weight: 600;
		max-width:100%;
		text-align:center;
		width:auto;
	}

	a.thumb_logo > img,
	a.thumb_logo > div > picture,
	a.thumb_logo > div > picture img {
		width:75%;
	}

	a.thumb_logo > picture,
	a.thumb_logo > picture img {		
		height: 100%;
		object-fit: cover;
		position: absolute;
		transition: all .2s ease-in-out;
		width: 100%;
		z-index: -1;
	}

	a.thumb_logo:hover + div h3 {
		text-decoration:underline;
	}

	a.thumb_logo:hover > picture,
	a.thumb_logo:hover > picture img {
		-webkit-filter:blur(2px) brightness(0.8);
		filter:blur(2px) brightness(0.8);
		transform: scale(1.12);
	}







	
	#top-banner,
	#media-banner,
	#developing-karate,
	#equality,
	#ethos,
	#stay-in-the-know {
		margin-bottom:calc(40px + 4vw);
	}
	
	#stay-in-the-know .col_a {
		padding: 0px;
	}
		
	#stay-in-the-know picture,
	#stay-in-the-know picture img {
		position:absolute;
	}

	#stay-in-the-know picture {
		overflow:hidden;
		padding:0px;
	}

	#stay-in-the-know .col_b {
		justify-content: center;
		-webkit-justify-content: center;
		background-color:#f0efeb;
		text-align: left;
	}

	#stay-in-the-know .banner_promo > * {
		margin-right:auto;
	}
	

	#stay-in-the-know #subscribe,
	#stay-in-the-know #subscribe .group {		width:100%; }

	#stay-in-the-know #subscribe {				background-color:#fff;
												border-radius:4px;
												margin-bottom: 40px;
												margin-top: 40px;
												padding-bottom:10px;
												padding-top:10px;}

	#stay-in-the-know #subscribe input {		background-color:#fff;
												border:none;
												border-radius:3px;
												color:#333;
												flex:1;
												-webkit-flex:1;
												font-size:1.2em;
												line-height:40px;
												margin-bottom:0px;
												margin-top:0px;
												padding-left:10px;
												text-align: center;}

	#stay-in-the-know #subscribe .btn {			background-color: #333;
												border-color: transparent; 
												color: #fff;
												font-size: 1.5rem;
												margin: 0px 15px 0px auto;
												padding: 0.5em 1em;
												width:auto; }

	#stay-in-the-know #subscribe .btn:hover {	background-color: #548128; }


	.banner_promo,
	.gen #top-banner:not(.empty) + ul#sections {
		display:flex;
		display:-webkit-flex;
	}
	

	.banner_promo {
		flex-direction:column;
		-webkit-flex-direction:column;
	}

	.banner_promo {
		align-items:center;
		-webkit-align-items:center;
	}

	.banner_promo a.btn {
		width:75%;
	}




	section .inner {
		color:#937407; 
	}													

	#wkgb-welcome h1,
	section .inner h2 {
		color:#3d4a2d; 
	}




	h1 {
		letter-spacing: 5px;
	}

	h1, h2 {
		font-size:2.25em;
	}

	h1, h2, h3 {
		margin-bottom:5px;
		margin-top:0px;
		text-transform: uppercase; 
	}

	h3 {
		/*font-size:22px;*/
		font-size:calc(1.2em + 0.3vw);
		letter-spacing:3px;
	}


	.comms h1,
	.policy-page h1 {
		font-size:4em;
		margin-top:30px;
		padding-bottom:30px;
	}


	
	.gen #top-banner:not(.empty) {
		color:white;
		height: 70vh;
		max-height: 45vw;
		position:relative;
	}
	

	#top-banner h1 {
		font-weight: 600;
		margin-top:80px; 
	}


	#top-banner:not(.empty) h1 {
		color:white;
	}
	
	
	.gen #top-banner.empty h1 {
		margin-top:3vw;
	}
	
	.gen #top-banner h1:first-of-type + p {
		font-size:calc(1.2em + 0.3vw);
	}
	
	
	.gen #top-banner h2 {
		font-weight: 400;
		font-size: calc(0.9em + 0.5vw);
		color: #fff;
	}
	
	.gen #top-banner h1,
	.gen #top-banner h2 {
		width:100%;
	}	
	
		
	.gen #top-banner .container-fluid {	
		height: 100%;
	}
	
	.gen #top-banner .container-fluid > img {
		margin-bottom:2vw;
		width:35%;
	}

	.gen #top-banner picture,
	.gen #top-banner:not(.empty) .container-fluid,
	.gen #top-banner.slideshow-container picture,
	.gen #top-banner.slideshow-container picture img {
		margin: 0px;
		overflow: hidden;
		width: 100%;
	}
	
	
	.gen.standard #top-banner:not(.empty) .container-fluid {
		justify-content:center;
		-webkit-justify-content:center;

		background: rgb(30,30,30);
		background: linear-gradient(4deg, rgba(30,30,30,0.7) 0%, rgba(255,255,255,0) 40%, rgba(255,255,255,0) 100%);
		padding-bottom:3vw;
	}

		
	.gen #top-banner picture > img {
		width:100%; 
		
		position: absolute;
		top: 0;
		left: 0;
	}	
	
	
	.gen #explainer > *,
	.gen #explainer > * > *,
	.standard.comms > section > .container-fluid > * {
		line-height:calc(1.8em + 0.4vw);
		margin-bottom:calc(20px + 2vw);
	}
	
	section#intro {
		padding-bottom:calc(20px + 2vw);
	}
	
	.gen.standard picture {
		margin-bottom:20px;
		margin-top:20px;
	}

	body.standard h2 {
		margin-bottom:0.8em;
	}

	body.standard table tr > * {
		padding-right:3vw;
	}
	
	
	.gen.standard #sections {
		list-style:none;
	}	

	.gen.standard #sections li.sct_title a {
		color: #7c2341;
		font-weight:900;
	}

	.gen.standard #sections li.sct_title a::after {
		color:#bb7589;
		content: '\e080';
		font-family: 'glyphicons halflings';
		font-size: 0.7em;
		font-weight:600;			
		margin-left:4px;
	}	

	.gen.standard #sections li:not(.sct_title):hover > a {
		background-color:#F7FAF0;
		color:#557B00;
	}		
	
	
	
	.explainer h2,
	.article h3 {
		color: #2d3e0b;
	}

	
	body.standard h3,
	body.standard h2 {
		font-weight:600;
	}

	body.standard h2 {
		font-size:calc(2em + 0.4vw);
	}

	body.standard h3 {
		font-size:calc(1.6em + 0.3vw);
	}
	
	.gen #explainer {
		color:#5C4D36;
	}
	
	.gen #explainer a[target="_blank"]::after,
	#news-article #intro a[target="_blank"]::after,
	#news-article #more-about a[target="_blank"]::after,
	#news-article #summary-intro a[target="_blank"]::after {
		-webkit-filter: opacity(0.5);
		filter: opacity(0.5);
		color:#bbb;
		content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQElEQVR42qXKwQkAIAxDUUdxtO6/RBQkQZvSi8I/pL4BoGw/XPkh4XigPmsUgh0626AjRsgxHTkUThsG2T/sIlzdTsp52kSS1wAAAABJRU5ErkJggg==);
		margin: 0 3px 0 6px;
	}
	
	.gen #explainer > div a {
		overflow-wrap: break-word;
		text-decoration:underline;
	}
	
	.gen #explainer .btn,
	#news-article #intro .btn,
	#news-article #more-about .btn,
	#news-article #summary-intro .btn {
		border: 2px solid #cee98e;
		color: #555;
		margin:20px 0px;
		text-decoration: none;
	}


	.gen #explainer [target="_blank"].btn::after {
		content:unset;
	}



	.explainer h2 {
		font-size:calc(1.6em + 0.4vw);
	}

	
	.explainer h2 {
		font-weight:700;
		margin-bottom:15px;
	}
	
	.explainer p {
		/*color: #585858;*/
		margin-bottom:15px;
	}



	body.standard p,
	body.standard ol,
	body.standard ul,
	body.standard table,
	#docs label input + span,
	.explainer p,
	.panes .article p,
	#ethos p {
		font-size:calc(0.8em + 0.4vw);
	}
	
	#explainer .sct p {
		margin-bottom:20px;
	}
	
	
	
	

	picture,
	picture img {
		object-fit: cover;
		width: 100%;
	}

	picture {
		display:flex;
		display:-webkit-flex;
		height:100%;
	}



	.vt video,
	.vt picture,
	.vt picture img {
		height:100%;  
		left: 0;
		object-fit: cover;
		position:absolute;
		top:0px;
		width:100%;  
		z-index: -1 !important;
	}

	.vt picture {
		z-index:1; 
	}
	
	.vt video {
		z-index:-2 !important;
	}
	
	body#home .vt video {
		-webkit-filter:brightness(0.9);
		filter:brightness(0.9);
	}

	.vt.nofilter video {
		filter:none !important;
	}
	
	
	


	.news_group .article.calendar h3 {
		color: #ab0701;
	}

	.news_group .article.calendar h3:before {
		background-image: url(/_images/icons/calendar2.svg);
		background-repeat: no-repeat;
		background-size: 100%;
		content: ' ';
		float: left;
		display: block;
		width: 1em;
		margin-right: 8px;
		height: 100%;
	}


	
	

	#more-news > .container {
		display:flex;
		display:-webkit-flex;
		-webkit-flex-wrap:wrap;
		flex-wrap:wrap;
		justify-content: center;
		-webkit-justify-content: center;
	}
	
	#more-news > .container:before {
		content: none;
	}
	
	#more-news h3 {
		font-size:1.2em;
		font-weight:normal;
		letter-spacing:1px;
		margin-top:15px;
	}

	#more-news .news_sub {
		border-bottom:1px solid #C5B57B;
		margin-bottom:0.5em;
		margin-top:1em;
		padding-bottom:0.5em;
	}
	

	#more-news .news_sub * {
		cursor:pointer;
		font-weight:normal;			
	}

	#more-news .news_img {
		background-position:center top;
		background-repeat:no-repeat;
		background-size:cover !important;
		height:250px;
		width:100%;
	}
	
	#more-news .asset_button {
		margin-top:2em;
	}




	body#archive #more-news h1 {
		margin-bottom: 1em;
	}
	
	
	
	
	

	#docs label,
	#docs label span {
		display: -webkit-flex;
		display: flex;
	}

	#docs label {
		flex-direction:column;
		-webkit-flex-direction:column;
	}

	#docs h4 {
		font-weight:700;
		margin-top:2.5vw;
	}

	#docs label,
	#docs label span {
		font-weight:400;
		transition: 0.3s all;
		-webkit-transition: 0.3s all;
	}

	#docs label {
		margin:5px 0px;
	}

	#docs label span {
		border-radius:4px;
		color: #585858;
		cursor: pointer;
		flex:1;
		-webkit-flex:1;
		line-height: 2vw;
		padding: 3px 10px 4px 0px;
	}

	#docs label:hover span {
		background-color: #eaf2f5;
	}

	#docs label.flat span img {
		margin:auto;
		width: 100%;
	}
	
	#docs label.flat input + span:before {
		color: #ddd;
		content: "\e157";
		font-family: glyphicons halflings;
		margin: 0 10px;
	}
	
	#docs label.flat input:checked + span {
		background-color: #eef5ff;
		/*box-shadow:0px 0px 15px rgb(204 204 204 / 25%);*/
		color: #18396c;
	}

	#docs label.flat input:checked + span:before {
		content: "\e067";
		color: #a2c74b;
		font-size:1.2em;
		top:0px;
	}

	#docs tr,
	#docs td {
		vertical-align:top;
	}




	#docs .btn,
	#contact #direct .btn,
	#contact #intro .btn {
		background-color:#333;
		color:#fff;
	}
	
	.gen #explainer #docs .btn,
	#contact #intro .btn {
		color: #cee98e;
		margin:3vw auto 0 auto;
		padding-left:30px;
		padding-right:30px;
	}
	
	
	
	





	.slideshow-container picture,
	.slideshow-container picture img {
		float:left;
		height:100%;
		object-fit: cover;
		object-position: center;
		width: 100%;
	}

	#stay-in-the-know.gallery {
		padding-bottom:0px;
	}

	#stay-in-the-know.gallery,
	.slideshow-container,
	.mySlides.show,
	.mySlides.show picture,
	.mySlides.show picture img {
		overflow:hidden;
	}

	.slideshow-container {
	  position: relative;
	  margin: auto;
	  transition-property: opacity;
	  -webkit-transition-property: opacity;
	}

	.mySlides {
	  /*display: none;*/
	  transition-property: opacity;
	  -webkit-transition-property: opacity;
	}

	.slideshow-container .active, 
	.slideshow-container .dot:hover {
	  background-color: #717171;
	}

	.slideshow-container .fade {
	  animation-name: fade;
	  transition-duration: 2s;
	  -webkit-transition-duration: 2s;
	}

	#stay-in-the-know .slideshow-container .fade {
	  transition-duration: 1s;
	  -webkit-transition-duration: 1s;
	}

	.slideshow-container .hide,
	.slideshow-container .show {
	  display:block;
	}

	.slideshow-container .hide { /*opacity:0;*/ z-index:0; }
	.slideshow-container .show { opacity:1; z-index:1; }



	 @keyframes fade {
		from {
			opacity: 0;
		}

		to {
			opacity: 1;
			visibility: visible;
		}
	 }





	.sticky_head {
		top:0px;
		position:fixed;
		z-index: 10;
	}

	#sg-report-concern {
		margin-left: auto;
		position: absolute;
		right: 20px;
		transition: .4s all;
		width: auto;
	}

	#sg-report-concern.sticky_head {
		margin-left: auto;
		position:fixed;
	}

	body.safeguarding.gen #explainer #sg-report-concern a.btn {
		background-color: #fff;
		border: none;
		border-radius: 0px 0px 5px 5px;
		color: #ab0332;
		margin-top:0px;
		padding: 15px 30px;
	}		

	body.safeguarding.gen #explainer #sg-report-concern a.btn:hover {		
		background-color: #c04266;
		border-color: #b03256;
		color: #f5f5f5;
	}
	



	

/* 	FOOTER ----------------------------------------------------------------------------------------------------------------------------------- */
			
	footer {
		background-color:#fff; 
		/*color: #585858;*/
	}
							
	footer > * {
		padding-bottom: 10px;
		padding-top:1vw; 
	}
	
	footer ul li {
		list-style-type:none;
		margin-left:0px;
		padding-top:5px;
	}
								 
	footer a {
		color:inherit;
		text-decoration:none;
	}

	footer a:hover {
		text-decoration:underline; 
	}
	
	footer .social svg {
		fill:#282828;
		height:40px;
		margin-top:20px;
	}
	
	footer #sponsors h4 {
		margin-top: calc(20px + 2vw);
	}
	
	footer h4 {
		color: #aab986;
		font-weight:600;
		margin-bottom: 10px;
		text-align:center;
		text-transform:uppercase;
	}
	
	footer #sitemap h4 {
		margin-top: calc(20px + 1vw);
	}
	
	
	
	footer #sitemap {
		background-color: #f5f5f5;
		padding-bottom:2vw;
		padding-top: 2vw;
	}

	footer #sitemap h4 {
		color: #5A5336;
		font-size: 24px;
		font-weight: 700;
		text-align:left;
	}

	footer #sitemap ul {
		font-size:20px;
		margin-top:1.5vw;
		padding-left:0px;
	}
	
	footer #sponsors > a {
		display: flex;
		display: -webkit-flex;
		margin:1vw 2vw 2vw 2vw;
	}
	
	footer #sponsors img {
		max-height:85px;
		margin:auto 0px;
	}
	
			
	footer #smallprint ul {
		margin-bottom:30px;
	}
	
	footer #smallprint ul li {
		display:inline-block;
		margin-right:10px;
	}
	
	






	form .group.err > input,
	form .group.err > select {					background-color:#FFE5E6; }

	form .group.err > input:valid, 
	form .group.err > select:valid {			background-color:#f4f4f4; }

	form .group span,
	form .group.err *:valid + span {			color:#E7A500;
												float: left;
												font-size:0px;
												max-height:0px;
												transition-property: all;
												transition-duration: .5s;
												transition-timing-function: cubic-bezier(0, 1, 0.5, 1);
												width:100%;	}

	form .group.err * + span {					display:block;
												font-size:15px;
												margin-bottom:5px;
												max-height:17px;
												padding-top:5px;
												text-align: center;	}
												

	#subscriber-added {							background-color:#fff;
												color: #333 !important;
												display:none;
												float:left;
												padding:10px;
												width:100%; }




	


	/** Required CSS for animate-on-scroll. Adjust timings here */
	[data-animate] {
		animation-duration: 0.5s;
		animation-fill-mode: both;
		visibility: hidden;
	}

	/** Animate-on-scroll animations, add your animations here. Make sure they end in visiblity: visible; */
	@keyframes slideInLeft {
		from {
			transform: translateX(-2em);
			opacity: 0;
		}

		to {
			visibility: visible;
		}
	}

	@keyframes slideInUp {
		from {
			transform: translateY(2em);
			opacity: 0;
		}

		to {
			visibility: visible;
		}
	}


	 @keyframes fadeIn {
		from {
			opacity: 0;
		}

		to {
			opacity: 1;
			visibility: visible;
		}
	 }

	[data-parallax] {
		background-repeat: no-repeat;
		background-size: cover !important;
	}
	
	

	@media screen and (min-width:1200px) {

		.gen.standard #top-banner:not(.empty) .container-fluid {
			padding-left: calc(10px + 7vw);
			padding-right: 40vw;
		}
	}
	
	

	@media screen and (min-width:992px) {
		[data-parallax] {
			background-position-x: 50%;
			background-attachment: fixed;
		}


		#top-banner h1 {
			font-size: 4em;
		}	
		

		#top-banner .site_title {
			height:720px;
		}
		
		

		.gen #top-banner {
			margin-bottom:0px;
		}
	
		.gen #top-banner.empty + #intro,
		.gen #top-banner > div {
			padding: 0px 10vw 0px 10vw;
			text-align:left;
		}
		

		.gen #top-banner:hover picture > img {
			transform: scale(1.4);
		}

		.gen #top-banner picture > img {
			transition: transform 10s ease-in-out;
			-webkit-transition: transform 10s ease-in-out;
		}
		
		
		.gen.standard #sections,
		.gen .arr_-2 {
			display:flex;
			display:-webkit-flex;			
		}

		.gen.standard #sections {
			flex-wrap:wrap;
			-webkit-flex-wrap:wrap;
			background-color:#fff;
			/*box-shadow:0px 0px 30px rgba(150,150,150,0.05);*/
			/*float:right;*/
			margin-bottom:calc(40px + 4vw);
			/*margin-top:calc(-40px - 4vw);*/
			padding:15px 10px;
			width:100%;
		}
		
		
		
		body.gen.standard.safeguarding #sections {
			margin-bottom:0px;
		}
				
		body.gen.standard.safeguarding #sg-report-concern + div.sct {
			padding-top:calc(40px + 4vw);
		}
		
		

		.gen.standard #sections li {
			font-family: 'open sans', roboto, helvetica;
			font-size: 0.72em;
			letter-spacing: 0.2px;
			margin:4px;
		}

		.gen.standard #sections li a {
			color:#5C4D36;
			padding:5px 10px;
			text-decoration:none;
			transition-duration: .3s;
			transition-property: background-color, color, border-color;
		}	

		.gen.standard #sections li.sel a {
			background-color:#f1f7e3;
			border-radius:2px;
			color:#405c00;
			font-weight: 900;
		}	
		
	
		.gen.standard #sections li:not(:first-of-type):not(:last-of-type) {
			border-right:1px solid #dfe7cd;
			padding-right: 10px;
		}
		
		
		.gen .arr_-2 {
			flex-direction:column-reverse;
			-webkit-flex-direction:column-reverse;
		}
		




		.gen.standard #sections li.sg_report a {
			border: 1px solid #fdf5f7;
			border-radius: 3px;
			color: #ad0b39;
		}		

		.gen.standard #sections li.sg_report a:hover {
			border-color: #ad0b39;
			background-color: #ad0b39;
			color: #fff;
		}
		
		
		
		
		section .inner {
			padding-top:7vh;
			padding-bottom:7vh;
		}
			
		.article .btn {
			margin-right:0px;
		}


			
		.panes .explainer {
			padding-right:0px;
			width:28%;
		}
		
		
		.panes .news_group {
			flex-direction:row;
			-webkit-flex-direction:row;
			flex-wrap:wrap;
			-webkit-flex-wrap:wrap;
			justify-content: space-between;
			-webkit-justify-content: space-between;
			flex:1;
			-webkit-flex:1;
		}
		
		.panes .news_group > .col_a,
		.panes .news_group > .article {
			padding-left: 15px;
			padding-right: 15px;
			width:50%;
		}

		.panes .news_group .calendar .btn.ani:hover:before {
			background-color: #CF4545;
		}
		
		


		section .btn,
		nav .dropmnu .dropmnu-box a.btn {
			transition-property: background, border, opacity, color;
			transition-duration: .4s;
		}

		section .btn:hover,
		nav .dropmnu .dropmnu-box a.btn:hover {
			text-decoration: none;
		}


		

	
		#stay-in-the-know .banner_promo {
			padding: calc(20px + 3vw);
		}

		
		#stay-in-the-know.gallery,
		#stay-in-the-know.gallery .slideshow-container,
		#stay-in-the-know.gallery .mySlides.show,
		#stay-in-the-know.gallery .mySlides.show picture,
		#stay-in-the-know.gallery .mySlides.show picture img {
			height:40vw;
		}
		
		
		.social a {
			float:left;
			margin-right:15px;
		}
				


		#info-message > p {
			padding-left:5vw; 
		}
		
		
		
		footer > * {
			margin-top:20px;
		}		


		footer #sitemap {
			flex-wrap:wrap;
			-webkit-flex-wrap:wrap;
		}

		footer #sitemap a {
			color: inherit;
		}

		footer #sitemap .areas {
			padding-left:20px;
			width:auto;
		}
		
		footer #sitemap .areas:not(:first-of-type) {
			margin-left:4vw;
		}

		footer #smallprint {
			font-size: calc(10px + 0.2vw);
		}

	}
	
	

	@media screen and (max-width:991px) {
		.comms h1, 
		.policy-page h1 {
			font-size: 4rem;
			letter-spacing: 2px;
		}
		
		#top-banner h2 {
			font-size:2rem;
			letter-spacing:4px;
			line-height: 1.5em;
			padding:0px 25px;		
		}
		
		p {
			margin-bottom:15px;
		}
		
		nav .dropmnu-box > li > a,
		nav .dropmnu-box .proposition span label,
		body.standard p, 
		body.standard ul, 
		body.standard table, 
		#docs label input + span, 
		.explainer p, 
		.panes .article p, 
		#ethos p {
			font-size: calc(1em + 0.4vw);
		}
		
		.gen #explainer > *, 
		.gen #explainer > * > *, 
		.standard.comms > section > .container-fluid > * {		
			line-height: calc(1.5em + 0.4vw);
		}
		
		body,
		.gen #explainer,
		footer #sitemap h4 {
			color: #320000;
		}

		.gen #top-banner:not(.empty) {			
			height: auto;
			max-height: unset;
			overflow: hidden;
		}	
		
		.gen #top-banner h1 {
			margin:30px auto;
			text-align:center;
		}

		.gen #top-banner h1:first-of-type + p {
			font-size: 2rem;
			padding-left:30px;
			padding-right:30px;
		}

		.gen #top-banner h2 {
			font-size:2rem;
			letter-spacing:4px;
			line-height: 1.5em;
			padding:0px 25px;		
		}
		
		.gen #top-banner picture > img {
			width:auto; 
		}
		
		.gen #top-banner .container-fluid {
			padding:15px;
			position:relative;	
			top: 0px; 
		}
	
	
		.gen #top-banner .container-fluid > img {
			width:80%;
		}
		

		.gen #top-banner picture img {
			filter:brightness(0.7);
			-webkit-filter:brightness(0.7);
			object-fit: cover;
			height: 100%;
		}

		
		.gen #top-banner.slideshow-container {
			min-height:340px;
		}	
		
				
		.gen #top-banner picture,
		.gen #top-banner:not(.empty) .container-fluid {
			margin: 0px;
			width: 100%;
		}
		
		
		.gen #sections {
			display:none;
		}
		
		
		.gen #explainer .container > ul > li {
			margin-left: 15px;
		}
		
		
		body.gen.safeguarding #top-banner {
			margin-bottom: 20px;
		}
		
		body.gen.safeguarding #sg-report-concern {
			display: flex;
			display: -webkit-flex;
			flex-direction: column;
			-webkit-flex-direction: column;
			align-items: center;
			-webkit-align-items: center;
			position: relative;
			right: revert;
		}
		
		body.safeguarding.gen #explainer #sg-report-concern a.btn {
			border: 2px solid #f4f4f4;
			border-radius: 5px;
			font-weight: bold;
			letter-spacing: 1px;
			margin-left: auto;
			margin-right: auto;
			width: 90%;
		}
		
		

		h3 {
			font-size:1.8rem;
			letter-spacing:3px;
		}
		
		#intro .inner > div > div {
			background-color:#fff;
			border: 6px double #bfc5b6;
			float:left; 
			padding:25px 15px; 
		}
																
																

		#intro .btn, 
		#more-about .btn,
		.btn {
			font-size: 1.4rem;
			margin-top:20px;
			padding-left: 6vw;
			padding-right: 6vw;
		}
																
		a.btn {
			font-weight: 600;
		}
																
		.banner_promo a.btn {
			width: auto;
		}		
		
		
		
		.bnr {
			margin-left: 15px;
			width: calc(100% - 30px);
		}
		
		
		
		.panes,
		footer #sitemap > * {
			flex-direction:column;
			-webkit-flex-direction:column;
		}
				
		.panes > * {
			margin-top: 10px;
		}
		
		.panes .article p,
		.one_col p {
			font-size:1.6rem;
			padding-bottom: 15px;
		}
		
		.panes .article > div {
			margin-bottom:0px;
			padding-bottom: 10px;
		}
		
		.panes .article .btn {
			margin-left:auto;
			margin-right:20px;
		}
		
		
		
		#docs label.flat input + span:before {
			margin:0px 5px 0px 0px;
		}
		

		
		#developing-karate {
			margin-bottom: 30px;
			padding-top:0px;
		}

		.venue_locations {
			flex-wrap:wrap;
			-webkit-flex-wrap:wrap;
		}
			
		.venue_locations,
		#developing-karate h2 + p {
			font-size:1.6rem;
		}

		#developing-karate > div {
			padding: 10px 5px 30px 5px;
		}
			
		#developing-karate h2 {
			font-size:2.5rem;
			letter-spacing: 4px;
		}
			
		.venue_locations .location h3 {			
			color:#000;
		}
				
		.venue_locations > div {
			padding-left:10px;
			padding-right:10px;
		}
		
		.venue_locations > div a.thumb_logo {
			height:40vh;
		}
		
		.venue_locations a.btn {
			font-size:1.4rem;
			letter-spacing:1px;
			padding: 15px 10px;
		}



		a.thumb_logo > img, 
		a.thumb_logo > div > picture, 
		a.thumb_logo > div > picture img {
			width: 80%;
		}
		
		
		
		#docs h4 {
			margin-top:30px;
		}
		
		#docs label span {
			line-height: normal;
			padding:5px 10px 5px 5px; 
		}
		
				
	
	
		#wkgb-cms-usefulcontacts #explainer table,
		#wkgb-cms-usefulcontacts #explainer table tbody,
		#wkgb-cms-usefulcontacts #explainer table tr {
			display: flex;
			display: -webkit-flex;
			flex-direction: column;
			-webkit-flex-direction: column;
			max-width: calc(100vw - 30px);
		}
		
		#wkgb-cms-usefulcontacts #explainer table img {
			max-width: 85%;
		}
		
		
		#wkgb-cms-usefulcontacts #explainer table td {
			border-left: none !important;
			border-right: none !important;
			padding-left: 0px !important;
			padding-right: 0px !important;
		}
		
		#wkgb-cms-usefulcontacts #explainer table td * {
			max-width: initial;
			word-wrap: break-word;
		}
		
		#wkgb-cms-usefulcontacts #explainer table tr > td:first-of-type {
			border-bottom: none !important;
			padding-bottom: 0px !important;
		}
			



		#more-news {
			padding-bottom:8vw; 
			padding-top:4vw;
		}	

		#more-news h2,
		#more-news p {
			padding-left:30px;
			padding-right:30px; 
		}	
	
		#stay-in-the-know,
		#latest-news {
			margin-left: 15px;
			margin-right: 15px;
		}			
	
		#latest-news, 
		#stay-in-the-know {
			width: calc(100% - 30px);
		}		
		
		
		
		

		#stay-in-the-know {
			flex-direction:column;
			-webkit-flex-direction:column; 
			margin-bottom:30px;
			padding-top:0px;
		}
		
		#stay-in-the-know picture {
			height: 230px;
			/*position: relative;*/
		}
				
		#stay-in-the-know h3 {
			margin-top: 20px;
			text-align:center;
		}
				
		#stay-in-the-know h2 {
			margin-top: 20px;
		}
																
		#stay-in-the-know #subscribe {
			margin:20px 0px; 
			padding: 10px 0px;
		}
		
		#stay-in-the-know #subscribe input {
			font-size:1em; 
			padding-left:5px;
		}
		
		#stay-in-the-know #subscribe .btn {
			font-size:1.2rem; 
			margin-right: 10px; 
			padding-top: 10px;
		}
		
	
		#stay-in-the-know.gallery,
		#stay-in-the-know.gallery .slideshow-container,
		#stay-in-the-know.gallery .mySlides.show,
		#stay-in-the-know.gallery .mySlides.show picture,
		#stay-in-the-know.gallery .mySlides.show picture img {
			min-height:340px;
		}	
		
				
		footer #logo {
			margin:20px 0px 20px 20px;
			width:calc(100% - 40px);
		}
		
		footer #sponsors {		
			justify-content: space-evenly;
			-webkit-justify-content: space-evenly;
			padding-bottom:40px;
		}		
		
		footer #sponsors img {
			height:57px;
			margin:3vw;
		}				

		footer #sponsors h4 {
			padding: 20px 60px 10px 60px;
		}
		
		footer #smallprint {
			background-color:#333;
			color:#fff;
			padding:20px 0px 10px 0px;
		}
		
		footer #smallprint ul {
			display:flex;
			display:-webkit-flex;
			justify-content: space-between;
			-webkit-justify-content: space-between;
			margin-bottom: 15px;
		}
				
		
		footer #smallprint div {
			color:#bcdb70;
		}
		
		footer #smallprint > * {
			font-size: 0.8em;
			padding-left:0px;
			text-align: center;
		}

		
		
		

		
		#info-message {
			box-shadow:0px 10px 100px rgb(0 0 0 / 40%);
		}

		#info-message .asset_button > span {
			background-color: #1f222e;
			padding:20px 30px;
		}
		
		#info-message .asset_button {
			color: #eee;		
			font-size: 3rem;
			text-align: center;
		}
		
		#info-message p {
			font-size:2rem;
		}
		
		
		
		.social {
			display: -webkit-flex;
			display: flex;
			-webkit-flex-flow: row wrap;
			flex-flow: row wrap;
			align-items:center;
			-webkit-align-items:center;
			justify-content: flex-start;
			-webkit-justify-content: flex-start; 
		}

		.social a {
			margin:15px 15px 15px 0px;
			width:20%; 
		}
												
	}
	
	
	
	@media screen and (max-width:762px) {

		#stay-in-the-know.gallery,
		#stay-in-the-know.gallery .slideshow-container,
		#stay-in-the-know.gallery .mySlides.show,
		#stay-in-the-know.gallery .mySlides.show picture,
		#stay-in-the-know.gallery .mySlides.show picture img {
			min-height:40vh;
		}	
	}
	
	
	@media screen and (max-width:640px) {
	
	}
