html {scroll-padding-top: 285px;}
@media (max-width: 849px) {
	html {scroll-padding-top: 220px;}
}

body {padding:0 40px 30px; margin:0 auto; min-width:375px; background-color:#ffffff; max-width:1200px; }

#page {margin:0; background-color:#ffffff;}

#EntryPage #content-area {
	margin:0 auto;
}
#EntryPage #content {
	background-color:#ffffff;
	border:1px solid #D70601;
	padding:20px;
	margin:50px 150px;
}

/**
 * Clearing
 */
 div.clear {
	clear:both;
	text-align:center;
}


/**
 * Header
 */
#header {
	padding:30px 0;
	position: sticky;
	top:0;
	background-color: #ffffff;
	z-index:100;
}
#header .wrapper {
	position:relative;
}
#header .logo-search-secondaryLinks {
	display:flex;
	flex-wrap: none;
	gap:20px;
}
@media (max-width: 1099px) {
	#header .logo-search-secondaryLinks {
		flex-wrap: wrap;
	}
}

/**
 * Menu hamburger
 */
#header .menu-icon {
	font-size: 40px;
	display:none;
	color:#708090;
}
#header .menu-icon:hover {
	color:#d80000;
}
@media (max-width: 1199px) {
	#header .menu-icon {
		display:flex;
		flex:0 0 auto;
		margin-top:-4px;
	}
}

/**
 * Logo
 */
#header .home-link {
	display: flex;
	flex:0 0 auto;
}
#header .logo {
	background: url("../images/logo.svg") no-repeat;
	height:80px;
	min-width:150px;
}

/* Site wide Search */
#header .searchFormWrapper {
	margin-top:0;
}
#header .searchFormWrapper form {
	margin:0 auto;
	max-width:450px;
}
@media (max-width: 1099px) {
	#header .searchFormWrapper {
		display:none;
		order:1;
	}
}

/* Search fields */
.searchFormWrapper {
	flex:1 1 450px;
	text-align: center;
}
.searchFormWrapper form {
	box-shadow: #aaa 2px 3px 5px;
	margin-bottom:20px;
	min-width:280px;
}
	
.searchFormWrapper form fieldset {
	width:calc(100% - 58px);
	float:left;
}
.searchFormWrapper form .Actions {
	float:left;
	margin-left:0;
}
.searchFormWrapper form .middleColumn input {
	width:100%;
	border:1px #cccccc solid;
}
.searchFormWrapper form fieldset>div {
	margin:0;
}
.searchFormWrapper form fieldset>div input {
	border-right:none;
	height:33px;
	padding:6px 15px;
}
.searchFormWrapper form input[type="submit"] {
	width: 60px;
	background: url(../images/magnify.svg) no-repeat 50% 50%;
    text-indent: -999px;
    border: navajowhite;
    width: 58px;
    height: 47px;
    display: inline-block;
	border-radius: 0;
	font:inherit;
	padding:0;
	color:#000;
	text-transform: none;
	margin:0;
}

.searchFormWrapper .btn-toolbar {
	background-color: #FFAC00;
}
.searchFormWrapper form .action:hover {
	filter: hue-rotate(87deg);
}

/**
 * Secondary links
 */
.secondary-links {
	text-transform: uppercase;
	margin:0 0 20px 20px;
	flex: 1 0 475px;
	text-align:right;
 }
.secondary-links .link {
	padding:5px;
	color:#708090;
	display: inline-block;
	font-weight: 700;
}
.secondary-links .link:hover {
	color:#d80000;
}
.secondary-links .about {
	padding-left:30px;
	background: url("../images/about.svg") no-repeat 0 50%;
}
.secondary-links .new {
	padding-left:30px;
	background: url("../images/new.svg") no-repeat 0 50%;
}
.secondary-links .register {
	padding-left:30px;
	background: url("../images/register.svg") no-repeat 0 50%;
}
.secondary-links .search {
	display:none;
	padding-left:30px;
	background: url("../images/search.svg") no-repeat 0 50%;
}
.secondary-links .jme-journal-access {
	padding-left:30px;
	background: url("../images/journal.svg") no-repeat 0 50%;
}
@media (min-width: 1200px) {
	.secondary-links .jme-journal-access {
		background: none;
		color:#ffffff;
		background-color: #98009B;
		border-radius: 10px;
		padding:15px;
	}
}
@media (max-width: 1099px) {
	.secondary-links {
		text-align: center;
		margin-left:0;
		flex: 1 1 340px;
	}
	.secondary-links .search {
		display:inline;
	}
}
@media (max-width: 649px) {
	.secondary-links {
		text-align: right;
		flex: 1 1 100px;
	}
	.secondary-links .link {
		display: inline-block;
		background-size: 100%;
		padding: 16px 16px;
	}
	.secondary-links .link .title {
		display:none;
	}
}

/**
 * Workrooms bar
 */
.workrooms-bar { 
	column-gap: 20px;
	row-gap: 20px;
	margin: 20px 0 0;
	clear:both;
}
.workrooms-bar a {
	color:#ffffff;
	padding:25px 15px;
	border-radius: 10px;
	text-transform: uppercase;
	font-weight: 700;
}
@media (min-width: 1200px) {
	.workrooms-bar { 
		display:grid;
		grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	}
}
@media (max-width: 1199px) {
	.workrooms-bar { 
		display:flex;
	}
	.workrooms-bar a { 
		flex:1 1 auto;
		text-align: center;
	}
}
@media (max-width: 860px) {
	.workrooms-bar { 
		display:none
	}
}

/**
 * Navigation
 */
#navigation {
	width: 280px;
	z-index:200;
	background-color: #fff;
	float:left;
	margin-bottom:20px;
}
@media (max-width: 1199px) {
	#navigation {
		box-shadow: #595959 2px 2px 2px;
		padding:10px;
	}
	#navigation .menu-icon {
	  color: white;
	  font-size: 30px;
	  line-height: 1em;

	  position: absolute;
	  left: 100%;
	  padding: 10px;
	  margin-left:4px;

	  -webkit-transition: all .15s ease-in-out;
	  -moz-transition: all .15s ease-in-out;
	  -ms-transition: all .15s ease-in-out;
	  -o-transition: all .15s ease-in-out;
	  transition: all .15s ease-in-out;
	}

	#navigation .menu-icon.active {
	  background-color:#ffffff;
	}
	#navigation .menu-icon:hover {
	  color: #9c0000;
	}

	#navigation .nice-wrapper{
		height: 100vh;
	}

	#navigation.active {
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
		transform: translateX(0);
	}
	
	#navigation {
		position: fixed;
		top: 0; left: 0; bottom: 0;
		height: 100%;
		-webkit-transform: translateX(calc(-100% - 2px));
		-moz-transform: translateX(calc(-100% - 2px));
		-ms-transform: translateX(calc(-100% - 2px));
		-o-transform: translateX(calc(-100% - 2px));
		transform: translateX(calc(-100% - 2px));
	}
}
@media (min-width: 1200px) {
	#navigation .menu-icon {
		display:none;
	}
	#navigation .home.leaf {
		display:none;
	}
	#main {
		margin-left:320px;
	}
}

#navigation ul {margin: 0; padding: 0; list-style-type: none; font-size: 1em; letter-spacing:0.1em; }
#navigation li {font-size: 13px; line-height:23px; display:block;}
#navigation a {display: block;}
#navigation a:link, #navigation a:visited {text-decoration: none; color:#212121;}
#navigation a:hover{background-color:#9c0000; color:#ffffff;}				
#navigation li a{padding:10px;}
#navigation li.current a{}
#navigation li.current li a{}
#navigation li.current li a:hover{background-color:#9c0000; color:#ffffff;}

#navigation ul ul {display:none; }
#navigation ul ul ul {}
#navigation ul li ul,#navigation ul li.section ul  {display:block; }
#navigation ul li ul a { font-size:85%}
#navigation ul ul li a:hover{}
#navigation ul li ul ul a {font-size:85%}

#navigation li.level1 > a {
	border-bottom:3px #cccccc solid;
}
#navigation li.level2 {
	border-bottom:3px #cccccc solid;
}

#navigation .level1 > a {
	text-transform: uppercase;
	font-size: 24px;
    font-weight: 700;
    margin-top:10px;
    display: block;
	margin:0 auto;
	font-family: "Montserrat", sans-serif;
	color:#d00000;
}

#navigation .level1 {
	margin-bottom:3px;
}

#navigation .level2 > a {
	text-transform: uppercase;
	font-size: 16px;
    font-weight: 700;
    display: block;
	margin:0 auto;
	font-family: "Montserrat", sans-serif;
}
#navigation .level2.current, #navigation .level2.section {
	padding-bottom:10px
}

#navigation .level3 {
	list-style:disc;
	margin-left:25px;
	display: list-item;
}
#navigation .level3 > a {
	font-size: 16px;
	margin:0 auto;
	font-family: "Montserrat", sans-serif;
}


div.register-contact, div.register-organisation, div.historic-person {
	margin:0 0 20px 20px;
	
}

#SearchResults div.register-contact, #SearchResults div.register-organisation, #SearchResults div.historic-person, .show div.historic-person {
	margin:0px;
	
}

	div.register-contact .name a, div.register-organisation .title, div.historic-person .title{
		font-weight:bold;
		color:black;
	}

	div.historic-person  {
		margin-bottom:80px;
		position:relative;
	}
	
	div.historic-person .name {
		font-weight:bold;
	}

	div.historic-person .collateral {
		margin-bottom: 10px;
	}

	div.historic-person .collateral li {
		list-style: none;
		margin: 0 0 5px;
	}

	div.historic-person .collateral .attribute-name {
		font-weight:bold;
	}

	div.who-is-who-list {
		overflow:hidden;
	}
	
	div.who-is-who-list li {
		float: left;
		list-style: none outside none;
		margin: 0;
		padding:0;
		width:100%;
	}
	
	div.who-is-who-list li span {
		margin: 1px 10px;
		display:inline-block;
	}
	
	@media (min-width: 500px)  and (max-width: 750px) {
		div.who-is-who-list li {
			width:50%;
		}
		div.who-is-who-list ul li:nth-child(2n+1) {
			clear:left;
		}	
	}
	@media (min-width: 750px)  and (max-width: 1000px) {
		div.who-is-who-list li {
			width:33%;
		}
		div.who-is-who-list ul li:nth-child(3n+1) {
			clear:left;
		}	
	}
	@media (min-width: 1000px)  and (max-width: 1200px) {
		div.who-is-who-list li {
			width:25%;
		}
		div.who-is-who-list ul li:nth-child(4n+1) {
			clear:left;
		}	
	}
	@media (min-width: 1200px) {
		div.who-is-who-list li {
			width:300px;
		}
	}
	
	div.who-is-who-entries {
		clear:left;
		margin-top:30px;
	}
	
	
	div.historic-person div.description ul {
		margin-bottom:17px;
	}
	
	
	div.term-listing {
		overflow:hidden;
		background-color: #EBEDF0;
		border:2px solid #708090;
		margin-bottom:20px;
	}
	
	div.term-listing .group-header {
		font-weight:bold;
		clear:both;
	}

	div.term-listing .group-header {
		background: none repeat scroll 0 0 #B50000;
		text-align: center;
		color: #ffffff;
		font-weight:700;
		display: inline-block;
		padding: 1px 4px;
		min-width: 18px;
	}
	
	div.term-listing ul {
		clear: left;
		overflow: hidden;
		padding: 0 0 25px 0;
		display:grid;
		grid-template-columns: repeat(auto-fit, minmax(300px, 33%));
		row-gap: 2px;
		flex-wrap: wrap;
	}

	div.term-listing li {
		float: left;
		list-style: disc;
		margin: 0 0 0 80px;
		padding: 0;
		width:100%;
	}
	
	div.term-listing li span {
		margin: 0 10px;
		display:inline-block;
		font-weight:600;
	}

	.letter-links {
		overflow:hidden;
		display:grid;
		grid-template-columns: repeat(auto-fit, minmax(25px, 1fr));
		column-gap: 2px;
		row-gap: 2px;
		flex-wrap: wrap;
		margin-bottom:20px;
		background: #fff;
		padding: 10px 0;
	}

	.letter-link {
	  background: none repeat scroll 0 0 #B50000;
	  text-align: center;
	}
	
	.letter-link a{
	  color: #ffffff;
	  font-weight:700;
	  display:block;
	  padding: 2px 0px;
	}

.group-anchor {
	display: block;
    position: relative;
    top: -175px;
    visibility: hidden;
}
@media (max-width: 589px) {
	.group-anchor {
		top: -220px;
	}
}

#SearchResults li{
	padding:20px 0px;
}

	#SearchResults li p{
		margin-bottom:10px;
	}

#cookies {
    background-color: #323232;
    padding: 20px 0px 10px;
    position: fixed;
    width: 100%;
    left: 0px;
    bottom: 0px;
	top:auto;
}


/* Contour links */
.contour-link-category {
  margin: 0 0 20px 20px;
}
.contour-link-category .title {
  font-weight: bold;
  color: black;
}

/* Mobile */
@media (max-width: 400px) {
  .button.inverted {
    padding: 15px;
  }
}

/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) and (max-width: 750px) {
  .work-items li.isotope-item.columns {
    width: 50%;
  }
}


.selector-wrapper {
	position:relative;
	width:100%;
	height:500px;
	margin:40px auto;
}

.selector,
.selector button {
  font-family: 'Oswald', sans-serif;
  font-weight: 300;
}

.selector button {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 10px;
  background: #428bca;
  border-radius: 50%;
  border: 0;
  color: white;
  font-size: 20px;
  cursor: pointer;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
  transition: all .1s;
  z-index:5;
}

.selector button:hover { background: #3071a9; }

.selector button:focus { outline: none; }

.selector {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 140px;
  height: 140px;
  margin-top: -70px;
  margin-left: -70px;
  z-index:10;
}

.selector ul {
  position: absolute;
  list-style: none;
  padding: 0;
  margin: 0;
  top: -20px;
  right: 0;
  bottom: -20px;
  left: 0;
}
.selector ul ul{
  top: -100px;
  bottom: -100px;
  z-index:-10;
}
.selector ul li{
  z-index:-10;
}
.selector li {
  position: absolute;
  width: 0;
  height: 100%;
  margin: 0 50%;
  -webkit-transform: rotate(-360deg);
  /*transition: all 0.8s ease-in-out;*/
}
.selector li li {
  transition: all 0s;
}
.selector li.level1 label{
	visibility:hidden;
}
.selector li.level1 a{
	color:#000f;
	display:inline-block;
	width:150px;
}
.selector li.level1 a:hover{
	color:#000f;
}
.selector li.level0:hover label, .selector li.level0.active label{
	visibility:visible;
}
.selector li.level0.active>label{
	  background: #999;
}
.selector li.level0.active .level1:hover label {
	  background: #ee0601;
}
.selector li input { display: none; }

.selector li input + label {
  position: absolute;
  left: 50%;
  bottom: 100%;
  width: 0;
  height: 0;
  line-height: 1px;
  margin-left: 0;
  background: #ccc;
  border-radius: 50%;
  text-align: center;
  font-size: 1px;
  overflow: hidden;
  cursor: pointer;
  box-shadow: none;
 /* transition: all 0.8s ease-in-out, color 0.1s, background 0.1s;*/
}

.selector li li input + label {
	background: #888;
 }
 
.selector li input:checked + label:hover { background: #ee0601; }

.selector.open li.level0 input + label {
  width: 150px;
  height: 80px;
  line-height: 80px;
  margin-left: -75px;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
  font-size: 14px;
}
.selector .level0.open li.level1 input + label {
  width: 150px;
  height: 80px;
  line-height: 80px;
  margin-left: -40px;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
  font-size: 14px;
}

/* Breadcrumbs */
#Breadcrumbs {
	margin-bottom: 30px;
}


/* Workrooms */
.workroom-group-title {
	font-size: 36px;
	font-family:"Roboto", sans-serif;
	font-weight:900;
	text-transform: uppercase;
	color:#212121;
	margin-bottom:10px;
}
.workrooms {
	overflow:hidden;
	display:grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	column-gap: 35px;
	flex-wrap: wrap;
	border-bottom: 3px solid #cccccc;
	margin-bottom:25px;
}
.workroom-wrapper{
	margin-bottom:35px;
}
.workroom .title {
	margin-top:5px;
	color:#595959;
	font-weight:700;
}
.workroom img {
	width: 100%;
    display: inherit;
	border:none;
	max-width:initial;
}
.workroom:hover .title {
	color:#D80000;
}

/**
 * Banner font sizes
 */
.banner .content {
	padding-top:20px;
}
.banner {
	color:#fff;
}
.banner .title1 {
	font-size: 8cqw;
	color: #fff;
	text-transform: uppercase;
	line-height: 10cqw;
}
.banner p {
	font-size:4cqw;
	line-height: 7cqw;
}

/**
 * Homepage, hide side navigation menu
 */

@media (min-width: 1200px) {
	.HomePage #navigation{
		display:none;
	}
	.HomePage #main {
		margin-left:0;
	}
}

/**
 * HomePage blocks
 */
.HomePage .about-block {
	margin:20px 0;
	background-color: #B50000;
	padding:20px 10%;
	color:#fff;
	text-align: center;
}
.HomePage .about-block h1 {
	color:#fff;
	text-transform: uppercase;
}

.HomePage .blocks {
	display:flex;
	flex-wrap:wrap;
	margin:20px 0;
	gap:20px;
}
.HomePage .block {
	flex: 1 1 300px;
	background-color: #EBEDF0;
	border: 3px solid #708090;
}
.HomePage .block-content {
	padding:20px;
}

.control-toolbar {
	position: sticky;
	top: 225px;
	margin-top:35px;
	background-color: #ffffff;
	padding:20px 0;
}
@media (max-width: 849px) {
	.control-toolbar {
		top: 135px;
	}
}
.search-add {
	display:flex;
	flex-wrap: wrap;
	gap:0 30px;
	margin-bottom: 20px;
}
.search-add .searchFormWrapper, .search-add .add-new{
	flex:1 0 200px;
}
.search-add .add-new button {
	width:100%;
}

/**
 * Add New button
 */
.add-new button {
	background: none;
	color:#0800A7;
	background-color: #FFAC00;
	padding: 10px 20px;
	font-weight: 700;
	display: inline-block;
	width: 100%;
	height: 48px;
	box-shadow: #aaa 2px 3px 5px;
	border:none;
}
.add-new button:hover {
	color:#d00000;
}

/**
 * Modal form
 */
.modal-form {
	/*display:none;*/
}

/**
 * Footer
 */
 #footer {
	background:#340458;
	color:#ffffff;
	padding: 30px;
	margin-top:20px;
	clear:both;
}
#footer a {
	color:#ffffff;
}
#footer a:hover {
	color:#98009B;
}
#footer .columns {
	display:flex;
	column-gap: 40px;
	row-gap: 35px;
	flex-wrap: wrap;
}
#footer .column {
	flex: 1 0 0;
	min-width: 200px;
}
#footer .heading {
	font-weight: 700;
	padding-bottom: 20px;
}
#footer li {
	list-style-type:none;
}
.footer-copyright {
	margin-top:50px;
}
.footer-collateral {
	margin-top:10px;
}
#footer a.collateral-link {
	color:#ffffff;
	text-transform: uppercase;
	font-size:14pt;
	padding-left:10px;
	padding-right:10px;
	border-right:1px solid #ffffff;
}
#footer a.collateral-link:hover {
	color:#98009B;
}
#footer a.collateral-link:first-child {
	padding-left:0;
}
#footer a.collateral-link:last-child {
	border-right:none;
}

/* jQuery Modal */
.blocker {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	z-index: 200;
	padding: 20px;
	box-sizing: border-box;
	background-color: #000;
	background-color: rgba(0, 0, 0, 0.75);
	text-align: center
}

.blocker:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
	margin-right: -0.05em
}

.blocker.behind {
	background-color: transparent
}

.modal {
	display: none;
	vertical-align: middle;
	position: relative;
	z-index: 2;
	max-width: 550px;
	box-sizing: border-box;
	width: 90%;
	background: #EBEDF0;
	padding: 15px 30px;
	-webkit-box-shadow: 0 0 10px #000;
	-moz-box-shadow: 0 0 10px #000;
	-o-box-shadow: 0 0 10px #000;
	-ms-box-shadow: 0 0 10px #000;
	box-shadow: 0 0 10px #000;
	text-align: left;
	padding:70px;
}
.modal .title {
    text-transform: uppercase;
    font-size: 36px;
    font-weight: 700;
	margin-bottom:20px;
	line-height:36px;
}
.modal form label.left {
	font-weight: 700;
	float:none;
	width:100%;
	font-family: "Roboto", sans-serif;
	font-size:16px;
	margin-bottom:5px;
}
.modal form input.text, .modal form textarea {
	border:1px #cccccc solid;
	padding:6px;
	width: calc(100% - 15px);
	font-family: "Roboto", sans-serif;
	font-size:14px;
}
.modal form input.text:focus-visible, .modal form textarea:focus-visible {
	outline: none;
	border:1px #d00000 solid;
}
.modal input[type="submit"] {
	margin:0 auto;
}
.modal .close-modal {
	display: none;
}
.modal label:has(+ .middleColumn input:required):after, .modal label:has(+ .middleColumn select:required):after, .modal label:has(+ .middleColumn textarea:required):after  {
	content: ' *';
	color: #d00000;
}
.modal .btn-toolbar {
	margin-top:20px;
}

/**
 * Forms
 */
.required-fields-key {
	color: #d00000;
	text-align:right;
	font-style: italic;
	font-family: "Roboto", sans-serif;
	font-size:14px;
}
input[type="submit"] {
	background: none;
    color: #ffffff;
    background-color: #98009B;
    border-radius: 10px;
    padding: 12px 50px;
	font-size: 20px;
    font-weight: 700;
    display: block;
	border:none;
	text-transform: uppercase;
	font-family: "Montserrat", sans-serif;
	margin-left:160px;
	text-wrap:wrap;
}
input[type="submit"]:hover {
	color:#d00000;
}

/**
 * Message colours
 */
.message {
	border: 1px solid;
}
.message.good {
    color:#3E933A;
    background:#E2F7D8;
    border-color:#9FDE9C;
	padding:10px
}
.message.warn {
    color:#CCBD00;
    background:#FFF8D7;
    border-color:#F1E988;
	padding:10px
}
.message.bad {
    color: #DA1D1D;
    background: #FFDFDF;
    border-color: #FFBBBB;
	padding:10px
}

/**
 * Logout link
 */
.logoutLink {
	margin-top: 20px;
}

/**
 * Session message
 */
#SessionMessage {
	margin-bottom:25px;
}