/*
	Theme Name: FnB Tech New
	Theme URI: https://www.fnb.tech.com
	Description: Custom WP Theme for FnB Tech New
	Version: 1.0.02.2026
	Author: @harmonicnoise
	Author URI: http://www.deusain.com
	Tags: Coffee
*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
}
:root {
	--green: #006E29;
	--dark-green: #005E23;
	--light-green: #F4FAEB;
	--medium-green: #E6F1EA;
	--dark: #151515;
	--orange: #FFA703;
	--light-orange: #fff6e6;
	--black: #000;
	--grey: #7A7A7A;
	--body-color: #545454;
	--light-grey: #cecece;
	--light: #DADCDE;
	--white: #fff;
}
body {
	font:400 15px/1.7 'Poppins', -apple-system,BlinkMacSystemFont,segoe ui,helvetica neue,sans-serif;
	background-color: var(--white);
	color: var(--body-color);
	width: 100%;
	position: relative;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
a {
	color: var(--green);
	text-decoration:none;
	transition: .3s ease-in-out;
	-moz-transition: .3s ease-in-out;
	-webkit-transition: .3s ease-in-out;
}
a:hover {
	color: var(--dark);
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

strong {
	font-weight: 700;
}
h1, h2, h3 {font-weight: 700; line-height: 1.2; color: var(--dark-green);}
h4, h5, h6 {font-weight: 500; line-height: 1.2; color: var(--dark-green);}
h1 {font-size: 40px;}
h2 {font-size: 35px;}
h3 {font-size: 30px;}
h4 {font-size: 24px;}
h5 {font-size: 18px;}
h6 {font-size: 12px;}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */
.wrapper {
	width:100%;
	margin:0 auto;
	position:relative;
}

.topbar {
	width: 100%;
	margin: 0 auto;
    position: relative;
	top: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgb(188 221 131) 0%, rgb(188 221 131) 51%, rgb(0 110 41) 52%);
}
.topbar .container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 7px 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	position: relative;
	overflow: hidden;
	background: url(img/header-top-left.png) no-repeat -80px 0;
	background-color: var(--green);
	background-size: contain;
}
.topbar .container ul#menu-top-socmed {
	margin: 0;
	padding: 0;
	list-style: none;
}
.topbar .container ul#menu-top-socmed li {
	display: inline-block;
	margin-right: 10px;
}
.topbar .container ul#menu-top-socmed li a {
	color: var(--green);
	font-size: 14px;
	font-weight: 500;
}
.topbar .container ul#menu-top-socmed li a i {
	font-size: 16px;
}
.topbar .container #nav_menu-5 ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.topbar .container ul#menu-top-contact li {
	display: inline-block;
	margin-left: 20px;
}
.topbar .container ul#menu-top-contact li a {
	color: var(--white);
	font-size: 14px;
}
.topbar .container ul#menu-top-contact li a i {
	font-size: 16px;
	margin-right: 6px;
}

/* header */
.header {
	width: 100%;
	margin: 0 auto;
    position: relative;
	top: 0;
	z-index: 999;
	background-color: var(--white);
	box-shadow: 0 1px 5px rgba(0,0,0, .1);
}
.header .container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	height: 90px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	position: relative;
}
.header .container .logo {
    padding: 0;
    width: 80px;
    position: relative;
    line-height: 0;
    top: 0;
}
.header .container .logo a {
	line-height: 0;
}
.header .container .logo img {
	width: 100%;
	height: auto;
}
.header .container .topright {
	position: relative;
	display: flex;
	align-items: center;
	gap: 14px;
}
.header .container .topright .lang-switcher {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 30px;
  background: #e3f1cd;
  font-weight: 500;
  cursor: pointer;
}
.header .container .topright .lang-switcher img {
  width: 20px;
}
.header .container .topright .lang-switcher .arrow {
  width: 6px;
  height: 6px;
  border-right: 2px solid #555;
  border-bottom: 2px solid #555;
  transform: rotate(45deg);
  margin-left: 4px;
}
.header .container .topright .cart-icon {
  position: relative;
  width: 42px;
  height: 42px;
  background: #e3f1cd;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1f7a3f;
  text-decoration: none;
}
.header .container .topright .cart-icon img {
  width: 18px;
}
.header .container .topright .cart-count {
  position: absolute;
  top: -4px;
  right: -4px;
  background: var(--orange);
  color: var(--dark);
  font-size: 12px;
  font-weight: bold;
  min-width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header .container .topright .account-icon {
  width: 42px;
  height: 42px;
  background: #0b7a3d;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
}
.header .container .topright .account-icon img {
  width: 18px;
}
.cart-count {
  animation: pop 0.3s ease;
}

@keyframes pop {
  0% { transform: scale(0.6); }
  100% { transform: scale(1); }
}

.nav {
	z-index: 999;
	position: relative;
}
.nav ul {
	-webkit-font-smoothing:antialiased;
	padding: 0;
	margin: 0;
	list-style: none;
}
.nav ul li {
	display: inline-block;
	margin: 0;
	position: relative;
	padding: 0 20px;
}
.nav ul li.menu-item-has-children:hover a {
	color: var(--green);
}
.nav ul li a {
	display: block;
    font-size: 16px;
    padding: 0;
    line-height: 80px;
    font-weight: 500;
	color: var(--body-color);
	transition: .2s ease-in-out;
}
.nav ul li a:hover {
	color: var(--green);
	transition: .2s ease-in-out;
}
.nav ul li.current_page_item {
	position: relative;
}
.nav ul li.current_page_item a {
	color: var(--green);
}
.nav ul li.current_page_item a:hover {
	color: var(--green);
}
.nav ul li.current_page_item:hover a {
	color: var(--green);
}
.nav ul li ul.sub-menu {
    display: none;
    position: absolute;
    width: 250px;
    left: 0;
    background-color: var(--green);
    border-radius: 10px;
    height: auto;
    padding: 20px 0;
}
.nav ul li:hover ul.sub-menu {
    display: block;
    padding: 0;
    transition: all .3s linear;
    overflow: hidden;
}
.nav ul li:hover ul.sub-menu li {
    line-height: 1;
    display: block;
    padding: 0;
}
.nav ul li:hover ul.sub-menu li:last-child {
    border-bottom: 0
}
.nav ul li:hover ul.sub-menu li a {
    font-size: 14px;
    padding: 8px 20px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--white);
}
.nav ul li:hover ul.sub-menu li a:hover {
    color: var(--orange);
}

.header.scrolled {
	position: fixed;
	width: 100%;
	top: 0;
	height: 80px;
    animation: smoothScroll .5s forwards;
    box-shadow: 0 1px 5px rgba(0,0,0, .15);
}
@keyframes smoothScroll {
	0% {
		transform: translateY(-90px);
	}
	100% {
		transform: translateY(0px);
	}
}
.header.scrolled .container {
	height: 80px;
}
.header.scrolled .container .logo {
	width: 70px;
}
.header.scrolled .container .logo img {
	display: block;
	-webkit-animation: smoothshow .2s;
}
.header.scrolled .container .nav {
	position: relative;
}
.header.scrolled .container .nav ul li a {
	line-height: 80px;
	border-bottom: 0;
}
.header.scrolled .container .nav ul li ul.sub-menu li a {
	line-height: 1;
	padding: 10px 20px;
}

.hero {
	background: radial-gradient(81.91% 81.91% at 50% 18.09%, #F0FFDA 7.71%, #A8D35D 24.33%, #005E23 62.98%);
}
.hero .slider {
	background-color: var(--white);
	padding: 5px;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
}
.hero .slider .swiper-wrapper {
	line-height: 0;
	margin-bottom: 0;
}
.hero .slider .swiper-pagination {
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: var(--white);
	border-radius: 0 20px 0 0;
	width: auto;
	padding: 0 20px;
}

.business {
	position: relative;
}
.business .slider {
	background-color: var(--white);
	padding: 5px;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
}
.business .slider .swiper-wrapper {
	line-height: 0;
	margin-bottom: 0;
}
.business .slider .swiper-pagination {
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: var(--white);
	border-radius: 0 20px 0 0;
	width: auto;
	padding: 0 20px;
}

.product-search {
	position: relative;
	margin: 0 auto;
	width: 600px;
}
.product-search form {
	width: 100%;
	border-radius: 60px;
	border: 1px solid var(--light);
	box-shadow: 0 1px 10px rgba(0,0,0, .1);
	overflow: hidden;
}
.product-search form input[type="search"] {
	border: 0;
	outline: none;
	padding: 10px 20px;
}
.product-search form button[type="submit"] {
	border: 0;
	outline: none;
	padding: 10px 20px 10px 45px;
	background-color: var(--orange);
	color: var(--white);
	font-weight: 500;
	border-radius: 60px;
	float: right;
	position: relative;
}
.product-search form button[type="submit"]:hover {
	background-color: #B57702;
}
.product-search form button[type="submit"]:after {
    content: '';
    background-image: url(img/icon-navigate.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: cover;
    width: 18px;
    height: 18px;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
}

ul.display-posts-listing {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.display-posts-listing li {
	width: 31.33333%;
	line-height: 1.2;
	overflow: hidden;
	background-color: var(--white);
    padding: 0 0 20px 0;
    border-radius: 20px;
    border: 1px solid #91C1A3;
    position: relative;
}
ul.display-posts-listing li a.image {
	width: 100%;
	height: 180px;
	overflow: hidden;
	position: relative;
}
ul.display-posts-listing li a.image img {
	object-fit: cover;
	width: 100%;
	height: 180px;
}
ul.display-posts-listing li a.title {
	display: block;
	font-size: 17px;
	font-weight: 700;
	margin-bottom: 9px;
	padding: 20px 15px 0 15px;
	background-color: var(--white);
	position: relative;
	z-index: 2;
	margin-top: -24px;
	border-radius: 20px 20px 0 0;
	color: var(--body-color);
}
ul.display-posts-listing li a.title:hover {
    text-decoration: underline;
}
ul.display-posts-listing li .excerpt {
	font-size: 14px;
	line-height: 1.5;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 30px;
	max-width: 100%;
	max-height: 100%;
	word-break: keep-all;
	white-space: normal;
	text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	color: var(--grey);
}
ul.display-posts-listing li .excerpt a.excerpt-more {
	position: absolute;
	right: 15px;
	font-size: 14px;
	bottom: 20px;
	font-weight: 500;
}
ul.display-posts-listing li span.date {
	position: absolute;
	left: 15px;
	font-size: 12px;
	color: var(--grey);
	bottom: 20px;
}

.vision-mission {
	position: relative;
}
.vision-mission .elementor-image-box-wrapper {
	display: flex;
}
.vision-mission .elementor-image-box-content {
	text-align: left;
	padding-left: 20px;
}
.vision-mission .elementor-image-box-content ul {
	margin: 0;
	padding: 0;
}
.vision-mission .elementor-image-box-content ul li {
	padding-bottom: 10px;
	margin-left: 19px;
}

.bg-glass {
	background: rgb(248 248 248 / 7%);
    backdrop-filter: blur(10px) saturate(120%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.18);
    padding: 10px 25px;
    border-radius: 10px;
}

.about-counter {
	position: relative;
}
.about-counter .elementor-counter-title {
	display: block;
	text-align: center;
}

.corporate-value {
	position: relative;
}
.corporate-value .elementor-image-box-wrapper {
	display: flex;
}
.corporate-value .elementor-image-box-content {
	text-align: left;
	padding-left: 15px;
}

.private-label {
	position: relative;
}
.private-label .elementor-image-box-wrapper {
	display: flex;
}
.private-label .elementor-image-box-content {
	text-align: left;
	padding-left: 20px;
}

.gcw {
	position: relative;
}
.gcw .elementor-image-box-wrapper {
	display: flex;
}
.gcw .elementor-image-box-content {
	text-align: left;
	padding-left: 20px;
}
.gcw .elementor-image-box-content .elementor-image-box-title {
	padding-top: 10px;
}

.cta-green {
	background: linear-gradient(90deg, #006E29 0%, #199800 85.1%, #008035 96.63%);
}
.cta-blue {
	background: linear-gradient(90deg, #013D72 0%, #0096E0 85.1%, #36BCFF 96.63%);
}

.general-faq {
	position: relative;
}
.general-faq.elementor-widget-n-accordion .e-n-accordion-item-title{
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.05) !important;
}
.general-faq.elementor-widget-n-accordion .e-n-accordion-item-title-icon {
	background-color: var(--orange);
	padding: 0 8px;
    width: 24px;
    height: 24px;
    line-height: 1;
    border-radius: 40px;
    text-align: center;
}

.testimonial-slider {
  display: flex !important;
    gap: 20px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding-bottom: 20px !important;
    cursor: grab;
}
.testimonial-slider:active {
  cursor: grabbing;
}
.testimonial-slider::-webkit-scrollbar {
  display: block;
  height: 8px;
  border-radius: 20px;
  background-color: transparent;
}
.testimonial-slider::-webkit-scrollbar-thumb {
  background-clip: padding-box;
  background-color: var(--green);
  padding: 0;
  height: 6px;
  border-radius: 10px;
}
.testimonial-slider::-webkit-scrollbar-track {
	background-color: var(--white);
	border-radius: 20px;
}
.testimonial-slide {
  min-width: 350px !important;
  scroll-snap-align: start;
}

#foot {
	position: relative;
	width: 100%;
	margin: 0 auto;
	background-color: var(--white);
}
.footer-menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.footer-menu ul li {
	margin-bottom: 3px;
}
.footer-menu ul li a {
	color: var(--body-color);
	font-size: 14px;
}
.footer-menu ul li a:hover {
	color: var(--green);
}
.copyright {
	background-color: var(--light);
	padding: 20px;
	font-size: 13px;
	text-align: center;
}

.gallery {
	position: relative;
}
.gallery .gallery-item {
	margin: 0 !important;
	padding: 10px !important;
	line-height: 0 !important;
}
.gallery .gallery-item img {
	border: 0 !important;
	border-radius: 7px !important;
}

#big-title {
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	background-color: var(--light-green);
}
#big-title .container {
    width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	position: relative;
}
#big-title .container h1 {
    margin: 0;
    padding: 50px 0;
}
#big-title img {
	width: 100%;
}

#main-wrapper {
	position: relative;
	width: 100%;
	margin: 0 auto;
	background-color: var(--light-green);
}
#main-wrapper .container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 80px 0;
	position: relative;
}
#main-wrapper .container.small {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 80px 0;
	position: relative;
}
#main-wrapper .container .metadata {
	font-size: 16px;
	margin-bottom: 40px;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	position: relative;
	margin-top: -127px;
	z-index: 9;
	padding: 20px 30px;
	background-color: var(--white);
	box-shadow: 0 20px 20px rgb(0 0 0 / 8%);
	border-radius: 7px;
}
#main-wrapper .container .metadata .share {
	position: relative;
}
#main-wrapper .container .metadata .infoauthor {
    position: relative;
    display: flex;
    align-items: center;
    font-weight: 600;
}
#main-wrapper .container .metadata .infoauthor .author-img {
    display: inline-block;
    overflow: hidden;
    float: left;
    margin-right: 10px;
    border-radius: 100%;
    overflow: hidden;
    background-color: var(--white);
    width: 40px;
    height: 40px;
}
#main-wrapper .container .metadata .infoauthor .author-img img {
    width: 100%;
}
#main-wrapper .container .metadata .infoauthor .author-name {
	display: block;
}
#main-wrapper .container .metadata .infoauthor .author-name h6 {
	margin: 0 0 5px 0;
	font-size: 12px;
	color: var(--grey);
}
#main-wrapper .container .metadata .infodate {
    display: block;
    font-weight: 600;
}
#main-wrapper .container .metadata .infodate h6 {
	margin: 0 0 5px 0;
	font-size: 12px;
	color: var(--grey);
}
#main-wrapper .container article h1 {
	margin: -25px 0 30px 0;
	line-height: 1.2;
	font-size: 35px;
	color: var(--dark);
}
#main-wrapper .container .body-content article.full {
	width: 100%;
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 0;
	padding: 0;
	overflow: hidden;
	float: none;
	width: 100%;
	max-width: 1140px;
	margin: 0 auto;
}
#main-wrapper .container .body-content article.full h1 {
	margin: 20px 0 30px 0;
	line-height: 1.2;
	font-size: 35px;
	color: var(--dark);
}
#main-wrapper .container .body-content article.full h2 {
	font-size: 32px;
	color: var(--dark);
}
#main-wrapper .container .body-content article.full h3 {
	font-size: 27px;
	line-height: 1.4;
	color: var(--dark);
}
#main-wrapper .container .body-content article.full p.cat-tag a {
	font-size: 14px;
	margin: 3px 0;
	border: 1px solid var(--green);
	border-radius: 70px;
	padding: 2px 10px;
	display: inline-block;
	margin-left: 7px;
}
#main-wrapper .container .body-content article.full p.cat-tag a:hover {
	background-color: var(--green);
	color: var(--white);
}
#main-wrapper .container .body-content article.full p {
	position: relative;
}

#main-wrapper .container .body-content article.full ul li {
	line-height: 1.6;
	margin-bottom: 20px;
}
#main-wrapper .container .body-content article.full ol li {
	line-height: 1.6;
	margin-bottom: 20px;
}

#main-wrapper .container.blog-grid {
	margin: 0 auto;
	list-style: none;
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 30px;
}
#main-wrapper .container.blog-grid article {
	overflow: hidden;
	background-color: var(--white);
    padding: 0;
    border-radius: 20px;
    border: 1px solid #91C1A3;
}
#main-wrapper .container.blog-grid article .thumb {
	width: 100%;
    height: 180px;
    position: relative;
    overflow: hidden;
}
#main-wrapper .container.blog-grid article .thumb a {
	display: block;
}
#main-wrapper .container.blog-grid article .thumb a img {
	width: 100%;
    height: 180px;
    object-fit: cover;
    margin: 0;
}
#main-wrapper .container.blog-grid article .loop-content {
	position: relative;
}
#main-wrapper .container.blog-grid article .loop-content h2 {
	display: block;
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 9px;
    padding: 20px 15px 0 15px;
    background-color: var(--white);
    position: relative;
    z-index: 2;
    margin-top: -24px;
    border-radius: 20px 20px 0 0;
    color: var(--body-color);
}
#main-wrapper .container.blog-grid article .loop-content h2 a {
	color: var(--body-color);
}
#main-wrapper .container.blog-grid article .loop-content h2 a:hover {
	text-decoration: underline;
}
#main-wrapper .container.blog-grid article .loop-content p {
	font-size: 14px;
    line-height: 1.5;
    padding-left: 15px;
    padding-right: 15px;
    max-width: 100%;
    max-height: 100%;
    word-break: keep-all;
    white-space: normal;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    color: var(--grey);
    margin: 0 0 15px 0;
    height: 60px;
}
#main-wrapper .container.blog-grid article .loop-content .meta-bottom {
    position: relative;
    bottom: 0;
    margin-bottom: 15px;
    padding: 0 15px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
#main-wrapper .container.blog-grid article .loop-content .meta-bottom .metadata {
    font-weight: 400;
    line-height: 1;
    position: relative;
    display: inline-block;
    border-radius: 5px;
    font-size: 12px;
    color: var(--grey);
    box-shadow: none;
    margin-top: 0;
    padding: 0;
    width: auto;
    margin-bottom: 0;
}
#main-wrapper .container.blog-grid article .loop-content .meta-bottom a.read-more {
	font-size: 14px;
    font-weight: 500;
}
#main-wrapper .container.blog-grid article .loop-content .meta-bottom a.read-more:hover {
	color: var(--body-color);
}

#main-wrapper .container .listing {
	position: relative;
	margin: 0 auto;
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 40px;
}
#main-wrapper .container .listing article {
	position: relative;
}
#main-wrapper .container .listing article .thumb {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 250px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    width: 100%;
    overflow: hidden;
    background-color: #f6f6f6;
}
#main-wrapper .container .listing article .thumb a {
	display: block;
}
#main-wrapper .container .listing article .thumb a img {
	width: auto;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    margin: 0;
    transform: scale(1);
    transition: transform .5s;
}
#main-wrapper .container .listing article .thumb a:hover img {
	transform: scale(1.1);
    transition: transform .5s;
}
#main-wrapper .container .listing article a h4 {
	margin: 25px 0 0 0;
    line-height: 1.3;
    font-size: 21px;
    font-weight: 700;
}
#main-wrapper .container .listing article a h4:hover {
	text-decoration: underline;
}
#main-wrapper .container .listing article a h4:after {
	content: "";
    width: 0;
    height: 0;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 2;
    border-width: 0 0 20px 20px;
    border-color: transparent transparent #fff transparent;
    border-style: solid;
}
#main-wrapper .container .listing article p {
	font-size: 15px;
	line-height: 1.4;
	margin: 15px 0 10px 0;
	max-width: 100%;
    max-height: 100%;
    word-break: keep-all;
    white-space: normal;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
#main-wrapper .container .listing .view-all {
	text-align: center;
	margin-top: 50px;
	display: block;
}
#main-wrapper .container .listing .view-all a {
	font-size: 18px;
    font-weight: 500;
    fill: var(--white);
    color: var(--white);
    background-color: var(--green);
    border-style: solid;
    border-width: 2px 2px 2px 2px;
    border-color: var(--green);
    border-radius: 0px 0px 0px 0px;
    padding: 16px 40px 16px 40px;
    display: inline-block;
}
#main-wrapper .container .listing .view-all a:hover {
    fill: var(--green);
    color: var(--green);
    border: 2px solid var(--green);
    background-color: var(--white);
}

.prev-next-posts {
	width: 100%;
	display: block;
	float: left;
	clear: both;
	margin: 0 auto;
	margin-top: 50px;
	text-align: center;
}
.prev-posts-link {
	text-align: center;
	display: inline-block;
}
.prev-posts-link a {
	margin: 0 10px;
	border: 2px solid var(--green);
	padding: 5px 10px;
	border-radius: 4px;
}
.prev-posts-link a:hover {
	background-color: var(--green);
	border: 2px solid var(--green);
	color: var(--white);
}
.next-posts-link {
	text-align: center;
}
.next-posts-link a {
	margin: 0 10px;
	border: 2px solid var(--green);
	padding: 5px 10px;
	border-radius: 4px;
}
.next-posts-link a:hover {
	background-color: var(--green);
	border: 2px solid var(--green);
	color: var(--white);
}

.pagination {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
    padding-bottom: 70px;
    background-color: var(--light-green);
}
.pagination span.page-numbers.current {
    background: var(--green);
    color: var(--white);
    padding: 5px 12px;
    line-height: 1;
    border-radius: 5px;
}
.pagination a.page-numbers {
    padding: 5px 12px;
    line-height: 1;
    color: var(--dark);
    border-radius: 5px;
}
.pagination a.page-numbers:hover {
    background: var(--green);
    color: var(--white);
}

#related {
	position: relative;
	width: 100%;
	margin: 0 auto;
	background-color: #E6F1EA;
}
#related .container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 80px 0;
	position: relative;
	overflow: hidden;
}
#related .container h3 {
	text-align: center;
	margin: 0 0 50px 0;
}
#related .container ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 30px;
}
#related .container ul li {
	overflow: hidden;
    background-color: var(--white);
    padding: 0;
    border-radius: 20px;
    border: 1px solid #91C1A3;
}
#related .container ul li .the-thumb {
    width: 100%;
    height: 180px;
    position: relative;
    overflow: hidden;
}
#related .container ul li .the-thumb a img {
	width: 100%;
    height: 180px;
    object-fit: cover;
    margin: 0;
}
#related .container ul li h4 {
	display: block;
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 9px;
    padding: 20px 15px 0 15px;
    background-color: var(--white);
    position: relative;
    z-index: 2;
    margin-top: -24px;
    border-radius: 20px 20px 0 0;
    color: var(--body-color);
}
#related .container ul li h4 a {
    color: var(--body-color);
}
#related .container ul li h4 a:hover {
	text-decoration: underline;
}
#related .container ul li p {
	font-size: 14px;
    line-height: 1.5;
    padding-left: 15px;
    padding-right: 15px;
    max-width: 100%;
    max-height: 100%;
    word-break: keep-all;
    white-space: normal;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    color: var(--grey);
    margin: 0 0 15px 0;
    height: 60px;
}
#related .container ul li .meta-bottom {
    position: relative;
    bottom: 0;
    margin-bottom: 15px;
    padding: 0 15px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
#related .container ul li .meta-bottom .metadata {
    font-weight: 400;
    line-height: 1;
    position: relative;
    display: inline-block;
    border-radius: 5px;
    font-size: 12px;
    color: var(--grey);
    box-shadow: none;
    margin-top: 0;
    padding: 0;
    width: auto;
    margin-bottom: 0;
}
#related .container ul li .meta-bottom a.read-more {
    font-size: 14px;
    font-weight: 500;
}

div.wpcf7 {position: relative;}
span.wpcf7-list-item {margin: 0; padding: 2px 5px;}
div.wpcf7 h3 {margin: 0; font-size: 16px;}
div.wpcf7 .wpcf7-form {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
div.wpcf7 .wpcf7-form .col {
	width: 48%;
}
div.wpcf7 .wpcf7-form br {display: none; height: 0;}
div.wpcf7 .wpcf7-form p label {
	margin-bottom: 20px;
	font-weight: 600;
	display: block;
	overflow: hidden;
}
div.wpcf7 .wpcf7-form input {
	width: 100%;
	outline: 0;
	padding: 10px 20px;
	margin: 0;
	font-size: 15px;
	border-radius: 7px;
	color: var(--dark);
	background-color: var(--white);
	display: block;
	border: 1px solid var(--light-grey);
}
div.wpcf7 .wpcf7-form input:hover,
div.wpcf7 .wpcf7-form input:focus {
	border: 1px solid var(--dark);
	border-radius: 7px;
}
div.wpcf7 .wpcf7-form select,
div.wpcf7 .wpcf7-form textarea {
	width: 100%;
	float: left;
	outline: 0;
	font-size: 16px;
	padding: 10px 20px;
	margin: 0;
	color: var(--dark);
	border: 2px solid #ccc;
	background-color: var(--white);
	display: block;
	border-radius: 7px;
	height: 154px;
	border: 1px solid var(--light-grey);
}
div.wpcf7 .wpcf7-form input[type="date"] {
	color: var(--dark);
}
div.wpcf7 .wpcf7-form select {
	height: auto;
}
select option {
  background: var(--white);
  color: var(--dark);
}
div.wpcf7 .wpcf7-form select:focus,
div.wpcf7 .wpcf7-form select:hover,
div.wpcf7 .wpcf7-form textarea:focus,
div.wpcf7 .wpcf7-form textarea:hover {
	border: 1px solid var(--dark);
}
div.wpcf7 .wpcf7-form input[type="submit"] {
	width: 100%;
	outline: 0;
	border: 0;
	background-color: var(--green);
    color: var(--white);
    font-weight: 700;
    padding: 14px 30px;
    font-size: 15px;
    margin: 0;
    display: inline-block;
    border-radius: 70px;
}
div.wpcf7 .wpcf7-form input[type="submit"]:hover {
	background-color: var(--black);;
	outline: 0;
	border: 0;
	color: var(--white);
}
span.wpcf7-form-control.wpcf7-checkbox {
	display: inline-block;
    overflow: hidden;
    font-size: 12px;
    background-color: var(--white);
    border-radius: 3px;
    border: 1px solid #ccc;
    margin: 10px 10px 0 0;
}
div.wpcf7 .wpcf7-form input[type="checkbox"] {
	width: auto;
	float: left;
	margin: 5px 7px 0 0;
}
.wpcf7 form .wpcf7-response-output {
    margin: 15px 0 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    width: 100% !important;
    float: left !important;
    font-size: 14px;
    line-height: 1.2;
    background-color: transparent !important;
}
div.wpcf7 img.ajax-loader {position: absolute;}
img.ajax-loader {width: auto;}
.wpcf7-spinner {position: absolute; top: 45%; left: 45%;}
.wpcf7-not-valid-tip {font-size: 12px;}


.header #megamenu {
  position: fixed;
  font-size: 16px;
  line-height: 40px;
  text-transform: uppercase;
  z-index: 9999;
  float: right;
  cursor: pointer;
  top: 0;
  left: 20px;
  display: none;
}
.header #megamenu i {
  font-size: 24px;
}
#nav-toggle { position: absolute; left: 50%; top: 50%; }

#nav-toggle { cursor: pointer; padding: 10px 35px 16px 0px; }
#nav-toggle span, #nav-toggle span:before, #nav-toggle span:after {
  cursor: pointer;
  border-radius: 4px;
  height: 3px;
  width: 30px;
  background:var(--green);
  position: absolute;
  display: block;
  content: '';
}
#nav-toggle span:before {
  top: -8px; 
}
#nav-toggle span:after {
  bottom: -8px;
}

#nav-toggle span, #nav-toggle span:before, #nav-toggle span:after {
  transition: all 500ms ease-in-out;
}
#nav-toggle.active span {
  background-color: transparent;
}
#nav-toggle.active span:before, #nav-toggle.active span:after {
  top: 0;
}
#nav-toggle.active span:before {
  transform: rotate(45deg);
}
#nav-toggle.active span:after {
  transform: rotate(-45deg);
}
#nav-toggle.active span:before, #nav-toggle.active span:after {
  background: var(--green);
}
.menu-dropdown {
  position: fixed;
  width: 100%;
  background-color: var(--white);
  top: 80px;
  z-index: 999;
  overflow: hidden;
  box-shadow: 0 20px 30px rgba(0,0,0, .2);
}
.menu-dropdown .nav {
  position: relative;
  padding: 0;
  display: block;
  width: 100% !important;
  margin: 0;
}
.menu-dropdown .nav ul {
  -webkit-font-smoothing:antialiased;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: left;
}
.menu-dropdown .nav ul li {
  position: relative;
  margin: 0;
  padding: 0;
  display: block;
  border-bottom: 1px solid #eee;
}
.menu-dropdown .nav ul li a {
    text-align: left;
  display: block;
  font-size: 15px;
  padding: 8px 0;
  border: 0;
  color: var(--dark);
  line-height: normal;
  background-color: var(--white);
}
.menu-dropdown .nav ul li a:hover {
  color: var(--dark);
  border: 0;
}
.menu-dropdown .nav ul li a i {
	margin-right: 7px;
}
.menu-dropdown .nav ul li ul.sub-menu {
    display: block;
    position: relative;
    padding: 0 0 0 20px;
    background-color: var(--white);
}
.menu-dropdown .nav ul li ul.sub-menu li a {
    font-size: 14px;
}

blockquote {
	background-color: #f7f7f7;
    color: var(--dark);
    padding: 30px 40px;
    margin: 30px 0;
    display: block;
	font-style: italic;
	border-left: 4px solid var(--green);;
}
blockquote p {
	margin: 0;
	font-size: 21px !important;
	font-family: 'Georgia';
	line-height: 1.3 !important;
	font-weight: 500 !important;
}

.whatsapp {
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 999999;
}
.whatsapp a {
    color: var(--white);
    padding: 0;
    background: #45b33e;
    border-radius: 100%;
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    display: block;
    line-height: 54px;
    width: 54px;
    height: 54px;
    text-align: center
}
.whatsapp a:hover {
    background-color: #0e907c;
    color: var(--white);
    text-decoration: none
}
.whatsapp a i {
    vertical-align: middle;
    font-size: 30px;
    position: relative;
    padding: 0;
    top: 0
}

/* --- woocommerce custom --- */

#primary {
	background-color: var(--light-green);
}
#primary .site-main {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px 0;
}
#primary .woocommerce-products-header {
	padding: 20px;
	border-radius: 10px;
	margin-bottom: 20px;
	background-color: var(--white);
}
#primary .woocommerce-products-header h1 {
	margin: 0;
	font-size: 35px;
}
.woocommerce .products ul::after, .woocommerce .products ul::before, .woocommerce ul.products::after, .woocommerce ul.products::before {
	display: none;
}
.woocommerce ul.products, .woocommerce-page ul.products {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
	width: 23%;
	margin: 0;
	margin-bottom: 2%;
	border-radius: 20px;
	padding: 0 0 15px 0;
	background-color: var(--light-orange);
	border: 1px solid var(--orange);
    overflow: hidden;
}
.woocommerce ul.products li.product a img, .woocommerce-page ul.products li.product a img {
	border-radius: 0 0 30px 0;
	margin: 0;
}
.woocommerce ul.products li.product .star-rating, .woocommerce-page ul.products li.product .star-rating {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 1;
}
body.home .woocommerce ul.products {
	margin: 0;
}
body.home .woocommerce ul.products li.product {
	margin-bottom: 0;
}
.woocommerce a.added_to_cart {
	font-size: 14px;
	position: absolute;
	z-index: 1;
	top: 10px;
	left: 10px;
	display: block;
	background-color: var(--green);
	color: var(--white);
	padding: 5px 10px;
	line-height: 1.2;
	border-radius: 50px;
}
.woocommerce ul.products li.product a h2, .woocommerce-page ul.products li.product a h2 {
	margin: 15px 15px 5px 15px !important;
	padding: 0 !important;
	line-height: 1.2;
	text-align: left;
	font-weight: 600;
	color: var(--body-color);
	font-size: 17px !important;
	word-break: keep-all;
    white-space: normal;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.woocommerce ul.products li.product .product-short-desc p,
.woocommerce-page ul.products li.product .product-short-desc p {
	color: var(--grey);
	font-size: 14px;
	margin: 0 15px;
	display: none;
}
.woocommerce ul.products li.product .price {
	font-size: 15px;
    display: block;
    padding-left: 15px;
    font-weight: 700;
    color: #B57702;
}
.woocommerce ul.products li.product .price del {
	color: #999;
	font-size: 11px;
}
.woocommerce ul.products li.product .price ins {
	text-decoration: none;
	font-weight: 400;
}
.woocommerce span.onsale {
	margin: 20px;
    height: auto;
    line-height: 1;
    min-height: 0;
    padding: 5px !important;
    border-radius: 3px;
    font-weight: 400;
    font-size: 13px;
    background-color: #f00;
    display: none;
}
.woocommerce ul.products li.product .onsale {
	margin: 10px;
}
.woocommerce div.product p.price ins, .woocommerce div.product span.price ins {
	text-decoration: none;
	font-weight: 600;
}
.woocommerce div.product p.price del, .woocommerce div.product span.price del {
	color: #999;
	font-size: 11px;
	font-weight: 400;
	display: block;
}
.woocommerce ul.products li.product .button {
	position: relative;
	margin-top: 15px;
	background-color: var(--orange);
	border: 1px solid #B57702;
	border-radius: 60px;
	padding: 12px 25px 12px 55px;
	font-size: 15px;
	font-weight: 500;
	color: #fff;
	display: inline-block;
	float: right;
	margin-right: 15px;
}
.woocommerce ul.products li.product .button:hover {
	background-color: #B57702;
	color: #fff;
}
.woocommerce ul.products li.product .button:after {
	content: '';
	background-image: url(img/icon-shopping-cart.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
	width: 18px;
	height: 18px;
	position: absolute;
	left: 25px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
}
.woocommerce .woocommerce-products-header img {
	margin: 20px 0;
	border-radius: 10px;
}
.woocommerce .woocommerce-result-count {
	margin: 5px 0 0 0;
	font-size: 12px;
}
.woocommerce .woocommerce-ordering {
	margin-bottom: 30px;
}
.woocommerce .woocommerce-ordering select {
	border-radius: 5px;
	border: 0;
	background-color: var(--white);
	font-size: 12px;
	padding: 5px;
	outline: none;
}
.recent-products .woocommerce ul.products li.product, .recent-products .woocommerce-page ul.products li.product {
	width: 15%;
	margin: 0;
	text-align: center;
	margin-bottom: 2%;
	border-radius: 5px;
	box-shadow: 0 0 10px rgba(0,0,0, .1);
	padding: 0 0 15px 0;
	position: relative;
}
.woocommerce ul.products li.featured:after, .woocommerce-page ul.products li.featured:after {
	content: '';
	background-image: url(img/badge.png);
	background-repeat: no-repeat;
	background-position: 0;
	background-size: cover;
	width: 69px;
	height: 95px;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 10px;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb {
	display: block;
	font-size: 13px;
	margin-bottom: 20px;
}
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb a {
	color: var(--green);
}
.woocommerce div.product div.images,
.woocommerce div.product div.images.woocommerce-product-gallery {
	overflow: hidden;
	width: 40%;
}
.woocommerce div.product div.summary {
	width: 55%;
}
.woocommerce div.product .product_title {font-size: 30px;}
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
	margin: 0;
	font-size: 25px;
	font-weight: 700;
	color: var(--green);
}
.woocommerce div.product .woocommerce-product-rating {
	margin: 0;
}
.woocommerce div.product form.cart .variations {
	margin-bottom: 0;
}
.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected, .woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected:hover {
	-webkit-box-shadow: var(--wvs-selected-item-box-shadow, 0 0 0 2px #55a738);
    box-shadow: var(--wvs-selected-item-box-shadow, 0 0 0 2px #55a738);
    color: var(--wvs-selected-item-text-color, #55a738);
}
.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item.selected:not(.no-stock) {
	color: #55a738;
	background-color: #fff;
}
.woo-variation-swatches .wvs-style-squared.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item .variable-item-span {
	font-weight: 400;
}
.woo-variation-swatches.wvs-show-label .variations td .woo-selected-variation-item-name, .woo-variation-swatches.wvs-show-label .variations th .woo-selected-variation-item-name {
	font-weight: 600;
	font-size: 14px;
}
.woocommerce div.product form.cart .variations label {font-size: 14px; font-weight: 700; padding-bottom: 5px; display: block;}
.woocommerce div.product form.cart .reset_variations {
	right: 0;
	font-weight: 400 !important;
	color: #f00;
	font-size: 12px;
	position: absolute;
}
.woocommerce div.product .value.woo-variation-items-wrapper {
	margin-bottom: 15px;
}
.woocommerce-variation-price .price {
	font-weight: 600;
	color: var(--green) !important;
}
.woocommerce-variation-add-to-cart {
	margin-top: 0;
}
.woocommerce div.product form.cart .single_variation_wrap {
	width: 100%;
	margin-top: 10px;
	display: block;
}
.woocommerce div.product form.cart .single_variation_wrap .woocommerce-variation.single_variation {
	display: inline-block;
	margin-top: -20px;
    font-size: 25px;
    position: relative;
    top: -5px;
}
.woocommerce div.product form.cart div.quantity {
	float: left;
	width: 50%;
	margin: 0;
}
.woocommerce div.product form.cart .button {
	position: relative;
	border-radius: 70px;
  display: block;
  background: #0b7a3b;
  border-radius: 999px;
  font-size: 16px;
  font-weight: 600;
  padding: 16px 35px 16px 55px;
  width: 50%;
}
.woocommerce div.product form.cart .button:after {
	content: '';
    background-image: url(img/icon-shopping-cart.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: cover;
    width: 18px;
    height: 18px;
    position: absolute;
    left: 25px;
    top: 50%;
    transform: translateY(-50%);
}
.woocommerce div.product form.cart .button:hover {
	opacity: .9;
}
.single-product .single_add_to_cart_button.disabled::before {
  opacity: 0.5;
}
.woocommerce div.product form.cart {
	margin-bottom: 0;
}
/* Quantity Wrapper */
.woocommerce .quantity {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

/* Plus & Minus Button */
.woocommerce .quantity button {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1.5px solid #cfd8c3;
  background: #ffffff;
  font-size: 20px;
  font-weight: 600;
  cursor: pointer;
  line-height: 1;
  color: #6b6b6b;
  transition: all .2s ease;
}

.woocommerce .quantity button:hover {
  border-color: #7aa62f;
  color: #4f6b3a;
}

/* Input */
.woocommerce .quantity input.qty {
  width: 60px;
  height: 42px;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  border-radius: 10px;
  border: 1.5px solid #cfd8c3;
  background: #ffffff;
}
.after-cart-custom-text {
	font-size: 14px;
	line-height: 1.2;
}
/* Hilangkan arrow bawaan browser */
.woocommerce .quantity input::-webkit-inner-spin-button,
.woocommerce .quantity input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.woocommerce div.product .product_meta {
	font-size: 12px;
	font-weight: 400;
}
.woocommerce div.product .product_meta .posted_in,
.woocommerce div.product .product_meta .tagged_as,
.woocommerce div.product .product_meta .posted_in {
	display: none;
}

/* RESET TABLE */
.woocommerce div.product .variations {
  width: 100%;
  border: 0;
}

.woocommerce div.product .variations tbody {
  display: flex;
  flex-wrap: nowrap;
  gap: 16px;
}

.woocommerce div.product .variations tr {
  display: block;
}

/* LABEL */
.woocommerce div.product .variations th.label {
  font-size: 14px;
  font-weight: 700;
  display: block;
  padding: 0;
  text-align: left;
}

/* VALUE */
.woocommerce div.product .variations td.value {
  padding: 0;
}

/* SELECT STYLE */
.woocommerce div.product .variations select {
  width: 100%;
  height: 48px;
  border-radius: 999px;
  padding: 0 18px;
  border: 1.5px solid #9bc53d;
  font-size: 15px;
  font-weight: 500;
  color: #4f6b3a;
  appearance: none;

  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%236b8e23' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 18px center;
  background-size: 16px;
  background-color: var(--white);
}

.woocommerce-review-link {
    font-size: 0;
}
.woocommerce-review-link::before {
    content: attr(data-count);
    font-size: 16px; 
}
.woocommerce div.product .woocommerce-tabs {
	padding: 30px;
	background-color: var(--light-orange);
	border: 1px solid var(--orange);
	border-radius: 20px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	display: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
	padding: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border: 0;
	margin: 0 10px 0 0;
	padding: 0;
	background-color: transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	font-size: 16px;
	font-weight: 600;
	padding: 7px 20px;
	border-radius: 60px;
	background-color: transparent;
	color: var(--green);
	border: 1px solid var(--green);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background-color: transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--green);
	background-color: var(--orange);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::after, .woocommerce div.product .woocommerce-tabs ul.tabs li::before {
	display: none;
}
.woocommerce div.product .woocommerce-tabs .panel h2 {
	display: none;
}
.woocommerce div.product .woocommerce-tabs .panel h3 {
    margin: 15px 0;
    font-size: 18px;
}
.woocommerce div.product .woocommerce-tabs .panel {
	font-size: 14px;
}
.woocommerce div.product div.images .flex-viewport {
	width: 100%;
}
.woocommerce div.product div.images .flex-viewport img {
	border-radius: 5px;
}
.woocommerce div.product div.images .flex-control-thumbs {
	width: 100%;
	margin-top: 8px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.woocommerce div.product div.images .flex-control-thumbs li {
	width: 24%;
	border-radius: 5px;
	overflow: hidden;
	margin-bottom: 8px;
}
.woocommerce .star-rating::before {
	color: var(--grey);
}
.woocommerce .star-rating span::before {
	color: var(--orange);
}
.woocommerce #reviews #comments ol.commentlist {
	padding: 0;
}
.woocommerce #reviews #comments ol.commentlist li .comment-text {
	border: 0;
	background-color: var(--white);
	margin: 0;
	border-radius: 5px;
	border: 1px solid var(--light-grey);
}
.woocommerce #review_form #respond textarea {
	border-radius: 5px;
	border: 1px solid var(--light-grey);
	padding: 15px;
}
.woocommerce #review_form #respond .form-submit input {
	background-color: var(--green);
	color: var(--white);
	padding: 15px 25px;
	border-radius: 60px;
}
.woocommerce #review_form #respond .form-submit input:hover {
	opacity: .9;
}

/* Chrome, Safari, Edge, Opera */
.woocommerce-page div.product div.summary .quantity input::-webkit-outer-spin-button,
.woocommerce-page div.product div.summary .quantity input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
.woocommerce-page div.product div.summary .quantity input[type="number"] {
  -moz-appearance: textfield;
}
.woocommerce-error, .woocommerce-info, .woocommerce-message {
	padding: 10px;
    margin: 0 0 20px 0;
    border: 0;
    font-size: 14px;
    border-radius: 5px;
    background-color: #dae7c4;
}
.woocommerce-message a {
	font-size: 12px !important;
	font-weight: 500 !important;
	background-color: #7e847c !important;
	color: #fff !important;
}
.woocommerce-message::before {
	display: none;
}
.related.products {
	position: relative;
	margin-top: 40px;
}
.related.products h2 {
	margin-bottom: 30px;
	font-size: 30px;
	display: block;
	text-align: center;
}
.related.products ul.products li.product .price {
	margin: 0 !important;
}

body.single-product #related {
	display: none;
	visibility: hidden;
}
body.woocommerce-cart {
	background-color: var(--white);
}
body.woocommerce-cart .wp-block-woocommerce-cart {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px 0;
}
body.woocommerce-cart #main-wrapper .container {
	max-width: 1140px;
	margin: 0 auto;
}
body.woocommerce-cart #main-wrapper .container .woocommerce-cart-form {
	width: 70%;
	float: left;
}
body.woocommerce-cart #main-wrapper .container table thead {
	background-color: #f0f0f0;
}
body.woocommerce-cart #main-wrapper .container table thead tr th {
	padding: 5px 0;
	font-size: 14px;
    font-weight: 600;
}
body.woocommerce-cart #main-wrapper .container table tbody tr td {
	padding: 5px 0;
	vertical-align: top;
}
body.woocommerce-cart #main-wrapper .container table tr td:first-child {
	width: auto;
}
body.woocommerce-cart #main-wrapper .container table tr td.product-thumbnail {
	padding: 10px 0;
}
body.woocommerce-cart #main-wrapper .container table tr td.product-thumbnail img {
	width: 60px;
	border-radius: 5px;
}
body.woocommerce-cart #main-wrapper .container table tr td.product-name dl.variation {
	font-size: 11px;
	line-height: 1;
}
body.woocommerce-cart #main-wrapper .container table tr td.product-name dl.variation p {
	margin: 0;
}
body.woocommerce-cart #main-wrapper .container .woocommerce .cart-collaterals {
	width: 27%;
	float: right;
}
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals, body.woocommerce-cart .woocommerce-page .cart-collaterals .cart_totals {
	background-color: #f0f0f0;
	padding: 20px;
	border-radius: 5px;
	width: 100%;
}
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals h2, body.woocommerce-cart .woocommerce-page .cart-collaterals .cart_totals h2 {
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 15px;
}
body.woocommerce-cart .woocommerce table.shop_table {
	font-size: 14px;
}
body.woocommerce-cart .woocommerce table.shop_table th {
	padding: 5px 0;
	font-weight: 500;
}
.wc-block-cart .wc-block-cart__submit-container {
	display: block;
}
.wc-block-cart .wc-block-cart__submit-container a {
	background-color: var(--green);
	color: var(--white);
	border-radius: 5px;
}
.wc-block-cart .wc-block-cart__submit-container a:hover {
	opacity: .9;
}
#add_payment_method .wc-proceed-to-checkout a.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
	background-color: #55a738;
    padding: 12px 20px !important;
    font-size: 15px !important;
    font-weight: 500;
	margin-bottom: 0 !important;
}
#add_payment_method .wc-proceed-to-checkout a.checkout-button:hover, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button:hover {
	opacity: .9;
	background-color: #55a738;
}

body.woocommerce-account .woocommerce {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px 0;
	overflow: hidden;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 0;
	list-style: none;
	padding: 20px;
	background-color: var(--light-green);
	border-radius: 10px;
}

body.woocommerce-checkout {
	position: relative;
}
body.woocommerce-checkout .woocommerce {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px 0;
	overflow: hidden;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle {
	display: none;
}
.woocommerce .col2-set, .woocommerce-page .col2-set {
	width: 60%;
	float: left;
}
.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1 {
	width: 100%;
	float: left;
}
.woocommerce .col2-set .col-1 .woocommerce-billing-fields {
	font-size: inherit;
}
.woocommerce .col2-set .col-1 .woocommerce-billing-fields h3 {
	font-size: 20px;
	margin: 0 0 10px 0;
}
.woocommerce .col2-set .col-2 .woocommerce-additional-fields {
	font-size: inherit;
}
.woocommerce .col2-set .col-2 .woocommerce-additional-fields h3 {
	font-size: inherit;
	margin: 20px 0 10px 0;
}
.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 {
	width: 100%;
	float: left;
}
.woocommerce form .form-row .input-text, .woocommerce form .form-row select {
	border: 1px solid var(--light-grey);
}
.select2-container--default .select2-selection--single {
	border: 1px solid var(--light-grey);
}
#order_review {
	float: right;
	width: 37%;
}
#order_review table.shop_table {
	font-weight: 400 !important;
	border: 2px solid var(--green);
	border-radius: 5px !important;
	overflow: hidden;
}
#order_review table.shop_table thead tr th {
	padding: 10px;;
	font-weight: 500;
	border-right: 1px solid var(--light-grey);
	background-color: #E6F1EA;
}
#order_review table.shop_table tbody tr td {
	padding: 10px !important;
	font-weight: 400 !important;
	width: auto !important;
	border-right: 1px solid var(--light-grey);
}
#order_review table.shop_table tbody tr td dl.variation {
	font-size: 11px;
	line-height: 1;
}
#order_review table.shop_table tbody tr td dl.variation p {
	margin: 0;
}
h3#order_review_heading {
	float: right;
	font-size: 20px;
	width: 37%;
	text-align: left;
	margin: 0 0 20px 0;
}
#add_payment_method #payment ul.payment_methods li, .woocommerce-cart #payment ul.payment_methods li, .woocommerce-checkout #payment ul.payment_methods li {
	font-size: 18px;
	font-weight: 600;
}
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
	background-color: #E6F1EA;
}
.woocommerce-privacy-policy-text p {
	font-size: 12px;
}
#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box {
	font-size: 12px;
	font-weight: 400;
	padding: 5px 15px 15px 15px;
	background-color: var(--light-green);
}
#add_payment_method #payment div.payment_box::before, .woocommerce-cart #payment div.payment_box::before, .woocommerce-checkout #payment div.payment_box::before {
	border: 1em solid var(--light-green);
	border-right-color: transparent;
    border-left-color: transparent;
    border-top-color: transparent;
}
#order_review .woocommerce-error, #order_review .woocommerce-info, #order_review .woocommerce-message {
	font-size: 11px;
	line-height: 1.2;
	background-color: #fac8cb;
	color: var(--dark);
	border-radius: 5px;
}
#order_review .woocommerce-info::before {
	display: none !important;
}
#order_review button#place_order {
	padding: 12px 20px;
	font-size: 16px;
	font-weight: 500;
	background-color: var(--green);
}
#order_review button#place_order:hover {
	color: #fff;
	opacity: .9;
}
.woocommerce-order {
	width: 100%;
	max-width: 768px;
	margin: 0 auto;
}
.woocommerce ul.order_details {
	background-color: #E6F1EA;
	border-radius: 5px;
	padding: 20px;
}
.woocommerce-order-details h2 {
	font-size: 20px;
}
.woocommerce-customer-details h2 {
	font-size: 20px;
}

/*-- product detail --*/
.coffee-label-wrapper{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:15px 0;
}

.coffee-label-group{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.coffee-label-group.primary .label{
  background: #E6F2D0;
  color: var(--green);
}

.coffee-label-group .label{
  padding:6px 14px;
  border-radius:30px;
  font-size:13px;
  font-weight:500;
}

.stat-head{
  display:flex;
  justify-content:space-between;
  font-size:14px;
  margin-bottom:6px;
  color:#333;
}

.stat-bar{
  background: #ffc860;
  height:6px;
  border-radius:10px;
  overflow:hidden;
}

.stat-bar span{
  display:block;
  height:100%;
  background: #b57702;
  border-radius:10px;
  transition:width .4s ease;
}

/* SKU */
.product_meta{
  font-size:13px;
  color:#888;
  margin-bottom:6px;
}

/* Harga + Rating sejajar */
.price-rating-row{
  display:flex;
  align-items:center;
  gap:14px;
  margin:10px 0 14px;
}

.price-rating-row .price {
  font-size: 35px;
  font-weight: 600;
  color: var(--green);
  margin: 0;
  margin: 0;
}

.price-rating-row .woocommerce-product-rating{
  margin:0;
}

/* Group bawah */
.coffee-bottom-group {
	border: 2px solid #7FAB31;
  background:#eaf6d8;
  padding:16px;
  border-radius:14px;
  display:flex;
  justify-content:space-between;
  gap:20px;
}
.coffee-bottom-group .coffee-flavor-group {
	position: relative;
}
.coffee-bottom-group .coffee-flavor-group h4 {
	margin: 0 0 15px;
	color: var(--body-color);
	font-size: 15px;
	display: block;
}
.coffee-bottom-group .coffee-flavor-group .label{
  background: #D1E8AA;
  color: var(--green);
  padding: 6px 14px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 500;
    margin-right: 10px;
    display: inline-block;
    margin-bottom: 10px;
}
.coffee-bottom-group .coffee-stats {
	width: 100%;
	max-width: 300px;
}
.coffee-bottom-group .coffee-stats .coffee-stat {
	margin-bottom: 10px;
}

.coffee-cart-ui{
  margin-top:0;
}
.coffee-cart-ui .cart{
  display: flex;
  flex-wrap: wrap;
  gap:14px;
}
.coffee-cart-ui .cart .quantity{
  display:flex;
  align-items:center;
  gap:10px;
}
.coffee-cart-ui .cart select,
.coffee-cart-ui .cart input.qty{
  border: 1.5px solid #cfd8c3;
  background-color: var(--white) !important;
  border-radius:30px;
  padding:12px 16px;
  font-size:14px;
  width: 100px;
}
.single_add_to_cart_button{
  background: var(--green);
  border-radius:40px;
  padding:16px;
  font-size:16px;
  font-weight:700;
}
.coffee-cart-helper{
  font-size:14px;
  margin-top:0;
  color:#666;
  display: none;
}
.coffee-cart-helper a{
  color:#0b7a3e;
  text-decoration:none;
}

.loop-flavor-notes {
	margin-top: 6px;
	color: var(--grey);
	font-size: 14px;
	margin: 0 15px;
	display:flex;
	flex-wrap:wrap;
	word-break: keep-all;
    white-space: normal;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    gap:6px;
}
.loop-flavor-notes span::after{
  content:',';
}
.loop-flavor-notes span:last-child::after{
  content:'';
}
.loop-flavor-notes span {
    margin-right: 4px;
}

.product-brand-share {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px dashed #d7e3b8;
}

.product-brand-share .brand a {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}
.brand-logo {
    width: 36px;
    height: 36px !important;
    border-radius: 50px;
    object-fit: contain;
	background-color: #fff;
}
.brand-name {
    font-weight: 600;
    color: var(--body-color);
}
.brand-name:hover {
	color: var(--green);
}
.product-brand-share .share {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 14px;
}
.product-brand-share .share a {
    color: var(--green);
    font-weight: 600;
    text-decoration: none;
    font-size: 18px;
}
.product-brand-share .share a:hover {
	color: var(--dark-green);
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/
@media only screen and (max-width:1360px) {
	.topbar .container,
	.header .container,
	#big-title .container,
	#main-wrapper .container,
	#main-wrapper .container.small,
	.post-headline .container,
	body.woocommerce-cart .wp-block-woocommerce-cart,
	body.woocommerce-account .woocommerce,
	body.woocommerce-checkout .woocommerce,
	#primary .site-main,
	#related .container,
	#foot .container {padding-left: 20px; padding-right: 20px;}
}
@media only screen and (max-width:1024px) {
	html {padding-top: 0 !important;}
	.topbar {
		background: var(--green);
	}
	.topbar .container {
		background: url(img/header-top-left-mobile.png) no-repeat -45px 0;
	}
	.topbar.bottom .container {
		background: url(img/header-top-left-mobile.png) no-repeat -95px 0;
		padding: 5px 0;
	}
	.topbar .container #nav_menu-3 ul li {
		margin-right: 3px;
	}
	.topbar .container #nav_menu-3 ul li a {
		font-size: 11px;
	}
	.topbar .container #nav_menu-3 ul li a i {
		font-size: 14px;
		margin-right: 0;
	}
	.topbar .container #nav_menu-2 ul li {
		margin-left: 5px;
	}
	.topbar .container #nav_menu-2 ul li a {
		font-size: 11px;
	}
	.topbar .container #nav_menu-2 ul li a i {
		font-size: 14px;
		margin-right: 3px;
	}
	.header {display: block; z-index: 99; top: 0; overflow: visible;}
	.header .container {position: relative; background-color: transparent; height: 80px; overflow: hidden;}
	.header .container .logo {width: 70px; top: 16px; padding: 0; background: transparent; position: absolute; left: 50%; transform: translateX(-50%);}
	.header .container .topright {position: relative; margin-left: auto;}
	.header .container .topright .account-icon {display: none;}
	.header .container .topright .lang-switcher {display: none;}
	.nav {display: none;}
	.header.scrolled {transition: none; border-bottom: 0;}
	.header.scrolled .container {height: 80px;}
	.header.scrolled .container .logo {width: 70px;}
	
	.header #megamenu {display: block !important; top: 30px; z-index: 99999; left: 20px; position: absolute;}
  	
  	.header .menu-dropdown {display: block; top: 117px; background-color: var(--white); padding: 20px !important;}
  	.header.scrolled .menu-dropdown {display: block; top: 79px;}

  	#related .container ul li {width: 50%;}
  	#related .container ul li table {display: none;}
}

@media only screen and (max-width:768px) {
	html {padding-top: 0 !important;}
	body {font-size: 15px;}

	h1 {font-size: 32px;}
	h2 {font-size: 27px;}
	h3 {font-size: 22px;}
	h4 {font-size: 16px;}
	h5 {font-size: 13px;}
	h6 {font-size: 10px;}

	.hero .slider {padding: 2px;border-radius: 10px;}
	.hero .slider .swiper-pagination {
		padding: 0 5px;
		border-radius: 0 15px 0 0;
		bottom: 0 !important;
		line-height: 1.2;
	}
	.elementor-image-carousel .swiper-slide-image {
		border-radius: 9px !important;
	}

	.home-category .e-con-inner {
		display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        gap: 5px;
	}
	.home-category .e-con-inner .elementor-widget-image-box {
		flex: 0 0 25% !important;
        width: 70% !important;
        scroll-snap-align: start;
        margin-bottom: 20px !important;
	}
	.home-category .e-con-inner::-webkit-scrollbar {
        display: none;
    }

    .general-horizontal-scroll {
		display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        gap: 5px;
	}
	.general-horizontal-scroll .elementor-element {
		flex: 0 0 25% !important;
        width: 200px !important;
        scroll-snap-align: start;
        margin-bottom: 0 !important;
        display: inline-table;
	}
	.general-horizontal-scroll::-webkit-scrollbar {
        display: none;
    }

    .general-horizontal-scroll-autowidth {
		display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        gap: 5px;
	}
	.general-horizontal-scroll-autowidth .elementor-element {
		flex: 0 0 10px !important;
        width: auto !important;
        scroll-snap-align: start;
        margin-bottom: 0 !important;
        display: inline-table;
	}
	.general-horizontal-scroll-autowidth .elementor-element .elementor-button {
		width: max-content;
	}
	.general-horizontal-scroll-autowidth::-webkit-scrollbar {
        display: none;
    }

    .general-horizontal-scroll-image {
		display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        /*scroll-snap-type: x mandatory;*/
        gap: 15px !important;
	}
	.general-horizontal-scroll-image .elementor-element {
		flex: 0 0 50% !important;
        width: 70% !important;
        scroll-snap-align: start;
        margin-bottom: 0 !important;
	}
	.general-horizontal-scroll-image::-webkit-scrollbar {
        display: none;
    }

    .gcw .elementor-image-box-content .elementor-image-box-title {
    	padding-top: 7px;
    }

    ul.display-posts-listing {display: block;}
    ul.display-posts-listing li {width: 100%; margin-bottom: 20px;}
    ul.display-posts-listing li a.image img {height: 180px;}

    .testimonial-slide .elementor-image-box-wrapper {
    	display: flex;
    	flex-wrap: nowrap;
    	align-items: center;
    }
    .testimonial-slide .elementor-image-box-content {
    	text-align: left;
    	padding-left: 20px;
    }

	#main-wrapper .container .listing {display: block;}
	#main-wrapper .container .listing article {width: 100%}
	#main-wrapper .container .listing article .thumb {height: 200px;}

	#main-wrapper .container .listing {width: 100%; display: block;}
	#main-wrapper .container .listing article {width: 100%; padding: 0; margin-bottom: 25px;}
	#related .container {padding: 50px 20px;}
	#related .container h3 {margin-bottom: 30px;}
	#related .container ul {width: 100%; display: block;}
	#related .container ul li {width: 100%; margin-bottom: 30px;}
	#related .container ul li .the-thumb {height: 180px;}
	#related .container ul li .the-thumb a img {height: 180px;}
	
	#main-wrapper {margin-top: 0;}
	#main-wrapper .container {padding: 50px 20px;}
	#main-wrapper .container .blog-title {display: block;}
	#main-wrapper .container .blog-title h1 {font-size: 36px; margin: 0 0 20px 0;}
	#main-wrapper .container.blog-grid {display: block;}
	#main-wrapper .container.blog-grid article {width: 100%; margin: 0 0 25px 0;}
	#main-wrapper .container.blog-grid article .thumb {height: 180px;}
	#main-wrapper .container.blog-grid article .thumb a img {height: 180px;}
	#main-wrapper .container .metadata {margin-bottom: 20px; padding: 20px;}
	#main-wrapper .container .share {width: 100%; float: none; margin-top: 30px; text-align: center;}
	#main-wrapper .container article h1 {font-size: 27px; margin-top: -10px;}
	#main-wrapper .container .body-content article.full {margin-top: 10px;}
	#main-wrapper .container .body-content article.full h1 {font-size: 27px;}
	#main-wrapper .container .body-content article.full h2 {font-size: 22px; line-height: 1.2}
	#main-wrapper .container .body-content article.full h3 {font-size: 18px; line-height: 1.3;}
	.pagination {margin-bottom: 50px;}

	div.wpcf7 .wpcf7-form {display: block;}
	div.wpcf7 .wpcf7-form .col {width: 100%;}
	div.wpcf7 .wpcf7-form input {margin: 5px 0;}
	div.wpcf7 .wpcf7-form select {margin: 5px 0;}
	div.wpcf7 .col-2 > div {width: 100%;}
	div.wpcf7 .wpcf7-form input[type="submit"] {
		width: 100%;
		display: block;
	}

	#primary .woocommerce-products-header h1 {
		font-size: 27px;
	}
	/*.woocommerce ul.products, .woocommerce-page ul.products {
		display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        gap: 15px;
        margin-top: 0;
	}
	.woocommerce ul.products li, .woocommerce-page ul.products li {
		flex: 0 0 60% !important;
        width: 70% !important;
        scroll-snap-align: start;
        margin-bottom: 20px !important;
	}
	.woocommerce ul.products::-webkit-scrollbar,
	.woocommerce-page ul.products::-webkit-scrollbar {
        display: none;
    }*/
    body.home .woocommerce ul.products {
		margin: 0 !important;
	}
	body.home .woocommerce ul.products li.product {
		margin-bottom: 0 !important;
	}
	body.home .woocommerce ul.products {
		display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        gap: 15px;
        margin-top: 0;
	}
	body.home .woocommerce ul.products li {
		flex: 0 0 60% !important;
        width: 70% !important;
        scroll-snap-align: start;
        margin-bottom: 20px !important;
	}
	body.home .woocommerce ul.products::-webkit-scrollbar {
        display: none;
    }
    .woocommerce ul.products li, .woocommerce-page ul.products li {
    	width: 48%;
    	margin-bottom: 15px !important;
    }
    .woocommerce ul.products li.product a h2, .woocommerce-page ul.products li.product a h2 {
    	-webkit-line-clamp: 2;
    	font-size: 16px !important;
    }
    .woocommerce ul.products li.product .button {
    	padding: 10px 15px 10px 40px;
	    display: block;
	    float: none;
	    margin: 15px 15px 0 15px;
	    text-align: right;
	    font-size: 13px;
    }
    .woocommerce ul.products li.product .button:after {
        left: 15px;
    }
    .loop-flavor-notes {
    	gap: 1px;
    	font-size: 13px;
    }
	.woocommerce div.product div.images, .woocommerce div.product div.images.woocommerce-product-gallery {
		width: 100%;
	}
	.woocommerce div.product div.summary {
		width: 100%;
	}
	.woocommerce div.product .product_title {
		font-size: 24px;
	}
	.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
		font-size: 21px;
		line-height: 1;
	}
	.coffee-bottom-group {
		display: block;
	}
	.coffee-bottom-group .coffee-stats {
		margin-top: 20px;
	}
	.woocommerce div.product form.cart div.quantity {
		width: 100%;
	}
	.woocommerce div.product form.cart .button {
		width: 100%;
		margin-top: 20px;
	}
	.woocommerce div.product .woocommerce-tabs ul.tabs {
		display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
        gap: 10px;
	}
	.woocommerce div.product .woocommerce-tabs ul.tabs li {
		flex: 0 0 auto !important;
        width: auto !important;
        scroll-snap-align: start;
        margin-right: 0;
	}
	.woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar {
        display: none;
    }
	.woocommerce div.product .woocommerce-tabs ul.tabs li a {
		font-size: 14px;
	}
	.related.products h2 {
	    font-size: 22px;
	    margin-bottom: 20px;
	}
	.related.products ul.products li.product .price {
    	margin: 10px 0 !important;
    }
    .woocommerce .col2-set, .woocommerce-page .col2-set {
    	width: 100%;
    }
    h3#order_review_heading {float: left; width: 100%; margin-top: 20px;}
    #order_review {width: 100%; float: left;}

    .woocommerce ul.order_details {
    	padding: 20px 20px 5px 20px;
    }
    .woocommerce ul.order_details li {
    	width: 100%;
    	border-right: 0;
    	border-bottom: 1px dashed #cfc8d8;
    	margin-right: 0;
    	padding-bottom: 5px;
    	margin-bottom: 5px;
    }

	.product-bottom-meta {
	    flex-direction: column;
	    align-items: flex-start;
	    gap: 14px;
	}

	.product-share {
	    gap: 8px;
	}

	.testimonial-slide {
	    min-width: 50%;
	}

	#foot.top {border-bottom: 0 !important;}
	#foot.top .container {padding: 30px 20px 0 20px;}

	#foot {border-radius: 0;}
	#foot .container {padding: 50px 20px 30px 20px; font-size: 14px;}
	#foot .container > div {width: 100% !important; padding-right: 0;}
	#foot .container > div:last-child {width: 100% !important; padding-right: 0;}
	#foot .container > div img {margin-right: 0; margin-bottom: 0;}
	#foot .container > div > h3 {margin-top: 30px; border-top: 1px solid #ffffff30; padding-top: 30px;}
	#foot .container ul li a {font-size: 14px;}
	#foot .container .copyright {margin-top: 20px;}
	.socmed {
		position: relative;
		display: block;
		margin: 30px 0 0 0;
	}
	.socmed ul {
	    margin: 0;
	    padding: 0;
	    list-style: none;
	}
	.socmed ul li {text-align: center; float: none; display: inline-block;}
	.socmed ul li a i {font-size: 18px;}
}
@media only screen and (max-width:640px) {
	.gallery-item:nth-child(2n+1) {clear:left;}
	.gallery-item {width: 100% !important; margin: 0 !important;}
	#big-title img {height: 100%;}
	#main-wrapper .container .metadata {font-size: 14px;}
}
@media only screen and (max-width:480px) {
	#big-title {background-size: auto;}
}
/*------------------------------------*\
    MISC
\*------------------------------------*/

::-webkit-input-placeholder { /* Edge */
  color: var(--light-grey);
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: var(--light-grey);
}

::placeholder {
  color: var(--light-grey);
}

::selection {
	background:#00a1e9;
	color:var(--white);
	text-shadow:none;
}
::-webkit-selection {
	background:#00a1e9;
	color:var(--white);
	text-shadow:none;
}
::-moz-selection {
	background:#00a1e9;
	color:var(--white);
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:var(--white);
	border:1px solid var(--light-grey);
	max-width:100%;
	padding: 0;
	font-size: 16px;
	font-style: italic;
	text-align:center;
}
.wp-caption.alignnone {
	margin:0 0 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:100%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size: 16px;
	line-height: 1.3;
	margin:0;
	padding: 20px;
	text-align: left;
}
p.wp-caption-text {
	font-size: 16px !important;
	font-style: italic;
	padding-bottom: 0 !important;
	margin-bottom: 0;
}
.sticky {

}
.bypostauthor {

}
.addtoany_content {
	margin: 60px 0 0 0 !important;
	text-align: center;
}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:var(--dark) !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid var(--grey);
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}

::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background-color: #eee;
}
::-webkit-scrollbar-thumb {
  background-color: #aaa;
}
::-webkit-scrollbar-thumb:hover {
  background-color: var(--green);;
}
