body
{
  padding: 5% 4%;
  margin: 0;
  margin: 0 0;
  background-image: url('images/background-body-xs.png');
  background-attachment: fixed;
  background-size: cover;
  font-size: 0.6vw;
}

@font-face {
    font-family: signpainter;
    src: url("fonts/signpainter.ttf") format("opentype");
}

@font-face {
  font-family: 'FiraSans Medium';
  src: url('/fonts/FiraSans-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
}

.backslab
{
  background-color: rgba(110, 178, 58,0.5);
  width: 100%;
  position: relative;
}


.nav-toggle-float
{
  display: none;
  opacity: 0;
  position: fixed;
  width: auto;
  top: 2%;
  right: 2%;
  padding: 1vw;
  background-color: #6eb23a;
  z-index: 999;
  transition: opacity, 0.5s;
}

.nav-toggle-float img
{
  width: 50px;
  opacity: 0.8;
}

#main-menu
{
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: rgba(233, 234, 236, 0.98);
    z-index: 999;
    text-align: center;
    opacity: 0;
    display: none;
    transition: opacity, 0.5s;
}

#main-menu ul
{
    width: 100%;
    list-style-type: none;
    padding: 0;
    margin-top: 10vh;
}

.mobile-logo
{
  width: 10vw;
  margin-top: 10vh;
}

#main-menu ul li
{
  font-family: "Raleway", sans-serif;
  font-size: 2.5em;
  width: 100%;
  color: #6eb23a;
  padding: 3vh 0;
  transition: background-color, 0.4s;
  cursor: pointer;
}

#main-menu ul li:hover
{
  background-color: #f9f9f9;
  transition: background-color, 0.4s;
}

#close-menu
{
  border: none;
  background-color: #6eb23a;
  position: absolute;
  right: 1vw;
  top: 1vw;
  color: #ffffff;
  font-size: 2.5em;
  padding: 1vw;
  font-family: "Raleway", sans-serif;
  cursor: pointer;
  transition: background-color, 0.4s;

}

#close-menu:hover, #close-menu:active
{
  background-color: #81cc48;
  transition: background-color, 0.4s;
}

.full-wrapper
{
  width: 100%;
  background-color: white;
  position: relative;
}

#navigation-bar
{
  width: 100%;
  background-color: rgba(233, 234, 236, 1);
}

.logo-box
{
  width: 45%;
  display: inline-block;
  vertical-align: middle;
  padding: 20px;
}

#logo
{
  width: 10vw;
  padding-left: 20%;
}

.nav-toggle
{
  width: 45%;
  display: inline-block;
  text-align: right;
  vertical-align: middle;

}

.nav-toggle img
{
  width: 70px;
  opacity: 0.6;
  cursor: pointer;
}

#header-section
{
  width: 100%;
  height: 90vh;
}

.banner
{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

#stores-section
{
   width: 100%;
   overflow: hidden;
   padding-top: 10vh;
}

.description-wrapper
{
  width: 95%;
  margin: 0 auto;
  border-bottom: 6px solid #6eb23a;
  text-align: center;
}

#mobile-stores-button
{
  background-color: #6EB23A;
  border: none;
  color: white;
  font-family: "Raleway", sans-serif;
  padding: 2vw 3vw;
  margin: 2vw 0;
  border-radius: 25px;
  display: none;
  font-size: 2em;
}

.image-wrapper
{
  width: 40%;
  display: inline-block;
  vertical-align: middle;
}

.image-wrapper img
{
  max-width: 100%;
  vertical-align: bottom;
}

.description-text-wrapper
{
  width: 55%;
  display: inline-block;
  vertical-align: middle;
  margin: 0 2%;
}

.title-wrapper
{
  width: 100%;
  text-align: center;
  font-size: 5.0em;
  padding: 20px 0;
  color: #6Eb23a;
  font-family: signpainter;
  font-style: italic;
}

.text-wrapper
{
  font-family: "Raleway", sans-serif;
  font-size: 1.9em;
  text-align: center;
}

.stores-wrapper
{
  width: 92%;
  margin: 3vh auto;
  position: relative;
}

.store-right
{
  width: 100%;
  min-height: 40vh;
  margin: 4vh 0;
}

.store-right:last-child
{
  margin-bottom: 7vh;
}

.store-left
{
  width: 100%;
  height: 40vh;
  margin: 2vh 0;
}

.store-logo
{
  width: 20%;
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  z-index: 6;
}

.store-logo img
{
  max-width: 100%;
}

.store-description
{
  font-family: "Raleway", sans-serif;
  width: 75%;
  display: inline-block;
  vertical-align: middle;
  background-color: rgba(233, 234, 236, 1);
  padding: 2% 5% 5% 5%;
  position: relative;
  margin-left: 15%;
  margin-top: 5%;
  z-index: 5;
  font-size: 1.8em;
}

.store-description p
{
  margin-left: 5%;
}

.store-title
{
  display: block;
  font-weight: bold;
  font-size: 1.7vw;
  padding: 10px;
}

.store-left .store-description
{
  text-align: right;
  margin-left: 0%;
}

.store-left .store-description p
{
  margin-left: 0%;
  margin-right: 5%;
}

.store-left .store-logo
{
  right: 0;
}

/*  ORDER SECTION */

#product-section
{
  background-color: #6EB23A;
  min-height: 80vh;
  padding: 5vh 0;
}

.product-title-box
{
  color: #FFFFFF;
  font-family: signpainter;
  font-size: 5.5em;
  font-style: italic;
  text-align: center;
  padding-bottom: 5vh;
}

.image-slider
{
  text-align: center;
  width: 80%;
  margin: 0 auto;
}

#product-category-list
{
  text-align: center;
}

.product-category
{
  width: 27vw;
  height: 27vw;
  margin: 5px;
  display: inline-block;
  position: relative;
}


.product-category-image
{
  width: 100%;
  height: 100%;
}

.product-category-image img
{
    width: 100%;
    height: 100%;
    cursor: pointer;
    object-fit: cover;
}

.product-category-name:hover
{
  opacity: 1;
  transition: opacity, 0.7s;
  cursor: pointer;
}


.product-category-name
{
    opacity: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.79);
    transition: opacity, 0.7s;
    color: white;
    font-family: "Raleway", sans-serif;
}

.product-category-name label
{
  text-align: center;
  width: 100%;
  display: block;
  margin-top: 12vw;
  font-size: 2vw;
}

#background-fader
{
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: fixed;
  background-color: rgba(52, 52, 52, 0.84);
  opacity: 0;
  display: none;
}

#product-viewer
{
  position: fixed;
  z-index: 999;
  background-color: white;

  margin-left: 5%;
  width: 90%;
  margin-right: 5%;
  margin-top: -105vh;
  transition: margin-top 1s;
}

#category-name
{
  font-size: 3.5vw;
  font-family: signpainter;
  color : #fff;
  background-color: #6eb23a;
  padding: 2vh 0;
  width: 100%;
  border-bottom: 1px solid #6eb23a;
  margin: 0 auto;
  text-align: center;
}

#product-by-list
{
  width: 95%;
  margin: 0 auto;
  text-align: center;
  overflow-x: hidden;
  overflow-y: scroll;
  position: relative;
  height: 80vh;
}

#close-products
{
  position: absolute;
  font-size: 3em;
  color: white;
  background: transparent;
  border: none;
  padding: 1vh 1vw;
  cursor: pointer;
}

.product-box
{
  width: 15vw;
  height: 15vw;
  margin: 1vw;
  display: inline-block;
  position: relative;
}


.product-box-image
{
  width: 100%;
  height: 100%;
}

.product-box-image img
{
    width: 100%;
    height: 100%;
    cursor: pointer;
    object-fit: cover;
}

.product-box:hover > .product-box-name
{
  opacity: 1;
  transition: opacity, 0.7s;
  cursor: pointer;
}

.product-box-name
{
  opacity: 1;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.79);
  transition: opacity, 0.7s;
  color: white;
}

.product-box-name label
{
  text-align: left;
  color: #6eb23a;
  width: 100%;
  display: block;
  font-size: 1.5vw;
  padding: 10px;
  font-family: 'Nunito', sans-serif;
}

#encomendas-online, #emprego
{
  background-image: url('images/background-xs.jpg');
  background-position: center;
  background-size: cover;
  padding: 5vh 0;
}

#emprego {
  margin-top: 150px;
}

#emprego .form-group {
  display: flex;
  justify-content: space-between;
}

#emprego .medium-input
{
    width: 47.2%;
    display: inline-block;
}
#emprego .medium-small-input
{
    width: 37.1%;
    display: inline-block;
}
#emprego .small-input
{
    width: 27.4%;
    display: inline-block;
}

#send-button {
    background-color: #6EB23A;
    font-family: 'FiraSans Medium', sans-serif;
}

.order-title-box
{
  color: #6EB23A;
  font-family: 'FiraSans Medium', sans-serif;
  font-size: 5.5em;
  font-style: italic;
  text-align: center;
  padding: 0 0 5vh 0;
}

.order-fields-wrapper
{
  width: 70%;
  margin: 0 auto;
  overflow: hidden;
}

.order-fields-wrapper input, textarea, select
{
   background-color: #ffffff;
   color: black;
   font-size: 2.0em !important;
   border: none;
   max-width: 100%;
   padding: 9px 1% !important;
   margin: 1px 0.2% !important;
   font-family: 'FiraSans Medium', sans-serif;
}

.order-fields-wrapper textarea
{
   width: 97.6%;
   resize: none;
}

.order-fields-wrapper select
{
  width: 39.6%;
}


.form-group
{
  width: 100%;
  display: block;
}

.medium-input
{
    width: 47.6%;
    display: inline-block;
}

.medium-small-input
{
    width: 37.6%;
    display: inline-block;
}

.small-input
{
    width: 27.6%;
    display: inline-block;
}

/* MEMBERSHIP SECTION */

#membership-section
{
  width: 100%;
  min-height: 70vh;
  padding: 5vh 0;
  background-color: #6EB23A;
}

.membership-title-box
{
  color: #FFFFFF;
  font-family: signpainter;
  font-size: 5.5em;
  font-style: italic;
  text-align: center;
  padding: 0 0 5vh 0;
}

.membership-description-wrapper
{
  width: 100%;
  position: relative;
}

.membership-text-wrapper
{
     width: 40%;
     font-family: "Raleway", sans-serif;
     text-align: center;
     color: white;
     font-size: 2.3em;
     margin-top: 5vh;
     margin-left: 3%;
}

.membership-text-wrapper label
{
   text-transform: uppercase;
   font-weight: bold;
   display: block;
   font-size: 1.6em;
   padding: 20px 0;
   color: black !important;
}

.membership-image-wrapper
{
position: absolute;
width: 50%;
right: 0;
top: 60%;
}

.membership-image-wrapper img
{
  max-width: 100%;
}

#storelocation-section
{
   width: 100%;
   background-color: white;
   min-height: 30vh;
   padding-top: 40vh;
   padding-bottom: 10vh;
   overflow: hidden;
}

.storelocation-title-box
{
  color: #6EB23A;
  font-family: signpainter;
  font-size: 5.5em;
  font-style: italic;
  text-align: center;
  padding: 0 0 5vh 0;
}

.storelocation-list-wrapper
{
  text-align: center;
  font-family: "Raleway", sans-serif;
  margin-top: 5vh;
}

.storelocation-box
{
    width: 20%;
    display: inline-block;
    margin: 0 1.5%;
    text-align: left;
    font-size: 1.8em;
    vertical-align: top;
}

.storelocation-box img
{
    max-width: 100%;
}

.address
{
  padding: 5px 0 5px 5%;
}

.social-networks
{
  text-align: center;
  margin-top: 15vh;
}

.social-networks a img
{

  width: 2.9em;
  min-width: 30px;
  margin: 0 1%;
}

@media screen and (max-width: 700px)
{

      body
      {
        padding: 0;
        font-size: 1.5vw;
      }

      .full-wrapper
      {
        width: 100%;
        background-color: white;
        margin-left: 0;
        top: 0;
        position: relative;
      }

      .logo-box
      {
      width: 100%;
      display: inline-block;
      vertical-align: middle;
      padding: 20px 0;
      text-align: center;
      }

      #logo
      {
      width: 28vw;
      padding-left: 0;
      }


      .desktop-bar
      {
        display: none;
      }

      .mobile-bar
      {
        display: inline-block;
      }


      /* STORES - MOBILE */

      #mobile-stores-button
      {
        display: inline;
      }

      .stores-wrapper
      {
        display: none;
      }

      .description-wrapper
      {
        border-bottom: none;
        width: 100%;
      }

      .description-text-wrapper
      {
        width: 50%;
      }

      .text-wrapper
      {
        max-height: 10vh;
        overflow: hidden;
      }

      .image-wrapper
      {
        vertical-align: bottom;
        width: 45%;
      }

      /* PRODUCTS */

      .image-slider
      {
        width: 95%;

      }

      .order-fields-wrapper
      {
        width: 85%;
      }

      .email
      {
        width: 97.6%;
      }

      .small-input
      {
        width: 47.6%;
      }

      .order-fields-wrapper select
      {
        width: 99.6%;
      }

      /* MEMBERSHIP */

      #membership-section
      {
        min-height: 0;
      }

      .membership-title-box
      {
        padding: 0 5%;
      }

      .membership-text-wrapper
      {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
          padding-bottom: 30vw;
      }

      .membership-image-wrapper
      {
        width: 80%;
        top: 70%;
      }
      /* STORE LOCATION SECTION*/

      #storelocation-section
      {
        padding-top: 40vw;
      }

      .storelocation-box
      {
        width: 27%;
        vertical-align:top;
      }

      /* MOBILE MENU */

      .mobile-logo
      {
        width: 25vw;
        margin-top: 10vh;
      }

      #main-menu ul li
      {
          font-size: 3em;
      }


      #close-menu
      {
        padding: 2vw;
      }


      /*  PRODUCT SECTION */

      .product-category
      {
        width: 67vw;
        height: 67vw;
      }

      .product-category-name
      {
          opacity: 1;
          background-color: rgba(0, 0, 0, 0.30);
      }

      .product-category-name label
      {
        margin-top: 22vw;
        font-size: 8vw;
      }

      #category-name
      {
        font-size: 8vw;
        font-family: signpainter;
        color : #fff;
        background-color: #6eb23a;
        padding: 2vh 0;
        width: 100%;
        border-bottom: 1px solid #6eb23a;
        margin: 0 auto;
        text-align: center;
      }

      #product-by-list
      {
        width: 100%;

      }

      #close-products
      {
        position: absolute;
        font-size: 5em;
        color: white;
        background: transparent;
        border: none;
        padding: 1vh 2vw;
        cursor: pointer;
      }

      .product-box
      {
        width: 35vw;
        height: 35vw;
        margin: 1vw;
        display: inline-block;
        position: relative;
      }


      .product-box-name
      {
        opacity: 1;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        background-color: rgba(255, 255, 255, 0.79);
        transition: opacity, 0.7s;
        color: white;
      }

      .product-box-name label
      {
        text-align: left;
        color: #6eb23a;
        width: 100%;
        display: block;
        font-size: 4.5vw;
        padding: 10px;
        font-family: 'Nunito', sans-serif;
      }

}
