:root {
	--greol-green: #243f2f;
	--greol-green-2: #31543e;
	--greol-cream: #e6c195;
	--greol-sage: #d9e7d6;
	--greol-soft: #f3f6f2;
	--greol-line: #dce6db;
	--greol-text: #16261d;
	--greol-muted: #6f7d73;
	--greol-white: #fff;
	--greol-radius: 20px;
	--greol-shadow: 0 18px 50px rgba(36, 63, 47, .09);
}

html { scroll-behavior: smooth; }
body {
	background: var(--greol-white);
	color: var(--greol-text);
	font-family: 'Quicksand', sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.55;
}
body.drawer-open, body.filter-open { overflow: hidden; }
a { color: inherit; }
a:hover { color: var(--greol-green-2); }
button, input, select, textarea { font: inherit; }
.wrapper { overflow: clip; }
.greol-container { width: min(100% - 40px, 1820px); margin-inline: auto; }
.greol-section { padding: 74px 0; }
.greol-section--soft { background: var(--greol-soft); }
.section-kicker { display: block; margin-bottom: 8px; color: #7b8f80; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 34px; }
.section-heading h2 { margin: 0; color: var(--greol-green); font-size: clamp(28px, 2.2vw, 42px); line-height: 1.08; letter-spacing: -.035em; }
.greol-button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: 14px; padding: 10px 22px; border: 2px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 700; line-height: 1; transition: .25s ease; }
.greol-button:hover { transform: translateY(-2px); }
.greol-button--primary { background: var(--greol-green); color: #fff !important; }
.greol-button--cream { background: var(--greol-cream); color: var(--greol-green) !important; }
.greol-button--light { background: #fff; color: var(--greol-green) !important; }
.greol-button--outline { border-color: var(--greol-green); color: var(--greol-green) !important; }
.greol-button--outline:hover { background: var(--greol-green); color: #fff !important; }

/* Header */
.site-notice { background: var(--greol-green); color: #fff; font-size: 12px; }
.site-notice__inner { display: flex; min-height: 34px; align-items: center; justify-content: space-between; gap: 30px; }
.site-notice__inner div { display: flex; gap: 26px; }
.site-notice a { color: #fff; opacity: .82; }
.site-header { position: relative; z-index: 40; background: #fff; box-shadow: 0 1px 0 rgba(36, 63, 47, .1); }
.site-header__main { display: flex; min-height: 91px; align-items: center; gap: clamp(18px, 2.3vw, 42px); }
.site-brand { display: block; flex: 0 0 130px; }
.site-brand img { display: block; width: 130px; height: auto; }
.site-search { min-width: 280px; flex: 1; }
.site-search .dgwt-wcas-search-wrapp, .mobile-search .dgwt-wcas-search-wrapp { max-width: none; }
.site-search .dgwt-wcas-search-input, .mobile-search .dgwt-wcas-search-input { height: 48px !important; padding-left: 20px !important; border: 1px solid var(--greol-line) !important; border-radius: 50px !important; background: var(--greol-soft) !important; font-family: inherit !important; font-style: normal !important; }
.site-contact { flex-direction: column; padding-left: 32px; border-left: 1px solid var(--greol-line); line-height: 1.25; }
.site-contact__label { color: var(--greol-muted); font-size: 11px; }
.site-contact a { color: var(--greol-green); font-size: 15px; font-weight: 700; }
.header-actions { display: flex; align-items: center; gap: 21px; }
.header-action { position: relative; display: flex; flex-direction: column; align-items: center; gap: 5px; color: var(--greol-green); font-size: 10px; font-weight: 700; }
.header-action__icon { position: relative; display: block; width: 24px; height: 24px; background: center/contain no-repeat; }
.header-action--account .header-action__icon { background-image: url('../../images/account.svg'); }
.header-action--wishlist .header-action__icon { background-image: url('../../images/heart.svg'); }
.header-action--cart .header-action__icon { background-image: url('../../images/cart.svg'); }
.greol-cart-count { position: absolute; top: -8px; right: -10px; display: grid; width: 18px; height: 18px; place-items: center; border: 2px solid #fff; border-radius: 50%; background: var(--greol-cream); color: var(--greol-green); font-size: 9px; }
.site-header__nav { border-top: 1px solid var(--greol-line); }
.site-header__nav-inner { display: flex; min-height: 54px; align-items: center; gap: 34px; }
.catalog-nav { position: relative; align-self: stretch; display: flex; align-items: center; }
.catalog-nav__toggle { display: flex; height: 100%; align-items: center; gap: 12px; padding: 0 27px; border: 0; border-radius: 12px 12px 0 0; background: var(--greol-green); color: #fff; font-weight: 700; }
.catalog-nav__lines, .catalog-nav__lines::before, .catalog-nav__lines::after { display: block; width: 17px; height: 2px; border-radius: 3px; background: currentColor; content: ''; }
.catalog-nav__lines { position: relative; }
.catalog-nav__lines::before { position: absolute; top: -6px; }
.catalog-nav__lines::after { position: absolute; top: 6px; }
.catalog-nav__chevron { width: 7px; height: 7px; margin-left: 8px; border-right: 1px solid; border-bottom: 1px solid; transform: rotate(45deg) translateY(-3px); }
.catalog-nav__dropdown { position: absolute; top: 100%; left: 0; display: none; width: 360px; padding: 16px; border-radius: 0 0 16px 16px; background: #fff; box-shadow: var(--greol-shadow); }
.catalog-nav.is-open .catalog-nav__dropdown { display: block; }
.catalog-nav__dropdown ul { margin: 0; padding: 0; list-style: none; }
.catalog-nav__dropdown .menu-catalog > li > a { display: flex; min-height: 43px; align-items: center; padding: 8px 12px; border-radius: 9px; color: var(--greol-green); font-weight: 600; }
.catalog-nav__dropdown .menu-catalog > li > a:hover { background: var(--greol-soft); }
.catalog-nav__dropdown .second-level { display: none; }
.desktop-menu { display: flex; align-items: center; gap: clamp(20px, 2vw, 40px); margin: 0; padding: 0; list-style: none; }
.desktop-menu a { color: var(--greol-green); font-size: 14px; font-weight: 650; }
.nav-location { margin-left: auto; color: var(--greol-muted); font-size: 12px; }
.mobile-menu-toggle, .mobile-search, .mobile-drawer, .mobile-drawer-overlay { display: none; }

/* Homepage hero */
.home-hero { padding-top: 28px; padding-bottom: 34px; }
.home-hero__grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(320px, .8fr); grid-template-rows: 1fr 1fr; gap: 18px; }
.hero-primary, .hero-side { position: relative; overflow: hidden; border-radius: var(--greol-radius); }
.hero-primary { min-height: 500px; grid-row: 1 / 3; background: var(--greol-green); color: #fff; }
.hero-primary::before { position: absolute; inset: auto -7% -34% auto; width: 64%; aspect-ratio: 1; border-radius: 50%; background: rgba(217, 231, 214, .09); content: ''; }
.hero-primary__content { position: relative; z-index: 2; width: 53%; padding: clamp(48px, 5vw, 94px); }
.hero-primary__content h1 { max-width: 690px; margin: 0 0 20px; color: #fff; font-size: clamp(44px, 4.7vw, 82px); line-height: .98; letter-spacing: -.055em; }
.hero-primary__content p { max-width: 530px; margin: 0 0 38px; color: rgba(255,255,255,.78); font-size: clamp(16px, 1.15vw, 20px); }
.hero-primary__visual { position: absolute; inset: 0 0 0 49%; }
.hero-product { position: absolute; object-fit: contain; filter: drop-shadow(0 25px 30px rgba(0,0,0,.16)); }
.hero-product--chips { right: 6%; bottom: -5%; width: 58%; max-height: 88%; }
.hero-product--oreo { right: 50%; bottom: 1%; width: 35%; transform: rotate(-9deg); }
.hero-product--spread { right: 6%; bottom: 2%; width: 31%; transform: rotate(7deg); }
.hero-side { min-height: 241px; padding: 35px 36px; background: #edf4eb; color: var(--greol-green); }
.hero-side > div:first-child { position: relative; z-index: 2; width: 54%; }
.hero-side span { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hero-side h2 { margin: 8px 0 18px; color: var(--greol-green); font-size: clamp(25px, 2vw, 36px); line-height: 1.03; letter-spacing: -.04em; }
.hero-side a { border-bottom: 1px solid; color: var(--greol-green); font-size: 13px; font-weight: 700; }
.hero-side--coffee img { position: absolute; right: -2%; bottom: -14%; width: 47%; max-height: 112%; object-fit: contain; transform: rotate(7deg); }
.hero-side--care { background: #f1e3d2; }
.hero-care__products { position: absolute !important; right: 0; bottom: -12%; display: flex; width: 50% !important; align-items: end; }
.hero-care__products img { width: 34%; max-height: 190px; object-fit: contain; filter: drop-shadow(0 14px 18px rgba(36,63,47,.18)); }
.benefits-bar { padding: 23px 0; border-block: 1px solid var(--greol-line); }
.benefits-bar__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.benefits-bar__grid > div { display: flex; align-items: center; gap: 15px; padding: 5px 28px; border-right: 1px solid var(--greol-line); }
.benefits-bar__grid > div:first-child { padding-left: 0; }
.benefits-bar__grid > div:last-child { border: 0; }
.benefits-bar i { display: grid; flex: 0 0 42px; height: 42px; place-items: center; border-radius: 50%; background: var(--greol-soft); color: var(--greol-green); font-style: normal; font-weight: 700; }
.benefits-bar span { color: var(--greol-muted); font-size: 11px; }
.benefits-bar b { display: block; margin-bottom: 2px; color: var(--greol-green); font-size: 13px; }

/* Product cards */
.woocommerce ul.products, .woocommerce-page ul.products { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; margin: 0 !important; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product.greol-product-card, .woocommerce-page ul.products li.product.greol-product-card { display: flex; width: auto !important; min-width: 0; flex-direction: column; float: none !important; margin: 0 !important; padding: 0; border: 1px solid var(--greol-line); border-radius: 14px; background: #fff; overflow: hidden; transition: .25s ease; }
.woocommerce ul.products li.product.greol-product-card:hover { border-color: #bfd1bc; box-shadow: var(--greol-shadow); transform: translateY(-4px); }
.greol-product-card__media { position: relative; overflow: hidden; aspect-ratio: 1.06; background: #fff; }
.greol-product-card__media > a { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; padding: 20px; }
.woocommerce ul.products li.product.greol-product-card .greol-product-card__media img { width: 100%; height: 100%; margin: 0; object-fit: contain; transition: transform .35s ease; }
.woocommerce ul.products li.product.greol-product-card:hover .greol-product-card__media > a img { transform: scale(1.04); }
.greol-product-card__badges { position: absolute; top: 13px; left: 13px; display: flex; flex-direction: column; gap: 6px; }
.greol-product-card__badges span { width: max-content; padding: 5px 9px; border-radius: 999px; color: #fff; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.badge-sale { background: #bf5f47; }
.badge-stock { background: var(--greol-muted); }
.greol-product-card__wishlist { position: absolute; top: 10px; right: 10px; z-index: 3; }
.greol-product-card__wishlist .yith-wcwl-add-to-wishlist { margin: 0; }
.greol-product-card__wishlist a { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; background: #fff; box-shadow: 0 4px 18px rgba(36,63,47,.1); font-size: 0; }
.greol-product-card__body { display: flex; min-height: 145px; flex: 1; flex-direction: column; padding: 4px 16px 16px; }
.greol-product-card__category { margin-bottom: 7px; color: #8c9a90; font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.woocommerce ul.products li.product.greol-product-card h2.woocommerce-loop-product__title { margin: 0; padding: 0; color: var(--greol-green); font-size: 14px; font-weight: 700; line-height: 1.35; letter-spacing: -.01em; }
.greol-product-card__footer { display: flex; align-items: end; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 15px; }
.greol-product-card__price { color: #111; font-size: 16px; font-weight: 700; line-height: 1.15; }
.greol-product-card__price del { display: block; color: #9da69f; font-size: 11px; font-weight: 500; }
.greol-product-card__price ins { text-decoration: none; }
.woocommerce ul.products li.product.greol-product-card .greol-card-cart.button { display: grid; width: 40px; min-width: 40px; height: 40px; place-items: center; margin: 0; padding: 11px; border: 0; border-radius: 50%; background: #eff5ee; color: var(--greol-green); }
.woocommerce ul.products li.product.greol-product-card .greol-card-cart.button:hover { background: var(--greol-green); }
.woocommerce ul.products li.product.greol-product-card .greol-card-cart img { display: block; width: 18px; height: 18px; margin: 0; }
.woocommerce ul.products li.product.greol-product-card .greol-card-cart:hover img { filter: brightness(0) invert(1); }
.woocommerce a.added_to_cart { display: none; }
.showcase-layout { display: grid; grid-template-columns: minmax(260px, .92fr) minmax(0, 4fr); gap: 14px; }
.showcase-products .woocommerce ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.showcase-promo { position: relative; display: flex; min-height: 410px; flex-direction: column; overflow: hidden; padding: 32px; border-radius: 14px; background: var(--greol-green); color: #fff !important; }
.showcase-promo span { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.showcase-promo h3 { max-width: 190px; margin: 11px 0; color: #fff; font-size: 31px; line-height: 1.03; }
.showcase-promo strong { color: var(--greol-cream); font-size: 26px; }
.showcase-promo img { position: absolute; right: -17%; bottom: -5%; width: 112%; height: 64%; object-fit: contain; filter: drop-shadow(0 15px 20px rgba(0,0,0,.22)); }

/* Categories and story */
.category-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.category-card { position: relative; display: flex; min-height: 230px; align-items: center; overflow: hidden; padding: 32px; border-radius: var(--greol-radius); background: #fff; }
.category-card:nth-child(2), .category-card:nth-child(5) { background: #e8efe5; }
.category-card:nth-child(3), .category-card:nth-child(4) { background: #efe2d2; }
.category-card__text { position: relative; z-index: 2; width: 54%; }
.category-card strong { display: block; color: var(--greol-green); font-size: 23px; line-height: 1.05; }
.category-card small { display: block; margin: 9px 0 27px; color: var(--greol-muted); }
.category-card em { color: var(--greol-green); font-size: 12px; font-style: normal; font-weight: 700; }
.category-card img { position: absolute; right: -3%; bottom: -8%; width: 48%; height: 98%; object-fit: contain; transition: transform .3s ease; }
.category-card:hover img { transform: scale(1.06) rotate(2deg); }
.brand-story { padding-block: 38px 86px; }
.brand-story__inner { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; border-radius: 26px; background: var(--greol-green); color: #fff; }
.brand-story__visual { position: relative; min-height: 520px; background: #e7dcc7; overflow: hidden; }
.brand-story__visual img { width: 100%; height: 100%; object-fit: contain; padding: 45px; filter: drop-shadow(0 25px 30px rgba(0,0,0,.18)); }
.brand-story__content { align-self: center; max-width: 760px; padding: clamp(48px, 6vw, 100px); }
.brand-story__content .section-kicker { color: var(--greol-cream); }
.brand-story__content h2 { margin: 0 0 24px; color: #fff; font-size: clamp(34px, 3.2vw, 57px); line-height: 1.02; letter-spacing: -.045em; }
.brand-story__content p { color: rgba(255,255,255,.75); }
.brand-story__content .greol-button { margin-top: 22px; background: var(--greol-cream); color: var(--greol-green) !important; }
.home-advantages__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.home-advantages article { display: flex; min-height: 140px; align-items: center; gap: 24px; padding: 28px; border-radius: 16px; background: #fff; }
.home-advantages article img { width: 62px; height: 62px; object-fit: contain; }
.home-advantages article p { margin: 0; color: var(--greol-green); font-weight: 700; }

/* Catalog */
.catalog-page { background: var(--greol-soft); }
.woocommerce .woocommerce-breadcrumb { margin: 0 0 25px; color: #86948a; font-size: 12px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--greol-green); }
.catalog-header { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 30px; }
.catalog-header h1 { margin: 0; color: var(--greol-green); font-size: clamp(38px, 4vw, 64px); line-height: 1; letter-spacing: -.055em; }
.catalog-header .term-description { max-width: 650px; color: var(--greol-muted); font-size: 13px; }
.catalog-categories { display: flex; gap: 10px; overflow-x: auto; padding: 4px 0 30px; scrollbar-width: thin; }
.catalog-categories a { display: flex; min-width: 150px; min-height: 98px; align-items: center; gap: 10px; padding: 13px; border: 1px solid var(--greol-line); border-radius: 14px; background: #fff; color: var(--greol-green); font-size: 12px; font-weight: 700; }
.catalog-categories img { width: 57px; height: 70px; object-fit: contain; }
.catalog-layout { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 25px; }
.catalog-sidebar { align-self: start; padding: 24px; border: 1px solid var(--greol-line); border-radius: 16px; background: #fff; }
.catalog-sidebar__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.catalog-sidebar__head h2 { margin: 0; color: var(--greol-green); font-size: 20px; }
.catalog-filter-close { display: none; border: 0; background: none; color: var(--greol-green); font-size: 28px; }
.catalog-sidebar .widget { margin-bottom: 27px; padding-bottom: 24px; border-bottom: 1px solid var(--greol-line); }
.catalog-sidebar .widget:last-child { border: 0; }
.catalog-sidebar .widget-title { color: var(--greol-green); font-size: 14px; }
.catalog-sidebar ul { padding: 0; list-style: none; }
.catalog-sidebar li { margin-bottom: 8px; color: var(--greol-muted); font-size: 13px; }
.catalog-results { min-width: 0; }
.catalog-toolbar { display: flex; min-height: 52px; align-items: center; justify-content: flex-end; margin-bottom: 16px; }
.catalog-toolbar .woocommerce-notices-wrapper { width: 100%; }
.catalog-toolbar .woocommerce-result-count { margin: 0 auto 0 0; color: var(--greol-muted); font-size: 12px; }
.catalog-toolbar .woocommerce-ordering { margin: 0; }
.catalog-toolbar select { height: 42px; padding: 0 34px 0 15px; border: 1px solid var(--greol-line); border-radius: 999px; background: #fff; color: var(--greol-green); font-size: 12px; font-weight: 700; }
.catalog-filter-open { display: none; }
.catalog-results .woocommerce ul.products, .catalog-results ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.woocommerce nav.woocommerce-pagination { margin-top: 42px; }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { margin: 0 3px; border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { display: grid; min-width: 38px; height: 38px; place-items: center; border-radius: 50%; color: var(--greol-green); }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--greol-green); color: #fff; }
.catalog-filter-overlay { display: none; }

/* Product page */
.single-product-page { background: var(--greol-soft); }
.single-product-card { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(380px, .94fr); column-gap: clamp(35px, 5vw, 90px); padding: clamp(28px, 4vw, 70px); border: 1px solid var(--greol-line); border-radius: 24px; background: #fff; }
.single-product-card__gallery { min-width: 0; }
.single-product-card .woocommerce-product-gallery { width: 100% !important; float: none !important; }
.single-product-card .woocommerce-product-gallery__wrapper { border-radius: 18px; background: #fff; overflow: hidden; }
.single-product-card .woocommerce-product-gallery__image a { display: flex; min-height: 570px; align-items: center; justify-content: center; }
.single-product-card .woocommerce-product-gallery__image img { width: 100%; max-height: 570px; object-fit: contain; }
.single-product-card .flex-control-thumbs { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-top: 15px !important; }
.single-product-card .flex-control-thumbs li { width: auto !important; padding: 8px; border: 1px solid var(--greol-line); border-radius: 10px; }
.single-product-card .summary { width: auto !important; align-self: center; float: none !important; margin: 0 !important; }
.single-product-card .summary .product_title { margin: 0 0 20px; color: var(--greol-green); font-size: clamp(32px, 3vw, 52px); line-height: 1.05; letter-spacing: -.045em; }
.single-product-card .woocommerce-product-rating { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; color: var(--greol-muted); font-size: 12px; }
.woocommerce .star-rating { color: #d6a45e; }
.single-product-card .summary .price { margin: 24px 0; color: #101712; font-size: 30px; font-weight: 700; }
.single-product-card .summary .price del { color: #9ba59e; font-size: 16px; }
.single-product-card .summary .price ins { text-decoration: none; }
.single-product-card .woocommerce-product-details__short-description { color: var(--greol-muted); font-size: 14px; }
.single-product-card form.cart { display: flex; align-items: center; gap: 12px; margin: 30px 0 !important; padding-block: 25px; border-block: 1px solid var(--greol-line); }
.single-product-card form.cart .quantity .qty { width: 74px; height: 50px; border: 1px solid var(--greol-line); border-radius: 999px; }
.woocommerce .single-product-card .button.alt { min-height: 50px; flex: 1; border-radius: 999px; background: var(--greol-green); font-weight: 700; }
.woocommerce .single-product-card .button.alt:hover { background: var(--greol-green-2); }
.single-product-card .product_meta { color: var(--greol-muted); font-size: 12px; }
.single-product-card .product_meta > span { display: block; margin-bottom: 5px; }
.single-product-trust { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 26px; }
.single-product-trust > div { padding: 14px; border-radius: 12px; background: var(--greol-soft); }
.single-product-trust i { display: block; color: var(--greol-green); font-style: normal; font-weight: 700; }
.single-product-trust b { display: block; color: var(--greol-green); font-size: 11px; }
.single-product-trust span { color: var(--greol-muted); font-size: 9px; }
.single-product-card__details { grid-column: 1 / -1; margin-top: 65px; padding-top: 40px; border-top: 1px solid var(--greol-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; gap: 32px; padding: 0; border-bottom: 1px solid var(--greol-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0 0 14px; border: 0; background: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom: 2px solid var(--greol-green); }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--greol-muted); font-size: 14px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--greol-green); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 1060px; padding-top: 22px; color: var(--greol-muted); }
.woocommerce .related.products, .woocommerce .upsells.products { margin-top: 75px; }
.woocommerce .related.products > h2, .woocommerce .upsells.products > h2 { margin-bottom: 30px; color: var(--greol-green); font-size: 34px; text-align: left; }

/* Footer */
.help-strip { background: var(--greol-cream); }
.help-strip__inner { display: grid; min-height: 190px; grid-template-columns: 1fr auto auto; align-items: center; gap: clamp(25px, 4vw, 70px); }
.help-strip__eyebrow { color: rgba(36,63,47,.65); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.help-strip h2 { margin: 6px 0 0; color: var(--greol-green); font-size: clamp(27px, 2.3vw, 42px); line-height: 1.05; }
.help-strip__phone { color: var(--greol-green); font-size: clamp(21px, 2vw, 32px); font-weight: 700; line-height: 1.15; }
.help-strip__phone span { display: block; color: rgba(36,63,47,.6); font-size: 10px; }
.site-footer { padding-top: 72px; background: var(--greol-green); color: rgba(255,255,255,.7); }
.site-footer__grid { display: grid; grid-template-columns: 1.35fr .75fr .85fr 1fr; gap: clamp(32px, 5vw, 90px); padding-bottom: 68px; }
.site-footer__brand img { width: 142px; max-height: 55px; object-fit: contain; object-position: left center; filter: brightness(0) invert(1); }
.site-footer__brand p { max-width: 420px; margin: 25px 0; font-size: 13px; }
.site-footer h3 { margin: 0 0 22px; color: #fff; font-size: 15px; }
.site-footer ul { margin: 0; padding: 0; list-style: none; }
.site-footer li { margin-bottom: 11px; }
.site-footer a { color: rgba(255,255,255,.72); font-size: 13px; }
.site-footer a:hover { color: var(--greol-cream); }
.footer-socials { display: flex; gap: 18px; }
.site-footer__contacts { display: flex; flex-direction: column; align-items: start; }
.site-footer__contacts > a:first-of-type { color: #fff; font-size: 20px; font-weight: 700; }
.site-footer__contacts p { margin-top: 18px; font-size: 13px; }
.site-footer__bottom { display: flex; min-height: 66px; align-items: center; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.12); font-size: 11px; }

@media (max-width: 1399px) {
	.greol-container { width: min(100% - 32px, 1320px); }
	.desktop-menu { gap: 20px; }
	.desktop-menu a { font-size: 12px; }
	.nav-location { display: none; }
	.hero-primary__content { padding: 60px; }
	.catalog-results .woocommerce ul.products, .catalog-results ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1199px) {
	.site-header__nav { display: none; }
	.site-header__main { min-height: 76px; }
	.mobile-menu-toggle { display: flex; width: 38px; height: 38px; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 0; border: 0; border-radius: 50%; background: var(--greol-soft); }
	.mobile-menu-toggle span { width: 16px; height: 2px; background: var(--greol-green); }
	.mobile-drawer { position: fixed; z-index: 1002; top: 0; left: 0; display: flex; width: min(390px, 88vw); height: 100dvh; flex-direction: column; gap: 25px; padding: 34px 28px; background: #fff; transform: translateX(-105%); transition: transform .3s ease; overflow-y: auto; }
	.mobile-drawer.is-open { transform: translateX(0); }
	.mobile-drawer-overlay { position: fixed; z-index: 1001; inset: 0; display: block; background: rgba(12,25,17,.55); opacity: 0; pointer-events: none; transition: opacity .3s ease; }
	.mobile-drawer-overlay.is-open { opacity: 1; pointer-events: auto; }
	.mobile-drawer__close { position: absolute; top: 18px; right: 18px; border: 0; background: none; color: var(--greol-green); font-size: 32px; }
	.mobile-drawer__logo img { width: 130px; }
	.mobile-menu { margin: 0; padding: 18px 0; border-block: 1px solid var(--greol-line); list-style: none; }
	.mobile-menu li { margin: 0; }
	.mobile-menu a { display: block; padding: 10px 0; color: var(--greol-green); font-weight: 700; }
	.mobile-drawer__contacts { display: flex; flex-direction: column; color: var(--greol-muted); }
	.mobile-drawer__contacts a { color: var(--greol-green); font-weight: 700; }
	.home-hero__grid { grid-template-columns: 1.55fr 1fr; }
	.hero-primary__content { width: 62%; padding: 45px; }
	.hero-primary__visual { left: 52%; }
	.benefits-bar__grid { grid-template-columns: repeat(2, 1fr); row-gap: 22px; }
	.benefits-bar__grid > div:nth-child(2) { border: 0; }
	.woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.category-grid { grid-template-columns: repeat(2, 1fr); }
	.site-footer__grid { grid-template-columns: 1.3fr 1fr 1fr; }
	.site-footer__grid > div:nth-child(3) { display: none; }
}

@media (max-width: 991px) {
	.greol-section { padding: 55px 0; }
	.site-notice { display: none; }
	.site-search { display: none; }
	.mobile-search { display: block; padding-block: 10px; }
	.site-brand { flex-basis: 110px; margin-right: auto; }
	.site-brand img { width: 110px; }
	.header-actions { gap: 15px; }
	.header-action__label { display: none; }
	.home-hero__grid { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto; }
	.hero-primary { min-height: 500px; grid-column: 1 / -1; grid-row: auto; }
	.hero-side { min-height: 230px; }
	.showcase-layout { grid-template-columns: 1fr; }
	.showcase-promo { display: none; }
	.showcase-products .woocommerce ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.brand-story__inner { grid-template-columns: 1fr; }
	.brand-story__visual { min-height: 380px; }
	.brand-story__content { max-width: none; }
	.home-advantages__grid { grid-template-columns: 1fr; }
	.catalog-layout { grid-template-columns: 1fr; }
	.catalog-sidebar { position: fixed; z-index: 1002; top: 0; left: 0; width: min(390px, 88vw); height: 100dvh; border-radius: 0 18px 18px 0; transform: translateX(-105%); transition: transform .3s ease; overflow-y: auto; }
	.catalog-sidebar.is-open { transform: translateX(0); }
	.catalog-filter-close, .catalog-filter-open { display: inline-flex; }
	.catalog-filter-overlay { position: fixed; z-index: 1001; inset: 0; display: block; background: rgba(12,25,17,.55); opacity: 0; pointer-events: none; transition: opacity .3s ease; }
	.catalog-filter-overlay.is-open { opacity: 1; pointer-events: auto; }
	.catalog-toolbar { justify-content: space-between; }
	.catalog-toolbar .woocommerce-result-count { display: none; }
	.single-product-card { grid-template-columns: 1fr; }
	.single-product-card .summary { padding-top: 35px; }
	.single-product-card__details { margin-top: 45px; }
	.help-strip__inner { grid-template-columns: 1fr auto; padding-block: 35px; }
	.help-strip .greol-button { display: none; }
}

@media (max-width: 767px) {
	.greol-container { width: min(100% - 24px, 720px); }
	.greol-section { padding: 42px 0; }
	.section-heading { align-items: center; margin-bottom: 24px; }
	.section-heading .greol-button { min-height: 38px; padding-inline: 14px; font-size: 11px; }
	.site-header__main { gap: 12px; }
	.header-action--account, .header-action--wishlist { display: none; }
	.home-hero { padding-top: 12px; }
	.home-hero__grid { grid-template-columns: 1fr; gap: 10px; }
	.hero-primary { min-height: 510px; }
	.hero-primary__content { width: 100%; padding: 34px 26px; }
	.hero-primary__content h1 { max-width: 430px; font-size: 48px; }
	.hero-primary__content p { max-width: 390px; font-size: 14px; }
	.hero-primary__visual { top: 40%; left: 20%; }
	.hero-side { min-height: 190px; padding: 26px; }
	.hero-side h2 { font-size: 27px; }
	.hero-side--coffee img { width: 39%; }
	.benefits-bar__grid { display: flex; overflow-x: auto; }
	.benefits-bar__grid > div { min-width: 265px; border-right: 1px solid var(--greol-line) !important; }
	.woocommerce ul.products, .woocommerce-page ul.products, .showcase-products .woocommerce ul.products, .catalog-results .woocommerce ul.products, .catalog-results ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.greol-product-card__body { min-height: 132px; padding: 4px 12px 12px; }
	.woocommerce ul.products li.product.greol-product-card h2.woocommerce-loop-product__title { font-size: 12px; }
	.greol-product-card__price { font-size: 14px; }
	.woocommerce ul.products li.product.greol-product-card .greol-card-cart.button { width: 36px; min-width: 36px; height: 36px; padding: 9px; }
	.category-grid { grid-template-columns: 1fr; gap: 10px; }
	.category-card { min-height: 185px; padding: 25px; }
	.brand-story__visual { min-height: 300px; }
	.brand-story__content { padding: 38px 27px; }
	.catalog-header { display: block; }
	.catalog-header .term-description { margin-top: 16px; }
	.catalog-categories a { min-width: 126px; min-height: 80px; }
	.catalog-categories img { width: 44px; height: 54px; }
	.single-product-card { padding: 18px; border-radius: 16px; }
	.single-product-card .woocommerce-product-gallery__image a { min-height: 350px; }
	.single-product-card .woocommerce-product-gallery__image img { max-height: 350px; }
	.single-product-trust { grid-template-columns: 1fr; }
	.single-product-card form.cart { flex-wrap: wrap; }
	.woocommerce .single-product-card .button.alt { min-width: calc(100% - 90px); }
	.woocommerce div.product .woocommerce-tabs ul.tabs { gap: 16px; overflow-x: auto; }
	.help-strip__inner { display: block; }
	.help-strip__phone { display: inline-block; margin-top: 24px; }
	.site-footer { padding-top: 50px; }
	.site-footer__grid { grid-template-columns: 1fr 1fr; gap: 40px 25px; }
	.site-footer__brand { grid-column: 1 / -1; }
	.site-footer__bottom { display: block; padding-block: 20px; }
	.site-footer__bottom span { display: block; margin: 5px 0; }
}

@media (max-width: 479px) {
	.hero-primary__content h1 { font-size: 40px; }
	.hero-primary__visual { left: 8%; }
	.hero-side > div:first-child { width: 63%; }
	.section-heading h2 { font-size: 27px; }
	.site-footer__grid { grid-template-columns: 1fr; }
	.site-footer__brand { grid-column: auto; }
}
