/*20240707 18:00*/
:root {
  --link-blue: #126cb7;
  --dark-grey: #5b5b5b;
  --medium-grey: #767676;
  --light-grey: #a6a6a6;
  --lighter-grey: #cccccc;
  --lightest-grey: #e9eaea;
  --template-bg-dark-7: #e9eaea;
  --body-bg: #fff;
  --mod-green: #4f7b23;
  --mod-red: #c5272e;
  --danger: #c52827;
  --danger-hover: #971f1f;
}
.season2425,
.season2324 {
  --theme-dark: #961a5f;
  --theme-medium: #d45654; /* dark orange; previous: #be4086; tint of maroon */
  --theme-light: #da95bb;
  --theme-contrast: #fddf3c; /*#fbcf3d;*/
  --theme-contrast-dark: #fbcf3d;
  --mod-red: #c5272e;
}
.orange {
  --theme-dark: #7b2f01;
  --theme-medium: #bb5502;
  --theme-medium: #e66902;
  --theme-light: #fbb32a;
  --mod-red: #c52827;
/*  --theme-contrast: #1996fd;
  --theme-contrast-tint: #1996fd;*/
/*  --theme-text: #7b2f01;*/
}
.blue {
  --theme-dark: #04355d;
  --theme-medium: #054a83;
  --theme-medium: #057ddf;
  --theme-light: #8ac6f7;

/*  --theme-contrast: #1996fd;
  --theme-contrast-tint: #1996fd;*/
/*  --theme-text: #7b2f01;*/
}
.green {
  --theme-dark: #175d04;
  --theme-medium: #05833c;
  --theme-medium: #61ae04;
  --theme-light: #b2f661;
  --mod-red: #c5272e;
/*  --theme-contrast: #1996fd;
  --theme-contrast-tint: #1996fd;*/
/*  --theme-text: #7b2f01;*/
}
/* Webfont: LatoLatin-Regular */
@font-face {
    font-family: 'LatoLatinWeb';
    src: url('/templates/sonata/fonts/LatoLatin-Regular.woff') format('woff'), /* Modern Browsers */
         url('/templates/sonata/fonts/LatoLatin-Regular.woff2') format('woff2'), /* Modern Browsers */
         url('/templates/sonata/fonts/LatoLatin-Regular.ttf') format('truetype');
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    text-rendering: optimizeLegibility;
}
/* Webfont: LatoLatin-Bold */
@font-face {
    font-family: 'LatoLatinWeb';
    src: url('/templates/sonata/fonts/LatoLatin-Bold.woff') format('woff'), /* Modern Browsers */
         url('/templates/sonata/fonts/LatoLatin-Bold.woff2') format('woff2'), /* Modern Browsers */
         url('/templates/sonata/fonts/LatoLatin-Bold.ttf') format('truetype');
    font-style: normal;
    font-weight: bold;
    font-display: swap;
    text-rendering: optimizeLegibility;

}
/* Webfont: LatoLatin-BoldItalic */
@font-face {
    font-family: 'LatoLatinWeb';
    src: url('/templates/sonata/fonts/LatoLatin-BoldItalic.woff') format('woff'), /* Modern Browsers */
         url('/templates/sonata/fonts/LatoLatin-BoldItalic.woff2') format('woff2'), /* Modern Browsers */
         url('/templates/sonata/fonts/LatoLatin-BoldItalic.ttf') format('truetype');
    font-style: italic;
    font-weight: bold;
    font-display: swap;
    text-rendering: optimizeLegibility;
}
/* Webfont: LatoLatin-Italic */
@font-face {
    font-family: 'LatoLatinWeb';
    src: url('/templates/sonata/fonts/LatoLatin-Italic.woff') format('woff'), /* Modern Browsers */
         url('/templates/sonata/fonts/LatoLatin-Italic.woff2') format('woff2'), /* Modern Browsers */
         url('/templates/sonata/fonts/LatoLatin-Italic.ttf') format('truetype');
    font-style: italic;
    font-weight: normal;
    font-display: swap;
    text-rendering: optimizeLegibility;
}
/* custom font for a few general icons */
@font-face {
  font-family: "general";
  src: url("/templates/sonata/fonts/general.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
html {
  display: block;
}
body {
  font-family: "LatoLatinWeb";
  background-color: #fff; /*#e3e3e3;*/
  color: var(--dark-grey);
  margin: 0;
  overflow-x:hidden;
  font-weight: normal;
  line-height: 1.5;
}
body.user-is-tabbing button > a:focus {
  border: none;
}
body.user-is-tabbing .logo a:focus,
body.user-is-tabbing .sidenav-logo a:focus
{
  outline-width: medium;
}
body.user-is-tabbing .menu-a .top-level a:focus,
body.user-is-tabbing .footer-bg a:focus {
  outline-color: #fff;
}
body.user-is-tabbing label.finder {
  color: #fff;
}
body:not(.user-is-tabbing) a:focus,
body:not(.user-is-tabbing) button:focus,
body:not(.user-is-tabbing) input:focus,
body:not(.user-is-tabbing) select:focus,
body:not(.user-is-tabbing) textarea:focus {
  outline: none;
}
/* BASICS up to line 560 */
div,button,li,input,[class^="col-"] {
  box-sizing: border-box;
  max-width: 100%;
}
p {
  display: block;
  margin: 0 0 1rem 0;
}
p:last-child,
p:only-child {
  margin-bottom: 0;
}
p.smaller {
  font-size: 0.85rem;
}
h1 {
  font-size: 2rem;
}
h2 {
  font-size: 1.5rem;
}
h3 {
  font-size: 1.35rem;
}
h4 {
  font-size: 1.2rem;
}
h5 {
  font-size: 1.1rem;
}
h6 {
  font-size: 1rem;
}
h1, h2, h3, h4, h5, h6 {
  color: var(--theme-dark);
  font-weight: bold;
  margin-block-start: 0;
  margin-block-end: 0;
  margin: 0 0 0.5rem;
  line-height: 1.2;
}
address {
  font-style: normal;
}
address:last-of-type {
  margin-bottom: 0.5rem;
}
.larger {
  font-size: 125%;
}
a {
  color: var(--link-blue);
  text-decoration: none;
  background-color: transparent;
}
button {
  font-family: inherit;
}
.box,
.theme-box {
  padding: 0.5rem 1rem;
}
.theme-box {
  border: 1px solid var(--theme-medium);
}
.blog,
.max,
.column-1{
  width: 100%;
}
.container-fluid,
.container {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  padding-right: 0;
  padding-left: 0;
}
.row-fluid,
.row{
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  width: 100%;
  margin: 0;
  flex-wrap: wrap;
}
.container-fluid:empty,
.container:empty,
.row-fluid:empty,
.row:empty,
.div:empty {
  display: none;
}
.row > * {
  width: 100%;
  max-width: 100%;
}
.masonry-1,
.columns-1 {
  column-count: 1;
}
.masonry-2,
.columns-2 {
  column-count: 1;
}
.masonry-3,
.columns-3 {
  column-count: 1;
}
.masonry-4,
.columns-4 {
  column-count: 1;
}
.flex {
  white-space: nowrap;
}
.table {
  width: 100%;
  margin-bottom: 1rem;
  border-spacing: 0;
}
th,
td {
  padding: 0.25rem 0.25rem 0.5rem;
}
.editor-cat-list {
  text-align: left;
}
.editor-cat-list #adminForm {
  padding: 0 0 16px;
}
.editor-cat-list table {
  margin-top: 16px;
}
.editor-cat-list tbody tr {
  background-color: var(--lightest-grey);
}
.editor-cat-list .table-bordered thead th,
.editor-cat-list tbody th,
.editor-cat-list tbody td {
  border: 1px solid var(--light-grey);
  padding: 8px 4px;
}
.editor-cat-list .table-bordered thead th {
  border-bottom-width: 2px;
  text-align: left;
}
.editor-cat-list tbody tr:nth-child(2n) {
  background-color: #fff;
}
.editor-cat-list .table-striped tbody tr:nth-of-type(2n+1) {
  background-color: rgba(216,216,219,.25);
}
.col,
[class^="col-"] {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-height: 1px;
  padding-right: 0;
  padding-left: 0;
}
.col-auto {
  flex: 1 0 auto;
  width: auto;
}
.d-none {
display: none;
}
.d-block {
  display: block;
}
.d-inline {
  display: inline;
}
.d-inline-block {
  display: inline-block;
}
.p-0 {
  padding: 0;
}
.p-1 {
  padding: 0.25rem;
}
.p-2 {
  padding: 0.5rem;
}
.p-3 {
  padding: 1rem;
}
.pt-0 {
  padding-top: 0;
}
.pr-0 {
  padding-right: 0;
}
.pb-0 {
  padding-bottom: 0;
}
.pl-0 {
  padding-left: 0;
}
.pt-1 {
  padding-top: 0.25rem;
}
.pr-1 {
  padding-right: 0.25rem;
}
.pb-1 {
  padding-bottom: 0.25rem;
}
.pl-1 {
  padding-left: 0.25rem;
}
.pt-2 {
  padding-top: 0.5rem;
}
.pr-2 {
  padding-right: 0.5rem;
}
.pb-2 {
  padding-bottom: 0.5rem;
}
.pl-2 {
  padding-left: 0.5rem;
}
.pt-3 {
  padding-top: 1rem;
}
.pr-3 {
  padding-right: 1rem;
}
.pb-3 {
  padding-bottom: 1rem;
}
.pl-3 {
  padding-left: 1rem;
}
.m-0 {
  margin: 0;
}
.m-1 {
  margin: 0.25rem;
}
.m-2 {
  margin: 0.5rem;
}
.m-3 {
  margin: 1rem;
}
.mt-0 {
  margin-top: 0;
}
.mt-2 {
  margin: 0.5rem;
}
.mt-3 {
  margin-top: 1rem;
}
.mr-0 {
  margin-right: 0;
}
.mb-0 {
  margin-bottom: 0;
}
.ml-0 {
  margin-left: 0;
}
.mt-1 {
  margin-top: 0.25rem;
}
.mr-1 {
  margin-right: 0.25rem;
}
.mb-1 {
  margin-bottom: 0.25rem;
}
.ml-1 {
  margin-left: 0.25rem;
}
.mt-2 {
  margin-top: 0.5rem;
}
.mr-2 {
  margin-right: 0.5rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.ml-2 {
  margin-left: 0.5rem;
}
.mt-3 {
  margin-top: 1rem;
}
.mr-3 {
  margin-right: 1rem;
}
.mb-3 {
  margin-bottom: 1rem;
}
.ml-3 {
  margin-left: 1rem;
}
.float-left,
.float-xs-left,
.float-sm-left,
.float-md-left,
.float-lg-left,
.float-xl-left {
  float: left;
}
.float-right,
.float-xs-right,
.float-sm-right,
.float-md-right,
.float-lg-right,
.float-xl-right {
  float: right;
}
.float-none,
.float-xs-none,
.float-sm-none,
.float-md-none,
.float-lg-none,
.float-xl-none{
  float: none;
}
.text-left,
.text-xs-left,
.text-sm-left,
.text-md-left,
.text-lg-left,
.text-xl-left {
  text-align: left;
}
.text-right,
.text-xs-right,
.text-sm-right,
.text-md-right,
.text-lg-right,
.text-xl-right {
  text-align: right;
}
.text-centre,
.text-xs-centre,
.text-sm-centre,
.text-md-centre,
.text-lg-centre,
.text-xl-centre {
  text-align: center;
}
.text-justify,
.text-xs-justify,
.text-sm-justify,
.text-md-justify,
.text-lg-justify,
.text-xl-justify {
  text-align: justify;
}
.text-nowrap {
  white-space: nowrap;
}
.container{
  max-width: 575.999999px;
  }
.d-xs-none{
  display: none;
  }
.d-xs-block {
  display: block;
  }
.d-xs-inline-block {
  display: inline-block;
  }
.col,
.col-xs {
  flex: 1;
  max-width: 100%;
  }
.col-1 {
  flex: 1 0 8.8888883%;
  max-width: 8.8888883%;
}
.col-2,
.col-xs-2 {
  flex: 1 0 16.666667%;
  max-width: 16.666667%;
  }
.col-3,
.col-xs-3 {
  flex: 0 0 25%;
  max-width: 25%;
  }
.col-4,
.col-xs-4 {
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
  }
.col-5,
.col-xs-5 {
  flex: 0 0 41.666667%;
  max-width: 41.666667%;
  }
.col-6,
.col-xs-6 {
  flex: 0 0 50%;
  max-width: 50%;
  }
.col-7,
.col-xs-7 {
  flex: 0 0 58.333333%;
  max-width: 58.333333%;
  }
.col-8,
.col-xs-8 {
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
  }
.col-9,
.col-xs-9 {
  flex: 0 0 75%;
  max-width: 75%;
  }
.col-10,
.col-xs-10 {
  flex: 0 0 83.333333%;
  max-width: 83.333333%;
  }
.col-11,
.col-xs-11 {
  flex: 0 0 91.666667%;
  max-width: 91.666667%;
  }
.com-content-article.item-page > .com-content-article__body > .row > [class^="col-"]:first-child {
  padding-left: 0;
}
.com-content-article.item-page > .com-content-article__body > .row > [class^="col-"]:last-child {
  padding-right: 0;
}
.col-12,
.col-xs-12 {
  flex: 0 0 100%;
  max-width: 100%;
  margin-right: 0;
  margin-left: 0;
}
.w-100 {
  width: 100%;
}
.w-50 {
  width: 100%;
}
.w-25 {
  width: 100%;
}
.logo-circle {
  background-color: var(--theme-dark);
  border: 3px solid var(--theme-contrast-dark); 
  height: 80px;
  -moz-border-radius:50%;
  -webkit-border-radius:50%;
  border-radius:50%;
  position: relative;
  width: 80px;
}
.logo-text {
  background: url(/images/general/smt-logo-text-53-x-53-2324.png) no-repeat 11px 14px;
  background-size: 53px;
  position: absolute;
  height: 80px;
  width: 80px;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  border-style: none;
}
img:-moz-loading {
  visibility: hidden;
}
.image-left,
.imageleft {
  float: left;
  padding: 0 12px 6px 0;
}
.image-right,
.imageright {
  float: right;
  padding: 0 0 6px 12px;
}
figure {
  margin: 0;
}
.blog-item figure {
  padding: 0 16px;
}
.align-top {
  vertical-align: top !important;
}
.avoid-break {
  break-inside: avoid;
}
/* END BASICS */
.mm {
  min-height: 44px;
}
.mm .menucontent.menu-b {
  justify-content: normal;
  margin: 0;
  padding: 0;
  position: relative;
  top: 0;
  z-index: 997;
}
.mm ul {
  width: 100%;
  list-style: none;
  padding-left: 0;
}
.mm li {
  display: block;
  position: relative;
  border-top: 1px dotted var(--medium-grey);
  min-height: 45px;
  max-height: 45px;
  width: 100%;
}
.mm li.deeper {
  max-height: unset;
}
.mm li.close,
.mm li.top-level:nth-child(2) {
  border-top: none;
}
.mm li.close {
  margin-bottom: 16px;
}
.mm li.top-level {
  padding: 0;
}
.mm li.top-level.single {
  display: inline-flex;
  vertical-align: middle;
}
.mm li:not(.top-level) {
  padding: 0 8px 0 16px;
}
.mm li a,
.mm li button span.btpr {
  padding: 0 8px;
  display: inline-flex;
  height: 44px;
  align-items: center;
}
.mm [type="button"] {
  -webkit-appearance: none;
  background: transparent;
  border: none;
  font-size: 1rem;
  min-width: 44px;
  min-height: 44px;
  position: relative;
  text-align: left;
  top: 0;
  white-space: nowrap;
  width: 100%;
}
.mm [type="button"] ~ ul {
  display: none;
}
.mm [type="button"].opened ~ ul {
  display: table;
  z-index: 99;
}
.mm li > button:hover a,
.mm li > button:hover span {
  font-weight: bold;
}
.mm li.current a:hover {
  font-weight: normal;
}
.mm li > a,
.mm li > span {
  color: var(--dark-grey);
}
/*.mm li.active,*/
.mm li.active > button,
.mm li.current.active.single {
  background-color: var(--theme-dark);
}
.mm li.active > button span,
.mm li.current > a,
.mm li.active > a,
.mm li.active > span {
  color: var(--theme-contrast);
}

/*.mm li:hover > a,*/
.mm li button:hover,
.mm li.single:hover,
.mm li.single:hover a,
.mm li.active button:hover,
.mm li button:hover a,
.mm li button:hover span {
  background: var(--theme-dark);
  color: #fff;
}
.mm span.v-open-icon {
  padding: 0 0 0 0.5rem;
  font-size: 1.25rem;
}
.mm li .h-open-icon {
  display: none;
}
.mod-custom {
  width: 100%;
  max-width: 100%;
}
.fixed-header {
  background-color: #fff;
  box-shadow: 0 3px 7px rgba(132, 129, 128, 0.60);
  height: 150px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 990;
}
.fixed-header-inner, 
.pageh1textwrapper {
  margin: 0 auto;
}
.logo-wrapper {
  margin-top: 8px;
}
.fixed-header-inner {
  padding: 0 16px;
}
.header-row {
  height: 120px;
  padding-right: 1rem;
}
.top-spacer {
  margin-top: 150px;
  background-color: #fff;
}
.col-xs.topheader {
  margin: 0;
  padding-top: 0.5rem;
  padding-right: 1rem;
}
.with-border {
  padding: 0 16px;
}
.no-border {
  padding: 0;
}
.upperwrapper,
.middlewrapper {
  background-color: #fff;
  margin: 0 auto;
}
.middlewrapper.no-border {
  padding-top: 16px;
}
.middlewrapper {
  padding: 0 16px 16px;
}
.sidenav {
  display: none;
}
.sidenav-opened {
  transition: width 0.5s;
  display: block;
  height: 100%;
  width: 350px;
  max-width: 100%;
  position: fixed;
  z-index: 992;
  top: 0;
  left: 0;
  background-color: #fff;
  overflow-x: hidden;
  padding: 48px 16px 0;
  box-shadow: 2px 0 5px -2px var(--light-grey);
}
.sidemenu {
  position: relative;
  z-index: 997;
  background: #fff;
}
.closenavbtn {
  background: transparent;
  border: none;
  cursor: pointer;
  color: var(--theme-medium);
  font-size: 3rem;
  margin: 0;
  position: absolute;
  top: -48px;
  right: 0;
  z-index: 998;
  height: 44px;
  width: 44px;
}
.sidenav-opened ~ .mainmenu-wrapper {
  top: 0;
}
.sidenav-opened ~ .fixed-header .logo {
  margin: 0 auto;
}
.sidenav-opened ~ .fixed-header,
.sidenav-opened ~ .fixed-header .header-row {
  box-shadow: none;
  height: 7.5rem;
}
.sidenav ~ .mainmenu-wrapper .mainmenu-row .sidemenu {
  display: none;
}
.sidenav-opened ~ .mainmenu-wrapper .mainmenu-row .menucontent:first-child,
.sidenav-opened ~ .mainmenu-wrapper .mainmenu-row .sidemenu {
  display: block;
}
.sidenav-opened ~ .mainmenu-wrapper .mainmenu-row .search {
  display: none;
}
.sidenav ~ .mainmenu-wrapper .mainmenu-row .sidenav-logo,
.sidenav ~ .mainmenu-wrapper .mainmenu-row .sidenav-search {
  display: none;
}
.sidenav-opened ~ .mainmenu-wrapper .mainmenu-row .sidenav-logo,
.sidenav-opened ~ .mainmenu-wrapper .mainmenu-row .sidenav-search {
  display: block;
  position: relative;
  z-index: 999;
  margin-top: 1rem;
  left: 0;
}
.sidenav-opened ~ .mainmenu-wrapper .mainmenu-row .sidenav-search {
  margin-top: 2rem;
  height: 2rem;
  padding-left: 1rem;
}
.sidenav-opened ~ .mainmenu-wrapper .mainmenu-row .sidenav-search .mod-finder {
  float: left;
}
.sidenav ~ .mainmenu-wrapper .mainmenu-row .mod-finder {
  float: right;
}
.sidenav ~ .md-menu-outer{
  display: none;
}
.sidenav ~ .search {
  display: inline-block;
  position: fixed;
  top: 3rem;
  z-index: 999;
}
.sidenav-opened ~ .md-menu-outer {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
}
.sidenav-opened ~ .search {
  display: none;
}
.search .form-inline .inputbox {
  width: 100%;
}
.search .mod-finder__search.input-group {
 display: inline-block;
}
.js-finder-search-query::placeholder {
 color: var(--dark-grey);
 opacity: 1;
 font-style: italic;
}
.sidenav-opened ~ .mainmenu-row .search {
  display: none;
}
.burger-outer {
  display: block;
  z-index: 999;
}
.burger {
  position: relative;
  border-top: 0.15rem solid var(--dark-grey);
  border-right: none;
  border-bottom: 0.15rem solid var(--dark-grey);
  border-left: none;
  background: transparent;
  cursor: pointer;
  height: 32px;
  width: 48px;
  top: 40px;
  left: 0;
  z-index: 995;
}
.burger::before {
  position: absolute;
  content: "Menu";
  font-size: 1.2rem;
  top: -32px; /*-26px;*/
  left: 0;
}
.burger::after {
  position: absolute;
  content: "";
  border-top: 0.15rem solid var(--dark-grey);
  top: 48%;
  left: 0;
  width: 48px;
}
.burger-heading {
  position: relative;
  top: -32px;
  font-size: 1.2rem;
  color: var(--theme-dark);
}
/*.logo {
  margin-top: 4px;
}
.logo-box img {
  height: 80px;
  width: 80px;
}*/
.mainContent {
  position: relative;
  z-index: 500;
  margin-top: 150px;
}
.banner {
  margin: 0 0 1rem;
}
.banner .crop img {
  height: 248px;
  object-fit: cover;
}
.breadcrumb-item + .breadcrumb-item::before {
  color: #6d757e;
  content: var(--breadcrumb-divider,"/");
  float: left;
  padding: 0 .5rem;
}
.middlewrapper.dark-mode {
  background-color: var(--dark-grey);
  color: #fff;
}
.no-border .introduction {
  padding: 0 1rem;
  margin-bottom: 1rem;
}
.with-border .introduction {
  padding: 0;
  margin-bottom: 1rem;
}
.image-gallery .introduction {
  margin-top: 1rem;
}
.feature p:last-child,
.introduction p:last-child {
  margin-bottom: 0;
}
.pageh1textouter {
  background-color: #fff;
  padding: 1rem;
  border-bottom: 2px solid var(--theme-medium);
}
.pageh1text {
  position: relative;
}
.pageh1text h1 {
  margin: 0;
}
.introduction .theme-light {
  background-color: var(--theme-light);
  margin-bottom: 2rem;
  padding: 0.5rem 1rem;
}
[class^="col-"]:only-child.no-sidebar {
  padding-right: 0;
  padding-left: 0;
}
/* === Main Menu === */
/*#mmenu {
  z-index: 999;
}*/
.mod-finder label.finder,
.visually-hidden {
  border: 0;
  padding: 0;
  margin: 0;
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
  white-space: nowrap;
  display: inline-block;
}
.visually-hidden .toggleText {
  position: absolute;
/*  width: 44px;*/
  top: -1.5rem;
  left: -1rem;
/*  height: 44px;*/
}
.search .mod-finder label.finder {
  color: #fff;
  background-color: var(--theme-medium);
}
/* === Sidebars and component area === */
.leftsidebar,
.rightsidebar {
  margin: 16px 0;
}
.contentright,
.contentleft,
.contentboth,
.col-md.contentright,
.col-md.contentleft {
  padding-left: 0;
  padding-right: 0;
}
.col-md.contentright .item-content,
.col-md.contentleft .item-content {
  margin-left: 0;
  margin-right: 0;
}
.leftsidebar,
.rightsidebar{
  background-color: var(--lightest-grey);
  border: 1px solid var(--light-grey);
  margin: 0 0 16px 0;
  padding-left: 16px;
  padding-right: 16px;
  position: relative;
}
.rightsidebar {
  margin: 16px 0;
}
#skip-target {
  position: absolute;
  left: 0;
  top: -180px;
}
.grey-panel {
  display: none;
}
.sidebarleft,
.sidebarright {
  border-bottom: 2px solid var(--theme-medium);
  margin-top: 1rem;
}
.sidebarleft:last-child,
.sidebarright:last-child {
  border-bottom: none;
}
.sidebarleft:first-child,
.sidebarright:first-child {
  margin-top: 0;
}
.sidebarleft a,
.sidebarright a {
  color: var(--dark-grey);
  font-weight: bold;
}
.sidebarleft a:hover,
.sidebarright a:hover {
  font-weight: bold;
}
.sidebarright .mod-content,
.sidebarleft .mod-content {
  padding-bottom: 1rem;
}
.sidebarright .mod-header,
.sidebarleft .mod-header {
  border-bottom: solid 2px var(--light-grey);
  box-shadow: 0 2px 0 #ffffff;
  margin-bottom: 16px;
}
.sidebarright .mod-header h3,
.sidebarleft .mod-header h3 {
  font-size: 1.5rem;
  font-weight: bold;
  padding: 4px 0;
}
.no-border .pageh1text,
.with-border .pageh1text {
  padding: 1rem;
  border-top: 2px solid var(--theme-medium);
  border-bottom: 2px solid var(--theme-medium);
}
.with-border .h1header,
.with-border .pageh1text {
  padding: 1rem 0;
}
.with-border .pageh1text h1 a {
  color: var(--theme-dark);
  text-decoration: none;
}
.with-border .pageh1text h1 a:hover {
  text-decoration: underline;
}
.with-border .sidebarcontent {
  padding: 0;
}
.no-border .sidebarcontent {
  margin-bottom: 1rem;
  padding: 1rem 1rem 0;
}
.contentleft {
  padding-left: 1rem;
  padding-right: 1rem;
}
.contentright {
  padding-right: 0;
  padding-left: 0;
}
.reverse-double-line {
  border-bottom: solid 0.125rem #cccccc;
  box-shadow: 0px 0.15rem 0px #ffffff;
  margin-bottom: 0.75rem;
}
/* ==== Featuretop and bottom ==== */
.no-border .featurecontainer {
  padding: 1rem 1rem 0;
  margin-bottom: 1rem;
}
.with-border .featurecontainer {
  padding: 0;
  margin-bottom: 1rem;
}
.feature .pictextwrap {
  display: none;
}
.featurebottom {
  overflow: hidden;
}
.featuretop .wrapper,
.featurebottom .wrapper {
  height: 100%;
  position: relative;
}
.with-border .feature-top,
.with-border .feature-bottom {
  padding: 0 0 1rem;
}
.no-border .feature-top,
.no-border .feature-bottom {
  padding: 0 1rem 1rem;
}
.feature {
  padding: 0 0 1rem;
}
.lowermiddle {
  padding-bottom: 1rem;
}
.lowermiddle:last-child {
  padding-bottom: 0;
}
/* === category modules === */
.article-info-term {
  display: none;
}
.published {
  font-style: italic;
  color: var(--dark-grey);
  font-size: 0.85rem;
}
dd.published {
  margin: 0;
}
ul.categories-module,
ul.category-module,
ul.latestnews,
ul.cominguphome {
  margin-bottom: 0;
  padding-left: 0;
}
.categories-module li,
.category-module li,
.latestnews li,
.group-toggle li > ul > li.nav-item,
.cominguphome li {
  border-bottom: solid 1px var(--light-grey);
  box-shadow: 0 0.125rem 0 #fff;
  break-inside: avoid;
  color: var(--dark-grey);
  list-style: none;
  margin-bottom: 0.75rem;
  padding-bottom: 0.75rem;
}
.cominguphome li .concert-location {
  margin-bottom: 8px;
}
.cominguphome .message,
.future .message {
  width: 100%;
  padding: 0 8px;
  background: var(--danger);
  color: #fff;
}
/*.category-module li:last-child {
  border-bottom: none;
  box-shadow: none;
  margin-bottom: 0;
  padding-bottom: 0;
}*/
.category-module li p {
  font-weight: normal;
}
.categories-module li span,
.category-module li span,
.latestnews li span {
  display: block;
  font-size: 0.9rem;
  color: var(--dark-grey);
  padding: 0.25rem 0 0.25rem 0.25rem;
}
.future .category-module li .concert-date span,
.future .category-module li .concert-location span {
  font-weight: bold;
  padding: 0;
}
.previously .category-module li .concert-date span {
  padding: 0;
}
.categories-module li h4,
.latestnews li h4 {
  margin-bottom: 0;
}
.categories-module li > a,
.category-module li > a,
.latestnews li > a {
  display: block;
}
.categories-module li a:hover,
.category-module li a:hover,
.latestnews li a:hover {
  font-weight: bold;
}
.mod-articles-category-introtext {
  margin-top: 0;
}
.featuretop .mod-fb-header,
.featurebottom .mod-fb-header {
  background-color: var(--theme-medium);
  margin-bottom: 6px;
  padding: 6px 12px;
}
.featuretop .mod-fb-header h3,
.featurebottom .mod-fb-header h3 {
  color: #fff;
}
.mod-fb-content h4,
.mod-fb-content h5 {
  font-size: 1rem;
}
.mod-fb-content .news-read-more {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0.5rem 1rem;
  background-color: var(--theme-medium);
  border-top: 1px solid var(--theme-medium);
}
.mod-fb-content .news-read-more a {
  color: #fff;
}
.mod-fb-content .fade {
  position: absolute;
  bottom: 2rem;
  left: 0;
  width: 100%;
  height: 25%;
  background-image: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1));
}
.mod-fb-content .news-content {
  overflow: hidden;
}
.newsflash .larger {
    clear: both;
}
.footer-one-outer {
  background-color: var(--theme-contrast);
  border-top: 3px solid var(--theme-medium);
  margin-top: 16px;
}
.footer-two-outer {
 background-color: var(--theme-medium);
 color: white;
}
.footer-one,
.footer-two {
  font-size: 0.85rem;
  max-width: 1250px;
  width: 100%;
  margin: 0 auto;
  padding-top: 1rem;
  text-align: center;
}
.footer-two {
  padding-bottom: 1rem;
  border-bottom: 1px solid white;
}
.footer-two a {
  color: white;
  text-decoration: underline;
}
.footertwo-text:first-child {
  border-right: 1px solid white;
}
.footer-one .footer_moduletable,
.footer-two .footer_moduletable {
   margin-bottom: 10px;
   padding: 5px 10px 10px 10px;
}
.footer .footer_moduletable:last-child{
   margin-bottom: 0;
   padding: 5px 10px 10px 10px;
}
.main-footer {
  margin: 0 auto;
}
.second-row {
  width: 100%;
  text-align: center;
}
.smt-footer {
  padding-left: 8px;
  padding-right: 8px;
  display: inline-block;
}
.copytext {
  text-align: center;
  font-style: italic;
  font-size: 0.85rem;
  margin: auto;
}
.copytext, 
.copytext a {
  color: white;
}
.copytext a:hover {
  text-decoration: underline;
}
.copydate {
  width: 1.25rem;
  display: inline;
}
.copy {
  background-color: var(--theme-dark);
  padding: 1rem 82px;
  display: inline-block;
}
.hide {
  display: none;
}
#offlinepage {
  margin: 2.5rem auto;
  padding: 1.25rem;
  background-color: var(--lighter-grey);
  color: var(--danger);
  font-weight: bold;
  font-size: 1.25rem;
  text-align: center;
}
.content-category fieldset {
  border: none;
  padding: 0;
}
.mod-preview-info {
  z-index: 999;
}
.newsflash-two-cols,
.two-cols {
  columns: 2 300px;
  column-gap: 1rem;
}
.three-cols {
  columns: 3 400px;
  column-gap: 2rem;
}
.three-cols-sm {
  columns: 3 195px;
  column-gap: 15px;
  break-inside: avoid;
}
.four-cols {
  columns: 4 350px;
  column-gap: 1rem;
}
.iframe-rwd  {
  position: relative;
  padding-bottom: 65.25%;
  height: 0;
}
[class^="bluebox-"],
[class^="greybox-"] {
  border: 2px solid var(--theme-medium);
  padding: 0.5rem 1rem;
}
[class^="greybox-"] {
  border-color: var(--medium-grey);
}
.greybox-greybg {
  background: var(--lightest-grey);
}
.greybox-lightbg,
.bluebox-lightbg {
  background: var(--theme-light);
}
.iframe-rwd iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* YouTube */
.iframe-container {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0;
}
.iframe-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
hr {
  border-top: 1px solid var(--theme-medium);
}
a.btn.jmodedit {
  background:#eee;
  border:1px solid #ff0000;
  padding:5px;
}
a.btn.jmodedit span.icon-edit::before {
  content:"\1F589";
  color: black;
}
td, th {
  vertical-align: middle;
}
td.t-pad{
  padding-left: 1rem;
}
.close-button {
  display: inline-block;
  border: 1px solid var(--theme-medium);
  border-radius: 5px;
  padding: 0 0.5rem;
  font-style: italic;
  margin: 1rem 0 0;
}
.toggle-btn {
  cursor: pointer;
}
.editor-tips.toggle-btn {
  font-size: 1.5rem;
  color: var(--theme-medium);
}
.toggle-content {
  display: none;
}
.toggle-content.content-revealed {
  display: block;
}
.toggle-content.content-revealed {
  margin-bottom: 1rem;
}
a {
  word-wrap:break-word;
}
.item-page {
  width: 100%;
}
.textCopy {
  margin: 0;
  font-size: 1.1rem;
  color: var(--theme-dark-grey);
}
.element-invisible {
  display: none;
}
.search .form-inline {
  display: flex;
}
.slideshow {
  margin: 0 0 16px 0;
}
.com-users-registration.registration {
  width: 100%;
}
/*.contact-page h2,*/
.blog .item-content h2:first-child,
.blog .item-content .page-header h2,
.about-us h2,
.com-content-article.item-page .page-header h2,
.season .items-leading .page-header h2, 
.season .season-item .page-header h2,
.season .items-leading .page-header h2 a, 
.season .season-item .page-header h2 a {
  color: var(--theme-contrast);
  background-color: var(--theme-dark);
  padding: 0.25rem 1rem;
}
.skip, .skip-two {
  position: absolute;
  right: 0;
  bottom: 0.05rem;
  font-size: 0.95rem;
}
/* blogs */
.blog .blog-item,
.com-content-article.item-page.news,
.com-content-article.item-page.reviews {
  border: 1px solid var(--theme-medium);
  break-inside: avoid;
  margin-bottom: 16px;
  overflow: hidden;
  padding: 0 0 16px;
}
.outreach .blog .blog-item {
  padding: 16px;
}
.blog-item .item-main-content,
.com-content-article__body.newsreviews {
  padding: 0 16px;
}
/* == for reviews gallery == */ 
.reviews ul {
  list-style: none;
  padding-left: 0;
}
.concert-review-gallery-subform > span > ul {
  padding-left: 16px;
}
.reviews > ul.fields-container {
  padding-left: 1rem;
  padding-right: 1rem;
}
.reviews li.concert-gallery-subform span.field-entry {
  display: block;
  margin: 1rem 0 0;
}
.concert-review-gallery-subform > span > ul > li > div:first-child {
  padding-top: 16px;
}
.reviews ul li ul li {
  width: 100%;
  padding-bottom: 1rem;
} /* == end reviews gallery == */
dl {
  margin: 16px 0;
}
.news .article-info,
.reviews .article-info,
.music-room .blog-item .article-info,
.blog-item [class^="min-height-"],
.blog-item p.readmore {
  padding: 0 16px;
}
.blog-featured .blog-items-row {
  margin-bottom: 0.12px;
}
.blog .page-header h2 {
  font-size: 1.35rem;
}
.contact-page h2,
.blog .items-leading .page-header h2,
.com-content-article.item-page .page-header h2 {
  font-size: 1.75rem;
}
.blog .item-content h2:first-child a {
  /*color: #fff;*/
  padding: 0;
  font-size: 1.75rem;
}
.blog .item-content h2:first-child a:hover {
  font-weight: bold;
}
.blog .blog-item .item-content {
  margin: 0;
}
.blog .blog-item:first-child .item-content {
  margin-left: 0;
}
.blog .blog-item:last-child .item-content {
  margin-right: 0;
}
.outreach .blog .blog-item {
  padding: 16px;
}
.blog .item-content.full h2 {
  margin-bottom: 0;
}
.news .item-content h2 > a,
.reviews .item-content h2 > a {
  color: var(--theme-contrast);
}
.blog .item-content figure,
.item-page.reviews figure,
.item-page.news figure {
  min-height: 200px;
  margin: 16px 0;
}
.clipped-border {
  padding: 0 0.2em 1rem;
  background: linear-gradient(to bottom, transparent calc(100% - 2px), var(--theme-medium) calc(100% - 2px));
  background-size: calc(100% - 16px) 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.blog .blog-items.items-leading {
  padding: 0 0 1rem;
}
.blog .blog-items:last-child {
  padding-bottom: 0;
}
iframe .joomla-tab[view="accordion"] button {
  background: var(--theme-contrast);
}
.com-content-category-blog__navigation.w-100.count-wrapper {
  position: relative;
}
.blog .custom-count {
  position: absolute;
  top: 0;
  right: 0;
}
.blog .custom-pag {
  position: absolute;
  top: -1.5rem;
}
.blog nav.pagination__wrapper {
  position: relative;
}
.breadcrumb,
.pagination {
  display: flex;
  flex-direction: row;
  list-style: none;
  padding-left: 0;
}
.pagination li a,
.pagination li span {
  height: 1.5rem;
}
.page-link {
  border: 1px solid var(--light-grey);
  display: block;
  position: relative;
  text-decoration: none;
  padding: .375rem .75rem;
}
.page-link:hover {
  background: var(--light-grey);
}
.page-item.active .page-link {
  background-color: var(--theme-dark);
  border: 1px solid var(--theme-dark);
  color: #fff;
}
.page-item:not(:first-child) .page-link {
    margin-left: -1px;
}
.cc-custom-revoke {
  cursor: pointer;
}
.sidenav ~ .mainmenu-wrapper .mainmenu-row .search {
  display: none;
}
.top-link {
  animation-duration: 0.2s;
  visibility: visible;
  position: fixed;
  cursor: pointer;
  text-align: center;
  bottom: 0;
  right: 1rem;
  color: white;
  background: var(--mod-red);
  border: 1px solid #fff;
  font-size: 3rem;
  margin: 0;
  padding: 0.5rem 0 0;
  width: 50px;
  height: 50px;
  z-index: 9999;
}
.top-link.hide {
  background: var(--theme-medium);
}
.top-link:hover {
  padding-top: 0.25rem;
}
/* Toggles */
.contact {
  position: relative;
}
.group-toggle [type="button"].toggle-form.form-opened ~ .form,
.editing-articles [type="button"].tips-button.form-opened ~ .tips {
  display: block;
  z-index: 99;
  position: relative;
  top: 16px;
  left: 0;
  margin-bottom: 32px;
}
.group-toggle,
.year-items {
  list-style: none;
  padding-left: 0;
}
.mod-content button.toggle-form {
  border: none;
  font-size: 1.25rem;
  color: #fff;
  padding: 0.25rem 0.5rem;
  width: 100%;
  text-align: left;
  background-color: var(--theme-medium);
  margin-bottom: 0.5rem;
}
button.toggle-form.form-opened {
  margin-bottom: 0.25rem;
}
.group-toggle li.nav-item {
  margin-bottom: 1rem;
}
span.mod-articles-category-date {
  font-size: 0.85rem;
}
.col-md.pl-3 {
  padding-left: 1rem;
}
.group-toggle [type="button"].toggle-form ~ .form,
.contact [type="button"].toggle-form ~ .form,
.editing-articles [type="button"].tips-button ~ .tips {
  display: none;
}
button.info-button[aria-expanded="false"]:after {
  content: "Read more +";
}
.season .concert-info {
  position: relative;
}
.info-button {
  margin: 0 0 16px 0;
}
.info-button ~ .tips,
.info-button ~ .info {
  display: none;
}
.info-button.form-opened ~ .tips,
.info-button.form-opened ~ .info {
  display: block;
  margin: 0 0 16px 0;
}
button.close-info[aria-expanded="true"]:after,
button.info-button[aria-expanded="true"]:after {
  content: 'Close info \2013';
  cursor: pointer;
}
#jform_state::after,
[data-icon]:before {
  font-family: "general" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.fa .fa-i-cursor::before,
.type[scope="col" i]::before,
.media-browser-table .type::before,
.type[data-type="" i]::before,
.type[data-type="jpg" i]::before,
.type[data-type="webp" i]::before,
[class^="fa-"]:after,
[class*="fa-"]:after,
[class^="icon-"]:before,
[class*=" icon-"]:before,
[class^="icon-"]:after,
[class*=" icon-"]:after {
  font-family: "general" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-env:before {
  content: "\6d";
}
.icon-map-marker:before {
  content: "\73";
}
.icon-phone:before {
  content: "\74";
}
.icon-print:before {
  content: "\70";
}
.icon-edit:before {
  content: "\65";
}
.icon-eye:before {
  content: "\62";
}
.icon-eye-slash:before {
  content: "\64";
}
.icon-angle-double-left:before {
  content: "\61";
}
.icon-angle-double-right:before {
  content: "\66";
}
.icon-angle-left:before {
  content: "\67";
}
.icon-angle-right:before {
  content: "\68";
}
.icon-calendar:before {
  content: "\69";
}
.icon-user:before {
  content: "\6a";
}
.icon-folder-open:before {
  content: "\63";
}
.icon-angle-down:before,
.icon-select-down:before {
  content: "\6b";
}
.icon-angle-up:before {
  content: "\6c";
}
.icon-search:before {
  content: "\6e";
}
.icon-check:before {
  content: "\6f";
}
.icon-times:before {
  content: "\71";
}
.icon-code-branch:before {
  content: "\72";
}
.icon-sort:before {
  content: "\75";
}
.icon-sort-alpha-asc:before {
  content: "\76";
}
.icon-sort-alpha-desc:before {
  content: "\77";
}
.icon-upload:before {
  content: "\78";
}
.icon-folder:before {
  content: "\79";
}
.icon-plus:before {
  content: "\7a";
}
.icon-arrows-alt:before {
  content: "\42";
}
.icon-refresh:before {
  content: "\43";
}
.icon-clone:before {
  content: "\44";
}
.icon-list:before {
  content: "\45";
}
.icon-picture-o:before {
  content: "\46";
}
.icon-table:before {
  content: "\47";
}
.icon-minus:before {
  content: "\41";
}
.icon-info:before {
  content: "\48";
}
.icon-folder-o:before {
  content: "\49";
}
.icon-folder-open-o:before {
  content: "\4a";
}
.icon-i-cursor:before,
.icon-pencil-alt {
  content: "\4b";
}
.icon-trash-o:before {
  content: "\4c";
}
.icon-download:before {
  content: "\4d";
}
.icon-search-plus:before {
  content: "\4e";
}
.icon-link:before {
  content: "\4f";
}
.icon-ellipsis-h:before {
  content: "\50";
}

.home-news-row {
  margin: 0;
  padding: 8px 8px 4px;
  border: 5px solid var(--theme-medium);
}
.home-concert-title.row {
  margin-right: 0;
  margin-left: 0;
}
.home-news.concert-location {
  margin-bottom: 0.5rem;
}
.home-inner .col-md-5,
.home-inner .col-md-7 {
  padding: 0;
}
.home-news.concert-image {
  margin-bottom: 0.25rem;
}
.home .home-inner-two {
  margin-top: 1rem;
}
.home-concert-title {
  padding: 0;
}
.concert-title {
  font-size: 1.75rem;
  font-weight: bold;
}
.home .concert-title h2 {
  font-size: 2rem;
}
.future .concert-title,
.previously .concert-title,
.home .concert-title,
.future .concert-location,
.previously .concert-location {
  font-size: 1rem;
}
.sidebarright.previously a,
.sidebarright.future a,
.home .home-next .concert-title a,{
  font-size: 1.1rem;
  font-weight: bold;
  color: var(--dark-grey);
}
.sidebarright.previously a:hover,
.sidebarright.future a:hover {
  text-decoration: underline;
}
.home-news-row .concert-message:empty ~ .our-next-concert {
  background-color: var(--theme-contrast);
  color: var(--theme-dark);
  content: "OUR NEXT CONCERT:"; 
  margin: 0 16px 8px 0;
  padding: 0.5rem 1rem 0.5rem;
  font-size: 1.75rem;
  font-weight: bold;
}
.home-news-row .concert-message:not(:empty) ~ .our-next-concert {
  display: none;
}
.home-news-row .concert-message,
.home-news-row .our-next-concert {
  display: inline-block;
}
.home-news-row .concert-message:empty {
  display: none;
}
.home-news-row .our-next-concert {
  line-height: 1;
  margin-bottom: 1rem;
}
/*.home-mod-title,
.home-mod-content,
.home-more {
  border: 1px solid var(--theme-dark);
}*/
.home-mod-title {
  background-color: #fff;
  border-bottom: 1px solid var(--theme-dark);
}
/*.home-mod.mod-theme-dark, */
.outline-box-dark {
  border: 2px solid var(--theme-dark);
}
/*.home-mod.mod-theme-dark,*/
.outline-box-dark {
  border: 2px solid var(--theme-medium);
}
/*.home-mod.mod-theme-medium,*/
.outline-box-medium {
  border: 2px solid var(--theme-medium);
}
/*.home-mod.mod-theme-light,*/
.outline-box-light {
  border: 2px solid var(--theme-light);
}
/*.home-mod.mod-theme-lighter,*/
.outline-box-light {
  border: 2px solid var(--theme-light);
}
/*.home-mod.mod-theme-contrast.*/
.outline-box-contrast {
  border: 2px solid var(--theme-contrast);
}
/*.home-more.mod-theme-dark,
.home-more.mod-theme-dark a,*/
.mod-theme-dark h2,
.box-theme-dark,
.bg-theme-dark {
  background: var(--theme-dark);
  color: #fff;
}
/*.home-more.mod-theme-medium,
.home-more.mod-theme-medium a,*/
.mod-theme-medium h2,
.box-theme-medium,
.bg-theme-medium {
  background: var(--theme-medium);
  color: #fff;
}
/*.home-more.mod-theme-medium,
.home-more.mod-theme-medium a,*/
.mod-theme-medium h2,
.box-theme-medium,
.bg-theme-medium {
  background: var(--theme-medium);
  color: #fff;
}
/*.home-more.mod-theme-light,
.home-more.mod-theme-light a,*/
.mod-theme-light h2,
.box-theme-light,
.bg-theme-light {
  background: var(--theme-light);
  color: var(--theme-dark);
}
.box-red {
  background: var(--mod-red);
}
.box-theme-contrast,
.box-contrast {
  background: var(--theme-contrast);
  color: var(--theme-dark);
}
.box-contrast address {
  color: var(--theme-dark);
}
/*.home-mod.mod-theme-dark,,*/
.ticket-mod.mod-theme-dark,
.mod-home .mod-theme-dark {
  border: 2px solid #cccccc;
  border: 2px solid var(--theme-dark);
}
/*.home-mod.mod-theme-medium,*/
.ticket-mod.mod-theme-medium,
.mod-home .mod-theme-medium {
  border: 2px solid #cccccc;
  border: 2px solid var(--theme-medium);
}
/*.home-mod.mod-theme-dark,*/
.ticket-mod.mod-theme-dark,
.mod-home .mod-theme-dark {
  border: 2px solid #cccccc;
  border: 2px solid var(--theme-medium);
}
/*.home-mod.mod-theme-medium,*/
.ticket-mod.mod-theme-medium,
.mod-home .mod-theme-medium {
  border: 2px solid #cccccc;
  border: 2px solid var(--theme-medium);
}
/*.home-mod.mod-theme-light,*/
.ticket-mod.mod-theme-light,
.mod-home .mod-theme-light {
  border: 2px solid #cccccc;
  border: 2px solid var(--theme-light);
}
/*.home-mod.mod-red,*/
.ticket-mod.mod-red,
.mod-home .mod-red {
  border: 2px solid #cccccc;
  border: 2px solid var(--mod-red);
}
.home-more {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.25rem 1rem;
  font-size: 1.5rem;
  text-align: right;
  border-top: 1px solid var(--theme-dark);
}
.home-more p:after {
  position: relative;
  content: " »";
}
[class^="box-"]{
  padding: 0.5rem 1rem 1rem;
  margin: 0 0 1rem 0;
  color: white;
}
[class^="box-"] a {
  color: white;
  text-decoration: underline;
}
.tickets .box-red {
  padding: 1rem;
}
.mod-read-more {
  margin-left: -1rem;
  margin-right: -1rem;
  width: calc(100% + 2rem);
  padding: 0 1rem 0.25rem 0;
  color: white;
  font-size: 1.5rem;
  text-align: right;
}
.ticket-mod a {
  text-decoration: none;
  color: white;
}
.ticket-mod a:hover,
.home-more a:hover {
  text-decoration: underline;
}
.news .blog-items,
.reviews .blog-items,
.music-room .blog-items,
.associate .blog-items {
 background-color: white;
 display: grid;
  column-gap: 1.5rem;
  row-gap: 0.5rem;
  grid-template-columns: repeat( auto-fit, minmax(350px, 1fr) );
  margin-bottom: 0;
}
.home-col-container {
  display: block;
}
.home-mod {
  position: relative;
  padding: 0;
  margin-bottom: 1rem;
  border: 1px solid var(--theme-dark);
}
.home-mod-content {
  padding: 8px 16px 52px;
}
.home-mod-news {
  overflow: hidden;
}
.home .featurebottom .wrapper {
  height: 20rem;
  margin-bottom: 1rem;
}
.home .featurebottom .mod-fb-header {
  height: 3.5rem;
}
.home .feature .mod-fb-content {
  height: 16.5rem;
  overflow: hidden;
}
.home-read-more {
  margin: 0 0 0 auto;
  position: relative;
}
.home-mod-title {
  background-color: var(--theme-dark);
  border-bottom: none;
}
.home-mod-title h2 {
  padding: 0.5rem 1rem 0.75rem;
  margin: 0 0;
  font-size: 1.6rem;
  line-height: 1.0;
  border-top: none;
  border-bottom: none;
  color: var(--theme-contrast);
}
/*.audio h3 {
  color: var(--theme-dark);
}*/
.home-mod-content img,
.home .newsflash img {
  display: block;
  margin: 0 auto;
}
.smt-footer img {
  display: block;
  margin: 0 auto 16px;
}
.home .items-leading .home-mod {
  border: none;
}
.home .items-leading .home-mod .home-mod-title,
.home .items-leading .home-mod .home-more {
  display: none;
}
.home .items-leading .home-mod .home-mod-content {
  padding: 0;
}
.home .items-leading h2{
  font-size: 2rem;
}
.sub-page-heading {
  background-color: var(--theme-contrast);
  padding: 6px 16px;
}
.other-events .blog-items,
.season-leaflets .blog-items {
 background-color: white;
 display: grid;
  column-gap: 1rem;
  row-gap: 0;
  grid-template-columns: repeat( auto-fit, minmax(250px, 1fr) );
  margin-bottom: 0;
}
.other-events .blog-items {
  grid-template-columns: repeat( auto-fit, minmax(500px, 1fr) );  
}
.sticky-notice-2 {
  padding: 0 0 0.3rem 0;
  display: inline;
  margin-left: auto;
  right: 0;
  text-align: center;
}
.col-6.quick-links {
  margin: 0;
  padding: 3px;
  text-align: center;
}
.whats-on,
.donate, 
.tickets, 
.mailing-list {
 background-color: var(--theme-dark);
}
.ticketsource-old {
  display: none;
}
.toplinks-row {
  float: right;
  text-align: right;
}
.toplinks {
  margin: 8px 0 0;
}
.toplinks,
.toplinks .sm {
  vertical-align: bottom;
  text-align: center;
}
.whats-on,
.donate,
.mailing-list,
.tickets {
  height: 40px;
  display: table-cell;
  vertical-align: middle;
}
a.whats-on,
a.donate,
a.mailing-list,
a.tickets {
  color: var(--theme-contrast);
  text-decoration: none;
  font-size: 0.75rem;
  font-weight: bold;
  white-space: nowrap;
  width: 75px;
}
.stickynotice {
  float: right;
  width: 100%;
}
.toplinks.sm img {
  padding: 0 4px;
}
.toplinks.sm:last-child img {
  padding: 0 0 0 4px;
}
.ticketsource-container {
  width: 100%;
  border: 2px solid var(--theme-medium);
  padding: 0 0 0.5rem;
}
.ticketsource-container h3 {
  color: white;
  padding: 0.5rem 1rem 0.75rem;
  margin: 0 0;
  font-size: 1.6rem;
  line-height: 1.0;
  background-color: var(--theme-medium);
}
.ticketsource-container h3 a {
  color: #fff;
  text-decoration: none;
}
.ticketsource-container h3 a:hover {
  text-decoration: underline;
}
.ticketsource-text {
  padding: 0.5rem 1rem;
}
.supp-three-cols {
  display: grid;
  column-gap: 1rem;
  row-gap: 0;
  grid-template-columns: repeat( auto-fit, minmax(270px, 1fr) );
  margin-bottom: 0;
}
.supporter-sub-head {
  border-bottom: 1px solid var(--theme-medium);
}
.supp-heading {
  border-bottom: solid 2px var(--light-grey);
  box-shadow: 0 2px 0 #fff;
  margin-bottom: 16px;
}
.supp {
  margin-bottom: 16px;
}
.a-a p {
  margin-bottom: 0;
}
a.privacy:hover {
  text-decoration: underline;
}

/* CONCERT BLOG AND MOD_SIDEBAR LAYOUT */
.image-shadow {
  box-shadow: 5px 5px 8px #676767;
}
/* youtube link */
.acf_yt {
  max-width: 100%;
}
.item-page .concert-extras p:only-child {
  padding-bottom: 0;
}
.concert-read-more .collapse:before {
  content:'Find out more &#187;';
  display:block;
  width:15px;
}
.concert-read-more button:before {
  content:'&#171; Close';
  display:block;
  width:15px;
}
.season {
  position: relative;
}
.season .item-content {
  border-bottom: 5px solid var(--theme-dark);
  margin-bottom: 2rem;
  position: relative;
}
.season .item-content:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 1px;
  width: calc(100% - 2px);
  height: 5px;
  box-shadow: 0 10px 10px rgba(180, 180, 185);
}
.season > .items-leading > [class^="leading-"] {
  position: relative;
  padding: 0 0 1rem;
}
.season > .items-leading > [class^="leading-"] .next,
.item-page.season .next{
  position: absolute;
  top: 45px;
  right: 10px;
  color: white;
  background-color: red;
  padding: 0 1rem;
}
.concert-title.row,
.concert.row {
  margin: 0;
  position: relative;
}
.concert-title.row [class^="col-"] {
  padding: 0;
}
.blog .concert-location,
.blog .concert-subheading {
  font-size: 1.25rem;
}
.home .sidebarleft .concert-location; {
  font-size: 1rem;
}
.col-sm-6.map {
  padding: 0 0.5rem 0 0;
}
.concert-time {
  border-bottom: 1px solid #434343;
}
p.mod-concert-time {
  margin-bottom: 0;
}
.event-tickets {
  border-bottom: 3px solid var(--theme-medium);
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.mod-concert-time .field-value,
.concert-time .field-value {
  color: color: var(--dark-grey);
  font-style: normal;
  font-weight: bold;
  padding: 0;
}
.concert-row .concert-image-wrapper {
  position: relative;
}
.concert-image {
  margin: 0 1rem 1rem 0;
}
.concert-image-row {
  position: relative;
  left: 0;
  top: 0;
}
.blog .concert-location,
.item-page .concert-location {
  margin-bottom: 1rem;
}
.concert-message:empty,
.leading-1 .next-concert,
.workshops:empty {
  display: none;
}
.concert-message {
  min-height: 1.75em;
  background: var(--mod-red);
  color: white;
  font-size: 1.25rem;
  font-weight: bold;
  margin: 0 8px 16px 0;
  padding: 0.25rem 1rem;
  top: 0;
  left: 0;
  text-align: center;
}
.home .concert-message {
  padding: 0.5rem 1rem 0.5rem;
  font-size: 1.75rem;
}
.season .concert-message,
.season .our-next-concert {
  position: absolute;
  top: 0;
  left: 0;
}
div.sidebar-mod.next-concert {
  height: 1.5rem;
  margin: 0;
}
div.sidebar-mod.next-concert span {
  display: inline;
  color: white;
  font-size: 1rem;
  font-weight: bold;
  font-style: normal;
  background: red;
  padding: 0.1rem .5rem .2rem 0.5rem;
}
/*.concert-programme p,
.concert-programme p:only-child {
    margin: 0;
    padding-bottom: 0;
  }*/
.concert-subheading {
  padding: 0 0 0.5rem;
  margin: 0 0 1rem;
  font-weight: bold;
  border-bottom: 2px solid var(--theme-light);
  overflow: hidden;
}
.newsflash .concert-subheading {
  margin: 0;
}
.concert-category .concert-subheading {
  border-bottom: 1px solid var(--theme-light);
}
p.concert-subheading:last-child {
  margin-bottom: 1rem;
}
button.concert-read-more {
  color: var(--link-blue);
  border: none;
  outline: none;
  padding: 0;
  background: none;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}
.concert-button button:after,
.concert-button button[aria-expanded="false"]:after{
  content: 'More info +';
  font-size: 1.25rem;
  cursor: pointer;
}
.concert-button button[aria-expanded="true"]:after{
  content: 'Close info \2013';
  cursor: pointer;
}
.concert-programme,
.concert-details,
.concert-map,
.video-col,
.concert-extras {
  margin: 0 0 1rem;
}
.concert-programme table {
  margin-bottom: 1rem;
}
.concert-programme td {
  vertical-align: top;
  padding: 0;
  border-bottom: 1px dotted var(--dark-grey);
}
.concert-programme td:first-child {
  padding-right: 1rem;
}
.item-page .concert-quotes,
.blog .concert-quotes {
  padding: 1rem;
  background-color: var(--lightest-grey);
  color: color: var(--dark-grey);
  margin: 0 0 1rem;
}
.blog .concert-quotes {
  margin: 0 0 1rem;
}
.blog .concert-quotes p:last-child,
.blog .concert-quotes p:only-child {
  padding-bottom: 0;
}
.item-page .concert-quotes:empty,
.blog .concert-quotes:empty,
.concert-extras:empty {
  display: none;
}
p.concert-tickets{
  margin-bottom: 0;
}
.link-to-performers,
.concert-link {
  margin: 0.5rem 1rem 0 0;
  padding-bottom: 1rem;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
}
.link-to-performers:last-child {
  margin-right: 0;
}
.link-to-performers a,
.concert-link a {
  padding: 4px 16px;
  border-radius: 5px;
  color: white;
  background-color: var(--medium-grey);
  text-decoration: none;
  margin-bottom: 1rem;
}
.link-to-performers a:after {
  content: " >>>";
}
.concert-sponsors-wrapper {
  margin-top: 1rem;
  padding-top: 0.5rem;
}
.concert-sponsors {
  position: relative;
  margin-bottom: 0.5rem;
}
.concert-sponsors-link {
  position: absolute;
  top: 25%;
  left: 15%;
}
.concert-sponsors-link a {
  height: 100px;
  color: transparent;
}
.concert-sponsors a:empty {
  display: none;
}
.concert-tickets {
  padding: 8px 8px 4px;
  background-color: var(--theme-medium);
  font-size: 1.2rem;
  color: #fff;
}
.ticket-prices {
  margin-top: 1rem;
}
.concert .buy-tickets {
  position: absolute;
  right: 15px;
  top: -20px;
  height: 88px;
  width: 118px;
}
.article-292 .buy-tickets {
  display: none;
}
.season .local-box-office {
  position: relative;
  margin-top: 1rem;
}
.season .local-box-office:before {
  content: '';
  position: absolute;
  top: -1rem;
  left: 1rem;
  width: calc(100% - 2rem);
  border-top: 2px dotted #313131;
}
.season.local-box-office strong {
  color: color: var(--dark-grey);
}
/* for end-of-season article in concerts blog */
.item-page.article-241 .image-sub-prog,
.item-page.article-241 .concert-title,
.item-page.article-241 .concert.quotes-extras,
.item-page.article-241 .concert.g-map,
.item-page.article-241 .concert-row.tickets,
.item-page.article-241 .workshops,
.item-page.article-241 .concert-sponsors-wrapper,
.item-page.article-241 .concert-info {
  display: none;
}
.season-leaflets .item-content {
  padding-top: 16px;
}
.covid-guidance a,
.mod-articles-category-title {
    color: color: var(--dark-grey);
    text-decoration: none;
  }
.sidebarright_moduletable_covid-mod {
  padding: 0.75rem 1rem 0;
  font-weight: bold;
}
.featured .concert-intro-text span.field-value {
  font-weight: bold;
  color: color: var(--dark-grey);
  padding: 0;
}
.not-featured .mod-concert-time .field-value,
.not-featured .concert-intro-text span.field-value,
.not-featured .mod-articles-category-title {
  color: var(--medium-grey);
  font-weight: normal;
  padding: 0;
}
.season .next-concert-featured {
  text-align: center;
  color: red;
}
.season .leading-1 .next-concert-featured {
  display: none;
}
.concert-article-link {
  text-align: center;
  margin: 0.5rem 0 0;
}
.concert-read-only .items-leading > [class^="leading-"] {
  display: none;
}
.alt-concert-map p > iframe,
.concert-map iframe {
 width: 100%;
 height: 450px;
 max-height: 450px;
}
.concert-map iframe {
 max-width: 600px;
}
.concert-table { /* for programmes */
  margin-left: 32px;
}
.blog.season .items-leading [class^="leading-"] .page-header h2,
.blog.season .item.column-1 .page-header h2 {
 background-color: var(--theme-medium);
 padding: 0.25rem 0.5rem 0.5rem;
}
.blog.season .item.column-1 h2 {
  font-size: 1.75rem;
}
.blog.season .items-leading [class^="leading-"] .page-header h2 a,
.blog.season .item.column-1 .page-header h2 a{
 color: white;
}
.next-concert-holder:empty,
.next-concert:empty,
.concert.row:empty,
.concert-quotes:empty,
.concert-extras:empty,
.season .local-box-office:empty,
.link-to-performers:empty,
.video-col:empty,
.video-col.col-lg-7:blank {
  display: none;
}
div.concert-extras.col-md:empty,
div.concert-quotes.col-md:empty,
.leading-0 .next-concert:empty,
div.sidebar-mod.next-concert:empty,
.season .next-concert:empty,
.concert-divider.row ~ .concert.row:empty,
div.local-box-office.col-md:empty,
div.local-box-office.col-md:empty:before,
.quotes-bg:empty {
  display: none;
}
.season-sidebar-two-cols .sidebarright_moduletable_content {
    columns: 2 245px;
    column-gap: 15px;
}
.news .item-main-content img,
.news .com-content-article__body img {
  float: left;
  margin: 0 16px 16px 0;
}
/* Editor */
div .form-grid input {
 border: 2px inset var(--dark-grey);
}
.field-media-wrapper div input {
  margin-right: 12px;
}
/* all min-width 576px from here */
@media only screen and (min-width: 576px){
  .container{
    max-width: 767.999999px;
  }
  .col-sm-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .d-sm-none{
  display: none;
  }
  .d-sm-block {
    display: block;
  }
  .d-sm-inline {
    display: inline;
  }
  .d-sm-inline-block {
    display: inline-block;
  }
  .logo-circle {
    height: 110px;
    width: 110px;
  }
  .logo-text {
    background: url(/images/general/smt-logo-text-70-x-70-2324.png) no-repeat 17px 20px;
    background-size: 70px 70px;
    height: 110px;
    width: 110px;
  }
  a.whats-on,
  a.donate,
  a.mailing-list,
  a.tickets {
    font-size: 1rem;
    width: 110px;
  }
  .whats-on,
  .donate,
  .mailing-list,
  .tickets {
    height: 40px;
  }
  .logo-box img {
    width: 110px;
    height: 110px;
  }
  .skip, .skip-two {
    top: 0.25rem;
  }
  .skip a, .skip-two a {
    text-decoration: underline;
  }
}
/* all min-width 768px from here */
@media only screen and (min-width: 768px){
  .container {
    max-width: 991.999999px;
  }
  .d-md-flex {
    display: flex;
  }
  .d-md-none{
  display: none;
  }
  .d-md-block {
    display: block;
  }
  .d-md-inline {
    display: inline;
  }
  .d-md-inline-block {
    display: inline-block;
  }
  .col-md {
    flex: 1;
    max-width: 100%;
  }
  .col-1 {
    flex: 1 0 8.8888883%;
    max-width: 8.8888883%;
  }
  .col-md-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-md-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-md-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-md-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .w-50 {
    width: 50%;
  }
  .w-25 {
    width: 25%;
  }
  .masonry-2,
  .columns-2 {
    column-count: 2;
  }
  .masonry-3,
  .columns-3 {
    column-count: 2;
  }
  .masonry-4,
  .columns-4 {
  column-count: 3;
  }
  [class^="col-"] {
    padding: 0 0.5rem;
  }
  [class^="col-"]:first-of-type {
    padding-left: 0;
    padding-right: 0.5rem;
  }
  [class^="col-"]:last-of-type {
    padding-right: 0;
    padding-left: 0.5rem;
  }
  [class^="col-"]:only-child {
    padding-right: 0;
    padding-left: 0;
  }
  [class^="col-"].contentleft {
    padding: 0;
  }
  .middlewrapper {
    min-height: 1000px;
  }
  .col-md.contentleft {
    padding-right: 0;
    margin-bottom: 16px;
  }
  .col-md.contentright {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
  }
  .contentboth {
    padding-left: 0;
    padding-right: 0;
  }
  .leftsidebar {
    margin-left: 0;
    padding: 0.5rem 1rem 0;
  }
  .rightsidebar {
    padding: 0.5rem 1rem 1rem 1rem;
  }
  .sidebarright {
    margin: 0 0 16px 0;
  }
  .sidebarright:last-child {
    margin: 0;
  }
  .col-12.no-sidebar {
    padding: 0;
  }
  .logo-box img {
    height: 110px;
    width: 110px;
  }
  .home-inner .col-md-5 {
    padding: 0 16px 0 0;
  }
  .home-col-container {
   background-color: white;
   display: grid;
    column-gap: 1.5rem;
    row-gap: 0.5rem;
    grid-template-columns: repeat( auto-fit, minmax(350px, 1fr) );
    margin-bottom: 0;
  }
  .featurebottom,
  .featuretop {
    padding: 0 0.5rem 0;
  }
  .featurebottom:first-child,
  .featuretop:first-child {
    padding-left: 0;
  }
  .featurebottom:last-child,
  .featuretop:last-child {
    padding-right: 0;
  }
  .footer-one [class^="col-"]:first-child,
  .footer-two [class^="col-"]:first-child,  
  [class^="col-"].md-menu-outer:first-child {
    padding-left: 0;
  }
  .footer-one [class^="col-"]:last-child,
  .footer-two [class^="col-"]:last-child {
    padding-right: 0;
  }
  .footer-text {
    margin-bottom: 0;
  }
  .footer .footer_moduletable,
  .footer .footer_moduletable:last-child {
    padding: 0.25rem 0 0.75rem;
  }
  .blog .blog-item.col-md-4,
  .blog .blog-item.col-md-6 {
    padding: 0 0.5rem 1rem;
  }
  .blog .blog-item.col-md-4:first-child,
  .blog .blog-item.col-md-6:first-child,
  .blog .blog-item.col-md-6:nth-child(odd),
  .blog .blog-item.col-md-4:nth-child(3n + 1){
    padding-left: 0;
  }
  .blog .blog-item.col-md-4:nth-child(3n),
  .blog .blog-item.col-md-6:nth-child(2n){
    padding-right: 0;
  }
  .error {
    min-height: 400px;
  }
  .blog.concert-quotes {
   margin: 0 0 1rem 1rem; 
  }
  .season .link-to-performers {
    margin: 0.5rem 1rem 0 0;
  }
  .footer .sponsor-text {
    text-align: right;
  }
  .footer .sponsor-image {
    float: right;
  }
  .footer .sponsor {
    padding-top: 0;
  }
  .sign-up {
    position: absolute;
    right: 1rem;
    top: 0.5rem;
  }
  .last {
    padding-bottom: 200px;
  }
}
@media only screen and (max-width: 991.999999px){
  .search .js-finder-search-query.form-control {
    max-width: 118px;
  }
}
/* all min-width 992px from here */
@media only screen and (min-width: 992px){
  .container {
    max-width: 1199.999999px;
  }
  .col-lg-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .masonry-2,
  .columns-2 {
    column-count: 2;
  }
  .masonry-3,
  .columns-3 {
    column-count: 3;
  }
  .masonry-4,
  .columns-4 {
    column-count: 4;
  }
  .d-lg-none{
  display: none;
  }
  .d-lg-block {
    display: block;
  }
  .d-lg-inline-block {
    display: inline-block;
  }
  .d-lg-inline {
    display: inline;
  }
  .fixed-header {
    height: 164px;
  }
  .logo {
    position: unset;
  }
  .header-sitetitle {
    font-size: 1.75rem;
    line-height: 1.75rem;
    margin-bottom: 0.5rem;
  }
  .header-sitesubtitle {
    font-size: 1.2rem;
  }
  .mainmenu-wrapper {
    max-height: 44px;
  }
  .main-menu {
    background-color: transparent;
    padding: 0;
    width: 100%;
  }
  .mm .menucontent.menu-a {
    display: flex;
    flex-direction: row;
    height: 44px;
    margin: 0 auto;
    position: relative;
    padding: 0 1rem 0 0;
    justify-content: flex-end;
    width: 100%;
  }
  .mm li {
    width: unset;
    min-height: 44px;
    max-height: 44px;
  }
  .mm li:not(.top-level) {
    padding: 0;
  }
  .mm .menucontent.menu-a li ul li {
    display: block;
  }
  .mm .menu-a > li:first-child,
  .closenavbtn,
  .trigram,
  .trigramborder,
  .sidenav,
  .sidenav-opened {
    display: none;
    width: 0;
  }
  .closebtn,
  .mm li .v-open-icon {
    display: none;
    visibility: hidden;
  }
  .mm [type="button"].opened ~ ul.level-1 {
    position: fixed;
    top: 164px;
    background-color: #fff;
    box-shadow: 0 2px 5px #acaaaa;
    display: flex;
    flex-direction: column;
    height: auto;
/*    overflow-y: scroll;*/
    margin: 0 0 0 16px;
    max-height: calc(100vh - 164px);
    width: min-content;
    z-index: 99;
  }
  .mm li:last-child [type="button"].opened ~ ul.level-1 {
    right: 16px;
  }
  .mm li {
    border-top: none;
  }
  .mm li.top-level button {
    padding: 0 6px;
    max-height: 44px;
  }
  .mm > li ul {
    position: absolute;
    top: 100%;
    display: block;
  }
  .mm li a,
  .mm li span {
    color: var(--dark-grey);
    white-space: nowrap;
    font-size: 0.9rem;
  }
  .mm li .h-open-icon {
    display: inline;
    font-size: 1rem;
    padding: 0 0 0 0.25rem;
  }
  .mm li.top-level:last-child button {
    padding: 0 1rem 0 6px;
  }
  .mm li > a:hover,
  .mm li > button:hover span {
    font-weight: normal;
    color: #fff;
  }
  .mm div [class^="ul level"] {
    background-color: #fff;
    margin-bottom: 0;
    padding: 0;
  }
  .mm > li > ul {
    margin-top: 0;
    box-shadow: 0 2px 5px #acaaaa;
    padding: 0;
  }
  .mm li.top-level > button:hover a,
  .mm li.top-level > button:hover span {
    font-weight: normal;
  }
  .mm li.current:not(.top-level) a {
    font-weight: bold;
  }
  .top-spacer {
    margin-top: 164px;
  }
  .header-sitetitle {
    font-size: 2rem;
  }
  .mainContent {
    min-height: 1000px;
    margin-top: 164px;
  }
  .contentright{
    padding-right: 0;
  }
  .contentleft {
    margin-bottom: 0;
  }
  .leftsidebar {
    margin-right: 16px;
  }
  .middlewrapper {
    padding-bottom: 16px;
  }
  .item-page .concert .buy-tickets {
    right: 30%;
    top: 0;
  }
  .item-content.full figure,
  .item-page.reviews figure,
  .item-page.news figure {
    min-height: 300px;
  }
  .blog .concert .buy-tickets {
    right: 10%;
    top: 0;
  }
/*  .home .newsflash .concert-image-img,*/
  .concert-image {
    float: left;
    margin: 0 1rem 1rem 0;
  }
  .concert-title.row [class^="col-"],
  .concert-row.row [class^="col-"] {
    padding: 0 0.5rem;
  }
  .concert-title.row [class^="col-"]:first-child,
  .concert-row.row [class^="col-"]:first-child {
    padding-left: 0;
  }
  .concert-title.row [class^="col-"]:last-child,
  .concert-row.row [class^="col-"]:last-child {
    padding-right: 0;
  }
  .season .concert-extras.col-md {
    margin-left: 16px;
  }
  .skip, .skip-two {
    display: none;
  }
  .toplinks.pad {
    display: inline-block;
    text-align: center;
    vertical-align: bottom;
    white-space: nowrap;
    margin: 12px 8px 0 0;
  }
  .toplinks.sm {
    margin: 12px 0 0 0;
  }
  .ticketsource-old {
    display: inline-block;
  }
  .whats-on,
  .donate,
  .mailing-list,
  .tickets {
    margin: 0;
  }
/*  .leftsidebar {
    margin: 0 16px 0 0;
    padding: 8px 16px 16px;
  }
  .rightsidebar {
    margin: 0 0 16px 16px;
    padding: 8px 16px 0;
  }*/
/*  .grey-panel {
    display: block;
    margin-top: 16px;
  }*/
  .associate .grey-panel {
    display: none;
  }
  .home .home-inner-two {
    margin-top: 1rem;
  }
  .home .concert-location {
    margin-bottom: 0;
  }
  .home div.concert-subheading {
    height: 100%;
  }
}
/* all min-width 1200px from here */
@media only screen and (min-width: 1200px){
  .container {
    max-width: 100%;
  }
    .col-xl-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-xl-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-xl-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-xl-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .d-xl-none {
  display: none;
  }
  .d-xl-block {
    display: block;
  }
  .d-xl-inline {
    display: inline;
  }
  .d-xl-inline-block {
    display: inline-block;
  }
  .mm .menucontent.menu-a {
   padding: 0;
  }
  .mm li.top-level:last-child button {
    padding: 0 0 0 6px;
  }
  .mainmenu-wrapper,
  .search-wrapper,
/*  .fixed-header-inner,*/
  .upperwrapper,
  .middlewrapper,
  .lowerwrapper {
/*   width: 80%;
   max-width: 1400px; /*1268px;*/ /*1300px;*/
   }
  /* if white body background: */
  .fixed-header-inner,
  .mainmenu-wrapper {
    width: 80%;
    max-width: 1368px; /*1236px;*/
    padding: 0 16px;
  }
  /* END if white body background: */
  .fixed-header-inner,
  .header-row {
    height: 120px;
  }
  .mainmenu-wrapper {
    margin: 0 auto;
  }
  .upperwrapper .with-border,
  .middlewrapper .with-border,
  .lowerwrapper .with-border {
   max-width: 1400px /*1332px;*/
   }
  .col-xs.topheader {
    padding-right: 0;
  }
  .mm li:last-child [type="button"].opened ~ ul.level-1 {
    right: unset;
  }
  .logo {
    padding-left: 0;
  }
  .com-content-category-blog {
    padding: 0;
  }
  .with-border .footer-wrapper {
   width: 80%;
   max-width: 1332px;
   }
  .copy {
    padding-right: 0;
  }
  .top-spacer {
    margin-top: 180px;
  }
  .copy {
    padding: 1rem 0;
  }
  .col-md.contentboth {
    padding-left: 0;
    padding-right: 0;
  }
  .leftsidebar {
    margin: 0 16px 16px 0;
    padding: 8px 16px 16px;
  }
  .rightsidebar {
    margin: 0 0 16px 16px;
    padding: 8px 16px 0;
  }
}
@media only screen and (min-width: 1400px){
  .logo-circle {
    height:149px;
    width:149px;
  }
  .logo-text {
    background: url(/images/general/smt-logo-text-100-x-100-2324.png) no-repeat 21px 28px;
    background-size: 100px 100px;
    height: 149px;
    width: 149px;
  }
}
div.com-users-login__submit.control-group > .controls > button.plg_system_webauthn_login_button {
  display: none;
}
.other-events .item-main-content {
  display: none;
  padding: 0;
}
.other-events ul {
  list-style: none;
  padding: 0 0 8px;
  margin: 0;
}
.other-events li {
  padding: 0 16px;
/*  margin: 0 -16px;*/
}
.other-events ul li.event-title {
  background: var(--theme-light);
  font-size: 1.2rem;
  line-height: 1.1;
  margin: 0 0 8px;
  padding: 8px 16px;
}
span.event-title-value,
.event-date-label,
.event-location-label,
.event-ticket-price-label,
.event-ticket-from-label,
.event-further-booking-info-label,
.event-website-label,
.event-programme-label {
 font-weight: bold;
}
.event-programme {
  margin-top: 16px;
}
[class^="event-"]::empty {
  display: none;
}
.other-events #publishing .control-group:nth-child(3),
.other-events #publishing .control-group:nth-child(4),
.other-events #publishing .control-group:nth-child(5),
.other-events #publishing .control-group:nth-child(6),
.other-events #publishing .control-group:nth-child(7),
.other-events #publishing .control-group:nth-child(8),
.other-events #publishing .control-group:nth-child(9),
.other-events #publishing .control-group:nth-child(10) {
  display: none;
}
.other-events #com-content-form > #editor .control-group:nth-child(2) {
  display: none;
}
.debug {
  margin-bottom: 16px;
}
.other-events span.field-label {
  width: 25%;
  display: inline-block;
  vertical-align: top;
}
.other-events span.field-value {
  width: 70%;
  display: inline-block;
}
.other-events .event-title span.field-value {
  width: 100%;
}
.system-unpublished .col.home-mod {
  background-color: var(--light-grey);
}
/* EDITOR LOGIN */
.mod-login .form-control,
.mod-login .input-group,
#com-users-login__form .form-control,
#com-users-login__form .input-group {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  position: relative;
  margin-bottom: 1rem;
}
.mod-login .form-control.validate-username,
#com-users-login__form .form-control.validate-username {
  width: 100%;
  box-sizing: border-box;
}
.mod-login .input-group > .form-control,
.mod-login .form-control.validate-username,
#com-users-login__form .input-group > .form-control,
#com-users-login__form .form-control.validate-username {
  flex: auto;
}
.mod-login .mod-login__username input,
.mod-login .mod-login__password input,
#com-users-login__form #username,
#com-users-login__form #password {
  border: 1px solid var(--light-grey);
  border-radius: 0.4rem;
  padding: 0.6rem 1rem;
  line-height: 1.5;
  margin-bottom: 0;
}
.mod-login .mod-login__username .input-group-text {
  display: none;
}
.mod-login #password,
#com-users-login__form #password {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.mod-login .input-password-toggle,
#com-users-login__form .input-password-toggle {
  border: 1px solid var(--light-grey);
  border-radius: 0.4rem;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left: 0;
  line-height: 1.5;
  margin-left: -1;
  padding: 0rem 1rem;
}
.mod-login .com-users-login__submit .btn.btn-primary,
#com-users-login__form .com-users-login__submit .btn.btn-primary {
  margin: 1rem 0;
  font-size: 1.25rem;
  padding-bottom: 3px;
}
.btn.btn-secondary.plg_system_webauthn_login_button {
  border: 1px solid var(--light-grey);
  border-radius: .25rem;
  line-height: 1.5;
  margin: 1rem 0;
  text-align: center;
  vertical-align: middle;
}
.plg_system_webauthn_login_button svg {
  width: 30px;
  margin: 4px;
  vertical-align: middle;
}
.btn.btn-secondary.plg_system_webauthn_login_button {
    display: none;
}
.editor-cat-list .float-start {
  float: none;
  }
.editor-cat-list .alert .alert-info {
  display: block;
  margin: 2rem 0;
  border: 1px solid red;
}
.modnewshome-container,
.modcat-sidebar-container {
  display: grid;
  column-gap: 1rem;
  row-gap: 0.5rem;
  grid-template-columns: repeat( auto-fit, minmax(200px, 1fr) );
  margin-bottom: 0;
}
.modnewshome-container {
   grid-template-columns: repeat( auto-fit, minmax(200px, 1fr) ); 
}