@import url("https://use.typekit.net/ddv1zsn.css");
/* Normalize CSS */
html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    box-sizing: border-box;
}
body {
    margin: 0;
    font-family: myriad-pro,sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    background:#f3f9fd;
    overflow: hidden;
}

html, body {
  scrollbar-face-color:#6c3681;
  scrollbar-arrow-color:#fff;
  scrollbar-track-color:#b47cc9;
  scrollbar-shadow-color:#6c3681;
}
::-webkit-scrollbar {
  width: 10px;

  background: transparent;
}
::-webkit-scrollbar-thumb {
  border-radius: 2px;
  background: #6c3681;
}
* {
  box-sizing:inherit;
  font-family: myriad-pro,sans-serif;
}
h1, h2, h3, h4, p, blockquote, figure, ol, ul {
  margin: 0;
  padding: 0;
}
main, li {
  display: block;
}
/* h1, h2, h3, h4 {
  font-size: inherit;
} */
.noselect {
  -webkit-user-select: none;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
}
.hidden {
  display:none;
}
strong {
  font-weight: bold;
}
a, button {
  color: inherit;
  transition: 0.3s;
}
a {
  text-decoration: none;
}
button {
  overflow: visible;
  border: 0;
  font: inherit;
  -webkit-font-smoothing: inherit;
  letter-spacing: inherit;
  background: none;
  cursor: pointer;
}
::-moz-focus-inner {
  padding: 0;
  border: 0;
}
:focus {
  outline: 0;
}
img {
  max-width: 100%;
  height: auto;
  border: 0;
}
input:required:invalid {
  outline: none;
}
/* End Normalize CSS */
.header {
  position: fixed;
  width:100%;
  z-index: 50;
  height: 152px;
  background: white;
  border-top: 16px solid #2a3578;
  border-bottom: 8px solid #fdb716;
  background-image: url(../images/header-bg.svg);
  background-repeat: repeat-x;
  background-size: contain;
}

/* Special CSS to make header work in IE11 */

_:-ms-fullscreen, :root .header {
  position: fixed;
  width:100%;
  z-index: 50;
  height: 152px;
  background: white;
  border-top: 16px solid #2a3578;
  border-bottom: 8px solid #fdb716;
  background-image: url(../images/header-bg.png);
  background-repeat: repeat-x;
}

.menuLinks {
  font-size:32px;
  text-transform: uppercase;
  color:#2a3578;
  font-weight: bold;
  position: relative;
  padding-left:20px;
}

.menuLink {
  position: relative;
  bottom: -10px;
  cursor: pointer;
  margin-right: 40px;
}
.content {
  display:-ms-grid;
  display:grid;
  position: relative;
  top:152px;
  -ms-grid-columns: 600px 600px;
  grid-template-columns: 600px 600px;
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
  width:1200px;
  background:#fff;
  margin:0 auto;
  height:900px;
}
.left {
  padding-top: 18px;
  padding-left: 16px;
  padding-right: 8px;
}
.right {
  padding-top: 18px;
  padding-left: 8px;
  padding-right: 16px;
  margin-bottom: 60px;
  position: relative;
}
.topRight {
  margin-top:8px;
  margin-left:-15px;
  margin-right:15px;
  display:-ms-grid;
  display:grid;
  -ms-grid-rows: 50% 50%;
  grid-template-rows: 50% 50%;
  height:420px;
}
.topRightTop, .topRightBottom {
  display:-ms-grid;
  display:grid;
  -ms-grid-columns: 50% 50%;
  grid-template-columns: 50% 50%;
}
.btn {
  border-radius:10px;
  margin:10px;
  text-align: center;
  cursor: pointer;
  -webkit-transition: background 0.3s, color 0.3s;
  -o-transition: background 0.3s, color 0.3s;
  transition: background 0.3s, color 0.3s;
}
.btn:hover {
  background:#7f3f97;
  color:#ffffff;
}
.blue {
  background:#649ce5;
}

.turquoise {
  background:#00c4c4;
}
.yellow {
  background:#fdb716;
}
.green {
  background:#93e62b;
}
.buttonIcon {
  padding-top:15px;
}
.buttonCaption {
  padding-top:10px;
  font-size:1.3em;
  line-height:1.1em;
  font-weight:600;
}
.eventsContainer {
/*   height:330px;
  overflow: hidden;
  overflow-y:scroll; */
}
.eventsHeader {
  font-size: 28px;
  font-weight: bold;
}
.eventsAt {
  position: relative;
  bottom:3px;
}
#location {
  -webkit-appearance: none;
  appearance: none;
  width:155px;
  padding:2px 0px 3px 8px;
  position: absolute;
  right:6px;
  bottom:3px;
  font-size:1.2em;
  border:1px solid #ccc;
  border-radius:5px;
  background: #2a3578;
  color:#fff;
  cursor: pointer;
}
#location::-ms-expand {
  display: none;
}
#location option {
  background:#fff;
  color: #2a3578;
}
#location option:hover {
  background:#fff;
}
_:-ms-fullscreen, :root #location {
  width:155px;
  position: absolute;
  right:6px;
  bottom:3px;
}
.locFA {
  position: absolute;
  top:10px;
  right:13px;
  pointer-events:none;
  color:#fff;
}
.eventsHeaderRow {
  position: relative;
  margin-top:10px;
  width:100%;
  margin-bottom:5px;
}
.events {

}
.btn-more {
  display:inline-block;
  padding:8px 16px;
  font-size:20px;
  background:#2a3578;
  color:#fff;
  margin-top:5px;
  margin-left:20px;
  cursor: pointer;
  border-radius: 4px;
  text-transform: uppercase;
  -webkit-transition: background ease-in-out 250ms;
  -o-transition: background ease-in-out 250ms;
  transition: background ease-in-out 250ms;
}
.btn-more:hover {
  background:#7f3f97;
  color:#ffffff;
}
.banner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px 16px;
  padding: 0 1.6rem 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
      flex-direction: row;  -ms-flex-wrap: wrap;  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  pointer-events:none;
}
.logo {
  background-image: url(../images/logo_treatment.png);
  background-size: cover;
  background-position: 50% 100%;
  overflow: visible;
  padding: 1%;
  margin-left: .5%;
  margin-right: .5%;
  width:37%;
  pointer-events: auto;
}
.bannerRight {
  display:-ms-grid;
  display:grid;
  -ms-grid-rows: 50px 50px 50px;
  grid-template-rows: 50px 50px 50px;
  height:152px;
  width:61%;
  position: relative;
  top:-16px;
}
.bannerRight div {
  width:100%;
}
.bannerRight div:nth-child(1) {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
}
.bannerRight div:nth-child(2) {
  -ms-grid-column: 1;
  -ms-grid-row: 2;
}
.bannerRight div:nth-child(3) {
  -ms-grid-column: 1;
  -ms-grid-row: 3;
}
.searchRow {
  display:-ms-grid;
  display:grid;
/*   -ms-grid-columns: 150px 420px 1fr; */
  -ms-grid-columns: 610px 1fr;
/*   grid-template-columns: 150px 460px 1fr; */
  grid-template-columns: 610px 1fr;
  pointer-events: auto;
}
.searchRow div:nth-child(1)  {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
}
.searchRow div:nth-child(2)  {
  -ms-grid-column: 2;
  -ms-grid-row: 1;
}
/* .searchRow div:nth-child(3)  {
  -ms-grid-column: 3;
  -ms-grid-row: 1;
} */
.catSearch {
  width:calc(100% - 30px);
  margin-top:6px;
  border-radius:4px;
  border:none;
  font-size:18px;
  padding:6px 0 3px 15px;
  margin-left:25px;
  color:#333333;
}
.searchButton {
  display:inline-block;
  background: #e3e3e3;
  color: #2a3578;
  font-size:16px;
  font-weight:600;
  text-transform: uppercase;
  /* width: auto !important; */
  margin:6px 0 0 18px;
  padding:5px 13px 5px 12px;
  border: 1px solid #ccc;
  border-radius:2px;
  height:32px;
  width:130px !important;
  position: relative;
}
.searchArrow {
  margin:0 0 -2px 18px;
}
.searchIcon {
  position: absolute;
  right:15px;
  bottom:5px;
}
.findButton {
  display:inline-block;
  background: #2a3578;
  color:#fff;
  font-size:16px;
  font-weight:600;
  text-transform: uppercase;
  width: auto !important;
  margin:6px 0 0 6px;
  padding:6px 40px;
  border-radius:4px;
  cursor: pointer;
}
.slider {
  border-radius:8px;
  width:100%;
  overflow:hidden;
  margin-top:45px;
  background:#e3e3e3;
  border:1px solid #ccc;
  color:#333333;
  margin-bottom:20px;
}
.summerwrapper {
  display: none;
  background: -webkit-radial-gradient(#6899CA,#396A9C);
  background: -o-radial-gradient(#6899CA,#396A9C);
  background: radial-gradient(#6899CA,#396A9C);
  color:white;
}
.sliderTitle {
  border-bottom:1px solid black;
  text-align: center;
  padding:20px 0 20px 0;
  margin-right:10px;
  margin-left:10px;
  text-transform: uppercase;
}
.sliderContent {
  padding:10px 0 0px 0;
}
.searchContent {
  display:-ms-grid;
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  -ms-grid-columns:1fr 1fr 1fr;
  padding: 10px 10px;
}
.searchContent div:nth-child(1)  {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
}
.searchContent div:nth-child(2)  {
  -ms-grid-column: 2;
  -ms-grid-row: 1;
}
.searchContent div:nth-child(3)  {
  -ms-grid-column: 3;
  -ms-grid-row: 1;
}
.summerContent {
  font-size:1.5em;
  font-weight: 100;
  padding:20px 20px 42px 20px;
  text-align: center;
}
.srbuttonRow {
  margin-top:45px;
  text-align: center;
}
.srbutton {
  font-size:0.8em;
  position: relative;
  display: inline-block;
  background: #7f3f97;
  color: #fff;
  font-weight: 400;
  border-radius: 6px;
  padding: 0.8em;
  outline: 0;
  -webkit-transition: background-color .25s ease-in-out;
  -o-transition: background-color .25s ease-in-out;
  transition: background-color .25s ease-in-out;
  text-align:left;
  cursor: pointer;
}
.srbutton {
  background:#7f3f97;
  z-index:0;
}
.srbutton:hover {
  background:#6c3681;
}

.srbutton.alt {
  background: #f1f1f1;
  color: #444;
}


h2 {
  margin:6px 15px;
  text-transform: uppercase;
}
.loader {
  height:40px;
  line-height:40px;
  vertical-align: middle;
  padding-left:25px;
  cursor: pointer;
  -webkit-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
}
.loader:hover {
  background:rgba(127,63,151,0.5);
}
.linkIcon {
  margin-right:10px;
  vertical-align: middle;
  color:#7f3f97;
}
.linkTitle {
  font-size:1.1em;
  line-height:1.1em;
  font-weight: bold;
  margin-right:10px;
}
.link:hover {

}
.event {
  display:-ms-grid;
  display:grid;
  -ms-grid-columns: 6px 80px 318px;
  grid-template-columns: 6px 80px 318px;
  margin-bottom:12px;
  margin-left:20px;
}
.event div:nth-child(1)  {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
}
.event div:nth-child(2)  {
  -ms-grid-column: 2;
  -ms-grid-row: 1;
}
.event div:nth-child(3)  {
  -ms-grid-column: 3;
  -ms-grid-row: 1;
}
.allAges {
  background:#417cbd;
}
.birthPK {
  background:#fdb716;
}
.kids {
  background:#7f3f98;
}
.teens {
  background:#99cb5b;
}
.adults {
  background:#2a3579;
}
.unknown {
  background: #353839;
}
.eventColor {
  border-radius:4px;
}
.eventDate {
  text-align: center;
}
.eventTitle {
  color:#2a3578;
  font-weight: bold;
  cursor: pointer;
  font-size:24px;
  line-height: 28px;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
}
.eventTitle:hover {
  text-decoration: underline;
}
.eventTime {
  position: relative;
  top:-5px;
  font-size:16px;
  line-height:24px;
  height:24px;
  font-weight:100;
}
.eventDateMonth {
  font-size:20px;
  line-height: 20px;
  font-weight: 700;
}
.eventDateDayNum {
  font-size: 41px;
  font-weight: bold;
  line-height: 28.7px;
}
.eventDateDay {
  font-size: 12px;
  font-weight: 400;
  line-height: 24.4px;
}
.eventBranch {
  position: relative;
  top:-5px;
  color: #333333;
}
.eventBranchStrong {
  font-weight: 700;
}

/* Event loading placeholder */


@-webkit-keyframes placeHolderShimmer{
  0%{
      background-position: -468px 0
  }
  100%{
      background-position: 468px 0
  }
}


@keyframes placeHolderShimmer{
  0%{
      background-position: -468px 0
  }
  100%{
      background-position: 468px 0
  }
}

.event__preload {
  height:72px;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-name: placeHolderShimmer;
          animation-name: placeHolderShimmer;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  background: #f6f7f8;
  background: -webkit-gradient(linear, left top, right top, color-stop(8%, #cccccc), color-stop(18%, #dddddd), color-stop(33%, #cccccc));
  background: -webkit-linear-gradient(left, #cccccc 8%, #dddddd 18%, #cccccc 33%);
  background: -o-linear-gradient(left, #cccccc 8%, #dddddd 18%, #cccccc 33%);
  background: linear-gradient(to right, #cccccc 8%, #dddddd 18%, #cccccc 33%);
  background-size: 800px 104px;
  position: relative;
  margin-bottom:12px;
  margin-left:20px;
}
.gapfill {
  position: absolute;
  right: 0;
  width: 20px;
  top: 0px;
  height: 72px;
  background: white;
}
.leftBar-mask {
  top:0px;
  height:5px;
  left:6px;
  right:0;
}