:root {
  --background: #EDEDED;
  --pink: #FFAE8C;
  --grey: #208778;
  --grey2: #E6E6E6;
  --green: #208778;
  --blue: #69989D;
}


/* HORIZONTAL RULES  */

div {
  box-sizing: border-box;
}

.horizontal-scroll-wrapper {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100vh;
  height: 100vw;
  margin: 0;
  overflow-y: auto;
  overflow-x: hidden;
  transform: rotate(-90deg) translateY(-100vh);
  transform-origin: right top;
}

.horizontal-scroll-wrapper>div,
.horizontal-scroll-wrapper .product-wrapper>div {
  display: block;
  transform: rotate(90deg) translateY(-100vh);
  transform-origin: left top;
  z-index: -1;
}

.transform {
  transform: rotate(90deg) translateY(-100vh);
  transform-origin: left top;
}

/* ----------------------- */

.thumb-info-mobile {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #059886;
}

/* COOKIES BAR  */

.notice-bottom-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #FFAE8C;
  z-index: 1000;
  font-family: gilroy-semibold, sans-serif;
}

.notice-bottom-bar a {
    font-family: gilroy-semibold, sans-serif;
}

.notice-bottom-bar .notice-button {
  background: rgba(235, 34, 63, 0.7);
  color: #78614C;
  border-radius: 35px;
  -webkit-transition: ease background 300ms;
  transition: ease background 300ms;
  text-decoration: none;
}

.notice-bottom-bar .notice-button:hover {
  background: #eb223f;
}

/* ----------------------- */

/* CUSTOM SCROLLBAR  */

::-webkit-scrollbar {
  width: 0px;
  height: 2px;
}

::-webkit-scrollbar-button {
  width: 2px;
  height: 2px;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.product-div-home::-webkit-scrollbar,
.product-div::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.product-div-home,
.product-div {
  -ms-overflow-style: none;
  /* IE and Edge */
  scrollbar-width: none;
  /* Firefox */
}

/* ----------------------- */

/* SCROLL ICON */

.scroll {
  position: absolute;
  right: 90vh; /* top */
  width: 50vw;
  margin-top: 25vh; /*  left */
  font-size: 2vh !important;
  font-family: gilroy-extrabold, sans-serif;
  text-transform: uppercase;
}

/* ----------------------- */

/* TEXT FLOAT  */

.text-float-horizontal {
  position: absolute;
  transform: rotate(75deg) !important;
  left: 100vh;
  bottom: 50vh;
}

.text-float-vertical {
  position: fixed;
  transform: rotate(-15deg);
}

.text-float-item {
  font-size: 8em;
  line-height: 1em;
  text-align: center;
  -webkit-text-stroke: 1px gray;
  color: transparent;
  font-family: gilroy-extrabold, sans-serif;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0.2;
  color: #e6e6e6;
}

/* ----------------------- */

.float-search {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
}
.float-search-close {
  position: absolute;
  top: 5rem;
  right: 5rem;
  outline: none;
  border: none;
  background: transparent;
}
.float-search-close:hover, .float-search-close:focus  {
  outline: none;
  cursor: pointer;
}


/* HOME  */

.home-text-1 {
  position: relative;
  right: 45vh; /* top */
  height: 65vh;
  width: 45vw;
  overflow-x: hidden;
  overflow-y: hidden;
  margin-bottom: 20vh;
  margin-top: 25vh; /*  left */
  font-size: 5vh !important;
  font-family: gilroy-extrabold, sans-serif;
  text-transform: uppercase;
}

.home-img-1 {
  position: relative;
  right: 10vh; /* top */
  width: 100vw;
  overflow-x: hidden;
  overflow-y: auto;
}

.home-text-2 {
  position: relative;
  right: 30vh; /* top */
  height: 65vh;
  width: 35vw;
  overflow-x: hidden;
  margin-bottom: 40vh;
  margin-top: 40vh; /*  left */

}

.home-text-2 h2 {
  font-size: 7vh !important;
  font-family: gilroy-extrabold, sans-serif;
  text-transform: uppercase;
  margin-left: 2.5vh;
}

.ht2-bg {
  height: 8.5vh;
  background-image: url("../img/icons/headericon1.svg");
  background-position: bottom left;
  background-repeat: no-repeat;
}

.home-text-2 p {
  margin-left: 5rem;
}

.home-text-3 {
  position: relative;
  right: 15vh; /* top */
  width: 20vw;
  text-transform: uppercase;
  font-size: 2.5vh !important;
  margin-bottom: -17vh;
}

.home-text-3 h2 {
  margin-left: 2.5vh;
}

.ht3-bg {
  height: 5.5vh;
  background-image: url("../img/icons/headericon2.svg");
  background-position: bottom left;
  background-repeat: no-repeat;
}

.home-text-4 {
  position: relative;
  right: 30vh; /* top */
  text-transform: uppercase;
  font-size: 1.3vh !important;
  bottom: 23rem;
}

.prod-grid {
  position: relative;
  right: 40vh; /* top */
  width: 25vw;
  overflow-x: hidden;
  overflow-y: auto;
  margin-bottom: 10rem;
}


.prod-grid img {
  margin-bottom: 3rem;
}

/* ----------------------- */


/* ABOUT  */

.about-text-1 {
  position: relative;
  right: 20vh; /* top */
  height: 65vh;
  width: 32vw;
  margin-bottom: 20vh;
  margin-top: 30vh; /*  left */
}

.about-text-1 h2 {
  font-size: 5vh !important;
  font-family: gilroy-extrabold, sans-serif;
  text-transform: uppercase;
  margin-left: 1vw;
}

.about-text-1 p {
  margin-left: 5rem;
}

.about1-bg {
  height: 7.5vh;
  background-image: url("../img/icons/headericon1.svg");
  background-position: bottom left;
  background-repeat: no-repeat;
}

.about-img-1 {
  position: relative;
  height: 100vh;
  overflow: auto;
}

.about-text-2 {
  position: relative;
  right: 30vh;
  height: 40vh;
  width: 29vw;
  overflow-x: hidden;
  overflow-y: auto;
  margin-bottom: 40vh;
  margin-top: 10vh;
}

.about-text-2 h4, .about-text-3 h4, .about-text-4 h4, .about-text-5 h4 {
  font-family: gilroy-bold, sans-serif;
  text-transform: uppercase;
}

.about2-bg {
  height: 4vh;
  background-image: url("../img/icons/about-icon1.svg");
  background-position: bottom left;
  background-repeat: no-repeat;
}

.about-text-3 {
  position: relative;
  right: 70vh;
  height: 40vh;
  width: 29vw;
  overflow-x: hidden;
  overflow-y: auto;
  margin-bottom: 40vh;
  margin-top: -80vh;
}

.about3-bg {
  height: 4vh;
  background-image: url("../img/icons/about-icon2.svg");
  background-position: bottom left;
  background-repeat: no-repeat;
}

.about-text-4 {
  position: relative;
  right: 30vh;
  height: 40vh;
  width: 29vw;
  overflow-x: hidden;
  overflow-y: auto;
  margin-bottom: 40vh;
  margin-top: 10vh;
}

.about4-bg {
  height: 4vh;
  background-image: url("../img/icons/about-icon3.svg");
  background-position: bottom right;
  background-repeat: no-repeat;
  width: 6.5rem;
}

.about-text-5 {
  position: relative;
  right: 70vh;
  height: 40vh;
  width: 29vw;
  overflow-x: hidden;
  overflow-y: auto;
  margin-bottom: 40vh;
  margin-top: -80vh;
}

.about5-bg {
  height: 4vh;
  background-image: url("../img/icons/about-icon4.svg");
  background-position: bottom right;
  background-repeat: no-repeat;
  width: 6rem;
}

.about-side {
  background: var(--grey2);
height: 100vh;
width: 30vw;
margin-bottom: -75vh;
background-image: url("../img/icons/sideabout.svg");
background-position: top right;
background-repeat: no-repeat;
}

.about-side h3 {
  text-transform: uppercase;
}

.about-side-text {
  position: absolute;
  top: 35vh;
  text-align: center;
  width: 100%;
}

.sideabout1 {
  position: absolute;
  top: -10vh;
}
.sideabout2 {
  position: absolute;
  bottom: 0;
  left: 0;
}

/* ----------------------- */

/* SERVIÇOS  */

.serv-text-1 {
  position: relative;
  right: 35vh; /* top */
  height: 70vh;
  width: 25vw;
  overflow-x: hidden;
  overflow-y: auto;
  margin-top: 25vh; /*  left */
}

.serv-text-1 h2 {
  font-size: 6vh !important;
  font-family: gilroy-extrabold, sans-serif;
  text-transform: uppercase;
}

.serv-text-1 p {
  margin-left: 4.5rem;
  /* font-family: gilroy-extrabold, sans-serif; */
}

.serv-grid {
  position: relative;
  right: 20vh; /* top */
  width: 25vw;
  overflow-x: hidden;
  overflow-y: auto;
  margin-bottom: 10rem;
}

.serv-grid img {
  margin-bottom: 3rem;
}

.serv-grid h4 {
 font-family: gilroy-semibold, sans-serif;
 text-transform: uppercase;
}


/* ----------------------- */

/* PRODUTOS   */

.prods-text-1 {
  position: relative;
  right: 5vh; /* top */
  margin-top: 30vh; /*  left */
}

.prods-text-1 h2 {
  font-size: 7vh !important;
  font-family: gilroy-extrabold, sans-serif;
  text-transform: uppercase;
}

.cat-bg {
  height: 8vh;
  background-image: url("../img/icons/headericon1.svg");
  background-position: bottom left;
  background-repeat: no-repeat;
}

.prods-grid {
  position: relative;
  right: 25vh; /* top */
  top: -7vw;
  width: 15rem;
}

.prods-grid h2{
font-family: gilroy-semibold, sans-serif;
text-transform: uppercase;
position: absolute;
width: 100%;
font-size: 1.4rem;
}

.soon-grid {
   margin-bottom: 70vh;
   font-size: 2rem;
   top: -5vw !important;

}

/* SERVIÇOS  */

.serv-text-1 h2 {
  margin-left: 1vw;
}

.serv-bg {
  height: 8vh;
  background-image: url("../img/icons/headericon1.svg");
  background-position: bottom left;
  background-repeat: no-repeat;
}



/* SIDE FOOTER  */

#side-footer {
  background: #fff;
  height: 100vh;
  display: flex;
  align-items: center;
  margin-top: 30vh;
  padding: 0 4rem;
}

#side-footer p {
  font-family:  gilroy-semibold, sans-serif;
}

#side-footer h2 {
  font-family:  gilroy-extrabold, sans-serif;
}

.sf-bg {
  background-image: url("../img/icons/sidefootericon.svg");
  background-position: bottom right;
  background-repeat: no-repeat;
  width: 16vw;
}

#side-footer .unify {
position: absolute;
bottom: 2rem;
left: 0;
right: 0;
margin-left: auto;
margin-right: auto;
}

.footer-mobile{
  border-top: 1px solid grey;
  background: #FFF;
}

/* ----------------------- */


/* CONTACTOS  */

.cont-bg-1 {
    background-image: url("../img/icons/headericon1.svg");
    background-position: center left;
    background-repeat: no-repeat;
}
.cont-bg-1 h2 {
    margin-left: 1vw;
}
.cont-bg-2 {
    background-image: url("../img/icons/headericon2.svg");
    background-position: top left;
    background-repeat: no-repeat;
}
.cont-bg-2 h2 {
    margin-left: 1vw;
}

.contactos {
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}
.contactos p {
  font-family: gilroy-semibold, sans-serif;
}

/* ----------------------- */


/* INPUT  */



::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #000 !important;
  opacity: 1; /* Firefox */
  font-family: gilroy-semibold, sans-serif !important;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
color: #000 !important;
font-family: gilroy-semibold, sans-serif !important;
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: #000 !important;
  font-family: gilroy-semibold, sans-serif !important;
}

.custom-file {
  border-bottom: 2px solid #CECECE;
}

.custom-file-input+label {
  cursor: pointer;
}

.custom-file-input {
  width: 0px;
  height: 0px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

.custom-file-input+label {
  outline: 1px dotted #000;
  outline: -webkit-focus-ring-color auto 5px;
  outline: none;
}

.custom-file-label-frutasclasse {
  font-family: gilroy-semibold, sans-serif !important;
  color: #000;
  text-transform: uppercase;
}

.checkbox-label {
  color: #000;
  font-family: Gilroy-Regular, sans-serif;
}

.form-control {
  display: block;
width: 100%;
height: calc(2.25rem + 2px);
padding: 0;
font-size: 1rem;
font-weight: 400;
line-height: 1.5;
color: #000;
background: none;
background-clip: padding-box;
border: none;
border-bottom: 2px solid #CECECE;
border-radius: 0;
transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.form-control:focus {
  background: none;
}

textarea {
  resize: none;
  height: 6rem !important;
}

.cart-input {
  background-color: transparent;
  border: none;
  width: 5%;
  text-align: center;
  font-size: 1.5rem;
}

.cart-less, .cart-more {
  border: none;
  font-size: 1.5rem;
}


/* MODAL  */
.modal-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 0 !important;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
}

.modal-body, .modal-content {
  padding: 2rem 1rem !important;
}

/* FONTS ANDS COLORS  */

.link, .link a {
  color: #000 !important;
  text-transform: uppercase;
  text-decoration: underline;
  font-weight: bold;
  text-underline-offset: 3px;
}

.link img {
  width: 1.5rem;
}

.pink {
  color: var(--pink);
}

.green {
  color: var(--green);
}

.grey {
  color: grey;
}

.blue {
  color: var(--blue);
}

.bg-grey {
  background: #E6E6E6;
}

.regular {
  font-family: gilroy-regular, sans-serif;
}

.semibold {
  font-family: gilroy-semibold, sans-serif;
}

.bold {
  font-family: gilroy-bold, sans-serif;
}
.extrabold {
  font-family: gilroy-extrabold, sans-serif;
}

/* MOBILE MENU  */

.container-menu-mobile {
  position: relative;
  background: var(--grey2);
  z-index: 9999;
}

.fa-bars {
  color: #000;
}

.float-menu-mobile {
  height: 100vh;
  width: 100%;
  overflow: hidden;
  position: fixed;
  overflow: hidden;
  background: var(--grey2);
  z-index: 9999;
}


.dropdown-item-mobile {
  text-transform: uppercase;
  color: #208778;
  font-family: gilroy-bold, sans-serif;
}

.menu-mobile-close {
  position: absolute;
  right: 1rem;
  top: 1rem;
  outline: none;
  background: transparent;
  border: none;
  z-index: 99;
}

.menu-mobile-close:hover, .menu-mobile-close:focus {
  outline: none;
}



/* MEDIA QUERIES  */

@media only screen and (min-width: 1024px) and (max-width: 1350px) {
  .scroll {
    margin-top: 40vh;
  }


/* Home  */
.home-text-1 {
  right: 25vh;
  margin-top: 40vh;
  height: 40vh;
}

.home-img-1 {
  right: 0;
}

.home-text-2 {
  right: 15vh;
  margin-top: 20vh;
  height: 75vh;
  width: 55vw;
}
.home-text-2 p {
  margin-left: 2rem;
}

.prod-grid {
  margin-bottom: 4rem;
}

/* About  */

.about-text-1 {
  right: 10vh;
  height: 90vh;
  width: 40vw;
}
.about-text-2 {
  right: 15vh;
  height: 85vh;
width: 45vw;
}
.about-text-3 {
width: 40vw;
bottom: 55rem;
}

.about-text-4 {
  right: 15vh;
  height: 85vh;
width: 35vw;
}
.about-text-5 {: 57rem;
  width: 40vw;
}

.about-side {
  margin-bottom: -50vh;
  margin-top: -30rem;
}

/* Servicos  */

.serv-text-1 {
  right: 15vh;
  width: 35vw;
}

.serv-grid {
  right: 10vh;
  width: 40vw;
}

/* Produtos  */

.prods-grid {
  right: 25vh;
  width: 10rem;
}

/* Contactos  */

.contactos {
  padding: 0 10vw;
  margin-top: 20vh;
  padding: 0 5rem !important;
}

/* Carrinho  */


/* Outros  */

#header .header-nav.header-nav-links-side-header nav > ul > li > a {
  padding: 1rem 1rem !important;
}



#side-footer {
  margin-top: 0;
}
}

.cart-number {
  background-color: #ed5348;
  color: #ffffff;
  padding: 3px 7px;
  border-radius: 50px;
}

.active {
  background-color: #69989d;
}
