*,
*::before,
*::after {
	box-sizing: border-box;
}

:root {
	--bg-cream: #F7ECE1;
	--bg-green: #548235;
	--bg-green-tint: #E9EDDD;
	--bg-green-light: #62933B;
	--bg-green-primary: #397E58;
	--bg-green-secondary: #063137;
	--bg-green-dark: #0F2318;
	--bg-dark: #525252;
	--bg-gray: #C9C9C9;
	--bg-shade: #353535;
	--bg-light: #EDEDED;
	--bg-tint: #FBF8F5;
	--bg-white: #FFF;
	--bg-black: #161617;
	--bg-gray-tint: #F2F2F2;
	--bg-lime: #AFDA07;
	--bg-eco: #97BE0D;
	--bg-blue: #146EF5;

	--color-cream: #F7ECE1;
	--color-green: #548235;
	--color-green-tint: #E9EDDD;
	--color-green-light: #62933B;
	--color-green-primary: #397E58;
	--color-green-secondary: #063137;
	--color-green-dark: #0F2318;
	--color-dark: #525252;
	--color-gray: #C9C9C9;
	--color-shade: #353535;
	--color-light: #EDEDED;
	--color-tint: #FBF8F5;
	--color-white: #FFF;
	--color-gray-tint: #F2F2F2;
	--color-black: #131313;
	--color-lime: #AFDA07;
	--color-eco: #97BE0D;
	--color-blue: #146EF5;

	--primary-color: #007bff;
	--secondary-color: #6c757d;

    --f7-padding: 16px;
  	--f7-margin: 16px;
}

/* Border color */
.border-cream { border-color: var(--bg-cream); }
.border-green { border-color: var(--bg-green); }
.border-green-tint { border-color: var(--bg-green-tint); }
.border-green-light { border-color: var(--bg-green-light); }
.border-green-primary { border-color: var(--bg-green-primary); }
.border-green-secondary { border-color: var(--bg-green-secondary); }
.border-green-dark { border-color: var(--bg-green-dark); }
.border-dark { border-color: var(--bg-dark); }
.border-gray { border-color: var(--bg-gray); }
.border-shade { border-color: var(--bg-shade); }
.border-light { border-color: var(--bg-light); }
.border-tint { border-color: var(--bg-tint); }
.border-white { border-color: var(--bg-white); }
.border-black { border-color: var(--bg-black); }
.border-gray-tint { border-color: var(--bg-gray-tint); }
.border-lime { border-color: var(--bg-lime); }
.border-eco { border-color: var(--bg-eco); }
.border-blue { border-color: var(--bg-blue); } 

/* Background */
.bg-cream { background: var(--bg-cream); }
.bg-green { background: var(--bg-green); }
.bg-green-tint { background: var(--bg-green-tint); }
.bg-green-light { background: var(--bg-green-light); }
.bg-green-primary { background: var(--bg-green-primary); }
.bg-green-secondary { background: var(--bg-green-secondary); }
.bg-green-dark { background: var(--bg-green-dark); }
.bg-dark { background: var(--bg-dark); }
.bg-gray { background: var(--bg-gray); }
.bg-shade { background: var(--bg-shade); }
.bg-light { background: var(--bg-light); }
.bg-tint { background: var(--bg-tint); }
.bg-white { background: var(--bg-white); }
.bg-black { background: var(--bg-black); }
.bg-gray-tint { background: var(--bg-gray-tint); }
.bg-lime { background: var(--bg-lime); }
.bg-eco { background: var(--bg-eco); }
.bg-blue { background: var(--bg-blue); }

/* Color */
.color-cream { color: var(--color-cream); }
.color-green { color: var(--color-green); }
.color-green-tint { color: var(--color-green-tint); }
.color-green-light { color: var(--color-green-light); }
.color-green-primary { color: var(--color-green-primary); }
.color-green-secondary { color: var(--color-green-secondary); }
.color-green-dark { color: var(--color-green-dark); }
.color-dark { color: var(--color-dark); }
.color-gray { color: var(--color-gray); }
.color-shade { color: var(--color-shade); }
.color-light { color: var(--color-light); }
.color-tint { color: var(--color-tint); }
.color-white { color: var(--color-white); }
.color-black { color: var(--color-black); }
.color-gray-tint { color: var(--color-gray-tint); }
.color-lime { color: var(--color-lime); }
.color-eco { color: var(--color-eco); }
.color-blue { color: var(--color-blue); }

/* Text Color */
.text-cream { color: var(--color-cream); }
.text-green { color: var(--color-green); }
.text-green-tint { color: var(--color-green-tint); }
.text-green-light { color: var(--color-green-light); }
.text-green-primary { color: var(--color-green-primary); }
.text-green-secondary { color: var(--color-green-secondary); }
.text-green-dark { color: var(--color-green-dark); }
.text-dark { color: var(--color-dark); }
.text-gray { color: var(--color-gray); }
.text-shade { color: var(--color-shade); }
.text-light { color: var(--color-light); }
.text-tint { color: var(--color-tint); }
.text-white { color: var(--color-white); }
.text-black { color: var(--color-black); }
.text-gray-tint { color: var(--color-gray-tint); }
.text-lime { color: var(--color-lime); }
.text-eco { color: var(--color-eco); }
.text-blue { color: var(--color-blue); }

.font-size-11 { font-size: 11px !important; }
.font-size-12 { font-size: 12px !important; }
.font-size-13 { font-size: 13px !important; }
.font-size-14 { font-size: 14px !important; }
.font-size-15 { font-size: 15px !important; }
.font-size-16 { font-size: 16px !important; }
.font-size-18 { font-size: 18px !important; }
.font-size-20 { font-size: 20px !important; }


html {
	scroll-behavior: smooth;
}

body {
    background-color: var(--bg-tint);
    color: var(--secondary-color);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
}

article h2,
article h3,
article h4,
article h5, 
article p {
	padding-bottom: 16px!important;
}

article a {
	color: var(--color-green-primary);
}

article strong,
article b {
	color: var(--color-shade);
	font-weight: 500;
}

article h1 {
	font-size: 22px;
	font-weight: 600;
	color: var(--color-black);	
	margin-bottom: 24px;
}

article h2 {
	font-size: 22px;
	font-weight: 600;
	color: var(--color-shade);
}

article h2 {
	font-size: 18px;
	font-weight: 600;
	color: var(--color-shade);
}

.cmplz-document {
  margin-left: auto;
  margin-right: auto;
}

.entry-content {
    display: block;
    margin: 25px auto;
    max-width: 990px;
}

.container {
	width: 100%;
	max-width: 1440px!important;
}
.container-xl {
	max-width: 1560px!important;
}

.font-inter {
    font-family: 'Montserrat', sans-serif;
}

.font-inter-100,
.font-ultralight {
    font-family: 'Inter', sans-serif;
    font-weight: 100;
}

.font-inter-200,
.font-extralight {
    font-family: 'Inter', sans-serif;
    font-weight: 200;
}

.font-inter-300,
.font-light {
    font-family: 'Inter', sans-serif;
    font-weight: 300;
}

.font-inter-400,
.font-regular {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
}

.font-inter-500,
.font-medium {
    font-family: 'Inter', sans-serif;
    font-weight: 500;
}

.font-inter-600,
.font-semibold {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
}

.font-inter-700,
.font-bold {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
}

.font-inter-800,
.font-extrabold {
    font-family: 'Inter', sans-serif;
    font-weight: 800;
}

.font-inter-900,
.font-ultrabold {
    font-family: 'Inter', sans-serif;
    font-weight: 900;
}

.font-montserrat {
    font-family: 'Montserrat', sans-serif;
}


.font-size-8  { font-size: 8px;  }
.font-size-10 { font-size: 10px; }
.font-size-12 { font-size: 12px; }
.font-size-14 { font-size: 14px; }
.font-size-16 { font-size: 16px; } /**/
.font-size-18 { font-size: 18px; } /**/
.font-size-20 { font-size: 20px; } /**/
.font-size-22 { font-size: 22px; }
.font-size-24 { font-size: 24px; } /**/
.font-size-28 { font-size: 28px; }
.font-size-32 { font-size: 32px; }
.font-size-36 { font-size: 36px; }
.font-size-38 { font-size: 38px; } /**/
.font-size-40 { font-size: 40px; }
.font-size-44 { font-size: 44px; }
.font-size-48 { font-size: 48px; }
.font-size-56 { font-size: 56px; }
.font-size-58 { font-size: 58px; } /**/
.font-size-62 { font-size: 62px; }
.font-size-64 { font-size: 64px; }
.font-size-72 { font-size: 72px; }
.font-size-80 { font-size: 80px; }
.font-size-84 { font-size: 84px; }
.font-size-92 { font-size: 92px; } /**/


.margin { margin: var(--f7-margin); }
.margin-left { margin-left: var(--f7-margin); }
.margin-right { margin-right: var(--f7-margin); }
.margin-top { margin-top: var(--f7-margin); }
.margin-bottom { margin-bottom: var(--f7-margin); }
.margin-horizontal { margin-left: var(--f7-margin); margin-right: var(--f7-margin); }
.margin-vertical { margin-top: var(--f7-margin); margin-bottom: var(--f7-margin); }
.margin-half { margin: calc(var(--f7-margin) / 2); }
.margin-left-half { margin-left: calc(var(--f7-margin) / 2); }
.margin-right-half { margin-right: calc(var(--f7-margin) / 2); }
.margin-top-half { margin-top: calc(var(--f7-margin) / 2); }
.margin-bottom-half { margin-bottom: calc(var(--f7-margin) / 2); }
.margin-horizontal-half { margin-left: calc(var(--f7-margin) / 2); margin-right: calc(var(--f7-margin) / 2); }
.margin-vertical-half { margin-top: calc(var(--f7-margin) / 2); margin-bottom: calc(var(--f7-margin) / 2); }
.no-margin { margin: 0 !important; }
.no-margin-left { margin-left: 0 !important; }
.no-margin-right { margin-right: 0 !important; }
.no-margin-top { margin-top: 0 !important; }
.no-margin-bottom { margin-bottom: 0 !important; }
.no-margin-horizontal { margin-left: 0 !important; margin-right: 0 !important; }
.no-margin-vertical { margin-top: 0 !important; margin-bottom: 0 !important; }


.margin-auto { margin: auto; }
.margin-0,
.no-margin { margin: 0; }
.margin-1 { margin: 0.25rem; }
.margin-2 { margin: 0.5rem; }
.margin-3 { margin: 0.75rem; }
.margin-4 { margin: 1rem; }
.margin-5 { margin: 1.25rem; }
.margin-6 { margin: 1.5rem; }
.margin-8 { margin: 2rem; }
.margin-10 { margin: 2.5rem; }
.margin-12 { margin: 3rem; }
.margin-16 { margin: 4rem; }
.margin-20 { margin: 5rem; }
.margin-24 { margin: 6rem; }
.margin-32 { margin: 8rem; }
.margin-40 { margin: 10rem; }
.margin-48 { margin: 12rem; }
.margin-56 { margin: 14rem; }
.margin-64 { margin: 16rem; }

.padding { padding: var(--f7-padding); }
.padding-left { padding-left: var(--f7-padding); }
.padding-right { padding-right: var(--f7-padding); }
.padding-top { padding-top: var(--f7-padding); }
.padding-bottom { padding-bottom: var(--f7-padding); }
.padding-horizontal { padding-left: var(--f7-padding); padding-right: var(--f7-padding); }
.padding-vertical { padding-top: var(--f7-padding); padding-bottom: var(--f7-padding); }
.padding-half { padding: calc(var(--f7-padding) / 2); }
.padding-left-half { padding-left: calc(var(--f7-padding) / 2); }
.padding-right-half { padding-right: calc(var(--f7-padding) / 2); }
.padding-top-half { padding-top: calc(var(--f7-padding) / 2); }
.padding-bottom-half { padding-bottom: calc(var(--f7-padding) / 2); }
.padding-horizontal-half { padding-left: calc(var(--f7-padding) / 2); padding-right: calc(var(--f7-padding) / 2); }
.padding-vertical-half { padding-top: calc(var(--f7-padding) / 2); padding-bottom: calc(var(--f7-padding) / 2); }
.no-padding { padding: 0 !important; }
.no-padding-left { padding-left: 0 !important; }
.no-padding-right { padding-right: 0 !important; }
.no-padding-top { padding-top: 0 !important; }
.no-padding-bottom { padding-bottom: 0 !important; }
.no-padding-horizontal { padding-left: 0 !important; padding-right: 0 !important; }
.no-padding-vertical { padding-top: 0 !important; padding-bottom: 0 !important; }

.padding-auto { padding: auto; }
.padding-0, 
.no-padding { padding: 0; }
.padding-1 { padding: 0.25rem; }
.padding-2 { padding: 0.5rem; }
.padding-3 { padding: 0.75rem; }
.padding-4 { padding: 1rem; }
.padding-5 { padding: 1.25rem; }
.padding-6 { padding: 1.5rem; }
.padding-8 { padding: 2rem; }
.padding-10 { padding: 2.5rem; }
.padding-12 { padding: 3rem; }
.padding-16 { padding: 4rem; }
.padding-20 { padding: 5rem; }
.padding-24 { padding: 6rem; }
.padding-32 { padding: 8rem; }
.padding-40 { padding: 10rem; }
.padding-48 { padding: 12rem; }
.padding-56 { padding: 14rem; }
.padding-64 { padding: 16rem; }

.lang-item {
    display: flex;
    max-height: 12px;
    overflow: hidden;
    margin-top: 7px;
}

#overlay-button {
  position: relative;
  z-index: 5;
  cursor: pointer;
  user-select: none;
}

#overlay-button span {
  height: 4px;
  width: 35px;
  border-radius: 2px;
  background-color: white;
  position: relative;
  display: block;
  transition: all 0.2s ease-in-out;
}

#overlay-button span:before {
  margin-top: -10px;
  visibility: visible;
}
#overlay-button span:after {
  margin-top: 10px;
}
#overlay-button span:before, 
#overlay-button span:after {
  height: 4px;
  width: 35px;
  border-radius: 2px;
  background-color: white;
  position: absolute;
  content: "";
  transition: all 0.2s ease-in-out;
}
#overlay-button:hover span, 
#overlay-button:hover span:before, 
#overlay-button:hover span:after {
  background: #fff;
}

.header-simple #overlay-button span:before, 
.header-simple #overlay-button span:after,
.header-simple #overlay-button span,
.header-simple #overlay-button:hover span, 
.header-simple #overlay-button:hover span:before, 
.header-simple #overlay-button:hover span:after {
  background: var(--color-shade);
}

#header-navbar a {
  filter: drop-shadow(0px 0px 6px #00000075);
}

.menu-mobile {
	position: relative;
}

.menu-mobile input[type=checkbox] {
  display: none;
}
.menu-mobile input[type=checkbox]:checked ~ #overlay {
  visibility: visible;
}
.menu-mobile input[type=checkbox]:checked ~ #overlay-button:hover span, 
.menu-mobile input[type=checkbox]:checked ~ #overlay-button span {
  background: transparent;
}

.menu-mobile input[type=checkbox]:checked ~ #overlay-button span:before {
  transform: rotate(45deg) translate(7px, 7px);
  opacity: 1;
  z-index: 9;
  position: fixed!important;
  filter: invert(1);
}

.menu-mobile input[type=checkbox]:checked ~ #overlay-button span:after {
  transform: rotate(-45deg) translate(7px, -7px);
  z-index: 9;
  position: fixed!important;
  filter: invert(1);
}

/** Gallery slider **/

.gallery-cell {
  width: 100%;
}

.testimonial {
  text-align: center;
  margin: 60px auto 60px auto;
  padding: 0 20px;
  min-height: 160px;
	display: flex;
	flex-direction: column-reverse;
	justify-content: end;
	align-items: center;
}

.testimonial-avatar {
  width: 100px;
  border-radius: 50%;
  margin-top: 25px;
}

.testimonial-quote {
  display: block;
  font-size: 18px;
  letter-spacing: -0.02em;
  line-height: 1.3;
  font-weight: 400;
  padding: 10px 0 25px;
  color: var(--color-green-dark);
}

@media (max-width: 530px) {
  .testimonial-quote {
    font-size: 16px;
  }
}

.testimonial-author {
  display: block;
  color: var(--color-green);
  font-weight: 800;
  margin-top: 10px;
}

.flickity-page-dots {
  bottom: 15px;
}

.flickity-page-dots .dot.is-selected {
  background: #AFDA07;
  opacity: 1;
}

.products-list .flickity-page-dots {
  bottom: -15px!important;
}

#overlay {
  height: 100vh;
  width: 100vw;
  background: linear-gradient(180deg, #548235, #62933B);
  z-index: 2;
  visibility: hidden;
  position: fixed!important;
  top: 0;
  left: 0;
}

#overlay.active {
  visibility: visible;
}

#overlay ul {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  text-align: center;
  height: 100vh;
  padding-top: 10vh;
  padding-left: 0;
  list-style-type: none;
}

#overlay ul li {
  padding: 1em 2em;
}

#overlay ul li a {
  color: white;
  text-decoration: none;
  font-size: 2em;
}

#overlay ul li a:hover {
  color: #0F2318;
}

hr.separated {
	max-width: 120px;
	height: 6px;
	margin-top: 10px;
	margin-bottom: 20px;
	background-color: var(--color-green);
}

/** WPFORM **/

.wpforms-container .wpforms-field {
	padding-top: 6px!important;
	padding-bottom: 3px!important;
}

label.wpforms-field-label-inline {
  font-size: 13px !important;
  letter-spacing: -0.02em;
  line-height: 1.3 !important;
}

.wpforms-submit.contact-us-button {
	background: var(--bg-green)!important;
	font-size: 16px!important;
}

label.wpforms-field-label,
.wpforms-field-label {
  font-size: 14px !important;
  margin-bottom: 3px !important;
  color: var(--color-shade)!important;
}

.wpforms-field-description {
  font-size: 12px !important;
  padding: 4px 8px !important;
  line-height: 1.23 !important;
  letter-spacing: -0.02em !important;
  opacity: 0.8;
}

div.wpforms-container-full .wpforms-form em.wpforms-error {
	position: relative;
	margin-top: 2px;
	font-size: 12px;
}

.wpforms-container .wpforms-field-label {
  padding: 12px 0 6px!important;
}

@media (max-width: 768px){
  .wpforms-container .wpforms-field-label {
    padding: 24px 0 12px!important;
  }
  }

div.wpforms-container-full .wpforms-form .wpforms-head-container {
  padding-bottom: 0!important;
}


div.wpforms-container-full .wpforms-form .wpforms-head-container .wpforms-title {
    font-size: 20px!important;
}

/** SLIDER CAROUSEL PRODUCT **/

.carousel {
  margin-bottom: 60px;
}

.carousel .carousel-cell {
  text-align: center;
}

.products-list .carousel-cell {
  width: 33%;
  margin-left: 4px;
  margin-right: 4px;
}

@media (max-width: 1024px) {
  .products-list .carousel-cell {
    width: 99%;
    border: 4px solid transparent;
  }
  .products-list .flickity-slider div:nth-child(1) {
    margin-left: 4px;
  } 
}