/* GBB visual system 2030 — original design informed by contemporary wine retail UX. */
@font-face {
	font-family:"GBB Inter";
	src:url("fonts/InterVariable.woff2") format("woff2");
	font-style:normal;
	font-weight:100 900;
	font-display:swap;
}

/* RU/RO/EN use the smaller face; other scripts retain the complete font above. */
@font-face {
	font-family:"GBB Inter";
	src:url("fonts/InterVariable-ru-ro-en-v1.woff2") format("woff2");
	font-style:normal;
	font-weight:100 900;
	font-display:swap;
	unicode-range:U+0000-024F,U+0400-052F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2100-214F,U+2190-21FF,U+2212,U+FEFF,U+FFFD;
}

:root {
	--gbb-red: #e30613;
	--gbb-ink: #171717;
	--gbb-paper: #f6f5f1;
	--gbb-mist: #eeede9;
	--gbb-white: #fff;
	--gbb-muted: #706f6b;
	--gbb-radius-sm: 14px;
	--gbb-radius: 24px;
	--gbb-radius-lg: 32px;
	--gbb-ease: cubic-bezier(.22, 1, .36, 1);
	--gbb-font: "GBB Inter", Inter, "Helvetica Neue", Arial, sans-serif;
	--wd-text-font:var(--gbb-font);
	--wd-title-font:var(--gbb-font);
	--wd-entities-title-font:var(--gbb-font);
	--wd-widget-title-font:var(--gbb-font);
	--wd-header-el-font:var(--gbb-font);
}

html { scroll-behavior: smooth; font-family:var(--gbb-font); font-synthesis:none; text-rendering:optimizeLegibility; }
body {
	background: var(--gbb-white);
	color: var(--gbb-ink);
	font-family: var(--gbb-font) !important;
	font-size: 16px;
	font-weight:450;
	line-height:1.55;
	letter-spacing:-.012em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing:grayscale;
}

body :is(a, button, input, select, textarea, summary) { outline-offset: 4px; }
body :focus-visible { outline: 2px solid var(--gbb-red); }

/* Header: one stable, opaque surface at every breakpoint. */
.whb-header :is(.whb-top-bar, .whb-general-header, .whb-header-bottom) {
	border: 0 !important;
	background: #111 !important;
}
.whb-header .whb-top-bar { border-bottom: 1px solid rgba(255,255,255,.12) !important; }
.whb-header .whb-header-bottom { border-top: 1px solid rgba(255,255,255,.12) !important; }
.whb-header :is(.wd-nav > li > a, .wd-header-text, .wd-tools-element > a, .wd-tools-icon, .wd-tools-text) {
	color: #fff !important;
}
.whb-header .wd-nav > li > a {
	font-size: 12px;
	font-weight: 650;
	letter-spacing: .01em;
	text-transform: none;
}
.whb-header .wd-nav > li > a:hover { color: #ff5360 !important; }
.whb-header .container { width: min(100% - 48px, 1500px); max-width: 1500px; }
.whb-header .wd-search-form form,
.whb-header .searchform {
	overflow: hidden;
	border: 0 !important;
	border-radius: 999px !important;
	background: #292929 !important;
}
.whb-header .searchform :is(input, .s) {
	border: 0 !important;
	background: transparent !important;
	color: #fff !important;
}
.whb-header .searchform :is(input, .s)::placeholder { color: rgba(255,255,255,.62); }
.whb-header .searchform :is(input, .s) { transition:opacity .15s ease; }
.whb-header .searchform :is(input, .s).gbb-placeholder-changing { opacity:.28; }
.whb-header .wd-tools-count { background: var(--gbb-red) !important; }
.whb-top-bar .wd-header-text { gap: 30px; }
.gbb-age-notice__delivery { margin-left: 0; }

@media (min-width: 1025px) and (max-width: 1366px) {
	.whb-header .whb-visible-lg { display: flex !important; }
	.whb-header .whb-hidden-lg { display: none !important; }
	.whb-header .whb-header-bottom { display: block !important; }
}

/* Home canvas. */
.home .main-page-wrapper { padding-top: 0 !important; }
.home .wd-content-layout,
.home .site-content,
.home .entry-content { margin: 0; padding: 0; }
.gbb-home {
	width: min(100% - 48px, 1500px);
	max-width: 1500px;
	margin: 0 auto;
	padding: 24px 0 clamp(72px, 9vw, 136px);
}
.gbb-home :is(h1, h2, h3, p) { margin-top: 0; }
.gbb-home__eyebrow {
	margin: 0 0 14px;
	color: var(--gbb-red);
	font-size: 11px;
	font-weight: 750;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.gbb-home-hero {
	display: grid;
	min-height: clamp(540px, 53vw, 720px);
	grid-template-columns: minmax(0, 47%) minmax(0, 53%);
	overflow: hidden;
	border: 0 !important;
	border-radius: var(--gbb-radius-lg);
	background: #f2eee7;
	color: var(--gbb-ink);
}
.gbb-home-hero::after { display: none !important; }
.gbb-home-hero__copy {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: clamp(44px, 6vw, 92px);
}
.gbb-home-hero h1 {
	max-width: 680px;
	margin: 0;
	color: var(--gbb-ink);
	font-size: clamp(50px, 4.6vw, 74px);
	font-weight: 650;
	letter-spacing: -.066em;
	line-height: .91;
	text-transform: none;
}
.gbb-home-hero h1 em {
	display: inline-block;
	color: var(--gbb-red);
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
	letter-spacing: -.055em;
	font-size: .83em;
}
.gbb-home-hero__lead {
	max-width: 590px;
	margin: 30px 0 0;
	padding: 0 !important;
	border: 0 !important;
	color: #4e4c48;
	font-size: clamp(16px, 1.45vw, 21px);
	line-height: 1.48;
}
.gbb-home-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 36px; }
.gbb-home-button {
	display: inline-flex;
	min-height: 54px;
	align-items: center;
	justify-content: center;
	gap: 22px;
	padding: 0 25px;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	font-size: 12px;
	font-weight: 750;
	letter-spacing: .025em;
	text-transform: none;
	transition: transform .38s var(--gbb-ease), background-color .25s ease, color .25s ease !important;
}
.gbb-home-button:hover { transform: translateY(-3px) !important; }
.gbb-home-button--red { background: var(--gbb-red) !important; color: #fff !important; }
.gbb-home-button--red:hover { background: #bd0010 !important; }
.gbb-home-button--line { background: #fff !important; color: var(--gbb-ink) !important; }
.gbb-home-button--line:hover { background: var(--gbb-ink) !important; color: #fff !important; }
.gbb-home-hero__visual {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	padding: 28px;
	background: url("images/gbb-hero-2030-v1.webp") center / cover no-repeat;
}
.gbb-home-hero__visual span {
	padding: 10px 14px;
	border-radius: 999px;
	background: rgba(255,255,255,.78);
	color: var(--gbb-ink);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	backdrop-filter: blur(12px);
}
.gbb-home-hero__signal { display: none !important; }

.gbb-home-section { padding: clamp(72px, 8vw, 122px) 0 0; border: 0 !important; }
.gbb-home-section__heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: clamp(28px, 4vw, 52px);
}
.gbb-home-section__heading h2 {
	margin: 0;
	color: var(--gbb-ink);
	font-size: clamp(34px, 4vw, 58px);
	font-weight: 600;
	letter-spacing: -.055em;
	line-height: .96;
	text-transform: none;
}
.gbb-home-section__heading > a {
	display: inline-flex;
	align-items: center;
	gap: 18px;
	padding: 13px 18px;
	border: 0;
	border-radius: 999px;
	background: var(--gbb-paper);
	color: var(--gbb-ink);
	font-size: 12px;
	font-weight: 700;
	text-decoration: none !important;
	transition: background-color .25s ease, color .25s ease, transform .35s var(--gbb-ease);
}
.gbb-home-section__heading > a:hover { background: var(--gbb-ink); color: #fff; transform: translateX(0); }

.gbb-home-categories__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}
.gbb-home-category {
	position: relative;
	display: flex;
	min-height: 280px;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	overflow: hidden;
	padding: 24px;
	border: 0 !important;
	border-radius: var(--gbb-radius) !important;
	background: var(--gbb-paper);
	color: var(--gbb-ink);
	text-align: left;
	text-decoration: none !important;
	transform: translateZ(0);
	transition: transform .55s var(--gbb-ease), box-shadow .55s var(--gbb-ease) !important;
}
.gbb-home-category::after { display: none !important; }
.gbb-home-category:hover {
	color: var(--gbb-ink);
	box-shadow: 0 24px 54px rgba(21,18,15,.1);
	transform: translateY(-8px) !important;
}
.gbb-home-category__number { position: relative; z-index: 2; color: rgba(23,23,23,.48); font-size: 11px; font-weight: 700; }
.gbb-home-category__body { position: relative; z-index: 2; display: flex; max-width: 76%; flex-direction: column; gap: 7px; }
.gbb-home-category__body strong { font-size: clamp(22px, 2.1vw, 32px); font-weight: 650; letter-spacing: -.04em; line-height: 1; }
.gbb-home-category__body small { color: rgba(23,23,23,.62); font-size: 12px; line-height: 1.35; }
.gbb-home-category__arrow {
	position: absolute;
	z-index: 3;
	top: 18px;
	right: 18px;
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 50%;
	background: rgba(255,255,255,.75);
	font-size: 17px;
	transition: transform .45s var(--gbb-ease), background-color .25s ease !important;
}
.gbb-home-category:hover .gbb-home-category__arrow { background: #fff; color: var(--gbb-red); transform: rotate(12deg) !important; }
.gbb-home-category__art {
	position: absolute;
	top: 28px;
	right: 15%;
	width: 74px;
	height: 164px;
	border-radius: 38px 38px 18px 18px;
	background: linear-gradient(155deg, rgba(255,255,255,.82), rgba(0,0,0,.16));
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.4), 0 18px 35px rgba(0,0,0,.11);
	transform: rotate(10deg);
	transition: transform .6s var(--gbb-ease);
}
.gbb-home-category__art::before { position:absolute; top:-26px; left:22px; width:30px; height:42px; border-radius:8px 8px 2px 2px; background:inherit; content:""; }
.gbb-home-category:hover .gbb-home-category__art { transform: translateY(-7px) rotate(4deg) scale(1.04); }
.gbb-home-category--wine { background: #e9d9d8; }
.gbb-home-category--wine .gbb-home-category__art { background: linear-gradient(155deg,#782532,#1a0b0f); }
.gbb-home-category--spirits { background: #ddd9cf; }
.gbb-home-category--spirits .gbb-home-category__art { width:86px; height:145px; background: linear-gradient(155deg,#d49b43,#34200f); }
.gbb-home-category--soft { background: #dfe8e5; }
.gbb-home-category--soft .gbb-home-category__art { width:68px; background: linear-gradient(155deg,#d7f3ec,#4e8376); }
.gbb-home-category--tea { background: #e8e0cd; }
.gbb-home-category--tea .gbb-home-category__art { top:65px; width:120px; height:90px; border-radius:12px 12px 45px 45px; background:linear-gradient(155deg,#806e47,#2a2419); }
.gbb-home-category--tea .gbb-home-category__art::before { display:none; }
.gbb-home-category--tools { background: #dedede; }
.gbb-home-category--tools .gbb-home-category__art { top:72px; width:124px; height:72px; border-radius:50%; background:linear-gradient(155deg,#fafafa,#919191); }
.gbb-home-category--tools .gbb-home-category__art::before { top:17px; left:auto; right:-28px; width:42px; height:26px; border:10px solid #999; border-left:0; border-radius:0 18px 18px 0; background:transparent; }
.gbb-home-category--gifts { background: #181818; color:#fff; }
.gbb-home-category--gifts:hover { color:#fff; }
.gbb-home-category--gifts .gbb-home-category__number,
.gbb-home-category--gifts .gbb-home-category__body small { color:rgba(255,255,255,.58); }
.gbb-home-category--gifts .gbb-home-category__art { top:56px; width:118px; height:102px; border-radius:12px; background:#e30613; }
.gbb-home-category--gifts .gbb-home-category__art::before { top:45px; left:-16px; width:150px; height:10px; border-radius:0; background:#fff; }

/* Product shelves: no frames, one visual rhythm. */
.gbb-home-products__grid .products { gap: clamp(16px, 2vw, 28px) !important; }
.gbb-home-products__grid .product-grid-item,
.gbb-home-products__grid .wd-product-wrapper { min-width: 0; }
.gbb-home-products__grid .product-grid-item .product-wrapper,
.gbb-home-products__grid .product-grid-item:hover .product-wrapper,
.woodmart-archive-shop .product-grid-item .product-wrapper,
.woodmart-archive-shop .product-grid-item:hover .product-wrapper {
	min-height: 540px;
	overflow: visible;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	transform: none !important;
}
.gbb-home-products__grid .wd-product-thumb,
.woodmart-archive-shop .product-grid-item .wd-product-thumb {
	height: 340px;
	overflow: hidden;
	border: 0;
	border-radius: var(--gbb-radius);
	background: var(--gbb-paper);
}
.gbb-home-products__grid .wd-product-img-link,
.woodmart-archive-shop .product-grid-item .wd-product-img-link { height: 100%; }
.gbb-home-products__grid .wd-product-img-link img,
.woodmart-archive-shop .product-grid-item .wd-product-img-link img {
	width:100%; height:100%; padding:24px; object-fit:contain;
	transition: transform .6s var(--gbb-ease) !important;
}
.gbb-home-products__grid .product-grid-item:hover .wd-product-img-link img,
.woodmart-archive-shop .product-grid-item:hover .wd-product-img-link img { transform: scale(1.045) !important; }
.gbb-home-products__grid .product-information { padding: 16px 3px 0 !important; }
.gbb-home-products__grid .wd-product-cats,
.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .wd-product-cats { min-height:18px; margin:16px 3px 7px !important; order:-1; }
.gbb-home-products__grid .wd-product-cats a,
.woodmart-archive-shop .wd-product-cats a { color: var(--gbb-muted) !important; font-size:10px; font-weight:700; letter-spacing:.06em; }
.gbb-home-products__grid .wd-entities-title,
.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .wd-entities-title {
	display:-webkit-box; min-height:calc(1.38em * 3); margin:0 3px !important; overflow:hidden;
	color:var(--gbb-ink); font-size:15px; font-weight:600; letter-spacing:-.02em; line-height:1.38;
	-webkit-box-orient:vertical; -webkit-line-clamp:3;
}
.gbb-home-products__grid .price,
.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .price { margin:auto 3px 0 !important; padding-top:16px; color:var(--gbb-ink) !important; font-size:17px; font-weight:750; }
.gbb-home-products__grid .wd-add-btn,
.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .wd-add-btn { margin:14px 3px 0 !important; }
.gbb-home-products__grid .wd-add-btn .button,
.woodmart-archive-shop .product-grid-item .wd-add-btn .button {
	min-height:44px; padding:0 19px; border:0 !important; border-radius:999px !important;
	background:var(--gbb-ink) !important; color:#fff !important; box-shadow:none !important;
	font-size:11px; font-weight:700; text-transform:none;
	transition:background-color .25s ease, transform .35s var(--gbb-ease) !important;
}
.gbb-home-products__grid .wd-add-btn .button:hover,
.woodmart-archive-shop .product-grid-item .wd-add-btn .button:hover { background:var(--gbb-red) !important; transform:translateY(-2px); }
.gbb-stock-note { margin-inline:3px !important; }

.gbb-home-editorial {
	display:grid;
	grid-template-columns:1.22fr .78fr;
	gap:16px;
	padding-top:clamp(70px,9vw,132px);
}
.gbb-home-editorial--launch { grid-template-columns:1fr; }
.gbb-home-story {
	position:relative;
	display:flex;
	min-height:520px;
	flex-direction:column;
	align-items:flex-start;
	justify-content:flex-end;
	overflow:hidden;
	padding:clamp(30px,4vw,62px);
	border:0 !important;
	border-radius:var(--gbb-radius-lg);
	color:#fff !important;
	text-decoration:none !important;
	transition:transform .55s var(--gbb-ease), box-shadow .55s var(--gbb-ease);
}
.gbb-home-story:hover { box-shadow:0 26px 64px rgba(0,0,0,.14); transform:translateY(-7px); }
.gbb-home-story::before { position:absolute; inset:auto -8% -33% auto; width:430px; aspect-ratio:1; border-radius:50%; background:rgba(255,255,255,.11); box-shadow:0 0 0 52px rgba(255,255,255,.06),0 0 0 104px rgba(255,255,255,.035); content:""; transition:transform .8s var(--gbb-ease); }
.gbb-home-story:hover::before { transform:scale(1.08) translate(-10px,-10px); }
.gbb-home-story > * { position:relative; z-index:1; }
.gbb-home-story--cocktails { background:var(--gbb-red); }
.gbb-home-story--gifts { background:#181818; }
.gbb-home-story .gbb-home__eyebrow { color:rgba(255,255,255,.72); }
.gbb-home-story strong { max-width:760px; margin-top:8px; color:#fff; font-size:clamp(38px,5.2vw,76px); font-weight:600; letter-spacing:-.06em; line-height:.94; }
.gbb-home-story small { max-width:570px; margin-top:24px; color:rgba(255,255,255,.76); font-size:15px; line-height:1.5; }
.gbb-home-story b { margin-top:30px; padding:12px 17px; border-radius:999px; background:#fff; color:var(--gbb-ink); font-size:11px; }
.gbb-home-editorial--gifts { grid-template-columns:minmax(0,1fr); }
.gbb-gift-feature {
	display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); align-items:stretch;
	gap:clamp(22px,3vw,46px); overflow:hidden; padding:clamp(26px,3.5vw,48px);
	border-radius:30px; background:#f3f0ea; color:var(--gbb-ink);
}
.gbb-gift-feature__intro { display:flex; min-width:0; flex-direction:column; align-items:flex-start; justify-content:center; }
.gbb-gift-feature__intro .gbb-home__eyebrow { margin:0 0 16px; color:var(--gbb-red); }
.gbb-gift-feature__intro h2 { max-width:520px; margin:0; color:var(--gbb-ink); font-size:clamp(38px,3.5vw,56px); font-weight:650; letter-spacing:-.06em; line-height:1.02; }
.gbb-gift-feature__intro p { max-width:490px; margin:20px 0 0; color:#5f5c57; font-size:16px; line-height:1.5; }
.gbb-gift-feature__all {
	display:inline-flex; min-height:48px; align-items:center; justify-content:center; gap:18px;
	margin-top:28px; padding:11px 21px; border-radius:999px; background:var(--gbb-red);
	color:#fff !important; font-size:14px; font-weight:700; text-decoration:none !important;
	transition:background-color .2s ease,transform .2s ease;
}
.gbb-gift-feature__all:hover { background:#b80010; transform:translateY(-2px); }
.gbb-gift-feature__all:focus-visible,.gbb-gift-product:focus-visible { outline:3px solid var(--gbb-red); outline-offset:3px; }
.gbb-gift-feature__products { display:grid; min-width:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.gbb-gift-product {
	position:relative; display:flex; min-width:0; flex-direction:column; overflow:hidden; padding:16px;
	border-radius:22px; background:#fff; color:var(--gbb-ink) !important; text-decoration:none !important;
	transition:transform .2s ease,box-shadow .2s ease;
}
.gbb-gift-product:hover { transform:translateY(-3px); box-shadow:0 14px 30px rgba(36,31,26,.08); }
.gbb-gift-product__media { display:grid; height:205px; place-items:center; overflow:hidden; background:#fff; }
.gbb-gift-product__image { display:block; width:100%; max-width:100%; height:100%; max-height:205px; object-fit:contain; }
.gbb-gift-product__details { display:flex; min-height:114px; flex:1; flex-direction:column; align-items:flex-start; padding-top:12px; }
.gbb-gift-product__details small { margin-bottom:7px; color:#8b7771; font-size:11px; font-weight:700; letter-spacing:.03em; }
.gbb-gift-product__details strong { display:-webkit-box; overflow:hidden; color:var(--gbb-ink); font-size:15px; font-weight:650; line-height:1.3; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.gbb-gift-product__price { margin-top:auto; padding-top:12px; color:var(--gbb-ink); font-size:19px; font-weight:750; white-space:nowrap; }
.gbb-gift-product__price :is(.amount,.woocommerce-Price-currencySymbol) { color:inherit; font:inherit; }
.gbb-gift-product__arrow { position:absolute; top:15px; right:17px; color:var(--gbb-red); font-size:18px; line-height:1; }
.gbb-gift-path .gbb-gift-product__details { min-height:68px; }
.gbb-home-products--second { padding-top:clamp(72px,9vw,132px); }

@media (max-width:1100px) {
	.gbb-gift-feature { grid-template-columns:minmax(0,1fr); }
	.gbb-gift-feature__intro h2 { max-width:720px; }
	.gbb-gift-feature__intro p { max-width:720px; }
}
@media (max-width:767px) {
	.gbb-gift-feature { gap:22px; padding:22px 18px; border-radius:24px; }
	.gbb-gift-feature__intro .gbb-home__eyebrow { margin-bottom:12px; }
	.gbb-gift-feature__intro h2 { font-size:clamp(32px,9vw,40px); }
	.gbb-gift-feature__intro p { margin-top:12px; font-size:14px; line-height:1.5; }
	.gbb-gift-feature__all { width:100%; margin-top:20px; }
	.gbb-gift-feature__products { grid-template-columns:minmax(0,1fr); gap:10px; }
	.gbb-gift-product { display:grid; grid-template-columns:96px minmax(0,1fr); gap:12px; min-height:126px; padding:10px 14px 10px 10px; border-radius:17px; }
	.gbb-gift-product__media { width:96px; height:106px; }
	.gbb-gift-product__image { max-height:106px; }
	.gbb-gift-product__details { min-height:106px; padding-top:4px; }
	.gbb-gift-product__details small { max-width:calc(100% - 18px); margin-bottom:6px; font-size:10px; }
	.gbb-gift-product__details strong { font-size:13px; }
	.gbb-gift-product__price { padding-top:7px; font-size:16px; }
	.gbb-gift-product__arrow { top:12px; right:11px; font-size:15px; }
}
@media (prefers-reduced-motion:reduce) {
	.gbb-gift-feature__all,.gbb-gift-product { transition:none; }
	.gbb-gift-feature__all:hover,.gbb-gift-product:hover { transform:none; }
}

.gbb-home-service {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:12px;
	margin-top:clamp(72px,9vw,132px);
	border:0 !important;
	background:transparent !important;
}
.gbb-home-service > div {
	display:flex; min-height:220px; flex-direction:column; padding:26px; border:0 !important; border-radius:var(--gbb-radius);
	background:var(--gbb-paper); color:var(--gbb-ink); transition:background-color .35s ease, transform .45s var(--gbb-ease) !important;
}
.gbb-home-service > div:hover { background:var(--gbb-mist) !important; color:var(--gbb-ink); transform:translateY(-5px); }
.gbb-home-service i { display:block; margin-bottom:48px; color:var(--gbb-red); font-size:12px; font-style:normal; font-weight:750; }
.gbb-home-service strong { display:block; margin-bottom:10px; color:var(--gbb-ink) !important; font-size:20px; font-weight:650; letter-spacing:-.035em; }
.gbb-home-service span { color:var(--gbb-muted); font-size:13px; line-height:1.45; }

/* Catalogue. */
.wd-page-title {
	--wd-title-color:var(--gbb-ink);
	--wd-text-color:var(--gbb-ink);
	--wd-link-color:var(--gbb-ink);
	--wd-link-color-hover:var(--gbb-red);
	border:0 !important;
	background:var(--gbb-paper) !important;
	color:var(--gbb-ink) !important;
}
.wd-page-title :is(h1,.title,.breadcrumbs,.breadcrumbs a,.breadcrumb-link-last,.wd-last) { color:var(--gbb-ink) !important; }
.wd-page-title .breadcrumbs,
.wd-page-title .breadcrumbs :is(a,span,.breadcrumb-link-last,.wd-last) { color:var(--gbb-ink) !important; opacity:.68; }
.wd-page-title :is(h1,.title) { font-size:clamp(36px,5vw,68px); font-weight:600; letter-spacing:-.06em; text-transform:none; }
.woodmart-archive-shop .site-content { padding-top:clamp(28px,4vw,56px); }
.gbb-catalog-shortcuts { margin:0 0 32px; padding:0; border:0 !important; }
.gbb-catalog-shortcuts__links { gap:8px; }
.gbb-catalog-shortcuts a { min-height:38px; padding:0 15px; border:0 !important; border-radius:999px; background:var(--gbb-paper); color:var(--gbb-ink); text-transform:none; }
.gbb-catalog-shortcuts a:hover { background:var(--gbb-ink); color:#fff; }
.gbb-catalog-layout { grid-template-columns:minmax(220px,280px) minmax(0,1fr) !important; gap:clamp(30px,4vw,64px) !important; }
.woodmart-archive-shop .gbb-catalog-filters { border:0 !important; border-radius:0 !important; background:#fff !important; box-shadow:none !important; overflow:visible; }
.woodmart-archive-shop .gbb-catalog-filters__heading { padding:0 0 24px; border:0; background:#fff !important; color:var(--gbb-ink); }
.woodmart-archive-shop .gbb-catalog-filters__heading::after { display:none; }
.woodmart-archive-shop .gbb-catalog-filters__heading :is(h2,p) { color:var(--gbb-ink) !important; }
.woodmart-archive-shop .gbb-catalog-filters__heading h2 { font-size:25px; font-weight:600; letter-spacing:-.04em; text-transform:none; }
.woodmart-archive-shop .gbb-catalog-filters__heading p { color:var(--gbb-muted) !important; font-size:12px; }
.woodmart-archive-shop .gbb-catalog-filters__quick { margin:0 0 8px; padding:18px; border:0; border-radius:var(--gbb-radius-sm); background:var(--gbb-paper); }
.woodmart-archive-shop .gbb-catalog-filters__group { border:0; border-bottom:1px solid #e7e6e2; border-radius:0; }
.woodmart-archive-shop .gbb-catalog-filters__group summary { padding:18px 2px; font-size:13px; text-transform:none; }
.woodmart-archive-shop .gbb-catalog-filters__options { padding:0 0 16px; }
.woodmart-archive-shop .gbb-catalog-filters__options label { border-radius:10px; }
.woodmart-archive-shop .gbb-catalog-filters__submit.button { width:100%; min-height:46px; border:0 !important; border-radius:999px !important; background:var(--gbb-ink) !important; box-shadow:none !important; text-transform:none; }
.woodmart-archive-shop .gbb-catalog-filters__submit.button:hover { background:var(--gbb-red) !important; }
.woodmart-archive-shop .shop-loop-head { margin-bottom:30px; padding:0 0 16px; border:0 !important; border-bottom:1px solid #e6e5e1 !important; }
.woodmart-archive-shop .woocommerce-ordering .orderby { border:0 !important; border-radius:999px; background-color:var(--gbb-paper); }

/* Account, cart and checkout: remove the accumulated hard frames. */
.woocommerce-account .wd-page-content { background:#fff; }
.woocommerce-account .woocommerce { width:min(100% - 48px,1240px); padding-top:clamp(38px,6vw,80px); }
.woocommerce-account .wd-registration-page { width:100%; max-width:1120px; }
.woocommerce-account .wd-registration-page .wd-grid-f-col { display:grid !important; grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr) !important; gap:16px !important; align-items:stretch; }
.woocommerce-account .wd-registration-page .wd-col { width:auto !important; min-width:0 !important; max-width:none !important; margin:0 !important; }
.woocommerce-account :is(.woocommerce-form-login,.woocommerce-form-register),
.woocommerce-account .wd-registration-page .col-register-text,
.woocommerce-account .woocommerce-MyAccount-content {
	margin:0 !important; padding:clamp(30px,5vw,64px) !important; border:0 !important;
	border-radius:var(--gbb-radius-lg) !important; box-shadow:none !important;
}
.woocommerce-account :is(.woocommerce-form-login,.woocommerce-form-register) { background:var(--gbb-paper) !important; }
.woocommerce-account .wd-registration-page .col-register-text { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; background:var(--gbb-ink) !important; color:#fff; }
.woocommerce-account .wd-login-title { margin-bottom:30px; padding:0; border:0 !important; color:var(--gbb-ink); font-size:clamp(32px,4vw,54px); font-weight:600; letter-spacing:-.055em; text-transform:none; }
.woocommerce-account .wd-login-title::after { display:none; }
.woocommerce-account .col-register-text .wd-login-title { color:#fff !important; }
.woocommerce-account .form-row { margin-bottom:18px; }
.woocommerce-account .form-row > label { margin-bottom:7px; font-size:12px; font-weight:650; letter-spacing:0; }
.woocommerce-account :is(input[type=text],input[type=email],input[type=password],input[type=tel],select,textarea) {
	min-height:52px; padding-inline:18px; border:1px solid transparent !important; border-radius:14px !important;
	background:#fff !important; box-shadow:none !important; transition:border-color .2s ease,box-shadow .2s ease;
}
.woocommerce-account :is(input[type=text],input[type=email],input[type=password],input[type=tel],select,textarea):focus { border-color:var(--gbb-red) !important; box-shadow:0 0 0 3px rgba(227,6,19,.12) !important; }
.woocommerce-account :is(.button,button.button,.wd-switch-to-register) {
	min-height:50px; padding:0 22px; border:0 !important; border-radius:999px !important; background:var(--gbb-ink) !important; color:#fff !important; box-shadow:none !important; text-transform:none; transition:transform .35s var(--gbb-ease),background-color .2s ease !important;
}
.woocommerce-account :is(.button,button.button,.wd-switch-to-register):hover { background:var(--gbb-red) !important; transform:translateY(-2px); }
.woocommerce-account .col-register-text .wd-switch-to-register { background:var(--gbb-red) !important; }
.woocommerce-account .woocommerce-MyAccount-navigation { overflow:hidden; border:0 !important; border-radius:var(--gbb-radius); background:var(--gbb-ink); }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom:1px solid rgba(255,255,255,.1); }
.woocommerce-account .woocommerce-MyAccount-navigation a { padding:16px 20px; font-size:12px; text-transform:none; }
.woocommerce-account .woocommerce-MyAccount-content { min-width:0; background:var(--gbb-paper); }
.woocommerce-cart :is(.wc-block-components-sidebar,.wc-block-cart__main),
.woocommerce-checkout :is(.wc-block-components-sidebar,.wc-block-components-main,.wc-block-components-checkout-step) { border:0 !important; border-radius:var(--gbb-radius) !important; box-shadow:none !important; }
.woocommerce-cart .wd-page-title .wd-checkout-steps,
.woocommerce-checkout .wd-page-title .wd-checkout-steps { color:var(--gbb-ink) !important; font-size:clamp(15px,1.7vw,21px); text-transform:none; }
.woocommerce-cart .wd-page-title .wd-checkout-steps :is(a,span),
.woocommerce-checkout .wd-page-title .wd-checkout-steps :is(a,span) { color:var(--gbb-ink) !important; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
	max-width:1220px;
	margin:clamp(38px,6vw,84px) auto;
	padding:0;
	border:0 !important;
	border-radius:0;
	background:#fff;
	box-shadow:none;
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block :is(h2,p) { color:var(--gbb-ink); }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
	margin:0;
	padding:clamp(54px,8vw,104px) 24px;
	border-radius:var(--gbb-radius-lg);
	background:var(--gbb-paper);
	font-size:clamp(38px,5.5vw,72px);
	font-weight:600;
	letter-spacing:-.06em;
	line-height:.95;
	text-transform:none;
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-separator { display:none; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) {
	margin:clamp(66px,8vw,104px) 0 32px;
	color:var(--gbb-ink);
	font-size:clamp(30px,4vw,50px);
	font-weight:600;
	letter-spacing:-.055em;
	text-align:left;
	text-transform:none;
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products { gap:16px; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product {
	padding:0;
	border:0 !important;
	border-radius:0;
	background:transparent;
	box-shadow:none;
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover { border:0; box-shadow:none; transform:translateY(-5px); }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image {
	overflow:hidden;
	margin:0 0 16px;
	border:0 !important;
	border-radius:var(--gbb-radius);
	background:var(--gbb-paper);
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img { padding:18px; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block :is(.wc-block-grid__product-title,.wc-block-grid__product-price,.wc-block-grid__product-add-to-cart) { margin-inline:0; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title { min-height:2.7em; margin-top:0; color:var(--gbb-ink); font-size:14px; font-weight:600; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price { color:var(--gbb-ink); font-weight:700; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link {
	min-height:42px;
	border:0 !important;
	border-radius:999px;
	background:var(--gbb-ink);
	font-size:10px;
	text-transform:none;
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:hover { background:var(--gbb-red); }

/* Cocktail planner: airy cards instead of the former spreadsheet grid. */
.gbb-cocktail-planner {
	overflow:visible;
	border:0 !important;
	border-radius:0;
	background:transparent;
	box-shadow:none;
}
.gbb-cocktail-planner__intro {
	min-height:420px;
	margin-bottom:16px;
	padding:clamp(42px,6vw,82px) clamp(28px,7vw,96px);
	border:0 !important;
	border-radius:var(--gbb-radius-lg);
	background:var(--gbb-ink);
}
.gbb-cocktail-planner__intro h2 {
	max-width:760px;
	font-size:clamp(44px,6vw,82px);
	font-weight:600;
	letter-spacing:-.065em;
	line-height:.92;
	text-transform:none;
}
.gbb-cocktail-planner__intro > p:not(.gbb-cocktail-planner__eyebrow) { max-width:610px; color:rgba(255,255,255,.7); }
.gbb-cocktail-planner__recipes { gap:16px; }
.gbb-cocktail-planner__recipe,
.gbb-cocktail-planner__recipe:nth-child(2n),
.gbb-cocktail-planner__recipe:nth-child(3n) {
	min-height:430px;
	padding:30px;
	border:0 !important;
	border-radius:var(--gbb-radius);
	background:var(--gbb-paper);
	box-shadow:none;
}
.gbb-cocktail-planner__recipe legend {
	margin-bottom:20px;
	font-size:26px;
	font-weight:650;
	letter-spacing:-.045em;
	text-transform:none;
}
.gbb-cocktail-planner__description { color:var(--gbb-muted); }
.gbb-cocktail-planner__ingredients { border-top:0; }
.gbb-cocktail-planner__ingredients li { border-bottom:1px solid #e3e1dc; }
.gbb-cocktail-planner__servings {
	padding:14px;
	border:0;
	border-radius:16px;
	background:#fff;
}
.gbb-cocktail-planner__input {
	width:68px !important;
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-mist) !important;
}
.gbb-cocktail-planner__recipe:hover {
	background:var(--gbb-mist);
	box-shadow:none;
	transform:translateY(-5px);
}
.gbb-cocktail-planner__recipe::after { display:none; }
.gbb-cocktail-planner__action { padding:28px 0; background:transparent; }
.gbb-cocktail-planner__action button,
.gbb-cocktail-planner__result button,
.gbb-cocktail-planner__result > a {
	min-height:54px;
	padding-inline:28px;
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-red) !important;
	box-shadow:none;
	text-transform:none;
}
.gbb-cocktail-planner__action button:hover,
.gbb-cocktail-planner__result button:hover,
.gbb-cocktail-planner__result > a:hover { background:var(--gbb-ink) !important; color:#fff !important; }
.gbb-cocktail-planner__result:not(:empty) {
	margin-top:16px;
	padding:clamp(32px,5vw,64px);
	border:0 !important;
	border-radius:var(--gbb-radius-lg);
}

/* Product detail. */
.single-product-page .product-image-summary-wrap { padding:clamp(36px,5vw,78px) 0 clamp(62px,7vw,106px); }
.single-product-page .product-image-summary-inner { --wd-gap-lg:clamp(42px,6vw,90px) !important; align-items:center; }
.single-product-page .product-images {
	overflow:hidden; border:0 !important; border-radius:var(--gbb-radius-lg); background:var(--gbb-paper) !important;
}
.single-product-page .woocommerce-product-gallery__image--placeholder > a { padding:clamp(28px,5vw,72px); background:var(--gbb-paper) !important; }
.single-product-page .woocommerce-product-gallery__image--placeholder img { border-radius:18px; }
.single-product-page .summary-inner { justify-content:center; }
.single-product-page .single-breadcrumbs-wrapper { margin-bottom:clamp(24px,3vw,38px); padding:0; border:0 !important; }
.single-product-page .wd-breadcrumbs,
.single-product-page .wd-breadcrumbs a,
.single-product-page .wd-breadcrumbs .wd-last { color:var(--gbb-muted); font-size:10px; font-weight:650; letter-spacing:.045em; }
.single-product-page .product_title { margin-bottom:22px; color:var(--gbb-ink); font-size:clamp(38px,4.2vw,64px); font-weight:600; letter-spacing:-.06em; line-height:.98; }
.single-product-page .summary > .price,
.single-product-page .summary-inner > .price { margin-bottom:20px; color:var(--gbb-ink); font-size:clamp(27px,2.4vw,38px); font-weight:700; }
.single-product-page p.stock { margin-bottom:28px; padding:9px 13px; border:0 !important; border-radius:999px; background:#edf4e9; color:#31562b !important; font-size:10px; }
.single-product-page p.stock.in-stock::before { color:#4c8a42; }
.single-product-page p.stock.out-of-stock { background:#f8e8e8; color:#9b1520 !important; }
.single-product-page form.cart { display:flex; gap:10px; }
.single-product-page form.cart .quantity { overflow:hidden; border:0 !important; border-radius:999px; background:var(--gbb-paper); }
.single-product-page form.cart .quantity :is(.btn,input) { border:0 !important; background:transparent; }
.single-product-page form.cart .quantity .btn:hover { background:var(--gbb-mist); color:var(--gbb-ink); }
.single-product-page form.cart .single_add_to_cart_button { min-width:min(100%,300px); border:0 !important; border-radius:999px; background:var(--gbb-red); text-transform:none; box-shadow:none; }
.single-product-page form.cart .single_add_to_cart_button:hover { background:var(--gbb-ink); }
.gbb-product-age-notice { align-items:center; margin-top:18px; padding:15px; grid-template-columns:42px 1fr; border:0 !important; border-radius:var(--gbb-radius-sm); background:var(--gbb-paper); }
.gbb-product-age-notice strong { width:42px; min-height:42px; border-radius:50%; background:var(--gbb-red); color:#fff; font-size:14px; }
.gbb-product-age-notice p { padding:0 0 0 12px; color:var(--gbb-muted); font-size:11px; font-weight:600; }
.single-product-page .product_meta { margin-top:24px; padding-top:18px; border:0 !important; color:var(--gbb-muted); }
.single-product .product-tabs-wrapper { border:0 !important; background:var(--gbb-paper); }
.single-product .woocommerce-tabs .wd-nav-tabs-wrapper { border:0 !important; }
.single-product .woocommerce-tabs .wd-nav-tabs { gap:8px; padding-top:28px; }
.single-product .woocommerce-tabs .wd-nav-tabs > li > a { padding:12px 18px; border-radius:999px; background:#fff; font-size:11px; text-transform:none; }
.single-product .woocommerce-tabs .wd-nav-tabs > li.active > a,
.single-product .woocommerce-tabs .wd-nav-tabs > li:hover > a { background:var(--gbb-ink); color:#fff; }
.single-product .woocommerce-product-attributes { overflow:hidden; border:0 !important; border-radius:var(--gbb-radius-sm); border-collapse:separate; border-spacing:0; }
.single-product .woocommerce-product-attributes :is(th,td) { padding:15px 18px; border:0 !important; border-bottom:1px solid #e7e6e2 !important; background:#fff; font-size:12px; }
.single-product .woocommerce-product-attributes th { background:var(--gbb-mist); color:var(--gbb-ink); text-transform:none; }
.single-product .related-products .slider-title { font-weight:600; text-transform:none; }
.single-product .related-products .wd-product-wrapper { border:0 !important; background:transparent; }
.single-product .related-products .wd-product-thumb { overflow:hidden; border:0 !important; border-radius:var(--gbb-radius); background:var(--gbb-paper); }
.single-product .related-products .wd-add-btn .button { border:0 !important; border-radius:999px; background:var(--gbb-ink); text-transform:none; }

/* Footer belongs to the same frameless system. */
.gbb-footer { border:0 !important; }
.gbb-footer__age { padding-left:0; border:0 !important; }
.gbb-footer__bottom { border-top:1px solid rgba(255,255,255,.13); }

/* Deliberate, low-amplitude motion. */
.gbb-motion [data-gbb-reveal] { opacity:0; transform:translateY(28px); transition:opacity .75s var(--gbb-ease),transform .75s var(--gbb-ease); }
.gbb-motion [data-gbb-reveal].is-visible { opacity:1; transform:none; }

@media (max-width:1024px) {
	.gbb-home { width:min(100% - 32px,1500px); }
	.gbb-home-hero { min-height:620px; grid-template-columns:1fr 1fr; }
	.gbb-home-hero__copy { padding:42px; }
	.gbb-home-hero h1 { font-size:clamp(48px,7.2vw,72px); }
	.gbb-home-categories__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.gbb-home-editorial { grid-template-columns:1fr; }
	.gbb-home-story { min-height:440px; }
	.gbb-home-service { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.gbb-catalog-layout { grid-template-columns:1fr !important; }
	.woodmart-archive-shop .gbb-catalog-filters { padding:0 !important; }
	.woocommerce-account .wd-registration-page .wd-grid-f-col { grid-template-columns:1fr !important; }
}

@media (max-width:767px) {
	body .main-page-wrapper { padding-bottom:62px; }
	.whb-header .container { width:100%; padding-inline:14px !important; }
	.whb-top-bar .wd-header-text { justify-content:center; gap:8px; }
	.whb-header .whb-general-header-inner { height:62px !important; min-height:62px !important; max-height:62px !important; }
	.whb-header .whb-gbb_logo_mobile .wd-logo img { width:46px !important; height:46px !important; max-width:46px !important; max-height:46px !important; }
	.gbb-home { width:100%; padding:12px 12px 82px; }
	.gbb-home-hero { min-height:0; grid-template-columns:1fr; border-radius:22px; }
	.gbb-home-hero__copy { min-height:480px; padding:34px 24px; }
	.gbb-home-hero h1 { font-size:clamp(43px,13vw,62px); }
	.gbb-home-hero__lead { margin-top:22px; font-size:15px; }
	.gbb-home-hero__actions { width:100%; margin-top:28px; }
	.gbb-home-button { width:100%; min-height:50px; }
	.gbb-home-hero__visual { min-height:330px; padding:16px; background-position:66% center; }
	.gbb-home-section { padding-top:74px; }
	.gbb-home-section__heading { align-items:flex-start; }
	.gbb-home-section__heading h2 { font-size:36px; }
	.gbb-home-section__heading > a { flex:0 0 auto; padding:11px 13px; font-size:10px; }
	.gbb-home-categories__grid { display:flex; margin-right:-12px; padding-right:12px; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
	.gbb-home-categories__grid::-webkit-scrollbar { display:none; }
	.gbb-home-category { min-width:78vw; min-height:250px; scroll-snap-align:start; }
	.gbb-home-products__grid .products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px 10px !important; }
	.gbb-home-products__grid .product-grid-item .product-wrapper,
	.woodmart-archive-shop .product-grid-item .product-wrapper { min-height:410px; }
	.gbb-home-products__grid .wd-product-thumb,
	.woodmart-archive-shop .product-grid-item .wd-product-thumb { height:220px; border-radius:16px; }
	.gbb-home-products__grid .wd-product-img-link img,
	.woodmart-archive-shop .product-grid-item .wd-product-img-link img { padding:12px; }
	.gbb-home-products__grid .wd-entities-title,
	.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .wd-entities-title { min-height:calc(1.35em * 3); font-size:12px; }
	.gbb-home-products__grid .price,
	.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .price { font-size:14px; }
	.gbb-home-products__grid .wd-add-btn .button,
	.woodmart-archive-shop .product-grid-item .wd-add-btn .button { width:100%; min-height:40px; padding:0 8px; font-size:9px; }
	.gbb-home-editorial { padding-top:76px; }
	.gbb-home-story { min-height:420px; padding:28px 24px; border-radius:22px; }
	.gbb-home-story strong { font-size:42px; }
	.gbb-home-service { grid-template-columns:1fr; margin-top:76px; }
	.gbb-home-service > div { min-height:190px; }
	.wd-page-title :is(h1,.title) { font-size:40px; }
	.gbb-catalog-shortcuts { display:block; }
	.gbb-catalog-shortcuts__label { display:block; margin-bottom:12px; }
	.gbb-catalog-shortcuts__links { flex-wrap:nowrap; justify-content:flex-start; margin-right:-16px; padding-right:16px; overflow-x:auto; scrollbar-width:none; }
	.woocommerce-account .woocommerce { width:calc(100% - 24px); padding-inline:0 !important; }
	.woocommerce-account :is(.woocommerce-form-login,.woocommerce-form-register),
	.woocommerce-account .wd-registration-page .col-register-text,
	.woocommerce-account .woocommerce-MyAccount-content { padding:28px 20px !important; border-radius:22px !important; }
	.woocommerce-account .wd-login-title { font-size:36px; }
	.woocommerce-account .woocommerce-MyAccount-navigation { border-radius:18px; }
	.gbb-cocktail-planner__intro { min-height:390px; margin-bottom:12px; padding:38px 24px; border-radius:22px; }
	.gbb-cocktail-planner__intro h2 { font-size:42px; }
	.gbb-cocktail-planner__recipes { gap:12px; }
	.gbb-cocktail-planner__recipe,
	.gbb-cocktail-planner__recipe:nth-child(2n),
	.gbb-cocktail-planner__recipe:nth-child(3n) { min-height:0; padding:24px 20px; border-radius:20px; }
	.gbb-cocktail-planner__action { padding:20px 0; }
}

@media (prefers-reduced-motion:reduce) {
	html { scroll-behavior:auto; }
	*, *::before, *::after { scroll-behavior:auto !important; transition-duration:.001ms !important; animation-duration:.001ms !important; }
	.gbb-motion [data-gbb-reveal] { opacity:1; transform:none; }
}

/* -------------------------------------------------------------------------
 * Completion pass — every storefront template uses the same soft system.
 * ---------------------------------------------------------------------- */
.gbb-home-hero__copy,
.gbb-home-categories__grid { border:0 !important; }

.wd-page-title .wd-breadcrumbs,
.wd-page-title .wd-breadcrumbs :is(a,span,.wd-last) { color:var(--gbb-ink) !important; }
.wd-page-title .wd-breadcrumbs a { opacity:.55; }
.wd-page-title .wd-breadcrumbs a:hover { color:var(--gbb-red) !important; opacity:1; }

/* Catalogue, search results and empty taxonomies. */
.woodmart-archive-shop .gbb-catalog-filters__groups { display:grid; gap:8px; border:0 !important; }
.woodmart-archive-shop .gbb-catalog-filters__group {
	overflow:hidden;
	border:0 !important;
	border-radius:14px;
	background:var(--gbb-paper);
}
.woodmart-archive-shop .gbb-catalog-filters__group summary { padding:16px 18px; }
.woodmart-archive-shop .gbb-catalog-filters__options { padding:0 18px 17px; }
.woodmart-archive-shop .shop-loop-head { border:0 !important; }
.woodmart-archive-shop .gbb-stock-note {
	border:0 !important;
	border-radius:999px;
	background:var(--gbb-paper);
	color:var(--gbb-muted);
}
.product-label.out-of-stock {
	border:0 !important;
	border-radius:999px !important;
	background:#fff !important;
	color:var(--gbb-ink) !important;
	box-shadow:none !important;
	font-size:0 !important;
}
.product-label.out-of-stock::after { content:"Нет в наличии"; font-size:9px; }
.woocommerce-no-products-found .woocommerce-info,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error,
.wc-block-components-notice-banner {
	border:0 !important;
	border-radius:18px !important;
	background:var(--gbb-paper) !important;
	box-shadow:none !important;
}
.woocommerce-no-products-found .woocommerce-info { padding:22px 24px 22px 60px !important; }
.woocommerce-no-products-found .searchform,
.error404 .searchform {
	overflow:hidden;
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-paper) !important;
	box-shadow:none !important;
}
.woocommerce-no-products-found .searchform input,
.error404 .searchform input { border:0 !important; background:transparent !important; }

/* Product information is grouped by tone, not by table lines. */
.single-product .woocommerce-product-attributes { overflow:visible; border:0 !important; border-collapse:separate; border-spacing:0 7px; }
.single-product .woocommerce-product-attributes tr,
.single-product .woocommerce-product-attributes :is(th,td) { border:0 !important; }
.single-product .woocommerce-product-attributes th { border-radius:13px 0 0 13px; background:var(--gbb-mist); }
.single-product .woocommerce-product-attributes td { border-radius:0 13px 13px 0; background:#fff; }
.single-product .related-products :is(.button,.add-to-cart-loop) { box-shadow:none !important; }

/* Cocktail ingredients become small content tiles instead of ruled rows. */
.gbb-cocktail-planner__ingredients { display:grid; gap:6px; }
.gbb-cocktail-planner__ingredients li {
	padding:10px 12px;
	border:0 !important;
	border-radius:10px;
	background:#fff;
}

/* Filled cart. */
.woocommerce-cart .wp-block-woocommerce-cart { --gbb-cart-gap:18px; }
.woocommerce-cart .wc-block-cart-items,
.woocommerce-cart .wc-block-cart-items :is(thead,tbody,tr,th,td) { border:0 !important; }
.woocommerce-cart .wc-block-cart-items thead {
	border-radius:16px;
	background:var(--gbb-paper) !important;
	color:var(--gbb-muted) !important;
}
.woocommerce-cart .wc-block-cart-items thead span { color:var(--gbb-muted); text-transform:none; }
.woocommerce-cart .wc-block-cart-items tbody tr { border-bottom:14px solid #fff !important; }
.woocommerce-cart .wc-block-cart-item__image img,
.woocommerce-checkout .wc-block-components-order-summary-item__image img {
	border:0 !important;
	border-radius:14px !important;
	background:var(--gbb-paper) !important;
}
.woocommerce-cart .wc-block-components-quantity-selector {
	overflow:hidden;
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-paper) !important;
}
.woocommerce-cart .wc-block-components-quantity-selector :is(button,input) {
	border:0 !important;
	background:transparent !important;
}
.woocommerce-cart .wc-block-components-quantity-selector button:hover { background:var(--gbb-mist) !important; color:var(--gbb-ink); }
.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
.woocommerce-cart .wc-block-components-sidebar {
	padding:26px !important;
	border:0 !important;
	border-radius:var(--gbb-radius) !important;
	background:var(--gbb-paper) !important;
}
.woocommerce-cart :is(.wc-block-components-totals-wrapper,.wc-block-components-totals-footer-item) { border:0 !important; }
.woocommerce-cart .wc-block-components-totals-wrapper + .wc-block-components-totals-wrapper { margin-top:6px; }
.woocommerce-cart .wc-block-cart__submit-button,
.woocommerce-cart .wc-block-components-button {
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-red) !important;
	color:#fff !important;
	box-shadow:none !important;
	text-transform:none !important;
}
.woocommerce-cart .wc-block-cart__submit-button:hover,
.woocommerce-cart .wc-block-components-button:hover { background:var(--gbb-ink) !important; }

/* Checkout. */
.woocommerce-checkout :is(.wc-block-checkout__main,.wc-block-components-main) { border:0 !important; }
.woocommerce-checkout .wc-block-components-checkout-step {
	margin-bottom:14px;
	padding:clamp(22px,3vw,34px) !important;
	border:0 !important;
	border-radius:var(--gbb-radius) !important;
	background:var(--gbb-paper) !important;
	box-shadow:none !important;
}
.woocommerce-checkout .wc-block-components-checkout-step__title {
	margin:0 0 22px;
	padding:0;
	border:0 !important;
	background:transparent !important;
	color:var(--gbb-ink) !important;
	font-size:clamp(22px,2.2vw,30px);
	font-weight:600;
	letter-spacing:-.04em;
	text-transform:none;
}
.woocommerce-checkout .wc-block-components-checkout-step__content { padding:0; }
.woocommerce-checkout :is(.wc-block-components-text-input input,.wc-block-components-combobox .components-combobox-control__input,.wc-block-components-select select,.wc-blocks-components-select__select,.wc-block-components-address-form__address_2-hidden-input) {
	min-height:54px !important;
	border:0 !important;
	border-radius:14px !important;
	background-color:#fff !important;
	box-shadow:none !important;
}
body.woocommerce-checkout .wc-block-components-text-input input[type],
body.woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input {
	min-height:54px !important;
	border:0 !important;
	border-radius:14px !important;
	background-color:#fff !important;
	color:var(--gbb-ink) !important;
	box-shadow:none !important;
}
body.page-id-9.woocommerce-checkout div.wc-block-checkout [class*="wc-block-components"] :is(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="password"],input[type="url"],textarea),
body.page-id-8.woocommerce-cart div.wc-block-cart [class*="wc-block-components"] :is(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="password"],input[type="url"],textarea) {
	--wd-form-bg:#fff !important;
	background-color:#fff !important;
}
.woocommerce-checkout :is(.wc-block-components-text-input input,.wc-block-components-combobox .components-combobox-control__input,.wc-block-components-select select):focus {
	box-shadow:0 0 0 3px rgba(227,6,19,.12) !important;
}
.woocommerce-checkout :is(.wc-block-components-address-card,.wc-block-components-radio-control,.wc-block-components-checkbox) {
	border:0 !important;
	border-radius:16px !important;
	background:#fff !important;
	box-shadow:none !important;
}
.woocommerce-checkout .wc-block-components-radio-control { overflow:hidden; padding:6px; }
.woocommerce-checkout .wc-block-components-radio-control__option {
	display:grid !important;
	grid-template-columns:20px minmax(0,1fr);
	align-items:start;
	column-gap:12px;
	min-height:52px;
	margin:4px;
	padding:14px !important;
	border:0 !important;
	border-radius:12px;
}
.woocommerce-checkout .wc-block-components-radio-control__input {
	position:static !important;
	grid-column:1;
	width:20px !important;
	height:20px !important;
	margin:1px 0 0 !important;
	transform:none !important;
}
.woocommerce-checkout .wc-block-components-radio-control__option-layout {
	grid-column:2;
	min-width:0;
	margin:0 !important;
}
.woocommerce-checkout .wc-block-components-radio-control__label-group {
	display:grid !important;
	grid-template-columns:minmax(0,1fr) auto;
	align-items:start;
	gap:8px 14px;
	min-width:0;
}
.woocommerce-checkout .wc-block-components-radio-control__label {
	min-width:0;
	padding:0 !important;
	line-height:1.35;
	overflow-wrap:anywhere;
}
.woocommerce-checkout .wc-block-components-radio-control__secondary-label {
	position:static !important;
	margin:0 !important;
	white-space:nowrap;
}
.woocommerce-checkout .wc-block-components-radio-control__option:has(input:checked),
.woocommerce-checkout .wc-block-components-checkbox:has(input:checked) { background:#fff0f1 !important; box-shadow:none !important; }
.woocommerce-checkout .wc-block-components-checkbox { padding:14px; }
.woocommerce-checkout .wc-block-components-checkbox__input { border-color:#c8c6c1 !important; border-radius:5px !important; accent-color:var(--gbb-red); }
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block,
.woocommerce-checkout .wc-block-components-sidebar {
	padding:24px !important;
	border:0 !important;
	border-radius:var(--gbb-radius) !important;
	background:var(--gbb-paper) !important;
}
.woocommerce-checkout :is(.wc-block-components-totals-wrapper,.wc-block-checkout__terms,.wp-block-woocommerce-checkout-order-summary-coupon-form-block,.wp-block-woocommerce-checkout-order-summary-totals-block) { border:0 !important; }
.woocommerce-checkout .wc-block-components-checkout-place-order-button {
	min-height:54px;
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-red) !important;
	color:#fff !important;
	box-shadow:none !important;
	text-transform:none !important;
}
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover { background:var(--gbb-ink) !important; }

/* Account endpoints and dashboard. */
.woocommerce-account .woocommerce-ResetPassword {
	max-width:680px;
	margin-inline:auto;
	padding:clamp(28px,5vw,54px) !important;
	border:0 !important;
	border-radius:var(--gbb-radius-lg);
	background:var(--gbb-paper);
}
.woocommerce-account .woocommerce-ResetPassword .button { width:100%; }

/* Native side cart. */
.cart-widget-side,
.wd-side-hidden { border:0 !important; box-shadow:none !important; }
.cart-widget-side .shopping-cart-widget-header { padding:24px; border:0 !important; }
.cart-widget-side .woocommerce-mini-cart-item { margin:0 16px 10px; padding:14px !important; border:0 !important; border-radius:16px; background:var(--gbb-paper); }
.cart-widget-side .woocommerce-mini-cart__total { border:0 !important; }
.cart-widget-side .woocommerce-mini-cart__buttons a { border:0 !important; border-radius:999px !important; box-shadow:none !important; text-transform:none; }

/* Purpose-built 404. */
.gbb-404 { width:min(100% - 48px,1220px); margin:clamp(38px,6vw,84px) auto; }
.gbb-404__panel {
	position:relative;
	overflow:hidden;
	min-height:min(620px,70vh);
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	justify-content:flex-end;
	padding:clamp(30px,6vw,76px);
	border:0;
	border-radius:var(--gbb-radius-lg);
	background:var(--gbb-paper);
}
.gbb-404__code { position:absolute; top:-.15em; right:.02em; color:#fff; font-size:clamp(150px,27vw,390px); font-weight:700; letter-spacing:-.1em; line-height:1; }
.gbb-404__eyebrow { position:relative; margin:0 0 14px; color:var(--gbb-red); font-size:11px; font-weight:750; letter-spacing:.14em; text-transform:uppercase; }
.gbb-404 h1 { position:relative; max-width:760px; margin:0; color:var(--gbb-ink); font-size:clamp(44px,6vw,82px); font-weight:600; letter-spacing:-.065em; line-height:.94; }
.gbb-404 p { position:relative; max-width:560px; margin:24px 0 0; color:var(--gbb-muted); font-size:16px; line-height:1.55; }
.gbb-404__actions { position:relative; display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.gbb-404__actions a { display:inline-flex; min-height:50px; align-items:center; padding:0 22px; border:0; border-radius:999px; background:var(--gbb-ink); color:#fff; font-size:12px; font-weight:700; text-decoration:none; }
.gbb-404__actions a:first-child { background:var(--gbb-red); }
.gbb-404__actions a:hover { background:var(--gbb-red); color:#fff; transform:translateY(-2px); }

/* Header dropdowns and drawers are floating surfaces, never framed boxes. */
.whb-header .whb-top-bar,
.whb-header .whb-header-bottom,
.whb-header .whb-general-header { border:0 !important; box-shadow:none !important; }
.whb-header { position:relative; z-index:1000; }
.whb-gbb_catalog_toggle .wd-dropdown-cats,
.whb-gbb_product_search .wd-dropdown-results {
	overflow:visible;
	border:0 !important;
	border-radius:20px !important;
	background:#fff;
	box-shadow:0 24px 70px rgba(0,0,0,.18) !important;
}
.whb-gbb_catalog_toggle .wd-nav-vertical > li > a { border:0 !important; }
.whb-gbb_catalog_toggle .wd-nav-vertical > li + li > a { box-shadow:none; }
.whb-gbb_catalog_toggle .wd-nav-vertical > li > a,
.whb-gbb_catalog_toggle .wd-nav-vertical > li:is(:hover,.wd-opened) > a {
	background:#fff !important;
	color:var(--gbb-ink) !important;
}
.whb-gbb_catalog_toggle .wd-nav-vertical > li:hover > a { background:var(--gbb-paper) !important; color:var(--gbb-red) !important; }
.whb-gbb_catalog_toggle :is(.wd-dropdown-menu,.wd-sub-menu) { border:0 !important; background:#fff !important; box-shadow:0 24px 70px rgba(0,0,0,.16) !important; }
.no-products-footer .searchform {
	overflow:hidden;
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-paper) !important;
	box-shadow:none !important;
}
.no-products-footer .searchform input { border:0 !important; background:transparent !important; }
.woocommerce-message a.button,
.woocommerce-message .button {
	margin-inline-start:10px;
	padding:8px 13px !important;
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-ink) !important;
	color:#fff !important;
	box-shadow:none !important;
	text-transform:none;
}
.product-label.out-of-stock {
	width:auto !important;
	min-width:92px;
	max-width:none !important;
	padding:9px 12px !important;
	font-size:9px !important;
	line-height:1 !important;
	white-space:nowrap;
}
.product-label.out-of-stock::after { content:none; }
.woodmart-archive-shop .gbb-catalog-filters__price input {
	border:0 !important;
	border-radius:12px !important;
	background:#fff !important;
	box-shadow:none !important;
}
.woodmart-archive-shop .gbb-catalog-filters__price input:focus { box-shadow:0 0 0 3px rgba(227,6,19,.12) !important; }
.cart-widget-side {
	background:#fff !important;
	color:var(--gbb-ink) !important;
}
.cart-widget-side :is(.shopping-cart-widget-header,.widget_shopping_cart_content,.shopping-cart-widget-body,.shopping-cart-widget-footer) { background:#fff !important; color:var(--gbb-ink) !important; }
.cart-widget-side .shopping-cart-widget-header :is(h3,.title,.wd-action-text,.wd-action-icon) { color:var(--gbb-ink) !important; }
.cart-widget-side .woocommerce-mini-cart-item { background:var(--gbb-paper); }
.cart-widget-side .woocommerce-mini-cart__total :is(strong,.amount) { color:var(--gbb-ink) !important; }
.cart-widget-side .woocommerce-mini-cart-item .amount { color:var(--gbb-red) !important; }
.cart-widget-side .woocommerce-mini-cart__buttons a:first-child { background:var(--gbb-ink) !important; color:#fff !important; }
.cart-widget-side .woocommerce-mini-cart__buttons a:last-child { background:var(--gbb-red) !important; color:#fff !important; }
.mobile-nav { border:0 !important; background:#fff !important; box-shadow:none !important; }
.mobile-nav .wd-nav-mobile > li > a { border:0 !important; }
.mobile-nav .wd-nav-mobile > li + li > a { box-shadow:none; }

/* Orders, account tables, confirmation and remaining WooCommerce states. */
.woocommerce-account .woocommerce-MyAccount-navigation { padding:10px; background:var(--gbb-ink); }
.woocommerce-account .woocommerce-MyAccount-navigation ul { display:grid; gap:4px; }
.woocommerce-account .woocommerce-MyAccount-navigation li { border:0 !important; }
.woocommerce-account .woocommerce-MyAccount-navigation a { border:0 !important; border-radius:12px; }
.woocommerce-account .woocommerce-MyAccount-navigation :is(li.is-active,li:hover) a { background:rgba(255,255,255,.1); color:#fff; }
.woocommerce-account :is(.woocommerce-orders-table,.woocommerce-table,.shop_table),
.woocommerce-order :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) { border:0 !important; border-collapse:separate; border-spacing:0 7px; }
.woocommerce-account :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) :is(th,td,tr),
.woocommerce-order :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) :is(th,td,tr) { border:0 !important; }
.woocommerce-account :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) :is(th,td),
.woocommerce-order :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) :is(th,td) { padding:14px 16px; background:#fff; }
.woocommerce-account :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) th,
.woocommerce-order :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) th { background:var(--gbb-mist); text-transform:none; }
.woocommerce-account :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) tr > :first-child,
.woocommerce-order :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) tr > :first-child { border-radius:13px 0 0 13px; }
.woocommerce-account :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) tr > :last-child,
.woocommerce-order :is(.woocommerce-orders-table,.woocommerce-table,.shop_table) tr > :last-child { border-radius:0 13px 13px 0; }
.woocommerce-account .woocommerce-MyAccount-content :is(fieldset,.woocommerce-address-fields,.woocommerce-EditAccountForm) { border:0 !important; }
.woocommerce-account .woocommerce-MyAccount-content .button { border:0 !important; border-radius:999px !important; box-shadow:none !important; text-transform:none; }
.woocommerce-order-received .woocommerce-thankyou-order-received {
	padding:clamp(28px,5vw,58px);
	border:0 !important;
	border-radius:var(--gbb-radius-lg);
	background:var(--gbb-paper);
	color:var(--gbb-ink);
	font-size:clamp(28px,4vw,48px);
	font-weight:600;
	letter-spacing:-.05em;
}
.woocommerce-order-received .woocommerce-order-overview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-block:18px 44px; }
.woocommerce-order-received .woocommerce-order-overview li { margin:0 !important; padding:18px !important; border:0 !important; border-radius:16px; background:var(--gbb-paper); }
.woocommerce-order-received :is(.woocommerce-order-details,.woocommerce-customer-details) { padding:clamp(22px,4vw,38px); border:0 !important; border-radius:var(--gbb-radius); background:var(--gbb-paper); }
.woocommerce-order-received .woocommerce-customer-details address { border:0 !important; border-radius:16px; background:#fff; }
.woocommerce-pagination :is(a,span) { border:0 !important; border-radius:999px !important; }
.woocommerce-pagination .current { background:var(--gbb-ink) !important; color:#fff !important; }
.woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block { border:0 !important; }
.single-product .wd-nav-pagin-item > span { border:0 !important; background:#d8d6d0 !important; }
.single-product .wd-nav-pagin-item.wd-active > span { background:var(--gbb-red) !important; }
.wd-popup,
.mfp-content .wd-popup { overflow:hidden; border:0 !important; border-radius:var(--gbb-radius) !important; box-shadow:0 26px 80px rgba(0,0,0,.18) !important; }
.woocommerce #reviews :is(.comment_container,.comment-text,.comment-form) { border:0 !important; border-radius:var(--gbb-radius); background:var(--gbb-paper); }
.woocommerce #reviews :is(input,textarea) { border:0 !important; border-radius:14px !important; background:#fff !important; }

@media (max-width:767px) {
	.woodmart-archive-shop .gbb-catalog-filters__groups { gap:6px; }
	.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
	.woocommerce-cart .wc-block-components-sidebar,
	.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block,
	.woocommerce-checkout .wc-block-components-sidebar { padding:18px !important; border-radius:20px !important; }
	.woocommerce-checkout .wc-block-components-checkout-step { padding:22px 18px !important; border-radius:20px !important; }
	.gbb-404 { width:calc(100% - 24px); margin-block:12px 74px; }
	.gbb-404__panel { min-height:560px; padding:28px 22px; border-radius:22px; }
	.gbb-404__actions { width:100%; }
	.gbb-404__actions a { width:100%; justify-content:center; }
	.woocommerce-order-received .woocommerce-order-overview { grid-template-columns:1fr 1fr; }
}

/* -------------------------------------------------------------------------
 * Catalogue refinement: honest grid controls, equal cards and sticky filters.
 * ---------------------------------------------------------------------- */
:root {
	--wd-primary-color:var(--gbb-red) !important;
	--wd-primary-color-hover:#bd0010 !important;
	--btn-accented-bgcolor:var(--gbb-red) !important;
	--btn-accented-bgcolor-hover:var(--gbb-ink) !important;
	--btn-accented-color:#fff !important;
}

body :is(.button,button,input[type="submit"],.wp-element-button,.wc-block-components-button):not(.wd-close-side):not(.wd-tools-element) {
	border-color:transparent;
	box-shadow:none;
}
body :is(.button,button,input[type="submit"],.wp-element-button,.wc-block-components-button):focus-visible {
	outline-color:var(--gbb-red);
}

/* Full header at entry, compact commerce bar while browsing. */
@media (min-width:768px) {
	.whb-header {
		position:sticky !important;
		top:0 !important;
		z-index:1100;
		transition:box-shadow .25s ease;
	}
	body.admin-bar .whb-header { top:32px !important; }
	.whb-header .whb-row { transition:opacity .2s ease,transform .25s var(--gbb-ease); }
	body.gbb-header-compact .whb-header { box-shadow:0 12px 38px rgba(0,0,0,.14) !important; }
	body.gbb-header-compact .whb-header :is(.whb-top-bar,.whb-header-bottom) { display:none !important; }
	body.gbb-header-compact .whb-general-header { min-height:64px !important; }
}
@media (max-width:782px) {
	body.admin-bar .whb-header { top:46px !important; }
}

@media (min-width:1025px) {
	.woodmart-archive-shop .gbb-catalog-layout__sidebar {
		position:relative;
		align-self:stretch;
		max-height:none;
		overflow:visible;
		padding-right:6px;
	}
	.woodmart-archive-shop .gbb-catalog-filters {
		position:sticky !important;
		top:var(--gbb-filter-sticky-top,88px) !important;
		bottom:auto !important;
	}
	.woodmart-archive-shop .gbb-catalog-filters__actions {
		position:static;
		border-radius:0 0 18px 18px;
	}

	.woodmart-archive-shop .wd-products.grid-columns-2 { --wd-col-lg:2 !important; --wd-col:2 !important; }
	.woodmart-archive-shop .wd-products.grid-columns-3 { --wd-col-lg:3 !important; --wd-col:3 !important; }
	.woodmart-archive-shop .wd-products.grid-columns-4 { --wd-col-lg:4 !important; --wd-col:4 !important; }
}

.woodmart-archive-shop .gbb-catalog-filters {
	overflow:visible;
	border:0 !important;
	border-radius:20px;
	background:#fff;
}
.woodmart-archive-shop .gbb-catalog-filters__heading {
	border-radius:20px;
	background:var(--gbb-ink);
}
.woodmart-archive-shop .gbb-catalog-filters__quick-group { margin-top:8px; }
.woodmart-archive-shop .gbb-catalog-filters__quick-group .gbb-catalog-filters__quick {
	margin:0;
	border:0;
	background:transparent;
}
.woodmart-archive-shop .gbb-catalog-filters__actions {
	border:0 !important;
	background:#fff;
}
.woodmart-archive-shop .gbb-catalog-filters__groups {
	max-height:none !important;
	overflow:visible !important;
}
.woodmart-archive-shop .gbb-catalog-filters__submit.button {
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-red) !important;
	color:#fff !important;
	text-transform:none;
}
.woodmart-archive-shop .gbb-catalog-filters__submit.button:hover { background:var(--gbb-ink) !important; }

/* The Woodmart corner badge remains visible; the duplicate in-flow note does not
 * consume a product-card row. Backorders get the same overlay treatment. */
.woodmart-archive-shop .product-grid-item .wd-product-wrapper { position:relative; }
.woodmart-archive-shop .product-grid-item.outofstock .wd-product-wrapper > .gbb-stock-note:not(.gbb-stock-note--backorder) {
	display:none !important;
}
.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .gbb-stock-note--backorder {
	position:absolute;
	top:14px;
	left:14px;
	z-index:6;
	margin:0 !important;
	border:0 !important;
	border-radius:999px;
	background:var(--gbb-red);
	color:#fff;
}
.woodmart-archive-shop .product-grid-item .product-wrapper {
	height:100%;
	border:0 !important;
}
.woodmart-archive-shop .product-grid-item.outofstock .product-wrapper {
	border:0 !important;
	opacity:.66;
}
.woodmart-archive-shop .product-grid-item .wd-entities-title {
	display:-webkit-box;
	overflow:hidden;
	min-height:3.72em;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:3;
}
.single-product-page p.stock.in-stock {
	background:#f2eee7 !important;
	color:#36332f !important;
}
.single-product-page p.stock.in-stock::before { display:none !important; }

/* Product grid selector: clear selected state, no inherited green accents. */
.woodmart-archive-shop .wd-products-per-row a {
	color:var(--gbb-muted) !important;
	opacity:.55;
}
.woodmart-archive-shop .wd-products-per-row a:hover,
.woodmart-archive-shop .wd-products-per-row a.wd-active,
.woodmart-archive-shop .wd-products-per-row a.active {
	color:var(--gbb-red) !important;
	opacity:1;
}

/* -------------------------------------------------------------------------
 * Brands: one directory backed by pa_brand, plus automatic brand storefronts.
 * ---------------------------------------------------------------------- */
.gbb-brands {
	width:min(100% - 48px,1500px);
	margin:0 auto;
	padding:24px 0 clamp(84px,10vw,150px);
}
.gbb-brands :is(h1,h2,p) { margin-top:0; }
.gbb-brands__hero {
	position:relative;
	overflow:hidden;
	display:grid;
	grid-template-columns:minmax(0,1.1fr) minmax(220px,.55fr);
	align-items:end;
	min-height:520px;
	padding:clamp(34px,6vw,88px);
	border:0;
	border-radius:var(--gbb-radius-lg);
	background:var(--gbb-ink);
	color:#fff;
}
.gbb-brands__hero > div { position:relative; z-index:2; max-width:820px; }
.gbb-brands__eyebrow {
	margin-bottom:18px;
	color:var(--gbb-red);
	font-size:11px;
	font-weight:800;
	letter-spacing:.16em;
	text-transform:uppercase;
}
.gbb-brands__hero h1 {
	margin-bottom:28px;
	color:#fff;
	font-size:clamp(50px,6vw,88px);
	font-weight:600;
	letter-spacing:-.075em;
	line-height:.9;
}
.gbb-brands__hero h1 em { color:var(--gbb-red); font-family:Georgia,serif; font-weight:400; }
.gbb-brands__hero p:last-child { max-width:660px; margin-bottom:0; color:rgba(255,255,255,.7); font-size:clamp(15px,1.4vw,20px); line-height:1.5; }
.gbb-brands__hero > span {
	position:absolute;
	right:-.1em;
	top:50%;
	color:rgba(255,255,255,.055);
	font-size:clamp(180px,27vw,440px);
	font-weight:800;
	letter-spacing:-.12em;
	line-height:.7;
	transform:translateY(-50%);
}
.gbb-brands__directory { padding-top:clamp(70px,9vw,138px); }
.gbb-brands__directory > header {
	display:grid;
	grid-template-columns:1fr auto;
	align-items:end;
	margin-bottom:30px;
}
.gbb-brands__directory > header .gbb-brands__eyebrow { grid-column:1/-1; }
.gbb-brands__directory h2 { margin:0; color:var(--gbb-ink); font-size:clamp(44px,6vw,86px); font-weight:600; letter-spacing:-.065em; line-height:.9; }
.gbb-brands__directory > header > strong { color:var(--gbb-muted); font-size:12px; font-weight:700; }
.gbb-brands__tools { display:grid; grid-template-columns:minmax(260px,.8fr) minmax(0,2fr); align-items:end; gap:24px; margin:0 0 26px; }
.gbb-brands__tools label { display:grid; gap:7px; }
.gbb-brands__tools label span { color:var(--gbb-muted); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.gbb-brands__tools input { width:100%; min-height:54px; padding:0 18px; border:0; border-radius:16px; background:var(--gbb-paper); color:var(--gbb-ink); font-size:13px; outline:0; }
.gbb-brands__tools input:focus { box-shadow:0 0 0 3px rgba(227,6,19,.14); }
.gbb-brands__tools nav { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.gbb-brands__tools button { min-width:36px; height:36px; padding:0 10px; border:0; border-radius:999px; background:var(--gbb-paper); color:var(--gbb-ink); font-size:10px; font-weight:800; cursor:pointer; }
.gbb-brands__tools button:hover,.gbb-brands__tools button.is-active { background:var(--gbb-red); color:#fff; }
.gbb-brands__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.gbb-brand-card {
	position:relative;
	overflow:hidden;
	display:flex;
	min-height:310px;
	flex-direction:column;
	justify-content:flex-end;
	padding:28px;
	border:0 !important;
	border-radius:var(--gbb-radius);
	background:var(--gbb-paper);
	color:var(--gbb-ink) !important;
	text-decoration:none !important;
	transition:transform .55s var(--gbb-ease),background-color .35s ease,color .35s ease;
}
.gbb-brand-card__mark {
	position:absolute;
	top:-.18em;
	right:.02em;
	color:#fff;
	font-size:220px;
	font-weight:750;
	letter-spacing:-.1em;
	line-height:1;
	transition:transform .65s var(--gbb-ease);
}
.gbb-brand-card__mark:has(.gbb-brand-card__logo) { display:grid; top:28px; right:28px; width:150px; height:90px; place-items:end; font-size:0; }
.gbb-brand-card__logo { display:block; max-width:100%; max-height:100%; width:auto; object-fit:contain; filter:grayscale(1); opacity:.84; }
.gbb-brand-card__count { position:absolute; top:28px; left:28px; color:var(--gbb-muted); font-size:11px; font-weight:700; }
.gbb-brand-card strong { position:relative; font-size:clamp(27px,3vw,48px); font-weight:600; letter-spacing:-.055em; line-height:.95; }
.gbb-brand-card p { position:relative; max-width:330px; margin:11px 0 0; color:var(--gbb-muted); font-size:11px; line-height:1.4; }
.gbb-brand-card small { position:relative; display:flex; justify-content:space-between; margin-top:18px; color:inherit; font-size:11px; font-weight:750; text-transform:uppercase; }
.gbb-brand-card:hover { z-index:2; background:var(--gbb-red); color:#fff !important; transform:translateY(-8px); }
.gbb-brand-card:hover .gbb-brand-card__mark { color:rgba(255,255,255,.12); transform:scale(1.08) rotate(-4deg); }
.gbb-brand-card:hover .gbb-brand-card__logo { filter:brightness(0) invert(1); opacity:1; }
.gbb-brand-card:hover .gbb-brand-card__count { color:rgba(255,255,255,.68); }
.gbb-brand-card:hover p { color:rgba(255,255,255,.72); }
.gbb-brand-card[hidden] { display:none !important; }
.gbb-brands__empty { padding:40px; border-radius:20px; background:var(--gbb-paper); color:var(--gbb-muted); text-align:center; }
.gbb-brand-card--1 { background:#eee8df; }
.gbb-brand-card--2 { background:#efefef; }
.gbb-brand-card--3 { background:#e8e6e0; }

.tax-pa_brand .gbb-brand-archive {
	position:relative;
	overflow:hidden;
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(160px,.4fr);
	align-items:center;
	min-height:390px;
	margin-bottom:36px;
	padding:clamp(34px,6vw,76px);
	border:0;
	border-radius:var(--gbb-radius-lg);
	background:var(--gbb-ink);
	color:#fff;
}
.tax-pa_brand .gbb-brand-archive.has-background { background-image:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.78) 52%,rgba(0,0,0,.22) 100%),var(--gbb-brand-hero); background-position:center; background-size:cover; }
.tax-pa_brand .gbb-brand-archive > div { position:relative; z-index:2; max-width:780px; }
.tax-pa_brand .gbb-brand-archive h1 { margin:0 0 18px; color:#fff; font-size:clamp(52px,8vw,112px); font-weight:600; letter-spacing:-.075em; line-height:.85; }
.gbb-brand-archive__logo { display:grid; width:170px; min-height:70px; place-items:start; margin-bottom:28px; }
.gbb-brand-archive__logo img { display:block; max-width:100%; max-height:76px; width:auto; filter:brightness(0) invert(1); }
.tax-pa_brand .gbb-brand-archive__tagline { display:block; max-width:650px; margin:0 0 18px; color:#fff; font-size:clamp(18px,2vw,28px); font-weight:600; letter-spacing:-.025em; }
.tax-pa_brand .gbb-brand-archive div>p:last-of-type { max-width:650px; margin:0; color:rgba(255,255,255,.7); font-size:17px; line-height:1.5; }
.tax-pa_brand .gbb-brand-archive > span { position:absolute; right:.02em; color:var(--gbb-red); font-size:clamp(210px,28vw,430px); font-weight:800; line-height:.8; opacity:.9; }
.tax-pa_brand .gbb-brand-archive.has-background > span { opacity:.32; }
.gbb-brand-archive__facts { display:flex; flex-wrap:wrap; gap:7px; margin-top:28px; }
.gbb-brand-archive__facts span { min-width:120px; padding:11px 14px; border-radius:13px; background:rgba(255,255,255,.1); color:#fff; font-size:11px; font-weight:750; backdrop-filter:blur(8px); }
.gbb-brand-archive__facts small { display:block; margin-bottom:3px; color:rgba(255,255,255,.48); font-size:8px; letter-spacing:.08em; text-transform:uppercase; }
.gbb-brand-archive__actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.gbb-brand-archive__actions a { display:inline-flex; min-height:46px; align-items:center; padding:0 18px; border-radius:999px; background:var(--gbb-red); color:#fff !important; font-size:10px; font-weight:850; text-decoration:none !important; text-transform:uppercase; }
.gbb-brand-archive__actions a+ a { background:#fff; color:var(--gbb-ink) !important; }
.gbb-brand-story { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(34px,7vw,110px); margin:0 0 52px; padding:clamp(32px,5vw,68px); border-radius:var(--gbb-radius-lg); background:var(--gbb-paper); }
.gbb-brand-story h2 { margin:0; color:var(--gbb-ink); font-size:clamp(42px,5.5vw,74px); font-weight:600; letter-spacing:-.065em; line-height:.9; }
.gbb-brand-story h2 em { color:var(--gbb-red); font-family:Georgia,serif; font-weight:400; }
.gbb-brand-story>div>p { margin:0; color:var(--gbb-ink); font-size:clamp(15px,1.5vw,20px); line-height:1.65; }
.gbb-brand-story ul { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:28px 0 0; padding:0; list-style:none; }
.gbb-brand-story li { padding:16px; border-radius:16px; background:#fff; color:var(--gbb-ink); font-size:11px; font-weight:700; }
.gbb-brand-story li::before { color:var(--gbb-red); content:'●'; margin-right:8px; }
.gbb-brand-products-anchor { display:block; position:relative; top:-100px; visibility:hidden; }

@media (max-width:1024px) {
	.gbb-brands__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.gbb-brands__hero { grid-template-columns:1fr; min-height:470px; }
	.gbb-brands__tools { grid-template-columns:1fr; }
	.gbb-brands__tools nav { justify-content:flex-start; }
	.gbb-brand-story { grid-template-columns:1fr; }
	.woodmart-archive-shop .gbb-catalog-filters__quick-group { margin-top:8px; }
}
@media (max-width:767px) {
	.gbb-brands { width:calc(100% - 24px); padding-top:12px; }
	.gbb-brands__hero { min-height:480px; padding:32px 22px; border-radius:22px; }
	.gbb-brands__hero h1 { font-size:50px; }
	.gbb-brands__directory > header { display:block; }
	.gbb-brands__directory > header > strong { display:block; margin-top:14px; }
	.gbb-brands__grid { grid-template-columns:1fr; }
	.gbb-brand-card { min-height:250px; padding:24px; border-radius:20px; }
	.gbb-brand-card__count { top:24px; left:24px; }
	.tax-pa_brand .gbb-brand-archive { min-height:350px; padding:34px 22px; border-radius:22px; }
	.tax-pa_brand .gbb-brand-archive h1 { font-size:54px; }
	.gbb-brands__tools nav { flex-wrap:nowrap; overflow-x:auto; padding-bottom:5px; }
	.gbb-brand-story { padding:30px 22px; border-radius:22px; }
	.gbb-brand-story ul { grid-template-columns:1fr; }
}

/* -------------------------------------------------------------------------
 * Mobile QA and contrast contract.
 * These rules intentionally live last: every light commerce surface has dark
 * text and every dark/red action has white text, including open drawers.
 * ---------------------------------------------------------------------- */
.gbb-home-hero .gbb-home__eyebrow { color:var(--gbb-ink); }
.gbb-footer__age p strong { display:inline-flex; padding:2px 7px; border-radius:999px; background:var(--gbb-red); color:#fff !important; font-weight:800; }

.cart-widget-side,
.cart-widget-side :is(.shopping-cart-widget-header,.widget_shopping_cart_content,.shopping-cart-widget-body,.shopping-cart-widget-footer) { background:#fff !important; color:var(--gbb-ink) !important; }
.cart-widget-side :is(.title,.wd-entities-title,.woocommerce-mini-cart__empty-message,.quantity,strong:not(.amount)) { color:var(--gbb-ink) !important; }
.cart-widget-side .woocommerce-mini-cart-item a:not(.remove) { color:var(--gbb-ink) !important; }
.cart-widget-side .woocommerce-mini-cart__buttons a { color:#fff !important; }

.woocommerce-cart :is(.wc-block-cart__main,.wc-block-components-sidebar,.wc-block-components-totals-item__label,.wc-block-components-totals-item__value,.wc-block-components-shipping-rates-control,.wc-block-components-radio-control__label,.wc-block-components-radio-control__secondary-label,.wc-block-components-quantity-selector input),
.woocommerce-checkout :is(.wc-block-checkout__main,.wc-block-components-sidebar,.wc-block-components-checkout-step,.wc-block-components-checkout-step__description,.wc-block-components-radio-control__label,.wc-block-components-radio-control__secondary-label,.wc-block-components-checkbox__label,.wc-block-components-totals-item__label,.wc-block-components-totals-item__value,.wc-block-checkout__terms) { color:var(--gbb-ink) !important; }
.woocommerce-cart :is(.wc-block-cart__submit-button,.wc-block-components-button),
.woocommerce-checkout .wc-block-components-checkout-place-order-button { background:var(--gbb-red) !important; color:#fff !important; }
.woocommerce-cart :is(.wc-block-cart__submit-button,.wc-block-components-button) :is(span,strong),
.woocommerce-checkout .wc-block-components-checkout-place-order-button :is(span,strong) { color:#fff !important; }

/* Woodmart keeps the off-canvas navigation through the tablet breakpoint.
 * Apply the same contrast contract on phones and tablets (not phones only). */
@media (max-width:1024px) {
	.mobile-nav.wd-side-hidden {
		width:min(86vw,360px) !important;
		border-right:2px solid var(--gbb-red) !important;
		background:var(--gbb-ink) !important;
		color:#fff !important;
		box-shadow:18px 0 48px rgba(0,0,0,.26) !important;
	}
	.mobile-nav :is(.wd-search-form,.mobile-pages-menu,.wd-nav-mobile) { background:var(--gbb-ink) !important; }
	.mobile-nav .wd-search-form { padding:16px !important; border-bottom:1px solid rgba(255,255,255,.16) !important; }
	.mobile-nav .searchform { overflow:hidden; min-height:50px; border-radius:14px; background:#242424 !important; }
	.mobile-nav .searchform .s { height:50px !important; min-height:50px !important; padding-inline:14px !important; border:0 !important; background:#242424 !important; color:#fff !important; }
	.mobile-nav .searchform .s::placeholder { color:rgba(255,255,255,.68) !important; }
	.mobile-nav .searchform .searchsubmit { width:52px !important; height:50px !important; min-height:50px !important; border:0 !important; background:var(--gbb-red) !important; color:#fff !important; }
	.mobile-nav .wd-nav-mobile > li > a,
	.mobile-nav .wd-nav-mobile .wd-sub-menu li > a {
		min-height:52px;
		border:0 !important;
		border-bottom:1px solid rgba(255,255,255,.11) !important;
		background:var(--gbb-ink) !important;
		color:#fff !important;
		box-shadow:none !important;
	}
	.mobile-nav .wd-nav-mobile > li:is(.current-menu-item,.current-menu-parent) > a,
	.mobile-nav .wd-nav-mobile > li > a:hover,
	.mobile-nav .wd-nav-mobile > li > a:focus-visible { background:var(--gbb-red) !important; color:#fff !important; }
	.mobile-nav .wd-nav-opener { min-width:52px; min-height:52px; color:#fff !important; }
	.mobile-nav .wd-nav-opener::after { color:#fff !important; }
	.mobile-nav .wd-sub-menu { background:#1b1b1b !important; }

	.scrollToTop { display:none !important; }
	.gbb-brands__tools input { box-sizing:border-box; max-width:100%; }
	.gbb-brands__tools { min-width:0; }
	.gbb-brands__tools nav { max-width:100%; }
	.gbb-catalog-shortcuts__links { box-sizing:border-box; max-width:100%; overflow-x:auto; }

	.single-product .wd-breadcrumbs a { display:inline-flex; min-height:44px; align-items:center; padding-block:8px; }
	.single-product :is(.wd-carousel .wd-btn-arrow,.wd-carousel .wd-nav-arrows button) { min-width:44px; min-height:44px; }

	.woocommerce-checkout .wc-block-components-radio-control__label-group { display:block !important; }
	.woocommerce-checkout .wc-block-components-radio-control__secondary-label { display:block !important; margin-top:5px !important; white-space:normal !important; }
	.woocommerce-checkout .wc-block-components-radio-control__option { grid-template-columns:24px minmax(0,1fr); column-gap:10px; }
	.woocommerce-checkout .wc-block-components-radio-control__input { width:22px !important; height:22px !important; }
	.woocommerce-checkout :is(.wc-block-components-checkbox,.wc-block-components-radio-control__option) { overflow-wrap:anywhere; }
	.woocommerce-cart .wc-block-components-button,
	.woocommerce-checkout .wc-block-components-button { min-height:48px; }
}

/* Broad editorial canvas: use the screen instead of leaving dead gutters. */
.main-page-wrapper > .container,
.single-product-page > .container,
.single-product .product-tabs-inner,
.single-product .related-and-upsells {
	width:min(100% - 48px,1680px) !important;
	max-width:1680px !important;
	margin-inline:auto !important;
	padding-inline:0 !important;
	box-sizing:border-box;
}
.wd-page-title .container { width:min(100% - 48px,1680px) !important; max-width:1680px !important; margin-inline:auto !important; padding-inline:0 !important; }
.woodmart-archive-shop .gbb-catalog-layout {
	width:100%;
	grid-template-columns:minmax(260px,300px) minmax(0,1fr);
	gap:clamp(26px,3vw,54px);
}

/* A deliberately simple choice: three cards or one deeply informative row. */
.woodmart-archive-shop .wd-products-per-row { display:none !important; }
.gbb-catalog-view {
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:6px;
	margin:0 0 20px;
}
.gbb-catalog-view > span { margin-right:6px; color:var(--gbb-muted); font-size:10px; font-weight:750; text-transform:uppercase; }
.gbb-catalog-view a {
	display:inline-flex;
	width:44px;
	height:44px;
	align-items:center;
	justify-content:center;
	gap:7px;
	padding:0;
	border:0 !important;
	border-radius:999px;
	background:var(--gbb-paper);
	color:var(--gbb-ink) !important;
	font-size:11px;
	font-weight:700;
	text-decoration:none !important;
}
.gbb-catalog-view a:is(:hover,.is-active) { background:var(--gbb-ink); color:#fff !important; }
.gbb-catalog-view a.is-active i { color:var(--gbb-red); }
.gbb-view-icon { display:grid; width:18px; height:18px; gap:3px; }
.gbb-view-icon b { display:block; border-radius:2px; background:currentColor; }
.gbb-view-icon--grid { grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; }
.gbb-view-icon--list { grid-template-rows:repeat(3,1fr); }
.gbb-view-icon--list b { border-radius:999px; }
.gbb-product-row-details { display:none; }

@media (min-width:1025px) {
	.gbb-shop-grid-view.woodmart-archive-shop .wd-products { --wd-col-lg:3 !important; --wd-col:3 !important; }
	.gbb-shop-list-view.woodmart-archive-shop .wd-products { --wd-col-lg:1 !important; --wd-col:1 !important; }
	.gbb-shop-list-view .product-grid-item .wd-product-wrapper {
		display:grid !important;
		grid-template-columns:minmax(230px,320px) minmax(0,1fr) minmax(150px,210px);
		grid-template-rows:auto auto 1fr auto;
		column-gap:clamp(24px,3vw,48px);
		align-items:start;
		min-height:320px !important;
		padding:0;
		border-radius:var(--gbb-radius);
		background:var(--gbb-paper);
	}
	.gbb-shop-list-view .product-grid-item .wd-product-thumb {
		grid-column:1;
		grid-row:1 / 6;
		width:100%;
		height:100%;
		min-height:320px;
		border-radius:var(--gbb-radius);
		background:#efeee9;
	}
	.gbb-shop-list-view .product-grid-item .wd-product-img-link { height:100%; }
	.gbb-shop-list-view .product-grid-item .wd-product-img-link img { width:100%; height:100%; object-fit:contain; }
	.gbb-shop-list-view .product-grid-item .wd-product-cats {
		grid-column:2;
		grid-row:1;
		align-self:end;
		margin:32px 0 9px !important;
	}
	.gbb-shop-list-view .product-grid-item .wd-entities-title {
		grid-column:2;
		grid-row:2;
		min-height:0;
		margin:0 !important;
		font-size:clamp(24px,2.4vw,38px);
		letter-spacing:-.04em;
		-webkit-line-clamp:2;
	}
	.gbb-shop-list-view .gbb-product-row-details {
		display:block;
		grid-column:2;
		grid-row:3 / 5;
		margin-top:18px;
	}
	.gbb-shop-list-view .gbb-product-row-details > p { max-width:720px; color:var(--gbb-muted); font-size:13px; line-height:1.55; }
	.gbb-shop-list-view .gbb-product-row-details dl { display:flex; flex-wrap:wrap; gap:7px; margin:18px 0 30px; }
	.gbb-shop-list-view .gbb-product-row-details dl div { padding:9px 12px; border-radius:12px; background:#fff; }
	.gbb-shop-list-view .gbb-product-row-details :is(dt,dd) { display:inline; margin:0; font-size:10px; }
	.gbb-shop-list-view .gbb-product-row-details dt { color:var(--gbb-muted); }
	.gbb-shop-list-view .gbb-product-row-details dt::after { content:": "; }
	.gbb-shop-list-view .gbb-product-row-details dd { color:var(--gbb-ink); font-weight:750; }
	.gbb-shop-list-view .product-grid-item .price {
		grid-column:3;
		grid-row:2;
		align-self:start;
		margin:0 30px 0 0 !important;
		padding:0 !important;
		font-size:22px;
		text-align:right;
	}
	.gbb-shop-list-view .product-grid-item .wd-add-btn {
		grid-column:3;
		grid-row:3;
		align-self:start;
		margin:18px 30px 0 0 !important;
	}
}

/* Product-page chapters fed by the same attributes as filtering/comparison. */
.gbb-product-insights-wrap { width:min(100% - 48px,1680px); margin:0 auto clamp(70px,8vw,128px); }
.gbb-product-insights { padding:clamp(30px,5vw,72px); border-radius:var(--gbb-radius-lg); background:var(--gbb-ink); color:#fff; }
.gbb-product-insights > header { display:grid; grid-template-columns:1fr 1.4fr; align-items:end; margin-bottom:clamp(36px,5vw,70px); }
.gbb-product-insights > header .gbb-brands__eyebrow { grid-column:1/-1; }
.gbb-product-insights h2 { grid-column:2; margin:0; color:#fff; font-size:clamp(46px,6vw,86px); font-weight:600; letter-spacing:-.065em; line-height:.9; }
.gbb-product-insights h2 em { color:var(--gbb-red); font-family:Georgia,serif; font-weight:400; }
.gbb-product-insights__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.gbb-product-insights article { min-height:310px; padding:26px; border-radius:20px; background:#252525; }
.gbb-product-insights article small { color:var(--gbb-red); font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.gbb-product-insights article h3 { margin:12px 0 28px; color:#fff; font-size:26px; font-weight:600; letter-spacing:-.04em; }
.gbb-product-insights dl { margin:0; }
.gbb-product-insights dl div { display:grid; grid-template-columns:.8fr 1.2fr; gap:14px; padding:10px 0; border-top:1px solid rgba(255,255,255,.1); }
.gbb-product-insights :is(dt,dd) { margin:0; font-size:11px; line-height:1.4; }
.gbb-product-insights dt { color:rgba(255,255,255,.48); }
.gbb-product-insights dd { color:#fff; font-weight:650; }

.gbb-world-opinions-wrap { width:min(100% - 48px,1680px); margin:0 auto clamp(70px,8vw,128px); }
.gbb-world-opinions { padding:clamp(30px,5vw,72px); border-radius:var(--gbb-radius-lg); background:#f2f1ed; color:var(--gbb-ink); }
.gbb-world-opinions__header { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); align-items:end; gap:clamp(28px,5vw,90px); margin-bottom:clamp(34px,5vw,66px); }
.gbb-world-opinions__header h2 { margin:10px 0 0; color:var(--gbb-ink); font-size:clamp(44px,6vw,82px); font-weight:600; letter-spacing:-.065em; line-height:.9; }
.gbb-world-opinions__header h2 em { color:var(--gbb-red); font-family:Georgia,serif; font-weight:400; }
.gbb-world-opinions__header > p { max-width:530px; margin:0; color:var(--gbb-muted); font-size:13px; line-height:1.65; }
.gbb-world-opinions__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.gbb-world-opinion { display:flex; min-height:330px; flex-direction:column; padding:clamp(22px,3vw,34px); border-radius:24px; background:#fff; }
.gbb-world-opinion__topline { display:flex; align-items:center; justify-content:space-between; gap:16px; color:var(--gbb-red); font-size:9px; font-weight:850; letter-spacing:.11em; text-transform:uppercase; }
.gbb-world-opinion__topline small { color:var(--gbb-muted); font-size:9px; font-weight:700; }
.gbb-world-opinion__source { display:flex; align-items:start; justify-content:space-between; gap:20px; margin:24px 0 22px; }
.gbb-world-opinion__source h3 { margin:0; color:var(--gbb-ink); font-size:clamp(24px,2.6vw,38px); font-weight:700; letter-spacing:-.045em; line-height:1; }
.gbb-world-opinion__source strong { flex:0 0 auto; color:var(--gbb-red); font-size:clamp(22px,2.4vw,34px); font-weight:800; letter-spacing:-.05em; line-height:1; }
.gbb-world-opinion > p { max-width:700px; margin:0; color:var(--gbb-ink); font-size:14px; line-height:1.65; }
.gbb-world-opinion footer { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-top:auto; padding-top:32px; }
.gbb-world-opinion footer > span { color:var(--gbb-muted); font-size:9px; line-height:1.4; }
.gbb-world-opinion footer > span small { display:block; margin-top:4px; color:#98958d; font-size:8px; }
.gbb-world-opinion footer a { flex:0 0 auto; color:var(--gbb-ink); font-size:10px; font-weight:800; text-decoration:none; }
.gbb-world-opinion footer a i { margin-left:5px; color:var(--gbb-red); font-style:normal; }
.gbb-world-opinion footer a:hover { color:var(--gbb-red); }
.gbb-world-opinions__disclaimer { max-width:980px; margin:20px 0 0; color:var(--gbb-muted); font-size:9px; line-height:1.5; }

/* Native Woodmart comparison, configured by category and visually normalized. */
.page-id-3678 .wd-page-content { width:min(100% - 48px,1680px); max-width:1680px; margin-inline:auto; }
.page-id-3678 .wd-compare-table { border:0 !important; border-collapse:separate; border-spacing:8px; }
.page-id-3678 .wd-compare-table :is(th,td) { min-width:220px; padding:20px !important; border:0 !important; border-radius:18px; background:var(--gbb-paper); }
.page-id-3678 .wd-compare-table th { background:var(--gbb-ink); color:#fff; }
.page-id-3678 .wd-compare-table .compare-basic td { background:#fff; }
.page-id-3678 .wd-compare-table .button { border-radius:999px !important; background:var(--gbb-red) !important; color:#fff !important; }
.page-id-3678 .wd-compare-table .button:hover { background:var(--gbb-ink) !important; }
.page-id-3678 .wd-empty-block-btn {
	min-height:48px;
	padding-inline:22px !important;
	border:0 !important;
	border-radius:999px !important;
	background:var(--gbb-red) !important;
	color:#fff !important;
	box-shadow:none !important;
}
.page-id-3678 .wd-empty-block-btn:hover { background:var(--gbb-ink) !important; }
.wd-compare-btn a:hover .wd-action-icon { color:var(--gbb-red) !important; }

/* The catalogue trigger opens a real navigation canvas on desktop. */
@media (min-width:1025px) {
	/* Woodmart keeps dropdown descendants in the document after the canvas is
	 * closed. Our static mega-menu layout makes those descendants visible to
	 * hit-testing unless the entire subtree is explicitly disabled. */
	.whb-gbb_catalog_toggle:not(.wd-opened) > .wd-dropdown-cats,
	.whb-gbb_catalog_toggle:not(.wd-opened) > .wd-dropdown-cats * {
		visibility:hidden !important;
		pointer-events:none !important;
		cursor:default !important;
	}
	.whb-gbb_catalog_toggle:not(.wd-opened) > .wd-dropdown-cats {
		opacity:0 !important;
		transform:translateY(15px) translateZ(0) !important;
	}
	.whb-gbb_catalog_toggle.wd-opened > .wd-dropdown-cats {
		visibility:visible !important;
		opacity:1 !important;
		transform:none !important;
		pointer-events:auto !important;
		cursor:default !important;
	}
	.whb-gbb_catalog_toggle > .menu-opener,
	.whb-gbb_catalog_toggle.wd-opened > .wd-dropdown-cats a { cursor:pointer !important; }
	.whb-gbb_catalog_toggle .wd-dropdown-cats {
		position:fixed !important;
		top:154px !important;
		left:24px !important;
		right:24px !important;
		width:auto !important;
		max-width:none !important;
		max-height:calc(100vh - 178px) !important;
		padding:0 24px 24px !important;
		overflow:auto !important;
		border-radius:24px !important;
		background:#fff !important;
		box-shadow:0 30px 90px rgba(0,0,0,.28) !important;
	}
	.whb-gbb_catalog_toggle .wd-dropdown-cats::before {
		content:"GBB / КАТАЛОГ   —   НАПИТКИ, ЧАЙ И ПОДАРКИ";
		display:block;
		position:sticky;
		top:0;
		z-index:4;
		margin:0 -24px 18px;
		padding:23px 26px 21px;
		border-radius:24px 24px 0 0;
		background:var(--gbb-ink);
		color:#fff;
		font-size:11px;
		font-weight:800;
		letter-spacing:.14em;
	}
	.gbb-header-compact .whb-gbb_catalog_toggle .wd-dropdown-cats { top:72px !important; max-height:calc(100vh - 96px) !important; }
	.whb-gbb_catalog_toggle .wd-dropdown-cats > .wd-nav-vertical {
		display:grid;
		grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(310px,.92fr);
		grid-template-rows:auto auto auto;
		align-items:stretch;
		gap:10px;
		width:100%;
		counter-reset:gbb-menu;
		background:transparent !important;
	}
	/* The editorial panel gives the catalogue a clear visual anchor without
	 * turning every category into a noisy promotional tile. */
	.whb-gbb_catalog_toggle .wd-dropdown-cats > .wd-nav-vertical::after {
		content:"";
		grid-column:3;
		grid-row:1 / span 3;
		min-height:520px;
		border-radius:20px;
		background:
			linear-gradient(180deg,rgba(0,0,0,.03) 44%,rgba(0,0,0,.82) 100%),
			url("images/gbb-mega-menu-editorial-v1.webp") center 46% / cover no-repeat;
		box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
	}
	.whb-gbb_catalog_toggle .wd-dropdown-cats > .wd-nav-vertical::before {
		content:"КОЛЛЕКЦИЯ GBB\A Напитки, чай и подарки";
		z-index:2;
		grid-column:3;
		grid-row:1 / span 3;
		align-self:end;
		margin:0 28px 27px;
		color:#fff;
		font-size:clamp(19px,1.65vw,27px);
		font-weight:760;
		line-height:1.1;
		letter-spacing:-.035em;
		white-space:pre-line;
		pointer-events:none;
	}
	.whb-gbb_catalog_toggle .wd-nav-vertical > li {
		counter-increment:gbb-menu;
		display:block;
		min-width:0;
		width:100%;
		min-height:0;
		margin:0;
		padding:20px 22px 19px;
		border:0 !important;
		border-radius:18px;
		background:var(--gbb-paper);
		transition:transform .22s var(--gbb-ease),background-color .22s ease,box-shadow .22s ease;
	}
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:hover { transform:translateY(-2px); box-shadow:0 14px 30px rgba(0,0,0,.08); }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(1) { grid-column:1; grid-row:1; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2) { grid-column:2; grid-row:1 / span 2; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(3) { grid-column:1; grid-row:2; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(4) { grid-column:1; grid-row:3; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(5) { grid-column:2; grid-row:3; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li::before { content:"0" counter(gbb-menu); display:block; margin-bottom:12px; color:var(--gbb-red); font-size:9px; font-weight:850; letter-spacing:.14em; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li > a { padding:0 0 13px !important; background:transparent !important; color:var(--gbb-ink) !important; font-size:clamp(17px,1.35vw,22px); font-weight:760; line-height:1.1; letter-spacing:-.035em; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:hover > a,
	.whb-gbb_catalog_toggle .wd-nav-vertical > li > a:hover {
		background:transparent !important;
		color:var(--gbb-ink) !important;
		box-shadow:none !important;
		text-decoration:none !important;
	}
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2) { background:var(--gbb-ink); }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2)::before { color:var(--gbb-red); }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2) > a,
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2):hover > a,
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2) > a:hover,
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2) > a :is(span,strong) { color:#fff !important; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(3) { background:#f0eee9; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li > .wd-dropdown-menu {
		position:static !important;
		display:block !important;
		width:auto !important;
		min-width:0 !important;
		padding:0 !important;
		visibility:visible !important;
		opacity:1 !important;
		transform:none !important;
		background:transparent !important;
		box-shadow:none !important;
		pointer-events:none !important;
	}
	.whb-gbb_catalog_toggle.wd-opened .wd-nav-vertical > li > .wd-dropdown-menu { pointer-events:auto !important; }
	.whb-gbb_catalog_toggle .wd-dropdown-menu .container { width:100% !important; padding:0 !important; }
	.whb-gbb_catalog_toggle .wd-sub-menu { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px 16px; background:transparent !important; box-shadow:none !important; }
	.whb-gbb_catalog_toggle .wd-sub-menu a { display:flex; align-items:center; gap:8px; padding:4px 0 !important; color:var(--gbb-muted) !important; font-size:11px; line-height:1.25; }
	.whb-gbb_catalog_toggle .wd-sub-menu a::before { content:""; width:5px; height:5px; flex:0 0 5px; border-radius:50%; background:var(--gbb-red); }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2) .wd-sub-menu a { color:rgba(255,255,255,.72) !important; }
	.whb-gbb_catalog_toggle .wd-sub-menu a:hover { color:var(--gbb-red) !important; }
	.whb-gbb_catalog_toggle .wd-nav-vertical > li:nth-child(2) .wd-sub-menu a:hover { color:#fff !important; }
	@media (max-width:1199px) {
		.whb-gbb_catalog_toggle .wd-dropdown-cats > .wd-nav-vertical { grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(270px,.78fr); }
		.whb-gbb_catalog_toggle .wd-nav-vertical > li { padding:17px 18px; }
		.whb-gbb_catalog_toggle .wd-sub-menu { grid-template-columns:1fr; }
		.whb-gbb_catalog_toggle .wd-sub-menu a { font-size:10px; }
	}
}

@media (max-width:1024px) {
	.gbb-product-insights > header { display:block; }
	.gbb-product-insights h2 { margin-top:12px; }
	.gbb-product-insights__grid { grid-template-columns:1fr; }
	.gbb-world-opinions__header { grid-template-columns:1fr; }
}
@media (max-width:767px) {
	.whb-header {
		position:sticky !important;
		top:0 !important;
		z-index:1100;
		box-shadow:0 10px 30px rgba(0,0,0,.1) !important;
	}
	body.gbb-header-compact .whb-header .whb-top-bar { display:none !important; }
	.woodmart-archive-shop .gbb-catalog-filters__groups { display:block !important; }
	.woodmart-archive-shop .gbb-catalog-filters__group { margin-bottom:7px; }
	.woodmart-archive-shop .gbb-catalog-filters__options { grid-template-columns:1fr 1fr; }
	.woodmart-archive-shop .product-grid-item .wd-compare-btn { display:flex !important; }
	.gbb-shop-list-view.woodmart-archive-shop .wd-products { --wd-col-sm:1 !important; --wd-col:1 !important; }
	.gbb-shop-list-view .gbb-product-row-details { display:block; margin:14px 11px 0; }
	.gbb-shop-list-view .gbb-product-row-details > p { color:var(--gbb-muted); font-size:12px; line-height:1.5; }
	.gbb-shop-list-view .gbb-product-row-details dl { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin:12px 0 0; }
	.gbb-shop-list-view .gbb-product-row-details dl div { padding:8px; border-radius:10px; background:var(--gbb-paper); }
	.gbb-shop-list-view .gbb-product-row-details :is(dt,dd) { margin:0; font-size:9px; }
	.gbb-shop-list-view .gbb-product-row-details dt { color:var(--gbb-muted); }
	.gbb-shop-list-view .gbb-product-row-details dd { color:var(--gbb-ink); font-weight:700; }
	.main-page-wrapper > .container,
	.single-product-page > .container,
	.single-product .product-tabs-inner,
	.single-product .related-and-upsells { width:calc(100% - 24px) !important; }
	.gbb-catalog-view { justify-content:flex-start; overflow-x:auto; }
	.gbb-product-insights-wrap { width:calc(100% - 24px); }
	.gbb-product-insights { padding:34px 22px; border-radius:22px; }
	.gbb-product-insights h2 { font-size:46px; }
	.gbb-product-insights article { min-height:0; }
	.gbb-world-opinions-wrap { width:calc(100% - 24px); }
	.gbb-world-opinions { padding:34px 18px; border-radius:22px; }
	.gbb-world-opinions__header h2 { font-size:44px; }
	.gbb-world-opinions__grid { grid-template-columns:1fr; }
	.gbb-world-opinion { min-height:0; padding:24px 20px; border-radius:18px; }
	.gbb-world-opinion__source { display:block; }
	.gbb-world-opinion__source strong { display:block; margin-top:12px; }
	.gbb-world-opinion footer { display:block; }
	.gbb-world-opinion footer a { display:inline-block; margin-top:16px; }
	.page-id-3678 .wd-page-content { width:calc(100% - 24px); }
	.page-id-3678 .wd-compare-content { overflow-x:auto; -webkit-overflow-scrolling:touch; }
}

/* -------------------------------------------------------------------------
 * Interaction polish: stable header, deterministic category navigation,
 * richer product decision area and a clean delivery-aware cart.
 * ---------------------------------------------------------------------- */
.whb-header .whb-top-bar,
.whb-header .whb-header-bottom {
	overflow:hidden;
	opacity:1;
	transform:translateY(0);
	transition:max-height .28s var(--gbb-ease),min-height .28s var(--gbb-ease),opacity .18s ease,transform .28s var(--gbb-ease) !important;
}
.whb-header .whb-top-bar { max-height:46px; }
.whb-header .whb-header-bottom { max-height:72px; }
.whb-header .whb-general-header { transition:min-height .28s var(--gbb-ease),height .28s var(--gbb-ease) !important; }
body.gbb-header-compact .whb-header :is(.whb-top-bar,.whb-header-bottom) {
	display:flex !important;
	min-height:0 !important;
	max-height:0 !important;
	opacity:0;
	transform:translateY(-10px);
	pointer-events:none;
}

.gbb-category-intro {
	max-width:900px;
	margin:0 0 20px;
	color:var(--gbb-muted);
	font-size:clamp(15px,1.35vw,18px);
	line-height:1.5;
}
.gbb-category-rail {
	display:grid;
	grid-template-columns:minmax(190px,.7fr) minmax(0,3fr);
	gap:10px;
	width:100%;
	margin:18px 0 42px;
}
.gbb-category-rail__intro {
	display:flex;
	min-height:132px;
	flex-direction:column;
	justify-content:space-between;
	padding:22px;
	border-radius:20px;
	background:var(--gbb-ink);
	color:#fff;
}
.gbb-category-rail__intro span { color:var(--gbb-red); font-size:9px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.gbb-category-rail__intro strong { color:#fff; font-size:22px; line-height:1; }
.gbb-category-rail__items { display:flex; gap:7px; overflow-x:auto; padding-bottom:4px; scroll-snap-type:x proximity; scrollbar-width:thin; }
.gbb-category-rail__items a {
	display:flex;
	min-width:180px;
	min-height:132px;
	flex-direction:column;
	justify-content:space-between;
	padding:18px;
	border:0 !important;
	border-radius:20px;
	background:var(--gbb-paper);
	color:var(--gbb-ink) !important;
	text-decoration:none !important;
	scroll-snap-align:start;
	transition:background .2s ease,color .2s ease,transform .25s var(--gbb-ease);
}
.gbb-category-rail__items a:hover { background:var(--gbb-red); color:#fff !important; transform:translateY(-3px); }
.gbb-category-rail__items i { color:var(--gbb-red); font-size:9px; font-style:normal; font-weight:850; }
.gbb-category-rail__items a:hover i { color:#fff; }
.gbb-category-rail__items span { margin-top:auto; font-size:15px; font-weight:750; line-height:1.12; }
.gbb-category-rail__items small { margin-top:8px; color:var(--gbb-muted); font-size:9px; }
.gbb-category-rail__items a:hover small { color:rgba(255,255,255,.72); }

.gbb-product-quick-facts { display:flex; flex-wrap:wrap; gap:7px; margin:4px 0 24px; }
.gbb-product-quick-facts div { min-width:104px; padding:11px 13px; border-radius:14px; background:var(--gbb-paper); }
.gbb-product-quick-facts :is(dt,dd) { margin:0; line-height:1.25; }
.gbb-product-quick-facts dt { margin-bottom:4px; color:var(--gbb-muted); font-size:8px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.gbb-product-quick-facts dd { color:var(--gbb-ink); font-size:11px; font-weight:750; }
.gbb-product-fulfilment { margin-top:22px; padding-top:22px; border-top:1px solid #e6e4df; }
.gbb-product-fulfilment header { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:10px; }
.gbb-product-fulfilment header span { color:var(--gbb-red); font-size:9px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.gbb-product-fulfilment header strong { color:var(--gbb-muted); font-size:9px; font-weight:650; text-align:right; }
.gbb-product-fulfilment > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
@media (min-width:768px) { .gbb-product-fulfilment--non-alcohol > div { grid-template-columns:repeat(3,minmax(0,1fr)); } }
.gbb-product-fulfilment article { display:flex; min-width:0; align-items:center; gap:10px; padding:12px; border-radius:15px; background:var(--gbb-paper); }
.gbb-product-fulfilment article i { display:flex; width:34px; height:34px; flex:0 0 34px; align-items:center; justify-content:center; border-radius:50%; background:var(--gbb-ink); color:#fff; font-size:8px; font-style:normal; font-weight:850; }
.gbb-product-fulfilment article:nth-child(2) i { background:var(--gbb-red); }
.gbb-product-fulfilment p { min-width:0; margin:0; }
.gbb-product-fulfilment :is(strong,small) { display:block; }
.gbb-product-fulfilment strong { color:var(--gbb-ink); font-size:10px; }
.gbb-product-fulfilment small { margin-top:3px; color:var(--gbb-muted); font-size:8px; line-height:1.3; }
.single-product-page .summary-inner { padding:clamp(22px,3vw,38px); border-radius:26px; background:#fff; }
.single-product-page .woocommerce-product-gallery { padding:clamp(18px,2vw,30px); border-radius:28px; background:var(--gbb-paper); }
.single-product-page .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) > a {
	display:grid !important;
	width:100%;
	min-height:clamp(420px,48vw,680px);
	place-items:center;
	overflow:visible !important;
}
.single-product-page .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) img {
	display:block !important;
	width:100% !important;
	height:100% !important;
	max-width:100% !important;
	max-height:680px !important;
	margin:auto !important;
	object-fit:contain !important;
	object-position:center !important;
}
.single-product .woocommerce-tabs .wd-tab-wrapper { padding:clamp(24px,4vw,48px); border-radius:24px; background:#fff; }
.single-product .woocommerce-tabs .woocommerce-Tabs-panel { max-width:1180px; margin-inline:auto; color:var(--gbb-ink); font-size:15px; line-height:1.65; }

/* Cart: high contrast, no pink surfaces, and only useful fulfilment controls. */
.woocommerce-cart .main-page-wrapper { background:#fff; }
.woocommerce-cart .wp-block-woocommerce-cart { width:100%; }
.woocommerce-cart .wc-block-cart-items tbody tr { position:relative; background:#fff !important; }
.woocommerce-cart .wc-block-cart-item__product { padding-block:20px !important; }
.woocommerce-cart .wc-block-components-product-name { color:var(--gbb-ink) !important; font-size:clamp(16px,1.5vw,21px); font-weight:700; line-height:1.2; }
.woocommerce-cart .wc-block-components-product-price,
.woocommerce-cart .wc-block-components-product-metadata { color:var(--gbb-muted) !important; }
.woocommerce-cart .wc-block-components-product-metadata__description { display:none; }
.woocommerce-cart .wc-block-cart__sidebar {
	position:sticky;
	top:86px;
	align-self:start;
}
.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
.woocommerce-cart .wc-block-components-sidebar {
	background:#f2f1ed !important;
}
.woocommerce-cart :is(.wc-block-components-radio-control,.wc-block-components-radio-control__option,.wc-block-components-shipping-rates-control) {
	border:0 !important;
	border-radius:16px !important;
	background:#fff !important;
	box-shadow:none !important;
}
.woocommerce-cart .wc-block-components-radio-control__option { margin:6px !important; padding:14px !important; }
.woocommerce-cart .wc-block-components-radio-control__option:has(input:checked) { background:var(--gbb-ink) !important; color:#fff !important; }
.woocommerce-cart .wc-block-components-radio-control__option:has(input:checked) :is(label,span,strong,small) { color:#fff !important; }
.woocommerce-cart input,
.woocommerce-cart select { border:0 !important; border-radius:13px !important; background:#fff !important; color:var(--gbb-ink) !important; box-shadow:none !important; }
.woocommerce-cart input:focus,
.woocommerce-cart select:focus { box-shadow:0 0 0 3px rgba(227,6,19,.14) !important; }
.woocommerce-cart .wc-block-components-totals-coupon__form { gap:8px; }
.woocommerce-cart .wc-block-components-totals-coupon__button { min-height:48px; padding-inline:18px !important; background:var(--gbb-ink) !important; color:#fff !important; }
.gbb-shipping-note { display:block; max-width:360px; margin-top:5px; color:var(--gbb-muted); font-size:9px; font-weight:500; line-height:1.35; }
.gbb-cart-delivery { margin:0 0 26px; padding:clamp(20px,3vw,32px); border-radius:26px; background:var(--gbb-ink); color:#fff; }
.gbb-cart-delivery > header { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:18px; }
.gbb-cart-delivery > header span { color:var(--gbb-red); font-size:9px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.gbb-cart-delivery > header strong { color:#fff; font-size:clamp(20px,2vw,28px); letter-spacing:-.035em; }
.gbb-cart-delivery > div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.gbb-cart-delivery article { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:12px; padding:16px; border-radius:18px; background:#252525; }
.gbb-cart-delivery article i { display:flex; width:42px; height:42px; align-items:center; justify-content:center; border-radius:50%; background:var(--gbb-red); color:#fff; font-size:9px; font-style:normal; font-weight:850; }
.gbb-cart-delivery article:nth-child(2) i { background:#fff; color:var(--gbb-ink); }
.gbb-cart-delivery article p { margin:0; }
.gbb-cart-delivery article :is(strong,small) { display:block; color:#fff; }
.gbb-cart-delivery article strong { font-size:13px; }
.gbb-cart-delivery article small { margin-top:4px; color:rgba(255,255,255,.55); font-size:9px; line-height:1.35; }
.gbb-cart-delivery article em { color:rgba(255,255,255,.7); font-size:9px; font-style:normal; font-weight:700; white-space:nowrap; }
.gbb-cart-delivery__note { margin:15px 0 0; color:rgba(255,255,255,.52); font-size:9px; }

/* Checkout uses the same neutral surfaces as the cart. */
.woocommerce-checkout .wc-block-components-radio-control__option:has(input:checked),
.woocommerce-checkout .wc-block-components-checkbox:has(input:checked) { background:#f2f1ed !important; }

/* Keep the WooCommerce Blocks checkmark inside its native control. */
:is(.woocommerce-cart,.woocommerce-checkout) .wc-block-components-checkbox > label {
	display:grid !important;
	position:relative !important;
	grid-template-columns:20px minmax(0,1fr) !important;
	align-items:start !important;
	column-gap:11px !important;
	min-width:0;
}
:is(.woocommerce-cart,.woocommerce-checkout) .wc-block-components-checkbox__input,
:is(.woocommerce-cart,.woocommerce-checkout) input[type="checkbox"] {
	width:20px !important;
	height:20px !important;
	min-width:20px !important;
	min-height:20px !important;
	max-width:20px !important;
	max-height:20px !important;
	margin:0 !important;
	grid-column:1;
	grid-row:1;
}
:is(.woocommerce-cart,.woocommerce-checkout) .wc-block-components-checkbox__mark {
	position:absolute !important;
	top:2px !important;
	left:2px !important;
	width:16px !important;
	height:16px !important;
	min-width:16px !important;
	min-height:16px !important;
	max-width:16px !important;
	max-height:16px !important;
	pointer-events:none;
}
:is(.woocommerce-cart,.woocommerce-checkout) .wc-block-components-checkbox__label {
	display:block !important;
	min-width:0;
	margin:0 !important;
	grid-column:2;
	grid-row:1;
	line-height:1.45 !important;
	text-align:left !important;
}

/* Touch layouts must not zoom a card or its image on tap/focus. */
@media (max-width:1024px) {
	:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item,
	:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item:is(:hover,:focus,:focus-within),
	:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item .product-wrapper,
	:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item:is(:hover,:focus,:focus-within) .product-wrapper,
	:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item .wd-product-img-link img,
	:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item:is(:hover,:focus,:focus-within) .wd-product-img-link img {
		transform:none !important;
	}
}

@media (max-width:767px) {
	.single-product-page .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) > a { min-height:360px; }
	.single-product-page .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) img { max-height:520px !important; }
	:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item:is(:hover,:focus,:focus-within) .product-wrapper {
		min-height:410px !important;
	}
}

@media (max-width:767px) {
	/* A real, visible mobile toolbar; Woodmart's late stylesheet otherwise
	 * replaces its black background while leaving our white labels in place. */
	.wd-toolbar {
		height:60px !important;
		padding:4px 8px !important;
		border:0 !important;
		border-top:2px solid var(--gbb-red) !important;
		background:var(--gbb-ink) !important;
		box-shadow:0 -10px 30px rgba(0,0,0,.14) !important;
	}
	.wd-toolbar > .wd-tools-element { display:flex; flex:1 1 0; }
	.wd-toolbar .wd-tools-element > a {
		display:flex !important;
		width:100%;
		min-height:50px;
		align-items:center;
		justify-content:center;
		padding:5px 3px 16px !important;
		color:#fff !important;
	}
	.wd-toolbar :is(.wd-tools-icon,.wd-tools-icon::before,.wd-toolbar-label) { color:#fff !important; opacity:1 !important; }
	.wd-toolbar .wd-toolbar-label { bottom:4px; font-size:8px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
	.wd-toolbar .wd-header-my-account .wd-toolbar-label { font-size:0; }
	.wd-toolbar .wd-header-my-account .wd-toolbar-label::after { content:"Кабинет"; font-size:8px; }
	html[lang^="ro"] .wd-toolbar .wd-header-my-account .wd-toolbar-label::after { content:"Cont"; }
	html[lang^="en"] .wd-toolbar .wd-header-my-account .wd-toolbar-label::after { content:"Account"; }
	.wd-toolbar .wd-tools-count { background:var(--gbb-red) !important; color:#fff !important; }

	.gbb-mobile-filter-toggle {
		display:flex;
		width:100%;
		min-height:62px;
		align-items:center;
		justify-content:space-between;
		gap:16px;
		margin:0 0 12px;
		padding:0 18px !important;
		border:0 !important;
		border-radius:18px !important;
		background:var(--gbb-ink) !important;
		color:#fff !important;
		box-shadow:none !important;
		text-align:left;
		text-transform:none !important;
	}
	.gbb-mobile-filter-toggle span { display:flex; align-items:center; gap:10px; color:#fff; font-size:13px; font-weight:800; }
	.gbb-mobile-filter-toggle small { color:rgba(255,255,255,.58); font-size:9px; font-weight:650; }
	.gbb-mobile-filter-toggle i { position:relative; width:18px; height:12px; border-block:2px solid currentColor; }
	.gbb-mobile-filter-toggle i::after { position:absolute; top:3px; left:0; width:18px; border-top:2px solid currentColor; content:""; }
	.gbb-mobile-filter-toggle[aria-expanded="true"] { background:var(--gbb-red) !important; }
	.gbb-catalog-layout__sidebar { display:none; }
	.gbb-catalog-layout__sidebar[data-gbb-mobile-open] { display:block; animation:gbbFilterOpen .28s var(--gbb-ease) both; }
	.gbb-catalog-layout__main { min-width:0; }
	@keyframes gbbFilterOpen { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:none; } }

	.wd-page-title .container { width:calc(100% - 24px) !important; }
	.gbb-category-rail { display:block; margin-bottom:28px; }
	.gbb-category-rail__intro { min-height:100px; margin-bottom:7px; }
	.gbb-category-rail__items a { min-width:154px; min-height:116px; }
	.gbb-catalog-view > span { display:none; }
	.gbb-catalog-view a { width:42px; height:42px; flex:0 0 42px; }
	.single-product-page .summary-inner { padding:20px 16px; border-radius:20px; }
	.single-product-page .woocommerce-product-gallery { padding:12px; border-radius:20px; }
	.gbb-product-fulfilment > div { grid-template-columns:1fr; }
	.gbb-product-fulfilment article { min-height:60px; }
	.gbb-product-fulfilment header { align-items:flex-start; flex-direction:column; }
	.gbb-product-fulfilment header strong { text-align:left; }
	.woocommerce-cart .wc-block-cart__sidebar { position:static; }
	.woocommerce-cart .wc-block-components-sidebar-layout,
	.woocommerce-cart .wc-block-cart { display:block !important; }
	.woocommerce-cart :is(.wc-block-cart__main,.wc-block-cart__sidebar,.wc-block-components-main,.wc-block-components-sidebar) {
		width:100% !important;
		max-width:none !important;
		margin-inline:0 !important;
	}
	.woocommerce-cart .wc-block-cart__sidebar { margin-top:26px !important; }
	.woocommerce-cart :is(.wc-block-cart-items,.wc-block-cart-items__row) { width:100% !important; }
	.woocommerce-cart .wc-block-components-title,
	.woocommerce-cart .wc-block-components-totals-wrapper > :is(h2,h3),
	.woocommerce-cart .wc-block-cart__submit-container { text-align:center !important; }
	.woocommerce-cart .wc-block-cart__submit-container { display:flex !important; justify-content:center !important; }
	.woocommerce-cart .wc-block-cart__submit-button {
		display:flex !important;
		width:100% !important;
		max-width:none !important;
		justify-content:center !important;
		text-align:center !important;
		white-space:normal !important;
	}
	.woocommerce-cart .wc-block-cart-item__image { padding-right:10px !important; }
	.woocommerce-cart .wc-block-cart-item__product { padding:12px 0 !important; }
	.gbb-shipping-note { font-size:8px; }
	.gbb-cart-delivery { margin-bottom:18px; padding:20px 16px; border-radius:20px; }
	.gbb-cart-delivery > header { align-items:flex-start; flex-direction:column; gap:5px; }
	.gbb-cart-delivery > div { grid-template-columns:1fr; }
	.gbb-cart-delivery article { grid-template-columns:38px minmax(0,1fr); }
	.gbb-cart-delivery article i { width:38px; height:38px; }
	.gbb-cart-delivery article em { grid-column:2; }
}

@media (min-width:768px) {
	.gbb-mobile-filter-toggle { display:none !important; }
}

/* Final contrast guard: interactive commerce states must remain legible even
 * when WooCommerce Blocks or a shipping extension injects its own colours. */
.gbb-cart-delivery > header span {
	display:inline-flex;
	align-items:center;
	min-height:24px;
	padding:4px 8px;
	border-radius:999px;
	background:var(--gbb-red);
	color:#fff !important;
}

:is(.woocommerce-cart,.woocommerce-checkout)
	.wc-block-formatted-money-amount {
	color:#c4000b !important;
}

:is(.woocommerce-cart,.woocommerce-checkout)
	:is(button,[role="button"],.button,.wc-block-components-button).has-dark-background,
:is(.woocommerce-cart,.woocommerce-checkout)
	:is(button,[role="button"],.button,.wc-block-components-button)[style*="background-color: rgb(23, 23, 23)"] {
	color:#fff !important;
}

.gbb-brands__hero .gbb-brands__eyebrow {
	display:inline-flex;
	align-items:center;
	min-height:26px;
	padding:5px 9px;
	border-radius:999px;
	background:var(--gbb-red);
	color:#fff !important;
}

.woocommerce-account .wd-breadcrumbs a { color:#62625f !important; opacity:1; }
.woocommerce-account .woocommerce-LostPassword { color:#c4000b !important; }

@media (max-width:767px) {
	/* Woo Blocks hydrate the complete checkout client-side. Reserve the real
	 * mobile form height while its spinner is visible so the footer cannot flash
	 * into view and then jump several screens down. */
	.woocommerce-checkout .wc-block-checkout.is-loading { min-height:4200px; }
}

/* RU / RO switcher: a compact GBB control that remains clear over every page
 * and sits above Woodmart's fixed mobile commerce toolbar. */
.trp-floating-switcher {
	--bg:var(--gbb-ink) !important;
	--bg-hover:var(--gbb-red) !important;
	--text:#fff !important;
	--text-hover:#fff !important;
	--border:none !important;
	--border-radius:999px !important;
	--switcher-padding:4px 0 !important;
	--bottom:18px !important;
	--right:24px !important;
	min-width:118px;
	border:0 !important;
	box-shadow:0 12px 34px rgba(0,0,0,.22) !important;
}
.trp-floating-switcher .trp-language-item { min-height:32px; padding:6px 14px; border-radius:999px; }
.trp-floating-switcher .trp-language-item-name { color:#fff !important; font-size:12px; font-weight:750; }
.trp-floating-switcher .trp-switcher-dropdown-list { gap:3px; }
.trp-floating-switcher .trp-language-item:focus-visible { outline:2px solid #fff; outline-offset:2px; }

@media (max-width:767px) {
	.trp-floating-switcher {
		--bottom:74px !important;
		--right:12px !important;
		min-width:104px;
	}
	.trp-floating-switcher .trp-language-item { min-height:30px; padding:5px 11px; }
}

/* Checkout mobile/tablet contract. WooCommerce renders a second nested
 * .wc-block-checkout wrapper, so generic padding rules used to compound and
 * leave the form narrow, with mismatched type and a broken product summary. */
@media (max-width:1024px) {
	.woocommerce-checkout .wp-block-woocommerce-checkout.wc-block-checkout {
		width:100% !important;
		max-width:none !important;
		padding-inline:0 !important;
	}
	.woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
		display:block !important;
		width:100% !important;
		max-width:none !important;
		padding:0 !important;
	}
	.woocommerce-checkout :is(.wc-block-checkout__main,.wc-block-checkout__sidebar,.wc-block-components-main,.wc-block-components-sidebar) {
		width:100% !important;
		max-width:none !important;
		margin-inline:0 !important;
	}
	.woocommerce-checkout .wc-block-checkout__sidebar { position:static !important; margin-top:18px !important; }

	.woocommerce-checkout .wc-block-components-checkout-step {
		margin-bottom:10px !important;
		padding:24px !important;
		border-radius:22px !important;
	}
	.woocommerce-checkout .wc-block-components-checkout-step__title {
		margin:0 0 18px !important;
		font-size:22px !important;
		font-weight:700 !important;
		letter-spacing:-.035em !important;
		line-height:1.15 !important;
		text-align:left !important;
	}
	.woocommerce-checkout :is(.wc-block-components-checkout-step__description,.wc-block-checkout__guest-checkout-notice,.wc-block-components-address-card address) {
		font-size:14px !important;
		font-weight:500 !important;
		line-height:1.5 !important;
	}
	.woocommerce-checkout :is(.wc-block-components-text-input input,.wc-block-components-combobox .components-combobox-control__input,.wc-block-components-select select,.wc-blocks-components-select__select,.wc-block-components-address-form__address_2-hidden-input) {
		min-height:52px !important;
		padding-inline:15px !important;
		font-size:16px !important;
		font-weight:500 !important;
		letter-spacing:0 !important;
		line-height:1.35 !important;
	}
	.woocommerce-checkout :is(.wc-block-components-text-input label,.wc-block-components-text-input__label,.wc-block-components-combobox label,.wc-block-components-select label,.wc-blocks-components-select__label) {
		font-size:12px !important;
		font-weight:650 !important;
		letter-spacing:0 !important;
		line-height:1.25 !important;
	}

	.woocommerce-checkout .wc-block-components-radio-control { padding:5px !important; }
	.woocommerce-checkout .wc-block-components-radio-control__option {
		grid-template-columns:20px minmax(0,1fr) !important;
		min-height:62px !important;
		margin:3px !important;
		padding:14px 12px !important;
		column-gap:10px !important;
	}
	.woocommerce-checkout .wc-block-components-radio-control__input {
		width:20px !important;
		height:20px !important;
		min-width:20px !important;
		margin-top:1px !important;
	}
	.woocommerce-checkout .wc-block-components-radio-control__label-group {
		display:grid !important;
		grid-template-columns:minmax(0,1fr) auto !important;
		align-items:start !important;
		gap:5px 10px !important;
	}
	.woocommerce-checkout .wc-block-components-radio-control__label {
		font-size:14px !important;
		font-weight:700 !important;
		line-height:1.35 !important;
	}
	.woocommerce-checkout .wc-block-components-radio-control__secondary-label {
		position:static !important;
		margin:0 !important;
		font-size:13px !important;
		font-weight:750 !important;
		line-height:1.35 !important;
		white-space:normal !important;
		text-align:right !important;
	}
	.woocommerce-checkout :is(.wc-block-components-radio-control__description,.wc-block-components-payment-method-description) {
		font-size:13px !important;
		line-height:1.45 !important;
	}
	.woocommerce-checkout .wc-block-components-payment-method-label img {
		width:auto !important;
		max-width:112px !important;
		height:auto !important;
		max-height:34px !important;
		object-fit:contain !important;
	}
	.woocommerce-checkout .wc-block-components-checkbox__label {
		font-size:13px !important;
		font-weight:600 !important;
		letter-spacing:0 !important;
		line-height:1.45 !important;
	}
	.woocommerce-checkout .wc-block-checkout__terms {
		font-size:12px !important;
		font-weight:500 !important;
		line-height:1.5 !important;
	}

	.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block,
	.woocommerce-checkout .wc-block-components-sidebar {
		padding:24px !important;
		border-radius:22px !important;
	}
	.woocommerce-checkout .wc-block-components-order-summary-item {
		display:grid !important;
		grid-template-columns:64px minmax(0,1fr) auto !important;
		align-items:center !important;
		gap:12px !important;
		padding:14px 0 !important;
	}
	.woocommerce-checkout .wc-block-components-order-summary-item__image {
		display:block !important;
		position:relative !important;
		width:64px !important;
		height:64px !important;
		grid-column:1 !important;
	}
	.woocommerce-checkout .wc-block-components-order-summary-item__image img {
		display:block !important;
		width:64px !important;
		height:64px !important;
		padding:7px !important;
		object-fit:contain !important;
	}
	.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
		top:-6px !important;
		right:-6px !important;
	}
	.woocommerce-checkout .wc-block-components-order-summary-item__description {
		min-width:0 !important;
		grid-column:2 !important;
	}
	.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
		margin:0 !important;
		font-size:14px !important;
		font-weight:700 !important;
		letter-spacing:-.015em !important;
		line-height:1.35 !important;
	}
	.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices { display:none !important; }
	.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
		min-width:68px !important;
		grid-column:3 !important;
		font-size:14px !important;
		font-weight:750 !important;
		line-height:1.3 !important;
		text-align:right !important;
	}
	.woocommerce-checkout .wc-block-components-totals-item {
		font-size:14px !important;
		line-height:1.4 !important;
	}
	.woocommerce-checkout .wc-block-components-totals-footer-item {
		font-size:17px !important;
		font-weight:750 !important;
	}
	.woocommerce-checkout .wc-block-checkout__actions {
		display:block !important;
		width:100% !important;
		max-width:none !important;
	}
	.woocommerce-checkout .wc-block-checkout__actions > :is(.css-0,.wc-block-components-notices,.wc-block-components-notices__snackbar,.wc-block-checkout__actions_row) {
		width:100% !important;
		max-width:none !important;
	}
	.woocommerce-checkout .wc-block-checkout__actions_row {
		display:flex !important;
		position:static !important;
		clear:both !important;
		width:100% !important;
		margin-top:18px !important;
		justify-content:stretch !important;
	}
	.woocommerce-checkout .wc-block-components-checkout-place-order-button {
		display:flex !important;
		flex:1 1 100% !important;
		width:100% !important;
		max-width:none !important;
		margin:0 !important;
		min-height:54px !important;
		justify-content:center !important;
		font-size:14px !important;
		font-weight:750 !important;
		letter-spacing:0 !important;
		text-align:center !important;
	}
}

@media (min-width:768px) and (max-width:1024px) {
	.woocommerce-checkout .wd-toolbar { display:none !important; }
}

/* -------------------------------------------------------------------------
 * Brand directory v2 — compact mobile navigation, true logo canvases and a
 * richer live brand book. This is intentionally last so Woodmart cannot move
 * the logo/count layers back on top of one another.
 * ---------------------------------------------------------------------- */
.gbb-brands__hero > div { max-width:900px; }
.gbb-brands__hero-stats {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:30px;
}
.gbb-brands__hero-stats span {
	display:grid;
	min-width:112px;
	padding:12px 15px;
	border-radius:14px;
	background:rgba(255,255,255,.08);
	color:rgba(255,255,255,.58);
	font-size:10px;
	font-weight:650;
	line-height:1.2;
}
.gbb-brands__hero-stats b { color:#fff; font-size:20px; font-weight:780; letter-spacing:-.04em; }

.gbb-brands__grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.gbb-brand-card {
	min-height:292px;
	justify-content:flex-start;
	padding:24px;
}
.gbb-brand-card__top {
	position:relative;
	display:flex;
	min-height:78px;
	align-items:flex-start;
	justify-content:space-between;
	gap:14px;
}
.gbb-brand-card__mark,
.gbb-brand-card__mark:has(.gbb-brand-card__logo) {
	position:relative;
	top:auto;
	right:auto;
	display:flex;
	width:min(58%,170px);
	height:62px;
	align-items:flex-start;
	justify-content:flex-start;
	place-items:initial;
	flex:0 1 170px;
	font-size:0;
}
.gbb-brand-card__logo {
	width:auto;
	max-width:100%;
	height:auto;
	max-height:58px;
	object-fit:contain;
	object-position:left top;
	filter:none;
	opacity:1;
}
.gbb-brand-card__wordmark {
	width:100%;
	color:rgba(23,23,23,.34);
	font-size:clamp(14px,1.4vw,21px);
	text-align:left;
}
.gbb-brand-card__count {
	position:relative;
	top:auto;
	left:auto;
	flex:0 0 auto;
	padding:6px 8px;
	border-radius:999px;
	background:rgba(255,255,255,.7);
	color:var(--gbb-muted);
	font-size:9px;
	letter-spacing:0;
	white-space:nowrap;
}
.gbb-brand-card__origin {
	display:block;
	min-height:16px;
	margin:6px 0 10px;
	color:var(--gbb-red);
	font-size:9px;
	font-weight:780;
	letter-spacing:.075em;
	text-transform:uppercase;
}
.gbb-brand-card strong { margin-top:auto; font-size:clamp(25px,2.3vw,38px); }
.gbb-brand-card p {
	display:-webkit-box;
	min-height:35px;
	margin-top:10px;
	overflow:hidden;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
}
.gbb-brand-card small { margin-top:14px; }
.gbb-brand-card:hover .gbb-brand-card__logo { filter:none; opacity:1; }
.gbb-brand-card:hover .gbb-brand-card__count { background:rgba(255,255,255,.16); color:#fff; }
.gbb-brand-card:hover .gbb-brand-card__origin { color:rgba(255,255,255,.74); }

/* Opaque official packshots visually inherit the category tile rather than
 * showing their old white studio canvas. Transparent PNG/WebP images are not
 * affected because their alpha channel remains intact. */
.gbb-home-category__product {
	background:transparent !important;
	mix-blend-mode:multiply;
}

.tax-pa_brand .gbb-brand-archive__logo {
	display:flex;
	width:min(240px,62%);
	min-height:0;
	align-items:flex-start;
	justify-content:flex-start;
	margin-bottom:26px;
	padding:0;
	border-radius:0;
	background:transparent;
}
.tax-pa_brand .gbb-brand-archive__logo img {
	max-width:100%;
	max-height:72px;
	filter:brightness(0) invert(1);
	object-fit:contain;
	object-position:left center;
}
.tax-pa_brand .gbb-brand-archive > span { opacity:.22; pointer-events:none; }

.gbb-brand-assortment {
	display:grid;
	grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
	gap:clamp(34px,7vw,110px);
	margin:0 0 52px;
	padding:clamp(32px,5vw,68px);
	border-radius:var(--gbb-radius-lg);
	background:var(--gbb-brand-primary,var(--gbb-ink));
	color:var(--gbb-brand-on-primary,#fff);
}
.gbb-brand-assortment h2 {
	margin:0;
	color:inherit;
	font-size:clamp(42px,5.5vw,74px);
	font-weight:700;
	letter-spacing:-.06em;
	line-height:.9;
}
.gbb-brand-assortment h2 em { color:var(--gbb-brand-accent,var(--gbb-red)); font-style:normal; }
.gbb-brand-assortment header > p:last-child { max-width:520px; margin:24px 0 0; color:color-mix(in srgb,var(--gbb-brand-on-primary,#fff) 65%,transparent); font-size:14px; line-height:1.55; }
.gbb-brand-assortment__body { display:flex; flex-direction:column; justify-content:center; }
.gbb-brand-assortment__stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.gbb-brand-assortment__stats span {
	display:grid;
	min-height:104px;
	align-content:end;
	padding:16px;
	border-radius:18px;
	background:color-mix(in srgb,var(--gbb-brand-on-primary,#fff) 10%,transparent);
	color:color-mix(in srgb,var(--gbb-brand-on-primary,#fff) 62%,transparent);
	font-size:10px;
	font-weight:650;
}
.gbb-brand-assortment__stats b { color:var(--gbb-brand-on-primary,#fff); font-size:34px; font-weight:780; letter-spacing:-.055em; }
.gbb-brand-assortment__categories { display:flex; flex-wrap:wrap; gap:7px; margin-top:18px; }
.gbb-brand-assortment__categories span { display:flex; min-height:38px; align-items:center; gap:8px; padding:0 12px; border-radius:999px; background:color-mix(in srgb,var(--gbb-brand-on-primary,#fff) 10%,transparent); color:var(--gbb-brand-on-primary,#fff); font-size:10px; font-weight:700; }
.gbb-brand-assortment__categories b { display:grid; min-width:20px; height:20px; place-items:center; border-radius:50%; background:var(--gbb-brand-accent,var(--gbb-red)); color:#fff; font-size:8px; }
.gbb-brand-assortment__cta { display:inline-flex; width:max-content; min-height:46px; align-items:center; margin-top:22px; padding:0 18px; border-radius:999px; background:var(--gbb-brand-accent,var(--gbb-red)); color:#fff !important; font-size:10px; font-weight:800; text-decoration:none !important; text-transform:uppercase; }

@media (max-width:1199px) {
	.gbb-brands__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:1024px) {
	/* Revealed content must never disappear on touch devices if an observer is
	 * interrupted by a sticky browser/header transition. */
	.gbb-motion [data-gbb-reveal] { opacity:1; transform:none; }
	.gbb-brands__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.gbb-brand-assortment { grid-template-columns:1fr; }
}

@media (max-width:767px) {
	.gbb-brands { width:calc(100% - 24px); padding:10px 0 96px; }
	.gbb-brands__hero {
		min-height:0;
		padding:34px 22px 28px;
		border-radius:22px;
	}
	.gbb-brands__hero h1 { margin-bottom:18px; font-size:42px; line-height:.93; }
	.gbb-brands__hero p:last-of-type { font-size:14px; }
	.gbb-brands__hero > span { top:26px; right:-22px; font-size:128px; transform:none; }
	.gbb-brands__hero-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin-top:24px; }
	.gbb-brands__hero-stats span { min-width:0; padding:10px; }
	.gbb-brands__hero-stats b { font-size:18px; }
	.gbb-brands__directory { padding-top:60px; }
	.gbb-brands__directory h2 { font-size:42px; }
	.gbb-brands__tools { gap:14px; margin-bottom:18px; }
	.gbb-brands__tools input { min-height:50px; border-radius:14px; }
	.gbb-brands__tools nav { margin-right:-12px; padding-right:12px; scroll-padding-inline:12px; }
	.gbb-brands__tools button { min-width:40px; height:40px; }
	.gbb-brands__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
	.gbb-brand-card { min-height:242px; padding:15px; border-radius:17px; }
	.gbb-brand-card__top { display:grid; min-height:76px; gap:7px; }
	.gbb-brand-card__mark,
	.gbb-brand-card__mark:has(.gbb-brand-card__logo) { top:auto; right:auto; width:100%; height:43px; }
	.gbb-brand-card__logo { max-height:42px; }
	.gbb-brand-card__wordmark { font-size:14px; }
	.gbb-brand-card__count { width:max-content; padding:4px 7px; font-size:8px; }
	.gbb-brand-card__origin { margin:6px 0 7px; font-size:8px; }
	.gbb-brand-card strong { font-size:22px; line-height:.98; overflow-wrap:anywhere; }
	.gbb-brand-card p { min-height:32px; margin-top:7px; font-size:10px; line-height:1.35; }
	.gbb-brand-card small { margin-top:10px; font-size:9px; }
	.gbb-brand-card:hover { transform:none; }

	.tax-pa_brand .gbb-brand-archive { min-height:0; padding:32px 22px 30px; }
	.tax-pa_brand .gbb-brand-archive__logo { width:min(210px,70%); margin-bottom:22px; }
	.tax-pa_brand .gbb-brand-archive__logo img { max-height:58px; }
	.tax-pa_brand .gbb-brand-archive h1 { font-size:48px; line-height:.92; }
	.tax-pa_brand .gbb-brand-archive__tagline { font-size:19px; }
	.tax-pa_brand .gbb-brand-archive div>p:last-of-type { max-width:72%; font-size:15px; }
	.tax-pa_brand .gbb-brand-archive > span { top:auto; right:-.04em; bottom:120px; font-size:190px; opacity:.16; }
	.gbb-brand-archive__facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
	.gbb-brand-archive__facts span { min-width:0; }
	.gbb-brand-archive__actions { display:grid; grid-template-columns:1fr; }
	.gbb-brand-archive__actions a { justify-content:center; }
	.gbb-brand-story { margin-bottom:14px; }
	.gbb-brand-story h2 { font-size:40px; }
	.gbb-brand-assortment { gap:28px; margin-bottom:36px; padding:30px 22px; border-radius:22px; }
	.gbb-brand-assortment h2 { font-size:40px; }
	.gbb-brand-assortment__stats { grid-template-columns:1fr 1fr; }
	.gbb-brand-assortment__stats span { min-height:94px; }
	.gbb-brand-assortment__stats span:last-child { grid-column:1/-1; min-height:74px; }
}

@media (max-width:350px) {
	.gbb-brands__grid { grid-template-columns:1fr; }
}

@media (max-width:767px) {
	.woocommerce-checkout .wc-block-components-checkout-step { padding:20px 16px !important; border-radius:18px !important; }
	.woocommerce-checkout .wc-block-components-checkout-step__title { font-size:20px !important; }
	.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block,
	.woocommerce-checkout .wc-block-components-sidebar { padding:16px !important; border-radius:18px !important; }
	.woocommerce-checkout .wc-block-checkout__sidebar { display:none !important; }
	.woocommerce-checkout .wc-block-components-order-summary-item {
		grid-template-columns:56px minmax(0,1fr) auto !important;
		gap:10px !important;
	}
	.woocommerce-checkout .wc-block-components-order-summary-item__image,
	.woocommerce-checkout .wc-block-components-order-summary-item__image img { width:56px !important; height:56px !important; }
	.woocommerce-checkout .wc-block-components-order-summary-item__total-price { min-width:62px !important; font-size:13px !important; }
}

/* The additional-information fieldset is a replaced Woo Blocks component.
 * Keep its heading on the full content column even during hydration/reflow. */
.woocommerce-checkout #order-fields,
.woocommerce-checkout #order-fields :is(.wc-block-components-checkout-step__heading-container,.wc-block-components-checkout-step__heading,.wc-block-components-checkout-step__title) {
	box-sizing:border-box !important;
	width:100% !important;
	min-width:0 !important;
	max-width:none !important;
}
.woocommerce-checkout #order-fields .wc-block-components-checkout-step__heading-container,
.woocommerce-checkout #order-fields .wc-block-components-checkout-step__heading {
	display:block !important;
}
.woocommerce-checkout #order-fields .wc-block-components-checkout-step__title {
	white-space:normal !important;
	word-break:normal !important;
	overflow-wrap:normal !important;
	hyphens:none !important;
}

@media (min-width:768px) and (max-width:1024px) {
	.gbb-cart-delivery > div { grid-template-columns:1fr; }
}

/* -------------------------------------------------------------------------
 * Home catalogue — real product photography from reviewed brand cards.
 * ---------------------------------------------------------------------- */
.gbb-home-categories__grid {
	display:grid;
	grid-template-columns:repeat(12,minmax(0,1fr));
	gap:16px;
}
.gbb-home-category {
	min-height:370px;
	padding:26px;
	isolation:isolate;
	background:#f2f0eb;
	box-shadow:none;
}
.gbb-home-category--wine { grid-column:span 5; background:linear-gradient(145deg,#f1e8e6 0%,#e6d5d1 100%); }
.gbb-home-category--spirits { grid-column:span 7; background:linear-gradient(135deg,#0f0f10 0%,#252224 100%); color:#fff; }
.gbb-home-category--soft { grid-column:span 4; background:linear-gradient(145deg,#eef1ef 0%,#dce7e1 100%); }
.gbb-home-category--tea { grid-column:span 4; background:linear-gradient(145deg,#f1ece0 0%,#dfd3bb 100%); }
.gbb-home-category--tools { grid-column:span 4; background:linear-gradient(145deg,#f2f2f0 0%,#deded9 100%); }
.gbb-home-category--gifts {
	grid-column:1 / -1;
	min-height:290px;
	background:linear-gradient(115deg,#e30613 0%,#bd0010 56%,#171717 56.1%,#171717 100%);
	color:#fff;
}
.gbb-home-category:hover { color:var(--gbb-ink); box-shadow:0 12px 30px rgba(21,18,15,.07); }
.gbb-home-category:focus-visible { outline:2px solid var(--gbb-red); outline-offset:4px; }
.gbb-home-category--spirits:hover,
.gbb-home-category--gifts:hover { color:#fff; }
.gbb-home-category__number {
	z-index:4;
	display:grid;
	width:34px;
	height:34px;
	place-items:center;
	border-radius:50%;
	background:rgba(255,255,255,.72);
	color:var(--gbb-ink);
	backdrop-filter:blur(12px);
}
.gbb-home-category--spirits .gbb-home-category__number,
.gbb-home-category--gifts .gbb-home-category__number { background:rgba(255,255,255,.14); color:#fff; }
.gbb-home-category__body {
	z-index:4;
	flex:0 0 auto;
	max-width:50%;
	margin-top:auto;
	align-self:flex-start;
	gap:8px;
}
.gbb-home-category--spirits .gbb-home-category__body { max-width:36%; }
.gbb-home-category--gifts .gbb-home-category__body { max-width:38%; }
.gbb-home-category__brands {
	display:block;
	margin-bottom:2px;
	color:var(--gbb-red);
	font-size:9px;
	font-weight:800;
	letter-spacing:.12em;
	line-height:1.35;
	text-transform:uppercase;
}
.gbb-home-category--spirits .gbb-home-category__brands,
.gbb-home-category--gifts .gbb-home-category__brands { color:#fff; opacity:.72; }
.gbb-home-category__body strong { font-size:clamp(25px,2.4vw,38px); }
.gbb-home-category__body small { max-width:34ch; font-size:12px; }
.gbb-home-category--spirits .gbb-home-category__body small,
.gbb-home-category--gifts .gbb-home-category__body small { color:rgba(255,255,255,.67); }
.gbb-home-category__arrow { z-index:5; }
.gbb-home-category .gbb-home-category__art {
	position:absolute;
	z-index:2;
	top:20px;
	right:20px;
	bottom:28px;
	left:50%;
	display:flex;
	width:auto;
	height:auto;
	align-items:flex-end;
	justify-content:flex-end;
	border-radius:0;
	background:none;
	box-shadow:none;
	transform:none;
	transition:transform .65s var(--gbb-ease);
}
.gbb-home-category--spirits .gbb-home-category__art { left:42%; }
.gbb-home-category--gifts .gbb-home-category__art { top:14px; right:7%; bottom:14px; left:51%; }
.gbb-home-category .gbb-home-category__art::before {
	position:absolute;
	top:12%;
	right:4%;
	bottom:2%;
	left:10%;
	display:block;
	width:auto;
	height:auto;
	border:0;
	border-radius:50%;
	background:radial-gradient(circle,rgba(255,255,255,.74),rgba(255,255,255,0) 68%);
	content:"";
}
.gbb-home-category--spirits .gbb-home-category__art::before { background:radial-gradient(circle,rgba(227,6,19,.3),rgba(227,6,19,0) 68%); }
.gbb-home-category--gifts .gbb-home-category__art::before { background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,0) 68%); }
.gbb-home-category__product {
	position:relative;
	z-index:2;
	display:block;
	width:min(56%,230px);
	height:94%;
	margin-left:-18%;
	object-fit:contain;
	filter:drop-shadow(0 22px 20px rgba(18,15,13,.22));
	transform:translateY(4%) rotate(-3deg);
	transform-origin:50% 100%;
	transition:transform .7s var(--gbb-ease),filter .7s var(--gbb-ease);
}
.gbb-home-category__product:first-child { margin-left:0; transform:translateY(7%) rotate(-7deg); }
.gbb-home-category__product:nth-child(2) { z-index:3; transform:translateY(0) rotate(4deg); }
.gbb-home-category__product:nth-child(3) { z-index:1; transform:translateY(8%) rotate(9deg); }
.gbb-home-category:hover .gbb-home-category__art { transform:translateY(-7px) scale(1.025); }
.gbb-home-category:hover .gbb-home-category__product { filter:drop-shadow(0 14px 15px rgba(18,15,13,.16)); }
.gbb-home-category:hover .gbb-home-category__product:first-child { transform:translate(-6px,3%) rotate(-9deg); }
.gbb-home-category:hover .gbb-home-category__product:nth-child(2) { transform:translate(0,-3%) rotate(2deg); }
.gbb-home-category:hover .gbb-home-category__product:nth-child(3) { transform:translate(7px,4%) rotate(11deg); }

/* A single canister/teapot is more legible than overlapping white packshots.
 * Keep the whole object above the copy, without the legacy CSS teapot handle. */
.gbb-home-category--tea .gbb-home-category__body,
.gbb-home-category--tools .gbb-home-category__body { max-width:100%; }
.gbb-home-category--tea .gbb-home-category__art,
.gbb-home-category--tools .gbb-home-category__art {
	top:42px; right:28px; bottom:134px; left:28%;
	align-items:center; justify-content:center;
}
.gbb-home-category--tools .gbb-home-category__art::before { border:0; }
.gbb-home-category .gbb-home-category__art--single .gbb-home-category__product,
.gbb-home-category:is(:hover,:focus-visible) .gbb-home-category__art--single .gbb-home-category__product {
	width:100%; height:100%; max-width:100%; margin:0;
	object-fit:contain; mix-blend-mode:normal; transform:none;
	filter:drop-shadow(0 9px 12px rgba(18,15,13,.12));
}
@media (hover:none), (prefers-reduced-motion:reduce) {
	.gbb-home-category:hover,
	.gbb-home-category:hover .gbb-home-category__art { transform:none !important; }
	.gbb-home-category:hover .gbb-home-category__product { filter:drop-shadow(0 9px 12px rgba(18,15,13,.12)); }
}

/* Drawers must begin below the actually visible header, including its compact
 * sticky form. The value is maintained by design-2030.js. */
.cart-widget-side.wd-side-hidden {
	top:var(--gbb-offcanvas-top,var(--wd-header-h,196px)) !important;
	height:calc(100dvh - var(--gbb-offcanvas-top,var(--wd-header-h,196px))) !important;
	max-height:calc(100dvh - var(--gbb-offcanvas-top,var(--wd-header-h,196px))) !important;
}
body.gbb-offcanvas-open .gbb-language-switcher { opacity:0; visibility:hidden; pointer-events:none; }
@media (max-width:1024px) {
	.mobile-nav.wd-side-hidden,
	.cart-widget-side.wd-side-hidden {
		top:var(--gbb-offcanvas-top,var(--wd-header-sm-h,100px)) !important;
		height:calc(100dvh - var(--gbb-offcanvas-top,var(--wd-header-sm-h,100px))) !important;
		max-height:calc(100dvh - var(--gbb-offcanvas-top,var(--wd-header-sm-h,100px))) !important;
	}
	.mobile-nav.wd-side-hidden { overflow-y:auto !important; overscroll-behavior:contain; }
	.cart-widget-side .wd-heading {
		position:sticky;
		z-index:8;
		top:0;
		min-height:58px;
		background:#fff !important;
	}
	.gbb-home-categories__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.gbb-home-category { grid-column:auto; min-height:340px; }
}

@media (max-width:767px) {
	.gbb-home-categories__grid {
		display:flex;
		margin-right:-12px;
		padding:0 12px 8px 0;
		gap:12px;
		overflow-x:auto;
		scroll-padding-left:0;
		scroll-snap-type:x mandatory;
	}
	.gbb-home-category {
		min-width:min(84vw,350px);
		min-height:330px;
		padding:22px;
		border-radius:22px !important;
		scroll-snap-align:start;
	}
	.gbb-home-category--gifts { background:linear-gradient(145deg,#e30613 0%,#b9000e 100%); }
	.gbb-home-category__body,
	.gbb-home-category--spirits .gbb-home-category__body,
	.gbb-home-category--gifts .gbb-home-category__body { max-width:100%; }
	.gbb-home-category__body strong { font-size:28px; }
	.gbb-home-category .gbb-home-category__art,
	.gbb-home-category--spirits .gbb-home-category__art,
	.gbb-home-category--gifts .gbb-home-category__art { top:20px; right:14px; bottom:112px; left:38%; }
	.gbb-home-category__product { width:min(62%,190px); height:92%; margin-left:-25%; }
	.gbb-home-category__arrow { top:16px; right:16px; width:40px; height:40px; }
}

/* Out-of-stock cards must retain exactly the same footprint as purchasable
 * cards. Woodmart's hover/touch state may otherwise revive its expanding card
 * treatment even though the regular catalogue cards have it disabled. */
:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item.outofstock,
:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item.outofstock .product-wrapper,
:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item.outofstock .wd-product-wrapper {
	width:100% !important;
	max-width:100% !important;
	transform:none !important;
}
:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item.outofstock:is(:hover,:focus,:focus-within) .product-wrapper,
:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item.outofstock:is(:hover,:focus,:focus-within) .wd-product-wrapper,
:is(.gbb-home-products__grid,.woodmart-archive-shop) .product-grid-item.outofstock:is(:hover,:focus,:focus-within) .wd-product-img-link img {
	transform:none !important;
}

/* Search polish: one continuous focus ring and a category menu that genuinely
 * controls the request instead of looking interactive while doing nothing. */
.whb-header .whb-gbb_product_search .searchform {
	position:relative;
	overflow:visible !important;
	isolation:isolate;
	transition:box-shadow .18s ease, background-color .18s ease;
}
.whb-header .whb-gbb_product_search .searchform:focus-within {
	box-shadow:inset 0 0 0 2px var(--gbb-red) !important;
}
.whb-header .whb-gbb_product_search .searchform :is(input,.s):focus {
	outline:0 !important;
	box-shadow:none !important;
}
.whb-header .whb-gbb_product_search .searchform > .s {
	border-radius:999px 0 0 999px !important;
}
.whb-header .whb-gbb_product_search .searchform > .searchsubmit {
	border-radius:0 999px 999px 0 !important;
}
.whb-header .whb-gbb_product_search .wd-search-cat {
	position:relative;
	z-index:2;
}
.whb-header .whb-gbb_product_search .wd-search-cat-btn {
	min-width:154px;
	color:#fff !important;
	cursor:pointer;
}
.whb-header .whb-gbb_product_search .wd-dropdown-search-cat {
	display:block !important;
	visibility:hidden !important;
	top:calc(100% + 12px) !important;
	right:0 !important;
	left:auto !important;
	width:min(390px,calc(100vw - 32px)) !important;
	max-height:min(620px,68vh);
	padding:12px !important;
	overflow:auto;
	border:0 !important;
	border-radius:20px !important;
	background:#fff !important;
	box-shadow:0 24px 70px rgba(0,0,0,.24) !important;
	opacity:0 !important;
	transform:translateY(-8px) !important;
	pointer-events:none;
	transition:opacity .18s ease,transform .18s ease,visibility .18s ease !important;
}
.whb-header .whb-gbb_product_search .gbb-search-cat-open .wd-dropdown-search-cat {
	visibility:visible !important;
	opacity:1 !important;
	transform:none !important;
	pointer-events:auto;
}
.whb-header .whb-gbb_product_search .wd-dropdown-search-cat .wd-sub-menu {
	display:grid;
	gap:2px;
	margin:0;
	padding:0;
}
.whb-header .whb-gbb_product_search .wd-dropdown-search-cat li {
	margin:0 !important;
	padding:0 !important;
}
.whb-header .whb-gbb_product_search .wd-dropdown-search-cat a {
	display:block;
	min-height:38px;
	padding:10px 12px !important;
	border-radius:11px;
	color:var(--gbb-ink) !important;
	font-size:13px;
	font-weight:650;
	line-height:1.35;
}
.whb-header .whb-gbb_product_search .wd-dropdown-search-cat a:is(:hover,:focus-visible),
.whb-header .whb-gbb_product_search .wd-dropdown-search-cat a[aria-selected="true"] {
	background:#f2f1ed !important;
	color:var(--gbb-red) !important;
}

/* The desktop cart is a checkout preparation screen: products on the left,
 * a compact always-visible order summary on the right. */
.woocommerce-cart .wc-block-components-quantity-selector {
	width:112px !important;
	min-width:112px !important;
	max-width:112px !important;
}
.woocommerce-cart .wc-block-cart__submit-container,
.woocommerce-cart .wc-block-cart__submit-button {
	width:100% !important;
	max-width:none !important;
}
.woocommerce-cart .wc-block-cart__submit-button {
	display:flex !important;
	min-height:54px !important;
	align-items:center;
	justify-content:center !important;
	text-align:center !important;
}
@media (min-width:1025px) {
	.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart {
		display:grid !important;
		grid-template-columns:minmax(0,1.65fr) minmax(360px,.75fr) !important;
		align-items:start !important;
		gap:clamp(28px,3.2vw,52px) !important;
	}
	.woocommerce-cart :is(.wc-block-cart__main,.wc-block-cart__sidebar,.wc-block-components-main,.wc-block-components-sidebar) {
		width:auto !important;
		max-width:none !important;
		margin:0 !important;
	}
	.woocommerce-cart .wc-block-cart__sidebar {
		position:sticky !important;
		top:88px !important;
		align-self:start;
	}
	.woocommerce-cart .wc-block-components-quantity-selector {
		width:112px !important;
		min-width:112px !important;
		max-width:112px !important;
	}
	.woocommerce-cart .wc-block-cart__submit-container,
	.woocommerce-cart .wc-block-cart__submit-button {
		width:100% !important;
		max-width:none !important;
	}
	.woocommerce-cart .wc-block-cart__submit-button {
		display:flex !important;
		min-height:54px;
		align-items:center;
		justify-content:center !important;
		text-align:center !important;
	}
	.woocommerce-cart .wc-block-cart-item__product {
		padding-right:24px !important;
	}
}

/* -------------------------------------------------------------------------
 * Typography contract: one restrained screen typeface, one numerical rhythm
 * and no decorative italics. This remains last so theme widgets cannot bring
 * back mixed fonts or unstable sizes on commerce screens.
 * ---------------------------------------------------------------------- */
body :is(button,input,select,textarea) { font-family:var(--gbb-font) !important; }
body :is(h1,h2,h3,h4,h5,h6) {
	font-family:var(--gbb-font) !important;
	font-weight:700;
	letter-spacing:-.045em;
	line-height:1.02;
	text-wrap:balance;
}
body :is(p,li,dd,dt,label,input,select,textarea,button) { text-wrap:pretty; }
body :is(.amount,.price,.woocommerce-Price-amount,.wd-tools-count,.wc-block-components-totals-item__value,.wc-block-formatted-money-amount) {
	font-variant-numeric:tabular-nums lining-nums;
	font-feature-settings:"tnum" 1,"lnum" 1;
}
body :is(.button,button,[type="button"],[type="submit"],.gbb-home-button,.wc-block-components-button) {
	font-weight:730;
	letter-spacing:.015em;
	line-height:1.15;
}
body :is(input,select,textarea) {
	font-size:16px;
	font-weight:500;
	letter-spacing:-.01em;
}
body :is(.gbb-home__eyebrow,.gbb-brands__eyebrow,.gbb-brand-card__count,.gbb-product-insights__eyebrow) {
	font-size:11px;
	font-weight:780;
	letter-spacing:.11em;
	line-height:1.25;
}
:is(.gbb-home-hero h1,.gbb-brands__hero h1,.gbb-brand-story h2,.gbb-product-insights h2,.gbb-world-opinions__header h2) em {
	font-family:var(--gbb-font) !important;
	font-style:normal;
	font-weight:760;
	letter-spacing:-.06em;
}
.gbb-home-hero h1,
.gbb-brands__hero h1,
.tax-pa_brand .gbb-brand-archive h1 { font-weight:730; }
.gbb-home-hero h1 em { font-size:1em; }
.gbb-home-hero__lead,
.gbb-brands__hero p:last-child,
.tax-pa_brand .gbb-brand-archive div>p:last-of-type { font-weight:470; letter-spacing:-.018em; }
.gbb-home-section__heading h2,
.gbb-brands__directory h2 { font-weight:700; letter-spacing:-.055em; }
.product-grid-item .wd-entities-title,
.product-grid-item .wd-entities-title a {
	font-size:15px !important;
	font-weight:620 !important;
	letter-spacing:-.025em;
	line-height:1.28 !important;
}
.product-grid-item .price { font-size:16px !important; font-weight:750 !important; letter-spacing:-.025em; }
.single-product .product_title { font-weight:720 !important; letter-spacing:-.02em !important; word-spacing:.12em; line-height:1.08 !important; }
.single-product :is(.summary-inner,.woocommerce-product-details__short-description) { font-size:16px; line-height:1.58; }
.woocommerce :is(.woocommerce-breadcrumb,.wd-breadcrumbs,.woocommerce-result-count) { font-size:12px; font-weight:580; letter-spacing:.005em; }
.woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error),
.wc-block-components-notice-banner { font-size:14px; font-weight:550; line-height:1.45; }
.gbb-brand-card__mark {
	display:grid;
	top:26px;
	right:26px;
	width:min(48%,180px);
	height:84px;
	place-items:end;
	font-size:0;
}
.gbb-brand-card__wordmark {
	display:block;
	max-width:100%;
	color:rgba(23,23,23,.22);
	font-size:clamp(15px,1.65vw,25px);
	font-weight:790;
	letter-spacing:-.045em;
	line-height:1;
	overflow-wrap:anywhere;
	text-align:right;
}
.gbb-brand-card:hover .gbb-brand-card__wordmark { color:rgba(255,255,255,.55); }
.gbb-brand-card__mark:has(.gbb-brand-card__logo) { top:26px; right:26px; width:min(48%,180px); height:84px; }
.gbb-brand-card__logo { max-width:100%; max-height:74px; }
.gbb-brand-card strong { font-weight:690; letter-spacing:-.05em; }
.gbb-brand-card p { font-size:12px; font-weight:500; line-height:1.45; }
.gbb-brand-card small { font-weight:720; letter-spacing:.025em; text-transform:none; }

@media (max-width:767px) {
	body { font-size:15px; }
	body :is(input,select,textarea) { font-size:16px !important; }
	.gbb-home-hero h1 { font-size:44px; }
	.gbb-brands__hero h1 { font-size:46px; }
	.gbb-home-hero h1,
	.gbb-brands__hero h1,
	.tax-pa_brand .gbb-brand-archive h1 { letter-spacing:-.055em; }
	.gbb-brand-card__mark,
	.gbb-brand-card__mark:has(.gbb-brand-card__logo) { top:22px; right:22px; width:46%; height:66px; }
	.gbb-brand-card__logo { max-height:58px; }
}

/* Search category popup belongs to the viewport, not to one header row. This
 * keeps the complete list below both the full and compact desktop mastheads. */
@media (min-width:1025px) {
	body.gbb-search-popup-open .whb-header,
	body.gbb-search-popup-open .whb-main-header,
	body.gbb-search-popup-open .whb-general-header { overflow:visible !important; }
	.whb-header .whb-gbb_product_search .wd-dropdown-search-cat {
		position:fixed !important;
		z-index:1400 !important;
		top:var(--gbb-search-popup-top,206px) !important;
		right:auto !important;
		left:var(--gbb-search-popup-left,auto) !important;
		max-height:var(--gbb-search-popup-height,calc(100vh - 222px)) !important;
	}
	.whb-header,
	.whb-header .whb-main-header,
	.whb-header .whb-row,
	.whb-header .whb-general-header {
		will-change:max-height,min-height,height,opacity,transform,box-shadow;
		transition:none !important;
	}
}

/* Individual brand books. These variables are published only on pa_brand
 * archives, leaving the neutral catalogue and every other page untouched. */
.tax-pa_brand {
	--gbb-brand-primary:#171717;
	--gbb-brand-accent:#e30613;
	--gbb-brand-surface:#f1f0ec;
	--gbb-brand-on-primary:#fff;
	--gbb-brand-ink:#171717;
}
.tax-pa_brand .gbb-brand-archive {
	background:var(--gbb-brand-primary);
	color:var(--gbb-brand-on-primary);
}
.tax-pa_brand .gbb-brand-archive.has-background {
	background-image:linear-gradient(90deg,color-mix(in srgb,var(--gbb-brand-primary) 96%,transparent) 0%,color-mix(in srgb,var(--gbb-brand-primary) 82%,transparent) 55%,color-mix(in srgb,var(--gbb-brand-primary) 24%,transparent) 100%),var(--gbb-brand-hero);
}
.tax-pa_brand .gbb-brand-archive :is(h1,.gbb-brand-archive__tagline) { color:var(--gbb-brand-on-primary); }
.tax-pa_brand .gbb-brand-archive div>p:last-of-type { color:color-mix(in srgb,var(--gbb-brand-on-primary) 72%,transparent); }
.tax-pa_brand .gbb-brand-archive > span { color:var(--gbb-brand-accent); }
.tax-pa_brand .gbb-brand-archive .gbb-brands__eyebrow { color:var(--gbb-brand-accent); }
.tax-pa_brand .gbb-brand-archive__logo {
	width:min(220px,55%);
	min-height:78px;
	padding:14px 18px;
	border-radius:16px;
	background:rgba(255,255,255,.94);
}
.tax-pa_brand .gbb-brand-archive__logo img { max-height:64px; filter:none; object-fit:contain; }
.tax-pa_brand .gbb-brand-archive__facts span { background:color-mix(in srgb,var(--gbb-brand-on-primary) 12%,transparent); color:var(--gbb-brand-on-primary); }
.tax-pa_brand .gbb-brand-archive__facts small { color:color-mix(in srgb,var(--gbb-brand-on-primary) 55%,transparent); }
.tax-pa_brand .gbb-brand-archive__actions a { background:var(--gbb-brand-accent); color:#fff !important; }
.tax-pa_brand .gbb-brand-archive__actions a+a { background:var(--gbb-brand-on-primary); color:var(--gbb-brand-primary) !important; }
.tax-pa_brand .gbb-brand-story { background:var(--gbb-brand-surface); }
.tax-pa_brand .gbb-brand-story :is(h2,p,li) { color:var(--gbb-brand-ink); }
.tax-pa_brand .gbb-brand-story .gbb-brands__eyebrow,
.tax-pa_brand .gbb-brand-story h2 em,
.tax-pa_brand .gbb-brand-story li::before { color:var(--gbb-brand-accent); }
.tax-pa_brand .gbb-brand-story li { background:color-mix(in srgb,#fff 74%,var(--gbb-brand-surface)); }
.tax-pa_brand .wd-product .price,
.tax-pa_brand .wd-product .price :is(bdi,.amount),
.tax-pa_brand .wd-products-toolbar a:is(:hover,.wd-active) { color:var(--gbb-brand-primary) !important; }
.tax-pa_brand .wd-product .button { background:var(--gbb-brand-primary) !important; color:var(--gbb-brand-on-primary) !important; }
.tax-pa_brand .wd-product .button:hover { background:var(--gbb-brand-accent) !important; color:#fff !important; }

/* Transparent bottle cutouts must use the full gallery canvas. Woodmart lets
 * the inner figure shrink to the image's narrow intrinsic aspect ratio. */
.single-product-page .wd-carousel-item > .woocommerce-product-gallery__image {
	display:block !important;
	width:100% !important;
	min-width:100% !important;
}
.single-product-page .wd-carousel-item > .woocommerce-product-gallery__image > a {
	display:grid !important;
	width:100% !important;
	place-items:center;
}

@media (min-width:768px) and (max-width:1024px) {
	/* The phone toolbar becomes an empty strip on tablets and can overlap the
	 * cart CTA. Tablet navigation already lives in the compact header. */
	.woocommerce-cart .wd-toolbar { display:none !important; }
}

/* Cart is a decision screen, not a second checkout. Keep fulfilment choices
 * visible in one compact line and defer the actual selection to checkout. */
.gbb-cart-fulfilment-summary {
	display:grid;
	grid-template-columns:minmax(190px,.62fr) minmax(0,1.38fr);
	align-items:center;
	gap:10px 28px;
	margin:0 0 22px;
	padding:20px 22px;
	border:0;
	border-radius:20px;
	background:var(--gbb-paper);
	color:var(--gbb-ink);
}
.gbb-cart-fulfilment-summary header { display:grid; gap:4px; }
.gbb-cart-fulfilment-summary header span {
	color:var(--gbb-red);
	font-size:9px;
	font-weight:850;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.gbb-cart-fulfilment-summary header strong { color:var(--gbb-ink); font-size:17px; letter-spacing:-.025em; }
.gbb-cart-fulfilment-summary > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.gbb-cart-fulfilment-summary > div > span {
	display:grid;
	grid-template-columns:36px minmax(0,1fr) auto;
	align-items:center;
	gap:10px;
	min-height:58px;
	padding:10px 12px;
	border-radius:15px;
	background:#fff;
}
.gbb-cart-fulfilment-summary i {
	display:flex;
	width:36px;
	height:36px;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:var(--gbb-ink);
	color:#fff;
	font-size:9px;
	font-style:normal;
	font-weight:850;
}
.gbb-cart-fulfilment-summary > div > span:last-child i { background:var(--gbb-red); font-size:16px; }
.gbb-cart-fulfilment-summary strong { color:var(--gbb-ink); font-size:12px; }
.gbb-cart-fulfilment-summary em { color:var(--gbb-muted); font-size:9px; font-style:normal; font-weight:700; white-space:nowrap; }
.gbb-cart-fulfilment-summary > p {
	grid-column:2;
	margin:0;
	color:var(--gbb-muted);
	font-size:9px;
	line-height:1.4;
}

@media (max-width:767px) {
	.gbb-cart-fulfilment-summary { grid-template-columns:1fr; gap:12px; margin-bottom:16px; padding:16px; border-radius:18px; }
	.gbb-cart-fulfilment-summary > div { grid-template-columns:1fr; }
	.gbb-cart-fulfilment-summary > p { grid-column:1; }
}

/* Final specificity guard for the brand v2 layout. */
.gbb-brands__hero-stats small,
.gbb-brand-assortment__stats small { display:block; color:inherit; font-size:inherit; font-weight:inherit; line-height:1.25; }
.gbb-brands .gbb-brands__tools input {
	border:0 !important;
	background:var(--gbb-paper) !important;
	box-shadow:none !important;
}
.gbb-brands .gbb-brands__tools input:focus { box-shadow:0 0 0 3px rgba(227,6,19,.14) !important; }
.gbb-brand-card .gbb-brand-card__mark,
.gbb-brand-card .gbb-brand-card__mark:has(.gbb-brand-card__logo) {
	position:relative;
	top:auto;
	right:auto;
	display:flex;
	width:min(58%,170px);
	height:62px;
	align-items:flex-start;
	justify-content:flex-start;
	place-items:initial;
}
.gbb-brand-card .gbb-brand-card__logo { max-height:58px; object-position:left top; filter:none; opacity:1; }
.tax-pa_brand .gbb-brand-archive__logo {
	display:flex;
	width:min(240px,62%);
	min-height:0;
	align-items:flex-start;
	justify-content:flex-start;
	padding:0;
	border-radius:0;
	background:transparent;
}
.tax-pa_brand .gbb-brand-archive__logo img { max-height:72px; filter:brightness(0) invert(1); object-position:left center; }

@media (max-width:767px) {
	.gbb-brand-card .gbb-brand-card__mark,
	.gbb-brand-card .gbb-brand-card__mark:has(.gbb-brand-card__logo) { top:auto; right:auto; width:100%; height:43px; }
	.gbb-brand-card .gbb-brand-card__logo { max-height:42px; }
	.tax-pa_brand .gbb-brand-archive__logo { width:min(210px,70%); }
	.tax-pa_brand .gbb-brand-archive__logo img { max-height:58px; }
}

@media (min-width:768px) and (max-width:1024px) {
	body .wd-toolbar { display:none !important; }
}

/* Product-to-product navigation: stays in the closest catalogue category and
 * remains a large, unambiguous touch target on every viewport. */
body.single-product .gbb-product-stepper {
	position:relative;
	z-index:2;
	display:grid;
	grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);
	align-items:stretch;
	gap:clamp(10px,1.2vw,18px);
	margin:clamp(16px,2.4vw,30px) 0 0;
}
body.single-product .gbb-product-stepper__link {
	display:flex;
	min-width:0;
	min-height:78px;
	align-items:center;
	gap:13px;
	padding:10px 14px;
	border:0 !important;
	border-radius:22px;
	background:#fff;
	color:var(--gbb-ink) !important;
	box-shadow:0 12px 34px rgba(18,18,18,.055);
	transition:transform .28s var(--gbb-ease),box-shadow .28s var(--gbb-ease),background-color .28s var(--gbb-ease);
}
body.single-product .gbb-product-stepper__link--previous { grid-column:1; }
body.single-product .gbb-product-stepper__link--next { grid-column:3; flex-direction:row-reverse; text-align:right; }
body.single-product .gbb-product-stepper__link:hover,
body.single-product .gbb-product-stepper__link:focus-visible {
	background:var(--gbb-paper);
	box-shadow:0 16px 42px rgba(18,18,18,.09);
}
body.single-product .gbb-product-stepper__link--previous:hover { transform:translateX(-3px); }
body.single-product .gbb-product-stepper__link--next:hover { transform:translateX(3px); }
body.single-product .gbb-product-stepper__link:focus-visible { outline:3px solid rgba(227,6,19,.2); outline-offset:2px; }
body.single-product .gbb-product-stepper__arrow {
	display:grid;
	width:42px;
	height:42px;
	flex:0 0 42px;
	place-items:center;
	border-radius:50%;
	background:var(--gbb-red);
	color:#fff;
	transition:background-color .28s var(--gbb-ease),transform .28s var(--gbb-ease);
}
body.single-product .gbb-product-stepper__link:hover .gbb-product-stepper__arrow { background:var(--gbb-ink); }
body.single-product .gbb-product-stepper__link--next .gbb-product-stepper__arrow { transform:rotate(180deg); }
body.single-product .gbb-product-stepper__arrow svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
body.single-product .gbb-product-stepper__thumb {
	display:grid;
	width:56px;
	height:56px;
	flex:0 0 56px;
	place-items:center;
	padding:5px;
	border-radius:15px;
	background:var(--gbb-paper);
}
body.single-product .gbb-product-stepper__thumb img { width:100%; height:100%; object-fit:contain; }
body.single-product .gbb-product-stepper__copy { display:grid; min-width:0; gap:3px; }
body.single-product .gbb-product-stepper__copy small {
	color:var(--gbb-red);
	font-size:9px;
	font-weight:800;
	letter-spacing:.1em;
	line-height:1.2;
	text-transform:uppercase;
}
body.single-product .gbb-product-stepper__copy strong {
	overflow:hidden;
	color:var(--gbb-ink);
	font-size:12px;
	font-weight:700;
	letter-spacing:-.012em;
	line-height:1.3;
	text-overflow:ellipsis;
	white-space:nowrap;
}
body.single-product .gbb-product-stepper__position {
	display:grid;
	width:54px;
	height:54px;
	align-self:center;
	grid-column:2;
	grid-row:1;
	place-items:center;
	border-radius:50%;
	background:var(--gbb-ink);
	color:#fff;
	font-size:10px;
	font-weight:800;
	letter-spacing:.04em;
}

@media (max-width:767px) {
	body.single-product .gbb-product-stepper {
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:8px;
		margin-top:12px;
	}
	body.single-product .gbb-product-stepper__link {
		min-height:62px;
		gap:8px;
		padding:8px 10px;
		border-radius:17px;
		box-shadow:0 8px 24px rgba(18,18,18,.05);
	}
	body.single-product .gbb-product-stepper__link--previous { grid-column:1; }
	body.single-product .gbb-product-stepper__link--next { grid-column:2; }
	body.single-product .gbb-product-stepper__position { display:none; }
	body.single-product .gbb-product-stepper__arrow { width:38px; height:38px; flex-basis:38px; }
	body.single-product .gbb-product-stepper__thumb { display:none; }
	body.single-product .gbb-product-stepper__copy { max-width:calc(100% - 46px); }
	body.single-product .gbb-product-stepper__copy small { font-size:8px; letter-spacing:.06em; }
	body.single-product .gbb-product-stepper__copy strong { font-size:10px; }
}

/* Launch typography pass: body copy must remain comfortably readable while
 * labels keep their hierarchy. These guards intentionally come last. */
body { font-size:16px; line-height:1.55; }
.woodmart-archive-shop .gbb-catalog-filters__heading p { font-size:14px; line-height:1.5; }
.woodmart-archive-shop .gbb-catalog-filters__group summary { font-size:15px; }
.woodmart-archive-shop .gbb-catalog-filters__options label { font-size:14px; line-height:1.35; }
.woodmart-archive-shop .wd-product-cats a { font-size:11px; }
.single-product-page .wd-breadcrumbs,
.single-product-page .wd-breadcrumbs a,
.single-product-page .wd-breadcrumbs .wd-last { font-size:12px; line-height:1.5; }
.single-product-page p.stock { font-size:12px; }
.gbb-product-age-notice p { font-size:13px; line-height:1.45; }
.gbb-product-quick-facts dt { font-size:10px; }
.gbb-product-quick-facts dd { font-size:14px; }
.gbb-product-fulfilment header span,
.gbb-product-fulfilment header strong { font-size:11px; }
.gbb-product-fulfilment strong { font-size:13px; }
.gbb-product-fulfilment small { font-size:11px; line-height:1.4; }
.single-product-page .product_meta,
.single-product-page .product_meta a { font-size:13px; line-height:1.5; }
.gbb-brand-card p { font-size:14px; line-height:1.5; }
.gbb-brand-card small { font-size:12px; }

/* Compact product intelligence: more information, less decorative height. */
body.single-product .gbb-product-insights-wrap { margin-bottom:clamp(44px,5vw,76px); }
body.single-product .gbb-product-insights { padding:clamp(24px,3.4vw,46px); }
body.single-product .gbb-product-insights > header {
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:24px;
	margin-bottom:22px;
}
body.single-product .gbb-product-insights > header .gbb-brands__eyebrow { flex:0 0 auto; margin:0 0 5px; }
body.single-product .gbb-product-insights h2 {
	margin:0 0 0 auto;
	font-size:clamp(28px,3vw,44px);
	letter-spacing:-.045em;
	line-height:1;
	text-align:right;
}
body.single-product .gbb-product-insights h2 br { display:none; }
body.single-product .gbb-product-insights h2 em::before { content:" "; }
body.single-product .gbb-product-insights__description {
	display:grid;
	grid-template-columns:minmax(110px,.28fr) minmax(0,1fr);
	gap:24px;
	margin-bottom:10px;
	padding:22px 24px;
	border-radius:18px;
	background:#252525;
}
body.single-product .gbb-product-insights__description small {
	color:var(--gbb-red);
	font-size:11px;
	font-weight:800;
	letter-spacing:.1em;
	text-transform:uppercase;
}
body.single-product .gbb-product-insights__description p { max-width:1050px; margin:0; color:rgba(255,255,255,.82); font-size:15px; line-height:1.65; }
body.single-product .gbb-product-insights__grid { grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:10px; }
body.single-product .gbb-product-insights article { min-height:0; padding:22px; }
body.single-product .gbb-product-insights article small { font-size:10px; }
body.single-product .gbb-product-insights article h3 { margin:8px 0 18px; font-size:21px; }
body.single-product .gbb-product-insights dl div { grid-template-columns:minmax(92px,.65fr) minmax(0,1.35fr); padding:11px 0; }
body.single-product .gbb-product-insights :is(dt,dd) { font-size:13px; line-height:1.5; }

body.single-product .gbb-product-stepper__copy small { font-size:10px; }
body.single-product .gbb-product-stepper__copy strong { font-size:13px; }

@media (max-width:767px) {
	body.single-product .gbb-product-insights { padding:24px 16px; }
	body.single-product .gbb-product-insights > header { display:block; margin-bottom:18px; }
	body.single-product .gbb-product-insights h2 { margin:7px 0 0; font-size:28px; line-height:1.08; text-align:left; }
	body.single-product .gbb-product-insights__description { grid-template-columns:1fr; gap:8px; padding:18px; }
	body.single-product .gbb-product-insights__description p { font-size:14px; line-height:1.6; }
	body.single-product .gbb-product-insights__grid { grid-template-columns:1fr; }
	body.single-product .gbb-product-insights article { padding:18px; }
	body.single-product .gbb-product-insights :is(dt,dd) { font-size:13px; }
	body.single-product .gbb-product-stepper__copy small { font-size:9px; }
body.single-product .gbb-product-stepper__copy strong { font-size:11px; }
}

/* Tea type shortcuts complement the category-aware sidebar filters. */
.gbb-tea-types { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0 0 28px; padding:22px 24px; border-radius:22px; background:#f5f4f1; }
.gbb-tea-types > div:first-child { display:grid; flex:0 0 auto; gap:3px; }
.gbb-tea-types > div:first-child span { color:#e30613; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.gbb-tea-types > div:first-child strong { color:#171717; font-size:22px; line-height:1.1; letter-spacing:-.035em; }
.gbb-tea-types__links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.gbb-tea-types__links a { display:inline-flex; min-height:40px; align-items:center; padding:0 14px; border-radius:999px; background:#fff; color:#171717; font-size:14px; font-weight:650; text-decoration:none; transition:background .2s,color .2s; }
.gbb-tea-types__links a:hover,.gbb-tea-types__links a[aria-current="true"] { background:#171717; color:#fff; }
.gbb-tea-types__links a:focus-visible { outline:2px solid #e30613; outline-offset:3px; }
@media(max-width:767px) { .gbb-tea-types { display:block; padding:19px 16px; } .gbb-tea-types > div:first-child strong { font-size:21px; } .gbb-tea-types__links { flex-wrap:nowrap; justify-content:flex-start; gap:6px; margin:17px -16px 0; padding:0 16px 3px; overflow-x:auto; scrollbar-width:thin; } .gbb-tea-types__links a { flex:0 0 auto; min-height:42px; } }

/* Header motion: animate real row heights, not max-height from 46/72px.
 * The latter kept each row at full intrinsic height until late in the easing
 * curve, then collapsed both rows together in a visible jump. */
html.gbb-header-transitioning { overflow-anchor:none; }
.whb-header {
	--gbb-header-top-size:42px;
	--gbb-header-bottom-size:50px;
	--gbb-header-main-size:104px;
	--gbb-header-compact-size:72px;
	--gbb-header-motion:.26s cubic-bezier(.2,.7,.2,1);
}
.whb-header,
.whb-header .whb-main-header,
.whb-header .whb-row {
	transition:box-shadow var(--gbb-header-motion) !important;
}
.whb-header .whb-top-bar,
.whb-header .whb-header-bottom {
	min-height:0 !important;
	max-height:none !important;
	transform:none !important;
	transition:height var(--gbb-header-motion),opacity var(--gbb-header-motion) !important;
}
.whb-header .whb-top-bar { height:var(--gbb-header-top-size) !important; }
.whb-header .whb-header-bottom { height:var(--gbb-header-bottom-size) !important; }
.whb-header .whb-general-header,
.whb-header .whb-general-header-inner {
	height:var(--gbb-header-main-size) !important;
	min-height:var(--gbb-header-main-size) !important;
	max-height:none !important;
	transition:height var(--gbb-header-motion),min-height var(--gbb-header-motion) !important;
}
body.gbb-header-compact .whb-header .whb-top-bar,
body.gbb-header-compact .whb-header .whb-header-bottom {
	display:block !important;
	height:0 !important;
	min-height:0 !important;
	max-height:none !important;
	opacity:0;
	pointer-events:none;
}
body.gbb-header-compact .whb-header .whb-general-header,
body.gbb-header-compact .whb-header .whb-general-header-inner {
	height:var(--gbb-header-compact-size) !important;
	min-height:var(--gbb-header-compact-size) !important;
	max-height:none !important;
}
@media (max-width:1024px) {
	.whb-header {
		--gbb-header-top-size:32px;
		--gbb-header-bottom-size:0px;
		--gbb-header-main-size:66px;
		--gbb-header-compact-size:66px;
	}
	.whb-header .whb-header-bottom,
	body.gbb-header-compact .whb-header .whb-header-bottom { display:none !important; }
}
@media (max-width:767px) {
	.whb-header { --gbb-header-main-size:62px; --gbb-header-compact-size:62px; }
}
@media (prefers-reduced-motion:reduce) {
	.whb-header :is(.whb-top-bar,.whb-header-bottom,.whb-general-header,.whb-general-header-inner) { transition:none !important; }
	.whb-header,.whb-header .whb-main-header,.whb-header .whb-row { transition:none !important; }
}

/* Compact storefront rhythm and readable navigation. Keep the purchase controls
 * at their existing touch sizes; reduce decorative whitespace around them. */
body { font-size:17px; }
.whb-header .wd-nav > li > a { font-size:17px; }
.gbb-home { padding-bottom:clamp(54px,5vw,76px); }
.gbb-home-hero { min-height:clamp(520px,43vw,620px); }
.gbb-home-section { padding-top:clamp(44px,5vw,76px); }
.gbb-home-section__heading { margin-bottom:clamp(22px,2.5vw,34px); }
.gbb-home-editorial,
.gbb-home-products--second { padding-top:clamp(44px,5vw,76px); }
.gbb-home-story { min-height:430px; }
.gbb-home-service { margin-top:clamp(44px,5vw,76px); }
.gbb-home-service > div { min-height:175px; }
.gbb-home-service i { margin-bottom:24px; }
.gbb-home-category__body small,
.gbb-home-service span { font-size:14px; }
.gbb-home-category__brands { font-size:11px; }
.gbb-home-products__grid .wd-entities-title,
.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .wd-entities-title { font-size:16px; }
.gbb-home-products__grid .wd-product-cats a,
.woodmart-archive-shop .wd-product-cats a { font-size:12px; }
.gbb-home-products__grid .wd-add-btn .button,
.woodmart-archive-shop .product-grid-item .wd-add-btn .button { font-size:13px; }
.woodmart-archive-shop .site-content { padding-top:clamp(20px,2.8vw,38px); }

/* The footer contains verified places and only links to published, substantive pages. */
.gbb-footer { background:#252523 !important; border-top:3px solid var(--gbb-red) !important; }
.gbb-footer__main { display:grid; grid-template-columns:minmax(205px,1.25fr) minmax(220px,1.28fr) repeat(3,minmax(145px,1fr)); gap:clamp(20px,2.5vw,38px); padding-top:48px; padding-bottom:45px; }
.gbb-footer__brand { min-width:0; }
.gbb-footer__brand > h2 { margin:22px 0 9px; color:#fff; font-size:15px; font-weight:700; text-transform:none; letter-spacing:0; }
.gbb-footer__brand > a:not(:first-child) { display:block; width:auto; margin:6px 0; font-size:14px; overflow-wrap:anywhere; }
.gbb-footer__brand-note { max-width:260px; font-size:14px !important; }
.gbb-footer__section { min-width:0; }
.gbb-footer__section summary { list-style:none; cursor:default; }
.gbb-footer__section summary::-webkit-details-marker { display:none; }
.gbb-footer__section summary h2 { margin:2px 0 16px; color:#fff; font-size:14px; font-weight:750; line-height:1.3; letter-spacing:.01em; text-transform:none; }
.gbb-footer__section-body { display:flex; flex-direction:column; align-items:flex-start; gap:11px; }
.gbb-footer__section-body a { color:#f3f1ed; font-size:14px; line-height:1.4; }
.gbb-footer__section-body a:hover { color:#ff6870; }
.gbb-footer__section-body :is(a,button):focus-visible,
.gbb-footer__section summary:focus-visible,
.gbb-footer__brand a:focus-visible { outline:2px solid #ff6870; outline-offset:4px; }
.gbb-footer__store { display:grid; gap:3px; padding-bottom:14px; }
.gbb-footer__store strong { color:#fff; font-size:14px; }
.gbb-footer__store span { color:#f3f1ed; font-size:13px; line-height:1.4; }
.gbb-footer__store small,
.gbb-footer__muted { max-width:245px; margin:0; color:#bcbab4 !important; font-size:12px !important; line-height:1.5 !important; letter-spacing:0 !important; }
.gbb-footer__store a { margin-top:4px; font-size:12px; text-decoration:underline; text-underline-offset:3px; }
.gbb-footer__age-note { margin:0; color:#fff; font-size:13px; line-height:1.5; }
.gbb-footer__bottom { border-top:1px solid rgba(255,255,255,.18) !important; }
.gbb-footer__bottom .container { font-size:11px; letter-spacing:.02em; text-transform:none; }
@media (max-width:1100px) { .gbb-footer__main { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:767px) {
	.gbb-footer { padding-bottom:64px; }
	.gbb-footer__main { grid-template-columns:1fr; gap:0; padding-top:35px; padding-bottom:28px; }
	.gbb-footer__brand { padding-bottom:24px; }
	.gbb-footer__brand > h2 { margin-top:18px; }
	.gbb-footer__section { border-top:1px solid rgba(255,255,255,.16); }
	.gbb-footer__section summary { position:relative; min-height:56px; display:flex; align-items:center; padding:13px 30px 13px 0; cursor:pointer; }
	.gbb-footer__section summary::after { position:absolute; right:2px; color:#fff; font-size:23px; line-height:1; content:'+'; }
	.gbb-footer__section[open] summary::after { content:'−'; }
	.gbb-footer__section summary h2 { margin:0; font-size:16px; }
	.gbb-footer__section-body { padding:0 0 21px; }
	.gbb-footer__bottom .container { padding-top:18px; padding-bottom:18px; }
}

/* Catalogue filter interaction: native GET form remains available without JS. */
.woodmart-archive-shop .gbb-catalog-filters__search {
	width:calc(100% - 4px);
	min-height:40px;
	margin:0 2px 12px;
	padding:8px 12px;
	border:1px solid #d8d6d1;
	border-radius:10px;
	background:#fff;
	color:var(--gbb-ink);
	font-size:14px;
}
.woodmart-archive-shop .gbb-catalog-filters__options label[hidden],
.woodmart-archive-shop [hidden] { display:none !important; }
.woodmart-archive-shop .gbb-catalog-filters :is(input,button,a):focus-visible,
.woodmart-archive-shop .gbb-active-filters button:focus-visible,
.woodmart-archive-shop .gbb-mobile-filter-toggle:focus-visible {
	outline:2px solid var(--gbb-red) !important;
	outline-offset:3px;
}
.woodmart-archive-shop .gbb-filter-status {
	min-height:24px;
	margin:0 0 12px;
	color:var(--gbb-muted);
	font-size:14px;
}
.woodmart-archive-shop .gbb-active-filters { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0 0 16px; }
.woodmart-archive-shop .gbb-filter-chip,
.woodmart-archive-shop .gbb-filter-clear {
	display:inline-flex;
	min-height:38px;
	align-items:center;
	gap:10px;
	padding:7px 12px !important;
	border:1px solid #dedbd5 !important;
	border-radius:999px !important;
	background:#f6f4f0 !important;
	color:var(--gbb-ink) !important;
	font-size:13px !important;
	font-weight:650;
	line-height:1.25;
	text-transform:none !important;
}
.woodmart-archive-shop .gbb-filter-chip span { color:var(--gbb-red); font-size:20px; line-height:1; }
.woodmart-archive-shop .gbb-filter-clear { border-color:transparent !important; background:transparent !important; text-decoration:underline; }
.woodmart-archive-shop .gbb-filter-loading .wd-products { opacity:.55; pointer-events:none; }
.woodmart-archive-shop .gbb-filter-loading { cursor:progress; }
.woodmart-archive-shop .gbb-filter-empty { padding:44px 20px; border-radius:18px; background:#f7f5f1; text-align:center; }
.woodmart-archive-shop .gbb-filter-empty h2 { margin:0 0 8px; font-size:clamp(21px,2vw,28px); }
.woodmart-archive-shop .gbb-filter-empty p { margin:0 0 20px; color:var(--gbb-muted); }
.woodmart-archive-shop .gbb-filter-empty button { min-height:42px; margin:4px; padding:8px 16px !important; border-radius:999px !important; background:var(--gbb-ink) !important; color:#fff !important; }
.woodmart-archive-shop .gbb-gifts-empty { padding:clamp(28px,4vw,50px); text-align:left; }
.woodmart-archive-shop .gbb-gifts-empty p { max-width:660px; line-height:1.55; }
.woodmart-archive-shop .gbb-gifts-empty__paths { display:flex; flex-wrap:wrap; gap:10px; }
.woodmart-archive-shop .gbb-gifts-empty__paths a { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; min-height:46px; padding:10px 17px; border-radius:999px; background:#fff; color:var(--gbb-ink); font-weight:700; text-decoration:none; }
.woodmart-archive-shop .gbb-gifts-empty__paths a:hover,
.woodmart-archive-shop .gbb-gifts-empty__paths a:focus-visible { background:var(--gbb-ink); color:#fff; }
@media (max-width:540px) {
	.woodmart-archive-shop .gbb-gifts-empty { padding-bottom:104px; }
	.woodmart-archive-shop .gbb-gifts-empty__paths { display:grid; }
}
.woodmart-archive-shop .gbb-catalog-layout__main:has(.gbb-filter-empty) .woocommerce-no-products-found { display:none; }
.woodmart-archive-shop .gbb-catalog-layout--empty-gifts .no-products-footer { display:none !important; }
.woodmart-archive-shop .wd-title-wrapp .wd-back-btn { display:none !important; }
.woodmart-archive-shop .gbb-catalog-layout--empty-gifts { margin-top:0 !important; }
.woodmart-archive-shop .gbb-catalog-layout--empty-gifts .gbb-active-filters,
.woodmart-archive-shop .gbb-catalog-layout--empty-gifts .gbb-filter-status { display:none !important; }
.woodmart-archive-shop .gbb-catalog-layout--empty-gifts .shop-loop-head { margin-bottom:12px; }
.woodmart-archive-shop .gbb-catalog-layout--empty-gifts .gbb-gifts-empty { padding-bottom:clamp(32px,4vw,56px); }
.woodmart-archive-shop .gbb-catalog-layout--empty-gifts .gbb-gifts-empty__paths { margin-bottom:0; }

/* A small, factual gift landing: the actual boxes and price appear before the
 * fold rather than after a second category menu and oversized packshots. */
body.term-gifts .wd-page-title { padding:clamp(12px,1.7vw,24px) 0 !important; }
body.term-gifts .wd-content-layout { padding-top:clamp(8px,1.3vw,16px) !important; }
body.term-gifts .wd-content-area { padding-top:8px !important; }
body.term-gifts .gbb-category-intro { max-width:720px; margin-bottom:12px; }
body.term-gifts .wd-products-per-page { display:none !important; }
body.term-gifts .shop-loop-head { margin-bottom:10px !important; }
body.term-gifts .product-grid-item .wd-product-cats { display:none !important; }
body.term-gifts .product-grid-item .wd-product-thumb { height:250px; }
body.term-gifts .product-grid-item .product-wrapper,
body.term-gifts .product-grid-item:hover .product-wrapper { min-height:440px; }
body.term-gifts .gbb-gifts-footnote { margin:40px 0 16px; padding:22px 26px; border-radius:18px; background:var(--gbb-paper); }
body.term-gifts .gbb-gifts-footnote h2 { margin:0 0 6px; font-size:20px; }
body.term-gifts .gbb-gifts-footnote p { max-width:780px; margin:0; color:var(--gbb-muted); line-height:1.5; }
@media (min-width:1025px) {
	body.term-gifts .wd-page-title { padding:12px 0 !important; }
	body.term-gifts .wd-page-title :is(h1,.title) { font-size:56px !important; line-height:1.05 !important; }
	body.term-gifts .wd-content-layout { padding-top:8px !important; }
	body.term-gifts .wd-content-area { padding-top:0 !important; }
	body.term-gifts .product-grid-item .wd-product-thumb { height:190px; }
	body.term-gifts .product-grid-item .product-wrapper,
	body.term-gifts .product-grid-item:hover .product-wrapper { min-height:390px; }
}
@media (max-width:767px) {
	body.term-gifts .wd-content-layout { padding-top:8px !important; }
	body.term-gifts .wd-content-area { padding-top:6px !important; }
	body.term-gifts .gbb-category-intro { margin-bottom:8px; font-size:15px; }
	body.term-gifts .shop-loop-head { margin-bottom:8px !important; }
	body.term-gifts .product-grid-item .wd-product-thumb { height:160px; }
	body.term-gifts .product-grid-item .wd-product-img-link img { padding:9px; }
	body.term-gifts .product-grid-item .product-wrapper,
	body.term-gifts .product-grid-item:hover .product-wrapper { min-height:340px; }
	body.term-gifts .gbb-gifts-footnote { margin:30px 0 68px; padding:18px; }
}
.woodmart-archive-shop .gbb-mobile-filter-count { display:inline-grid; min-width:24px; height:24px; place-items:center; padding:0 5px; border-radius:50%; background:#fff; color:var(--gbb-ink); font-size:12px; }
.woodmart-archive-shop .gbb-catalog-filters__show { display:none; }
/* JavaScript updates instantly; the GET submit remains visible and functional
 * only when scripts are disabled, avoiding two competing primary actions. */
html.gbb-filters-enhanced .woodmart-archive-shop .gbb-catalog-filters__submit { display:none !important; }
@media (max-width:1024px) {
	html:not(.gbb-filters-enhanced) .woodmart-archive-shop .gbb-catalog-layout__sidebar { display:block !important; }
	html:not(.gbb-filters-enhanced) .woodmart-archive-shop .gbb-mobile-filter-toggle { display:none !important; }
	.woodmart-archive-shop .gbb-catalog-filters__show:not([hidden]) {
		display:inline-flex;
		min-height:46px;
		align-items:center;
		justify-content:center;
		gap:5px;
		padding:10px 20px !important;
		border-radius:999px !important;
		background:var(--gbb-red) !important;
		color:#fff !important;
		font-size:15px !important;
		font-weight:750;
		text-transform:none !important;
	}
	.woodmart-archive-shop .gbb-catalog-filters__actions { display:grid; gap:10px; }
	.woodmart-archive-shop .gbb-catalog-filters__show { order:-1; }
}
.gbb-catalog-shortcuts { margin-bottom:22px; }
.woodmart-archive-shop .shop-loop-head { margin-bottom:22px; }
.single-product-page .product-image-summary-wrap { padding-top:clamp(28px,3.5vw,52px); padding-bottom:clamp(34px,4vw,62px); }
.single-product-page .single-breadcrumbs-wrapper { margin-bottom:clamp(16px,2vw,26px); }
body.single-product .gbb-product-insights-wrap { margin-bottom:clamp(26px,3vw,44px); }
body.single-product .gbb-product-insights__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.single-product .related-and-upsells { padding-top:clamp(30px,3.5vw,52px); }
.gbb-product-quick-facts dt,
.gbb-product-fulfilment header span,
.gbb-product-fulfilment header strong { font-size:12px; }
.gbb-product-fulfilment small,
.gbb-brand-archive__facts small { font-size:12px; }
.gbb-home-section__heading > a,
.gbb-brand-archive__actions a { font-size:14px; }

@media (min-width:1025px) {
	.whb-gbb_catalog_toggle .wd-nav-vertical > li > a { font-size:clamp(19px,1.55vw,23px); }
	.whb-gbb_catalog_toggle .wd-sub-menu a { font-size:14px; line-height:1.35; }
	.whb-gbb_catalog_toggle .wd-dropdown-cats::before { font-size:13px; }
}
@media (min-width:1025px) and (max-width:1199px) {
	.whb-gbb_catalog_toggle .wd-sub-menu a { font-size:13px; }
}
@media (max-width:1024px) {
	.gbb-home-hero { min-height:540px; }
	.gbb-home-story { min-height:380px; }
	body.single-product .gbb-product-insights__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.mobile-nav .wd-nav-mobile > li > a { min-height:52px; font-size:16px; line-height:1.35; }
	.mobile-nav .wd-nav-mobile .wd-sub-menu li > a { min-height:48px; font-size:15px; line-height:1.35; }
}
@media (max-width:767px) {
	.gbb-home { padding-bottom:58px; }
	.gbb-home-hero { min-height:0; }
	.gbb-home-hero__copy { min-height:430px; }
	.gbb-home-hero__visual { min-height:270px; }
	.gbb-home-section,
	.gbb-home-editorial,
	.gbb-home-products--second { padding-top:44px; }
	.gbb-home-section__heading { display:flex; flex-wrap:wrap; align-items:flex-end; gap:12px; }
	.gbb-home-section__heading h2 { flex:1 1 100%; }
	.gbb-home-service { margin-top:44px; }
	.gbb-home-service > div { min-height:155px; }
	.gbb-home-story { min-height:350px; }
	.gbb-home-products__grid .wd-entities-title,
	.woodmart-archive-shop .product-grid-item .wd-product-wrapper > .wd-entities-title { font-size:14px; }
	.gbb-home-products__grid .wd-add-btn .button,
	.woodmart-archive-shop .product-grid-item .wd-add-btn .button { font-size:12px; }
	.gbb-home-section__heading > a { font-size:12px; }
	body.single-product .gbb-product-insights__grid { grid-template-columns:1fr; }
}

/* At 768–1024px the filter column used to consume the first tablet viewport.
 * Reuse the already accessible phone disclosure without changing desktop UX. */
@media (min-width:768px) and (max-width:1024px) {
	.woodmart-archive-shop .gbb-catalog-layout { display:block; }
	.woodmart-archive-shop .gbb-mobile-filter-toggle {
		display:flex !important;
		width:100%;
		min-height:58px;
		align-items:center;
		justify-content:space-between;
		gap:16px;
		margin:0 0 16px;
		padding:0 20px !important;
		border:0 !important;
		border-radius:16px !important;
		background:var(--gbb-ink) !important;
		color:#fff !important;
		text-align:left;
		text-transform:none !important;
	}
	.woodmart-archive-shop .gbb-mobile-filter-toggle span,
	.woodmart-archive-shop .gbb-mobile-filter-toggle small { color:#fff; }
	.woodmart-archive-shop .gbb-mobile-filter-toggle span { display:flex; align-items:center; gap:10px; font-size:15px; font-weight:800; }
	.woodmart-archive-shop .gbb-mobile-filter-toggle small { font-size:12px; }
	.woodmart-archive-shop .gbb-mobile-filter-toggle i { position:relative; width:18px; height:12px; border-block:2px solid currentColor; }
	.woodmart-archive-shop .gbb-mobile-filter-toggle i::after { position:absolute; top:3px; left:0; width:18px; border-top:2px solid currentColor; content:""; }
	.woodmart-archive-shop .gbb-mobile-filter-toggle[aria-expanded="true"] { background:var(--gbb-red) !important; }
	.woodmart-archive-shop .gbb-catalog-layout__sidebar { display:none !important; }
	.woodmart-archive-shop .gbb-catalog-layout__sidebar[data-gbb-mobile-open] { display:block !important; margin-bottom:20px; }
}

/* The first feature pairs the original 16:9 film with a live WooCommerce
 * product. The film has no padded/blurred frame or cropped embedded text. */
.gbb-home-hero--carousel { display:block; position:relative; min-height:0; overflow:hidden; border-radius:0 !important; background:#f2eee7; }
.gbb-home-hero--carousel [hidden] { display:none !important; }
.gbb-home-hero__slide--video { display:block; min-height:0; background:#f2eee7; color:var(--gbb-ink); }
.gbb-home-hero__feature-grid { display:grid; grid-template-columns:minmax(0,3fr) minmax(260px,1fr); align-items:stretch; }
.gbb-home-hero__feature-grid--single { grid-template-columns:1fr; }
.gbb-home-video__frame { position:relative; width:100%; min-width:0; aspect-ratio:16 / 9; overflow:hidden; isolation:isolate; background:#181818; }
.gbb-home-video__media { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; }
.gbb-home-video__product { position:absolute; z-index:2; left:18px; bottom:18px; display:inline-flex; align-items:center; justify-content:space-between; gap:12px; max-width:calc(100% - 145px); min-height:46px; padding:9px 16px; border-radius:999px; background:var(--gbb-red); color:#fff !important; font-size:14px; font-weight:750; line-height:1.2; text-decoration:none !important; box-shadow:0 8px 24px rgba(0,0,0,.22); }
.gbb-home-video__product:hover { background:#b90010; color:#fff !important; }
.gbb-home-video__controls { position:absolute; z-index:2; right:18px; top:18px; display:flex; }
.gbb-home-video__controls button { min-height:44px; display:grid; place-items:center; padding:0 15px; border:1px solid rgba(255,255,255,.34); border-radius:999px; background:rgba(25,24,24,.88); color:#fff; font-size:13px; font-weight:750; white-space:nowrap; cursor:pointer; }
.gbb-home-video__controls button:hover { background:var(--gbb-red); }
.gbb-home-featured-product { min-width:0; display:flex; flex-direction:column; justify-content:space-between; background:#f2eee7; color:var(--gbb-ink); }
.gbb-home-featured-product__image { min-height:0; flex:1 1 auto; display:grid; place-items:center; padding:18px 18px 2px; }
.gbb-home-featured-product__image img { display:block; width:auto; max-width:100%; max-height:clamp(155px,18vw,280px); object-fit:contain; }
.gbb-home-featured-product__details { min-width:0; padding:8px clamp(16px,2vw,30px) 20px; }
.gbb-home-featured-product__eyebrow { color:#a5262c; font-size:11px; font-weight:800; letter-spacing:.11em; }
.gbb-home-featured-product h2 { margin:9px 0 5px; font-size:clamp(19px,1.55vw,25px); font-weight:750; line-height:1.14; letter-spacing:-.035em; }
.gbb-home-featured-product h2 a { color:var(--gbb-ink); text-decoration:none; }
.gbb-home-featured-product h2 a:hover { color:var(--gbb-red); }
.gbb-home-featured-product p { margin:0 0 14px; color:#625e5b; font-size:14px; }
.gbb-home-featured-product__price { color:var(--gbb-ink); font-size:clamp(23px,2vw,31px); font-weight:800; line-height:1.1; }
.gbb-home-featured-product__price :is(.amount,.woocommerce-Price-currencySymbol) { color:inherit; font-size:inherit; font-weight:inherit; }
.gbb-home-featured-product small { display:block; margin:5px 0 14px; color:#605d58; font-size:12px; line-height:1.3; }
.gbb-home-featured-product a.gbb-home-featured-product__cart { width:100%; min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:10px; margin:0 !important; padding:10px 17px !important; border:0 !important; border-radius:8px !important; background:var(--gbb-red) !important; color:#fff !important; font-size:15px !important; font-weight:750 !important; text-align:left; text-transform:none !important; }
.gbb-home-featured-product a.gbb-home-featured-product__cart:hover { background:#b90010 !important; }
.gbb-home-video__caption { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:102px; padding:15px clamp(18px,2vw,30px); background:#f2eee7; color:var(--gbb-ink); }
.gbb-home-video__caption > div { min-width:0; }
.gbb-home-video__caption > div > span { display:block; color:#aa232c; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.gbb-home-video__caption h1 { max-width:none; margin:3px 0 2px; color:var(--gbb-ink); font-size:clamp(23px,2vw,30px); font-weight:700; letter-spacing:-.045em; line-height:1.13; }
.gbb-home-video__caption p { margin:0 0 3px; color:#4f4b48; font-size:14px; line-height:1.35; }
.gbb-home-video__caption small { color:#6b6661; font-size:11px; }
.gbb-home-video__caption > a { flex:0 0 auto; display:inline-flex; align-items:center; gap:12px; min-height:44px; padding:0 6px; color:var(--gbb-ink); font-size:14px; font-weight:700; text-decoration:underline; text-underline-offset:5px; }
.gbb-home-video__caption > a:hover { color:var(--gbb-red); }
.gbb-home-hero__slide--intro { display:grid; min-height:610px; grid-template-columns:minmax(0,47%) minmax(0,53%); background:#f2eee7; }
.gbb-home-hero__intro-title { max-width:680px; margin:0; color:var(--gbb-ink); font-size:clamp(50px,4.6vw,74px); font-weight:650; letter-spacing:-.066em; line-height:.91; }
.gbb-home-hero__intro-title em { display:inline-block; color:var(--gbb-red); font-family:Georgia,"Times New Roman",serif; font-size:.83em; font-style:italic; font-weight:400; letter-spacing:-.055em; }
.gbb-home-hero__arrows { display:flex; justify-content:flex-end; gap:8px; padding:0 18px 14px; background:#f2eee7; }
.gbb-home-hero__arrows button { width:42px; height:42px; display:grid; place-items:center; padding:0; border:0; border-radius:50%; background:#e2ddd5; color:var(--gbb-ink); font-size:21px; line-height:1; cursor:pointer; }
.gbb-home-hero__arrows button:hover { background:var(--gbb-red); color:#fff; }
.gbb-home-hero--carousel :is(button,a):focus-visible { outline:3px solid var(--gbb-red); outline-offset:3px; }

@media (max-width:1024px) {
	.gbb-home-hero__slide--intro { min-height:590px; grid-template-columns:1fr 1fr; }
	.gbb-home-hero__intro-title { font-size:clamp(46px,7vw,68px); }
}
@media (max-width:1199px) {
	.gbb-home-hero__feature-grid { grid-template-columns:1fr; }
	.gbb-home-featured-product { display:grid; grid-template-columns:minmax(110px,32%) minmax(0,1fr); min-height:230px; }
	.gbb-home-featured-product__image { min-height:0; padding:12px; }
	.gbb-home-featured-product__image img { max-height:210px; }
	.gbb-home-featured-product__details { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:18px; }
	.gbb-home-featured-product__details a.gbb-home-featured-product__cart { max-width:300px; }
}
@media (max-width:767px) {
	.gbb-home-video__product { left:12px; bottom:12px; max-width:calc(100% - 118px); min-height:42px; padding:7px 11px; font-size:12px; }
	.gbb-home-video__controls { right:12px; top:12px; }
	.gbb-home-video__controls button { min-height:42px; padding:0 11px; font-size:11px; }
	.gbb-home-featured-product { grid-template-columns:minmax(95px,31%) minmax(0,1fr); min-height:205px; }
	.gbb-home-featured-product__image { padding:10px 4px 10px 10px; }
	.gbb-home-featured-product__image img { max-height:178px; }
	.gbb-home-featured-product__details { padding:13px 13px 15px 5px; }
	.gbb-home-featured-product h2 { margin:5px 0 4px; font-size:18px; }
	.gbb-home-featured-product p { margin-bottom:8px; font-size:12px; }
	.gbb-home-featured-product__price { font-size:22px; }
	.gbb-home-featured-product small { margin:3px 0 9px; font-size:11px; }
	.gbb-home-featured-product a.gbb-home-featured-product__cart { min-height:44px; font-size:13px !important; }
	.gbb-home-video__caption { min-height:0; align-items:flex-start; flex-direction:column; justify-content:center; gap:7px; padding:16px; }
	.gbb-home-video__caption h1 { font-size:24px; }
	.gbb-home-video__caption p { font-size:13px; }
	.gbb-home-video__caption > a { min-height:32px; font-size:13px; }
	.gbb-home-hero__arrows { padding:0 14px 12px; }
	.gbb-home-hero__slide--intro { min-height:0; grid-template-columns:1fr; }
	.gbb-home-hero__slide--intro .gbb-home-hero__copy { min-height:320px; padding:32px 23px; }
	.gbb-home-hero__intro-title { font-size:clamp(42px,12vw,58px); }
	.gbb-home-hero__slide--intro .gbb-home-hero__visual { min-height:210px; }
}
@media (prefers-reduced-motion:reduce) {
	.gbb-home-video__product,.gbb-home-video__controls button,.gbb-home-hero__arrows button { transition:none !important; }
}

/* Product navigation sits before the full-width breadcrumbs and the product hero. */
body.single-product .gbb-product-stepper {
	grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);
	gap:10px;
	margin:0 0 12px;
}
body.single-product .gbb-product-stepper__link {
	min-height:58px;
	gap:10px;
	padding:7px 11px;
	border-radius:15px;
	overflow:hidden;
}
body.single-product .gbb-product-stepper__arrow { width:36px; height:36px; flex-basis:36px; }
body.single-product .gbb-product-stepper__thumb {
	width:42px;
	height:42px;
	min-width:42px;
	max-width:42px;
	flex-basis:42px;
	padding:3px;
	overflow:hidden;
	border-radius:9px;
}
body.single-product .gbb-product-stepper__thumb img {
	display:block !important;
	width:36px !important;
	height:36px !important;
	max-width:100% !important;
	max-height:100% !important;
	margin:0 auto !important;
	object-fit:contain !important;
}
body.single-product .gbb-product-stepper__copy { flex:1 1 auto; min-width:0; }
body.single-product .gbb-product-stepper__position { width:44px; height:44px; font-size:10px; }
@media (max-width:767px) {
	body.single-product .gbb-product-stepper { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:9px; }
	body.single-product .gbb-product-stepper__link { min-height:52px; gap:7px; padding:6px 8px; border-radius:13px; }
	body.single-product .gbb-product-stepper__arrow { width:34px; height:34px; flex-basis:34px; }
	body.single-product .gbb-product-stepper__copy { max-width:calc(100% - 41px); }
}

/* Keep the product decision path together: navigation, location, photo and purchase. */
body.single-product .gbb-stepper-shell .gbb-product-stepper { margin:0 0 7px; }
body.single-product .single-breadcrumbs-wrapper { margin:0 0 12px !important; padding:0 !important; }
body.single-product .single-breadcrumbs-wrapper .wd-products-nav { display:none !important; }
body.single-product .product-image-summary-wrap { padding-top:5px !important; padding-bottom:clamp(22px,3vw,42px) !important; }
body.single-product .product-image-summary-inner { --wd-gap-lg:clamp(20px,2.7vw,38px) !important; align-items:flex-start !important; }
body.single-product .product-image-summary-inner > .product-images { align-self:flex-start; }
body.single-product .summary-inner { justify-content:flex-start !important; }
body.single-product .product_title { margin-bottom:clamp(10px,1.4vw,17px) !important; }
body.single-product .summary > .price,
body.single-product .summary-inner > .price { margin-bottom:12px !important; }
body.single-product .product_meta { margin-top:17px !important; padding-top:12px !important; }
body.single-product .product-tabs-wrapper { padding-top:clamp(20px,2.8vw,38px) !important; padding-bottom:clamp(22px,3vw,42px) !important; }
body.single-product .woocommerce-tabs .wd-nav-tabs { padding-top:0; }
body.single-product .related-and-upsells { padding-top:clamp(20px,2.8vw,38px) !important; }
body.single-product .gbb-product-insights-wrap { margin-bottom:clamp(20px,2.8vw,38px) !important; }
@media (max-width:767px) {
	body.single-product .gbb-stepper-shell .gbb-product-stepper { margin-bottom:5px; }
	body.single-product .single-breadcrumbs-wrapper { margin-bottom:9px !important; }
	body.single-product .single-breadcrumbs-wrapper .wd-breadcrumbs > a:not(.wd-last-link),
	body.single-product .single-breadcrumbs-wrapper .wd-breadcrumbs > .wd-delimiter { display:none; }
	body.single-product .single-breadcrumbs-wrapper .wd-breadcrumbs > .wd-last-link::after { content:' / '; color:var(--gbb-muted); }
	body.single-product .single-breadcrumbs-wrapper .wd-breadcrumbs { padding-inline:2px; line-height:1.45; }
	body.single-product .product-image-summary-wrap { padding-top:0 !important; }
	body.single-product .product_title { margin-bottom:10px !important; }
}

/* DES-04: a product photo must not push the purchase decision below the fold. */
@media (min-width:768px) and (max-width:1024px) {
	body.single-product .product-image-summary-inner {
		display:grid !important;
		grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
		gap:18px !important;
		align-items:start !important;
	}
	body.single-product .product-image-summary-inner > :is(.product-images,.summary) {
		width:100% !important;
		max-width:none !important;
		min-width:0;
		grid-column:auto / span 1 !important;
	}
	body.single-product .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) > a { min-height:390px; }
	body.single-product .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) img { max-height:390px !important; }
	body.single-product .summary-inner { padding:20px !important; }
	body.single-product .product_title { font-size:clamp(29px,3.3vw,38px) !important; line-height:1.08 !important; }
}
@media (max-width:767px) {
	body.single-product .product-image-summary-inner > .product-images { min-height:0 !important; }
	body.single-product .woocommerce-product-gallery { min-height:0 !important; }
	body.single-product .woocommerce-product-gallery__wrapper { height:245px !important; min-height:0 !important; }
	body.single-product .woocommerce-product-gallery__wrapper .wd-carousel-item,
	body.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image { height:245px !important; min-height:0 !important; }
	body.single-product .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) > a {
		min-height:245px !important;
		max-height:245px !important;
	}
	body.single-product .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) img {
		max-height:225px !important;
	}
	body.single-product .summary-inner { padding-top:14px !important; }
	body.single-product .summary-inner > .price { margin-bottom:8px !important; }
	body.single-product p.stock { margin-bottom:10px !important; }
	body.single-product form.cart { margin-bottom:12px !important; }
}

/* Long, localized product names must not delay price and purchase. Keep the
 * complete title readable; only its display scale and unnecessary space shrink. */
body.single-product .single-product-page .product_title {
	max-width:100%;
	font-size:clamp(32px,3vw,44px) !important;
	line-height:1.12 !important;
	word-spacing:normal !important;
	overflow-wrap:break-word;
}
@media (max-width:767px) {
	body.single-product .single-product-page .product_title {
		font-size:27px !important;
		line-height:1.14 !important;
		margin-bottom:8px !important;
	}
	body.single-product .woocommerce-product-gallery__wrapper,
	body.single-product .woocommerce-product-gallery__wrapper .wd-carousel-item,
	body.single-product .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image {
		height:205px !important;
	}
	body.single-product .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) > a {
		min-height:205px !important;
		max-height:205px !important;
	}
	body.single-product .woocommerce-product-gallery :is(.woocommerce-product-gallery__image,.wd-carousel-item) img {
		max-height:195px !important;
	}
	body.single-product .summary-inner { padding-top:10px !important; }
}
