/* Local CSS overrides for just this site */

#schoolSubTitle {
	line-height:normal; 
	padding-bottom:18px; 
	margin-top:-6px; 
	font-weight:300; 
	font-size:1.4em;
}
#schoolSubTitle a[href] {
    color: #fff!important;
	text-decoration:none!important;
	border-bottom: 0px none;
	outline:none;
	padding-top:11px;
	padding-bottom:11px;
}
#schoolSubTitle a[href]:hover {
    color: #fff!important;
	text-decoration:underline!important;
	text-decoration-color:#cea600!important;
}

#secMenuWrapper {
	margin:0px;
	padding:0px;
	border:#ccc 1px solid;
	border-bottom:0px;
	border-top:0px;	
}
@media (min-width: 850px) {
	#secMenuWrapper {
		border:none;
	}
}

.latex{display:none;}
.latexthrobber{width:-webkit-fill-available;
	text-align:center; margin:1em;}

a[href] {
	outline:none;
}

#main h1 {padding-bottom:10px}

.searchboxWrapper {
	margin-top:1em; 
	border:0px;
	width: -webkit-fill-available;
}
.searchbox {
	line-height:1em;
	background-color:#eee; 
	background-image:url(/images/search-icon_grey.png); 
	background-repeat:no-repeat; background-size:26px;
	background-position:6px 6px; 
	padding:8px;  
	height:22px;
	padding-left:36px; 
	width: -webkit-fill-available;
	margin-top:20px;
}
@media (min-width: 566px) {
	.searchboxWrapper {
/*		float:right; */
/*		max-width:280px; */
		max-width:60%;
		padding-top:0px;
/*		margin-left:20px; */
	}
	.searchbox {
		margin-top:0px;
	}
}


.abstract h2 {
	margin-top:20px; 
	margin-bottom:20px; 
	font-size:1.6em;
}
.abstract a, .abstract a:hover, a.abstract:visited {
	color: #3D5F5B;
}
.abstract a:hover {
	text-decoration-color:#cea600;
}

.favNote {
	margin-top:0px;
	margin-bottom:20px;
	float:none;
	margin-left:0px!important;
	border:1px solid #ccc; 
	padding:10px;
}
.favNote {
	float:none;
	font-style:italic;
	font-size:smaller;
}
.favNote .icon24 {
	width:16px; 
	height:16px;
}

.sidenote {
	margin-top:1em;
	margin-bottom:1em;
	margin-left:20px; 
	padding:1em;
	padding-left:20px; 
	border-left: 4px solid #cea600;
}
.sidenote h3 {
	margin-top:0px;	
}
.sidenote ul {
	margin-bottom:0px;	
}

.fitoverflow {
	overflow:hidden;white-space:nowrap;text-overflow:ellipsis;	
}

div.flexslider ul.slides li img {border: 1px solid #ddd}
.flex-caption {
	padding: 4px 8px 4px;
	position: absolute;
	margin-bottom: 0;
	background: rgba(13,50,115,0.75);
	color: #fff;
	font-size: calc(10px + 1.3vw);
	font-weight: 300;
	letter-spacing: normal; /*-2px*/;
}

@media (min-width: 566px) {
	.flex-caption {
		left: 5px; bottom: 5px;
		padding: 7px 14px 7px;
	}
}
	
@media (min-width:960px) {
	.flex-caption {
		left: 10px;	bottom: 10px;
		padding: 10px 20px 10px;
	}
}

.doiword {background-color:#fff; color:#444; border:1px solid #0D3273; padding-bottom:1px!important;}
.doiword:hover {background-color:#0c746a; color:#fff}
.doiref {
	border-radius:4px; 
	border: solid 1px #444; 
	display:inline; 
	background-color:#fff; 
	color:#444; 
	font-size:14px; 
	padding:1px; 
	padding-left:4px; 
	padding-right:4px; 
	padding-bottom: 1px!important;	
	margin:0px;"
}
.doiref:hover {
	background-color:#cea600;
	color:#fff!important; 
	border: solid 1px #cea600; 
}

#findanexpertbutton {
	font-size:0.8rem;
	margin-top: 1rem;
	cursor:pointer;
	color: #fff;
	border: 1px #fff solid;
	border-radius: 8px;
	padding-top: 0px;
	padding-left: 8px;
	padding-right: 8px;
	margin-left: 10px;	
	user-select:none;
}

#findanexpertbutton:hover {
	background-color:#cea600;
	color:#fff!important; 
	border: solid 1px #cea600; 	
}
@media (min-width: 768px) {
	#findanexpertbutton {
		font-size:1rem;
	}	
}

.profilepiccontainer {
	text-align:center;
	margin:0px;	
}
@media only screen and (min-width:566px) {
	.profilepiccontainer {
    	float: right;
		aspect-ratio: 1;
		margin-left:10px;
	}
}
.profileimage {
	object-fit: cover;	
	aspect-ratio: 1; 
	padding:10px;
	background-color:#fff;
	border: 1px solid #eee;	
}
.height200 {
	height: 200px;
}
.height180 {
	height: 180px;
}
.width200 {
	width: 200px;
}
.width180 {
	width: 180px;
}
.circular {
	border-radius:50%
}

.aspectInherit {
	aspect-ratio:inherit;
}

.grayscale {filter: grayscale(100%);}

.goldlinehover:hover {
	border-color: #cea600!important;
}
.goldhover:hover {
	background-color: #cea600!important;
}
.blacklinehover:hover {
	border-color: #444!important;
}
.blackhover:hover {
	background-color: #444!important;
}
.scale98hover:hover {
	transform: scale(0.98); 
}
.scale110hover:hover {
	transform: scale(1.10);
}


/*----------------------------------------------*/
/* UL CARDS                                     */
/*----------------------------------------------*/

ul.cards4, ul.cards3, ul.cards2 {
	display:grid;
	gap:20px;
	grid-template-columns: repeat(1, 1fr);
	padding:0px;
	padding:0px;
	padding-top:20px;
}
@media (min-width:320px) {
	ul.cards4 {	
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width:560px) {
	ul.cards4 {	
		gap:30px;	
		grid-template-columns: repeat(3, 1fr);
	}
	ul.cards3 {	
		gap:30px;
		grid-template-columns: repeat(2, 1fr);
	}
	ul.cards2 {	
		gap:30px;		
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width:1024px) {
	ul.cards4 {	
		gap:40px;	
		grid-template-columns: repeat(4, 1fr);
	}
	ul.cards3 {	
		gap:40px;		
		grid-template-columns: repeat(3, 1fr);
	}
	ul.cards2 {	
		gap:40px;		
		grid-template-columns: repeat(2, 1fr);
	}
}
#main ul.cards4 li:before, ul.cards4 li:before,
#main ul.cards3 li:before, ul.cards3 li:before,
#main ul.cards2 li:before, ul.cards2 li:before {
	border-radius: inherit;
	display: block;
	font-size: inherit;
	height: 0px;
	width: 0px;
	left: 0px;
	line-height: inherit;
	position: inherit;
	top: inherit;
}
#main ul.cards4 li, ul.cards4 li,
#main ul.cards3 li, ul.cards3 li,
#main ul.cards2 li, ul.cards2 li {
	border: 0px;
	padding:0px;
	margin:0px;
	background-color:#0d3273;
	color:#fff;
	padding-bottom:0px;
	overflow: hidden;
	border: 1px solid #ccc;
}
#main ul.cards4 li:hover, ul.cards4 li:hover,
#main ul.cards3 li:hover, ul.cards3 li:hover,
#main ul.cards2 li:hover, ul.cards2 li:hover{
	background-color:#0c746a;
	cursor:pointer;
}
#main ul.cards4 li a, ul.cards4 li a,
#main ul.cards3 li a, ul.cards3 li a,
#main ul.cards2 li a, ul.cards2 li a {
	text-decoration:none;
	color:#fff;
	outline: none;
}
#main ul.cards4 li img, ul.cards4 li img,
#main ul.cards3 li img, ul.cards3 li img,
#main ul.cards2 li img, ul.cards2 li img {
	width: 100%!important;
	height:auto!important;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}
#main ul.cards4 li p, ul.cards4 li p,
#main ul.cards3 li p, ul.cards3 li p,
#main ul.cards2 li p, ul.cards2 li p {
	padding:20px; 
	padding-top:0px;
	padding-bottom:20px;
	margin-bottom:0px;
	font-weight:300;
	margin-top:10px;
}
#main ul.cards4 li p:first-of-type, ul.cards4 li p:first-of-type,
#main ul.cards3 li p:first-of-type, ul.cards3 li p:first-of-type,
#main ul.cards2 li p:first-of-type, ul.cards2 li p:first-of-type {
	font-size:1.6em;
	line-height:1.25;
	padding-top:0px;
	padding-bottom:10px;
	margin-top:0px;
	font-weight:300;
}
@media (min-width:560px) {
	#main ul.cards4 li, ul.cards4 li,
	#main ul.cards3 li, ul.cards3 li,
	#main ul.cards2 li, ul.cards2 li {
		margin-bottom:0px;
		padding-bottom:10px;
	}
	#main ul.cards4 li p:first-of-type, ul.cards4 li p:first-of-type,
	#main ul.cards3 li p:first-of-type, ul.cards3 li p:first-of-type,
	#main ul.cards2 li p:first-of-type, ul.cards2 li p:first-of-type {
		padding-bottom:0px;
		margin-bottom:0px;
		line-height:1.5;
	}
	#main ul.cards4 li p, ul.cards3 li p,
	#main ul.cards3 li p, ul.cards3 li p,
	#main ul.cards2 li p, ul.cards2 li p {
		padding:20px;
		padding-top:0px;
		padding-bottom:10px;
	}
	#main ul.cards2 li {
		min-height:6em;
	}
}
/*----------------------------------------------*/


div.twocolumns div.polaroid-w {
	padding:10px; margin:0px; padding-bottom:8px
}
	
.top-crop {object-fit: cover; object-position:top;}

.centretag {
	border-radius:4px; 
	border: solid 1px #444; 
	display:inline-block; 
	background-color:#fff; 
	color:#444; 
	padding:2px; 
	padding-left:4px; 
	padding-right:4px; 
	margin:0px;
	text-decoration:none!important;
	outline:none;
	font-size:0.9em;
	margin-right:8px;
	margin-bottom:8px;	
	line-height:22px;
}
.centretag:hover {
	background-color:#cea600;
	color:#fff!important; 
	border: solid 1px #cea600; 
}

#q {font-size:initial}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #aaa;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #aaa;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #aaa;
}
:-moz-placeholder { /* Firefox 18- */
  color: #aaa;
}

table.programme {background-color: #CDA70A }
table.programme td {background-color:#fff}
table.programme td.programmehead {background-color:#0D3273; color:#fff}
table.programme td p {margin-top:0px; margin-bottom:0px}
table.programme td ul {margin-top:4px; margin-bottom:0px}

/*----------------------------------------------*/
/* GRIDS 	                                    */
/*----------------------------------------------*/
div.grid2 {
	display:block;
	padding:0px;
	gap:40px;
	padding:0px;
	padding-top:20px;
}
div.grid2 div:empty{
	display:none;
}
div.grid2 div {
	padding-bottom:20px;
}
@media (min-width:850px) {
	div.grid2 {	
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
	div.grid2 div {
		padding-bottom:0px;
	}
}

.share-btn {outline:none!important; padding:12px; padding-left:0px; padding-right:0px;}
.shareButton {outline:none}

table.tablestripe th {
	text-align:left;
	font-weight:bold;
	background-color:#ddd;
}



/*----------------------------------------------*/
/* 2024 WCAG AAA update                         */
/*----------------------------------------------*/
.LandingBox ul li a[href], .schoolSubTitle a[href],
.telephoneicon a[href], .emailicon a[href], .globeicon a[href], .personicon a[href],
li a[href], h3 a[href] {
	padding:12px; padding-left:0px; padding-right:0px;
}
li.social-list__service a[href] {
	padding:0px;
}
.groupicon {
	padding-top:12px; padding-bottom:12px;
	background-position-y:20px;
}
#footerstuff a[href] {
	padding:12px; padding-left:0px;
}
.secondary li {
	padding:0px;
}
.secondary a[href] {
	padding:10px;
}
#main ul.cards4 li a, ul.cards4 li a,
#main ul.cards3 li a, ul.cards3 li a,
#main ul.cards2 li a, ul.cards2 li a {
	padding:12px;
	padding-left:0px;
	padding-right:0px;
}
#login a {
	color:#fff
}
div.networkicon a[href]{
	padding:12px;
	padding-left:2px; 
	padding-right:2px;
}

@media print {
  a[href]:after {
    content: none !important;
  }
  .puc_logo {display:none}
}
