/* ==========================================================================
   Cognac24 — site styles (on top of Woodmart). Tokens first, then by area.
   ========================================================================== */

:root {
	--cog-bg: #0e0b08;          /* dark page background */
	--cog-bg-2: #15110c;        /* dark panels */
	--cog-bg-3: #1d1710;        /* raised dark */
	--cog-line: rgba(200, 162, 106, .26);
	--cog-line-strong: rgba(200, 162, 106, .55);
	--cog-gold: #c8a26a;
	--cog-gold-light: #e4c893;
	--cog-gold-dark: #9c7640;
	--cog-cream: #efe6d8;       /* text on dark */
	--cog-muted: #a3957f;       /* secondary text on dark */
	--cog-light: #f6f2ec;       /* light page background */
	--cog-card: #ffffff;
	--cog-ink: #1c1712;         /* text on light */
	--cog-ink-2: #6b6054;
	--cog-brown: #5b3a1e;       /* prices on light */
	--cog-hair: #e7dfd3;        /* hairlines on light */
	--cog-serif: "Cormorant Garamond", Georgia, serif;
	--cog-sans: "Montserrat", Arial, sans-serif;
	--cog-script: "Great Vibes", cursive;
	--cog-gold-grad: linear-gradient(180deg, #f3dfb4 0%, #d4ae72 55%, #a8804a 100%);
}

.cog-icon { display: inline-block; flex: 0 0 auto; vertical-align: middle; }

/* ==========================================================================
   Buttons (Elementor button widget with class cog-btn …)
   ========================================================================== */
.cog-btn .elementor-button { border-radius: 0; padding: 15px 26px; font-family: var(--cog-sans); font-size: 13px; font-weight: 600;
	letter-spacing: .12em; text-transform: uppercase; transition: background .2s, color .2s, border-color .2s; }
.cog-btn .elementor-button-icon svg, .cog-btn .elementor-button-icon i { width: 14px; height: 14px; font-size: 12px; }
.cog-btn--gold .elementor-button { background: linear-gradient(180deg, #e0c28b, #c49a5c); color: #1c1712; fill: #1c1712; border: 1px solid #d9b77e; }
.cog-btn--gold .elementor-button:hover { background: linear-gradient(180deg, #ecd3a3, #cfa66a); color: #000; }
.cog-btn--outline .elementor-button { background: rgba(14, 11, 8, .35); color: var(--cog-cream); fill: var(--cog-cream); border: 1px solid var(--cog-line-strong);
	padding: 10px 18px; font-size: 12px; font-weight: 500; letter-spacing: .06em; text-transform: none; }
.cog-btn--outline .elementor-button:hover { border-color: var(--cog-gold); color: var(--cog-gold-light); background: rgba(14, 11, 8, .6); }
.cog-link-more .elementor-button { background: none; padding: 0; color: var(--cog-gold-dark); fill: var(--cog-gold-dark); font-family: var(--cog-serif);
	font-size: 17px; font-weight: 600; }
.cog-link-more .elementor-button:hover { color: var(--cog-ink); }
.cog-link-more .elementor-button-icon svg { width: 13px; }

/* Woodmart / WooCommerce buttons on light pages */
.single_add_to_cart_button, .woocommerce .checkout-button, #place_order { letter-spacing: .12em; }

/* ==========================================================================
   Header
   ========================================================================== */
.whb-header .wd-header-text { padding: 0; }
.cog-lang { display: inline-flex; align-items: center; gap: 10px; font-size: 12px; letter-spacing: .08em; }
.cog-lang__item { color: var(--cog-muted); font-weight: 500; }
.cog-lang__item:hover, .cog-lang__item.is-active { color: var(--cog-cream); }
.cog-lang__item.is-active { font-weight: 700; }
.cog-lang__sep { color: var(--cog-line-strong); }
.cog-location { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--cog-cream); }
.cog-location .cog-icon { color: var(--cog-gold); }
.cog-menu__list { display: flex; flex-wrap: wrap; gap: 26px; margin: 0; padding: 0; list-style: none; }
.cog-menu__list li { margin: 0; }
.cog-menu__list a { font-size: 12px; color: var(--cog-cream); }
.cog-menu__list a:hover { color: var(--cog-gold-light); }

/* search */
.whb-general-header .wd-search-form { width: 100%; max-width: 560px; }
.whb-general-header .searchform input[type="text"] { background: #15110c; border: 1px solid var(--cog-line); color: var(--cog-cream);
	padding-left: 46px; font-size: 13px; }
.whb-general-header .searchform input[type="text"]:focus { border-color: var(--cog-gold); }
.whb-general-header .searchform input::placeholder { color: #85786a; }
.whb-general-header .searchform .searchsubmit { position: absolute; left: 0; right: auto; width: 46px; color: var(--cog-muted); }
.whb-general-header .searchform .searchsubmit:hover { color: var(--cog-gold-light); }

/* account / wishlist / cart */
.whb-general-header .wd-header-my-account .wd-tools-text,
.whb-general-header .wd-header-wishlist .wd-tools-text,
.whb-general-header .wd-header-cart .wd-tools-text { font-size: 12px; font-weight: 500; letter-spacing: .04em; text-transform: none; color: var(--cog-cream); }
.whb-general-header .wd-tools-icon { color: var(--cog-gold-light); }
.whb-general-header .wd-header-cart .wd-cart-number { background: var(--cog-gold); color: #1c1712; }

/* main menu */
.whb-header-bottom .wd-nav-main { --nav-gap: 30px; }
.whb-header-bottom .wd-nav-main > li > a { font-size: 12.5px; letter-spacing: .05em; color: var(--cog-cream); }
.whb-header-bottom .wd-nav-main { flex-wrap: nowrap; justify-content: space-between; width: 100%; }
.whb-header-bottom .wd-nav-main > li:first-child > a { padding-left: 0; }
.whb-header-bottom .wd-nav-main > li:last-child > a { padding-right: 0; }
.whb-header-bottom .wd-header-nav { flex: 1; }
.whb-header-bottom .wd-nav-main > li > a { white-space: nowrap; }
.whb-header-bottom .wd-nav-main > li > a:hover, .whb-header-bottom .wd-nav-main > li.current-menu-item > a,
.whb-header-bottom .wd-nav-main > li.current-menu-ancestor > a { color: var(--cog-gold-light); }
.whb-header-bottom .wd-nav-main.wd-style-underline .nav-link-text:after { background: var(--cog-gold); height: 1px; }
.wd-nav-main .menu-item.cog-menu-sale > a { color: var(--cog-gold-light); }
.wd-dropdown-menu.wd-design-default { background: #15110c; border: 1px solid var(--cog-line); }
.wd-dropdown-menu .wd-sub-menu li a { color: var(--cog-cream); font-size: 14px; }
.wd-dropdown-menu .wd-sub-menu li a:hover { color: var(--cog-gold-light); background: none; }
.wd-dropdown-menu .cog-menu-accent > a { border-top: 1px solid var(--cog-line); margin-top: 6px; padding-top: 12px !important; color: var(--cog-gold-light) !important; }

/* ==========================================================================
   Heroes (category/brand/terroir archive, content pages)
   ========================================================================== */
.cog-hero { position: relative; overflow: hidden; background: var(--cog-bg); color: var(--cog-cream); isolation: isolate; }
.cog-hero__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: right center; z-index: -2; }
.cog-hero::before { content: ""; position: absolute; inset: 0; z-index: -1;
	background: linear-gradient(90deg, rgba(14, 11, 8, .94) 0%, rgba(14, 11, 8, .78) 36%, rgba(14, 11, 8, .2) 68%, rgba(14, 11, 8, 0) 100%); }
.cog-hero__inner { position: relative; padding-top: 64px; padding-bottom: 64px; }
.cog-hero__title { margin: 0; font-family: var(--cog-serif); font-weight: 600; line-height: .95; font-size: clamp(56px, 8vw, 120px); letter-spacing: .02em;
	color: var(--cog-gold-light); background: var(--cog-gold-grad); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.cog-hero__subtitle { margin: 14px 0 0; font-family: var(--cog-serif); font-size: clamp(20px, 2.2vw, 30px); letter-spacing: .14em; text-transform: uppercase; color: var(--cog-cream); }
.cog-hero__desc { max-width: 560px; margin-top: 18px; font-size: 15px; line-height: 1.6; color: var(--cog-cream); }
.cog-hero__desc p:last-child { margin-bottom: 0; }
.cog-hero--archive { min-height: 360px; display: flex; align-items: center; }
.cog-hero--page .cog-hero__inner { padding-top: 40px; padding-bottom: 44px; }
.cog-hero--page .cog-hero__title { font-size: clamp(40px, 5vw, 68px); }
.cog-hero--page.has-image { min-height: 320px; display: flex; align-items: flex-end; }
.cog-hero--page:not(.has-image)::before { background: linear-gradient(180deg, var(--cog-bg-2), var(--cog-bg)); }
.cog-hero .cog-crumbs { margin-bottom: 18px; }

/* breadcrumbs */
.cog-crumbs { font-size: 13px; color: var(--cog-ink-2); }
.cog-crumbs a { color: inherit; }
.cog-crumbs__sep { margin: 0 8px; opacity: .6; }
.cog-hero .cog-crumbs, .cog-hero .cog-crumbs a { color: var(--cog-muted); }
.cog-hero .cog-crumbs a:hover { color: var(--cog-gold-light); }

/* light heading (cart, checkout, account, wishlist) */
.cog-pagehead { padding-top: 34px; padding-bottom: 6px; }
.cog-pagehead__title { margin: 12px 0 0; font-family: var(--cog-serif); font-size: 44px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--cog-ink); }

/* no extra gap between theme wrappers and our heroes */
.cog-hero + .main-page-wrapper, .cog-hero + .wd-page-content { padding-top: 0; }

/* ==========================================================================
   Home
   ========================================================================== */
body.home { background: var(--cog-bg); }
body.home .main-page-wrapper, body.home .wd-page-content { background: var(--cog-bg); padding-top: 0; margin-top: 0; }
body.home .site-content { margin-bottom: 0; padding-bottom: 0; }
body.home .wd-content-layout, body.home .content-layout-wrapper { padding-top: 0; padding-bottom: 0; }

.cog-home-hero { position: relative; overflow: hidden; }
.cog-home-hero::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
	background: linear-gradient(90deg, rgba(10, 8, 6, .92) 0%, rgba(10, 8, 6, .7) 32%, rgba(10, 8, 6, .1) 60%, rgba(10, 8, 6, 0) 100%),
		linear-gradient(0deg, rgba(10, 8, 6, .7) 0%, rgba(10, 8, 6, 0) 22%); }
.cog-home-hero > .e-con-inner { position: relative; z-index: 1; }
.cog-kicker .elementor-heading-title { font-family: var(--cog-serif); font-size: 17px; font-weight: 500; letter-spacing: .5em; text-transform: uppercase; color: var(--cog-muted); }
.cog-display .elementor-heading-title { margin: 6px 0 4px; font-family: var(--cog-serif); font-weight: 600; font-size: clamp(64px, 9.5vw, 136px); line-height: .9;
	letter-spacing: .02em; text-transform: uppercase; background: var(--cog-gold-grad); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
	filter: drop-shadow(0 2px 14px rgba(0, 0, 0, .45)); }
.cog-lead .elementor-heading-title { font-family: var(--cog-serif); font-size: clamp(20px, 2.1vw, 30px); font-weight: 500; line-height: 1.35; letter-spacing: .16em;
	text-transform: uppercase; color: var(--cog-cream); max-width: 520px; margin-bottom: 36px; }
.cog-home-hero__aside { align-self: flex-start; margin-top: 10px; }
.cog-home-hero__quote p { margin: 0; font-family: var(--cog-serif); font-style: italic; font-size: 26px; line-height: 1.3; color: var(--cog-cream); text-align: right; }
.cog-home-hero__quote::after { content: ""; display: block; width: 90px; height: 1px; margin: 18px 0 0 auto; background: var(--cog-gold); }
.cog-home-hero__seal { position: absolute !important; left: 24px; bottom: 20px; width: 118px !important; color: rgba(200, 162, 106, .55); }
.cog-seal { display: block; width: 118px; height: 118px; }
.cog-home-hero__corner { position: absolute !important; right: 24px; bottom: 18px; width: auto !important; }
.cog-home-hero__corner p { margin: 0; font-size: 11px; letter-spacing: .3em; text-transform: uppercase; color: var(--cog-muted); }

.cog-home-features { background: var(--cog-bg); border-bottom: 1px solid rgba(200, 162, 106, .12); }

.cog-panel { position: relative; overflow: hidden; border: 1px solid var(--cog-line); }
.cog-panel::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14, 11, 8, .55), rgba(14, 11, 8, .82)); z-index: 0; }
.cog-panel > * { position: relative; z-index: 1; }
.cog-panel__title .elementor-heading-title { margin-bottom: 18px; font-family: var(--cog-serif); font-size: 32px; font-weight: 500; letter-spacing: .14em;
	text-transform: uppercase; color: var(--cog-cream); }

.cog-promo { position: relative; overflow: hidden; border: 1px solid var(--cog-line); }
.cog-promo::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(14, 11, 8, .85) 0%, rgba(14, 11, 8, .4) 60%, rgba(14, 11, 8, .1) 100%); z-index: 0; }
.cog-promo > * { position: relative; z-index: 1; }
.cog-promo__title .elementor-heading-title { font-family: var(--cog-serif); font-size: 25px; font-weight: 600; line-height: 1.1; letter-spacing: .08em;
	text-transform: uppercase; color: var(--cog-cream); max-width: 190px; }

.cog-recommended { border: 1px solid var(--cog-hair); }
.cog-block-title .elementor-heading-title { font-family: var(--cog-serif); font-size: 30px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--cog-ink); }

.cog-band { position: relative; overflow: hidden; border-top: 1px solid rgba(200, 162, 106, .15); }
.cog-band::before { content: ""; position: absolute; inset: 0; background: rgba(10, 8, 6, .55); z-index: 0; }
.cog-band > .e-con-inner { position: relative; z-index: 1; }
.cog-band__script p { margin: 0; font-family: var(--cog-script); font-size: clamp(34px, 3.6vw, 52px); color: var(--cog-gold-light); text-align: center; }
.cog-band__script p::after { content: ""; display: block; width: 150px; height: 1px; margin: 8px auto 0; background: var(--cog-gold); }
.cog-band__side p { margin: 0; font-size: 11px; letter-spacing: .28em; text-transform: uppercase; color: var(--cog-muted); }
.cog-band__side--right p { text-align: right; }

/* features row */
.cog-features { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 18px 28px; }
.cog-feature { display: flex; align-items: center; gap: 16px; }
.cog-feature .cog-icon { color: var(--cog-gold); }
.cog-feature__title { font-size: 14px; line-height: 1.35; max-width: 170px; }
.cog-features--home .cog-feature__title { color: var(--cog-cream); }
.cog-features--product { margin-top: 28px; padding: 18px 22px; border: 1px solid var(--cog-hair); background: #fff; justify-content: space-around; }
.cog-features--product .cog-feature { gap: 10px; }
.cog-features--product .cog-feature__title { font-size: 13px; color: var(--cog-ink); max-width: none; }

/* home category list */
.cog-catlist { margin: 0; padding: 0; list-style: none; }
.cog-catlist li { margin: 0; border-bottom: 1px solid var(--cog-line); }
.cog-catlist a { display: flex; align-items: center; justify-content: space-between; padding: 11px 0; font-family: var(--cog-serif); font-size: 19px; font-weight: 500; color: var(--cog-cream); }
.cog-catlist a:hover { color: var(--cog-gold-light); }
.cog-catlist .cog-icon { color: var(--cog-gold); opacity: .8; }

/* ==========================================================================
   Product cards (Woodmart "standard" hover)
   ========================================================================== */
.wd-product.wd-hover-standard .wd-product-wrapper { display: grid; grid-template-columns: 100%; grid-template-areas: "thumb" "title" "brand" "price";
	background: var(--cog-card); border: 1px solid var(--cog-hair); padding: 14px 14px 20px; text-align: center; transition: box-shadow .25s, border-color .25s; }
.wd-product.wd-hover-standard .wd-product-wrapper:hover { border-color: #dccfb9; box-shadow: 0 12px 30px rgba(60, 40, 20, .08); }
.wd-product.wd-hover-standard .wd-product-thumb { grid-area: thumb; margin-bottom: 14px; }
.wd-product.wd-hover-standard .wd-entities-title { grid-area: title; margin: 0 0 2px; font-family: var(--cog-serif); font-size: 20px; font-weight: 600; line-height: 1.2; }
.wd-product.wd-hover-standard .wd-entities-title a { color: var(--cog-ink); }
.wd-product.wd-hover-standard .wd-product-brands-links { grid-area: brand; margin: 0 0 6px; font-size: 13px; color: var(--cog-ink-2); }
.wd-product.wd-hover-standard .wd-product-brands-links a { color: inherit; }
.wd-product.wd-hover-standard .price { grid-area: price; font-family: var(--cog-serif); font-size: 22px; font-weight: 600; color: var(--cog-brown); }
.wd-product .price del { color: #a79a8b; font-size: .8em; }
.wd-product .price ins { text-decoration: none; }
/* round cart button over the image, bottom-right */
.wd-product.wd-hover-standard .wd-add-btn { grid-area: thumb; align-self: end; justify-self: end; z-index: 3; margin: 0 4px 18px 0; }
.wd-product.wd-hover-standard .wd-add-btn > a,
.wd-product.wd-hover-standard .wd-add-btn > a.button { --btn-accent-bgcolor: #1c1712; --btn-accent-bgcolor-hover: #c8a26a; --btn-accent-color: #e4c893; --btn-accent-color-hover: #1c1712;
	--btn-accent-brd-radius: 50%; --btn-brd-radius: 50%;
	display: flex !important; align-items: center; justify-content: center; width: 46px; height: 46px; min-height: 0 !important; padding: 0 !important;
	border-radius: 50% !important; background: #1c1712 !important; color: #e4c893 !important; box-shadow: 0 4px 12px rgba(0, 0, 0, .25); }
.wd-product.wd-hover-standard .wd-add-btn > a:hover { background: #c8a26a !important; color: #1c1712 !important; }
.wd-product.wd-hover-standard .wd-add-btn .wd-action-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.wd-product.wd-hover-standard .wd-add-btn .wd-action-icon { display: block; width: 20px; height: 20px;
	background: currentColor; -webkit-mask: var(--cog-cart-mask) center / contain no-repeat; mask: var(--cog-cart-mask) center / contain no-repeat; }
.wd-product.wd-hover-standard .wd-add-btn .wd-check-icon { display: none; }
:root { --cog-cart-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E"); }
/* wishlist heart top-right always visible */
.wd-product .wd-buttons.wd-pos-r-t { opacity: 1 !important; visibility: visible !important; transform: none !important; top: 4px; right: 4px; background: none; box-shadow: none; }
.wd-product .wd-buttons .wd-action-btn > a { opacity: 1; }
.wd-product .wd-buttons .wd-wishlist-btn > a { color: var(--cog-gold-dark); }
.wd-product .product-label { border-radius: 0; font-weight: 600; }

/* ==========================================================================
   Shop archive
   ========================================================================== */
.woodmart-archive-shop .main-page-wrapper, .tax-product_cat .main-page-wrapper { background: var(--cog-light); }
.shop-loop-head { margin-bottom: 22px; }
.cog-result-count { margin: 0; color: var(--cog-ink-2); font-size: 13px; }
.wd-shop-tools .woocommerce-ordering select { border: 1px solid var(--cog-hair); background-color: #fff; }
.sidebar-container .widget { border-bottom: 1px solid var(--cog-hair); }
.sidebar-container .widget-title { letter-spacing: .08em; }
.cog-brand-search { width: 100%; height: 38px; margin-bottom: 12px; border: 1px solid var(--cog-hair); background: #fff; font-size: 13px; }
/* WooCommerce brand list as checkboxes, like Woodmart layered nav */
.widget_brand_nav ul { margin: 0; padding: 0; list-style: none; }
.widget_brand_nav li { margin-bottom: 8px; }
.widget_brand_nav li a { display: flex; align-items: center; gap: 10px; color: var(--cog-ink); font-size: 14px; }
.widget_brand_nav li a::before { content: ""; flex: 0 0 16px; width: 16px; height: 16px; border: 1px solid #cfc3b2; background: #fff; }
.widget_brand_nav li.chosen a::before { background: var(--cog-brown) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 11px no-repeat; border-color: var(--cog-brown); }
.widget_brand_nav .count { margin-left: auto; color: #a79a8b; font-size: 12px; }

/* ==========================================================================
   Single product
   ========================================================================== */
.single-product .main-page-wrapper { background: var(--cog-light); }
.single-product .product_title { font-size: 44px; font-weight: 600; line-height: 1.05; }
.cog-product-subtitle { margin: -6px 0 12px; font-family: var(--cog-serif); font-size: 20px; color: var(--cog-ink-2); }
.single-product .summary-inner > .price { font-family: var(--cog-serif); font-size: 34px; font-weight: 600; color: var(--cog-brown); }
.cog-specs { margin: 18px 0 20px; }
.cog-specs__row { display: flex; gap: 12px; padding: 4px 0; font-size: 14px; }
.cog-specs__row dt { flex: 0 0 110px; font-weight: 600; color: var(--cog-ink); }
.cog-specs__row dd { margin: 0; color: var(--cog-ink-2); }
.cog-specs__row dd a { color: var(--cog-ink-2); text-decoration: underline; text-decoration-color: var(--cog-hair); text-underline-offset: 3px; }
.cog-specs__note { color: #9a8f82; }
.single-product .stock.in-stock { display: inline-flex; align-items: center; gap: 8px; color: #2e7d32; font-weight: 500; }
.single-product .stock.in-stock::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: #3fa34d; box-shadow: 0 0 0 3px rgba(63, 163, 77, .18); }
.single-product .single_add_to_cart_button { min-width: 200px; }
.cog-desc { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 40px; align-items: start; }
.cog-notes { margin-top: 24px; }
.cog-notes__row { padding: 10px 0; border-top: 1px solid var(--cog-hair); }
.cog-notes__row dt { font-family: var(--cog-serif); font-size: 19px; font-weight: 600; color: var(--cog-ink); }
.cog-notes__row dd { margin: 2px 0 0; color: var(--cog-ink-2); }
.cog-desc__media { margin: 0; }
.cog-desc__media img { width: 100%; height: auto; display: block; }
.cog-quote { margin: 20px 0 0; padding: 0; border: 0; font-family: var(--cog-serif); font-style: italic; font-size: 27px; line-height: 1.3; color: var(--cog-brown); }
.cog-quote::before { display: none; }
@media (max-width: 1024px) { .cog-desc { grid-template-columns: 1fr; } }
/* single tab = description only: hide the tab navigation */
.single-product .woocommerce-tabs .wd-nav-wrapper, .single-product .woocommerce-tabs .wd-nav-tabs-wrapper,
.single-product .woocommerce-tabs ul.wc-tabs, .single-product .woocommerce-tabs .tabs-wrapper > .wd-nav { display: none !important; }
.single-product .woocommerce-tabs .wd-accordion-title, .single-product .woocommerce-tabs .wd-tab-title { display: none !important; }
.single-product .woocommerce-tabs .woocommerce-Tabs-panel { display: block !important; }

/* ==========================================================================
   Content pages (Elementor .cog-article)
   ========================================================================== */
.cog-article { background: var(--cog-light); }
.cog-article__section { padding: 26px 0; border-bottom: 1px solid var(--cog-hair); }
.cog-article__section:last-of-type { border-bottom: 0; }
.cog-article__h .elementor-heading-title { margin-bottom: 12px; font-family: var(--cog-serif); font-size: 32px; font-weight: 600; color: var(--cog-ink); }
.cog-article__text { font-size: 16px; line-height: 1.75; color: #3a3129; }
.cog-article__text p:last-child { margin-bottom: 0; }
.cog-article__text ul { padding-left: 20px; }
.cog-article__products { margin-top: 30px; }

/* cards (terroirs, brands) */
.cog-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 34px; }
.cog-card { display: flex; flex-direction: column; gap: 8px; padding: 26px 24px 22px; background: #fff; border: 1px solid var(--cog-hair); color: var(--cog-ink); transition: border-color .2s, box-shadow .2s; }
.cog-card:hover { border-color: var(--cog-gold); box-shadow: 0 10px 26px rgba(60, 40, 20, .08); color: var(--cog-ink); }
.cog-card__num { font-family: var(--cog-serif); font-size: 15px; letter-spacing: .2em; color: var(--cog-gold-dark); }
.cog-card__title { font-family: var(--cog-serif); font-size: 27px; font-weight: 600; line-height: 1.1; }
.cog-card__tagline { font-family: var(--cog-serif); font-style: italic; font-size: 17px; color: var(--cog-gold-dark); }
.cog-card__text { flex: 1; font-size: 14px; line-height: 1.6; color: var(--cog-ink-2); }
.cog-card__more { display: inline-flex; align-items: center; gap: 8px; margin-top: 6px; font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--cog-gold-dark); }
@media (max-width: 1024px) { .cog-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .cog-cards { grid-template-columns: 1fr; } }

/* contact */
.cog-contact > .e-con, .cog-contact > .elementor-element { flex: 1 1 320px; }
.cog-contacts { margin: 0; padding: 0; list-style: none; }
.cog-contacts li { display: flex; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--cog-hair); }
.cog-contacts .cog-icon { color: var(--cog-gold-dark); }
.cog-contacts strong { display: block; font-family: var(--cog-serif); font-size: 18px; }

/* ==========================================================================
   Footer (HTML block .cog-foot)
   ========================================================================== */
.footer-container, .footer-container .main-footer { background: #0a0806; }
.footer-container .main-footer { padding-left: 0; padding-right: 0; max-width: none; }
.footer-container .main-footer > .container, .footer-container .main-footer { padding-top: 0 !important; padding-bottom: 0 !important; }
.cog-foot { border-top: 1px solid rgba(200, 162, 106, .18); color: var(--cog-cream); }
.cog-foot__brand img { max-width: 200px; }
.cog-foot__tagline p { margin: 6px 0 0; font-family: var(--cog-serif); font-size: 15px; letter-spacing: .24em; text-transform: uppercase; color: var(--cog-muted); text-align: center; }
.cog-foot__cols { padding-top: 34px; border-top: 1px solid rgba(200, 162, 106, .14); }
.cog-foot__col { flex: 1 1 180px; }
.cog-foot__col--news { flex: 1.4 1 300px; }
.cog-foot__title .elementor-heading-title { margin-bottom: 16px; font-family: var(--cog-sans); font-size: 14px; font-weight: 600; letter-spacing: .04em; color: var(--cog-cream); }
.cog-foot .cog-menu__list { flex-direction: column; gap: 10px; }
.cog-foot .cog-menu__list a { font-size: 14px; color: var(--cog-muted); }
.cog-foot .cog-menu__list a:hover { color: var(--cog-gold-light); }
.cog-foot__social { margin-top: 18px; }
.cog-foot__social .elementor-social-icon { border: 1px solid var(--cog-line); }
.cog-foot__social .elementor-social-icon:hover { border-color: var(--cog-gold); }
.cog-foot__bottom { padding-top: 22px; border-top: 1px solid rgba(200, 162, 106, .14); }
.cog-foot__copy p { margin: 0; font-size: 13px; color: var(--cog-muted); }
.cog-foot__places { margin-top: 4px !important; letter-spacing: .06em; }
.cog-foot__script p { margin: 0; font-family: var(--cog-script); font-size: 34px; color: var(--cog-gold); transform: rotate(-4deg); }
.cog-foot__legal p { margin: 0; padding: 10px 14px; border: 1px solid rgba(200, 162, 106, .2); font-size: 12px; text-align: center; color: var(--cog-cream); letter-spacing: .02em; }
/* newsletter form */
.cog-nl { display: flex; max-width: 380px; }
.cog-nl .wpcf7-form-control-wrap { flex: 1; }
.cog-nl input[type="email"] { width: 100%; height: 48px; background: #15110c; border: 1px solid var(--cog-line); border-right: 0; color: var(--cog-cream); }
.cog-nl input[type="email"]::placeholder { color: #85786a; }
.cog-nl .cog-nl__btn, .cog-nl input[type="submit"] { width: 54px; height: 48px; min-height: 48px; padding: 0; background: linear-gradient(180deg, #e0c28b, #c49a5c); color: #1c1712; font-size: 20px; border: 0; }
.cog-newsletter .wpcf7-response-output { margin: 10px 0 0 !important; font-size: 12px; color: var(--cog-cream); }
.cog-newsletter .wpcf7-spinner { position: absolute; }


/* ==========================================================================
   Elementor container sizing: inner containers default to width 100% — let rows share space
   ========================================================================== */
.e-con.cog-promos > .e-con { --width: auto; --flex-grow: 1; --flex-shrink: 1; --flex-basis: 0; min-width: 0; }
.e-con.cog-foot__cols > .e-con, .e-con.cog-foot__cols > .e-con-inner > .e-con { --width: auto; --flex-grow: 1; --flex-shrink: 1; --flex-basis: 180px; min-width: 0; }
.e-con.cog-foot__cols > .e-con.cog-foot__col--news { --flex-grow: 1.5; --flex-basis: 300px; }
.e-con.cog-home-hero > .e-con-inner > .cog-home-hero__text { --width: 54%; }
.e-con.cog-home-hero > .e-con-inner > .cog-home-hero__aside { --width: 32%; }
.e-con.cog-recommended__head { --flex-wrap: nowrap; }
.e-con.cog-recommended__head > .elementor-widget { width: auto; }
.e-con.cog-foot__bottom > .elementor-widget { width: auto; }
.e-con.cog-band > .e-con-inner > .elementor-widget { width: auto; }
.e-con.cog-contact > .e-con-inner > *, .e-con.cog-contact > * { --width: auto; flex: 1 1 320px; min-width: 0; }

/* ==========================================================================
   Product request (button, modal, CF7 form)
   ========================================================================== */
.cog-request { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin: 6px 0 18px; }
.cog-request .stock { margin: 0; }
.cog-request-open.button { min-width: 230px; height: 50px; padding: 0 30px; border-radius: 0; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
	background: linear-gradient(180deg, #e0c28b, #c49a5c); color: #1c1712; border: 1px solid #d9b77e; }
.cog-request-open.button:hover { background: linear-gradient(180deg, #ecd3a3, #cfa66a); color: #000; }
.cog-modal { width: min(540px, calc(100vw - 24px)); max-height: calc(100vh - 24px); margin: auto; padding: 0; border: 1px solid var(--cog-line-strong);
	background: var(--cog-light); color: var(--cog-ink); overflow-x: hidden; overflow-y: auto; }
.cog-modal *, .cog-modal *::before, .cog-modal *::after { box-sizing: border-box; }
.cog-modal::backdrop { background: rgba(10, 8, 6, .72); backdrop-filter: blur(2px); }
.cog-modal__box { position: relative; padding: 20px 26px 18px; }
.cog-modal__title { margin: 0 0 12px; font-family: var(--cog-serif); font-size: 28px; font-weight: 600; line-height: 1.1; letter-spacing: .03em; }
.cog-modal .wpcf7, .cog-modal form { margin: 0; max-width: 100%; }
.cog-form p { margin: 0 0 10px; }
.cog-form label { display: block; font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--cog-ink-2); }
.cog-form .wpcf7-form-control-wrap { display: block; max-width: 100%; }
.cog-form input:not([type="submit"]), .cog-form textarea { display: block; width: 100%; max-width: 100%; margin-top: 4px; background: #fff;
	text-transform: none; letter-spacing: 0; font-weight: 400; color: var(--cog-ink); }
.cog-form input:not([type="submit"]) { height: 40px; }
.cog-form input[readonly], .cog-form textarea[readonly] { background: #efe8dd; color: var(--cog-brown); font-family: var(--cog-serif); font-size: 16px; font-weight: 600; line-height: 1.3; }
.cog-form textarea[readonly] { height: auto; min-height: 0; max-height: none; overflow: hidden; resize: none; padding-top: 8px; padding-bottom: 8px; }
.cog-form textarea:not([readonly]) { height: 72px !important; min-height: 0; resize: vertical; }
.cog-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
.cog-form__row > p { min-width: 0; }
.cog-form__actions { position: relative; display: flex; gap: 10px; margin-top: 4px; }
.cog-form__actions > button, .cog-form__actions > input { flex: 1 1 0; min-width: 0; width: auto !important; }
.cog-form__actions > .wpcf7-spinner { position: absolute !important; right: 8px; top: 50%; flex: none; width: 24px; margin: -12px 0 0 !important; }
.cog-form .cog-btn-gold, .cog-form input[type="submit"], .cog-form__close { height: 46px; min-height: 0; margin: 0; border-radius: 0; font-size: 12px; font-weight: 600;
	letter-spacing: .12em; text-transform: uppercase; cursor: pointer; }
.cog-form .cog-btn-gold, .cog-form input[type="submit"] { width: 100%; background: linear-gradient(180deg, #e0c28b, #c49a5c); color: #1c1712; border: 1px solid #d9b77e; }
.cog-form__close { background: transparent !important; color: var(--cog-ink) !important; border: 1px solid #cfc3b2 !important; box-shadow: none !important; }
.cog-form__close:hover { border-color: var(--cog-ink); background: transparent; color: var(--cog-ink); }
.cog-form .wpcf7-not-valid-tip { font-size: 12px; text-transform: none; letter-spacing: 0; }
.cog-modal .wpcf7-response-output { margin: 10px 0 0 !important; padding: 8px 12px !important; font-size: 13px; }
@media (max-width: 520px) { .cog-form__row { grid-template-columns: 1fr; } .cog-modal__box { padding: 16px 16px 14px; } .cog-modal__title { font-size: 24px; } }

/* "Order from supplier" (sneg_module/inc/order.php): button, compact cart, delivery choice */
.cog-order-open.button { min-width: 230px; height: 50px; padding: 0 26px; border-radius: 0; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
	background: transparent; color: var(--cog-ink); border: 1px solid var(--cog-gold); box-shadow: none; }
.cog-order-open.button:hover { background: rgba(200, 162, 106, .14); color: var(--cog-ink); border-color: var(--cog-gold-dark); }
.cog-modal--order { width: min(600px, calc(100vw - 24px)); }
.cog-minicart { display: grid; grid-template-columns: 64px 1fr auto; grid-template-areas: "img info qty" "img total total"; gap: 4px 14px; align-items: center;
	margin: 0 0 12px; padding: 10px 12px; background: #fff; border: 1px solid var(--cog-hair); }
.cog-minicart__img { grid-area: img; }
.cog-minicart__img img { display: block; width: 64px; height: 64px; object-fit: contain; }
.cog-minicart__info { grid-area: info; display: flex; flex-direction: column; min-width: 0; }
.cog-minicart__name { font-family: var(--cog-serif); font-size: 18px; font-weight: 600; line-height: 1.15; }
.cog-minicart__price { font-size: 13px; color: var(--cog-ink-2); }
.cog-minicart__total { grid-area: total; display: flex; justify-content: flex-end; align-items: baseline; gap: 10px; padding-top: 6px; border-top: 1px solid var(--cog-hair);
	font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--cog-ink-2); }
.cog-minicart__sum { font-family: var(--cog-serif); font-size: 22px; letter-spacing: 0; text-transform: none; color: var(--cog-brown); }
.cog-qty { grid-area: qty; display: grid; grid-template-columns: 34px 46px 34px; width: 116px; height: 36px; border: 1px solid #cfc3b2; background: #fff; }
.cog-qty .cog-qty__btn { width: 100%; min-width: 0; min-height: 0; height: auto; padding: 0; margin: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; color: var(--cog-ink); font-size: 18px; line-height: 1; cursor: pointer; }
.cog-qty .cog-qty__btn:hover { background: #efe8dd; }
.cog-form .cog-qty input[type="number"] { width: 100%; min-width: 0; height: 100%; margin: 0; padding: 0; border: 0; border-left: 1px solid #cfc3b2; border-right: 1px solid #cfc3b2;
	text-align: center; font-weight: 600; -moz-appearance: textfield; }
.cog-qty input::-webkit-outer-spin-button, .cog-qty input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.cog-delivery { display: flex; flex-wrap: wrap; gap: 8px; min-width: 0; margin: 0 0 10px; padding: 0; border: 0; }
.cog-delivery legend { float: left; width: 100%; margin-bottom: 0; padding: 0; font-family: var(--cog-sans); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--cog-ink-2); }
.cog-form .cog-delivery__opt { flex: 1 1 140px; display: flex; align-items: center; gap: 8px; margin: 0; padding: 0 12px; height: 40px; background: #fff; border: 1px solid #cfc3b2; cursor: pointer;
	font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--cog-ink); }
.cog-form .cog-delivery__opt input { display: inline-block; width: auto; height: auto; margin: 0; accent-color: var(--cog-gold-dark); }
.cog-delivery__opt:has(input:checked) { border-color: var(--cog-gold-dark); background: #fbf6ee; }
.cog-form input.is-invalid, .cog-form textarea.is-invalid { border-color: #b3261e; }
.cog-field-error { display: block; margin-top: 3px; font-size: 12px; font-weight: 400; letter-spacing: 0; text-transform: none; color: #b3261e; }
.cog-form input::placeholder, .cog-form textarea::placeholder { color: #a99e90; opacity: 1; }
.cog-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.cog-order-response { margin-top: 10px; padding: 8px 12px; font-size: 13px; border: 1px solid; }
.cog-order-response.is-ok { border-color: #46b450; color: #1e5d26; background: #eef8ef; }
.cog-order-response.is-error { border-color: #b3261e; color: #8a1c15; background: #fbeeed; }
.cog-modal.is-sending .cog-btn-gold { opacity: .6; cursor: progress; }
@media (max-width: 520px) {
	.cog-minicart { grid-template-columns: 52px 1fr; grid-template-areas: "img info" "qty total"; }
	.cog-minicart__img img { width: 52px; height: 52px; }
	.cog-minicart__total { border-top: 0; padding-top: 0; }
	.cog-form .cog-delivery__opt { flex-basis: 100%; }
	.cog-request-open.button, .cog-order-open.button { flex: 1 1 100%; min-width: 0; }
}
/* product cards: request (envelope) instead of cart */
.wd-product.wd-hover-standard .wd-add-btn .cog-request-loop .wd-action-icon { --cog-cart-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpath d='m22 6-10 7L2 6'/%3E%3C/svg%3E"); }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1024px) {
	.e-con.cog-home-hero > .e-con-inner > .cog-home-hero__text { --width: 100%; }
	.cog-home-hero__aside, .cog-home-hero__corner { display: none !important; }
	.cog-home-hero__text { width: 100% !important; }
	.cog-features--home { justify-content: flex-start; }
	.cog-features--home .cog-feature { flex: 1 1 45%; }
}
@media (max-width: 767px) {
	.cog-hero--archive { min-height: 280px; }
	.cog-hero__inner { padding-top: 40px; padding-bottom: 40px; }
	.cog-home-hero::before { background: linear-gradient(0deg, rgba(10, 8, 6, .95) 0%, rgba(10, 8, 6, .55) 55%, rgba(10, 8, 6, .25) 100%); }
	.cog-home-hero__seal { display: none; }
	.cog-band > .e-con-inner { flex-direction: column !important; gap: 10px; }
	.cog-band__side p, .cog-band__side--right p { text-align: center; }
	.cog-foot__bottom > .e-con-inner, .cog-foot__bottom { flex-direction: column !important; align-items: flex-start !important; }
	.cog-promo { min-height: 150px !important; }
	.e-con.cog-promos > .e-con { --flex-basis: auto; }
}
