﻿/*
-------------------------------------------------------------------------------------------------------------
SCSS Mixins
-------------------------------------------------------------------------------------------------------------
*/
@import url("https://fonts.googleapis.com/css?family=Nova+Oval&display=swap");
@import url("https://fonts.googleapis.com/css?family=Abril+Fatface&display=swap&subset=latin-ext");
@import url("https://fonts.googleapis.com/css?family=Josefin+Sans&display=swap&subset=latin-ext");
@import url("https://fonts.googleapis.com/css?family=Sriracha&display=swap");
@import url("https://fonts.googleapis.com/css?family=Salsa&display=swap");
@font-face {
  font-family: 'Gotham-Book';
  src: url("/sites/MarinFairW3/fonts/2020/Gotham-Book.otf"); }

@font-face {
  font-family: 'Gotham-Light';
  src: url("/sites/MarinFairW3/fonts/2020/Gotham-Light.otf"); }

@font-face {
  font-family: 'Gotham-Medium';
  src: url("/sites/MarinFairW3/fonts/2020/Gotham-Medium.otf"); }

@font-face {
  font-family: 'GothamNarrow-Black';
  src: url("/sites/MarinFairW3/fonts/2020/GothamNarrow-Black.otf"); }

@font-face {
  font-family: 'GothamNarrow-Book';
  src: url("/sites/MarinFairW3/fonts/2020/GothamNarrow-Book.otf"); }

@font-face {
  font-family: 'GothamNarrow-Thin';
  src: url("/sites/MarinFairW3/fonts/2020/GothamNarrow-Thin.otf"); }

@font-face {
  font-family: 'GothamNarrow-Ultra';
  src: url("/sites/MarinFairW3/fonts/2020/GothamNarrow-Ultra.otf"); }

@font-face {
  font-family: 'Gotham-Thin';
  src: url("/sites/MarinFairW3/fonts/2020/Gotham-Thin.otf"); }

@font-face {
  font-family: 'Gotham-Ultra';
  src: url("/sites/MarinFairW3/fonts/2020/Gotham-Ultra.otf"); }

@font-face {
  font-family: 'championregular';
  src: url("/sites/MarinFairW3/fonts/2020/championregular.ttf"); }

/*
-------------------------------------------------------------------------------------------------------------
Global classes - 2020
-------------------------------------------------------------------------------------------------------------
*/
html {
  /*     background-color: #e3eef7; */
  background-color: #EBF2ED; }

body {
  font-family: GothamNarrow-Book, Arial, sans-serif;
  font-size: 16px;
  color: #000000;
  text-align: left;
  line-height: 1.4;
  font-size: 1.2em; }

h1 {
  /*     font-family: Gotham-Medium, Arial, sans-serif; */
  /*     font-family: Nova Oval, Arial, sans-serif; */
  font-family: Salsa, Arial, sans-serif;
  font-size: 3em;
  letter-spacing: normal;
  /*     color: #1b3d97; */
  color: #A13794;
  text-shadow: 4px 3px #eaea99;
  padding: 24px 0;
  text-align: center; }

h2 {
  font-family: GothamNarrow-Book, Arial, sans-serif;
  font-size: 1.8em;
  /*     color: #CE2029; */
  color: #A13794;
  font-weight: 600;
  padding: 20px 0 0 0; }

h3 {
  font-family: Gotham-Medium;
  font-size: 1.4em;
  margin-top: 15px;
  color: #015B93; }

h4 {
  font-family: Gotham-Medium;
  font-size: 1.2em;
  margin-top: 15px;
  color: #1A0193; }

.champion {
  font-family: "championregular";
  font-size: 1.2em; }

.light {
  font-family: Gotham-Light, Arial, sans-serif !important;
  font-size: 1.2em; }

.medium {
  font-family: Gotham-Medium, Arial, sans-serif !important;
  font-size: 1.2em; }

.narrow-medium {
  font-family: GothamNarrow-Medium, Arial, sans-serif !important;
  font-size: 1.2em; }

.narrow-book {
  font-family: GothamNarrow-Book, Arial, sans-serif !important;
  font-size: 1.2em; }

.narrow-thin {
  font-family: GothamNarrow-Thin, Arial, sans-serif !important;
  font-size: 1.2em; }

.narrow-ultra {
  font-family: GothamNarrow-Ultra, Arial, sans-serif !important;
  font-size: 1.2em; }

.thin {
  font-family: Gotham-Thin, Arial, sans-serif !important;
  font-size: 1.2em; }

.ultra {
  font-family: Gotham-Ultra, Arial, sans-serif !important;
  font-size: 1.2em; }

.clear {
  clear: both; }

.fair-color {
  /* color: black;
    background-color: #CE2029; */
  color: white;
  background-color: #25408F; }

.panel-color {
  color: white;
  background-color: #e22b22; }

.offscreen {
  position: absolute;
  border: 0;
  clip: rect(0px, 0px, 0px, 0px);
  overflow: hidden;
  height: 1px;
  margin: -1px;
  padding: 0;
  width: 1px; }

.mobscroll {
  font-size: .8em;
  /*     padding: 0px 30px 0px 30px; */
  padding: 0px 61px 0px 30px;
  line-height: 1;
  /*     margin: -2px; */
  margin: -37px;
  float: right; }

a {
  /*     text-decoration: none; */
  /*     color: #af010a; */
  color: #C52727; }

a:hover,
a:focus,
a p.caption-text:hover,
a p.caption-text:focus {
  /*     text-decoration: underline; */
  text-decoration: none; }

.skip-parent {
  margin-top: 21px;
  margin-left: 10px; }

#skip-to-content {
  color: white;
  margin-top: 21px; }

.fair-container {
  width: 100%;
  padding: 0px 2%; }

.fair-panel {
  color: white;
  background-color: #CF9036; }

.numdays {
  font-weight: bold;
  font-size: 1.1em; }

.hero-image {
  text-align: center;
  margin-top: 0px; }

.two-column-list {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  -webkit-column-gap: 40px;
  -moz-column-gap: 40px;
  column-gap: 40px; }

.three-column-list {
  columns: 3;
  -webkit-columns: 3;
  -moz-columns: 3;
  -webkit-column-gap: 30px;
  -moz-column-gap: 30px;
  column-gap: 30px; }

.column-list {
  list-style-type: none; }

.column-list li {
  padding-bottom: 10px; }

.column-list li::before {
  /* Change the character depending on the Fair theme */
  font-family: "Font Awesome 5 Pro";
  /* Smiley face */
  /*     content: "\f118"; */
  /* Pig */
  content: "\f706";
  padding-right: 5px;
  margin-left: -24px;
  /* Must be the same color as .bull-color */
  color: #136077; }

.list-name {
  font-size: 1.4em; }

.w3-cell-list {
  list-style-type: none;
  padding-left: 0; }

.w3-cell-list li {
  padding-bottom: 12px; }

/*
-------------------------------------------------------------------------------------------------------------
Slidedowns
-------------------------------------------------------------------------------------------------------------
*/
.slidedown {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  padding: 0 10px 0 10px;
  margin-top: 20px;
  clear: both; }

.slidedown-head h3 {
  margin-top: 10px !important; }

.slidedown-head p {
  margin-top: -16px; }

.slidedown-expander i {
  font-size: 3em !important;
  color: black !important; }

.slidedown-content {
  margin: 0 10px 0 10px; }

a#toggle-slidedowns {
  float: right;
  margin-top: 20px; }

/*****************************************************************
* Add icons to special link classes (now done in link-icons.js)
******************************************************************/
.icon-links {
  padding-left: 4px;
  font-size: .8em; }

.menu-item .icon-links {
  padding-left: 16px; }

/*
-------------------------------------------------------------------------------------------------------------
Page Classes
-------------------------------------------------------------------------------------------------------------
*/
#globallinks,
.globallinks {
  background-color: transparent;
  margin-left: 15px;
  margin-right: 15px;
  float: right; }

#globallinks a,
.globallinks a {
  color: white !important;
  background-color: #11718e;
  margin: 5px 5px 3px;
  padding: 5px 10px;
  text-decoration: none;
  display: block; }

#globallinks a img,
.globallinks a img {
  padding-left: 4px;
  border: none;
  vertical-align: 20%; }

#globallinks a:hover,
#globallinks a:focus,
.globallinks a:hover,
.globallinks a:focus {
  text-decoration: underline; }

.hidden-gallery-link {
  text-align: right;
  margin-right: 20px; }

.fair-map {
  float: right;
  text-align: center;
  margin-left: 25px; }

/* Slidedowns or collapsible panels generated by the Card Control */
.expand-link {
  display: inline-block;
  margin-left: 14px;
  text-decoration: none !important;
  text-indent: -8px; }

.expand-text {
  /* This will be changed to "none" by JQuery */
  display: block; }

ul.expand-text {
  margin-top: 6px; }

ul.use-arrows {
  list-style-type: none; }

ul.use-arrows li {
  margin-bottom: 6px; }

ul.use-arrows li a i.fa {
  padding-right: 4px; }

@media (prefers-reduced-motion: reduce) {
  .sponsor-list ul {
    animation: none !important; }
  .imgvar, p.w3-animate-bottom, img.w3-animate-top, .w3-animate-left {
    animation: none !important; } }

/*
-------------------------------------------------------------------------------------------------------------
Header classes
-------------------------------------------------------------------------------------------------------------
*/
#fixed-banner {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  position: sticky;
  top: 0;
  height: 8.5%;
  z-index: 1000;
  height: 4em; }

#banner-heading {
  /* padding-right: 20px; */
  text-align: center;
  width: 38%;
  color: white; }

#banner-heading img {
  width: 62px;
  height: auto; }

#banner-heading .banner-text {
  margin-top: 7px; }

#banner-heading .banner-text .banner-head {
  font-family: 'Abril Fatface', Arial, sans-serif;
  font-size: 1.6em; }

#banner-heading .banner-date {
  font-family: 'Josefin Sans', Arial, sans-serif;
  margin-top: -39px;
  margin-left: 72px; }

#banner-icons {
  margin: 18px 0 0 0;
  width: 25%;
  text-align: right; }

#banner-icons #banner-resize,
#banner-icons #Search-menu {
  padding-right: 15px; }

#banner-icons .fas {
  display: inline !important; }

#text-resize,
#search-icon {
  color: white; }

/* Text resize and search */
#text-resize-dialog {
  max-width: 490px;
  min-height: 52px;
  padding: 10px; }

#text-resize-slider {
  width: 200px; }

#search-icon .w3-xlarge {
  font-size: 18px !important; }

/*
-------------------------------------------------------------------------------------------------------------
Side navigation/menu
-------------------------------------------------------------------------------------------------------------
*/
.hameggs {
  font-size: .4em;
  margin: -11px;
  padding: 0 0 14px 0;
  display: block; }

#hamburger {
  vertical-align: top;
  padding-top: 0px;
  /* For that piece of junk, IE */
  /*     background-color: #CE2029; */
  background-color: #25408F; }

#hamburger-container {
  width: 35%;
  color: white; }

.fair-sidenav {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-content: space-between;
  align-content: space-between;
  height: 100%;
  word-wrap: break-word; }

.fair-sidenav a,
.fair-sidenav a {
  transition: all 1s ease-out; }

.fair-sidenav a:hover,
.fair-sidenav a:focus {
  text-decoration: none; }

.menu {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden; }

.menu button {
  transition: all 1s ease-out; }

/* The footer is in the sidenav drawer */
.footer {
  flex-shrink: 1;
  flex-basis: 0;
  overflow: auto;
  /*     min-height: 305px; */
  min-height: 265px;
  margin-left: 15px; }

a.footer-link:hover,
a.footer-link:focus {
  text-decoration: none; }

/*
-------------------------------------------------------------------------------------------------------------
Animations and Effects
-------------------------------------------------------------------------------------------------------------
*/
/*
-------------------------------------------------------------------------------------------------------------
SCSS Mixins
-------------------------------------------------------------------------------------------------------------
*/
.zoom-image {
  max-width: 630px;
  height: auto; }

.zoom-image a img {
  vertical-align: middle;
  padding-left: 0; }

.zoom-image .hover-image {
  max-width: 100%;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.zoom-image .hover-image:hover,
.zoom-image .hover-image:focus {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.3); }

.circle-text {
  margin-top: 5%;
  display: none; }

.hover-image:hover + .circle-text {
  display: block; }

.circular-landscape {
  display: inline-block;
  position: relative;
  width: 200px;
  height: 200px;
  overflow: hidden;
  border-radius: 50%; }

.circular-landscape img {
  width: auto;
  height: 100%;
  max-width: 100%;
  border-radius: 50%; }

.circular-portrait {
  position: relative;
  width: 400px;
  height: 400px;
  overflow: hidden;
  border-radius: 50%; }

.circular-portrait img {
  width: 100%;
  height: auto;
  border-radius: 50%; }

.w3-animate-zoomin {
  -webkit-animation: animatezoomin 0.6s;
  -webkit-animation-fill-mode: forwards;
  animation: animatezoomin 0.6s;
  animation-fill-mode: forwards; }

@-webkit-keyframes animatezoomin {
  from {
    -webkit-transform: scale(1); }
  to {
    -webkit-transform: scale(0); } }

@keyframes animatezoomin {
  from {
    transform: scale(1); }
  to {
    transform: scale(0); } }

.animate span {
  display: block;
  position: relative;
  text-align: center; }

.animate.backwards > span {
  animation: animateBackwards 1s ease-in-out forwards; }

.animate.forwards > span {
  animation: animateForwards 1s ease-in-out forwards; }

.animate.mixed > span:nth-child(even) {
  animation: animateBackwards 1s ease-in-out forwards; }

.animate.mixed > span:nth-child(odd) {
  animation: animateForwards 1s ease-in-out forwards; }

@keyframes animateForwards {
  from {
    top: 0;
    transform: rotate(0deg); }
  to {
    top: .9em;
    transform: rotate(-15deg); } }

@keyframes animateBackwards {
  from {
    top: 0;
    transform: rotate(0deg); }
  to {
    top: 1em;
    transform: rotate(25deg); } }

/* Handwriting animation */
.svg-container {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  background-color: #FFCB05;
  height: 110px; }

.svg-container .banner-plane {
  /*     max-width: 125px; */
  max-width: 120px;
  width: 100%;
  height: auto;
  margin: 8px 30px 0 0; }

#svg-nowriting {
  max-width: 408px;
  width: 100%;
  height: auto;
  margin-right: 13vw;
  margin-top: 15px; }

.svg-container svg {
  /*     max-width: 56rem; */
  max-width: 41rem;
  width: 100%;
  height: 7em;
  fill: none;
  stroke: black;
  stroke-width: 5; }

.svg-container svg tspan > tspan {
  stroke-dasharray: 1500;
  stroke-dashoffset: -1500; }

.svg-container svg tspan > tspan:nth-of-type(1) {
  -webkit-animation: draw 300ms 150ms forwards;
  animation: draw 300ms 150ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(2) {
  -webkit-animation: draw 300ms 300ms forwards;
  animation: draw 300ms 300ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(3) {
  -webkit-animation: draw 300ms 450ms forwards;
  animation: draw 300ms 450ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(4) {
  -webkit-animation: draw 300ms 600ms forwards;
  animation: draw 300ms 600ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(5) {
  -webkit-animation: draw 300ms 750ms forwards;
  animation: draw 300ms 750ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(6) {
  -webkit-animation: draw 300ms 900ms forwards;
  animation: draw 300ms 900ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(7) {
  -webkit-animation: draw 300ms 1050ms forwards;
  animation: draw 300ms 1050ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(8) {
  -webkit-animation: draw 300ms 1200ms forwards;
  animation: draw 300ms 1200ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(9) {
  -webkit-animation: draw 300ms 1350ms forwards;
  animation: draw 300ms 1350ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(10) {
  -webkit-animation: draw 300ms 1500ms forwards;
  animation: draw 300ms 1500ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(11) {
  -webkit-animation: draw 300ms 1650ms forwards;
  animation: draw 300ms 1650ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(12) {
  -webkit-animation: draw 300ms 1800ms forwards;
  animation: draw 300ms 1800ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(13) {
  -webkit-animation: draw 300ms 1950ms forwards;
  animation: draw 300ms 1950ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(14) {
  -webkit-animation: draw 300ms 2100ms forwards;
  animation: draw 300ms 2100ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(15) {
  -webkit-animation: draw 300ms 2250ms forwards;
  animation: draw 300ms 2250ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(16) {
  -webkit-animation: draw 300ms 2400ms forwards;
  animation: draw 300ms 2400ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(17) {
  -webkit-animation: draw 300ms 2550ms forwards;
  animation: draw 300ms 2550ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(18) {
  -webkit-animation: draw 300ms 2700ms forwards;
  animation: draw 300ms 2700ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(19) {
  -webkit-animation: draw 300ms 2850ms forwards;
  animation: draw 300ms 2850ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(20) {
  -webkit-animation: draw 300ms 3000ms forwards;
  animation: draw 300ms 3000ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(21) {
  -webkit-animation: draw 300ms 3150ms forwards;
  animation: draw 300ms 3150ms forwards; }

.svg-container svg tspan > tspan:nth-of-type(22) {
  -webkit-animation: draw 300ms 3300ms forwards;
  animation: draw 300ms 3300ms forwards; }

@-webkit-keyframes draw {
  100% {
    stroke-dashoffset: 0; } }

@keyframes draw {
  100% {
    stroke-dashoffset: 0; } }

/* Animated Cards */
.cards {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  /* Override */
  /*     -webkit-justify-content: center; */
  /*     justify-content: center; */ }

.card-container {
  /*     width: 25%; */
  max-width: 400px;
  cursor: pointer; }

.card-container img {
  width: 100%;
  max-width: 400px;
  height: auto; }

.caption-text {
  margin-top: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 0px;
  font-size: 1.5em;
  text-align: center;
  background-color: #CE2029;
  color: white; }

.caption-text:hover,
.caption-text:hover {
  text-decoration: underline; }

.hidden-text {
  margin-top: 0px;
  padding-top: 10px;
  color: black;
  text-align: center; }

/* Card control cards */
.card-control {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 25px; }

.gallery-card {
  max-width: 400px;
  margin-bottom: 30px; }

.gallery-card-text {
  padding: 5px;
  text-align: center;
  background-color: #FDD91C; }

.gallery-card-text h2 {
  font-family: Gotham-Medium;
  font-size: 1.4em;
  padding: 0;
  margin-top: 15px;
  color: #015b93;
  font-weight: 400; }

.gallery-card a:hover,
.gallery-card a:focus {
  color: #2F7CA2; }

/* Scrolling credits */
.sponsor-list {
  height: 800px;
  overflow: hidden;
  position: relative; }

.sponsor-list ul {
  position: absolute;
  width: 100%;
  height: 100%;
  margin: 0;
  line-height: 50px;
  text-align: center;
  /* Starting position */
  /*     -moz-transform: translateY(-100%); */
  /*     -webkit-transform: translateY(-100%); */
  /*     transform: translateY(-100%); */
  /* Apply animation to this element */
  /*     -moz-animation: credits 15s linear infinite; */
  /*     -webkit-animation: credits 15s linear infinite; */
  /*     animation: 16s credits -1s linear 1; */
  animation: 16s credits 1s cubic-bezier(0.1, 0.5, 1, 0.4) 1;
  animation-fill-mode: backwards; }

.w3-spin-4 {
  animation: w3-spin 2s 4 linear; }

/* Move it (define the animation) */
/*
@-moz-keyframes credits {
    0% {
        -moz-transform: translateY(100%);
    }

    100% {
        -moz-transform: translateY(-100%);
    }
}

@-webkit-keyframes credits {
    0% {
        -webkit-transform: translateY(100%);
    }

    100% {
        -webkit-transform: translateY(-100%);
    }
}
*/
@keyframes credits {
  0% {
    /*         -moz-transform: translateY(100%); /* Firefox bug fix */
    /*         -webkit-transform: translateY(100%); /* Firefox bug fix */
    transform: translateY(100%); }
  100% {
    /*         -moz-transform: translateY(-100%); /* Firefox bug fix */
    /*         -webkit-transform: translateY(-100%); /* Firefox bug fix */
    transform: translateY(-100%); } }

/*
-------------------------------------------------------------------------------------------------------------
Unsupported Browser Warning
-------------------------------------------------------------------------------------------------------------
*/
#warning-close {
  margin-right: 16px; }

#browser-warning {
  background-color: #fcfdde;
  width: 100%;
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
  text-align: center;
  padding: 5px 0px 5px 0px; }

/*
-------------------------------------------------------------------------------------------------------------
Carousel Classes
-------------------------------------------------------------------------------------------------------------
*/
.carousel-slide {
  display: none; }

.carousel-slide img {
  width: 100%; }

.w3-carousel-navdots {
  bottom: 6px !important; }

.w3-btn-floating {
  display: inline-block;
  text-align: center;
  background-color: #000;
  overflow: hidden;
  z-index: 1;
  padding: 0;
  border-radius: 50%;
  cursor: pointer;
  -webkit-transition: background-color .25s,color .15s,box-shadow .25s,opacity 0.25s,filter 0.25s,border 0.15s;
  transition: background-color .25s,color .15s,box-shadow .15s,opacity .25s,filter .25s,border .15s; }

/*#carousel1 .w3-carousel .w3.content {
    max-width: 1920px !important;
}*/
/*
-------------------------------------------------------------------------------------------------------------
Concert Pages
-------------------------------------------------------------------------------------------------------------
*/
/*
-------------------------------------------------------------------------------------------------------------
SCSS Mixins
-------------------------------------------------------------------------------------------------------------
*/
.mf-concert-item {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  margin-bottom: 40px;
  margin-top: 20px;
  min-height: 300px;
  /*     padding: 0.01em 6px; */
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse; }

.mf-concert-item-text h2, .mf-concert-item-text h3 {
  margin: 5px 0px;
  text-align: left; }

.mf-concert-item-text, .mf-concert-item-image {
  /*     float: right; */ }

.mf-concert-item-text {
  /*     width: 53%; */
  width: 68%;
  padding-right: 10px;
  margin-bottom: 60px; }

.mf-concert-item-text p {
  text-align: left; }

.mf-concert-item-image {
  /*     width: 45%; */
  max-width: 425px; }

.mf-concert-item-image img {
  margin-top: 10px;
  margin-left: 18px;
  padding-right: 34px;
  /*     width: 100%; */
  height: auto; }

/*
-------------------------------------------------------------------------------------------------------------
Directions Page
-------------------------------------------------------------------------------------------------------------
*/
#map-canvas {
  max-width: 910px;
  height: 530px;
  margin-top: 15px; }

/* Google map/directions overrides */
.gm-style-iw, .gm-style-iw b {
  color: black !important; }

.adp-placemark {
  background-color: transparent !important;
  border: none !important; }

.adp-details, .adp-legal {
  display: none; }

.adp-text {
  font-weight: bold; }

.adp-substep b {
  font-weight: bold; }

.adp-substep:hover {
  text-decoration: underline; }

#myaddress {
  height: 2em;
  width: 42vw !important;
  max-width: 596px; }

#from-link {
  height: 2.6em;
  font-size: .8em !important;
  vertical-align: top; }

/*
-------------------------------------------------------------------------------------------------------------
Competitive Exhibits Page
-------------------------------------------------------------------------------------------------------------
*/
.exhibits .w3-white {
  color: #ffffff !important;
  background-color: #2F7CA2 !important; }

.exhibits .w3-teal {
  color: #ffffff !important;
  background-color: #018347 !important; }

.exhibits .w3-red {
  color: #ffffff !important;
  background-color: #CE2029 !important; }

.exhibits .w3-yellow {
  color: #ffffff !important;
  background-color: #e22b22 !important; }

.exhibits .w3-yellow:hover,
.exhibits .w3-yellow:focus,
.exhibits .w3-red:hover,
.exhibits .w3-red:focus,
.exhibits .w3-teal:hover,
.exhibits .w3-teal:focus,
.exhibits .w3-white:hover,
.exhibits .w3-white:focus {
  color: #000000 !important;
  background-color: #ccc !important;
  box-shadow: 4px 4px 4px gray; }

.exhibits .w3-button {
  margin: 0.3em;
  width: 31%;
  font-weight: bold;
  padding: 16px 16px; }

.fancybox-container .fancybox-exhibits {
  max-width: 1024px; }

/*
-------------------------------------------------------------------------------------------------------------
Play Fair Page Classes
-------------------------------------------------------------------------------------------------------------
*/
/*
-------------------------------------------------------------------------------------------------------------
SCSS Mixins
-------------------------------------------------------------------------------------------------------------
*/
.playfair {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-align-items: flex-start;
  align-items: flex-start; }

.playfair .first-flex {
  width: 100%;
  max-width: 688px;
  margin-right: 20px; }

.playfair .second-flex {
  width: 100%; }

.afterflex {
  margin-top: -12px; }

/* ------------------------------------------------------------------------*/
/*                            Standalone Video                             */
/* ------------------------------------------------------------------------*/
.playfair .video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  margin-bottom: 15px;
  max-width: 540px;
  /*     max-height: 304px; */
  max-height: 267px;
  height: 267px; }

.playfair .video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  max-width: 540px;
  max-height: 304px; }

.playfair-footer-margin {
  margin-bottom: 30px; }

/*
-------------------------------------------------------------------------------------------------------------
Search Box
-------------------------------------------------------------------------------------------------------------
*/
#SearchForm {
  height: 0px;
  margin-right: 10px; }

#SearchForm #hd-search-text-box {
  float: left;
  max-width: 300px;
  margin-right: 4px;
  margin-right: 10px; }

#SearchForm #hd-search-text-box .defaultText {
  width: 240px !important;
  height: 1.85em; }

#SearchForm #hd-go-button {
  float: left; }

#SearchForm #hd-go-button button {
  max-height: 32px;
  line-height: 17px; }

#SearchForm #hd-go-button .w3-btn {
  padding: 0; }

/*
-------------------------------------------------------------------------------------------------------------
Search Page
-------------------------------------------------------------------------------------------------------------
*/
.search-input .w3-fair-button {
  vertical-align: text-bottom; }

.search-results {
  width: 100%; }

.main-search-box-active {
  height: 2.4em;
  width: 66% !important;
  max-width: 900px;
  vertical-align: bottom; }

.search-results .results,
.search-results .filterset {
  margin: 0; }

.search-results .event h2,
.search-results .event h3 {
  color: #e35817;
  margin: 20px 0 0 0;
  text-align: left;
  font-weight: normal; }

.search-results .results p,
.search-results .filterset p {
  margin: 0;
  line-height: 2;
  text-align: right; }

.search-results .results a,
.search-results .filterset a {
  margin: 0 0 0 5px;
  font: bold 1.0em Verdana, Geneva, sans-serif; }

.search-results .results a.active {
  color: #b9450f; }

.search-results .filterset a.active {
  color: blue; }

.search-results .links {
  list-style: none;
  margin: 20px 0 0;
  width: 100%;
  padding: 0;
  text-align: left; }

.search-results .links .priority {
  width: 100%;
  text-align: left;
  margin: 0 0 15px;
  padding: 8px 0 8px 10px;
  background-image: none;
  display: block;
  overflow: hidden; }

.search-results .links .holder:last-child {
  border-bottom: none;
  margin: 0; }

.search-results .links .holder {
  width: 100%;
  border-bottom: dashed 1px #707070;
  text-align: left;
  margin: 0 0 15px;
  padding: 0 0 15px 0; }

.search-results .links a {
  margin: 0;
  font: bold 1.0em Verdana, Geneva, sans-serif; }

.search-results .links p {
  margin: 0; }

.search-results .links em {
  font-weight: bold; }

.search-results .links p.reslink {
  font-style: italic;
  /*     color: #e1e178; */
  color: #0050a3;
  margin: 0;
  word-wrap: break-word; }

/* Swiftype navigation */
.search-results .links .st-page {
  float: right; }

.search-results .links a.st-prev {
  margin-right: 10px;
  text-transform: capitalize; }

.search-results .links a.st-next {
  text-transform: capitalize;
  display: inline-block; }

#no-results {
  font-size: 1.5em;
  font-weight: bold; }

.swiftype-widget .autocomplete li p {
  word-wrap: break-word; }

/*
-------------------------------------------------------------------------------------------------------------
Shopping Pages
-------------------------------------------------------------------------------------------------------------
*/
.mf-app-container {
  margin-bottom: 30px; }

.mf-app-list {
  /*     background-color: white !important; */
  /*     margin-bottom: 45px !important; */ }

.mf-app-list li {
  min-height: 116px; }

.mf-app-list li a {
  text-decoration: none;
  /*     color: black; */ }

.mf-app-list li a:hover {
  text-decoration: underline; }

.mf-app-list-img {
  height: 110px;
  width: 86px;
  float: left;
  margin-right: 30px; }

.mf-app-list-img img {
  height: auto;
  width: 100%;
  max-width: 86px; }

.mf-app-list-icon {
  font-size: 33px; }

.mf-app-list-title {
  margin-right: 12px;
  margin-top: 25px;
  font-size: 35px; }

.mf-app-return {
  padding-bottom: 20px;
  display: block; }

.mf-app-return i {
  padding-right: 3px; }

/*
-------------------------------------------------------------------------------------------------------------
Detail Pages
-------------------------------------------------------------------------------------------------------------
*/
.mf-app-list-detail {
  margin-bottom: 25px; }

.mf-app-list-detail h3 {
  border-bottom: 1px solid black; }

.mf-app-list-detail img {
  height: auto;
  width: 100%;
  max-width: 640px; }

.mf-detail-list {
  list-style-type: none;
  padding-left: 22px; }

.mf-detail-food,
.mf-detail-shopping {
  list-style-type: none; }

.mf-detail-food li::before {
  font-family: "Font Awesome 5 Pro";
  /* Utensils */
  content: "\f2e7";
  padding-right: 7px;
  margin-left: -24px;
  /* Must be the same color as .bull-color */
  color: #136077; }

.mf-detail-shopping li::before {
  font-family: "Font Awesome 5 Pro";
  /* Shopping bag */
  content: "\f290";
  padding-right: 7px;
  margin-left: -24px; }

#map {
  /* Border is for testing only; remove before sending to production */
  border: 1px solid grey;
  min-height: 450px;
  height: auto;
  width: 100%;
  margin-bottom: 45px;
  border-top-width: 2px; }

/*
-------------------------------------------------------------------------------------------------------------
W3.CSS Overrides and Additions
-------------------------------------------------------------------------------------------------------------
*/
.w3-main {
  margin-left: 200px;
  margin-bottom: 30px;
  margin-right: 0px;
  /*     background-color: #e3eef7; */
  background-color: #EBF2ED; }

.w3-container {
  padding: 0; }

.w3-modal {
  z-index: 60000 !important; }

.w3-button,
.w3-btn {
  white-space: normal; }

.w3-button:hover {
  /*     background-color: #61e26f !important; */
  background-color: #A4CB36 !important; }

.w3-button:focus,
.w3-btn:focus {
  color: #fff !important;
  background-color: #3f51b5 !important;
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  outline: none; }

.w3-metro-light-blue {
  color: #000;
  /*     background-color: #eff4ff; */
  /*     background-color: #e3eef7; */
  background-color: #EBF2ED; }

.w3-hover-opacity:focus {
  opacity: 0.60; }

.w3-fair-button {
  color: white;
  background-color: black; }

.w3-fair-button:hover,
.w3-fair-button:focus {
  opacity: 0.9; }

.w3-fair-button:active {
  opacity: 0.7; }

/*
-------------------------------------------------------------------------------------------------------------
Font Awesome Overrides and Additions
-------------------------------------------------------------------------------------------------------------
*/
.concert-tickets i {
  display: inline; }

/*
-------------------------------------------------------------------------------------------------------------
Thumbnail Slider
-------------------------------------------------------------------------------------------------------------
*/
.slider-container {
  width: 96%;
  margin: auto; }

.slider-style {
  width: 100%;
  padding: 20px 0 20px 0 !important;
  background: transparent !important; }

.slider-container a:hover, .slider-container a:focus {
  text-decoration: underline; }

#sponsor-link {
  font-size: 0.7em;
  text-decoration: underline;
  /*     color: #000; */
  color: #C52727;
  padding-left: 10px; }

#sponsor-link:hover, #sponsor-link:focus {
  text-decoration: none; }

#jssor_play_pause:hover, #jssor_play_pause:focus {
  outline: 1px dashed gray; }

#jssor_play_pause {
  color: #000;
  float: right;
  font-size: 14px;
  text-decoration: none;
  padding-right: 10px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.sponsor-list ul {
  list-style-type: none; }

.sponsor-list ul li {
  text-indent: -21px;
  margin-left: 18px; }

.sponsor-list li::before {
  font-family: "Font Awesome 5\ Brands";
  content: "\f2dd";
  /* super powers */
  padding-right: 5px;
  /* Must be the same color as .bull-color */
  color: #136077; }

.sponsors-container {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  flex-direction: row;
  padding: 30px 10px;
  background-color: #FDD91C; }

.sponsors-container img {
  width: 100%;
  max-width: 140px;
  height: auto;
  /*     padding: 10px; */
  margin: 0px 10px; }

/*
-------------------------------------------------------------------------------------------------------------
Media queries
-------------------------------------------------------------------------------------------------------------
*/
@media only screen and (max-width: 1352px) {
  #banner-heading .banner-text .banner-head {
    font-size: 1.2em; }
  #banner-heading .banner-date {
    font-size: 0.8em; } }

@media only screen and (max-width: 1315px) {
  #hamburger-container {
    width: 30%; }
  #banner-heading {
    width: 35%; }
  #banner-icons {
    width: 33%;
    margin-top: 12px !important; } }

@media only screen and (max-width: 1105px) {
  #banner-heading {
    padding-right: 0;
    width: 68%; }
  #banner-icons a {
    font-size: 1.1em !important; } }

@media only screen and (max-width: 1172px) {
  #banner-heading .banner-text .banner-head {
    font-size: 1.1em; } }

@media only screen and (max-width: 1010px) {
  #hamburger-container {
    margin-right: 25px; }
  .w3-sidebar {
    top: 71px;
    z-index: 50000; }
  .cards,
  .first-div,
  .card-control {
    /*         -webkit-flex-direction: column; */
    /*         flex-direction: column; */ }
  .card-container {
    width: 100%; }
  #Search-menu #SearchForm {
    display: none; }
  #Search-menu #search-icon {
    padding-right: 15px; } }

@media only screen and (min-width: 993px) {
  #myOverlay {
    display: none !important; }
  /*
    .w3-main {
        margin-left: 10px !important;
        margin-right: 10px !important;
    }
        */ }

@media only screen and (max-width: 932px) {
  .banner-text img {
    display: none; }
  #banner-heading .banner-date {
    margin-top: -20px;
    margin-left: 10px; }
  #banner-heading .banner-text .banner-head {
    font-size: 1.1em; } }

@media only screen and (max-width: 760px) {
  .hover-effect img {
    width: 100%; }
  .mf-concert-item {
    -webkit-flex-direction: column;
    flex-direction: column; }
  .mf-concert-item-text {
    width: auto;
    padding: 0px 18px; }
  .mf-concert-item-image {
    width: auto;
    margin-bottom: 25px; }
  .mf-concert-item-image img {
    width: auto;
    padding-right: 16px; }
  .exhibits .w3-button {
    width: 45%; }
  .banner-plane {
    max-width: 90px !important;
    margin-left: 30px !important; } }

@media only screen and (max-width: 570px) {
  #banner-heading .banner-text .banner-head {
    margin-left: 0px; }
  #banner-heading .banner-date {
    display: none; }
  .mf-concert-item-image img {
    width: 94%; }
  .sponsor-list ul li {
    margin-right: 18px; }
  #svg-nowriting {
    max-width: 54vw; }
  .exhibits .w3-button {
    width: 89%; } }

@media only screen and (max-width: 600px) {
  .banner-date {
    display: none; } }

@media only screen and (max-width: 460px) {
  .card-container {
    margin-left: 0 !important;
    margin-right: 0px !important; } }

@media only screen and (max-width: 400px) {
  #banner-heading .banner-text .banner-head {
    font-size: .8em; } }

@media only screen and (max-width: 345px) {
  #banner-icons #banner-resize,
  #banner-icons #Search-menu {
    padding-right: 5px; } }
