#banner {
  display: none;
}
#site-nav p {
  display: none; 
}
#site-nav .menuhead, #site-nav .menulink, #site-nav .menusibling {
  display: block !important;
}
.sidebar-nav__content .menu  li.menu-item--open::after {
/*.sidebar-nav__content .menu  li.menucrumb::after, .sidebar-nav__content .menu  li.menu-item--active-trail::after {*/
  transform: rotate(90deg);
}
.grid h4::first-letter {
  text-transform: capitalize;
}
/*
.card__image.featurelink {
  width: 100%;
  max-height: 200px;
}
*/
.card__image.featurelink img {
  width: 100%;
  max-height: 200px;
  object-fit: cover;

}
@media (max-width: 37.5rem){
  .card__image.featurelink {
    display: none;
  }
}
@media (min-width: 1280px) {
  .l-content-sidebar__aside .grid .grid__item {
    width: 100%;
  }
}
.social-share-wrapper .social-share a {
  text-decoration: none;
}

/* Flex box stuff etc */
.padded {
  box-sizing: border-box;
  padding: 1rem;
}
h1.padded, h2.padded, h3.padded, h4.padded, p.padded {
  padding: 0.75rem 1rem;
  margin: 0;
}
.padded > .padded {
  margin: 0 -1rem 1rem -1rem;
}
.padded > .padded:first-child,
.padded > .padded + .padded {
  margin: -1rem -1rem 1rem -1rem;
}
.outlined {
  border: 1px solid #ccc;
}
.rounded {
  border-radius: 0.5rem;
}
.shadowed {
  box-shadow: 0.5rem 0.5rem 1rem 0 rgba(0,0,0,0.25);
}
.lighten:hover,
a:hover .lighten,
.lighten-img a:hover img,
a:hover.lighten-img img,
a:hover img.lighten-img {
  opacity: 0.75;
/*	transition: opacity .25s ease-in-out; */
}
.darken {
  opacity: 0.75;
}
.darken:hover, a:hover .darken {
  opacity: 1;
/*	transition: opacity .25s ease-in-out; */
}
.darklinks *:not(.white) {
  color: #000 !important;
}
.fullwidth, .fullwidth * {
  width: 100%;
  height: auto;
  display: block;
  left: 0;
  right:0;
  margin: 0;
}
.flex-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
}
.flex-container.nested {
  margin-bottom: -2rem;
}
.content.flex-container.padded {
  padding-bottom: 0;
}
.flex-column {
  display: flex;
  flex-direction: column;
}
.flex-grow {
  flex-grow: 1;
}
.block-1 {
  width: calc((100% - 22rem) / 12);
  margin-bottom: 2rem;
}
.block-2,
.flex-container.cols-6 > * {
  width: calc((100% - 10rem) / 6);
  margin-bottom: 2rem;
}
.block-3,
.flex-container.cols-4 > * {
  width: calc(25% - 1.5rem);
  margin-bottom: 2rem;
}
.block-4,
.flex-container.cols-3 > * {
  width: calc((100% - 4rem) / 3);
  margin-bottom: 2rem;
}
.block-6,
.flex-container.cols-2 > * {
  width: calc(50% - 1rem);
  margin-bottom: 2rem;
}
.block-8 {
  width: calc((100% - 1rem) / 1.5);
  margin-bottom: 2rem;
}
.block-9 {
  width: calc(75% - 0.5rem);
  margin-bottom: 2rem;
}
.block-10 {
  width: calc((500% - 2rem) / 6);
  margin-bottom: 2rem;
}
.block-12 {
  width: 100%;
  margin-bottom: 2rem;
}
@media screen and (max-width: 999px) {
  .block-l-2,
  .flex-container.cols-l-6 > * {
    width: calc((100% - 10rem) / 6);
  }
  .block-l-3,
  .flex-container.cols-l-4 > * {
    width: calc(25% - 1.5rem);
  }
  .block-l-4,
  .flex-container.cols-l-3 > * {
    width: calc((100% - 4rem) / 3);
  }
  .block-l-6,
  .flex-container.cols-l-2 > * {
    width: calc(50% - 1rem);
  }
  .block-l-8 {
    width: calc((100% - 1rem) / 1.5);
  }
  .block-l-9 {
    width: calc(75% - 0.5rem);
  }
  .block-l-10 {
    width: calc((500% - 2rem) / 6);
  }
  .block-l-12,
  .flex-container.cols-l-1 > * {
    width: 100%;
  }
}
@media screen and (max-width: 799px) {
  .block-m-2,
  .flex-container.cols-m-6 > * {
    width: calc((100% - 10rem) / 6);
  }
  .block-m-3,
  .flex-container.cols-m-4 > * {
    width: calc(25% - 1.5rem);
  }
  .block-m-4,
  .flex-container.cols-m-3 > * {
    width: calc((100% - 4rem) / 3);
  }
  .block-m-6,
  .flex-container.cols-m-2 > * {
    width: calc(50% - 1rem);
  }
  .block-m-8 {
    width: calc((100% - 1rem) / 1.5);
  }
  .block-m-9 {
    width: calc(75% - 0.5rem);
  }
  .block-m-10 {
    width: calc((500% - 2rem) / 6);
  }
  .block-m-12,
  .flex-container.cols-m-1 > * {
    width: 100%;
  }
  .block-m-mb1 {
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 599px) {
  .block-s-2,
  .flex-container.cols-s-6 > * {
    width: calc((100% - 10rem) / 6);
  }
  .block-s-3,
  .flex-container.cols-s-4 > * {
    width: calc(25% - 1.5rem);
  }
  .block-s-4,
  .flex-container.cols-s-3 > * {
    width: calc((100% - 4rem) / 3);
  }
  .block-s-6,
  .flex-container.cols-s-2 > * {
    width: calc(50% - 1rem);
  }
  .block-s-8 {
    width: calc((100% - 1rem) / 1.5);
  }
  .block-s-9 {
    width: calc(75% - 0.5rem);
  }
  .block-s-10 {
    width: calc((500% - 2rem) / 6);
  }
  .block-s-12,
  .flex-container.cols-s-1 > * {
    width: 100%;
  }
}
@media screen and (max-width: 399px) {
  .block-xs-2,
  .flex-container.cols-xs-6 > * {
    width: calc((100% - 10rem) / 6);
  }
  .block-xs-3,
  .flex-container.cols-xs-4 > * {
    width: calc(25% - 1.5rem);
  }
  .block-xs-4,
  .flex-container.cols-xs-3 > * {
    width: calc((100% - 4rem) / 3);
  }
  .block-xs-6,
  .flex-container.cols-xs-2 > * {
    width: calc(50% - 1rem);
  }
  .block-xs-8 {
    width: calc((100% - 1rem) / 1.5);
  }
  .block-xs-9 {
    width: calc(75% - 0.5rem);
  }
  .block-xs-10 {
    width: calc((500% - 2rem) / 6);
  }
  .block-xs-12,
  .flex-container.cols-xs-1 > * {
    width: 100%;
  }
}
.flush > * {
  margin-bottom: 0 !important;
}
.float-left, .imagefloatleft {
  float: left;
  position: relative;
  z-index: 10;
  margin: 0 2rem 1rem 0;
}
.float-right, .imagefloatright {
  float: right;
  position: relative;
/*  z-index: 10; */
  margin: 0 0 1rem 2rem;
}

/* iframes and videos */
.frame-16-9, .video {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  margin-bottom: 1rem;
  height: 0;
  overflow: hidden;
}
.frame-3-2 {
  position: relative;
  width: 100%;
  padding-bottom: 66.67%;
  margin-bottom: 1rem;
  height: 0;
  overflow: hidden;
}
.frame-4-3 {
  position: relative;
  width: 100%;
  padding-bottom: 75%;
  margin-bottom: 1rem;
  height: 0;
  overflow: hidden;
}
.frame-16-9 > iframe,
.frame-16-9 > object,
.frame-16-9 > embed,
.frame-16-9 > div,
.frame-16-9 > video,
.frame-3-2 > iframe,
.frame-3-2 > object,
.frame-3-2 > embed,
.frame-3-2 > div,
.frame-3-2 > video,
.frame-4-3 > iframe,
.frame-4-3 > object,
.frame-4-3 > embed,
.frame-4-3 > div,
.frame-4-3 > video,
.video > iframe,
.video > object,
.video > embed,
.video > div,
.video > video {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.yt-thumb {
  background-position: center;
  background-size: cover;
  cursor: pointer;
}
.yt-button {
  background: url(../img/icon/vp1.svg) no-repeat center;
  background-size: 20% auto;
  cursor: pointer;
}
.yt-button:hover {
  background: url(../img/icon/vp2.svg) no-repeat center;
  background-size: 20% auto;}
/* Swiper */
.swiper-container {
  width: 100%;
  height: auto;
}
#banner img, #banner picture {
  vertical-align: top;
  width: 100%;
  height: auto;
}
.swiper-slide, .swiper-slide img, .swiperslide picture {
  width: 100%;
}
.swiper-pagination-bullets {
  top: 0;
  bottom: auto !important;
}
.swiper-pagination-bullet {
  height: 0.75rem;
  width: 0.75rem;
}
.swiper-button-next, .swiper-button-prev {
  width: 27px;
  height: 20px;
  margin-top: -10px;
  background-size: cover;
}
.swiper-caption {
  box-sizing: border-box;
  padding: 0.5rem 1rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background: rgba(0,0,0,0.50);
  color: #fff;
  width: 100%;
}
/* vtabs to accordion */
.vtabs>h3, h3.vtab {
  font-size: 1.1764705882rem;
  line-height: 1em;
  font-weight: 700;
  margin: 0;
  padding: 0;
}
.vtabs>h3 a, h3.vtab a {
  display: block;
  padding: 1.1764705882rem;
  text-decoration: none;
  color: #000;
  transition: background-color .3s ease;
}
.vtabs>h3 a:hover, h3.vtab a:hover {
  background-color: #252322;
  color: #fff;
}
.vtabs>h3:not(:first-of-type), h3.vtab:not(:first-of-type) {
  border-top: 2px solid #000;
}
.vtabs, #tab-content {
  border-bottom: 2px solid #000;
}
.vtabs>h3 svg, h3.vtab svg {
  float: right;
}
.vtabs>h3 a.open svg, h3.vtab.active svg {
  transform: rotate(45deg);
  transition: all .3s ease;
}
.vtabs h3 a i.fas, h3.vtab a i.fas {
  float: right;
  transform: rotate(0deg);
  transition: all .3s ease;
}
.vtabs h3 a.open i.fas, h3.vtab.active a i.fas {
  transform: rotate(45deg);
  transition: all .3s ease;
}
.vtabs>h3+div, #tab-content>div {
  padding: .5882352941rem 1.1764705882rem;
}
#tab-content>div {
  display: none;
}
#tab-content>div.active {
  display: block;
}
.vtabs + *:not(.vtabs) {
  margin-top: 1.5rem;
}
/* tables */

/* Interim 'ffield' form styling */
.ffield {
  padding: 5px 5px 3px 5px !important;
  background-color: #EEE;
}
.ffield input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']),
.ffield select, .ffield textarea {
  box-sizing: border-box;
  display: block;
  width: 100%;
  font-size: 1rem;
  font-family: Asap, sans-serif;
}
.ffield textarea {
  min-height: 72px;
}
.ffield label + label::before {
  content: " | ";
  color: #999;
}
label em, em.label, .req-field {
  font-weight: 700;
  font-style: normal;
  color: #B82233;
}
@media screen and (min-width: 600px) {
  .ffield span {
    display: block;
    width: 140px;
    padding-right: 10px;
    float: left;
  }
  .ffield input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']),
  .ffield select,
  .ffield span + textarea,
  .ffield span + span {
    box-sizing: border-box;
    display: block;
    width: calc(100% - 150px);
    float: right;
  }
  .ffield::after  {
    content: "";
    display: block;
    clear: both;
  }
  .ffield.ff2 span {
    width: 190px;
  }
  .ffield.ff2 input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']),
  .ffield.ff2 select,
  .ffield.ff2 span + textarea,
  .ffield.ff2 span + span {
    width: calc(100% - 200px);
  }
  .ffield.ff3 span {
    width: 240px;
  }
  .ffield.ff3 input:not([type='checkbox']):not([type='radio']):not([type='button']):not([type='submit']),
  .ffield.ff3 select,
  .ffield.ff3 span + textarea,
  .ffield.ff3 span + span {
    width: calc(100% - 250px);
  }
  .ffield span + span {
    padding-right: 0px;
  }
}
@media screen and (max-width: 599px) {
  .ffield span + span::before {
    content:"\a";
    white-space: pre;
  }
}
/* End 'ffield' formatting' */
/* New 'form-item' formatting */
@media screen {
  .form-item:not(.js-form-item) * {
    box-sizing: border-box;
  }
  .form-item:not(.js-form-item) label, .form-item:not(.js-form-item) input {
    display:inline-block !important;
  }
  /*
  .form-item:not(.js-form-item).required, .form-item:not(.js-form-item).optional {
    position: relative;
  }
  */
  .legend-required, .legend-optional {
    display: block;
    color: #999;
    font-style: italic; 
  }
  .icon-required {
    color: orangered !important;
    font-size: 0.75rem;
  }
  .icon-required::before {
    content: "\f005";
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    font-size: 0.75rem;
  }
  .icon-required svg {
    margin-top: -10px;
  }
  .icon-optional {
    color: darkcyan !important;
    font-size: 0.75rem;
  }
  .icon-optional::before {
    content: "\f005";
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    font-size: 0.75rem;
  }
  .form-item:not(.js-form-item) textarea {
    min-height: 5.75rem;
  }
  .form-item:not(.js-form-item) label + label::before {
    content: "";
    display: inline-block;
    width: 1rem;
  }
  .form-button {
    color: #fff;
    background: #0275d8;
    border: 1px solid #0275d8;
    padding: 0.5rem;
    border-radius: 0.25rem
  }
  .form-button:hover {
    background: #025aa5;
    border: 1px solid #025aa5;
  }
  .form-button:disabled {
    background: #ccc;
  }
  .g-recaptcha {
    margin-bottom: 0.75rem;
  }
}
@media screen and (max-width: 599px) {
  .form-item:not(.js-form-item) {
    display: block;
    margin-bottom: 1rem;
  }
  .form-item:not(.js-form-item) > *:first-child {
    display: block;
    width: auto;
    padding: 5px 10px;
    margin: 0;
    border: 1px solid #ccc;
    border-bottom: none;
    background: #fafafa;
    text-align: left;
  }
  .form-item:not(.js-form-item) > *:last-child {
    display: block;
    width: 100%;
  }
  .form-item:not(.js-form-item) > *:last-child:not(.form-multiple) {
    padding: 0.5rem;
    margin: 0;
    border: 1px solid #ccc;
  }
  .form-item:not(.js-form-item) > .form-multiple > input {
    width: 100%;
    padding: 0.5rem;
    margin: 0;
    border: 1px solid #ccc;
    border-bottom: none !important;
  }
  .form-item:not(.js-form-item) > .form-multiple > input:last-child {
    border-bottom: 1px solid #ccc !important;
  }
  .form-item:not(.js-form-item).required::after, .form-item:not(.js-form-item).optional::after {
    top: 0.5rem;
    right: 0.5rem;
  }
}
@media screen and (min-width: 600px) {
  .form-item:not(.js-form-item) {
    display: flex;
    margin-bottom: 1rem;
  }
  .form-item:not(.js-form-item) > *:first-child {
    width: 30%;
    padding: 0.5rem;
    margin: 0;
    border: 1px solid #ccc;
    border-right: none;
    background: #fafafa;
    text-align: right;
  }
  .form-item:not(.js-form-item) > *:last-child {
    width: 70%;
  }
  .form-item:not(.js-form-item) > *:last-child:not(.form-multiple) {
    padding: 0.5rem;
    margin: 0;
    border: 1px solid #ccc;
  }
  .form-item:not(.js-form-item) > .form-multiple > input {
    width: 100%;
    padding: 0.5rem;
    margin: 0;
    border: 1px solid #ccc;
    border-bottom: none !important;
  }
  .form-item:not(.js-form-item) > .form-multiple > input:last-child {
    border-bottom: 1px solid #ccc !important;
  }
  .form-item:not(.js-form-item).required::after, .form-item:not(.js-form-item).optional::after {
    top: 0.7rem;
    left: 0.5rem;
  }
}
/* End 'form-item' styles */
.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}
.alert-link {
  font-weight: 500;
}
.alert-link:hover {
  text-decoration: underline !important;
}
.alert-success {
  background-color: #f1f9f7;
  border-color: #e0f1e9;
  color: #1d9d74;
}
.alert-success .alert-link {
  color: #0b2e13 !important;
}
.alert-error {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}
.alert-error .alert-link {
  color: #491217 !important;
}
.alert-warning {
  color: #8a6d3b;
  background-color: #faf2cc;
  border-color: #faf2cc;
}
.alert-warning .alert-link {
  color: #66512c !important;
}
.alert-info {
  background-color: #d9edf7;
  border-color: #bcdff1;
  color: #31708f;
}
.alert-info .alert-link {
  color: #245269 !important;
}
/* mimic d7 tabs */
#tabs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    background: rgba(255,255,255,0.3);
  
  background: #cccccc;
  
}
#tabs {
    -webkit-clip-path: polygon(0 0,calc(100% - 60px) 0,100% 100%,0% 100%);
    clip-path: polygon(0 0,calc(100% - 60px) 0,100% 100%,0% 100%);
    padding-right: 40px;
}
#tabs li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
#tabs li a {
    color: #fff;
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: .8823529412rem;
    line-height: 1em;
    padding: 1.2941176471rem 2.3529411765rem;
    position: relative;
    text-align: center;
    -webkit-transition: none;
    transition: none;
}
#tabs li.active a {
    color: #000;
    font-weight: 700;
    pointer-events: none;
    text-decoration: none;
}
#tabs li.active a::before {
    background: #fff;
    content: '';
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    left: 2px;
    top: 2px;
    z-index: -1;
}
#tabs li.active a::before {
    -webkit-clip-path: polygon(0 0,calc(100% - 70px) 0,calc(100% - 10px) 100%,0% 100%);
    clip-path: polygon(0 0,calc(100% - 63px) 0,calc(100% - 3px) 100%,0% 100%);
    width: calc(100% + 40px);
}
#tabs li+li {
    border-left: solid 2px #fff;
}
#tabs li.active+li,
#tabs li+li.active {
    border-left: none;
}
#htab_wrapper {
  display: none;
}
@media (min-width: 80rem) {
  #htab_wrapper {
    display: block;
    height: 60px;
    border-bottom: 2px solid #CCCCCC;
    margin-bottom: 40px;
  }
  #htab_wrapper .htab_inner_wrapper {
    position: absolute;
  }
  #tab-content:not(.vtabsonly) h3.vtab {
    display: none;
  }
}
/* images for news */
.inline {
  display: block;
  padding: 1rem;
  border: 1px solid #ccc;
}
.inline.inline-right {
  float: right;
  margin: 0 0 1rem 2rem;
}
.inline.inline-left {
  float: left;
  margin: 0 2rem 1rem 0;
}
.inline * {
  display: block;
}
.inline .caption {
  padding-top: 0.5rem;
}
/* end */
/* polaroids */
@media screen and (min-width: 800px) {
	.polaroid + ul > li::before  {
		position: relative !important;
		left: -0.5rem !important;
	}
}
@media screen and (max-width: 799px) {
	div.polaroid img {
		width: calc((100% - 4rem) / 3);
		max-width: 192px;
		min-width: 128px;
		height: auto;
		float: right;
		margin: 0 0 1rem 2rem;
	}
}
@media screen and (min-width: 800px) {
	div.polaroid {
		width: 192px;
		height: 248px;
		background: #eee;
		padding: 8px;
		box-shadow: 4px 4px 8px #999;
		margin: 6px 24px 12px 0;
		float: left;
		text-align: center;
		color: #006;
		line-height: 1.5rem;
		font-size: 1.125rem;
		-webkit-transform: rotate(-2deg);
		-moz-transform: rotate(-2deg);
		-o-transform: rotate(-2deg);
		-ms-transform: rotate(-2deg);
		transform: rotate(-2deg);
	}
	div.polaroid img {
		width: 192px;
		height: 200px;
	}
	div.polaroid:nth-of-type(even),div.polaroid.right {
		float: right;
		margin: 6px 0 12px 24px;
		-webkit-transform: rotate(2deg);
		-moz-transform: rotate(2deg);
		-o-transform: rotate(2deg);
		-ms-transform: rotate(2deg);
		transform: rotate(2deg);
	}
}
/* Events calendar */
.event-calendar {
  padding: 0 !important;
}
.event-calendar th, .event-calendar td {
  padding: 8px 0 8px 12px !important;
}
.event-calendar h3 {
  text-align: center;
  padding: 12px !important;
  margin: 0 !important;
  color: #fff;
  background-color: #41454F;
}
.event-calendar h3 a {
  color: #fff;
  text-decoration: none;
}
.event-calendar h3 a:hover {
  text-decoration: underline;
}
.event-calendar .prev {
  float: left;
}
.event-calendar .next {
  float: right;
}
