* {
   padding: 0;
   margin: 0;
   box-sizing: border-box;
   font-family: "Verdana", Geneva, sans-serif;
}
body.home {
   position: absolute;
   width: 100%;
   overflow-x: hidden;
}
body.interior {
   background-color: #5D3F3D;
}

/* MODAL ADDED 9/25/2020 */

.modal-container {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   background-color: rgba(100, 100, 100, 0.5);
   opacity: 0;
   z-index: 1;
}

.covid-modal {
   width: 100%;
   max-width: 600px;
   box-shadow: 0 0 1em rgba(0, 0, 0, 0.3);
}

.covid-modal .head {
   font-size: 1.5em;
   padding: 12px 16px;
   color: rgb(255, 255, 255);
   background-color: rgb(107, 5, 38);
}

.covid-modal .body {
   padding: 12px 16px;
   background-color: rgb(255, 255, 255);
}

div.page {
   position: relative;
   width: 100%;
}
#background-img {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   z-index: -5;
   object-fit: cover;
   height: 100%;
}
#background-img-mobile {
   position: absolute;
   top: 0;
   right: 0;
   min-width: 100%;
   z-index: -5;
   display: none;
   object-fit: cover;
   height: 100%;
}
div.clear {
   clear: both;
}
div.container {
   max-width: 960px;
   width: 100%;
   margin: 0 auto;
}
div.container.interior {
   box-shadow: 0 0 5px 5px rgba(0,0,0,0.2);
}
div.only-mobile {
   display: none;
}
.no-select {
   -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}
p.serif {
   font-family: 'Times New Roman', serif;
   font-size: 14px;
   text-transform: uppercase;
}
p.serif span.large {
   font-family: 'Times New Roman', serif;
   font-size: 20px;
}
p.serif span.square {
   vertical-align: top;
   font-size: 16px;
   margin: 0 2px;
}
p.fine-print {
   font-size: 12px;
}
p.fine-print a {
   color: #6B0526;
}
p.gray {
   color: #6f6f6f;
}
p.maroon {
  color: #6B0526;
}
.only-mobile, .only-phone {
   display: none;
}
p img {
   vertical-align: middle;
}
header.home {
   display: flex;
   padding: 15px 4%;
}
header.home > div {
   align-self: center;
}
header.interior {
   background-color: #6B0526;
}
div.banner-wrapper {
   display: flex;
}
header.interior img {
   display: block;
}
.banner-wrapper div {
   min-width: 0;
}
.banner-wrapper div:first-child {
   width: 34.375%;
}
.banner-wrapper div:last-child {
   width: 65.625%;
}
header.interior img {
   max-width: 100%;
   width: 100%;
   height: auto;
}
div.hamburger {
   color: #eee;
   font-size: 24px;
   text-shadow: 0 0 10px #000;
   display: none;
   position: relative;
   padding: 1% 2%;
   margin-left: 3%;
   cursor: pointer;
}
header.interior div.hamburger {
   padding: 10px;
}
nav {
   display: flex;
   font-weight: bold;
}
nav.home {
   justify-content: space-between;
   font-size: 18px;
   text-shadow: 0 0 10px #000;
}
nav.interior {
   padding: 15px 20px;
   justify-content: space-around;
   font-size: 16px;
   text-shadow: 1px 1px 2px #000;
}
nav a, span.pipe {
   color: #eee;
   text-decoration: none;
}
nav a:hover {
   color: #ccc;
}
span.pipe {
   cursor: default;
}
div.flex-wrapper {
   display: flex;
}
.justify-center {
   justify-content: center;
}
div.container.flex-wrapper {
   height: 100%;
}
div.container.flex-wrapper > div {
   flex: 1 0 42%;
}
div.flex-wrapper > p {
   text-align: left;
}
@media (max-width: 846px) {
   footer.home div.flex-wrapper p.fine-print:nth-of-type(2) {
      order: 3;
   }
}
section.home {
   padding: 50px 0;
   height: auto;
   background-color: rgba(0,0,0,0.5);
}
section.home p {
   color: #fff;
   font-weight: bold;
   font-size: 20px;
   text-shadow: 0 0 10px #000,
                0 0 10px #000;
   text-align: center;
}
section.home p.padded {
   padding: 3% 8% 0;
}
section.home p.tagline {
   font-size: 1.5em;
   letter-spacing: 0.04em;
   text-wrap: balance;
}
section.interior {
   min-height: 200px;
   padding: 30px;
   background-color: #fff;
   color: #333;
   border-bottom: 1px solid #aaa;
   line-height: 1.5;
   clear: both;
}
section.interior h1 {
   margin: 0;
}
section.interior hr {
   border: 1px solid #ccc;
}
section.interior hr.short {
   width: 10%;
   margin: 10px 0 20px;
}
section.interior hr.spacer {
   margin: 10px 0;
}
section.interior form.gray-container {
   width: 100%;
   padding: 10px;
   margin-bottom: 10px;
   border: 1px solid #ccc;
   background-color: #eee;
}
select,
input[type="text"],
input[type="email"] {
   padding: 2px 5px;
   margin-bottom: 5px;
}
section input[type="text"]:not(.auto-size),
section input[type="email"]:not(.auto-size) {
   width: 30%;
}
input[type="button"],
input[type="submit"],
button {
   padding: 2px 10px;
}
section.interior .large-btn {
   width: 100%;
   height: 40px;
}
section.interior label,
section.interior input[type="checkbox"] {
   margin-right: 5px;
}
section.interior textarea {
   width: 100%;
   padding: 2px 5px;
   resize: none;
}
section.interior label {
   display: inline-block;
   text-align: right;
}
section.interior label:not(.auto-size) {
   width: 25%;
}
section.interior img.pull-left, section.interior img.pull-right {
   max-width: 50%;
   max-height: 14.5em;
   margin-top: 1em;
   margin-bottom: 1em;
}
section.interior img.pull-left {
   float: left;
   margin-right: 1em;
}
section.interior img.pull-right {
   float: right;
   margin-left: 1em;
}
p.alert-success, p.alert-failure {
   padding: 10px;
   text-align: center;
   font-size: 16px;
}
p.alert-success {
   background-color: #8DD66B;
   border: 1px solid #6FAA53;
   color: #4B7238;
}
p.alert-failure {
   background-color: #E8716F;
   border: 1px solid #B25553;
   color: #7F3D3B;
}
div.right-col, div.left-col {
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   padding: 0 3%;
}
div.container.flex-wrapper div.left-col {
   flex-basis: 55%;
}
div.container.flex-wrapper div.right-col {
   min-width: 360px;
}
div.left-col img, div.right-col img {
   max-width: 100%;
   max-height: 100%;
}
div.left-col img {
   height: 100%;
}
.profile {
   margin-bottom: 20px;
}
.profile div {
   display:inline-block;
   width: 66%;
   vertical-align: top;
   padding-left: 10px;
}
div.two-col {
   display: inline-block;
   flex: 0 0 50%;
}
div.two-col img {
   max-width: 100%;
   padding-left: 20px;
}
footer {
   padding: 10px;
   background-color: #f7f7f7;
   text-align: center;
   color: #840038;
}
footer div.flex-wrapper {
   justify-content: space-between;
   flex-wrap: wrap;
}
footer div.flex-wrapper p.fine-print {
   display: block;
   flex-shrink: 0;
   margin: 20px auto 0;
   padding: 0 7px;
   width: 270px;
   border-left: 1px solid #ccc;
}
footer.interior {
   border-top: 1px solid #ccc;
}
.gray-out {
   position: fixed;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;
   background-color: rgba(0,0,0,0.7);
   z-index: 10;
}
.modal, .modal-large-fixed {
   width: 100%;
   left: 0;
   right: 0;
   margin: 0 auto;
   padding: 10px;
   background-color: #f7f7f7;
   z-index: 11;
}
.modal {
   top: 30%;
   max-width: 400px;
   position: absolute;
}
.modal-large-fixed {
   top: 10vh;
   height: 80vh;
   max-width: 800px;
   position: fixed;
}
@media (max-width: 970px) {
   div.hamburger {
      display: block;
   }
   header.home {
      background-color: rgba(0,0,0,0.5);
      height: auto;
      padding: 8px 0 5px;
   }
   nav {
      display: block;
      position: fixed;
      top: 0;
      left: -203px;
      width: 200px;
      height: 100%;
      padding: 15px 15px 0 20px;
      background-color: #481A05;
      border-right: 1px dashed #725d35;
      outline: 3px solid #481A05;
   }
   nav:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 198px;
      height: 100%;
      border-right: 1px dashed #000;
   }
   nav a {
      display: block;
      padding-bottom: 8px;
      font-size: 16px;
      position: relative;
      z-index: 5;
   }
   nav span.pipe {
      display: none;
   }
   span.non-mobile {
      display: none;
   }
   span.only-mobile {
      display: inline;
   }
   section.home {
      padding-top: 5px;
   }
   section.home p {
      flex-grow: 1;
      font-size: 16px;
      text-shadow: 0 0 5px #000,
                   0 0 5px #000;
   }
   section.home p.padded {
      padding: 1.4em 3% 1em;
   }
   section.interior {
      font-size: 0.9em;
      padding: 23px;
   }
   div.container.flex-wrapper div.right-col {
      min-width: 45.5%;
   }
   div.container.flex-wrapper div.left-col {
      padding: 0 3% 0 0;
   }
}
@media (max-width: 670px) {
   section.home p {
      font-size: 15px;
   }
   section.home p.padded {
      padding: 1em 3% 0.25em;
   }
   section.interior {
      font-size: 0.8em;
      padding: 15px;
   }
   .profile img {
      max-width: 100%;
      width: auto;
      max-height: 175px;
      display: block;
      margin: 0 auto;
   }
   .profile div {
      width: 100%;
      margin-top: 10px;
      padding: 0;
   }
}
@media (max-width: 520px) {
   div.container.flex-wrapper {
      flex-direction: column;
      max-width: 330px;
      width: 100%;
   }
   .non-phone,
   #background-img {
      display: none;
   }
   span.only-phone,
   img.only-phone,
   #background-img-mobile {
      display: inline;
   }
   section.home {
      height: auto;
      max-height: none;
      padding-bottom: 25px;
   }
   div.right-col {
      margin-bottom: 15px;
   }
   div.right-col,
   div.left-col {
      padding: 0;
   }
   div.left-col img:first-child {
      margin-bottom: 15px;
   }
   section.home p {
      font-size: 14px;
      text-shadow: 0 0 3px #000,
                   0 0 3px #000;
   }
   section.home p.padded {
      margin: 0 auto;
      padding: 25px 3% 0;
      max-width: 330px;
   }
   section.interior img.pull-left, section.interior img.pull-right {
      display: block;
      max-width: 100%;
      margin: 0.5em auto;
      padding: 1em 0;
      border-top: 1px solid #ccc;
      border-bottom: 1px solid #ccc;
   }
   section.interior img.pull-left {
      float: none;
      margin-right: auto;
   }
   section.interior img.pull-right {
      float: none;
      margin-left: auto;
   }
}

