:root {
	--font-minor:						"Merriweather";
	--font-minor-weight:				300;
	--font-minor-bold-weight:			700;
	--font-minor-size:					0.85rem;

	--size-measure:						800px;
	--size-margin-h:					20px;
}

html {
	font-family:				'Merriweather', serif;
	font-weight:				300;
	color:						#333;
	background-color:			#fff;
	-webkit-text-size-adjust:	100%;
	font-size:					16px;
	line-height:				150%;
	}
h1, h2, h3, h4 {
	font-family:				"Heebo", sans-serif;
	font-weight:				800;
	line-height:				inherit;
	}
h1 {
	font-size:					32px;
	line-height:				110%;
	}
h2 {
	font-size:					22px;
	}
h3 {
	font-size:					19px;
	}
h4 {
	font-size:					18px;
	}
em {
	font-style:					italic;
	}
strong {
	font-weight:				700;
	color:						#000;
	}
a {
	color: #f60;
	}


blockquote {
	background-color:			#f80;
	color: 						rgba(255, 255, 255, 0.8);
	padding:					20px;
	margin:						20px auto;
	font-style:					italic;
	width:						75%;
	}
blockquote p:last-child {
	margin-bottom:				0;
	}
blockquote strong {
	color:						#fff;
	}
blockquote a {
	color:						inherit;
	}
blockquote span.source {
	display:					block;
	margin-top:					15px;
	font-size:					75%;
	line-height:				130%;
	}



header .site-title, header .join {
	background-color:			#444;
	}
header .join .container {
	margin:						0 auto -30px auto;
	max-width:					var(--size-measure);
	padding:					0 var(--size-margin-h);
	text-align:					right;
	}
@supports(padding: max(0px)) {
	header .join .container {
		padding-left:				max(var(--size-margin-h), env(safe-area-inset-left));
		padding-right:				max(var(--size-margin-h), env(safe-area-inset-right));
	}
}
header .site-title .container {
	margin:						0 auto;
	max-width:					var(--size-measure);
	padding:					15px var(--size-margin-h);
	color:						#f2f2f2;
	text-align:					left;
	}
@supports(padding: max(0px)) {
	header .site-title .container {
		padding-left:				max(var(--size-margin-h), env(safe-area-inset-left));
		padding-right:				max(var(--size-margin-h), env(safe-area-inset-right));
	}
}
header .site-title svg.leaves {
	display:					inline-block;
	vertical-align:				top;
	width:						120px;
	}
header .site-title .title-text {
	display:					inline-block;
	box-sizing:					border-box;
	vertical-align:				bottom;
	width:						calc(100% - 120px);
	padding:					0 0 2px 10px;
	color:						inherit;
	font-size:					35px;
	line-height:				130%;
	text-decoration:			none;
	}
header .site-title .friends-of {
	display:					block;
	padding:					0 0 0 2px;
	font-size:					20px;
	line-height:				24px;
	color:						#bbb;
	}
header .site-title .divider {
	color:						#777;
	}
header .site-title .queen-elizabeth-park {
	font-weight:				700;
	letter-spacing:				0.01em;
	}
header .site-title .farnborough {
	color:						#aaa;
	}
header .site-title .container a:hover {
	text-decoration:			none;
	}
header .button.join-us {
	font-size:					0.9rem;
	line-height:				150%;
	padding:					4px 12px 4px 12px;
	margin-top:					0;
	border-top-left-radius:		0;
	border-top-right-radius:	0;
	}
@media screen and (max-width: 810px) {
	header .site-title .farnborough {
		display:					block;
		}
	header .site-title .divider {
		display:					none;
		}
	}
@media screen and (max-width: 570px) {
	header .join .container {
		margin-bottom:				-25px;
		}
	header .button.join-us {
		margin-right:				-10px;
		}

	header .site-title svg.leaves {
		vertical-align:				middle;
		width:						80px;
		}
	header .site-title .title-text {
		vertical-align:				middle;
		width:						calc(100% - 80px);
		font-size:					1.3rem;
		}
	header .site-title .friends-of, header .site-title .farnborough {
		font-size:					0.9rem;
		line-height:				140%;
		}
	header .site-title .farnborough {
		display:					block;
		}
	header .site-title .divider {
		display:					none;
		}
	}
@media print {
	header {
		display:					none;
		}
	}


nav {
/*	position:					sticky;
	position:					-webkit-sticky;
	top:						0;*/
	font-family:				"Heebo", sans-serif;
	font-weight:				700;
	background-color:			#333;
	color:						#ddd;
	}
nav ul {
	margin:						0 auto;
	max-width:					var(--size-measure);
	}
nav li {
	display:					inline-block;
	width:						25%;
	}
nav a {
	position:					relative;
	display:					block;
	color:						inherit;
	text-decoration:			none;
	text-align:					center;
	padding:					10px 5px;
	}
nav li.current {
	background-color:			#555;
	}
nav li:hover {
	background-color:			#666;
	}
nav li:not(.current) span.arrow {
	display:					none;
	}
nav li span.arrow {
	display:					block;
	position:					absolute;
	z-index:					100;
	left:						50%;
	top:						100%;
	width:						40px;
	margin-left:				-20px;
	}
nav li span.arrow svg {
	width:						40px;
	}
nav li span.arrow svg path {
	fill:						#555;
	}
nav li:hover span.arrow svg path {
	fill:						#666;
	}
.news-link {
	display:					none;
	}

@media screen and (max-width: 500px) {
/*	nav li.extra {
		display:					none;
		}*/
	nav li {
		width:						25%;
		}
/*	.news-link {
		display:					block;
		position:					absolute;
		right:						0;
		overflow:					hidden;
		}
	.news-link .container {
		width:						160px;
		height:						90px;
		transform:					translate(70px);
		}
	.news-link span {
		display:					block;
		margin-right:				-30px;
		background-color:			#f60;
		color:						#fff;
		font-family:				"Heebo", sans-serif;
		font-weight:				700;
		text-align:					center;
		transform:					rotate(45deg);
		}
	.news-link a {
		display:					block;
		width:						120px;
		line-height:				40px;
		padding:					40px 0 0 10px;
		margin:						-10px 0 0 0;
		color:						inherit;
		text-decoration:			none;
		}
	.news-link a:hover {
		background-color:			#f40;
		}*/
	}


footer {
	margin-top:					40px;
	padding:					20px 0 30px 0;
	font-family:				"Heebo", sans-serif;
	font-weight:				400;
	background-color:			#333;
	color:						#ccc;
	}
footer .container {
	margin:						0 auto 20px auto;
	max-width:					var(--size-measure);
	padding:					15px var(--size-margin-h) 0 var(--size-margin-h);
	}
@supports(padding: max(0px)) {
	footer .container {
		padding-left:				max(var(--size-margin-h), env(safe-area-inset-left));
		padding-right:				max(var(--size-margin-h), env(safe-area-inset-right));
	}
}
footer section {
	box-sizing:					border-box;
	display:					inline-block;
	width:						50%;
	padding-right:				20px;
	vertical-align:				top;
	margin-bottom:				30px;
	}
footer section.get-involved {
	width:						30%;
	}
footer section.slpp {
	width:						40%;
	}
footer section.support {
	width:						30%;
	}
footer h2 {
	font-size:					100%;
	color:						#eee;
	margin:						0 0 5px 0;
	}
footer ul + h2 {
	margin-top:					30px;
	}
footer a {
	color:						inherit;
	text-decoration:			none;
	}
footer a:hover {
	text-decoration:			underline;
	color:						#fff;
	}
footer strong {
	color:						#eee;
	}
footer .account {
	padding:					20px 0 0 0;
	text-align:					right;
	color:						#aaa;
	-webkit-user-select:		none;
	-moz-user-select:			none;
	-ms-user-select:			none;
	user-select:				none;
	}
footer .account svg.user {
	width:						20px;
	vertical-align:				top;
	}
footer .account svg.user path {
	stroke:						none;
	fill:						#aaa;
	}
footer .account a, footer .account .sign-in, footer .account .sign-out {
	color:						#aaa;
	text-decoration:			none;
	cursor:						pointer;
	}
footer .account a:hover, footer .account .sign-in:hover, footer .account .sign-out:hover {
	color:						#fff;
	}
@media screen and (max-width: 500px) {
	footer section, footer section.get-involved, footer section.slpp, footer section.support {
		display:					block;
		width:						100%;
		}
	footer ul li {
		padding:					5px 0;
		}
	footer .account {
		display:					none;
		}
	}
@media print {
	footer {
		display:					none;
		}
	}

body > article {
	background-color:			#f2f2f2;
	}
article section {
	background-image:			linear-gradient(to bottom, #f2f2f2, #fff);
	padding:					30px 0;
	}
article h1 + section {
	padding-top:				0;
	}
article section .container, article > .container > .cms {
	margin:						0 auto 20px auto;
	max-width:					var(--size-measure);
	padding:					0 var(--size-margin-h);
	}
@supports(padding: max(0px)) {
	article section .container, article > .container > .cms {
		padding-left:				max(var(--size-margin-h), env(safe-area-inset-left));
		padding-right:				max(var(--size-margin-h), env(safe-area-inset-right));
	}
}
article h1, article h2, article h3 {
/*	color:						#f80;*/
	color:						#000;
	line-height:				140%;
	}
article h1 {
	margin:						0 auto 10px auto;
	max-width:					var(--size-measure);
	padding:					20px var(--size-margin-h) 0 var(--size-margin-h);
	}
@supports(padding: max(0px)) {
	article h1 {
		padding-left:				max(var(--size-margin-h), env(safe-area-inset-left));
		padding-right:				max(var(--size-margin-h), env(safe-area-inset-right));
	}
}
article section h1 {
	margin:						0 auto 10px auto;
	max-width:					auto;
	padding:					0;
	}
article h2 {
	/*border-bottom:				1px solid #ddd;*/
/*	padding-bottom:				5px;*/
	margin:						0 0 10px 0;
	}
article p + h2, article ul + h2 {
	margin-top:					30px;
	}
article h3 {
	margin:						30px 0 10px 0;
	}
article section > .container:first-child > h3:first-child {
	margin-top:					0;
	}
article p {
	margin-bottom:				14px;
	}
article ul {
	list-style:					disc outside;
	margin-bottom:				14px;
	}
article ul li {
	list-style:					inherit;
	margin-left:				20px;
	margin-bottom:				7px;
	}
article ol {
	margin:						0 0 14px 0;
	}
article ol li {
	list-style-position:		outside;
	list-style-type:			decimal;
	margin:						0 0 0 20px;
	}
article img {
	display:					block;
	width:						90%;
	margin:						0 auto;
	}
article .noresize img {
	display:					block;
	width:						auto;
	margin:						0 auto;
	}
article span.caption {
	box-sizing:					border-box;
	display:					block;
	width:						90%;
	margin:						0 auto;
	padding:					10px 20px;
	text-align:					center;
	background-color:			#333;
	color:						#eee;
	font-weight:				700;
	}
article span.caption a {
	color:						#fff;
	}
article .video {
	text-align:					center;
	padding:					5px 0 20px 0;
	}
article .video iframe {
	width:						600px;
	height:						338px;
	max-width:					100%;
	display:					inline-block;
	}
@media screen and (max-width: 500px) {
	h1 {
		font-size:					28px;
		}
	article h2 {
		padding-bottom:				5px;
/*		margin:						40px -20px 15px -20px;
		padding:					20px 20px 0 20px;
		border-top:					1px solid #ddd;
		border-bottom:				none;*/
		}
	article blockquote {
		width:						100%;
		margin-left:				-20px;
		color: 						rgba(255, 255, 255, 0.9);
		}
	article img {
		width:						calc(100% + 40px);
		margin-left:				-20px;
		}
	article span.caption {
		width:						calc(100% + 40px);
		margin:						0 -20px;
		background-color:			rgba(0, 0, 0, 0.08);
		color:						inherit;
		font-weight:				inherit;
		}
	article span.caption a {
		color:						#000;
		}
	}
@media print {
	body > article {
		background-color:			#fff;
		}
	article section {
		background-image:			none;
		}
	}


.button {
	display:					inline-block;
	margin-top:					20px;
	padding:					0 25px;
	line-height:				34px;
	color:						#fff;
	text-decoration:			none;
	background-color:			#f80;
	border-radius:				5px;
	box-shadow:					1px 1px 3px rgba(0, 0, 0, 0.3);
	cursor:						pointer;
	}
.button.disabled {
	background-color:			#aaa;
	cursor:						default;
	}
.button:not(.disabled):hover {
	color:						#fff;
	background-color:			#e40;
	text-decoration:			none;
	}
.button + .button {
	margin-left:				20px;
	}


.documents ul li {
	display:						inline-block;
	vertical-align:					top;
	text-align:						center;
	width:							240px;
	margin:							0 0 30px 0;
	}
.documents ul li img {
	display:						inline-block;
	width:							200px;
	margin:							0 0 10px 0;
	height:							auto;
	border:							1px solid #ddd;
	box-shadow:						0 0 10px rgba(0, 0, 0, 0.05);
	}
@media screen and (max-width: 500px) {
	.documents ul li {
		display:						block;
		width:							100%;
		}
	}


.write-now {
	display:					block;
	padding:					10px 20px;
	margin:						30px 30px;
	text-align:					center;
	font-size:					18px;
	font-weight:				700;
	color:						#000;
	border:						2px solid #f60;
	border-radius:				5px;
	}
.write-now .email {
	display:					block;
	padding:					6px 0 0 0;
	}
.mp-address {
	display:					block;
	font-weight:				700;
	padding:					10px 20px;
	margin:						0 30px;
	}
.letter {
	background:					#fff;
	margin:						30px 0 0 0;
	padding:					30px 20px 10px 20px;
	box-shadow:					0 0 10px rgba(0, 0, 0, 0.075);
	font-family:				"Arial", sans-serif;
	}
.letter .address {
	text-align:					right;
	}
.letter-options {
	padding:					10px 0 30px 0;
	text-align:					center;
	}
.letter-options .button {
	margin-left:				15px;
	margin-right:				15px;
	}
@media screen and (max-width: 500px) {
	.write-now .email a > span {
		display:block;
		}
	}

.timetable h2 {
	font-size:						32px;
	}
.timetable h3 {
	margin-top:					40px;
	}
.timetable h3 em {
	color:						inherit;
	background-color:			#ff0;
	text-decoration:			underline;
	}
.timetable h3 em strong {
	font-weight:				inherit;
	text-decoration:			underline;
	}
.timetable h4 {
	font-family:				inherit;
	font-size:					inherit;
	color:						#888;
	font-weight:				inherit;
	margin-top:					40px;
	}
.timetable h4 em {
	color:						#000;
	}
.timetable h3 + h4 {
	margin-top:					-9px;
	}
.timetable ul {
	margin-bottom:				20px;
	}
.timetable ul li {
	list-style-position:		outside;
	list-style-type:			disc;
	margin:						0 0 0 20px;
	}

.notable-tree-map {
	width:						100%;
	height:						600px;
	border:						none;
	}
@media screen and (max-width: 500px) {
	.notable-tree-map {
		margin-left:				-20px;
		width:						calc(100% + 40px);
		height:						500px;
		}
	}

span.zone {
	padding:						0.1em 0.5em;
	border-radius:					0.7em;
	}
h3 span.zone {
	padding-top:					0;
	padding-bottom:					0;
	}
span.zone a {
	color:							inherit;
	}
span.zone.cabrol_road {
	background-color:				rgba(255, 0, 0, 0.7);
	color:							#fff;
	}
span.zone.trench {
	background-color:				rgba(170, 0, 255, 0.7);
	color:							#fff;
	}
span.zone.farnborough_road {
	background-color:				rgba(255, 200, 0, 0.9);
	color:							#000;
	}
span.zone.hdd_proposal {
	background-color:				rgba(80, 200, 0, 0.9);
	color:							#fff;
	}


form.set-password, form.reset-password, form.sign-in {
	position: relative;
	margin:							20px auto 0 auto;
	background-color:				rgba(0, 0, 0, 0.05);
	padding:						20px 30px 30px 30px;
	border:							1px solid rgba(0, 0, 0, 0.02);
	border-radius:					10px;
	box-shadow:						0 0 20px rgba(0, 0, 0, 0.05);
	}
form.set-password {
	max-width:						28em;
	}
form.reset-password {
	max-width:						27em;
	}
form.sign-in {
	max-width:						35em;
	}
form.set-password h1, form.reset-password h1, form.sign-in h1 {
	text-align:						center;
	margin:							0 0 30px 0;
	}
form.set-password p.text-line label {
	width:							11em;
	}
form.sign-in p.text-line label, form.reset-password p.text-line label {
	width:							6em;
	}
form.sign-in input#username, form.reset-password input#username, form.sign-in input#password {
	width:							18em;
	}
form.set-password .button-bar, form.reset-password .button-bar, form.sign-in .button-bar {
	text-align:						center;
	}
form.set-password svg.spinner.submit, form.reset-password svg.spinner.submit, form.sign-in svg.spinner.submit {
	position:					absolute;
	right:						30px;
	bottom:						30px;
	width:						32px;
	display:					none;
	}




/*body article .hero {
	margin-top:					calc(-1 * var(--size-article-padding-top));
	background-image:			linear-gradient(#445259, #e8f2ff);
	}*/
body article .hero img {
	display:					block;
	width:						100%;
	margin:						0;
	}
@media screen and (max-width: 500px) {
	body article .hero img {
		max-width:					100%;
		}
	}


body.home > article > section:first-child {
	padding:					0;
	}
body.home section.hero {
	margin:						0;
	padding:					0;
	background-size:			cover;
	background-position:		50% 70%;
	min-height:					500px;
	position:					relative;
	background-image:			url(/images/homepage-beeches-autumn.jpg);
	}
body.home section.hero > p {
	display:					none;
	}
body.home section.hero > .container:first-child {
	max-width:					100%;
	margin:						0;
	padding:					0;
	background-color:			rgba(0, 0, 0, 0.2);
	}
@supports(padding: max(0px)) {
	body.home section.hero .container {
		padding-left:				max(var(--size-margin-h), env(safe-area-inset-left));
		padding-right:				max(var(--size-margin-h), env(safe-area-inset-right));
	}
}
body.home section.hero section.next-event {
	background-image:			none;
	font-weight:				700;
	padding:					20px 0;
	}
body.home section.hero section.next-event .container {
	margin-bottom:				0;
	}
body.home section.hero section.next-event h2 {
	font-size:					1.6rem;
	}
body.home section.hero section.next-event p:last-child {
	margin-bottom:				0;
	}
body.home section.hero .panel, body.home section.hero section {
	font-family:				"Heebo", sans-serif;
	font-weight:				400;
	font-size:					1.4rem;
	line-height:				130%;
	color:						#fff;
	text-shadow:				0 0 4px rgba(0, 0, 0, 0.5);
	}
body.home section.hero .panel a, body.home section.hero section a {
	font-weight:				700;
	color:						#fff;
	}
body.home section.hero .panel {
	max-width:					var(--size-measure);
	padding-right:				var(--size-margin-h);
	position:					absolute;
	bottom:						35px;
	}
@supports(padding: max(0px)) {
	body.home section.hero .panel {
		padding-right:				max(var(--size-margin-h), env(safe-area-inset-right));
	}
}
body.home section.hero .panel strong {
	color:						inherit;
	}
@media screen and (max-width: 500px) {
	body.home section.hero > .container:first-child {
		background-color:			transparent;
		}
	body.home section.hero > .container {
		position:					absolute;
		left:						0;
		top:						0;
		right:						0;
		bottom:						0;
		margin-bottom:				0;
		background-color:			transparent;
		background-image:			linear-gradient(180deg, rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.0) 20%, rgba(128, 64, 32, 0.25) 75%);
		}
	body.home section.hero section.next-event {
		display:					none;
		}
	body.home section.hero .panel {
		font-weight:				800;
		font-size:					1.3rem;
		text-shadow:				0 0 8px rgba(0, 0, 0, 0.95);
		}
	}

article > section.next-event {
	display:					none;
	}
@media screen and (max-width: 500px) {
	article > section.next-event {
		display:					block;
		background-color:			#f60;
		background-image:			none;
		color:						#fff;
		text-align:					center;
		}
	article > section.next-event h2, article > section.next-event h2 a, article > section.next-event a {
		color:						inherit;
		}
	article > section.next-event h2 span.fully-booked {
		background-color:			#fff;
		color:						#f60;
		}
	article > section.next-event .container {
		margin-bottom:				0;
		}
	article > section.next-event p:last-child {
		margin-bottom:				0;
		}
	}

article .picture-group {
	position:					relative;
	clear:						both;
	}
article .picture-group .picture-group-row {
	position:					relative;
	margin-bottom:				12px;
	}
article .picture-group .picture-group-row > div {
	position:					relative;
	}
article .picture-group .picture-group-row div > img {
	width:						100%;
	object-fit:					cover;
	object-position:			50% 50%;
	margin:						0;
	}
article .picture-group .picture-group-row div.landscape-small:not(:first-child) img {
	height:						100%;
	}
article .picture-group .picture-group-row div > .picture-number {
	position:					absolute;
	bottom:						0;
	left:						100%;
	font-family:				var(--font-minor), sans-serif;
	font-weight:				var(--font-minor-weight);
	font-size:					var(--font-minor-size);
	line-height:				100%;
	color:						#000;
	margin-left:				3px;
	}
article .picture-group .picture-group-row div.portrait {
	display:					inline-block;
	vertical-align:				top;
	}
article .picture-group .picture-group-row div.portrait img {
	max-height:					557px;
	}
article .picture-group .picture-group-row div.landscape-small:first-child img {
	height:						258px;
	}
article .picture-group .picture-group-row div.portrait:first-child {
	box-sizing:					border-box;
	width:						50%;
	padding-right:				6px;
	}
article .picture-group .picture-group-row div.portrait:first-child > .picture-number {
	margin-left:				-3px;
	}
article .picture-group .picture-group-row div.portrait:last-child:not(:first-child) {
	box-sizing:					border-box;
	width:						50%;
	padding-left:				6px;
	}
article .picture-group .picture-group-row div.landscape-large {
	display:					inline-block;
	width:						100%;
	}
article .picture-group .picture-group-row div.landscape-small {
	display:					block;
	position:					absolute;
	box-sizing:					border-box;
	width:						50%;
	height:						50%;
	right:						0;
	top:						0;
	padding:					0 0 6px 6px;
	}
article .picture-group .picture-group-row div.landscape-small:first-child {
	position:					relative;
	width:						50%;
	height:						auto;
	padding:					0 6px 0 0;
	}
article .picture-group .picture-group-row div.landscape-small + div.landscape-small.picture-index-2 {
	height:						100%;
	padding-bottom:				0;
	}
article .picture-group .picture-group-row div.landscape-small .picture-number {
	bottom:						6px;
	}
article .picture-group .picture-group-row div.landscape-small:first-child .picture-number {
	bottom:						0;
	margin-left:				-3px;
	}
article .picture-group .picture-group-row div.landscape-small + div.landscape-small.picture-index-2 .picture-number {
	bottom:						0;
	}
article .picture-group .picture-group-row div.landscape-small.picture-index-3 {
	top:						auto;
	bottom:						0;
	padding:					6px 0 0 6px;
	}
article .picture-group .picture-group-row div.landscape-small.picture-index-3 .picture-number {
	bottom:						0;
	}
article .picture-group .captions {
	font-family:				var(--font-minor), sans-serif;
	font-weight:				var(--font-minor-weight);
	font-size:					var(--font-minor-size);
	color:						rgba(0, 0, 0, 0.6);
	line-height:				170%;
	margin:						0 0 20px 0;
	padding:					0 0 5px 0;
	border-bottom:				1px solid rgba(0, 0, 0, 0.2);
	}
article .picture-group .captions.before {
	display:					none;
	}
article .picture-group .captions .number {
	color:						#000;
	font-weight:				var(--font-minor-bold-weight);
	}
@media screen and (min-width: 1180px) {
	article .picture-group .captions.before {
		display:					block;
		position:					absolute;
		left:						-180px;
		top:						0;
		width:						160px;
		margin:						0;
		padding:					5px 0 0 0;
		border-top:					1px solid rgba(0, 0, 0, 0.2);
		border-bottom:				none;
		}
	article .picture-group .captions.after {
		display:					none;
		}
	}


body.gallery > article {
	background-color:				#111;
	color:							#eee;
	}
body.gallery > article section {
	background-color:				transparent;
	background-image:				none;
	}
body.gallery > article h1, body.gallery > article h2, body.gallery > article h3, body.gallery > article h4 {
	color:							inherit;
	}
body.gallery > article .picture-group .captions {
	color:							inherit;
	}
body.gallery > article .picture-group .picture-group-row div > .picture-number {
	color:							inherit;
	}
body.gallery > article .picture-group .captions .number {
	color:							inherit;
	}
body.gallery > article .picture-group .captions {
	border-bottom-color:			rgba(255, 255, 255, 0.5);
	}
@media screen and (min-width: 1180px) {
	body.gallery > article .picture-group .captions.before {
		border-top-color:				rgba(255, 255, 255, 0.5);
		}
	}



.last-chance {
	background-color:				rgba(255, 128, 0, 0.85);
	color:							#fff;
	width:							75%;
	padding:						0.5em;
	margin:							0 auto;
	border-radius:					5px;
	}
.last-chance h1, .last-chance h2 {
	text-align:						center;
	color:							inherit;
	}
span.esso-statement {
	font-style:						italic;
	color:							#27b;
	}
span.esso-statement strong {
	color:							inherit;
	font-style:						inherit;
	color:							#1c649d;
	}
img.limit-size {
	max-height:						400px;
	width:							auto;
	}
img.captioned + span {
	display:						block;
	margin-top:						0.5em;
	text-align:						center;
	font-style:						italic;
	}
@media screen and (max-width: 500px) {
	.last-chance {
		margin-top:					2.5em;
		}
	img.limit-size {
		width:						calc(100% + 40px);
		margin-left:				-20px;
		}
	}




.graph h3 {
	text-align:					center;
	}
.litter-graph {
	display:					block;
	width:						600px;
	padding:					0 50px 0 0;
	margin:						0 auto;
	}
.litter-graph .bar[data-series="0"] {
	fill:						#f80;
	}
@media screen and (max-width: 500px) {
	.litter-graph {
		box-sizing:					border-box;
		width:						100%;
		padding:					0 20px 0 0;
		margin:						0 0 0 -10px;
		}
	}



/*.half-panel {
	box-sizing:					border-box;
	width:						49%;
	padding:					20px;
	margin:						0 0 20px 0;
	border-radius:				7px;
	display:					inline-block;
	vertical-align:				top;
	background-color:			rgba(0, 0, 0, 0.1);
	}
.half-panel h2 a {
	color:						inherit;
	}*/



h1 span.fully-booked, h2 span.fully-booked {
	display:					inline-block;
	vertical-align:				top;
	margin-top:					0.1em;
	padding:					0.2em 0.5em 0 0.5em;
	font-size:					70%;
	line-height:				140%;
	text-transform:				uppercase;
	color:						#fff;
	background-color:			#f60;
	border-radius:				5px;
	}

h1#wrong-trees {
	font-size:					6rem;
	text-align:					center;
	text-transform:				uppercase;
	line-height:				110%;
	padding:					0.2em;
	}
img.wrong-trees + img.wrong-trees {
	margin-top:					4rem;
	}
@media screen and (max-width: 500px) {
	h1#wrong-trees {
		font-size:					2.5rem;
		max-width:					8.5em;
		}
	img.wrong-trees + img.wrong-trees {
		margin-top:					3rem;
		}
	}


section.dark {
	margin-top:					-20px;
	background-color:			#000;
	background-image:			none;
	text-align:					center;
	color:						#ddd;
}


section[data-tag="wheres-rudolph"] {
	background-image:			none;
	background-color:			#2d4666;
	color:						#dce5f2;
	}
section[data-tag="wheres-rudolph"] .container {
	background-image:			url(/images/reindeer-left-background.svg), url(/images/reindeer-right-background.svg);
	background-repeat:			no-repeat;
	background-position:		0 20px, 100% 20px;
	background-size:			200px;
	}
section[data-tag="wheres-rudolph"] .panel.long-title {
	box-sizing:					border-box;
	max-width:					500px;
	margin:						0 auto;
	padding:					10px 60px;
	border-radius:				100%;
	background-color:			#f0f1f3;
	}
section[data-tag="wheres-rudolph"] h1 {
	margin-bottom:				12px;
	font-family:				'Abril Fatface', serif;
	font-size:					48px;
	line-height:				110%;
	color:						#798624;
	text-align:					center;
	}
section[data-tag="wheres-rudolph"] h2 {
	margin-top:					0;
	margin-bottom:				12px;
	font-size:					28px;
	font-weight:				400;
	text-align:					center;
	}
section[data-tag="wheres-rudolph"] h3 {
	margin-top:					0;
	font-size:					20px;
	font-weight:				400;
	text-align:					center;
	}
section[data-tag="wheres-rudolph"] .panel.info {
	display:					none;
	}
section[data-tag="wheres-rudolph"] .panel.details {
	text-align:					center;
	}
section[data-tag="wheres-rudolph"] .panel.details strong {
	font-size:					150%;
	line-height:				250%;
	color:						inherit;
	}
body.page-events section[data-tag="wheres-rudolph"] > .container > h1, body.page-events section[data-tag="wheres-rudolph"] > .container > h1 + p.event-date {
	display:					none;
	}
@media screen and (min-width: 501px) {
	section[data-tag="wheres-rudolph"] {
		margin-top:					-20px;
		}
	section[data-tag="wheres-rudolph"] .panel.short-title {
		display:					none;
		}
	}
@media screen and (max-width: 500px) {
	section[data-tag="wheres-rudolph"] .container {
		background-image:			url(/images/reindeer-left-background.svg), url(/images/reindeer-right-background.svg);
		background-repeat:			no-repeat;
		background-position:		-20px 20px, calc(100% + 20px) 20px;
		background-size:			100px;
		}
	section[data-tag="wheres-rudolph"] .panel.long-title {
		display:					none;
		}
	section[data-tag="wheres-rudolph"] .panel.short-title {
		box-sizing:					border-box;
		max-width:					70vw;
		margin:						0 auto;
		padding:					10px 20px;
		border-radius:				100%;
		background-color:			#f0f1f3;
		}
	section[data-tag="wheres-rudolph"] h1 {
		font-size:					32px;
		line-height:				44px;
		}
	section[data-tag="wheres-rudolph"] h1 hr {
		margin:						12px auto 8px auto;
		border-top: 				1.5px solid #798624;
		border-bottom:				none;
		border-left:				none;
		border-right:				none;
		width:						25%;
		}
	section[data-tag="wheres-rudolph"] .panel.info {
		display:					block;
		color:						inherit;
		}
	section[data-tag="wheres-rudolph"] .panel.info h2 {
		margin-top:					0;
		margin-bottom:				12px;
		font-family:				inherit;
		font-size:					100%;
		font-weight:				400;
		text-align:					center;
		color:						inherit;
		}
	section[data-tag="wheres-rudolph"] .panel.info h2 strong {
		color:						inherit;
		}
	section[data-tag="wheres-rudolph"] .panel.info h3 {
		margin-top:					0;
		font-family:				inherit;
		font-size:					85%;
		font-weight:				400;
		text-align:					center;
		color:						inherit;
		}
	section[data-tag="wheres-rudolph"] .panel.details strong {
		font-size:					120%;
		line-height:				130%;
		}
	body.page-events section[data-tag="wheres-rudolph"] .panel.details strong {
		display:					block;
		margin-top:					24px;
		margin-bottom:				20px;
		}
	}




section.gbgw, section[data-tag="gbgw"] {
	background-image:			url(/images/great-big-green-week-background.svg);
	background-repeat:			repeat-x;
	background-position:		center 0;
	background-size:			600px 225px;
	padding-top:				130px;
	background-color:			#51A483;
	color:						#fff;
	font-weight:				700;
	}
@media screen and (min-width: 501px) {
	section.gbgw {
		margin-top:					-20px;
		}
	}
section.gbgw h1, section[data-tag="gbgw"] h1 {
	line-height:				110%;
	margin-bottom:				0.5em;
	font-size:					48px;
	text-align:					center;
	color:						#1FA8DF;
	text-shadow:				3px 3px 3px #fff, -3px 3px 3px #fff, 3px -3px 3px #fff, -3px -3px 3px #fff, 4px 0 3px #fff, -4px 0 3px #fff, 0 4px 3px #fff, 0 -4px 3px #fff;
	}
section.gbgw h2, section[data-tag="gbgw"] .event-date {
	text-align:					center;
	color:						#FEBC58;
	font-family:				"Heebo", sans-serif;
	font-size:					1.4rem;
	}
section.gbgw p, section[data-tag="gbgw"] p {
	text-align:					center;
	width:						80%;
	margin-left:				auto;
	margin-right:				auto;
	}
section.gbgw ul, section[data-tag="gbgw"] ul {
	width:						70%;
	margin:						2em auto;
	color:						rgba(255, 255, 255, 0.8);
	}
section.gbgw a, section[data-tag="gbgw"] a {
	color:						#FEBC58;
	}



section[data-tag="jubilee"] .jubilee-flags, section.jubilee .jubilee-flags {
	background-image:			url(/images/jubilee/jubilee-flags.svg);
	background-repeat:			repeat-x;
	background-position:		center 4px;
	background-size:			420px 32px;
	height:						44px;
	margin-top:					-30px;
	}
section[data-tag="jubilee"] img.jubilee-logo, section.jubilee img.jubilee-logo {
	width:						110px;
	margin:						4px auto 16px auto;
	float:						none;
	}
section[data-tag="jubilee"] h1, section[data-tag="jubilee"] .event-date, section.jubilee h1 {
	text-align:					center;
	}
section[data-tag="jubilee"] h1, section.jubilee h1 {
	color:						#61007d;
	}



section.easter-2023, section[data-tag="easter-2023"] {
	background:					#F4F552 url("/images/easter-2023.png") no-repeat left top;
	background-size:			auto 100%;
	background-color:			#F4F552;
	}
section.easter-2023 .container, section[data-tag="easter-2023"] .container {
	padding-left:				120px;
	padding-right:				120px;
	text-align:					center;
	}
section.easter-2023 .container h1, section[data-tag="easter-2023"] .container h1, section.easter-2023 .container h2, section[data-tag="easter-2023"] .container h2, section.easter-2023 .container strong, section[data-tag="easter-2023"] .container strong {
	color:						#7719AD;
	}
@media screen and (min-width: 501px) {
	section.easter-2023, section[data-tag="easter-2023"] {
		margin-top:					-20px;
		}
	}
@media screen and (max-width: 500px) {
	section.easter-2023, section[data-tag="easter-2023"] {
		background-position:		0 50%;
		background-size:			100px auto;
		}
	section.easter-2023 .container, section[data-tag="easter-2023"] .container {
		padding-left:				110px;
		padding-right:				max(var(--size-margin-h), env(safe-area-inset-right));
		text-align:					left;
	}

body.constitution article ol li, body.safeguarding-statement article ol li {
	list-style-type:			lower-roman;
	margin-left:				40px;
	}
body.constitution article ol li ol li, body.safeguarding-statement article ol li ol li {
	list-style-type:			lower-alpha;
	}
}



section.event {
	background-color:			#fff;
	background-image:			none;
	p, h1, h2 {
		text-align:					center;
	}

	ul li {
		text-align:					center;
		list-style-position:		inside;
	}

	@media screen and (min-width: 501px) {
		margin-top:					-20px;
	}

	.panel.box {
		border:						4px solid #000;
		border-radius:				9999px;
		margin:						0 auto;

		@media screen and (min-width: 501px) {
			max-width: 50%;
		}
	}
}



section.event.art-in-the-park {
	h1 {
		color:					#494;
	}

	.panel.box {
		border-color:			#494;
	}
}