/* Note to User: This CSS file is compiled by SASS my friends. It should not be edited directly.
If you are unfamiliar with SASS,you should take some time to understand its operation.
If you do not understand how this file works, you will find yourself frustrated and risk your code being overwritten. */
html {
  height: 100%;
}

/*
Color Scheme
 */
/*
$darkOne
$darkTwo
$darkThree

$lightOne
$lightTwo
$lightThree

$accentOne: #b89c66;
$accentTwo
$accentThree
*/
/*
A few resets
 */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  position: relative;
}

div#overlay {
  background-color: rgba(0, 0, 0, 0.9);
  position: fixed;
  z-index: 1000;
  height: 100% !important;
  width: 100vw;
  margin: 0;
  top: 0;
  left: 0;
  display: none;
}

div.productDetail {
  display: none;
}
div.productDetail h1 {
  color: #ffffff !important;
}
div.productDetail div.theDetails {
  flex-basis: 50%;
}
div.productDetail figure {
  flex-basis: 50%;
}
div.productDetail img {
  width: 100%;
}

/*
Perfect Centering for Flexboxes
 */
.perfectCentering {
  display: flex;
  justify-content: center;
  align-items: center;
}

main.oneColumn .praise {
  background-color: #efefef;
  padding: 20px;
  margin-bottom: 20px;
}
main.oneColumn .praise p:last-child {
  margin-bottom: 0 !important;
}
main.oneColumn .praise p.theAttribution {
  font-weight: bold;
}

/*
:::::::::: Set Base Font Size ::::::::
*/
.noBullets {
  list-style-type: none;
}

/*
:::::::: Apply Base Font Size ::::::::
*/
body {
  font-size: 1em;
}

h1 {
  font-family: "League Spartan", sans-serif;
  color: #2d3748;
  padding: 0 !important;
  margin: 0 !important;
  font-weight: 300;
}

h2 {
  font-family: "League Spartan", sans-serif;
  color: #2d3748;
  padding: 0 !important;
  margin: 0 !important;
  font-weight: 300;
}

h3 {
  font-family: "League Spartan", sans-serif;
  color: #2d3748;
  padding: 0 !important;
  margin: 0 !important;
  font-weight: 300;
}

h4 {
  font-family: "League Spartan", sans-serif;
  color: #2d3748;
  padding: 0 !important;
  margin: 0 !important;
  font-weight: 300;
}

h5 {
  font-family: "League Spartan", sans-serif;
  color: #2d3748;
  padding: 0 !important;
  margin: 0 !important;
  font-weight: 300;
}

h6 {
  font-family: "League Spartan", sans-serif;
  color: #2d3748;
  padding: 0 !important;
  margin: 0 !important;
  font-weight: 300;
}

p {
  font-family: "League Spartan", sans-serif;
  color: #313131;
  padding: 0 !important;
  margin: 0 !important;
}

ul {
  font-family: "League Spartan", sans-serif;
  color: #313131;
  padding: 0 !important;
  margin: 0 !important;
}

label {
  font-family: "League Spartan", sans-serif;
  color: #2d3748;
}

figcaption {
  font-family: "League Spartan", sans-serif;
}

dl {
  font-family: "League Spartan", sans-serif;
}
/*
A Collection of Common Grids
 */
.gridLayout-1 {
  display: grid;
  grid-template-columns: 50% 50%;
  grid-template-rows: 50% 50%;
}
.gridLayout-1 div#overlay {
  grid-column: 1/3;
  grid-row: 1/3;
  display: flex;
  justify-content: center;
  align-items: center;
}
.gridLayout-1 div#overlay > div {
  background-color: rgba(0, 0, 0, 0.65);
  color: #ffffff;
  padding: 10px;
  width: 40%;
}
.gridLayout-1 div#panel-1 {
  grid-column: 1/3;
  grid-row: 1/2;
  background-color: #7a7a7a;
}
@media only screen and (min-width: 1200px) {
  .gridLayout-1 div#panel-1 {
    grid-column: 1/2;
    grid-row: 1/3;
  }
}
.gridLayout-1 div#panel-2 {
  grid-column: 1/3;
  grid-row: 2/3;
  background-color: #616161;
}
@media only screen and (min-width: 1200px) {
  .gridLayout-1 div#panel-2 {
    grid-column: 2/3;
    grid-row: 1/3;
  }
}

.gridLayout-2 {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(12, 1fr);
}
.gridLayout-2 div#overlay {
  grid-column: 1/13;
  grid-row: 1/13;
  padding: 50px;
  display: flex;
}
.gridLayout-2 div#overlay aside {
  flex-basis: 25%;
}
.gridLayout-2 div#overlay article {
  flex-basis: 75%;
}
.gridLayout-2 div#overlay aside {
  padding: 25px;
  background-color: #3e3c4a;
}
.gridLayout-2 div#overlay aside h2 {
  letter-spacing: 2px;
  color: #ffffff !important;
}
.gridLayout-2 div#overlay article {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 25px;
  background-color: #2a2a2a;
}
.gridLayout-2 div#overlay article h3 {
  letter-spacing: 2px;
  color: #ffffff;
}
.gridLayout-2 div#overlay article > div {
  flex-basis: 50%;
  padding: 10px;
}
.gridLayout-2 div#panel-1 {
  background-color: #7a7a7a;
  grid-column: 1/5;
  grid-row: 1/13;
}
.gridLayout-2 div#panel-2 {
  background-color: #616161;
  grid-column: 5/13;
  grid-row: 1/13;
}

.gridLayout-3 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-3 p {
  color: #ffffff !important;
}
.gridLayout-3 div#panel-1 {
  background-color: #7a7a7a;
  color: #ffffff !important;
  grid-column: 1/2;
  grid-row: 1/3;
}
.gridLayout-3 div#panel-2 {
  background-color: #3e3c4a;
  grid-column: 2/3;
  grid-row: 1/2;
}
.gridLayout-3 div#panel-3 {
  background-color: #2d3134;
  grid-column: 2/3;
  grid-row: 2/3;
}

.gridLayout-4 {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: 60% 40%;
}
.gridLayout-4 p {
  color: #ffffff;
}
.gridLayout-4 #panel-1 {
  grid-column: 1/3;
  grid-row: 1/2;
  background-color: #5f5f5f;
}
.gridLayout-4 #panel-2 {
  grid-column: 3/5;
  grid-row: 1/2;
  background-color: #3e3c4a;
}
.gridLayout-4 #panel-3 {
  grid-column: 5/7;
  grid-row: 1/2;
  background-color: #5f5f5f;
}
.gridLayout-4 #panel-4 {
  grid-column: 1/4;
  grid-row: 2/3;
  background-color: #3e3c4a;
}
.gridLayout-4 #panel-5 {
  grid-column: 4/7;
  grid-row: 2/3;
  background-color: #5f5f5f;
}

.gridLayout-5 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 70% 30%;
}
.gridLayout-5 p {
  color: #ffffff;
}
.gridLayout-5 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/2;
  background-color: #5f5f5f;
}
.gridLayout-5 #panel-2 {
  grid-column: 2/3;
  grid-row: 1/2;
  background-color: #2d3134;
}
.gridLayout-5 #panel-3 {
  grid-column: 1/3;
  grid-row: 2/3;
  background-color: #3e3c4a;
}

.gridLayout-6 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
}
.gridLayout-6 p {
  color: #ffffff;
}
.gridLayout-6 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/3;
  background-color: #b1b1b1;
}
.gridLayout-6 #panel-2 {
  grid-column: 1/2;
  grid-row: 3/4;
  background-color: #5f5f5f;
}
.gridLayout-6 #panel-3 {
  grid-column: 2/3;
  grid-row: 1/4;
  background-color: #3e3c4a;
}
.gridLayout-6 #panel-4 {
  grid-column: 3/4;
  grid-row: 1/2;
  background-color: #5f5f5f;
}
.gridLayout-6 #panel-5 {
  grid-column: 3/4;
  grid-row: 2/4;
  background-color: #b1b1b1;
}

.gridLayout-7 {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-7 p {
  color: #ffffff;
}
.gridLayout-7 #panel-1 {
  grid-column: 1/7;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-7 #panel-2 {
  grid-column: 7/13;
  grid-row: 1/2;
  background-color: #2d3134;
}
.gridLayout-7 #panel-3 {
  grid-column: 1/4;
  grid-row: 2/3;
  background-color: #3e3c4a;
}
.gridLayout-7 #panel-4 {
  grid-column: 4/13;
  grid-row: 2/3;
  background-color: #5f5f5f;
}

.gridLayout-8 {
  display: grid;
  gap: 20px;
}
@media screen and (max-width: 1000px) {
  .gridLayout-8 {
    display: flex;
    flex-direction: column;
  }
}
.gridLayout-8 img {
  width: 100%;
}
.gridLayout-8 #panel-1 {
  grid-column: 1/2;
}
.gridLayout-8 #panel-2 {
  grid-column: 2/3;
}

.gridLayout-9 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-9 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-9 #panel-2 {
  grid-column: 2/3;
  grid-row: 1/2;
  background-color: #2d3134;
}
.gridLayout-9 #panel-3 {
  grid-column: 3/4;
  grid-row: 1/2;
  background-color: #2d3134;
}
.gridLayout-9 #panel-4 {
  grid-column: 1/2;
  grid-row: 2/3;
  background-color: #2d3134;
}
.gridLayout-9 #panel-5 {
  grid-column: 2/3;
  grid-row: 2/3;
  background-color: #2d3134;
}
.gridLayout-9 #panel-6 {
  grid-column: 3/4;
  grid-row: 2/3;
  background-color: #2d3134;
}

.gridLayout-10 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-10 #panel-1 {
  grid-column: 1/3;
  grid-row: 1/3;
  background-color: #b1b1b1;
}
.gridLayout-10 #panel-2 {
  grid-column: 3/4;
  grid-row: 1/2;
  background-color: #2d3134;
}
.gridLayout-10 #panel-3 {
  grid-column: 3/4;
  grid-row: 2/3;
  background-color: #3e3c4a;
}

.gridLayout-11 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-11 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-11 #panel-2 {
  grid-column: 1/2;
  grid-row: 2/3;
  background-color: #2d3134;
}
.gridLayout-11 #panel-3 {
  grid-column: 2/3;
  grid-row: 1/3;
  background-color: #3e3c4a;
}
.gridLayout-11 #panel-4 {
  grid-column: 3/4;
  grid-row: 1/2;
  background-color: #3e3c4a;
}
.gridLayout-11 #panel-5 {
  grid-column: 3/4;
  grid-row: 2/3;
  background-color: #3e3c4a;
}

.gridLayout-12 {
  display: grid;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-12 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/3;
  background-color: #b1b1b1;
}
.gridLayout-12 #panel-2 {
  grid-column: 2/3;
  grid-row: 1/2;
  background-color: #2d3134;
}
.gridLayout-12 #panel-3 {
  grid-column: 3/4;
  grid-row: 1/2;
  background-color: #3e3c4a;
}
.gridLayout-12 #panel-4 {
  grid-column: 2/4;
  grid-row: 2/3;
  background-color: #3e3c4a;
}

.gridLayout-13 {
  display: grid;
  gap: 5px;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-13 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/3;
  background-color: #b1b1b1;
}
.gridLayout-13 #panel-2 {
  grid-column: 2/4;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-13 #panel-3 {
  grid-column: 2/4;
  grid-row: 2/3;
  background-color: #b1b1b1;
}

.gridLayout-14 {
  display: grid;
  gap: 5px;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-14 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-14 #panel-2 {
  grid-column: 2/3;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-14 #panel-3 {
  grid-column: 1/3;
  grid-row: 2/3;
  background-color: #b1b1b1;
}
.gridLayout-14 #panel-4 {
  grid-column: 3/4;
  grid-row: 1/3;
  background-color: #b1b1b1;
}

.gridLayout-15 {
  display: grid;
  gap: 5px;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-15 #panel-1 {
  grid-column: 1/4;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-15 #panel-2 {
  grid-column: 1/2;
  grid-row: 2/3;
  background-color: #b1b1b1;
}
.gridLayout-15 #panel-3 {
  grid-column: 2/3;
  grid-row: 2/3;
  background-color: #b1b1b1;
}
.gridLayout-15 #panel-4 {
  grid-column: 3/4;
  grid-row: 2/3;
  background-color: #b1b1b1;
}

.gridLayout-16 {
  display: grid;
  gap: 5px;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-16 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-16 #panel-2 {
  grid-column: 1/2;
  grid-row: 2/3;
  background-color: #b1b1b1;
}
.gridLayout-16 #panel-3 {
  grid-column: 2/4;
  grid-row: 1/3;
  background-color: #b1b1b1;
}

.gridLayout-17 {
  display: grid;
  gap: 5px;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-17 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-17 #panel-2 {
  grid-column: 2/4;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-17 #panel-3 {
  grid-column: 1/4;
  grid-row: 2/3;
  background-color: #b1b1b1;
}

.gridLayout-18 {
  display: grid;
  gap: 5px;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-18 #panel-1 {
  grid-column: 1/3;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-18 #panel-2 {
  grid-column: 3/4;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-18 #panel-3 {
  grid-column: 1/2;
  grid-row: 2/3;
  background-color: #b1b1b1;
}
.gridLayout-18 #panel-4 {
  grid-column: 2/3;
  grid-row: 2/3;
  background-color: #b1b1b1;
}
.gridLayout-18 #panel-5 {
  grid-column: 3/4;
  grid-row: 2/3;
  background-color: #b1b1b1;
}

.gridLayout-19 {
  display: grid;
  gap: 5px;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-19 #panel-1 {
  grid-column: 1/3;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-19 #panel-2 {
  grid-column: 3/4;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-19 #panel-3 {
  grid-column: 1/2;
  grid-row: 2/3;
  background-color: #b1b1b1;
}
.gridLayout-19 #panel-4 {
  grid-column: 2/4;
  grid-row: 2/3;
  background-color: #b1b1b1;
}

.gridLayout-20 {
  display: grid;
  gap: 5px;
  width: 900px;
  height: 450px;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.gridLayout-20 #panel-1 {
  grid-column: 1/2;
  grid-row: 1/3;
  background-color: #b1b1b1;
}
.gridLayout-20 #panel-2 {
  grid-column: 2/3;
  grid-row: 1/2;
  background-color: #b1b1b1;
}
.gridLayout-20 #panel-3 {
  grid-column: 2/3;
  grid-row: 2/3;
  background-color: #b1b1b1;
}

/*
A Collection of Layered Elements
 */
/*
.layeredElements-1 {
    display: grid;
    position: relative;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: repeat(4, 1fr);
    color: #ffffff;
    max-width: 1000px;
    #background {
        z-index: 1;
        grid-column: 1 / 4;
        grid-row: 1/5;
        img {
            width: 100%;
            display: block;
        }
    }
    #caption {
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 3;
        background-color: #2c2b37;
        grid-column: 1 / 3;
        grid-row: 4/5;
    }
    #leadImage {
        z-index: 2;
        grid-column: 2 / 6;
        grid-row: 2/5;
        img {
            width: 100%;
            display: block;
        }
    }
    #accent {
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #04b8cc !important;
        grid-column: 6 / 7;
        grid-row: 4/5;

    }
}
*/
#home-2 {
  /*
  section.fourColumns .wrap {
      display: grid;
      grid-template-columns: 1fr;
      @media screen and (min-width: 900px) {
          grid-template-columns: repeat(2, 1fr);
      }
      @media screen and (min-width: 1000px) {
          grid-template-columns: repeat(3, 1fr);
      }
      @media screen and (min-width: 1200px) {
          grid-template-columns: repeat(4, 1fr);
      }
      gap: 15px;
      padding: 15px;
      box-sizing: border-box;
  }

   */
}
#home-2 section.events h2 {
  text-align: center;
}
#home-2 section.events img {
  width: 100%;
}
#home-2 section.twoColumns .wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  padding: 20px;
  box-sizing: border-box;
}
@media screen and (min-width: 1000px) {
  #home-2 section.twoColumns .wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
#home-2 section.threeColumns .wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  padding: 30px;
  box-sizing: border-box;
}
@media screen and (min-width: 1000px) {
  #home-2 section.threeColumns .wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1300px) {
  #home-2 section.threeColumns .wrap {
    grid-template-columns: repeat(3, 1fr);
  }
}
#home-2 section.fourColumns .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; /* this centers items in the last row */
  gap: 14px;
  box-sizing: border-box;
}
#home-2 section#about h2 {
  font-size: 350%;
  color: #365982;
  text-align: center;
}
#home-2 section#about > div {
  text-align: center;
  width: 98% !important;
  max-width: 1100px;
  margin: auto;
  font-size: 150% !important;
  margin-bottom: 1.5em !important;
}

section#eventGrid {
  margin-bottom: 30px;
  /* Keep the image responsive inside the container */
}
section#eventGrid div.title {
  padding: 30px 0 15px 0;
  text-align: center;
}
section#eventGrid div.title h2 {
  font-size: 350%;
  color: #365982;
}
section#eventGrid .article-link {
  text-decoration: none;
  color: inherit;
  display: block;
}
@media screen and (min-width: 1200px) {
  section#eventGrid .article-link {
    flex: 1 1 calc(25% - 14px);
    max-width: calc(25% - 14px);
  }
}
@media screen and (min-width: 1000px) and (max-width: 1199px) {
  section#eventGrid .article-link {
    flex: 1 1 calc(33.333% - 14px);
    max-width: calc(33.333% - 14px);
  }
}
@media screen and (min-width: 900px) and (max-width: 999px) {
  section#eventGrid .article-link {
    flex: 1 1 calc(50% - 14px);
    max-width: calc(50% - 14px);
  }
}
@media screen and (max-width: 899px) {
  section#eventGrid .article-link {
    flex: 1 1 100%;
    max-width: 100%;
  }
}
section#eventGrid .article-link article {
  overflow: hidden;
  position: relative;
  border-radius: 5px;
}
section#eventGrid .image-container {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: auto;
  border-radius: 5px;
}
section#eventGrid .image-container .ribbon-banner {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  padding: 15px 0;
  background: linear-gradient(180deg, rgba(252, 167, 0, 0.55) 0%, rgba(252, 167, 0, 0.7) 100%);
  color: #272b30;
  text-align: center;
  font-size: 13px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1.25;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
  z-index: 10;
  white-space: pre-line;
}
section#eventGrid .image-container img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  aspect-ratio: 16/9;
  transition: transform 0.3s ease-in-out, border-radius 0.3s ease-in-out;
  border-radius: 5px;
}
section#eventGrid article:hover img {
  transform: scale(1.05);
  border-radius: 5px;
}
section#eventGrid article {
  border-radius: 5px !important;
  object-fit: contain;
}
section#eventGrid article a {
  display: block;
}
section#eventGrid article p {
  font-size: 115% !important;
  margin-bottom: 10px !important;
}
section#eventGrid article ul {
  font-size: 115% !important;
  font-weight: 400 !important;
  flex-direction: column;
  color: #ffffff !important;
  list-style-type: none;
  justify-content: space-around;
  margin: 20px 0 0 0 !important;
}
@media screen and (min-width: 600px) {
  section#eventGrid article ul {
    flex-direction: row;
    justify-content: space-between;
  }
}
section#eventGrid article ul li {
  text-align: center;
  letter-spacing: 2px;
  text-indent: 2px;
  padding: 0 !important;
  line-height: 38px;
  height: 38px;
  margin-bottom: 20px !important;
}
@media screen and (min-width: 600px) {
  section#eventGrid article ul li {
    flex-basis: 49%;
    margin: 0 !important;
  }
}
section#eventGrid article ul li:last-child {
  margin-bottom: 0 !important;
}
section#eventGrid article ul a {
  text-decoration: none;
  color: #ffffff;
  display: block;
  background-color: #8ab145;
  border-radius: 5px;
}
section#eventGrid article ul a:hover {
  background-color: #e46e19;
}
section#eventGrid article .title {
  margin-bottom: 5px !important;
  padding-top: 12px !important;
  color: #365982;
  font-size: 125% !important;
  line-height: 1.2em !important;
  text-align: center;
  font-weight: bold;
}
section#eventGrid article .subTitle {
  line-height: 1.5em !important;
  font-size: 105% !important;
  font-weight: bold;
  color: #313131;
  margin-bottom: 5px !important;
  text-wrap: balance; /* best-effort line balancing */
  text-align: center;
}
section#eventGrid article .instructor {
  text-align: center;
  font-size: 100% !important;
  line-height: 1.5em !important;
  border-bottom: 1px solid #d8d8d8;
  padding-bottom: 15px !important;
  margin-bottom: 20px !important;
  color: #ffffff !important;
}
section#eventGrid article .dates {
  text-align: center;
  font-size: 110% !important;
  margin-bottom: 5px !important;
}
section#eventGrid article .venue {
  text-align: center;
  font-size: 110% !important;
  margin-bottom: 10px !important;
}
section#eventGrid article .location {
  text-align: center;
  line-height: 1.5em;
  font-size: 110% !important;
  margin-bottom: 0 !important;
}

header#featuredEvent {
  background-color: #b3d6fe;
  background-position: 50% 40% !important;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  padding: 16px;
  border-radius: 8px;
  margin: 16px;
}
header#featuredEvent > section {
  background: rgb(27, 30, 33);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.6) 100%);
  text-align: center;
  max-width: 1400px !important;
  border-radius: 8px;
}
header#featuredEvent > section .wrap {
  padding: 20px;
}
header#featuredEvent > section h2 {
  color: #9eb7d8 !important;
  font-weight: 500;
  line-height: 1.25em !important;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5), 0 0 3px rgba(0, 0, 0, 0.4);
  font-size: 230% !important;
  margin-bottom: 15px !important;
}
@media screen and (max-width: 700px) {
  header#featuredEvent > section h2 {
    font-size: 180% !important;
    font-weight: 600;
  }
}
header#featuredEvent > section h3 {
  color: #ffffff !important;
  font-weight: 600;
  font-size: 140% !important;
  margin-bottom: 15px !important;
}
@media screen and (max-width: 700px) {
  header#featuredEvent > section h3 {
    font-size: 110% !important;
    line-height: 1.2em !important;
  }
}
header#featuredEvent > section h4 {
  color: #9eb7d8 !important;
  font-weight: 500;
  font-size: 220% !important;
}
@media screen and (max-width: 700px) {
  header#featuredEvent > section h4 {
    font-size: 110% !important;
    font-weight: 600;
  }
}
header#featuredEvent > section p {
  color: #ffffff;
  font-size: 110% !important;
  line-height: 1.5em !important;
  margin-bottom: 1em !important;
}

footer {
  background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
}
footer ul.socialConnect {
  display: grid;
  max-width: 250px;
  gap: 10px;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
footer ul.socialConnect img {
  max-width: 100%;
}
footer div.wrap {
  display: flex;
  flex-direction: column;
}
footer div.wrap > section {
  flex-shrink: 1;
}
@media only screen and (min-width: 1100px) {
  footer div.wrap {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, 1fr);
  }
}
footer section#siteMap {
  order: 1;
  padding: 30px;
}
@media only screen and (min-width: 1100px) {
  footer section#siteMap {
    order: 0;
  }
}
footer section#siteMap a {
  color: #ffffff;
  text-decoration: none;
}
footer section#siteMap a:hover {
  text-decoration: underline;
}
footer section#siteMap h3 {
  font-size: 225%;
  margin-bottom: 15px !important;
  color: #ffffff;
}
footer section#siteMap p {
  margin-bottom: 15px !important;
}
footer section#siteMap ul {
  list-style-type: none;
  margin-bottom: 30px !important;
}
footer section#siteMap ul li {
  margin-bottom: 12px;
}
footer section#siteMap ul li:last-child {
  margin-bottom: 0;
}
footer section#branding {
  order: 3;
  padding: 30px;
}
@media only screen and (min-width: 1100px) {
  footer section#branding {
    order: 0;
  }
}
footer section#branding > div img {
  padding: 30px;
  display: block;
  margin: auto;
  width: 100%;
  max-width: 300px;
}
footer section#branding > div p {
  text-align: center;
}
footer section#branding > div p.title {
  color: #ffffff;
  font-size: 300%;
  letter-spacing: 3px;
  text-indent: 3px;
  margin-bottom: 15px !important;
  font-weight: lighter !important;
}
footer section#branding > div p.tag {
  color: #ffffff;
  text-transform: uppercase;
  font-size: 130%;
  font-weight: normal !important;
  letter-spacing: 7px;
  text-indent: 7px;
}
footer section#newsletter {
  order: 2;
  padding: 30px;
}
@media only screen and (min-width: 1100px) {
  footer section#newsletter {
    order: 0;
  }
}
footer section#newsletter h3 {
  font-size: 225%;
  margin-bottom: 15px !important;
  color: #ffffff;
}
footer section#newsletter p {
  font-size: 110%;
  margin-bottom: 20px !important;
  color: #ffffff;
}
footer section#copyright {
  text-align: center;
  padding: 1.5em 0;
  margin-top: 1.5em;
}
footer section#copyright p {
  color: #ffffff;
}

div.formErrors {
  background-color: darkred;
  margin-bottom: 40px;
  font-size: 115% !important;
  padding: 15px;
  border-radius: 8px;
}
div.formErrors div.message {
  color: #ffffff !important;
  flex-direction: column;
  display: flex;
}
div.formErrors div.message i {
  flex-basis: 100%;
  text-align: center !important;
  font-size: 200% !important;
  margin-bottom: 10px;
}
div.formErrors div.message div {
  flex-basis: 100%;
  text-align: center;
  font-size: 140% !important;
}
div.formErrors div.message p {
  color: #ffffff !important;
}
div.formErrors ul {
  list-style-position: outside;
  color: #ffffff !important;
  padding: 15px !important;
  font-size: 100% !important;
}
div.formErrors li {
  margin-bottom: 5px !important;
  line-height: 1.25em;
}
div.formErrors li:last-child {
  margin-bottom: 0 !important;
}

div#contact.formErrors p {
  color: #ffffff !important;
}
div#contact.formErrors li {
  margin-bottom: 5px !important;
}
div#contact.formErrors li:last-child {
  margin-bottom: 0 !important;
}

footer form#newsletterSignUp {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: space-between;
}
footer form#newsletterSignUp div.formGroup {
  width: 100%;
  margin-bottom: 20px;
}
footer form#newsletterSignUp div#robotCheck {
  font-size: 120% !important;
  font-weight: bold;
  font-family: "League Spartan", sans-serif;
  display: flex;
}
footer form#newsletterSignUp label {
  color: #ffffff !important;
  margin-bottom: 10px !important;
  display: block;
}
footer form#newsletterSignUp input[type=text], footer form#newsletterSignUp input[type=email], footer form#newsletterSignUp textarea {
  padding: 10px;
  border: none;
  width: 100%;
  font-size: 110% !important;
  border-radius: 2px;
}
footer form#newsletterSignUp input[type=submit] {
  width: 100%;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 6px;
  border: none !important;
  color: #ffffff;
  background-color: #9eb7d8;
  margin-top: 10px;
}
footer form#newsletterSignUp input[type=submit]:hover {
  background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
  cursor: pointer;
  outline: 1px solid #ffffff;
}

form#contactEdit div.formGroup {
  width: 100%;
  margin-bottom: 20px;
}
form#contactEdit label {
  color: #365982 !important;
  margin-bottom: 8px !important;
  display: block;
  font-size: 150%;
}
form#contactEdit input[type=text], form#contactEdit textarea, form#contactEdit select {
  padding: 8px;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 100% !important;
  border-radius: 3px;
}
form#contactEdit input[type=submit] {
  width: 100%;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 6px !important;
  border: none !important;
  color: #ffffff;
  background-color: #8ab145;
}
form#contactEdit input[type=submit]:hover {
  background-color: #e46e19;
}

form#newsletterSignUpEdit div.formGroup {
  width: 100%;
  margin-bottom: 20px;
}
form#newsletterSignUpEdit label {
  color: #365982 !important;
  margin-bottom: 8px !important;
  display: block;
  font-size: 150%;
}
form#newsletterSignUpEdit input[type=text], form#newsletterSignUpEdit textarea {
  padding: 8px;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 100% !important;
  border-radius: 3px;
}
form#newsletterSignUpEdit input[type=submit] {
  width: 100%;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 6px !important;
  border: none !important;
  color: #ffffff;
  background-color: #8ab145;
}
form#newsletterSignUpEdit input[type=submit]:hover {
  background-color: #e46e19;
}

section#newsletterSignUp form#newsletterSignUp {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: space-between;
}
section#newsletterSignUp form#newsletterSignUp div.formGroup {
  width: 100%;
  margin-bottom: 20px;
}
section#newsletterSignUp form#newsletterSignUp div#robotCheck {
  font-size: 120% !important;
  font-weight: bold;
  font-family: "League Spartan", sans-serif;
  display: flex;
}
section#newsletterSignUp form#newsletterSignUp label {
  color: #ffffff !important;
  margin-bottom: 10px !important;
  display: block;
}
section#newsletterSignUp form#newsletterSignUp input[type=text], section#newsletterSignUp form#newsletterSignUp textarea {
  padding: 10px;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 110% !important;
  border-radius: 2px;
}
section#newsletterSignUp form#newsletterSignUp input[type=submit] {
  width: 100%;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 2px;
  border: none !important;
  color: #ffffff;
  background-color: #4a235f;
}
section#newsletterSignUp form#newsletterSignUp input[type=submit]:hover {
  background-color: #f59038;
  cursor: pointer;
}

form#standardContact div.formGroup {
  width: 100%;
  margin-bottom: 20px;
}
form#standardContact label {
  width: 100%;
  margin-bottom: 5px !important;
  font-size: 100% !important;
  font-weight: bold;
  display: block;
}
form#standardContact div#robotCheck {
  font-size: 100% !important;
  font-weight: bold;
  font-family: "League Spartan", sans-serif;
  display: flex;
}
form#standardContact select {
  padding: 0.75em;
  border: 1px solid #dbdbdb;
  width: 100%;
  font-size: 100% !important;
  border-radius: 4px;
}
form#standardContact textarea {
  padding: 0.5em;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 110% !important;
  border-radius: 2px;
  height: 225px;
}
form#standardContact input[type=text], form#standardContact textarea {
  padding: 0.5em;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 110% !important;
  border-radius: 2px;
}
form#standardContact input[type=submit] {
  width: 100%;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 6px !important;
  border: none !important;
  color: #ffffff;
  background-color: #8ab145;
}
form#standardContact input[type=submit]:hover {
  background-color: #e46e19;
}

form#waitlist {
  border: 1px solid #cccccc;
  padding: 20px;
  background-color: #f7f7f7;
  width: 96%;
  margin: auto;
  max-width: 500px;
  box-sizing: border-box;
}
form#waitlist div.formGroup {
  width: 100%;
  margin-bottom: 12px;
}
form#waitlist label {
  width: 100%;
  margin-bottom: 5px !important;
  font-weight: bold;
  display: block;
  color: #000e14;
  font-size: 90% !important;
}
form#waitlist input[type=text], form#waitlist textarea {
  padding: 0.5em;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 90% !important;
  border-radius: 2px;
}
form#waitlist input[type=submit] {
  width: 100%;
  max-width: 500px;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 2px !important;
  border: none !important;
  color: #ffffff;
  background-color: #1a202c;
}
form#waitlist input[type=submit]:hover {
  background-color: #4a5568;
  cursor: hand;
}

form#registration {
  border: 1px solid #dbdbdb;
  padding: 24px;
  background-color: #fbfbfb;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
  border-radius: 8px;
  grid-template-areas: "allRequired allRequired" "firstName firstName" "lastName lastName" "emailAddress emailAddress" "licenseStatus licenseStatus" "licenseDetails licenseDetails" "state state" "profession profession" "howHearSelect howHearSelect" "tosAccept tosAccept" "tosAcceptPartialCredit tosAcceptPartialCredit" "tosAcceptHotel tosAcceptHotel" "tosAcceptAccommodations tosAcceptAccommodations" "button button";
}
form#registration div#tosAccept, form#registration div#tosAcceptHotel, form#registration div#tosAcceptAccommodations, form#registration div#tosAcceptPartialCredit {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
}
form#registration div#tosAccept label, form#registration div#tosAcceptHotel label, form#registration div#tosAcceptAccommodations label, form#registration div#tosAcceptPartialCredit label {
  margin-bottom: 0 !important;
  padding-top: 5px;
}
form#registration div#tosAccept input[type=checkbox], form#registration div#tosAcceptHotel input[type=checkbox], form#registration div#tosAcceptAccommodations input[type=checkbox], form#registration div#tosAcceptPartialCredit input[type=checkbox] {
  margin-right: 10px;
  font-size: 200%;
}
form#registration div.formGroup {
  width: 100%;
}
form#registration h2 {
  text-align: center;
}
form#registration label {
  width: 100%;
  margin-bottom: 5px !important;
  font-weight: bold;
  display: block;
  color: #454545;
  font-size: 115% !important;
}
form#registration input[type=text], form#registration select, form#registration textarea {
  padding: 0.75em;
  border: 1px solid #dbdbdb;
  width: 100%;
  font-size: 100% !important;
  border-radius: 4px;
}
form#registration input[type=submit] {
  width: 100%;
  max-width: 500px;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 5px !important;
  border: none !important;
  color: #ffffff;
  background-color: #8ab145;
}
form#registration input[type=submit]:hover {
  background-color: #e46e19;
  cursor: hand;
}
form#registration div.checkbox > div {
  display: flex;
  align-items: center;
  padding-top: 15px;
}
form#registration div.checkbox > div label {
  margin-bottom: 0 !important;
}
form#registration #allRequired {
  grid-area: allRequired;
}
form#registration #allRequired p {
  font-size: 175% !important;
  text-align: center;
}
form#registration #firstName {
  grid-area: firstName;
}
form#registration #lastName {
  grid-area: lastName;
}
form#registration #emailAddress {
  grid-area: emailAddress;
}
form#registration #howHearSelect {
  grid-area: howHearSelect;
}
form#registration #emailAddressConfirm {
  grid-area: emailAddressConfirm;
}
form#registration #phoneNumber {
  grid-area: phoneNumber;
}
form#registration #licenseStatus {
  grid-area: licenseStatus;
  display: flex;
  flex-direction: column;
}
form#registration #licenseStatus button {
  padding: 0.75em;
  border: none;
  width: 100%;
  font-size: 100% !important;
  border-radius: 4px;
  margin-bottom: 20px;
  background-color: #385a84;
  color: #ffffff;
}
form#registration #licenseStatus button:hover {
  background-color: #8ab145;
}
form#registration #licenseDetails {
  grid-area: licenseDetails;
}
form#registration #licenseDetails .formGroup {
  margin-bottom: 20px !important;
}
form#registration #licenseDetails .formGroup:last-child {
  margin-bottom: 0 !important;
}
form#registration #state {
  grid-area: state;
}
form#registration #profession {
  grid-area: profession;
}
form#registration #licenseNumber {
  grid-area: licenseNumber;
}
form#registration #tosAccept {
  grid-area: tosAccept;
}
form#registration #tosAcceptPartialCredit {
  grid-area: tosAcceptPartialCredit;
}
form#registration #tosAcceptHotel {
  grid-area: tosAcceptHotel;
}
form#registration #tosAcceptAccommodations {
  grid-area: tosAcceptAccommodations;
}
form#registration #ceu {
  grid-area: ceu;
}
form#registration #groupRate {
  grid-area: groupRate;
}
form#registration #button {
  grid-area: button;
}

form#collectPaymentInformation {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, 1fr);
  grid-template-areas: "nameAsAppears nameAsAppears" "cardNumber cardNumber" "expirationMonth expirationYear" "cvcCode zipCode" "button button";
}
form#collectPaymentInformation div.formGroup {
  width: 100%;
}
form#collectPaymentInformation label {
  width: 100%;
  margin-bottom: 5px !important;
  font-weight: bold;
  display: block;
  color: #000e14;
  font-size: 110% !important;
}
form#collectPaymentInformation input[type=text], form#collectPaymentInformation textarea {
  padding: 0.5em;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 110% !important;
  border-radius: 2px;
}
form#collectPaymentInformation #nameAsAppears {
  grid-area: nameAsAppears;
}
form#collectPaymentInformation #cardNumber {
  grid-area: cardNumber;
}
form#collectPaymentInformation #expirationMonth {
  grid-area: expirationMonth;
}
form#collectPaymentInformation #expirationYear {
  grid-area: expirationYear;
}
form#collectPaymentInformation #cvcCode {
  grid-area: cvcCode;
}
form#collectPaymentInformation #zipCode {
  grid-area: zipCode;
}
form#collectPaymentInformation #button {
  grid-area: button;
  padding: 20px 0 0 0;
}
form#collectPaymentInformation #button input[type=submit] {
  width: 100%;
  max-width: 500px;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 2px !important;
  border: none !important;
  color: #ffffff;
  background-color: #1a202c;
}

form#login {
  border: 1px solid #dbdbdb;
  padding: 20px;
  background-color: #f8f8f8;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 30px;
  grid-template-areas: "emailAddress" "password" "button" "forgotPassword" "createAccount";
}
form#login div.formGroup {
  width: 100%;
}
form#login h2 {
  text-align: center;
}
form#login label {
  width: 100%;
  margin-bottom: 5px !important;
  font-weight: bold;
  display: block;
  color: #000e14;
  font-size: 100% !important;
}
form#login input[type=text], form#login input[type=password] {
  padding: 0.5em;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 100% !important;
  border-radius: 2px;
}
form#login input[type=submit] {
  width: 100%;
  max-width: 500px;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 2px !important;
  border: none !important;
  color: #ffffff;
  background-color: #365982;
}
form#login input[type=submit]:hover {
  background-color: #3c546e;
  cursor: hand;
}
form#login #emailAddress {
  grid-area: emailAddress;
}
form#login #password {
  grid-area: password;
}
form#login #button {
  grid-area: button;
}
form#login #forgotPassword {
  grid-area: forgotPassword;
  text-align: center;
}
form#login #forgotPassword a {
  color: #000e14;
}
form#login #createAccount {
  grid-area: createAccount;
  text-align: center;
}
form#login #createAccount a {
  color: #000e14;
}

form#createYourAccount {
  border: 1px solid #dbdbdb;
  padding: 20px;
  background-color: #f8f8f8;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 20px;
  grid-template-areas: "firstName" "lastName" "emailAddress" "password" "passwordConfirm" "button";
}
form#createYourAccount .formGroup {
  width: 100%;
  margin-bottom: 10px;
}
form#createYourAccount .formGroup input[type=text], form#createYourAccount .formGroup input[type=password] {
  padding: 0.5em;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 100% !important;
  border-radius: 2px;
}
form#createYourAccount .formGroup label {
  width: 100%;
  margin-bottom: 5px !important;
  font-weight: bold;
  display: block;
  color: #000e14;
  font-size: 100% !important;
}
form#createYourAccount input[type=submit] {
  width: 100%;
  max-width: 500px;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 2px !important;
  border: none !important;
  color: #ffffff;
  background-color: #365982;
}
form#createYourAccount input[type=submit]:hover {
  background-color: #3c546e;
  cursor: hand;
}
form#createYourAccount #firstName {
  grid-area: firstName;
}
form#createYourAccount #lastName {
  grid-area: lastName;
}
form#createYourAccount #emailAddress {
  grid-area: emailAddress;
}
form#createYourAccount #password {
  grid-area: password;
}
form#createYourAccount #passwordConfirm {
  grid-area: passwordConfirm;
}
form#createYourAccount #button {
  grid-area: button;
}

form#createYourPassword {
  border: 1px solid #dbdbdb;
  padding: 20px;
  background-color: #f8f8f8;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 20px;
  grid-template-areas: "password" "passwordConfirm" "button";
}
form#createYourPassword .formGroup {
  width: 100%;
  margin-bottom: 10px;
}
form#createYourPassword .formGroup input[type=text], form#createYourPassword .formGroup input[type=password] {
  padding: 0.5em;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 100% !important;
  border-radius: 2px;
}
form#createYourPassword .formGroup label {
  width: 100%;
  margin-bottom: 5px !important;
  font-weight: bold;
  display: block;
  color: #000e14;
  font-size: 100% !important;
}
form#createYourPassword input[type=submit] {
  width: 100%;
  max-width: 500px;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 2px !important;
  border: none !important;
  color: #ffffff;
  background-color: #365982;
}
form#createYourPassword input[type=submit]:hover {
  background-color: #3c546e;
  cursor: hand;
}
form#createYourPassword #password {
  grid-area: password;
}
form#createYourPassword #passwordConfirm {
  grid-area: passwordConfirm;
}
form#createYourPassword #button {
  grid-area: button;
}

form#editYourAccount {
  border: 1px solid #dbdbdb;
  padding: 20px;
  background-color: #f8f8f8;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 20px;
  grid-template-areas: "firstName" "lastName" "emailAddress" "howHearSelect" "tosAccept" "tosAcceptHotel" "button";
}
form#editYourAccount div#tosAccept {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
}
form#editYourAccount div#tosAccept label {
  margin-bottom: 0 !important;
  padding-top: 5px;
}
form#editYourAccount div#tosAccept input[type=checkbox] {
  margin-right: 10px;
  font-size: 200%;
}
form#editYourAccount .formGroup {
  width: 100%;
  margin-bottom: 10px;
}
form#editYourAccount .formGroup input[type=text], form#editYourAccount .formGroup input[type=password], form#editYourAccount .formGroup select {
  padding: 0.5em;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 100% !important;
  border-radius: 4px;
}
form#editYourAccount .formGroup label {
  width: 100%;
  margin-bottom: 5px !important;
  font-weight: bold;
  display: block;
  color: #000e14;
  font-size: 100% !important;
}
form#editYourAccount input[type=submit] {
  width: 100%;
  max-width: 500px;
  margin: auto;
  display: block;
  text-transform: uppercase;
  padding: 10px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 100%;
  border-radius: 2px !important;
  border: none !important;
  color: #ffffff;
  background-color: #365982;
}
form#editYourAccount input[type=submit]:hover {
  background-color: #3c546e;
  cursor: hand;
}
form#editYourAccount #firstName {
  grid-area: firstName;
}
form#editYourAccount #lastName {
  grid-area: lastName;
}
form#editYourAccount #emailAddress {
  grid-area: emailAddress;
}
form#editYourAccount #howHearSelect {
  grid-area: howHearSelect;
}
form#editYourAccount #tosAccept {
  grid-area: tosAccept;
}
form#editYourAccount #tosAcceptHotel {
  grid-area: tosAcceptHotel;
}
form#editYourAccount #button {
  grid-area: button;
}

form#accountLogin .formGroup {
  width: 100%;
  margin-bottom: 10px;
}
form#accountLogin .formGroup input[type=text], form#accountLogin .formGroup input[type=password] {
  width: 100%;
  padding: 6px;
}
form#accountLogin .formGroup label {
  display: block;
  width: 100%;
  margin-bottom: 5px;
}
form#accountLogin #emailAddress {
  grid-area: emailAddress;
}
form#accountLogin #password {
  grid-area: password;
}
form#accountLogin #button {
  grid-area: button;
}

form#payment-form button {
  background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
  color: #ffffff;
  border: none;
  width: 100%;
  text-align: center;
  padding: 20px;
  border-radius: 4px;
  margin-top: 15px;
  font-size: 120% !important;
}
form#payment-form button:hover {
  background-color: #8ab145 !important;
}

/*
form#newsletterSignUp {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: space-between;

  div.formGroup {
    width: 100%;
    margin-bottom: 20px;
  }

  div#robotCheck {
    font-size: 120% !important;
    font-weight: bold;
    font-family: $sansSerifFont1;
    display: flex;

  }

  input[type="text"], textarea {
    padding: .7em;
    border: 1px solid #cccccc;
    width: 100%;
    font-size: 110% !important;
    border-radius: 2px;
  }

  input[type="text"], textarea {
    padding: .7em;
    border: 1px solid #cccccc;
    width: 100%;
    font-size: 110% !important;
    border-radius: 2px;
  }

  input[type="submit"] {
    width: 100%;
    text-transform: uppercase;
    padding: 10px;
    letter-spacing: 7px;
    text-indent: 7px;
    font-size: 100%;
    border-radius: 2px;
    border: none !important;
    color: #ffffff;
    background-color: #1a202c;
  }
}
*/
main#anEvent {
  font-family: "League Spartan", sans-serif !important;
}
main#anEvent a {
  color: #365982;
}
main#anEvent div.formErrors, main#anEvent div#registrationForm {
  width: 98%;
  max-width: 1200px;
  margin: 30px auto;
}
main#anEvent a.reservationUrl {
  color: #ffffff;
  text-decoration: none !important;
}
main#anEvent a.reservationUrl:hover {
  text-decoration: underline !important;
}
main#anEvent a.registerNow {
  padding-top: 3px;
  margin: auto;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 53px;
  background-color: #8ab145;
  width: 90%;
  max-width: 800px;
  height: 50px !important;
  color: #ffffff !important;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 5px;
  text-indent: 5px;
  font-size: 120%;
}
main#anEvent a.registerNow:hover {
  background-color: #e46e19;
}
main#anEvent a.allEvents {
  padding-top: 3px;
  margin: 20px auto 0 auto;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 53px;
  background-color: #e46e19;
  width: 90%;
  max-width: 800px;
  height: 50px !important;
  color: #ffffff !important;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 5px;
  text-indent: 5px;
  font-size: 120%;
}
main#anEvent a.allEvents:hover {
  background-color: #8ab145;
}
main#anEvent header#heroShot {
  background-color: #b3d6fe;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
}
main#anEvent header#heroShot > section {
  background: rgb(27, 30, 33);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.6) 100%);
  text-align: center;
  width: 94%;
  max-width: 1000px !important;
  border-radius: 8px;
}
main#anEvent header#heroShot > section .wrap {
  padding: 20px;
}
main#anEvent header#heroShot > section h2 {
  color: #9eb7d8 !important;
  font-weight: 500;
  font-size: 220% !important;
  margin-bottom: 15px !important;
}
@media screen and (max-width: 700px) {
  main#anEvent header#heroShot > section h2 {
    font-size: 115% !important;
    font-weight: 600;
  }
}
main#anEvent header#heroShot > section h3 {
  color: #ffffff !important;
  font-weight: 600;
  font-size: 140% !important;
  margin-bottom: 15px !important;
}
@media screen and (max-width: 700px) {
  main#anEvent header#heroShot > section h3 {
    font-size: 110% !important;
    line-height: 1.2em !important;
  }
}
main#anEvent header#heroShot > section h3.courseTitle {
  color: #9eb7d8 !important;
  font-weight: 500;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5), 0 0 6px rgba(0, 0, 0, 0.4);
  font-size: 255% !important;
  line-height: 1.2em;
}
@media screen and (max-width: 700px) {
  main#anEvent header#heroShot > section h3.courseTitle {
    font-size: 150% !important;
    font-weight: 600;
  }
}
main#anEvent header#heroShot > section h4 {
  color: #9eb7d8 !important;
  font-weight: 500;
  line-height: 1.2em;
  margin-bottom: 15px !important;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5), 0 0 6px rgba(0, 0, 0, 0.4);
  font-size: 180% !important;
}
@media screen and (max-width: 700px) {
  main#anEvent header#heroShot > section h4 {
    font-size: 120% !important;
    font-weight: 600;
  }
}
main#anEvent section#theEvent {
  padding: 2em 0;
}
main#anEvent section#theEvent h2 {
  font-family: "League Spartan", sans-serif !important;
  font-size: 150%;
  margin-bottom: 15px !important;
  color: #365982;
  line-height: 1.2em;
  font-weight: 400 !important;
}
@media screen and (min-width: 700px) {
  main#anEvent section#theEvent h2 {
    font-size: 210%;
  }
}
main#anEvent section#theEvent h3 {
  font-size: 220% !important;
  margin-bottom: 15px !important;
  color: #9eb7d8;
  font-weight: 400;
}
main#anEvent section#theEvent h4 {
  font-size: 190% !important;
  margin-bottom: 15px !important;
  color: #9eb7d8;
  font-weight: 400;
}
main#anEvent section#theEvent p {
  margin-bottom: 50px !important;
  line-height: 1.6em !important;
  color: #313131 !important;
  font-size: 120%;
}
main#anEvent section#theEvent ul {
  margin-bottom: 50px !important;
  line-height: 1.6em !important;
  color: #313131 !important;
  font-size: 120%;
  list-style-position: inside;
}
main#anEvent section#theEvent li {
  margin-bottom: 12px;
}
main#anEvent section#theEvent .wrap {
  width: 94% !important;
  max-width: 1500px;
  margin: auto;
}
main#anEvent section#theEvent div#titleBlock {
  padding-bottom: 20px;
}
main#anEvent section#theEvent div#titleBlock #earlyRegistration a, main#anEvent section#theEvent div#titleBlock #normalRegistration a {
  text-decoration: none;
  color: #ffffff;
}
main#anEvent section#theEvent div#titleBlock #earlyRegistration a:hover, main#anEvent section#theEvent div#titleBlock #normalRegistration a:hover {
  text-decoration: underline;
}
main#anEvent section#theEvent div#titleBlock h2 {
  font-family: "League Spartan", sans-serif !important;
  font-size: 270%;
  margin-bottom: 20px !important;
  color: #365982;
  text-align: center;
}
main#anEvent section#theEvent div#titleBlock h3 {
  margin-bottom: 10px !important;
  font-size: 150% !important;
  color: #313131;
  line-height: 1.2em;
  text-align: center;
}
main#anEvent section#theEvent div#titleBlock h4 {
  margin-bottom: 15px !important;
  font-size: 250% !important;
  color: #365982;
  text-align: center;
  font-weight: lighter;
}
main#anEvent section#theEvent div#titleBlock h5 {
  margin-bottom: 15px !important;
  font-size: 120% !important;
  font-weight: bold !important;
  color: #5d5d5d;
}
main#anEvent section#theEvent div#titleBlock a.registerNow {
  margin-top: 25px !important;
  margin-bottom: 25px !important;
}
main#anEvent section#theEvent div#titleBlock div#normalRegistration {
  display: grid;
  gap: 15px;
  grid-template-columns: 1fr;
  margin: 0 auto 30px auto;
}
@media screen and (min-width: 800px) {
  main#anEvent section#theEvent div#titleBlock div#normalRegistration {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1000px) {
  main#anEvent section#theEvent div#titleBlock div#normalRegistration {
    grid-template-columns: repeat(2, 1fr);
  }
}
main#anEvent section#theEvent div#titleBlock div#normalRegistration > div {
  background-color: #365982 !important;
  padding: 10px;
  border-radius: 6px;
  width: 100%;
  max-width: 800px;
  margin: auto;
}
main#anEvent section#theEvent div#titleBlock div#normalRegistration > div p {
  color: #ffffff !important;
  font-size: 100% !important;
  text-align: center;
  margin: 0 !important;
  letter-spacing: 4px;
  text-indent: 4px;
  text-transform: uppercase;
}
main#anEvent section#theEvent div#titleBlock div#earlyRegistration {
  display: grid;
  gap: 15px;
  grid-template-columns: 1fr;
  margin: 0 auto 30px auto;
}
@media screen and (min-width: 700px) {
  main#anEvent section#theEvent div#titleBlock div#earlyRegistration {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 1000px) {
  main#anEvent section#theEvent div#titleBlock div#earlyRegistration {
    grid-template-columns: repeat(4, 1fr);
  }
}
main#anEvent section#theEvent div#titleBlock div#earlyRegistration > div {
  background-color: #365982 !important;
  padding: 10px;
  border-radius: 6px;
}
main#anEvent section#theEvent div#titleBlock div#earlyRegistration > div p {
  color: #ffffff !important;
  font-size: 120% !important;
}
main#anEvent section#theEvent div#titleBlock div#earlyRegistration > div p:first-child {
  font-weight: bold;
  margin-bottom: 5px !important;
  margin-top: 5px !important;
  line-height: 1em !important;
}
main#anEvent section#theEvent div#titleBlock div#earlyRegistration > div p:last-child {
  margin-bottom: 0 !important;
}
main#anEvent section#theEvent div#titleBlock div#earlyRegistration > div:last-child {
  border: none !important;
}
main#anEvent section#continuingEducation {
  padding-top: 3em;
  padding-bottom: 3em;
}
main#anEvent section#continuingEducation h2 {
  text-align: center !important;
  font-size: 325%;
  margin-bottom: 15px !important;
  color: #365982 !important;
}
main#anEvent section#continuingEducation h3 {
  text-align: center !important;
  font-size: 250%;
  color: #8A979A;
  margin-bottom: 10px !important;
}
main#anEvent section#continuingEducation img {
  width: 50%;
  max-width: 225px;
  display: block;
  margin: auto;
  mix-blend-mode: multiply;
}
main#anEvent section#continuingEducation div.wrap {
  width: calc(98% - 20px) !important;
  max-width: 1200px;
  margin: 3em auto 3em auto !important;
  overflow: hidden;
}
main#anEvent section#continuingEducation div.wrap > div {
  border: 1px solid #cccccc;
  padding: 20px !important;
  background-color: #fafafa;
  border-radius: 8px;
}
main#anEvent section#continuingEducation div.wrap > div h4 {
  font-size: 115%;
  font-weight: bold;
  margin-bottom: 15px !important;
}
main#anEvent section#continuingEducation div.wrap > div ul {
  list-style-position: outside;
  font-size: 105%;
  padding: 30px !important;
}
main#anEvent section#continuingEducation div.wrap > div li {
  margin-bottom: 10px;
  line-height: 1.25em;
}
main#anEvent section#dailySchedule {
  margin-bottom: 3em;
}
main#anEvent section#dailySchedule h2 {
  text-align: center;
  font-size: 325%;
  margin-bottom: 15px !important;
  color: #365982 !important;
}
main#anEvent section#dailySchedule div.wrap {
  width: calc(98% - 20px) !important;
  max-width: 1400px;
  margin: 0 auto 20px auto;
  overflow: hidden;
  display: grid;
  grid-gap: 20px;
  grid-template-columns: 100%;
}
@media screen and (min-width: 800px) {
  main#anEvent section#dailySchedule div.wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
main#anEvent section#dailySchedule div.wrap > div {
  padding: 20px;
  background-color: #fafafa;
  border: 1px solid #dbdbdb;
  border-radius: 8px;
}
main#anEvent section#dailySchedule div.wrap > div h4 {
  margin-bottom: 14px !important;
  font-size: 210% !important;
  font-weight: 300;
  color: #365982 !important;
}
main#anEvent section#dailySchedule div.wrap > div dl {
  font-size: 115% !important;
  color: #313131 !important;
}
main#anEvent section#dailySchedule div.wrap > div dt {
  font-weight: bold;
  margin-bottom: 5px;
}
main#anEvent section#dailySchedule div.wrap > div dd {
  margin-bottom: 18px;
  line-height: 1.25em !important;
}
main#anEvent section#dailySchedule div.wrap > div dd:last-child {
  margin-bottom: 0;
}
main#anEvent section#dailySchedule aside {
  background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
  width: calc(98% - 20px) !important;
  max-width: 1400px;
  margin: 0 auto 3em auto;
  overflow: hidden;
  border-radius: 8px;
}
main#anEvent section#dailySchedule aside > div {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 900px) {
  main#anEvent section#dailySchedule aside > div {
    flex-direction: row;
  }
}
main#anEvent section#dailySchedule aside > div article {
  padding: 30px;
}
main#anEvent section#dailySchedule aside > div article a {
  color: #ffffff;
}
main#anEvent section#dailySchedule aside > div article p {
  font-size: 140% !important;
  color: #ffffff;
  line-height: 1.5em;
  font-weight: lighter;
}
@media screen and (min-width: 1000px) {
  main#anEvent section#dailySchedule aside > div article p {
    font-size: 160% !important;
  }
}
main#anEvent section#dailySchedule aside > div div {
  flex-basis: 50%;
}
main#anEvent section#dailySchedule aside > div div img {
  width: 100%;
  display: block;
}
main#anEvent section#countDown {
  text-align: center;
  background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
  color: #ffffff !important;
  padding: 30px 0;
}
main#anEvent section#countDown h4 {
  font-size: 160%;
  color: #9eb7d8;
  text-align: center;
}
@media screen and (min-width: 800px) {
  main#anEvent section#countDown h4 {
    font-size: 260%;
  }
}
main#anEvent section#countDown h5 {
  font-size: 160%;
  line-height: 1.25em !important;
  color: #9eb7d8;
  text-align: center;
}
@media screen and (min-width: 800px) {
  main#anEvent section#countDown h5 {
    font-size: 200%;
  }
}
main#anEvent section#countDown div#timer {
  padding: 20px 0;
}
main#anEvent section#countDown div#timer a.registerNow {
  margin-top: 20px !important;
}
main#anEvent section#countDown div#timer p {
  font-size: 150%;
}
@media screen and (min-width: 800px) {
  main#anEvent section#countDown div#timer p {
    font-size: 200%;
  }
}
main#anEvent section#countDown p {
  color: #ffffff;
  font-size: 130%;
}
main#anEvent section#ratesAndRegistration {
  padding: 2em 0;
}
main#anEvent section#ratesAndRegistration cite {
  font-weight: bold;
  font-size: 90%;
}
main#anEvent section#ratesAndRegistration h2 {
  text-align: center;
  font-size: 200%;
  color: #365982;
}
@media screen and (min-width: 600px) {
  main#anEvent section#ratesAndRegistration h2 {
    font-size: 300%;
  }
}
@media screen and (min-width: 800px) {
  main#anEvent section#ratesAndRegistration h2 {
    font-size: 325%;
  }
}
main#anEvent section#ratesAndRegistration h3 {
  color: #9eb7d8;
  text-align: center;
  font-size: 200%;
  margin-bottom: 20px !important;
  padding: 0 0.25em !important;
}
@media screen and (min-width: 600px) {
  main#anEvent section#ratesAndRegistration h3 {
    font-size: 175%;
  }
}
@media screen and (min-width: 800px) {
  main#anEvent section#ratesAndRegistration h3 {
    font-size: 250%;
  }
}
main#anEvent section#ratesAndRegistration p {
  margin-bottom: 15px !important;
}
main#anEvent section#ratesAndRegistration ul {
  list-style-position: inside;
  color: #313131 !important;
}
main#anEvent section#ratesAndRegistration li {
  margin-bottom: 10px !important;
}
main#anEvent section#ratesAndRegistration table {
  outline: 1px solid #cccccc;
  width: 100% !important;
  margin-bottom: 15px;
  border-collapse: collapse;
}
main#anEvent section#ratesAndRegistration table td {
  padding: 7px;
}
main#anEvent section#ratesAndRegistration table td:nth-child(even) {
  text-align: center;
}
main#anEvent section#ratesAndRegistration table tr:nth-child(even) {
  background-color: #f8f8f8;
}
main#anEvent section#ratesAndRegistration .wait-wrap {
  padding: 1.5em 0;
}
main#anEvent section#ratesAndRegistration .wrap {
  display: flex;
  flex-direction: column;
  padding: 1em 0;
  width: 98% !important;
  margin: auto;
}
@media screen and (min-width: 1000px) {
  main#anEvent section#ratesAndRegistration .wrap {
    flex-direction: row;
  }
}
main#anEvent section#ratesAndRegistration .wrap > div {
  padding: 20px;
  flex-basis: 50%;
}
main#anEvent section#ratesAndRegistration .wrap div#groupRates h4 {
  font-size: 130%;
  margin-bottom: 10px;
  color: #2d3748;
}
main#anEvent section#ratesAndRegistration div#termsAndConditions > div {
  display: block;
  padding: 20px;
}
main#anEvent section#ratesAndRegistration div#termsAndConditions > div ul {
  font-size: 120%;
  list-style-position: outside;
}
main#anEvent section#ratesAndRegistration div#termsAndConditions > div ul li {
  line-height: 1.25em;
}
main#anEvent section#theInstructor {
  background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
  padding: 3em 0;
}
main#anEvent section#theInstructor h3 {
  font-size: 320%;
  margin-bottom: 5px !important;
  letter-spacing: 2px;
  text-indent: 2px;
  color: #9eb7d8 !important;
}
main#anEvent section#theInstructor p {
  font-size: 120%;
  line-height: 1.75em;
  color: #ffffff;
  margin-bottom: 20px !important;
}
main#anEvent section#theInstructor div.wrap {
  display: flex;
  flex-direction: column-reverse;
  width: 90%;
  max-width: 1500px;
  margin: auto;
}
@media screen and (min-width: 900px) {
  main#anEvent section#theInstructor div.wrap {
    flex-direction: row;
  }
}
main#anEvent section#theInstructor div.wrap > div {
  flex-basis: 50%;
}
main#anEvent section#theInstructor div#theBio {
  display: flex;
  justify-content: center;
  align-items: center;
}
main#anEvent section#theInstructor div#thePortrait {
  display: flex;
  justify-content: center;
  align-items: center;
}
main#anEvent section#theInstructor div#thePortrait figure {
  max-width: 350px;
  max-height: 350px;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 900px) {
  main#anEvent section#theInstructor div#thePortrait figure {
    margin-bottom: 20px;
  }
}
main#anEvent section#theInstructor div#thePortrait figure img {
  width: 110%;
}
main#anEvent section#theVenue {
  padding: 3em 0;
}
main#anEvent section#theVenue h2 {
  text-align: center;
  font-size: 200%;
  color: #365982;
  margin-bottom: 15px !important;
}
@media screen and (min-width: 600px) {
  main#anEvent section#theVenue h2 {
    font-size: 300%;
  }
}
@media screen and (min-width: 800px) {
  main#anEvent section#theVenue h2 {
    font-size: 325%;
  }
}
main#anEvent section#theVenue h3 {
  text-align: center;
  font-size: 150%;
  color: #9eb7d8;
  margin-bottom: 10px !important;
}
@media screen and (min-width: 600px) {
  main#anEvent section#theVenue h3 {
    font-size: 175%;
  }
}
@media screen and (min-width: 800px) {
  main#anEvent section#theVenue h3 {
    font-size: 250%;
  }
}
main#anEvent section#theVenue h4 {
  text-align: center;
  font-size: 140%;
  color: #365982;
  margin-bottom: 10px !important;
  font-weight: 300 !important;
}
@media screen and (min-width: 600px) {
  main#anEvent section#theVenue h4 {
    font-size: 190%;
  }
}
@media screen and (min-width: 800px) {
  main#anEvent section#theVenue h4 {
    font-size: 260%;
  }
}
main#anEvent section#theVenue h5 {
  text-align: center;
  font-size: 125%;
  color: #9eb7d8;
  margin-bottom: 10px !important;
  font-weight: 300 !important;
}
@media screen and (min-width: 600px) {
  main#anEvent section#theVenue h5 {
    font-size: 175%;
  }
}
@media screen and (min-width: 800px) {
  main#anEvent section#theVenue h5 {
    font-size: 180%;
  }
}
main#anEvent section#theVenue div.wrap {
  display: flex;
  flex-direction: column;
  margin-bottom: 3em !important;
}
@media screen and (min-width: 1200px) {
  main#anEvent section#theVenue div.wrap {
    flex-direction: row;
  }
  main#anEvent section#theVenue div.wrap > div {
    flex-basis: 50%;
    padding: 20px 2em 0 2em;
    flex-shrink: 0;
  }
}
main#anEvent section#theVenue div#gallery {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  overflow: hidden;
  width: 100%;
  gap: 6px;
  margin: 0 auto 40px auto;
}
@media screen and (min-width: 500px) {
  main#anEvent section#theVenue div#gallery {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 600px) {
  main#anEvent section#theVenue div#gallery {
    grid-template-columns: repeat(4, 1fr);
  }
}
main#anEvent section#theVenue div#gallery img {
  width: 100%;
  display: block;
  border-radius: 4px;
}
main#anEvent section#theVenue div#details {
  padding-bottom: 40px;
  padding-top: 20px;
  /*
  p:first-of-type {
    font-weight: bold;
    font-size: 110%;
  }
  */
}
main#anEvent section#theVenue div#details p.promoCode {
  color: #ffffff;
  background-color: #365982;
  text-align: center;
  letter-spacing: 3px;
  padding: 10px !important;
  border-radius: 4px;
}
main#anEvent section#theVenue div#details > div {
  width: 94%;
  max-width: 800px;
  margin: auto;
}
@media screen and (min-width: 1200px) {
  main#anEvent section#theVenue div#details {
    border-right: 1px solid #ebebeb;
  }
}
main#anEvent section#theVenue div#details h5 {
  font-size: 210%;
  text-align: center;
}
main#anEvent section#theVenue div#details h6 {
  font-size: 170%;
  text-align: center;
}
main#anEvent section#theVenue div#details p {
  margin-bottom: 20px !important;
  line-height: 1.5em !important;
  font-size: 120% !important;
}
main#anEvent section#theVenue div#details ul {
  font-size: 120%;
  list-style-position: inside;
  margin-bottom: 20px !important;
}
main#anEvent section#theVenue div#details li {
  margin-bottom: 15px;
  line-height: 1.5em;
}
main#anEvent section#theVenue div#details div#bookNow {
  text-align: center;
  margin-top: 20px;
  overflow: hidden;
}
main#anEvent section#theVenue div#details div#bookNow a {
  background-color: #000e14;
  color: #ffffff;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  padding: 10px;
}
main#anEvent section#theVenue div#details div#bookNow a:hover {
  text-decoration: underline;
}
main#anEvent section#theVenue div#map > div {
  width: 94%;
  max-width: 800px;
  margin: auto;
}
main#anEvent section#theVenue div#map iframe {
  margin: auto !important;
  width: 100%;
  padding-bottom: 40px;
  border-bottom: 1px solid #cccccc;
}
main#anEvent section#theVenue div#map ul#venueAddress {
  color: #2d3748;
  list-style-type: none;
  font-size: 120% !important;
  font-weight: bold;
  background-color: #f7f7f7;
  padding: 12px !important;
  margin-bottom: 40px !important;
}
main#anEvent section#theVenue div#map ul#venueAddress a {
  color: #2d3748;
}
main#anEvent section#theVenue div#map ul#venueAddress li {
  margin-bottom: 10px;
}
main#anEvent section#theVenue div#map ul#venueAddress li:last-child {
  margin-bottom: 0 !important;
}
main#anEvent section#theVenue div#map h5 {
  font-size: 210%;
  text-align: center;
}
main#anEvent section#theVenue div#map h6 {
  font-size: 160%;
  font-weight: 400 !important;
}
main#anEvent section#theVenue div#map p {
  margin-bottom: 20px !important;
  line-height: 1.5em !important;
  font-size: 120% !important;
}
main#anEvent section#theVenue div#map ul {
  font-size: 120%;
  list-style-position: inside;
  margin-bottom: 20px !important;
}
main#anEvent section#theVenue div#map li {
  margin-bottom: 15px;
}
main#anEvent div#directions h6 {
  text-align: left !important;
}
main#anEvent section#learningObjectives {
  background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
  padding: 3em 0;
}
main#anEvent section#learningObjectives h2 {
  text-align: center;
  font-size: 200%;
  color: #ffffff;
  margin-bottom: 15px !important;
}
@media screen and (min-width: 600px) {
  main#anEvent section#learningObjectives h2 {
    font-size: 300%;
  }
}
@media screen and (min-width: 800px) {
  main#anEvent section#learningObjectives h2 {
    font-size: 325%;
  }
}
main#anEvent section#learningObjectives h3 {
  text-align: center;
  font-size: 150%;
  color: #9eb7d8;
  margin-bottom: 10px !important;
}
@media screen and (min-width: 600px) {
  main#anEvent section#learningObjectives h3 {
    font-size: 175%;
  }
}
@media screen and (min-width: 800px) {
  main#anEvent section#learningObjectives h3 {
    font-size: 250%;
  }
}
main#anEvent section#learningObjectives ul.objectives {
  width: 90% !important;
  max-width: 900px;
  color: #ffffff;
  margin: 20px auto !important;
  font-size: 130% !important;
  list-style-position: outside;
}
main#anEvent section#learningObjectives ul.objectives li {
  margin-bottom: 15px;
  line-height: 1.2em;
}
main#anEvent section#learningObjectives ul.courseContentLevel {
  width: 90% !important;
  max-width: 900px;
  color: #ffffff;
  margin: 50px auto 0 auto !important;
  font-size: 160% !important;
  list-style-type: none !important;
  text-align: center;
}
main#anEvent section#contactUs {
  background-color: #8A979A;
}
main#anEvent section#newsletterSignup {
  background-color: #efefef;
}
main#anEvent div.schedule {
  background-color: #f8f8f8;
}
main#anEvent section#theEvent p.closed, main#anEvent section#theVenue p.closed, main#anEvent section#dailySchedule p.closed, main#anEvent section#continuingEducation p.closed {
  width: 80% !important;
  max-width: 800px;
  background-color: darkred;
  color: #ffffff !important;
  text-align: center;
  padding: 10px 0 !important;
  margin: auto !important;
}
main#anEvent section#theEvent p.closed a, main#anEvent section#theVenue p.closed a, main#anEvent section#dailySchedule p.closed a, main#anEvent section#continuingEducation p.closed a {
  color: #ffffff;
}
main#anEvent section#theEvent p.alert, main#anEvent section#theVenue p.alert, main#anEvent section#dailySchedule p.alert, main#anEvent section#continuingEducation p.alert {
  text-align: center;
  background-color: darkred;
  color: #ffffff !important;
  width: 90%;
  max-width: 800px;
  margin: 0 auto 10px auto !important;
  display: table !important;
  border-radius: 5px;
  padding: 10px !important;
  line-height: 1.25em !important;
  font-size: 120% !important;
  font-weight: bold;
}
main#anEvent div.crystalClear {
  text-align: center;
}
main#anEvent div.crystalClear h6 {
  margin-bottom: 10px !important;
  color: #365982;
  font-size: 170% !important;
}

div.navicon {
  display: none;
  position: relative;
  outline: 1px solid #ffffff;
  left: calc(100% - 40px);
  height: 40px;
  width: 40px;
}
@media only screen and (max-width: 500px) {
  div.navicon {
    display: initial;
  }
}
div.navicon :hover {
  cursor: pointer;
}
div.navicon > div {
  display: flex;
  flex-direction: column;
  width: 40px !important;
  height: 40px !important;
  justify-content: space-around;
  align-items: center;
  padding: 8px;
}
div.navicon > div hr {
  width: 54%;
  color: #ffffff;
}

a#home {
  text-decoration: none !important;
}

nav#panel {
  position: fixed;
  padding: 15px;
  top: 70px;
  left: 0;
  height: 100vh;
  width: 100%;
  flex-grow: 0;
  display: none;
  background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
  z-index: 5000;
}
nav#panel div.wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
}
nav#panel div.wrap a {
  text-decoration: none;
  color: #ffffff;
}
nav#panel div.wrap a:hover {
  text-decoration: underline !important;
}
nav#panel div.wrap ul {
  list-style-type: none;
  text-align: center;
  font-size: 140%;
  margin-top: 35px !important;
}
nav#panel div.wrap ul li {
  margin-bottom: 30px;
}
nav#panel div.wrap ul li:last-child {
  margin-bottom: 0 !important;
}
nav#panel section#copyright {
  padding: 30px 0;
}
nav#panel section#copyright img {
  width: 150px;
  display: block;
  margin: 0 auto 30px auto;
  opacity: 0.4;
}
nav#panel section#copyright p {
  color: #ffffff;
  text-align: center;
  font-size: 120%;
}

nav#user {
  background-color: #8ab145;
  width: 100%;
}
nav#user div.wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  padding: 14px;
}
nav#user div.wrap a {
  color: #ffffff !important;
  text-decoration: none;
}
nav#user div.wrap a:hover {
  text-decoration: underline;
}
nav#user ul {
  color: #ffffff;
  display: flex;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 50% !important;
  flex-direction: row;
  list-style-type: none;
  justify-content: flex-end;
  align-items: center;
  font-size: 115%;
  font-weight: 500;
  gap: 30px;
}
@media only screen and (max-width: 500px) {
  nav#user ul {
    display: none;
  }
}

/* Default: hide the nav bar when not needed */
nav#user.hidden-on-large {
  display: none;
}

/* On small screens (under 768px, adjust as needed), always show nav */
@media screen and (max-width: 768px) {
  nav#user.hidden-on-large {
    display: block;
  }
}
@media only screen and (max-width: 1099px) {
  nav#ribbon {
    background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
    width: 100%;
    border-top: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
  }
  nav#ribbon div.wrap {
    width: 100%;
    display: flex;
    flex-direction: column;
  }
  nav#ribbon div#branding {
    padding: 20px 0 !important;
    margin: auto;
  }
  nav#ribbon div#branding a#home {
    display: block;
    background-color: #f5f5f5;
    text-decoration: none !important;
  }
  nav#ribbon div#branding img {
    margin: 0 auto 8px auto;
    display: block;
    width: 100%;
    max-width: 130px;
  }
  nav#ribbon div#branding div#textOneLine {
    display: none;
  }
  nav#ribbon div#branding div#textTwoLines {
    text-align: center;
  }
  nav#ribbon div#branding div#textTwoLines p.title {
    color: #ffffff;
    font-size: 250%;
    letter-spacing: 3px;
    text-indent: 3px;
    margin-bottom: 12px !important;
    font-weight: lighter !important;
  }
  nav#ribbon div#branding div#textTwoLines p.tag {
    color: #ffffff;
    text-transform: uppercase;
    font-size: 110%;
    font-weight: normal !important;
    letter-spacing: 7px;
    text-indent: 7px;
  }
  nav#ribbon ul {
    display: none;
  }
}
@media only screen and (max-width: 1099px) and (min-width: 500px) {
  nav#ribbon ul {
    display: flex;
    flex-direction: row;
    list-style-type: none;
    justify-content: space-around;
    padding: 20px 0 !important;
  }
}
@media only screen and (max-width: 1099px) {
  nav#ribbon ul a {
    color: #ffffff;
    text-decoration: none;
  }
  nav#ribbon ul a:hover {
    text-decoration: underline;
  }
}
@media only screen and (min-width: 1100px) {
  nav#ribbon {
    padding: 10px;
    background: linear-gradient(180deg, rgb(54, 89, 130) 0%, rgb(64, 93, 144) 100%);
    width: 100%;
    border-bottom: 0.5px solid #ededed;
  }
  nav#ribbon div.wrap {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
  }
  nav#ribbon div#textTwoLines {
    display: none;
  }
  nav#ribbon div#branding {
    display: flex;
    flex-direction: row;
  }
  nav#ribbon div#branding div#image {
    flex-basis: 100px;
  }
  nav#ribbon div#branding div#image img {
    display: block;
    width: 100%;
    padding-top: 3px;
  }
  nav#ribbon div#branding div#textOneLine {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 240%;
    padding-left: 12px;
  }
  nav#ribbon div#branding div#textOneLine p {
    color: #8dafd5;
  }
  nav#ribbon div#branding div#textOneLine p span:first-child {
    font-weight: 400;
  }
  nav#ribbon div#branding div#textOneLine p span:last-child {
    font-weight: 200;
    color: #ffffff;
    letter-spacing: 1px;
  }
  nav#ribbon ul {
    display: flex;
    flex-basis: 50% !important;
    flex-direction: row;
    list-style-type: none;
    justify-content: space-evenly;
    align-items: center;
    color: #ffffff;
    font-size: 95%;
  }
  nav#ribbon ul a {
    color: #ffffff;
    text-decoration: none;
  }
  nav#ribbon ul a:hover {
    text-decoration: underline;
  }
  nav#ribbon ul li {
    padding: 0 !important;
    margin: 0 !important;
    flex: 1;
    text-align: right;
  }
}
section#siteBanner {
  text-align: center;
  background-color: #8dafd5 !important;
  border-bottom: 1px solid #efefef;
  padding: 0.75em 0;
  color: #ffffff !important;
  font-size: clamp(1.1rem, 2vw, 1.5rem);
}
section#siteBanner p {
  color: #ffffff;
  font-weight: 500;
  text-shadow: 0 0 1px rgba(0, 0, 0, 0.5), 0 0 6px rgba(0, 0, 0, 0.4);
  line-height: 1.25em;
  padding: 0 15px !important;
}

main#register p.alert {
  text-align: center;
  background-color: darkred;
  color: #ffffff !important;
  width: 90%;
  max-width: 800px;
  margin: 0 auto 15px auto !important;
  display: table !important;
  border-radius: 5px;
  padding: 10px !important;
  line-height: 1.25em !important;
  font-size: 120% !important;
  font-weight: bold;
}
main#register p.alert a {
  color: #ffffff !important;
}
main#register > div.wrap {
  width: calc(100% - 30px);
  max-width: 800px;
  margin: auto;
  padding: 40px 0;
}
main#register > div.wrap p.promoCode {
  color: #ffffff;
  background-color: #365982;
  text-align: center;
  letter-spacing: 3px;
  line-height: normal !important;
  padding: 10px !important;
  border-radius: 4px;
}
main#register section#theRegistration {
  display: flex;
  flex-direction: column !important;
}
main#register section#theRegistration div#theEvent {
  border: 1px solid #dbdbdb;
  background-color: #fbfbfb;
  border-radius: 8px;
  padding: 15px;
}
main#register section#theRegistration div#theEvent a {
  color: #3c546e !important;
}
main#register section#theRegistration div#theEvent p {
  font-size: 150% !important;
  margin-bottom: 15px !important;
  font-weight: normal;
  color: #3c546e !important;
}
main#register section#theRegistration div#theEvent p:last-child {
  margin-bottom: 0 !important;
}
main#register section#theRegistration div#registrationForm {
  margin-bottom: 40px;
}
main#register section#theRegistration div#theEvent {
  text-align: center;
  margin-bottom: 20px;
}
main#register section#theRegistration div.formErrors {
  margin-bottom: 40px;
  font-size: 115% !important;
  padding: 15px;
}
main#register section#theRegistration div.formErrors div.message {
  display: flex;
  flex-direction: column;
}
main#register section#theRegistration div.formErrors div.message i {
  flex-basis: 100%;
  text-align: center;
  font-size: 200% !important;
  margin-bottom: 10px;
}
main#register section#theRegistration div.formErrors div.message div {
  flex-basis: 100%;
  text-align: center;
  font-size: 140% !important;
}
main#register section#ceusAndConditions a {
  color: #4A5658;
}
main#register section#ceusAndConditions h3 {
  margin-bottom: 15px !important;
  font-size: 180%;
}
main#register section#ceusAndConditions p {
  margin-bottom: 20px !important;
  font-size: 120% !important;
  line-height: 1.2em;
}
main#register section#ceusAndConditions p.promoCode a {
  color: #ffffff !important;
  text-decoration: none;
}
main#register section#ceusAndConditions p.promoCode a:hover {
  text-decoration: underline;
}
main#register section#ceusAndConditions ul {
  list-style-position: outside;
  font-size: 120% !important;
  padding: 0 20px !important;
}
main#register section#ceusAndConditions ul li {
  margin-bottom: 10px;
  line-height: 1.2em;
}

main#registrationEdit > div.wrap {
  width: calc(100% - 30px);
  max-width: 800px;
  margin: auto;
  padding: 40px 0;
}
main#registrationEdit div.formErrors {
  margin-bottom: 40px;
  font-size: 115% !important;
  padding: 15px;
}
main#registrationEdit div.formErrors div.message {
  display: flex;
  flex-direction: column;
}
main#registrationEdit div.formErrors div.message i {
  flex-basis: 100%;
  text-align: center;
  font-size: 200% !important;
  margin-bottom: 10px;
}
main#registrationEdit div.formErrors div.message div {
  flex-basis: 100%;
  text-align: center;
  font-size: 140% !important;
}

main#registrationReview > div.wrap {
  width: calc(100% - 30px);
  max-width: 800px;
  margin: auto;
  padding: 40px 0;
}
main#registrationReview section#theRegistration {
  display: flex;
  flex-direction: column;
}
main#registrationReview section#theRegistration h2 {
  font-size: 200% !important;
  margin-bottom: 12px !important;
}
main#registrationReview section#theRegistration h3 {
  font-size: 140% !important;
  margin-bottom: 12px !important;
  color: #4A5658;
  line-height: 1.25em !important;
}
main#registrationReview section#theRegistration ul {
  font-size: 120% !important;
}
main#registrationReview section#theRegistration ul li {
  margin-bottom: 12px !important;
}
main#registrationReview div#theRegistrant {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #dbdbdb;
}
main#registrationReview div#theRegistrant a {
  color: #3c546e;
}
main#registrationReview div#theRegistrant ul {
  list-style-type: none;
}
body.hidden-scroll {
  overflow: hidden;
}

.sl-overlay {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #fff;
  display: none;
  z-index: 1035;
}

.sl-wrapper {
  z-index: 1040;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: fixed;
}
.sl-wrapper * {
  box-sizing: border-box;
}
.sl-wrapper button {
  border: 0 none;
  background: transparent;
  font-size: 28px;
  padding: 0;
  cursor: pointer;
}
.sl-wrapper button:hover {
  opacity: 0.7;
}
.sl-wrapper .sl-close {
  display: none;
  position: fixed;
  right: 30px;
  top: 30px;
  z-index: 10060;
  margin-top: -14px;
  margin-right: -14px;
  height: 44px;
  width: 44px;
  line-height: 44px;
  font-family: Arial, Baskerville, monospace;
  color: #000;
  font-size: 3rem;
}
.sl-wrapper .sl-counter {
  display: none;
  position: fixed;
  top: 30px;
  left: 30px;
  z-index: 1060;
  color: #000;
  font-size: 1rem;
}
.sl-wrapper .sl-navigation {
  width: 100%;
  display: none;
}
.sl-wrapper .sl-navigation button {
  position: fixed;
  top: 50%;
  margin-top: -22px;
  height: 44px;
  width: 22px;
  line-height: 44px;
  text-align: center;
  display: block;
  z-index: 10060;
  font-family: Arial, Baskerville, monospace;
  color: #000;
}
.sl-wrapper .sl-navigation button.sl-next {
  right: 5px;
  font-size: 2rem;
}
.sl-wrapper .sl-navigation button.sl-prev {
  left: 5px;
  font-size: 2rem;
}
@media (min-width: 35.5em) {
  .sl-wrapper .sl-navigation button {
    width: 44px;
  }
  .sl-wrapper .sl-navigation button.sl-next {
    right: 10px;
    font-size: 3rem;
  }
  .sl-wrapper .sl-navigation button.sl-prev {
    left: 10px;
    font-size: 3rem;
  }
}
@media (min-width: 50em) {
  .sl-wrapper .sl-navigation button {
    width: 44px;
  }
  .sl-wrapper .sl-navigation button.sl-next {
    right: 20px;
    font-size: 3rem;
  }
  .sl-wrapper .sl-navigation button.sl-prev {
    left: 20px;
    font-size: 3rem;
  }
}
.sl-wrapper.sl-dir-rtl .sl-navigation {
  direction: ltr;
}
.sl-wrapper .sl-image {
  position: fixed;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 10000;
}
.sl-wrapper .sl-image img {
  margin: 0;
  padding: 0;
  display: block;
  border: 0 none;
  width: 100%;
  height: auto;
}
@media (min-width: 35.5em) {
  .sl-wrapper .sl-image img {
    border: 0 none;
  }
}
@media (min-width: 50em) {
  .sl-wrapper .sl-image img {
    border: 0 none;
  }
}
.sl-wrapper .sl-image iframe {
  background: #000;
  border: 0 none;
}
@media (min-width: 35.5em) {
  .sl-wrapper .sl-image iframe {
    border: 0 none;
  }
}
@media (min-width: 50em) {
  .sl-wrapper .sl-image iframe {
    border: 0 none;
  }
}
.sl-wrapper .sl-image .sl-caption {
  display: none;
  padding: 10px;
  color: #fff;
  background: rgba(0, 0, 0, 0.8);
  font-size: 1rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.sl-wrapper .sl-image .sl-caption.pos-top {
  bottom: auto;
  top: 0;
}
.sl-wrapper .sl-image .sl-caption.pos-outside {
  bottom: auto;
}
.sl-wrapper .sl-image .sl-download {
  display: none;
  position: absolute;
  bottom: 5px;
  right: 5px;
  color: #000;
  z-index: 1060;
}

.sl-spinner {
  display: none;
  border: 5px solid #333;
  border-radius: 40px;
  height: 40px;
  left: 50%;
  margin: -20px 0 0 -20px;
  opacity: 0;
  position: fixed;
  top: 50%;
  width: 40px;
  z-index: 1007;
  -webkit-animation: pulsate 1s ease-out infinite;
  -moz-animation: pulsate 1s ease-out infinite;
  -ms-animation: pulsate 1s ease-out infinite;
  -o-animation: pulsate 1s ease-out infinite;
  animation: pulsate 1s ease-out infinite;
}

.sl-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

.sl-transition {
  transition: -moz-transform ease 200ms;
  transition: -ms-transform ease 200ms;
  transition: -o-transform ease 200ms;
  transition: -webkit-transform ease 200ms;
  transition: transform ease 200ms;
}

@-webkit-keyframes pulsate {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}
@keyframes pulsate {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}
@-moz-keyframes pulsate {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}
@-o-keyframes pulsate {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}
@-ms-keyframes pulsate {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}
main#login {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 40px);
  margin: auto;
}
main#login div#authenticate {
  margin: 40px 0;
}
main#login div#authenticate h1 {
  margin-bottom: 40px !important;
}
main#login div#authenticate p.resetPassword {
  text-align: center;
}
main#login div#authenticate p.resetPassword a {
  color: #000e14;
}
main#login section#checkEmail {
  border: 1px solid #dbdbdb;
  padding: 20px;
  background-color: #f8f8f8;
  width: 98%;
  max-width: 600px;
  margin: auto;
}
main#login section#checkEmail h1 {
  color: #365982;
  text-align: center;
  font-size: 160%;
  margin-bottom: 12px !important;
  font-weight: 300 !important;
  line-height: 1.2em;
}
main#login section#checkEmail p {
  font-size: 120%;
  margin-bottom: 12px !important;
  text-align: center;
  line-height: 1.5em;
}

main#checkout section#loginOrRegister {
  display: flex;
  flex-direction: column;
  outline: 1px solid #cccccc;
}
@media screen and (min-width: 1200px) {
  main#checkout section#loginOrRegister {
    flex-direction: row;
  }
  main#checkout section#loginOrRegister > div {
    flex-basis: 50%;
  }
}

body#viewCart {
  height: 100%;
  display: flex;
  flex-direction: column;
}

main#cart {
  font-family: "League Spartan", sans-serif !important;
  width: 96%;
  max-width: 1500px;
  margin: 30px auto;
  padding-bottom: 1em;
  flex: 1;
}
main#cart h2 {
  font-size: 200%;
  margin-bottom: 30px !important;
  line-height: 1.25em;
}
main#cart div.wrap {
  display: flex;
  gap: 30px;
  flex-direction: column;
}
@media only screen and (min-width: 1000px) {
  main#cart div.wrap {
    flex-direction: row;
    gap: 50px;
  }
}
main#cart > section {
  padding: 10px;
}
main#cart section#cartSummary {
  flex-basis: 65%;
  flex-shrink: 1;
}
main#cart section#orderSummary {
  flex-basis: 35%;
}
main#cart section#orderSummary h3 {
  font-weight: 600 !important;
  color: #365982;
  font-size: 150% !important;
}
main#cart section#orderSummary div#cartSummary p {
  font-weight: bold;
}
main#cart section#orderSummary div#cartSummary a {
  color: #ffffff !important;
  text-decoration: none;
}
main#cart section#orderSummary div#cartSummary a:hover {
  text-decoration: underline;
}
main#cart section#orderSummary div#cartSummary p.continueToPayment {
  background-color: #e46e19 !important;
  text-align: center;
  text-transform: capitalize;
  padding: 10px 0 !important;
  border-radius: 4px;
  color: #ffffff !important;
}
main#cart section#orderSummary div#cartSummary input#applyPromoCode {
  font-weight: bold;
  border: none;
  text-transform: capitalize;
  color: #ffffff;
  width: 100%;
  text-align: center;
  text-transform: capitalize;
  padding: 10px 0 !important;
  border-radius: 4px;
}
main#cart section#orderSummary table#orderSummary {
  font-weight: bold;
  width: 100%;
  margin: 1em 0;
}
main#cart section#orderSummary table#orderSummary td:first-child {
  width: 30%;
}
main#cart table#promoCode {
  width: 100%;
  background-color: #f0f0f0;
  padding: 12px 12px 0 12px;
  border-radius: 4px;
  margin-top: 15px;
  margin-bottom: 20px;
}
main#cart table#promoCode tr#promoCodeValidation td, main#cart table#promoCode tr#promoCodeResponse td {
  width: 100% !important;
  box-sizing: border-box;
}
main#cart table#promoCode tr#promoCodeValidation td p, main#cart table#promoCode tr#promoCodeResponse td p {
  text-align: center;
  margin-bottom: 12px !important;
  padding: 10px !important;
  font-size: 105% !important;
}
@keyframes error {
  0% {
    background: #ffffff;
    color: darkred;
  }
  50% {
    background: darkred;
    color: #ffffff;
  }
  100% {
    background: #ffffff;
    color: darkred;
  }
}
main#cart table#promoCode tr#promoCodeValidation td p.error, main#cart table#promoCode tr#promoCodeResponse td p.error {
  background-color: darkred;
  color: #ffffff;
  border-radius: 4px;
  animation: error 2s ease-out;
}
@keyframes discount {
  0% {
    background: #247f11;
  }
  50% {
    background: #8AB145;
  }
  100% {
    background: #247f11;
  }
}
main#cart table#promoCode tr#promoCodeValidation td p.discount, main#cart table#promoCode tr#promoCodeResponse td p.discount {
  background-color: #8ab145;
  color: #ffffff;
  border-radius: 4px;
  animation: discount 2s ease-out;
  animation-fill-mode: forwards;
}
main#cart table#promoCode input#applyPromoCode {
  background-color: #8ab145;
  cursor: pointer;
}
main#cart table#promoCode input#applyPromoCode:hover {
  background-color: #e46e19;
  cursor: pointer;
}
main#cart table#promoCode div.formGroup {
  width: 100%;
  margin-bottom: 15px;
}
main#cart table#promoCode label {
  display: block;
  margin-bottom: 10px;
}
main#cart table#promoCode input[type=text] {
  padding: 10px;
  border: 1px solid #cccccc;
  width: 100%;
  font-size: 90% !important;
  border-radius: 4px;
}
main#cart table#theCart {
  font-size: 100%;
  border-collapse: collapse;
  width: 100%;
  text-align: left;
  font-weight: bold;
  padding: 1px;
  border-radius: 6px !important;
}
main#cart table#theCart i.material-icons {
  font-size: 30px !important;
}
main#cart table#theCart th {
  background: #313131;
  color: #ffffff;
  padding: 14px;
}
main#cart table#theCart td {
  padding: 14px;
}
main#cart table#theCart tr.lineItem {
  border-bottom: 1px solid #e1e1e1;
}
main#cart table#theCart td.quantity {
  width: 100px;
  text-align: center;
}
main#cart table#theCart td.item p {
  line-height: 1.25em !important;
}
main#cart table#theCart td.item a {
  color: #365982;
}
main#cart table#theCart td.control {
  width: auto;
}
main#cart table#theCart ul.lineItemEditor {
  display: flex;
  list-style-type: none;
}
main#cart table#theCart ul.lineItemEditor button {
  border: none !important;
}
main#cart table#theCart ul.lineItemEditor li {
  flex: 1;
  display: flex;
  justify-content: center;
  align-content: center;
  padding: 4px;
}
main#cart table#theCart button {
  background-color: transparent;
  padding: 4px;
}
main#cart table#theCart button:hover {
  background-color: #1b1e21;
  color: #ffffff;
}
main#cart table#theCart tr.lineItem td.control {
  display: flex;
  justify-content: center;
  align-content: center;
}
main#cart table#theCart tr.lineItem td.control button {
  border: none !important;
}
main#cart table#theCart tr.edit {
  display: none;
}
main#cart table#theCart tr.edit td.quantity input {
  width: 80%;
  font-weight: bold;
  padding: 5px;
  text-align: center;
  border: 1px solid #cccccc;
  background-color: #eeeeee;
}

div.emptyCart h1 {
  margin-bottom: 25px !important;
}
div.emptyCart p {
  font-size: 125% !important;
  margin-bottom: 15px !important;
}

main#approveOrder {
  display: flex;
  width: 90%;
  min-width: 300px;
  margin: 1.5em auto;
  flex-direction: row;
}
main#approveOrder section#orderDetails {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  margin: 20px 0 50px 0;
}
main#approveOrder section#orderDetails > div {
  padding-left: 15px;
  font-weight: bold;
  border-right: 1px solid #cccccc;
}
main#approveOrder section#orderDetails > div ul {
  list-style-type: none;
}
main#approveOrder section#orderDetails div:nth-child(1) {
  padding-left: 0 !important;
}
main#approveOrder section#orderDetails div:last-child {
  border-right: none !important;
}
main#approveOrder h2 {
  font-weight: bold !important;
  margin-bottom: 0.6em;
  font-size: 200% !important;
}
main#approveOrder h6 {
  font-size: 120% !important;
  font-weight: bold !important;
}
main#approveOrder section#orderSummary {
  width: 98%;
  max-width: 1600px;
  margin: 1em auto;
  border: 1px solid #cccccc;
  padding: 1em;
}
main#approveOrder table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-weight: bold;
  margin-bottom: 2em;
}
main#approveOrder table th, main#approveOrder table td {
  padding: 8px;
}
main#approveOrder table th {
  background-color: #1a202c;
  color: #ffffff;
}
main#approveOrder table tr {
  border-bottom: 1px solid #cccccc;
}
main#approveOrder input[type=submit] {
  border: none !important;
  background-color: green;
  color: #ffffff;
  padding: 12px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 100%;
}
main#approveOrder input[type=text], main#approveOrder textarea {
  width: 100%;
  border: 1px solid #cccccc;
  padding: 8px;
}
main#approveOrder form {
  margin: 0 !important;
}
main#approveOrder form div {
  margin-bottom: 12px;
}
main#approveOrder form div.completeOrder {
  margin-bottom: 0 !important;
  display: flex;
  justify-content: flex-end;
}
main#approveOrder label {
  font-weight: bold;
  margin-bottom: 12px !important;
  display: block;
}

main#cartPaymentMethod {
  width: 98%;
  max-width: 800px;
  margin: 1em auto;
  border: 1px solid #cccccc;
  padding: 1em;
  font-family: "League Spartan", sans-serif;
  border-radius: 4px;
}
main#cartPaymentMethod h1 {
  text-align: center !important;
}
main#cartPaymentMethod div#orderSummary {
  border-radius: 4px;
  padding: 20px;
  background-color: #313131;
  margin-bottom: 20px;
}
main#cartPaymentMethod div#orderSummary a {
  color: #ffffff;
}
main#cartPaymentMethod div#orderSummary p {
  text-align: center;
  color: #ffffff;
  font-size: 120% !important;
}
main#cartPaymentMethod div#orderSummary h6 {
  text-align: center;
  color: #ffffff;
  font-size: 150% !important;
  padding: 7px 0 !important;
}
main#cartPaymentMethod h1 {
  margin-bottom: 0.25em !important;
}
main#cartPaymentMethod h2 {
  font-weight: bold !important;
  border-bottom: 1px solid #cccccc;
  padding-bottom: 0.5em !important;
  margin-bottom: 2em !important;
  font-size: 110% !important;
}
main#cartPaymentMethod div.cardDetails {
  display: flex;
  flex-direction: column;
}
main#cartPaymentMethod div.cardDetails section {
  display: flex;
}
main#cartPaymentMethod div.cardDetails section div:first-child {
  padding-right: 15px;
}
main#cartPaymentMethod div#error-messages {
  font-family: "League Spartan", sans-serif !important;
  color: red;
  font-size: 150%;
  font-weight: bold;
}
main#cartPaymentMethod input[type=submit] {
  color: #ffffff;
  background-color: red;
  border: none;
  padding: 10px;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 1px;
}
main#cartPaymentMethod input[type=submit]:hover {
  background-color: #424242;
}
main#cartPaymentMethod input[type=text] {
  border: 1px solid #cccccc;
  width: 100%;
  padding: 8px;
}
main#cartPaymentMethod div.formGroup {
  flex-basis: 100%;
  overflow: hidden;
  display: inline-block;
  margin-bottom: 1em;
}
main#cartPaymentMethod div.formGroup label {
  font-weight: bold;
  margin-bottom: 0.3em !important;
  display: inline-block;
}
main#cartPaymentMethod div.formGroup:last-child {
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}
main#cartPaymentMethod div.button {
  display: flex;
  justify-content: flex-end;
}

main#cartShipping {
  width: 800px;
  margin: 1em auto;
  border: 1px solid #cccccc;
  padding: 1em;
}
main#cartShipping h2 {
  font-weight: bold !important;
  border-bottom: 1px solid #cccccc;
  padding-bottom: 0.25em;
  margin-bottom: 0.5em;
  font-size: 150%;
}
main#cartShipping p.currentAddress {
  font-weight: bold;
  font-size: 100%;
  margin-bottom: 1em;
}
main#cartShipping input[type=submit] {
  color: #ffffff;
  background-color: red;
  border: none;
  padding: 10px;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 1px;
  margin-top: 1em;
}
main#cartShipping input[type=submit]:hover {
  background-color: #424242;
}
main#cartShipping div.existingAddresses {
  margin-bottom: 2em;
}
main#cartShipping div.existingAddresses ul {
  list-style-type: none;
}
main#cartShipping div.existingAddresses li {
  display: flex;
  margin-bottom: 0.7em;
  font-size: 100%;
  font-weight: bold;
}
main#cartShipping div.existingAddresses li input {
  margin-right: 5px;
}
main#cartShipping div.newAddress {
  margin-bottom: 2em;
}
main#cartShipping div.newAddress input[type=text] {
  border: 1px solid #cccccc;
  width: 100%;
  padding: 8px;
}
main#cartShipping div.newAddress section {
  display: flex;
  flex-direction: column;
}
main#cartShipping div.newAddress div.formGroup {
  flex-basis: 100%;
  overflow: hidden;
  display: inline-block;
  margin-bottom: 1em;
}
main#cartShipping div.newAddress div.formGroup label {
  font-weight: bold;
  margin-bottom: 0.3em !important;
  display: inline-block;
}
main#cartShipping div.newAddress div.zip {
  flex-basis: 50% !important;
}
main#cartShipping div.newAddress div.state {
  flex-basis: 50% !important;
}

main.oneColumn div.wrap {
  width: 96%;
  margin: 60px auto;
  max-width: 1400px;
}
main.oneColumn div.wrap h1 {
  font-size: 320% !important;
  margin-bottom: 30px !important;
  color: #365982;
}
main.oneColumn div.wrap h2 {
  font-size: 270% !important;
  margin-bottom: 30px !important;
  color: #365982;
}
main.oneColumn div.wrap h3 {
  color: #365982;
}
main.oneColumn div.wrap h4 {
  font-size: 150% !important;
  margin-bottom: 30px !important;
}
main.oneColumn div.wrap p {
  font-size: 120%;
  color: #313131 !important;
  margin-bottom: 30px !important;
  line-height: 1.25em;
}
main.oneColumn div.wrap ul {
  font-size: 120%;
  color: #313131;
  list-style-position: outside;
  padding-left: 20px !important;
}
main.oneColumn div.wrap ul li {
  margin-bottom: 30px !important;
  line-height: 1.25em !important;
}
main.oneColumn body#events div.event {
  background-color: #efefef;
  padding: 10px;
}
main.oneColumn body#events div.event h2 {
  font-size: 220% !important;
  margin-bottom: 30px !important;
  color: #365982;
}
main.oneColumn dl.faqs {
  font-size: 120%;
}
main.oneColumn dl.faqs dt {
  font-weight: 700;
  margin-bottom: 10px;
  color: #365982;
}
main.oneColumn dl.faqs dd {
  margin-bottom: 30px;
  line-height: 1.25em;
  color: #313131;
}

section#meetOurFounders div.wrap {
  display: grid;
  grid-template-columns: 1fr;
  width: 100% !important;
  gap: 20px;
}
@media screen and (min-width: 1080px) {
  section#meetOurFounders div.wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
section#meetOurFounders h2 {
  text-align: center;
}
section#meetOurFounders article {
  display: flex;
  flex-direction: column;
  width: 98% !important;
  max-width: 600px !important;
  margin: auto;
}
@media screen and (min-width: 1080px) {
  section#meetOurFounders article {
    flex-direction: row;
  }
}
section#meetOurFounders article figure {
  flex-basis: 35%;
}
section#meetOurFounders article figure figcaption {
  padding-top: 8px;
}
@media screen and (max-width: 1080px) {
  section#meetOurFounders article figure figcaption {
    display: none;
  }
}
section#meetOurFounders article figure p {
  font-size: 110% !important;
}
section#meetOurFounders article figure img {
  width: 100%;
  border-radius: 4px;
  max-width: 400px;
  margin: auto;
  display: block;
}
@media screen and (max-width: 1080px) {
  section#meetOurFounders article figure img {
    margin-bottom: 40px !important;
  }
}
section#meetOurFounders article div {
  flex-basis: 65%;
}
@media screen and (min-width: 1080px) {
  section#meetOurFounders article div {
    padding: 20px;
  }
}
section#meetOurFounders article div h3 {
  font-size: 200% !important;
  margin-bottom: 8px !important;
}
section#meetOurFounders article div p {
  font-size: 110% !important;
}

body#events div.event {
  background-color: #efefef;
  padding: 20px;
  margin-bottom: 20px;
}
body#events div.event a {
  background-color: #365982;
  padding: 14px;
  color: #ffffff;
  text-decoration: none;
  margin-top: 20px !important;
  display: inline-block;
}
body#events div.event h2 {
  font-size: 220% !important;
  margin-bottom: 15px !important;
  color: #365982;
}
body#events div.event h3 {
  font-size: 150% !important;
  margin-bottom: 15px !important;
  color: #365982;
}
body#events div.event p {
  margin-bottom: 10px !important;
}

main#orderThank {
  padding: 3em 0;
}
main#orderThank div.wrap {
  width: 96% !important;
  max-width: 1000px;
  margin: auto;
}
main#orderThank header {
  margin-bottom: 30px;
}
main#orderThank header a {
  color: #3c546e;
}
main#orderThank header h2 {
  text-align: center;
  font-size: 250%;
  color: #3c546e;
  margin-bottom: 30px !important;
  border-bottom: 1px solid #cccccc;
  padding-bottom: 10px !important;
}
main#orderThank header p {
  font-size: 120% !important;
  line-height: 1.25em;
  margin-bottom: 15px !important;
}
main#orderThank section#orderDetails h4 {
  font-size: 200%;
  color: #3c546e;
  margin-bottom: 15px !important;
}
main#orderThank section#orderDetails p {
  font-size: 120% !important;
  line-height: 1.25em;
  margin-bottom: 15px !important;
}
main#orderThank section#orderDetails p.promoCode {
  text-align: center;
  font-weight: bold;
}
main#orderThank section#orderDetails ul {
  font-size: 120% !important;
  list-style-position: inside;
  margin-bottom: 10px;
}
main#orderThank section#orderDetails ul li {
  margin-bottom: 8px;
  line-height: 1.25em;
}
main#orderThank section#orderDetails div {
  margin-bottom: 20px;
}

body#confirmation {
  height: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
}
body#confirmation main {
  flex: 1;
  padding: 20px 0;
}
body#confirmation main h3 {
  color: #365982;
  font-size: 180%;
  margin-top: 20px !important;
}
body#confirmation main h3:first-of-type {
  margin-top: 0 !important;
}
body#confirmation main p {
  font-size: 150%;
}
body#confirmation main section {
  width: 100%;
}
body#confirmation main section div.confirmNow, body#confirmation main section div.edit {
  text-align: center;
}
body#confirmation main section div.confirmNow p, body#confirmation main section div.edit p {
  font-size: 120%;
}
body#confirmation main section div.confirmNow {
  padding-top: 3px;
  margin: 20px auto;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 53px;
  background-color: #8ab145;
  width: 90%;
  max-width: 800px;
  height: 50px !important;
  color: #ffffff !important;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 5px;
  text-indent: 5px;
  font-size: 120%;
}
body#confirmation main section div.confirmNow a {
  color: #ffffff;
  text-decoration: none;
}
body#confirmation main section div.edit a {
  color: #365982;
  text-transform: capitalize;
  text-decoration: none;
}
body#confirmation main section div.edit a:hover {
  text-decoration: underline;
}
body#confirmation main section div.content {
  text-align: center;
}

header.title {
  text-align: center;
  margin: auto;
  width: 98%;
  max-width: 800px;
  padding: 15px 0 !important;
}
header.title h1 {
  font-size: 200% !important;
  color: #365982;
}

header.message {
  text-align: center;
  margin: auto;
  width: 98%;
  max-width: 800px;
  background-color: darkred;
  border-radius: 8px;
  padding: 15px;
  margin-bottom: 15px;
  font-size: 90% !important;
}
header.message p {
  line-height: 1.25em;
  color: #ffffff;
}

div.confirmation {
  margin: auto;
  width: 98%;
  max-width: 800px;
  border: 1px solid #dbdbdb;
  background-color: #fbfbfb;
  border-radius: 8px;
  padding: 15px;
}
div.confirmation h3 {
  margin-bottom: 12px !important;
}
div.confirmation p {
  font-size: 135% !important;
}

div.confirm {
  text-align: center;
  background-color: #8ab145;
  border-radius: 5px;
  letter-spacing: 5px;
  text-indent: 5px;
  padding: 12px;
  margin: 20px 0;
}
div.confirm:hover {
  background-color: #e46e19;
}
div.confirm a {
  color: #ffffff;
  text-decoration: none;
  display: block;
}
div.confirm a:hover {
  text-decoration: underline;
}

div.edit {
  margin-bottom: 10px;
}

/*# sourceMappingURL=stylesBrochure-06-03-24.css.map */
