@import url("webfonts/Infour.css");
/* CSS Document */

:root{

	--infour: "Infour", Impact, "sans-serif";

	--lato: 'Lato', Lato, arial, sans-serif, "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
	
	--letter-spacing: 0px;

	--symbol: 'dsw_icons_2021regular', 'Lato', Lato, sans-serif, "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";

	--body-bg: #fbfbfb;

	--body-copy: #313131;

	--link-color: #e3013d;

	--link-hover-color: #fff;

	--link-bg: #e3013d;

	--link-border: #fff;

	--red: #e3013d;

	--dark-red: #aa002d;

	--white: #fff;

	--white-rgb: 255,255,255;

	--green: #53af31;

	--dark-green: #3A7A22;

	--white-bg: #fff;

	--line-weight: 2px;

	--black: #212121;

	--yellow: #ffdc31;

	--ui-border-inner: #212121;

	--ui-border-outer: #ffe564;

	--gold-text: #977020;

	--silver-text: #4E5A5A;

	--bronze-text: #913C27;

	--gold: #cfa249;

	--silver: #96a3a3;

	--bronze: #cd5d42;

	--ribbon: #4a84c5;

	--charcoal: #313131;

	--easy-read: #1385e9;

	--aside: rgba(0,0,0,0.1);

	--aside-text: #464646;

	--input_bg: rgba(123,123,123,0.1);

	--input-border: #313131;

	--top-padding: 16px;

	--padding: 18px;

	--top-half-padding: 8px;
	
	--half-padding: 9px;

	--double-padding: 36px;

	--neg-padding: -18px;

	--neg-double-padding: -36px;

	--border-radius: 8px;

}

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


	:root{ 

	--half-padding: 20px;
	--top-half-padding: 18px;

	--border-radius: 20px;

	--top-padding: 37px;

	--padding: 40px;

	--double-padding: 80px;

	--neg-padding: -40px;

	--neg-double-padding: -80px;

	}

}

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

	

	:root{ 

	--half-padding: 30px;
	--top-half-padding: 28px;

	--border-radius: 30px;

	--top-padding: 54px;

	--padding: 60px;

	--double-padding: 120px;

	--neg-padding: -60px;

	--neg-double-padding: -120px;

	}
	
}

/* Fixes */
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block;}audio,canvas,video{display:inline-block;}audio:not([controls]){display:none;height:0;}[hidden]{display:none;}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}a:focus{outline:thin dotted;}a:active,a:hover{outline:0;}h1{font-size:2em;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:900;}dfn{font-style:italic;}mark{background:#ff0;color:#000;}code,kbd,pre,samp{font-family:monospace, serif;font-size:1em;}pre{white-space:pre-wrap;word-wrap:break-word;}q{quotes:\201C \201D \2018 \2019;}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-.5em;}sub{bottom:-.25em;}img{border:0;}svg:not(:root){overflow:hidden;}fieldset{border:none;border-left:3px solid rgba(0,0,0,0.3);margin:10px 0;padding:0em 1em 0em;}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;}button,input{line-height:normal;}button,html input[type=button], 1 
 input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;}button[disabled],input[disabled]{cursor:default;}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none;}textarea{overflow:auto;vertical-align:top;}table{border-collapse:collapse;border-spacing:0;}body,figure{margin:0;}legend,button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}


.clearfix:after {visibility: hidden; display: block; font-size: 0; content: “ “; clear: both; height: 0; }
.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

 * { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;-webkit-tap-highlight-color:  rgba(255, 255, 255, 0);}
a:focus, div:focus, section:focus {outline:none;}
.skiplink {
    position: absolute;
    left: -9999em;
}
.skiplink:focus{left: 19px;
    z-index: 200;
    top: 12px;}
html,body {padding:0;margin:0;line-height:1.5em;}
body {font-family: 'Lato', sans-serif;font-size:15px;width:100%;}
#wrapper {width:100%;overflow: hidden;position: relative;min-height:100vh;}
p, ul, ol {font-size:1.1em;}
ul ul {font-size:1em;}
ul ol {font-size:1em;}
ol ul {font-size:1em;}
ol ol {font-size:1em;}
a {font-weight: 900;
    text-decoration: none;
    color: #e3013d; display:inline-block; position: relative;z-index:1;}
.red a {color:#fff;}
.gold a {color:#313131;}
a::after {content:'';
position:absolute;
left:0;
width:calc(100% - 4px);
bottom:0px;
height:1px;
	background:#e3013d;
	background: rgb(227,1,61);
background: radial-gradient(circle, rgba(227,1,61,1) 36%, rgba(195,10,10,1) 88%);
	z-index:-1;
	border:1px solid transparent;
}
.red a::after {background: rgb(83,175,49);
background: radial-gradient(circle, rgba(83,175,49,1) 36%, rgba(37,157,53,1) 88%);}
a:hover,a:focus {color: #ffffff;}
a:hover::after, a:focus::after {height:100%;width:calc(100% + 16px);left:-10px; bottom:-3px; border:solid 3px #313131;box-shadow: 0 0 0 3px #f1de0b;}
.desktop, * .desktop {display:none;}
.mobile, * .mobile {display:inline;}
.lockup_separator, #spar_logo {display:none;position:relative;top:-9px;}
.lockup_separator{margin-left:-6px;margin-right:-3px;}
#dsw_logo img, .lockup_separator, #spar_logo img {height:5.7vh; width:auto;}

@media screen and (max-aspect-ratio: 375/620) {
	#dsw_logo img, .lockup_separator, #spar_logo img {height:4.9vh; width:auto;}
}
.header_options {float:right;}
@media screen and (min-width:480px){#dsw_logo img, .lockup_separator, #spar_logo img {height:5.5vh; width:auto;}}
@media screen and (min-width:600px){
	.mobile {display:none !important;}
	a::after {	transition:all 0.2s cubic-bezier(.82,.01,.19,1);}
	body {font-size:18px;}
	.desktop {display:initial;}
	span.desktop {display:inline;}
}
@media screen and (min-width:900px){
	body {font-size:20px;}
	.lockup_separator {display:initial;}
	#spar_logo {display:inline-block;}
	#dsw_logo img, .lockup_separator, #spar_logo img {height:7vh; width:auto;}
}
@media screen and (min-width:1200px){
	body {font-size:22px;}
}
.imgLink {border:3px solid #fff;display:inline-block;padding: 5px 5px 0px 5px;}
.imgLink::after {content:none;}
.imgLink:hover, .imgLink:focus {box-shadow:0 0 0 3px #f1de0b;}
.imgLink:active {box-shadow:0 0 0 3px #53af31;}
header {padding:1em;}
#dsw_logo {position: relative;top:-9px; left:-6px;}
.button, .red a.button {display: inline-block;
    line-height: 1.7em;
    padding: 0.2em 0.5em 0.2em;
    border: 3px solid #313131;
	border-radius:8px;
	box-shadow: 0 6px 0px -1px rgba(0,0,0,0.3);
	cursor:pointer;
	font-weight: 900;
	color:#313131;
	text-decoration: none;
	background:#fff;
	margin-bottom:15px;
	margin-right:15px;
	position:relative;
	z-index:200;
	-webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none;
}
.header_options .button {margin-right:0px;}
.button:hover, .button:focus, .red a.button:hover, .red a.button:focus {background: #3A7A22;color:#fff;box-shadow:0 0 0 3px #f1de0b, 0 7px 1px -2px rgba(0,0,0,0.3);
}
.button:active {background:#313131;color:#fff;}
.button::after{content:none;}
header .button{margin-left:0.5em;}
.clear {clear:both;}
a.button:not([href*='insportseries.co.uk']):not([href*='../']):not([href^='#']):not([href^='/']):not([href^='?']) { padding-right:2.5em; background-image:url("images/external_link.svg"); background-repeat: no-repeat; background-position: right 50%; background-size:auto 60%;}

h1,h2,h3,h4,.smiles,.plan_item {font-family:"Infour", Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif"; text-transform: uppercase; text-align: left; 
}
.smiles {    vertical-align: middle;}
h1{font-size: 4em;line-height:0.95em; margin:0.3em 0;  text-transform:none !important; }
h2,.smiles{font-size: 2.8em;line-height:1.1em;}
@media screen and (max-width:700px){
h2,.smiles{font-size: 2.6em;line-height:1.1em;}	
}
h3,.plan_item {font-size: 2em; line-height:1.1em; text-transform: none;}
h4 {letter-spacing: 3px; font-size:1.3em; line-height:1.3em; margin:0;padding:0;color:#313131;}
#accessibility_options {
	display:none;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100vh;
    background: #313131;
    z-index: 100;
    
}
#accessibility_options h1, #accessibility_options h2, #accessibility_options h3, #accessibility_options h4, #accessibility_options p{color:#fff;margin:0.5em 0 1em;}
#accessibility_options .button {
    display: inline-block;
    padding: 0.2em 0.5em 0.2em;
    border: 3px solid #fff;
    cursor: pointer;
    font-weight: 900;
    color: #fff;
    text-decoration: none;
    background: #202020;
}
#accessibility_options .section_title {font-size: 1.2em;
    font-weight: 900;
    padding-bottom: 0.2em;
color:#fff;}
.close_accessibility_options {float:right;margin: 1em;}
.no_float{float:none;margin:1em 0;}
.accessibility_option {
	border-radius: 5px;
	text-align:center;
	padding: 0.2em 0.5em 0.2em;
    display: inline-block;
    border: 3px solid #fff;
background-color:#fff;font-weight: 900;cursor:pointer;margin-right:0.6em;vertical-align: bottom;margin-bottom:15px;}
.contrast_options_standard, .contrast_options_high {
	width: 47%;
    border: 3px solid #fff;
	padding-top:calc(1.95/3 * 47%);
	margin-right:0;
}
@keyframes ball {
	from {left:0;}
	to {left:100%;}
}
.accessibility_animation_example_container{width:calc(100% - 30px);height:30px;position:relative;margin-top: 10px;max-width:500px;}
.ball {    width: 30px;
    height: 30px;
    background: #e3013d;
    border-radius: 50%;
    position: absolute;
    left: 0;
}
.small_text {font-size:15px;}
.medium_text {font-size:18px;}
.large_text {font-size:22px;}
.extra_large_text {font-size:30px;}
@media screen and (min-width:600px){
	.small_text {font-size:20px;}
.medium_text {font-size:21px;}
.large_text {font-size:26px;}
.extra_large_text {font-size:36px;}
}
@media screen and (min-width:900px){
	.small_text {font-size:18px;}
.medium_text {font-size:24px;}
.large_text {font-size:30px;}
.extra_large_text {font-size:40px;}
}
@media screen and (min-width:1200px){
	.small_text {font-size:22px;}
.medium_text {font-size:27px;}
.large_text {font-size:32px;}
.extra_large_text {font-size:48px;}
}
.contrast_options_standard {background-image:url("images/constrast_demo_standard.jpg"); background-size:100% auto; background-position:top center;background-repeat:no-repeat;}
.contrast_options_high {background-image:url("images/constrast_demo_high.jpg"); background-size:100% auto; background-position:top center;margin-left:6%;background-repeat:no-repeat;}
.selected {    box-shadow: 0 0 0 3px #53af31;
    border-color: #313131; background-color: #53af31; color:#fff;}
.activated {font-weight:700;}
.accessibility_option:hover, .accessibility_option:focus {  box-shadow: 0 0 0 3px #f1de0b; background-color: #f1de0b;color:#313131;}
.accessibility_option_group {margin-top:2em;padding-bottom:2em;border-bottom:1px solid #505050;}
.insportSeriesTitle{color:transparent;margin:0 auto;background-size:contain;background-repeat: no-repeat;background-position: center center;font-size:2em;padding:4.6vh 0;}
.en.home #welcome {padding:2vh 5vw;}
.cy.home #welcome {padding:2vh 10vw;}
.en .insportSeriesTitle {background-image:url("images/insport_series_title_english.png");background-image:url("images/insport_series_title_english.svg"); }
.cy .insportSeriesTitle {background-image:url("images/insport_series_title_welsh.png");background-image:url("images/insport_series_title_welsh.svg");}
@media screen and (min-width:670px){
	.en.home #welcome {padding:2vh 10vw;}
	.insportSeriesTitle{ background-position:left center;max-width:1200px;}
	.en .insportSeriesTitle {transform: translateX(-36px)}
}
section{position:relative;margin-bottom:12.5%;}
section::before{content:'';display:block; position:absolute;top:0;left:0;width:130%;transform-origin:top left;transform:rotate(-7deg); height:0;padding-top:15%;z-index:-1;}
section::after{content:'';display:block; position:absolute;bottom:0;right:0;width:130%;transform-origin:bottom right;transform:rotate(-7deg); height:0;padding-top:15%;z-index:-1;}
section.red,section.red::after,section.red::before {background:#e3013d;color:#fff;}
section.grey,section.grey::after,section.grey::before {background:#ddd;color:#313131;}
section.white,section.white::after,section.white::before {background:#fff;color:#313131;}
section.green,section.green::after,section.green::before {background:#53af31;color:#313131;}
section.dark,section.dark::after,section.dark::before {background:#313131;color:#fff;}
section.gold,section.gold::after,section.gold::before {background:#daaa4d;background:#c58d20;color:#fff;}
span.gold{color:#daaa4d; color:#c58d20; font-weight: bold;}
.content {max-width:1500px;margin:auto;padding:2vh 5vw;z-index: 1; position:relative;}
@media screen and (min-width:600px){
	.content {padding:2vh 10vw;}
}
@media screen and (min-width:1400px){
	.content {padding:0.83em 10vw;}
}
#welcome {margin-bottom:6%;}
.event_title{font-family:"Infour", Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif"; font-size:1.8em;
	display: block;position:relative;cursor:pointer;margin-top:-3px;    line-height: 1.1em;}
.event {border:3px solid rgba(0,0,0,0.5);padding:10px 11px;position:relative;left:-14px; width:calc(100% + 28px);cursor:pointer;margin-top:10px;border-radius: 18px;box-shadow: 0 7px 2px -2px rgba(0,0,0,0.1);
}
.red .event {background: rgba(0,0,0,0.15);}
.green .event {background: rgba(0,0,0,0.3);}
.date {font-weight:900;margin-right:10px;} 
.hosted_by {color:#313131; display:inline-block;line-height: 1.2em}
.event_wrapper:hover .event,.event_wrapper:focus .event{border: 3px solid #313131;background: #53af31;
    color: #fff;
    box-shadow: 0 0 0 3px #f1de0b;}
.green .event_wrapper:hover .event,.green .event_wrapper:focus .event {background: #e3013d;}
.event_wrapper,.check_in_type_option_link {display:block;border:0;box-shadow: 0;}
.event_wrapper::after,.check_in_type_option_link:after {content:none;}
.event_wrapper:hover,.event_wrapper:focus, .hosted_by {color: #ffffff;}
hr {
    border: 0;
    height: 3px;
    background-image: linear-gradient(90deg, rgba(31,31,31, 0.2) 0%, rgba(31,31,31, 0) 80%);
}
.event_date {
    display: inline-block;
    width: 90px;
    position: relative;
    padding: 26px 10px 10px 10px;
    background: #fff;
    color: #313131;
    text-align: center;
    font-family: 'Infour', Impact;
    font-size: 60px;
	line-height: 70px;
    height: 96px;
    border-radius: 15px;
    border: solid 3px #313131;
    overflow: hidden;
    margin-right: 10px;
    vertical-align: top;}
.event_date::before {    content: '';
    position: absolute;
    width: 100%;
    height: 37px;
    top: 0;
    left: 0;
    transform: skewY(-7deg);
    transform-origin: top left;
    background: #313131;}
.event_date .month {
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    font-size: 20px;
    color: #fff;
    line-height: 1.1em;
    padding-top: 3px;
    background: #313131;
}
.event_listing_details {width:calc(100% - 105px);display:inline-block;vertical-align:middle; color:#fff;}
.copyright {display:block;}
@media screen and (min-width:600px){
	.copyright {display:inline;}
	.privacy_policy {float:right;margin-right:0px;}
.event_date {
    display: inline-block;
    width: 115px;
    position: relative;
    padding: 33px 10px 10px 10px;
    background: #fff;
    color: #313131;
    text-align: center;
    font-family: 'Infour', Impact;
    font-size: 65px;
	line-height: 85px;
    height: 115px;
    border-radius: 15px;
    border: solid 3px #313131;
    overflow: hidden;
margin-right:20px;vertical-align:middle;}
.event_date::before {content:'';position:absolute;width:100%;height:47px;top:0;left:0;transform:skewY(-7deg);transform-origin:top left;background:#313131;}
.event_date .month {
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    font-size: 25px;
    color: #fff;
    line-height: 1.1em;
    padding-top: 6px;
    background: #313131;
}
.event_listing_details {width:calc(100% - 135px);display:inline-block;vertical-align:middle;}
	.event {border:3px solid rgba(0,0,0,0.5);padding:15px; border-radius:30px; position:relative;left:-23px; width:calc(100% + 46px);}
}
#countdown_container .countdown_digit {padding: 0.2em 0 0.08em;
    display: inline-block;
    margin-right: 1px;
    font-size: 3em;
	line-height: 1em;
    color: #313131;
    background: #fff;
    border-radius: 5px;
    text-align: center;
    width:43%;
box-shadow:0 2px 3px -1px rgba(0,0,0,0.5)}
#countdown_container div {display:inline-block;width:25%;padding-top:2em;position:relative;font-family: 'Infour',Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";margin-top:0.5em;}
#countdown_container div::before {
	content:'';
	display:block;
	position: absolute;
	top:0px;
	width:86%;
	left:0;
	text-align:center;
	text-transform: uppercase;}
#countdown_container div::after {
	content:':';
	display:block;
	position: absolute;
	bottom:0em;
	width:14%;
	margin-bottom:0;
	right:0;
	font-size:2em;
	line-height: 2em;
	text-align:center;
	text-transform: uppercase;}
#countdown_container div:last-child::after{content:none;}
.en #countdown_container div.days::before {
	content:'Days';
}
.en #countdown_container div.hours::before {
	content:'Hours';
}
.en #countdown_container div.minutes::before {
	content:'Minutes';
}
.en #countdown_container div.seconds::before {
	content:'Seconds';
}
.cy #countdown_container div.days::before {
	content:'Dyddiau';
}
.cy #countdown_container div.hours::before {
	content:'Oriau';
}
.cy #countdown_container div.minutes::before {
	content:'Munudau';
}
.cy #countdown_container div.seconds::before {
	content:'Eiliadau';
}

@media screen and (min-width:860px){
	#countdown_container .countdown_digit {
    font-size: 4em;
	}
	#countdown_container div::after {
	content:':';
	display:block;
	position: absolute;
	bottom:0em;
	width:14%;
	margin-bottom:0;
	right:0;
	font-size:3em;
	line-height: 1.8em;
	text-align:center;
	text-transform: uppercase;}
#countdown_container div:last-child::after{content:none;}
}
#footer {color: #fff;position: relative;}
#footer::after{
	content: '';
    width: 100%;
    height: 210%;
    background: url(images/footer.jpg);
    background-position: center center;
    background-size: cover;
    bottom:0;
    z-index: -2;
    position: absolute;
    display: block;}
#footer .contact_details{padding-bottom:4vh;padding-top:3.5vh;line-height:1.5em;}
#footer .contact_details div {margin-bottom:0.5em;}
.address, .phone {font-weight:900;}.charity_number, .company_number {display:inline-block;margin-right:15px;}
.checkbox_item,.radio_item, .select_item{position: relative;}
input[type="checkbox"],input[type="radio"]{
	cursor: pointer;
    position: absolute;
    z-index: 1;
    top: -2px;
    left: -2px;
    width: 44px;
    height: 44px;
    margin: 0;
    opacity: 0;}
.checkbox_label,.radio_label {display: inline-block;
    padding-left: 50px;min-height:40px;position:relative;}
.radio_label {line-height: 40px;}
.checkbox_label::before{
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    border: 3px solid currentColor;
    background:rgba(123,123,123,0.1);}
.checkbox_label::after {content: "";
    position: absolute;
    top: 11px;
    left: 9px;
    width: 18px;
    height: 7px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border: solid;
	border-color:#fff;
    border-width: 0 0 5px 5px;
    border-top-color: transparent;
    opacity: 0;
    background: transparent;}
input[type="checkbox"]:checked+.checkbox_label::after,input[type="radio"]:checked+.radio_label::after {
    opacity: 1;
}
input[type="checkbox"]:checked+.checkbox_label::before {
    background:#53af31;
}
input[type="checkbox"]:focus+.checkbox_label::before,input[type="radio"]:focus+.radio_label::before {
    border-width: 4px;
    box-shadow: 0 0 0 3px #f1de0b;
}
select {border: 3px solid currentColor; outline:none;margin-right:15px;    font-size: 1.2em;
    line-height: 1em; padding:10px;}
select:focus {box-shadow: 0 0 0 3px #f1de0b;}
.radio_label::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    border: 3px solid currentColor;
    border-radius: 50%;
    background:rgba(123,123,123,0.1);
}
.radio_label::after{
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    width: 0;
    height: 0;
    border: 10px solid #53af31;
    border-radius: 50%;
    opacity: 0;
    background: currentColor;}
.text_label{display:block;}
.input {    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 1.2em;
    line-height: 1em;
	font-weight: 700;
    box-sizing: border-box;
    width: 100%;
    margin-top: 0;
	margin-bottom: 10px;
    padding: 10px;
    border: 3px solid #313131;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
background:rgba(123,123,123,0.1);}
.red .input {background:#fff;}
.input:focus {
    outline: 3px solid #f1de0b;
    outline-offset: 0;
    box-shadow: inset 0 0 0 2px #313131;

}
.conditional {margin-left: 19px;
    padding-left: 25px;
    border-left: 3px solid #aaa;
margin-bottom:10px;padding-top: 15px;
    }
.conditional .input {margin-bottom:0;}
.radio_item,.checkbox_item,.select_item {margin-bottom:15px;}
.radio_item:last-child,.checkbox_item:last-child {margin-bottom:0px;}
.conditional{display:none;}
.conditional_controller:checked ~ .conditional {display:block;}
legend{padding:0;margin-bottom:5px;margin-top:10px;font-weight:900;font-size:1.2em;}

.loader {
	width:16px;
	height:16px;
	margin:auto;
	background:url("images/ajax-loader.gif");
	background-repeat: no-repeat;
	background-position: center center;
	display:inline-block;
}

.disabled {opacity:0.5;pointer-events:none;}
.not_audited {padding: 10px;
    border: 3px solid #e31010;
    background: rgba(255,0,0,0.2);}
.audited {padding: 10px;
    border: 3px solid #53af31;
    background: rgba(83,175,49,0.2);}
.input.cy {padding-left: 60px;
    background-image: url(images/welsh.jpg);
    background-repeat: no-repeat;
    background-position: 10px 10px;
}
.input.en {padding-left: 60px;
    background-image: url(images/english.jpg);
    background-repeat: no-repeat;
    background-position: 10px 10px;
}
textarea.input {resize: vertical; line-height:1.2em;}
.required {color:#e3013d;}
.red .required {color:#313131;}
.rectify{padding: 15px;
    border: 3px solid #e3013d;
    background: rgba(255,0,0,0.1);}
.red .rectify {padding: 15px;
    border: 3px solid #ffff00;
    background: rgba(0,0,0,0.2)}
.error {
	display:none;
	background-color: #e3013d;
	background-image:url("images/warning.png");
	background-repeat: no-repeat;
	background-size:20px 20px;
	background-position: 11px center;
    color: #fff;
    padding: 4px 15px 4px 40px;}
.warning {background-color: #e3013d;
	background-image:url("images/warning.png");
	background-repeat: no-repeat;
	background-size:20px 20px;
	background-position: 11px center;
    color: #fff;
    padding: 4px 15px 4px 40px;border: solid 3px #fff;}
.check_in_form {margin-top:15px;}
.event_window, .event_location {margin-bottom: 20px; margin-right:20px;
    display: inline-block;
    background: rgba(31,31,31,0.2);
    border-radius: 40px;
    color: #fff;
    font-weight: 900;
    padding: 0 10px;
    transform: translateX(-2px) translateY(0px);}

.youtube_container{
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; 
  height: 0;
	border: 3px solid #e3013d;
	background-color:#e3013d;
	background-image: url("images/youtube_loader.gif");
	background-repeat: no-repeat;
	background-position:center center;
}
.youtube_container iframe{
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
}
.separator {width: 100%;
    height: 5px;
    background: rgb(227,1,61);
    background: linear-gradient(90deg, rgba(227,1,61,0) 7%, rgba(227,1,61,1) 50%, rgba(227,1,61,0) 98%);
    margin: 7vh 0;
    position: relative;}
.red .separator, .green .separator {width: 100%;
    height: 5px;
    background: rgb(255,255,255);
    background: linear-gradient(90deg, rgba(255,255,255,0) 7%, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 98%);
    margin: 7vh 0;
    position: relative;}
.sports_links {display:none;position:fixed;top:0;width:100%;background:#e3013d; padding:5px 0;height:auto;z-index:1000;text-align: left;}
section .sports_links {position: relative;display:block;}
.sports_links .content {padding-top:0;padding-bottom: 0;}
.content .content{padding:0;}
.sport_link{display:inline-block; text-align:center;color:#fff; margin:5px 10px 5px 0; padding:0 10px;border:3px solid #fff;}
.sport_link:hover{background:#fff;color:#e3013d;}
.sport_link::after{content:none;}
.page_anchor {position: relative;
    top: -15vh;}
.inspire_posts img {width:100%; height:auto;}
.inspire_posts {border:3px solid #313131;}
.guidelines_to_exercise {width:100%;position:relative;border:3px solid #313131;}
.guidelines_to_exercise img {width:100%; height:auto; display:block;}

.golden_ticket { z-index: 2;
    position: relative;
    width: 100%;
    max-width: 1400px;
    text-align: center;
	overflow:hidden;
	background:#d7a749;
padding:1.5em 3em;box-shadow: 0 55px 30px -60px #000;
	margin:2.5em auto;color:#313131;
}
.golden_ticket::before{
	content:'';
	height:105%;
	position:absolute;
	left:-15px;
	background:url("images/golden_ticket_edge.png");
	background-position:top left;
	background-size: 100px 100%;
	width:50px;
	top:-2.5%;
	pointer-events: none;
	z-index:1;
	
}
.golden_ticket::after{
	content:'';
	height:105%;
	position:absolute;
	right:-15px;
	background:url("images/golden_ticket_edge.png");
	background-position:top right;
	background-size: 100px 100%;
	width:50px;
	top:-2.5%;
	pointer-events: none;
	z-index:1;
}
.ticket_number {font-family:"Infour", Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";color:#fff;font-size:4em;margin-top:0.3em;margin-bottom: 0.5em;}
.ticket_number_title {font-size:16px;display:block;margin:auto;font-family: 'Lato', sans-serif; padding-bottom:10px;}
.ticket_title {font-family:"Infour", Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif"; font-size:3em;line-height:1em;}
.dragon_scales {    width: 120%;
    height: 200%;
    background: url(images/dragon_scale.png);
	backgrond-size: auto 25px;
    position: absolute;
    top: -1.5em;
    left: -3em;
    transform: rotate(-7deg);
    transform-origin: top left;}
.shimmer {background: rgb(218,170,77);
background: linear-gradient(rgba(218,170,77,0) 0%, rgba(244,198,109,1) 48%, rgba(231,180,80,1) 52%, rgba(218,170,77,0) 100%);
	transform: rotate(-7deg);
    transform-origin: top left;
    width: 110%;
    height: 100%;
    position: absolute;
    top: 20%;
    left: -3em;}
select.input {-webkit-appearance:auto; background:#fff;}
@media screen and (max-width:500px){
	.ticket_title {font-size:2.5em;}
	.ticket_number {font-size:2.8em;}
}
.tooltip {padding: 10px 10px 10px 50px; background:rgba(0,0,0,0.1);margin-bottom: 10px; background-image:url("images/tooltip.png"); background-repeat: no-repeat;background-size:28px 28px; background-position:12px 12px;}
aside {padding: 10px;
    border-radius: 10px;
    border: 3px solid rgb(227, 1, 61);
    vertical-align: middle;
    animation-delay: 0.9s;
    background: rgba(227,1,61,0.05);}
#find_la_button,#find_nearest_spar_button {margin-top:10px;}
.participant_form_container {background: #fff;
    border-radius: 10px;
    padding: 0.3em 1em 0.3em 1em;
    color: #313131;}
.saved_participant {padding: 10px 50px 10px 50px;border:solid 3px #aaa; background:#fff;margin-bottom: 10px; background-image:url("images/participant.png"); background-repeat: no-repeat;background-size:28px 28px; background-position:10px center; border-radius:10px; color:#313131; cursor:pointer; position:relative;}
.saved_participant span:not(.desktop,.mobile) {display: inline-block;}
.participant_name {margin-right:30px;}
.saved_participant:hover,.saved_participant:focus {
	box-shadow: 0 0 0 3px #f1de0b;}

.saved_participant.attending {padding: 10px 10px 10px 50px;border:solid 3px #53af31; background:#57e123;margin-bottom: 10px; background-image:url("images/participant_attending.png"); background-repeat: no-repeat;background-size:28px 28px; background-position:10px center; border-radius:10px; color:#313131; cursor:pointer;}

.hidden {display:none;}

#view{
    width: 100px;
    height: 100px;
    margin: 20px 50px 20px 20px;
    perspective: 200px;
    display: inline-block;
    perspective-origin: center;
    vertical-align: middle;
    }
    #dice{
    width:100px;
    height:100px;
    position:relative;
	transform-origin: center center;
    transform-style:preserve-3d;
    }
    #btnFront:checked ~ #view>#dice{
    transform:rotateY(360deg) !important;
    }
    #btnRight:checked ~ #view>#dice{
    transform:rotateY(-90deg) !important;
    }
    #btnBack:checked ~ #view>#dice{
    transform:rotateY(180deg) !important;
    }
    #btnLeft:checked ~ #view>#dice{
    transform:rotateY(90deg) !important;
    }
    #btnTop:checked ~ #view>#dice{
    transform:rotateX(-90deg) !important;
    }
    #btnBottom:checked ~ #view>#dice{
    transform:rotateX(90deg) !important;
    }
    .diceFace{
    position:absolute;
    width:100px;
    height:100px;
    text-align:center;
	background-image: url("../images/dice.png");
    }
    #front{

    transform:rotateY(0deg) translateZ(50px);
	
	background-size: 100% auto;
	background-position: left 0px;
    }
    #right{

	background-size: 100% auto;
	background-position: left -100px;
    transform:rotateY(90deg) translateZ(50px);
    }
    #back{

	background-size: 100% auto;
	background-position: left -500px;
    transform:rotateY(180deg) translateZ(50px);
    }
    #left{

	background-size: 100% auto;
	background-position: left -400px;
    transform:rotateY(-90deg) translateZ(50px);
    }
    #top{

	background-size: 100% auto;
	background-position: left -300px;
    transform:rotateX(90deg) translateZ(50px);
    }
    #bottom{

	background-size: 100% auto;
	background-position: left -200px;
    transform:rotateX(-90deg) translateZ(50px);
    }
.cy .roll_the_dice.cy{display:inline-block;vertical-align: middle;}
.cy .roll_the_dice.en{display:none;vertical-align: middle;}
.en .roll_the_dice.en{display:inline-block;vertical-align: middle;}
.en .roll_the_dice.cy{display:none;vertical-align: middle;}
.die_number {
	    font-family: "Infour", Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";
    text-transform: uppercase;
    text-align: center;
    display: inline-block;
    width: 1.2em;
    height: 1.15em;
    padding-top: 0.05em;
    background: url(images/die.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center center;
    color: #fff;
	font-size: 3em;
    line-height: 1em;
    vertical-align: middle;
}
th {text-align:left;}
th, td {padding-right: 15px;}
td {padding-bottom:10px;}

.check_in_type_option {padding:15px 15px 15px 120px; background:#ccc; border:3px solid #fff; background-position:25px center; background-size:70px 70px; min-height:100px; background-repeat: no-repeat; vertical-align: middle; border-radius: 26px; box-shadow: 0 7px 0 -1px rgba(0,0,0,0.4); user-select: none; cursor:pointer; margin:15px 0; color:#313131;font-size:120%; font-weight: bold;line-height: 60px;}
.check_in_type_option span {
  display: inline-block;
  vertical-align: middle;
  line-height: normal;
}
.check_in_type_option.individual {background-image:url("images/individual.svg");}
.check_in_type_option.teacher {background-image:url("images/teacher.svg");}

.check_in_type_option_link:hover .check_in_type_option, .check_in_type_option_link:focus .check_in_type_option {background-color:#fff; border-color:#000; box-shadow: 0 0 0 3px #f1de0b, 0 7px 1px -2px rgb(0 0 0 / 30%);
}


#insport_series_logo {width: 100%;
    height: auto;
    max-width: 500px;
    display: block;
    margin: auto;
    margin-bottom: -10vh;
    position: relative;
    z-index: 50;}

.q-tip {    font-size: 95%;
    line-height: 1.1em;
    display: block;
    margin: 10px 0 20px 0;
    font-style: italic;}

.checked_in_block {border: 2px solid rgba(0,0,0,0.2);
    background: rgba(0,0,0,0.2);
    font-size: 80%;
    padding: 5px 10px;
    border-radius: 5px;}

.check_out_button{float:right;}

.bypass_link {font-size: 140%; font-weight: bold;}

.game_card {margin-top:1em; margin-bottom:2em; padding:1em 1em 1.2em 1em; border-radius:1.8em; box-shadow: 0 8px 0 -3px rgb(0 0 0 / 20%);
	background:#fff; position:relative; z-index:-2;
}

.game_card h2 {margin-top:0.2em; margin-bottom:0.4em;}

.infocontainer {padding: 1em;
    margin: 1em 0em;
    border: 2px solid #e3031d;
    border-radius: 1em;
    box-shadow: 0 8px 0 -3px rgb(0 0 0 / 20%);
}

.activity-illustration{border-radius:1em;box-shadow: 0 8px 0 -3px rgb(0 0 0 / 20%); max-width:100%; height:auto;}
.infocontainer h3, .accordion h3, .step-guidance-container h3, .impairment-considerations-container h3  {margin-block-start: 0em;
    margin-block-end: 0em;}
.infocontainer li::marker{color:#e3013d;}
.infocontainer ul {padding-inline-start: 23px;    margin-block-end: 0em;}
.infocontainer p:last-child {  margin-block-end: 0em;}

.step-guidance-container:before {
	content:'';
	width:100%;
	height:calc(100% + 8px);
	position:absolute;
	border-radius:1em;
	display:block;
	left:0;
	top:0;
	z-index:-1;
	background: rgb(227,3,29);
background: linear-gradient(132deg, rgba(227,3,29,1) 0%, rgba(47,63,146,1) 33%, rgba(252,189,0,1) 66%, rgba(63,165,53,1) 100%);
box-shadow: 0 8px 0 -3px rgb(0 0 0 / 20%);}

.impairment-considerations-container:before {
	content:'';
	width:100%;
	height:calc(100% + 8px);
	position:absolute;
	border-radius:1em;
	display:block;
	left:0;
	top:0;
	z-index:-1;
	background: #7faaea;
box-shadow: 0 8px 0 -3px rgb(0 0 0 / 20%);}

.step-guidance-container, .impairment-considerations-container {position:relative;}

.step-guidance-container .contents, .impairment-considerations-container .contents {background:rgba(255,255,255,0.7); border-radius: calc(1em - 4px); margin:4px; padding:1em;position:relative; top:4px;}

.step-table .title {color:#fff; font-family: "Infour", Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif";     font-size: 1.5em; padding: 0.3em 0.5em;}
.step-table td{  padding: 0.3em 0.8em; vertical-align: middle; width:50%;}
.step-table td img{  vertical-align: middle;}

.step-table {width:100%; border-radius:5px;margin: 0.5em 0;}

.space.step-table td{border:2px solid #e3031d; background:#f8c2c3;}
.space.step-table .title {background:#e3031d;}

.task.step-table td{border:2px solid #2f3f92; background:#d9dceb;}
.task.step-table .title {background:#2f3f92}

.equipment.step-table td{border:2px solid #fcbd00; background:#feebb2;}
.equipment.step-table .title {background:#fcbd00; color:#313131;}

.people.step-table td{border:2px solid #3fa535; background:#c5e4c2;}
.people.step-table .title {background:#3fa535;}


.space.step-table td{background:rgba(227,1,61,0.2);}


.task.step-table td{border:2px solid #2f3f92; background:rgba(47,63,146,0.1);}


.equipment.step-table td{border:2px solid #fcbd00; background:rgba(252,189,0,0.4);}


.people.step-table td{background:rgba(63,165,53,0.2);}

.step-table td.easier, .step-table td.harder {background:#fff; color:#313131; font-weight:bold;}
.step-table td.easier img, .step-table td.harder img {height:24px; width:auto;display:inline-block; position:relative; top:-2px;}

.accordion {margin: 1em 0em; }
.accordion.collapsed {user-select:none; cursor:pointer;}

.accordion.collapsed .details{ display:none;}
.accordion.expanded .tip {display:none;}

.impairment-considerations {padding:1em; border-radius:1em; border:4px solid #ccc;}

.cons-table{margin-bottom:1em;}
.cons-table:last-child{margin-bottom:0em;}

.autism {background:#9dc6d6; color:#74378c; padding:0.2em 1em; font-weight: bold;}
.autism_considerations {padding:0 1em; border:2px solid #9dc6d6; background:rgba(255,255,255,0.8);}

.blind {background:#262626; color:#ffe30d; padding:0.2em 1em; font-weight: bold;}
.blind_considerations {padding:0 1em; border:2px solid #262626; background:rgba(255,255,255,0.8);}

.deaf{ background: #283583; color:#fff;  padding:0.2em 1em; font-weight: bold;}
.deaf_considerations {padding:0 1em; border:2px solid #283583; background:rgba(255,255,255,0.8);}

.learning {background:#74378c; color:#fff; padding:0.2em 1em; font-weight: bold;}
.learning_considerations {padding:0 1em; border:2px solid #74378c; background:rgba(255,255,255,0.8);}

.physical {background:#145e47; color:#fff; padding:0.2em 1em; font-weight: bold;}
.physical_considerations {padding:0 1em; border:2px solid #145e47; background:rgba(255,255,255,0.8);}

.wheelchair {background:#cd1719; color:#fff; padding:0.2em 1em; font-weight: bold;}
.wheelchair_considerations {padding:0 1em; border:2px solid #cd1719; background:rgba(255,255,255,0.8);}

.dwarfism {background:#F7820D; color:#fff; padding:0.2em 1em; font-weight: bold;}
.dwarfism_considerations {padding:0 1em; border:2px solid #F7820D; background:rgba(255,255,255,0.8);}

.content img {max-width:100%; height:auto;}


#education .event {padding:0 !important;}
#education .event .event_listing_details {padding:10px 11px;}
@media screen and (min-width:600px){#education .event .event_listing_details {padding:15px;}}
#education .event .event_photo {width:100%; height:130px;background-size:cover; background-position:center center;  border-top-left-radius:15px; border-top-right-radius:15px; border-bottom-left-radius:0px;}
@media screen and (min-width:900px){
	#education .event .event_listing_details {padding:30px 15px;}
	#education .event {padding-left:38% !important;}
	#education .event .event_photo {width:33%; height:100%; position:absolute; left:0; top:0; border-top-left-radius:27px; border-top-right-radius:0px; border-bottom-left-radius:27px;}

}

.key-para { font-size: 130%;
    line-height: 150%;}

@media screen and (min-width:1200px){
#sessions_block {display:flex; flex-wrap: wrap; column-gap: 20px;}
}
.session_container {    padding: 10px;
    width:100%;}
@media screen and (min-width:1200px){
	
.session_container { 
    flex:40%;
	margin:0;
    display: inline-block;
}

	
}
.session_container {    padding: 10px;
    border-radius: 15px;
    background: rgba(31,31,31,0.2);
	margin-bottom:20px;}


.session_name{font-family:"Infour", Impact, Haettenschweiler, "Franklin Gothic Bold", "Arial Black", "sans-serif"; font-size:1.6em; line-height:1.1em;}

.session_option, .session_details {padding: 10px;
    background: #e3e3e3;
    border-radius: 5px;
    margin-top: 10px;
	color: #313131;
}
.session_details {padding:7px 18px 7px 15px; border-radius: 15px;}
.session_option.fully_booked {background:rgba(31,31,31,0.2); color:#ddd;}
.session_option.bookable{pointer-events:all;}
.session_option.bookable:hover,.session_option.bookable:focus,a.spaces_available:hover,a.spaces_available:focus{background:#eee; cursor:pointer; box-shadow:0 0 0 3px #000, 0 0 0 6px #ffff00;}
.session_option_age { color:#e3013d;}
.session_option.fully_booked .session_option_age { color:#bbb;}
.spaces_available, a.spaces_available, .current_bookings {
	font-size: 70%;
    font-weight: bold;
    padding: 0px 10px;
    display: inline-block;
    background: #f4f4f4;
    border-radius: 3px;
    margin-top: 8px;
	margin-right:5px;
	color:#313131;
}
a.spaces_available:after{display:none!important;}
.session_option.bookable:hover .spaces_available{background:#fff;}
.spaces_available.fully_booked {
	background:#bbb;
	color:#444;pointer-events:none;
}
.optional {opacity:0.7; font-style:italic;}

.welcome_container {background:rgba(31,31,31,0.1); padding:4px 15px; border-radius:15px; border:solid 3px rgba(31,31,31,0.1);}
.saved_participant.ineligible {background-color: #ddd;
	opacity: 0.8; pointer-events:none;}
.reason {    font-size: 80%; line-height:1.3em;}

#booking_form .participant_form_container {border: solid 3px #ccc;
	background: #f8f8f8; margin-top:15px;}

.remove_participant.button {border-radius:30px; line-height:16px;height:30px; width:30px; text-align:center; position:absolute; right:-5px; top:50%; transform:translateY(-50%); color:#e3013d; background:#fff; border-color: #aaa; box-shadow:0 2px 0 -1px rgba(0,0,0,0.1); pointer-events: all !important;}
.remove_participant.button:active {transform:translateY(-50%) scale(0.9);}

@media screen and (min-width:600px){
	#booking_form .saved_participant {padding-right:79px;}
	.remove_participant.button {font-size:50%; width:auto; border-radius:10px;text-align:center; position:absolute; right:-5px; top:50%; transform:translateY(-50%); color:#e3013d; background:#fff; border-color: #aaa; box-shadow:0 2px 0 -1px rgba(0,0,0,0.1);}
	
}
#modal {    position: fixed;
    max-width: 95vw;
    max-height: 95vh;
    z-index: 6000;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    background: #fff;
    padding: 1em;
    min-width: 300px;
    border-radius: 1em; display:none;}

#modal_click_off { position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0.4);
    left: 0;
    top: 0;
z-index: 3000; display:none;}

.button.confirm:not(:hover) {background:#89e077;}
.button.confirm:not(:focus) {background:#89e077;}

.small_text {font-size:80%;}

div.img_tray {
  background: rgba(31,31,31,0.2);
  overflow: auto;
  white-space: nowrap;
  padding: 10px;
  margin: 2em 0;
 text-align:center;
	-ms-overflow-style: none;
	scrollbar-width: none;
	scrollbar-height: none;
}
div.img_tray::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    }

div.img_tray img {
  padding: 10px;height:33vh;
	max-height:500px; width:auto;
	pointer-events: none;
}
.key_para {
    font-size: 130%;
    line-height: 140%;
}
.uppercase {text-transform:uppercase;}
.rc {
    border-radius: var(--border-radius);
}
.ds {

    box-shadow:

      0 1px 1px hsl(0deg 0% 0% / 0.075),

      0 3px 3px hsl(0deg 0% 0% / 0.075),

      0 6px 6px hsl(0deg 0% 0% / 0.075),

      0 12px 12px hsl(0deg 0% 0% / 0.075),

      0 22px 22px hsl(0deg 0% 0% / 0.075)

    ;

  }

.img_container {overflow:hidden;}

.above {position:relative; z-index:1;}