body {
  font-size: 13px;
  color: #444;
  background: white; }

#backgroundimage {
  height: auto;
  left: 0;
  margin: 0;
  min-height: 100%;
  min-width: 674px;
  padding: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1; }

#masks {
  height: auto;
  left: 0;
  margin: 0;
  min-height: 100%;
  min-width: 674px;
  padding: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
  background: rgba(255, 255, 255, 0.2); }

.index-banner {
  background: #f3f3f3;
  color: black;
  font-size: 16px;
  font-family: "Playfair Display";
  font-weight: 400;
  font-size: 22px; }
  .index-banner .highlight-text {
    color: #f99d01; }
  .index-banner .banner-inner {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    height: 390px; }
    .index-banner .banner-inner .banner-left {
      margin-top: auto;
      margin-bottom: 140px;
      padding: 20px;
      width: 60%; }
    .index-banner .banner-inner .banner-right {
      width: 40%;
      padding: 0 20px;
      text-align: center; }
      .index-banner .banner-inner .banner-right img {
        width: 360px;
        margin-top: 50px; }

.index-content {
  background: white; }

.index-main {
  text-align: center;
  font-family: "Playfair Display";
  font-size: 1.2rem; }
  .index-main h2 {
    font-size: 2.2rem;
    margin-top: 4rem;
    margin-bottom: 1rem; }
  .index-main .index-mission {
    width: 55%;
    margin: 0 auto;
    font-size: 1.4rem; }
    .index-main .index-mission p {
      margin-top: 20px; }
    .index-main .index-mission #more {
      display: none; }
    .index-main .index-mission p.two {
      display: none; }
    .index-main .index-mission label {
      -moz-appearance: button;
      appearance: button; }
    .index-main .index-mission label:after {
      content: 'Show More';
      font-weight: bold;
      font-size: 1rem; }
    .index-main .index-mission #more:checked + p.two {
      display: block; }
    .index-main .index-mission #more:checked ~ label:after {
      content: 'Show Less'; }
  .index-main .index-products {
    width: 80%;
    margin: 0 auto; }

.action-button {
  padding: 10px 15px;
  border-radius: 5px;
  background: #fdc900;
  color: #222;
  border: none;
  font-weight: bold;
  margin-top: 10px;
  box-shadow: 1px 2px 0px rgba(0, 0, 0, 0.15); }

.action-button:hover {
  background: #f0c10b; }

.content {
  font-family: "Playfair Display";
  padding: 0;
  margin: 0; }

.index-horizontal-items {
  font-family: "Playfair Display";
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center; }
  .index-horizontal-items .index-horizontal-item {
    max-width: 24%;
    max-height: 650px;
    padding: 0;
    margin-top: 20px;
    margin-left: 7px;
    background: white; }
    .index-horizontal-items .index-horizontal-item h3 {
      font-size: 1.2rem;
      text-align: center;
      margin-top: 0.75rem;
      text-transform: uppercase; }
    .index-horizontal-items .index-horizontal-item p {
      font-size: 1.1rem; }
    .index-horizontal-items .index-horizontal-item img {
      width: 90%;
      border: 1px solid #000000; }

.index-side-by-side {
  display: flex;
  flex-direction: column;
  margin-bottom: 30px; }
  .index-side-by-side .side-item {
    margin-top: 20px;
    display: flex;
    flex-direction: row;
    text-align: left;
    font-size: 16px;
    gap: 5px; }
    .index-side-by-side .side-item .index-section {
      padding: 10px;
      width: 50%;
      vertical-align: top; }
      .index-side-by-side .side-item .index-section h2 {
        font-size: 2rem;
        margin-top: 0; }
      .index-side-by-side .side-item .index-section p {
        width: 80%; }
      .index-side-by-side .side-item .index-section img {
        width: 90%;
        border: 1px solid #000000; }

@media only screen and (max-width: 568px) {
  .content {
    padding-top: 10px; }
    .content .title-container {
      margin-left: 190px; }
  .index-banner .page-container {
    padding: 0; }
    .index-banner .page-container .banner-left {
      width: 40%;
      margin-bottom: 40px; }
    .index-banner .page-container .banner-right {
      width: 60%;
      padding: 0; }
      .index-banner .page-container .banner-right img {
        width: 90%;
        overflow: hidden;
        margin-top: 100px; }
  .index-banner h1 {
    font-size: 3rem; }
  .index-main .index-mission {
    width: 75%; }
  .index-horizontal-items {
    flex-direction: column;
    gap: 30px; }
    .index-horizontal-items img {
      width: 250px;
      border: 1px solid #000000; }
    .index-horizontal-items .index-horizontal-item {
      max-width: 100%; }
  .index-side-by-side {
    grid-template-columns: 1fr; }
    .index-side-by-side .side-item {
      flex-direction: column-reverse;
      gap: 0; }
      .index-side-by-side .side-item .index-section {
        padding-top: 0;
        width: 100%; }
        .index-side-by-side .side-item .index-section p {
          width: 100%;
          padding-bottom: 20px; }
        .index-side-by-side .side-item .index-section img {
          width: 100%;
          border: 1px solid #000000; }
    .index-side-by-side .side-item:nth-child(2) {
      flex-direction: column; }
    .index-side-by-side .site-item-image {
      border: thin solid red; }
      .index-side-by-side .site-item-image img {
        width: 240px;
        border: 1px solid #000000; } }
