/*
Theme Name: Maidenhead Scouts Custom Theme
Author: Jonathan Adams.
Author URI: https://maidenheadscouts.org.uk/
Description: Customised for Maidenhead District Scouts.
Tags: Scouts
Version: Unversioned
*/

/* Fonts */

@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,wght@0,400;0,700;1,400&display=swap');

/* HTML Elements */

* {
	margin:0;
	padding:0;
  box-sizing: border-box;
	}

body {
	font-family: Verdana, Arial, Helvetica;
  max-width: 960px;
  margin: 0px auto;
}

@media (prefers-color-scheme: dark) {
  body {
    background: black;
    color: #D3D3D3;
  }
}

@media (prefers-color-scheme: light) {
  body {
    background: white;
    color: #333;
  }
}


p {	
	margin: 15px 0;
}

a:link, a:visited {
	color: #00A794;
  text-decoration:none;
	font-weight:bold;
}

a:hover, a:active {
	color: #7413DC;
  text-decoration:none;
	font-weight:bold;
	}

a img {
	border:0;
	}

code {
	font-family: 'Courier New', Courier, Fixed;
	background:#ececec;
	}	

acronym, abbr, span.caps {	
	font-size: 0.9em;
	letter-spacing: .07em;
	cursor: help;
	}			

acronym, abbr {
	border-bottom: 1px dashed #999;
	}

blockquote {
	padding: 10px 10px 0 10px;
	border-top: 1px solid;
	border-bottom: 1px solid;
	background: #eee;
	font-family: Arial;
	line-height:1.5em;
	margin:10px 0px;
	}

@media (prefers-color-scheme: dark) {
  blockquote {
    background: #333;
    border-color: #666
  }
}

@media (prefers-color-scheme: light) {
  blockquote {
    background: #eee;
    border-color: #ddd;
  }
}

/* Structure */

.left, .alignleft {
	float:left;
	}

.right, .alignright {
	float:right;
	}

/* Title */
#title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
}

#title-logo {
  height: 3em;
  margin: 0.5em;
}

#title-text > a, #title-text > a:hover, #title-text > a:visited, #title-text > a:active {
	font:2.2em 'Nunito Sans', sans-serif;
	color: #7413DC;
	font-weight:bold;
	letter-spacing: -0.05em;
	border-bottom: 0px solid #ddd;
	border-top: 0px solid #ddd;
	padding: 0px 0px 5px 0px;
}

#searchform-container {
	margin-left: auto;
  margin-right: 1em;
  margin-top: auto;
  margin-bottom: auto;
}

#searchform {
	width:154px;
	text-align:right;
	}


/* Navigation Bar */

#main-menu {
	background: #00A794;
	color:#fff;
	width: 100%;
  clear: both;
	}

#main-menu ul {
	list-style: none;
	}

#main-menu li {
	/*float:left;*/
	list-style:none;
	cursor: pointer;
	display:block;
	border-right:0px solid #333;
	}

#main-menu li:hover {
	color: #7413DC;
	}

#main-menu a, #main-menu a:visited, #main-menu label {
	padding:0.75em 1em;
	font-weight:bold;
  font-size: 0.8em;
	color:#FFF;
	display:block;
	}

#main-menu a:hover {
	color: #7413DC;
	text-decoration:none;
	font-weight:strong;
	display:block;
	}

/* Top level menus */
#main-menu > ul
{
  display: flex;
}
	
/* check-box hack. On small screen sizes controls whether the main menu is visible */
label#main-menu-toggle {
	display:none;
}

@media (max-width: 700px) 
{
  label#main-menu-toggle {
	display:block;
  }

  nav#main-menu > ul {
    display: none;
    flex-direction: column;
  }
  input#main-menu-toggle-checkbox:checked~ul {
    display: flex;
  }
}

.hamburger{
  display: block;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}

.hamburger span.bar{
  display: block;
  margin:0.2em;
  height: 0.2em;
  width:2em;
  background: white;
  border-radius: 0.2em;
}

nav#main-menu li.menu-item a, nav#main-menu li.menu-item a:link, nav#main-menu li.menu-item a:visited {
	background: #00A794;
	}

/* Drop down menus 25em width and less vertical padding than the top menu*/
nav#main-menu li.menu-item li.menu-item a, nav#main-menu li.menu-item li.menu-item a:link, nav#main-menu li.menu-item li.menu-item a:visited {
	width: 25em;
  padding: 0.5em 1em
	}
	
nav#main-menu li.menu-item li.menu-item a:hover, nav#main-menu li.menu-item li.menu-item a:active {
	background: #7413DC;
	color:#fff;
	}

/* Drop-down menu hidden */
nav#main-menu li ul {
	position: absolute;
/*	width: 10em;*/
visibility: hidden;
		display: block;
  
	}


@media (hover: hover) and (pointer: fine) {
	#main-menu li:hover ul {
    visibility: visible;
	}
}
	

#section-menu > menu
{
  display: flex;
  height: 50px;
}

#section-menu li {
  flex: 1;
	display: block;
	background-repeat: no-repeat;
	background-position: 50% 50%;
  /*padding: 5px;*/
  background-origin: content-box;
  background-size: contain;
}

#section-menu a {
	display:block;
	height: 100%;
  font-size: 1px;
	width: 100%;
	color: rgba(0,0,0,0);
}

#squirrels-menu-item {
  background-color: #E22E12;
  background-image: url(images/squirrels.png);
  background-size: contain;
}
#beavers-menu-item {
  background-color: #0095C8;
  background-image: url(images/beavers.png);
}
#cubs-menu-item {
  background-color: #84A40B;
  background-image: url(images/cubs.png);
}
#scouts-menu-item {
  background-color: #004851;
  background-image: url(images/scouts.png);
}
#explorers-menu-item {
  background-color: #00263E;
  background-image: url(images/explorers.png);
}
#network-menu-item {
  background-color: rgb(0,0,0);
  background-image: url(images/network.png);
}

#active-support-menu-item a, #contact-menu-item a, #scout-shop-menu-item a {
	text-indent: 0px;
}

/* Text*/

h1 {
	font:2.2em 'Nunito Sans', sans-serif;
	color: #7413DC;
	font-weight:bold;
	letter-spacing:-0.05em;
	border-bottom:0px solid #ddd;
	border-top:0px solid #ddd;
	padding:5px 0px;
}

h2 {
	font: 1.7em 'Nunito Sans', sans-serif;
	margin-bottom: 3px;
	color: #707070;
	font-weight: bold;
	}

@media (prefers-color-scheme: dark) {
  h2,h3,h4 {
    color: #D3D3D3;
  }
}

@media (prefers-color-scheme: light) {
  h2,h3,h4 {
	color: #707070;
  }
}


h3 {
	font: 1.4em 'Nunito Sans', sans-serif;
	margin-bottom: 3px;
	font-weight: bold;
	}

h4 {
	font: 1.4em 'Nunito Sans', sans-serif;
	margin-bottom: 3px;
	font-weight: bold;
	}

h3.cat_title, h3.cat_title a {
	letter-spacing:-0.05em;
	font-size:0.85em;
	}

h3#respond {
	margin-top:0px;
	padding-top:20px;
	}

h3#comments {
	margin-top:32px;
	padding-left:0px;
	}

h3.authors {
	margin-top:15px;
	}

/* Index Page*/

#logo {
	width:150px;
	}

#tagline {
	margin-top:5px;
	font-size:1em;
	color:#333;
	}

#top {
	padding:0;
	}

#headline {
	width:590px;
	float:left;
	background:#fff;
	padding:10px;
	font-size:1.05em;
	line-height:1.5em;
	margin:0;
	}

#headline  div.title {
	font-weight:bold;
	font:2.4em Verdana;
	letter-spacing:-0.05em;
	display:block;
	padding-bottom:5px;
	}

#headline div.meta {
	display:block;
	margin-top:-5px;
	padding-bottom:2px;
	}

#headline p {
	padding-bottom:15px;
	}

#featured {
	background:#fff;
	float:right;
	padding:10px 10px 9px 10px;
	}

#featured .clearfloat {
	margin-top:7px;
	margin-bottom:8px;
	width:160px;
	}

#featured .info {
	margin-top:5px;
	padding-top:5px;
	float:left;
	width:160px;
	}

.info2 {
	margin-top:5px;
	padding-top:5px;
	float:left;
	width:230px;
	}

.meta2 {
	width:230px;
	}

#featured .title {
	font-weight:bold;
	width:160px;
	}

#headline a img, #featured a img {
	border:0px solid #ccc;
	margin-top:0px;
	margin-right:10px;
	padding:2px;
	}


#middle {
	width: 920px;
	background:#fff;
	float:right;
	padding:10px;
	margin:10px 0;
	}

.category {
	width:164px;
	float:left;
	border-top:8px solid #ff;
	margin:0px;
	padding:5px 10px 10px 10px;
	background:#fff;
	}

.category p {
	margin:0;
	}

#cat-1, #cat-3, #cat-5  {border-top:8px solid #333333;}
#cat-2, #cat-4 {border-top:8px solid #3c78a7;}

.category span.cat_title, #front-popular h3, #front-list .cat_title, #archive .cat_title {
	text-transform:none;
	margin:0;
	font-weight:bold;
	font-size:1.4em;
	letter-spacing:-0.05em;
	}

#front-popular h3 {
	color:#fff;
	background: rgb(77,33,119);
	padding: 0px 10px;
	}

#front-popular #recent_comments2 h3 {
	color:rgb(77,33,119);
	background: rgb(77,33,119);
	padding: 0px 10px;
	}

.category a {
	color:#333;
	display:block;
	background:none;
	}

.category a:hover {
	background:none;
	color:#fff;
	text-decoration:none;
	}

#cat-1:hover, #cat-3:hover, #cat-5:hover {background:#333333; color:#fff; }
#cat-2:hover, #cat-4:hover {background:#3c78a7; color:#fff; }
#cat-1:hover a, #cat-3:hover a, #cat-5:hover a {background:#333333; color:#fff; }
#cat-2:hover a, #cat-4:hover a {background:#3c78a7; color:#fff; }

#bottom {
	width: 960px;
	}

#front-list {
	width:590px;
	background:#fff;
	padding:10px;
	font-size:1.05em;
	line-height:1.75em;
	float:left;
	}

#archive {
	padding-top:15px;
	font-size:1.05em;
	line-height:1.75em;
	}

#front-list blockquote {
	padding: 0px 10px 0 10px;
	}

#front-list .title, #archive .title {
	font-weight:bold;
	font:1.8em Verdana;
	letter-spacing:-0.05em;
	}

#front-list .clearfloat, #archive .clearfloat {
	padding-bottom:10px;
	border-bottom:1px dotted #ccc;
	margin-bottom:10px;
	}

#front-list .spoiler, #archive .spoiler {
	display:block;
	margin-top:3px;
	}

#front-list p, #archive p {
	margin:0px;
	padding:0px;
	}

.author {
	font-size:0.8em;
	font-weight:bold;
	}

.meta {
	font-size:0.8em;
	color:#333;
	}

.meta a {
	color:#333;
	}

#headline p, #featured p {
	margin:0;
	}


/* Content Page*/

#content {
	padding:10px;
	}

#content .breadcrumbs, #content .breadcrumbs a {
	font-weight:bold;
	color:#333;
	}

.post ul, .post ol, #front-list ul, #front-list ol {
	margin-bottom:15px;
	}

.post ul li, #front-list ul li {	
	list-style:square;
	margin-left:30px;
	}

.post ol li, #front-list ol li {	
	list-style:decimal;
	margin-left:30px;
	}

.post ol li ul li, #front-list ol li ul li {	
	list-style:square;
	margin-left:20px;
	}

.post img, .post a img, #front-list img, #archive img {
	border:0px solid #ccc;
	margin:0 0px 0px 0;
	padding:2px;
	}

.post .ads {
	margin-top:10px;
	}

.entry {
	margin-top:10px;
	}

#stats {
	margin-top:0px;
	padding:4px 0px;
	text-transform:uppercase;
	font:0.8em Arial;
	display:block;
	}

#stats span {
	padding: 0px 20px 0px 0px;
	}

#stats span a:hover {
	background:none;
	}

#stats span a {
	color:#333;
	}

#stats img, #nav img {
	border:0px;
	margin:0px;
	padding:0px;
	}

#tools {
	width:590px;
	height:25px;
	font-size:0.95em;
	}

#tools a:hover {
	background:none;
	}

.navigation {
	padding:5px 0px;
	text-align:Center;
	}

/* Sidebar*/

#sidebar {
	width:320px;
	float:right;
	margin:0px 0px 0px 0px;
	}

#sidebar h3 {
	font:1.5em Verdana, Arial;
	font-weight:bold;
	background:none;
	color:rgb(0,105,144);
	margin:10px 0px 5px 0px;
	padding:3px 2px;
	}

#sidebar h3 a {
	color:rgb(0,105,144);
	}

#sidebar-top, #sidebar-bottom {
	width:300px;
	float:right;
	padding:10px 10px 10px 10px;
	background:#fff;
	}

#sidebar-bottom, #sidebar-middle {
	margin-top:10px;
	}

#sidebar-middle {
	width:320px;
	float:right;
	}

#sidebar-left {
	width:145px;
	padding:0px 10px 0px 0px;
	float:left;
	background:#fff;
	}

#sidebar-right {
	width:130px;
	padding:0px 0px 0px 20px;
border-left:1px #F2F2F2 solid;
	float:right;
	background:#fff;
	}


#sidebar li {
	list-style:none;
	border-bottom:0px dotted #ccc;
	display:block;
	padding:8px 0px 0px 5px;
	}

#sidebar li li {
	list-style:none;
	border-bottom:0px dotted #ccc;
	display:block;
	padding:8px 0px 0px 10px;
	}

#sidebar li ul li:last-child{
	list-style:none;
	border-bottom:0px dotted #ccc;
	display:block;
	padding:8px 0px 0px 10px;
	}

#sidebar-ads {
	width:300px;
	float:right;
	margin-bottom:10px;
	padding:10px;
	background:#fff;
	}


/* Form Elements */

.field {
	padding: 2px;
	border:1px solid #333;
	background:#fff;
	font-size:1.0em;
	}

/* I don't know why but inputs end up with smaller fonts by default*/
input[type="text"], input[type="email"], input[type="tel"], input[type="date"], input[type="submit"], input[type="search"], textarea, select
{
  font-size: 1em;
}

/* Size text area so it will fit on mobile */
textarea
{
  width: 21em;  
}

input[type="submit"]
{
  padding: 0em 1em;
  background:    linear-gradient(#00A087, #00A794);
  /*border: 0px;*/
  border-radius: 5px;
  color:         #fff;
  font:          normal 700 24px/50px "Calibri", sans-serif;
  text-align:    center;
}

@media (prefers-color-scheme: dark) {
  input, textarea, select, select.ics-calendar-select {
    background: black;
    color: white;
  }
}

@media (prefers-color-scheme: light) {
  input, textarea, select {
    background: white;
    color: black;
  }
}


/* Search form styling */
#s {
	padding:1px;
	font-size:1.0em;
	width:110px;
	}
	
#searchsubmit {
	margin-left:5px;
	}

/* Comment form, currently unused */
#commentform input {
	width: 140px;
	margin: 5px 5px 1px 0;
	}

#commentform textarea {
	width: 99%;
	margin-top:5px;
	}

/* Comments*/

.commentlist cite {
	font-style:normal;
	margin-bottom:4px;
	display:block;
	}	

.commentlist blockquote {
	background:#ededed;
	}
			
.commentlist li {
	padding: 10px 0px 10px 0px;
	list-style:none;
	margin-bottom:3px;
	}

.commentlist li li {
	background:none;
	border:none;
	list-style:square;
	margin:3px 0 3px 20px;
	padding:3px 0;
	}

.commenttext {
	padding: 10px 10px 0px 10px;
	background:#f2f2f2;
	border-top:1px solid #ddd;
	border-bottom: 1px solid #ddd;
	width:495px;
	float:right
	}
		
.commentlist cite strong {
	font-size:1.1em;
	}
	
li.my_comment {
	background: #FFF;
	border:none;
	}

li.my_comment cite strong {
	font-size: 1.3em;
	color:#313228;
	}
	
#commentform small {
	background:#FFF;
	font-weight:bold;
	padding:0;
	}
	
.commentmetadata {
	color:#4d4d4d;
	display: block;
	margin-top:3px;
	text-align:right;
	font-size:0.9em;
	}

.commentmetadata a, .commentmetadata a:visited {
	color:#959382;
	}
	
.commentlist small {
	background:#e9e9e9;
	}

.avatar {
	border:1px solid #bbb;
	margin:0px 10px 0px 0px;
	float:left;
	padding:2px;
	width:55px;
	height:55px;
	}	

#comment {
	width:590px;
	background:#fff;
	}

/* Footer */

#footer {
	font-size:0.8em;
	padding-top:0px;
	padding-bottom:10px;
	color:#333;
	text-align:left;
	}

#footerall {
	width: 100%;
	padding-left:10px;
	padding-right:10px;
	padding-top:0px;
	background: #7413DC;
  display: flex;
  justify-content: flex-end;
	}

#footerall a, #copyright a {
	font-weight:normal;
	color:#fff;
	}

#footerall a:hover, #copyright a:hover {
	text-decoration:underline;
	}


#footer1 {
	width:12em;
	padding-right:1em;
	padding-bottom:1em;
	}

#footer2 {
	width:120px;
	padding-right:30px;
	padding-bottom:10px;
	}

#copyright {
	font-size:0.9em;
  margin 1em 0em;
	color:#656565;
	text-align:center;
	}

#copyright a {
	color:#656565;
	}

#copyright a:hover {
	text-decoration:underline;
	}


a.green-button {
display:       inline-block;
width:         209px;
height:        50px;
background:    linear-gradient(#00A087, #00A794);
border-radius: 5px;
color:         #fff;
font:          normal 700 24px/50px "Calibri", sans-serif;
text-align:    center;
text-shadow:   none;
}


/*Contact form 7 show radio buttons virtically rather than horizontally*/
span.wpcf7-list-item { display: block; }

/* Used in forms for aligning labels and fields */
.form-row {
  display: flex;
  justify-content: flex-start;
  padding: .5em;
  flex-wrap: wrap;
  align-items: center;
}
.form-row > label {
  padding: .5em 1em .5em 0;
  flex: 0 0 10em;
}
.form-row > span.wpcf7-form-control-wrap {
  flex: 0 0 25em;
}


/* Table press */
.dataTables_wrapper
{
  width: 100%;
  overflow: auto;
}

.wp-block-table.sections-table table {
border-collapse: collapse;
margin-left: auto;
margin-right: auto;
width: 20em;
}
.wp-block-table.sections-table td {
vertical-align: top;
padding: 0.5em 0.5em;
text-align: center;
border: 1px solid rgb(77,33,119);
}
@media (min-width: 800px)
{
  div#social-media-panel {
    width: 250px; float: right;
  }
}
@media (max-width: 800px)
{
  div#social-media-panel {
    display: none;
  }
}

@media print {
  #searchform-container, #main-menu, #section-menu, #footerall {
    display: none;
  }
}

