/* =============================================================================
   Kente Supermarket – theme styles
   Metallic-gray design system. Tokens mirror theme.json; this file styles the
   header, homepage modules, product tiles, catalog, PDP, cart/checkout, policy
   pages and footer.
   - page container 1393px (16px gutters), header inner 1377px (24px)
   - header rows: announcement 31 / utility 56 / main 64 / shop bar 44 / location strip 56
   - logo 170x50, search 759x40, icon tile 262x110, hero 1389x355, banner 1393x224
   - tile image square, pills 22px, price 24px/700, cards radius 4px
   ============================================================================= */

:root {
	--kente-blue: #2f333a;            /* graphite – primary */
	--kente-blue-dark: #1e2126;       /* graphite dark – hover / bars */
	--kente-red: #8e2a2a;             /* oxblood – sale accent */
	--kente-text: #1b1d21;            /* ink */
	--kente-muted: #5c626c;           /* steel */
	--kente-silver: #a7adb6;
	--kente-border: #d5d9de;          /* chrome */
	--kente-surface: #f4f5f7;         /* mist */
	--kente-footer: #e8eaed;          /* pearl */
	--kente-green: #3d5a3d;
	--kente-gold: #b0905a;            /* brass – stars */
	--kente-metal: linear-gradient(135deg, #4b5058 0%, #2b2f35 48%, #3b4048 100%);
	--kente-metal-light: linear-gradient(180deg, #f7f8fa 0%, #e1e4e8 100%);
	--kente-sheen: linear-gradient(110deg, rgba(255,255,255,0) 30%, rgba(255,255,255,.08) 50%, rgba(255,255,255,0) 70%);
	--kente-radius: 4px;
	--kente-card-radius: 4px;
	--kente-card-shadow: 0 0 5px rgba(15, 17, 20, .22);
	--kente-container: 1393px;
	--kente-header-inner: 1377px;
}

html { -webkit-text-size-adjust: 100%; }
body { margin: 0; color: var(--kente-text); background: #fff; overflow-x: clip; font-feature-settings: "ss01", "cv05"; }
.kente-header, .kente-footer { overflow-x: clip; }
img { max-width: 100%; height: auto; }
button { font-family: inherit; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible { outline: 2px solid var(--kente-silver); outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.has-global-padding { padding-left: 16px; padding-right: 16px; }

/* ---------------------------------------------------------------------------
   Buttons
   --------------------------------------------------------------------------- */
.wp-element-button, .wp-block-button__link, .wc-block-components-button, .button, button.wc-block-components-button {
	border-radius: var(--kente-radius);
	font-weight: 600;
	line-height: 1.25;
	min-height: 40px;
	letter-spacing: .01em;
}
.is-style-kente-outline .wp-block-button__link, .is-style-outline .wp-block-button__link { background: transparent; color: var(--kente-blue); border: 1px solid var(--kente-blue); }
.is-style-kente-go .wp-block-button__link { padding: 8px 12px; min-height: 36px; }
.kente-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 22px; border-radius: 4px; font-size: 15px; font-weight: 600; letter-spacing: .01em; text-decoration: none !important; transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease; }
.kente-btn:hover { transform: translateY(-1px); }
.kente-btn--silver { background: var(--kente-metal-light); color: var(--kente-text); box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 1px 2px rgba(0,0,0,.25); }
.kente-btn--ghost { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.45); }
.kente-btn--ghost:hover { border-color: #fff; background: rgba(255,255,255,.06); }
.kente-btn--dark { background: var(--kente-metal); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 1px 2px rgba(0,0,0,.3); }

/* ---------------------------------------------------------------------------
   Announcement / trust bar – 34px, graphite dark
   --------------------------------------------------------------------------- */
.kente-announcement { min-height: 31px; display: flex; align-items: center; }
.kente-announcement > * { width: 100%; }
.kente-trust { list-style: none; margin: 0 auto; padding: 0; display: flex; justify-content: center; gap: 36px; min-height: 31px; align-items: center; font-size: 12.5px; letter-spacing: .02em; color: #d9dce1; }
.kente-trust__item { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.kente-trust__item svg { color: var(--kente-silver); flex: 0 0 auto; }

/* ---------------------------------------------------------------------------
   Header
   --------------------------------------------------------------------------- */
.kente-header { position: relative; z-index: 50; border-bottom: 1px solid var(--kente-border); }
.kente-header > .wp-block-group { max-width: var(--kente-header-inner); margin-left: auto; margin-right: auto; box-sizing: content-box; }
.kente-header__utility { min-height: 56px; border-bottom: 1px solid var(--kente-border); }
.kente-header__utility-nav .wp-block-navigation-item__content { color: var(--kente-text); font-size: 14px; font-weight: 500; padding: 0; }
.kente-header__utility-nav .wp-block-navigation-item:first-child .wp-block-navigation-item__content { font-weight: 700; }
.kente-country { display: inline-flex; align-items: center; gap: 6px; margin-left: 28px; height: 32px; padding: 0 10px; border: 1px solid var(--kente-border); border-radius: 3px; background: #fff; color: var(--kente-text); font-size: 14px; font-weight: 600; cursor: pointer; }
.kente-country__flag { font-size: 16px; line-height: 1; }
.kente-header__main { min-height: 48px; padding-top: 7px; padding-bottom: 7px; } /* 64px incl. padding (content-box) */
.kente-header__logo img, .kente-header__logo .kente-logo__svg { width: 218px; height: 56px; display: block; }
.kente-logo__link { display: inline-flex; align-items: center; }
.kente-logo__svg { display: block; height: 56px; width: auto; }
.kente-header__logo { flex: 0 0 auto; }
.kente-header__search { flex: 1 1 auto; max-width: 759px; margin: 0; }
.kente-header__search .wp-block-search__inside-wrapper { border: 1px solid var(--kente-blue) !important; border-radius: 3px; height: 40px; padding: 0 2px 0 0; background: #fff; transition: box-shadow .15s; }
.kente-header__search .wp-block-search__inside-wrapper:focus-within { box-shadow: 0 0 0 2px rgba(47,51,58,.18); }
.kente-header__search .wp-block-search__input { border: 0 !important; height: 38px; font-size: 15px; padding: 0 14px; color: var(--kente-text); background: transparent; }
.kente-header__search .wp-block-search__input::placeholder { color: var(--kente-muted); opacity: 1; }
.kente-header__search .wp-block-search__button { background: transparent; color: var(--kente-blue); border: 0; padding: 0 10px; min-height: 0; height: 38px; }
.kente-header__search .wp-block-search__button svg { width: 22px; height: 22px; fill: currentColor; }
.kente-header__account { gap: 4px !important; white-space: nowrap; }
.kente-header__account-nav .wp-block-navigation-item__content { color: var(--kente-text); font-size: 14px; font-weight: 500; padding: 8px 12px; }
.kente-header__signin { color: var(--kente-text); font-size: 14px; font-weight: 500; padding: 8px 12px; display: inline-flex; align-items: center; }
.kente-header__signin a { color: var(--kente-text) !important; display: inline-flex; align-items: center; gap: 6px; }
.kente-header__signin .wc-block-customer-account__account-icon { width: 20px; height: 20px; }
.kente-header__signin .label { font-size: 0; }
.kente-header__signin .label::before { content: "Account"; font-size: 14px; }
.kente-header__orders { border-left: 1px solid var(--kente-border); }
.kente-header__cart { padding: 0 0 0 12px; }
.kente-header__cart .wc-block-mini-cart__button { color: var(--kente-text); font-size: 14px; font-weight: 500; padding: 0; min-height: 30px; }
.kente-header__cart .wc-block-mini-cart__quantity-badge { color: var(--kente-text); }
.kente-header__cart .wc-block-mini-cart__badge { background: var(--kente-blue); color: #fff; border: 0; }
.kente-header__cart .wc-block-mini-cart__button::after { content: "Cart"; margin-left: 6px; }
.kente-header__cart .wc-block-mini-cart__icon { width: 22px; height: 22px; }

/* department bar 46px, brushed metal */
.kente-header__shopbar { min-height: 44px; position: relative; }
.kente-header__shopbar::after { content: ""; position: absolute; inset: 0; background: var(--kente-sheen); pointer-events: none; }
.kente-header__shopbar > * { position: relative; z-index: 1; }
.kente-shop-toggle { display: inline-flex; align-items: center; gap: 10px; background: transparent; color: #fff; border: 0; font-size: 15px; font-weight: 700; letter-spacing: .01em; height: 44px; padding: 10px 18px 10px 0; cursor: pointer; }
.kente-shop-toggle--mobile { display: none; }
.kente-burger { position: relative; width: 18px; height: 2px; background: currentColor; display: inline-block; border-radius: 1px; }
.kente-burger::before, .kente-burger::after { content: ""; position: absolute; left: 0; width: 18px; height: 2px; background: currentColor; border-radius: 1px; }
.kente-burger::before { top: -6px; } .kente-burger::after { top: 6px; }
.kente-departments { list-style: none; margin: 0 0 0 8px; padding: 0; display: flex; gap: 2px; flex: 1 1 auto; min-width: 0; flex-wrap: wrap; max-height: 44px; overflow: hidden; }
.kente-shop-toggle { flex: 0 0 auto; white-space: nowrap; }
.kente-departments a { display: inline-block; color: #fff !important; font-size: 14.5px; font-weight: 500; padding: 11px 12px; line-height: 22px; white-space: nowrap; border-radius: 3px; text-decoration: none !important; }
.kente-departments a:hover { background: rgba(255,255,255,.1); }
.kente-departments__deals a { color: #e9d6b8 !important; font-weight: 700; }
.kente-header__shopbar .wp-block-shortcode, .kente-header__shopbar p { margin: 0; flex: 1 1 auto; min-width: 0; }

/* Shop mega menu */
.kente-shop-menu { position: absolute; left: 0; right: 0; top: 100%; z-index: 60; background: #fff; box-shadow: 0 24px 48px -16px rgba(15, 17, 20, .35); border-top: 1px solid var(--kente-border); }
.kente-shop-menu[hidden] { display: none; }
.kente-shop-menu__panel { max-width: var(--kente-header-inner); margin: 0 auto; display: grid; grid-template-columns: 300px 1fr; min-height: 420px; }
.kente-shop-menu__roots { list-style: none; margin: 0; padding: 8px 0; background: var(--kente-surface); border-right: 1px solid var(--kente-border); max-height: 70vh; overflow: auto; }
.kente-shop-menu__roots a { display: flex; justify-content: space-between; align-items: center; padding: 10px 18px; color: var(--kente-text); font-size: 15px; text-decoration: none; }
.kente-shop-menu__roots a:hover, .kente-shop-menu__root.is-active a { background: #fff; color: var(--kente-text); font-weight: 700; box-shadow: inset 3px 0 0 var(--kente-blue); }
.kente-shop-menu__columns { padding: 20px 28px; max-height: 70vh; overflow: auto; }
.kente-shop-menu__group { display: none; }
.kente-shop-menu__group.is-active { display: block; }
.kente-shop-menu__shop-all { display: inline-block; font-weight: 700; margin-bottom: 14px; color: var(--kente-blue); }
.kente-shop-menu__lvl2 { list-style: none; margin: 0; padding: 0; columns: 3; column-gap: 32px; }
.kente-shop-menu__lvl2 > li { break-inside: avoid; margin-bottom: 16px; }
.kente-shop-menu__lvl2-link { font-weight: 700; color: var(--kente-text); }
.kente-shop-menu__lvl3 { list-style: none; margin: 4px 0 0; padding: 0; }
.kente-shop-menu__lvl3 a { color: var(--kente-muted); font-size: 14px; line-height: 24px; }
.kente-shop-menu__lvl3 a:hover { color: var(--kente-text); }

/* Location / service strip – 56px */
.kente-header > .wp-block-shortcode { max-width: none; margin: 0; }
.kente-location-strip { background: var(--kente-surface); border-top: 1px solid var(--kente-border); }
.kente-location-strip__inner { max-width: var(--kente-header-inner); margin: 0 auto; padding: 0 24px; min-height: 56px; display: flex; align-items: center; gap: 32px; font-size: 14px; }
.kente-location-strip__item { display: inline-flex; align-items: center; gap: 8px; color: var(--kente-text) !important; text-decoration: none !important; white-space: nowrap; }
.kente-location-strip__item:hover { text-decoration: underline !important; }
.kente-location-strip__item svg { color: var(--kente-blue); flex: 0 0 auto; }
.kente-location-strip__item strong { font-weight: 700; }
.kente-location-strip__spacer { flex: 1 1 auto; }

/* ---------------------------------------------------------------------------
   Homepage sections
   --------------------------------------------------------------------------- */
.kente-main { max-width: none; }
.kente-home > * { max-width: var(--kente-container); }
.kente-section__head { margin-bottom: 0; }
.kente-section__title { font-size: 24px; font-weight: 700; margin: 0; letter-spacing: -.01em; }
.kente-section__see-all { margin: 0; }
.kente-section__see-all a { display: inline-flex; align-items: center; gap: 6px; color: var(--kente-muted); font-size: 14px; font-weight: 500; }
.kente-section__see-all a:hover { color: var(--kente-text); }
.kente-section--silver { background: var(--kente-metal-light); border: 1px solid #e3e6ea; box-shadow: inset 0 1px 0 #fff; }

/* icon tiles – 262x110, 5 per view */
.kente-icon-tiles__track > li { width: calc((100% - 80px) / 5); }
.kente-icon-tiles__track img, .kente-brand-tiles__track img { display: block; width: 100%; height: auto; aspect-ratio: 262 / 110; object-fit: cover; border-radius: var(--kente-radius); border: 1px solid var(--kente-border); background: #fff; filter: grayscale(.15) saturate(.9); transition: filter .2s, box-shadow .2s; }
.kente-icon-tiles__track a:hover img, .kente-brand-tiles__track a:hover img { filter: none; box-shadow: var(--kente-card-shadow); }
.kente-icon-tiles__text { display: flex; align-items: center; gap: 14px; aspect-ratio: 262 / 110; padding: 0 20px; border-radius: var(--kente-radius); background: var(--kente-metal); color: #fff !important; text-decoration: none !important; box-shadow: inset 0 1px 0 rgba(255,255,255,.14); font-size: 17px; font-weight: 800; line-height: 1.15; letter-spacing: -.01em; text-transform: uppercase; }
.kente-icon-tiles__text svg { flex: 0 0 auto; color: var(--kente-silver); }
.kente-icon-tiles__text:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,.14), var(--kente-card-shadow); }

/* hero carousel – 1389x355 */
.kente-hero { border-radius: var(--kente-radius); overflow: hidden; }
.kente-hero__track { gap: 0; }
.kente-hero__track > li { width: 100%; }
.kente-hero__track img { display: block; width: 100%; height: auto; aspect-ratio: 1389 / 355; object-fit: cover; }
.kente-hero .kente-carousel__arrow { width: 44px; height: 44px; left: 12px; background: rgba(255,255,255,.92); }
.kente-hero .kente-carousel__arrow--next { left: auto; right: 12px; }
.kente-hero .kente-carousel__dots { position: absolute; left: 0; right: 0; bottom: 10px; margin: 0; z-index: 2; }
.kente-hero .kente-carousel__dots button { width: 10px; height: 10px; background: rgba(255,255,255,.7); border-color: rgba(0,0,0,.35); }
.kente-hero .kente-carousel__dots button.is-active { background: var(--kente-text); border-color: var(--kente-text); }

/* full-width banners – 1393x224 / inset 1297x208 */
.kente-banner { display: block; border-radius: var(--kente-radius); overflow: hidden; }
.kente-banner img { display: block; width: 100%; height: auto; }
.kente-home > .wp-block-shortcode { margin: 0; }

/* savings strip (mist) → Top Deals: 10 ranked cards */
.kente-savings-strip { border-top: 1px solid var(--kente-border); border-bottom: 1px solid var(--kente-border); }
.kente-savings-strip .kente-banner--inset { box-shadow: var(--kente-card-shadow); }
.kente-top-deals__head { align-items: flex-end !important; }
.kente-top-deals__title .kente-section__title { display: inline-flex; align-items: center; gap: 12px; }
.kente-top-deals__title .kente-section__title::before { content: ""; width: 4px; height: 24px; border-radius: 2px; background: linear-gradient(180deg, #d9c9a3, var(--kente-gold)); }
.kente-top-deals__sub { margin: 0; font-size: 13px; color: var(--kente-muted); }
.kente-top-deals__grid .wc-block-product-template { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; counter-reset: kente-rank; }
.kente-top-deals__grid .wc-block-product-template > li { margin: 0 !important; width: auto; max-width: none; counter-increment: kente-rank; position: relative; background: #fff; border: 1px solid var(--kente-border); border-radius: var(--kente-card-radius); padding: 14px 14px 16px; transition: box-shadow .2s, transform .2s, border-color .2s; }
.kente-top-deals__grid .wc-block-product-template > li:hover { box-shadow: 0 12px 28px -14px rgba(15,17,20,.35), var(--kente-card-shadow); transform: translateY(-2px); border-color: var(--kente-silver); }
.kente-top-deals__grid .wc-block-product-template > li::before { content: counter(kente-rank); position: absolute; top: 10px; left: 10px; z-index: 2; min-width: 26px; height: 26px; padding: 0 8px; border-radius: 13px; background: var(--kente-metal); color: #fff; font-size: 12px; font-weight: 800; line-height: 26px; text-align: center; box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 1px 2px rgba(0,0,0,.3); }
.kente-top-deals__grid .wc-block-product-template > li:nth-child(-n+3)::before { background: linear-gradient(135deg, #d4bf8f 0%, var(--kente-gold) 55%, #8f7446 100%); color: #1b1d21; }
.kente-top-deals__grid .kente-tile { background: transparent; }
.kente-top-deals__grid .kente-tile__image { background: #fff; }
.kente-top-deals__grid .kente-tile__rating-count { font-weight: 700; color: var(--kente-text); }

/* product carousels: arrows + dots (added by theme.js) */
.kente-product-carousel.kente-carousel { padding-bottom: 2px; }
.kente-product-carousel .kente-carousel__arrow { top: 112px; transform: none; width: 34px; height: 34px; border-color: var(--kente-silver); }
.kente-product-carousel .kente-carousel__arrow--prev { left: -16px; }
.kente-product-carousel .kente-carousel__arrow--next { right: -16px; }
.kente-product-carousel .kente-carousel__dots { margin-top: 14px; }
.kente-after-off { margin: 2px 0 0; font-size: 12px; font-weight: 600; color: var(--kente-green); }
.kente-sponsored .kente-tile::after { content: "sponsored"; display: block; margin-top: 6px; font-size: 10px; letter-spacing: .02em; color: var(--kente-silver); text-align: right; }

/* Find Your Style: promo carousel + 2×2 category tiles + apparel row */
.kente-style__top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
.kente-style__promo { border-radius: var(--kente-radius); overflow: hidden; }
.kente-style__track { gap: 0; }
.kente-style__track > li { width: 100%; }
.kente-style__track > li > a > img { display: block; width: 100%; height: auto; aspect-ratio: 680 / 551; object-fit: cover; }
.kente-style__promo .kente-carousel__arrow { width: 36px; height: 36px; left: 12px; background: rgba(255,255,255,.92); }
.kente-style__promo .kente-carousel__arrow--next { left: auto; right: 12px; }
.kente-style__promo .kente-carousel__dots { position: absolute; left: 0; right: 0; bottom: 10px; margin: 0; z-index: 2; }
.kente-style__promo .kente-carousel__dots button { background: rgba(255,255,255,.75); border-color: rgba(0,0,0,.35); }
.kente-style__promo .kente-carousel__dots button.is-active { background: var(--kente-text); border-color: var(--kente-text); }
.kente-style__tiles { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.kente-style__tiles a { position: relative; display: block; aspect-ratio: 328 / 263.5; border-radius: var(--kente-radius); overflow: hidden; border: 1px solid var(--kente-border); background: var(--kente-metal-light); transition: box-shadow .2s; }
.kente-style__tiles a:hover { box-shadow: var(--kente-card-shadow); }
.kente-style__tiles img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; }
.kente-style__label { position: absolute; left: 50%; bottom: 12px; transform: translateX(-50%); min-width: 110px; padding: 6px 22px; border-radius: 999px; background: rgba(255,255,255,.96); border: 1px solid var(--kente-blue); color: var(--kente-text); font-size: 14px; font-weight: 600; text-align: center; white-space: nowrap; box-shadow: 0 2px 8px rgba(15,17,20,.12); }
.kente-style__tiles a:hover .kente-style__label { background: var(--kente-blue); color: #fff; }

/* brand tiles */
.kente-brand-tiles__track > li { width: calc((100% - 80px) / 5); }
.kente-brand-tiles__track img { object-fit: contain; filter: grayscale(1) contrast(1.05); }

/* two-up promo – 2 x 680x551 */
.kente-two-up__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.kente-two-up__grid a { display: block; border-radius: var(--kente-radius); overflow: hidden; transition: box-shadow .2s; }
.kente-two-up__grid a:hover { box-shadow: var(--kente-card-shadow); }
.kente-two-up__grid img { display: block; width: 100%; height: auto; aspect-ratio: 680 / 551; object-fit: cover; }
.kente-two-up__dept { position: relative; display: block; aspect-ratio: 680 / 551; background: var(--kente-metal-light); border: 1px solid var(--kente-border); color: var(--kente-text); text-decoration: none !important; }
.kente-two-up__media { position: absolute; inset: 0 0 96px; display: flex; align-items: center; justify-content: center; padding: 32px; }
.kente-two-up__media img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: contain; mix-blend-mode: multiply; }
.kente-two-up__caption { position: absolute; left: 0; right: 0; bottom: 0; min-height: 96px; padding: 20px 28px; display: flex; flex-direction: column; gap: 4px; background: var(--kente-metal); color: #fff; }
.kente-two-up__caption strong { font-size: 24px; font-weight: 800; letter-spacing: -.01em; }
.kente-two-up__caption span { font-size: 14px; color: #d9dce1; }

/* category tiles – 4 x 328x323 */
.kente-category-tiles__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.kente-category-tiles__grid a { display: block; border-radius: var(--kente-radius); overflow: hidden; border: 1px solid var(--kente-border); transition: box-shadow .2s; }
.kente-category-tiles__grid a:hover { box-shadow: var(--kente-card-shadow); }
.kente-category-tiles__grid img { display: block; width: 100%; height: auto; aspect-ratio: 328 / 323; object-fit: cover; }

/* generic carousel */
.kente-carousel { position: relative; }
.kente-carousel__track { list-style: none; margin: 0; padding: 0; display: flex; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -ms-overflow-style: none; }
.kente-carousel__track::-webkit-scrollbar { display: none; }
.kente-carousel__track > li { flex: 0 0 auto; scroll-snap-align: start; }
.kente-carousel__arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--kente-border); background: #fff; color: var(--kente-text); box-shadow: 0 2px 8px rgba(15,17,20,.15); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.kente-carousel__arrow--prev { left: -6px; } .kente-carousel__arrow--next { right: -6px; }
.kente-carousel__arrow[disabled] { opacity: .35; cursor: default; }
.kente-carousel__dots { display: flex; justify-content: center; gap: 10px; margin-top: 12px; min-height: 8px; }
.kente-carousel__dots button { width: 8px; height: 8px; border-radius: 50%; border: 1px solid var(--kente-text); background: #fff; padding: 0; cursor: pointer; }
.kente-carousel__dots button.is-active { background: var(--kente-text); }

/* ---------------------------------------------------------------------------
   Product tile
   --------------------------------------------------------------------------- */
.kente-tile { background: #fff; position: relative; display: flex; flex-direction: column; height: 100%; }
.kente-tile__image { margin: 0 0 10px; border-radius: 4px; overflow: hidden; background: #fff; }
.kente-tile__image img { width: 100%; aspect-ratio: 1; object-fit: contain; display: block; transition: transform .25s ease; }
.kente-tile:hover .kente-tile__image img { transform: scale(1.03); }
.kente-pills { display: flex; flex-wrap: wrap; gap: 4px 6px; margin: 0; min-height: 26px; font-size: 12px; }
.kente-pills a, .kente-pill { display: inline-flex; align-items: center; height: 22px; padding: 2px 9px; border-radius: 3px; background: var(--kente-blue); color: #fff !important; font-size: 11.5px; font-weight: 600; letter-spacing: .03em; line-height: 1; text-decoration: none !important; white-space: nowrap; }
.kente-pills a[href*="/sale/"], .kente-pill--red { background: var(--kente-red); }
.kente-pills a[href*="/new/"] { background: var(--kente-metal-light); color: var(--kente-text) !important; border: 1px solid var(--kente-border); }
.kente-pills a[href*="/fsa-eligible/"] { background: transparent; color: var(--kente-muted) !important; border: 1px solid var(--kente-border); }
.kente-tile__title { font-size: 14px; line-height: 21px; margin: 0; font-weight: 500; min-height: 42px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.kente-tile__title a { color: var(--kente-text); text-decoration: none; }
.kente-tile__title a:hover { text-decoration: underline; }
.kente-tile__rating { font-size: 12px; margin: 0; min-height: 18px; }
.kente-tile__rating-row { min-height: 18px; margin: 0; }
.kente-tile__rating-row .wc-block-components-product-rating-counter__container { margin: 0; }
.kente-tile__rating-count { margin: 0; line-height: 18px; color: var(--kente-muted); }
.kente-tile__rating-count a { color: inherit; text-decoration: none; }
.wc-block-components-product-rating__stars, .star-rating { color: var(--kente-gold) !important; }
.wc-block-components-product-rating__stars span::before, .star-rating span::before { color: var(--kente-gold); }
.wc-block-components-product-rating-counter, .wc-block-components-product-rating__reviews_count { color: var(--kente-muted); font-size: 12px; }
.kente-tile__price-label, .kente-pdp__price-label { margin: auto 0 0; font-size: 12px; color: var(--kente-muted); line-height: 1.2; }
.kente-pdp__price-label { font-size: 14px; }
.kente-tile__price { margin-top: 0; }
.kente-tile__price .wc-block-components-product-price, .kente-pdp__price .wc-block-components-product-price { font-size: 24px; font-weight: 700; color: var(--kente-text); line-height: 1.1; letter-spacing: -.01em; }
.kente-pdp__price .wc-block-components-product-price { font-size: 32px; }
.kente-price-sym, .kente-price-cents { font-size: .55em; vertical-align: top; position: relative; top: .25em; line-height: 1; font-weight: 600; }
.kente-price-dot { font-size: 0; }
.wc-block-components-product-price del { font-size: 12px; font-weight: 400; color: var(--kente-muted); display: block; }
.wc-block-components-product-price ins { text-decoration: none; }
.kente-savings { color: var(--kente-red); font-size: 13px; font-weight: 600; margin: 2px 0 0; }
.kente-tile__actions { margin-top: 10px; }
.kente-tile__button { flex: 1 1 auto; margin: 0; }
.kente-tile__button .wp-block-button__link, .kente-tile__button .wc-block-components-product-button__button { width: 100%; min-height: 38px; padding: 6px 12px; font-size: 14px; border-radius: 4px; background: var(--kente-metal); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.12); }
.kente-tile__button .wc-block-components-product-button__button:hover { background: var(--kente-blue-dark); }
.kente-wishlist { width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--kente-border); background: #fff; color: var(--kente-muted); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; flex: 0 0 auto; }
.kente-wishlist:hover, .kente-wishlist.is-saved { color: var(--kente-red); border-color: var(--kente-red); }

/* product carousels: 5 per view */
.kente-product-carousel .wc-block-product-template { display: flex !important; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 4px; }
.kente-product-carousel .wc-block-product-template::-webkit-scrollbar { display: none; }
.kente-product-carousel .wc-block-product-template > li { flex: 0 0 calc((100% - 96px) / 5); max-width: none; width: auto; scroll-snap-align: start; margin: 0 !important; }
.kente-section--silver .kente-tile { background: transparent; }
.kente-section--silver .kente-tile__image { background: #fff; }

/* ---------------------------------------------------------------------------
   Shop archive
   --------------------------------------------------------------------------- */
.kente-breadcrumb, .woocommerce-breadcrumb, .wc-block-breadcrumbs { font-size: 13px; color: var(--kente-muted); margin: 0; }
.kente-breadcrumb a, .woocommerce-breadcrumb a, .wc-block-breadcrumbs a { color: var(--kente-muted); }
.kente-breadcrumb a:hover, .woocommerce-breadcrumb a:hover { color: var(--kente-text); }
.kente-crumb-sep, .wc-block-breadcrumbs .delimiter { margin: 0 6px; }
.kente-breadcrumb p { margin: 0; }
.kente-subcat-tiles { list-style: none; margin: 0 0 8px; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 16px; }
.kente-subcat-tiles a { display: block; text-align: center; color: var(--kente-text); font-size: 14px; font-weight: 500; }
.kente-subcat-tiles img, .kente-subcat-tiles__placeholder { width: 100%; aspect-ratio: 262 / 162; object-fit: contain; border-radius: 6px; display: block; background: #fff; border: 1px solid var(--kente-border); padding: 10px; box-sizing: border-box; margin-bottom: 6px; }
.kente-subcat-tiles__placeholder { background: var(--kente-metal-light); }
.kente-subcat-tiles a:hover img { border-color: var(--kente-silver); }
.kente-shop__layout { gap: 40px; }
.kente-shop__sidebar { flex: 0 0 300px !important; }
.kente-shop__title { font-size: 28px; font-weight: 700; letter-spacing: -.01em; margin: 0 0 8px; padding-bottom: 16px; border-bottom: 1px solid var(--kente-border); }
.kente-shop__toolbar { padding: 8px 0 16px; }
.kente-shop__count, .woocommerce-result-count { font-size: 14px; color: var(--kente-muted); margin: 0; }
.kente-shop__sort { margin: 0; }
.kente-shop__sort select, .woocommerce-ordering select, .wc-block-catalog-sorting select { height: 40px; min-width: 260px; border: 1px solid var(--kente-border); border-radius: 4px; padding: 0 36px 0 12px; font-size: 14px; background: #fff; color: var(--kente-text); }
.kente-shop__sort label, .wc-block-catalog-sorting label { font-size: 12px; display: block; margin-bottom: 2px; color: var(--kente-muted); }
.kente-product-grid .wc-block-product-template { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 32px 30px; }
.kente-product-grid .wc-block-product-template > li { border-top: 1px solid var(--kente-border); padding-top: 16px; width: auto; max-width: none; margin: 0; }
.kente-shop__filter-toggle { display: none; }

/* sidebar facets */
.kente-shop-sidebar { font-size: 14px; }
.kente-shop-sidebar__head { padding-bottom: 8px; border-bottom: 1px solid var(--kente-border); }
.kente-shop-sidebar__head h2 { margin: 0; font-size: 18px; font-weight: 700; }
.kente-shop-sidebar__clear .wp-block-button__link { background: none; border: 0; color: var(--kente-muted); padding: 0; min-height: 0; font-size: 14px; }
.kente-facet { padding: 16px 0; border-bottom: 1px solid var(--kente-border); }
.kente-facet__title, .kente-facet .wp-block-heading { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 12px; display: flex; justify-content: space-between; align-items: center; color: var(--kente-text); }
.kente-facet__title::after { content: ""; width: 7px; height: 7px; border-right: 1.5px solid var(--kente-muted); border-bottom: 1.5px solid var(--kente-muted); transform: rotate(-135deg); margin-right: 4px; }
.kente-facet__parent { display: block; color: var(--kente-muted); text-decoration: underline; margin-bottom: 8px; }
.kente-facet__current { display: block; padding: 4px 0 4px 16px; color: var(--kente-text); font-weight: 700; }
.kente-facet__list { list-style: none; margin: 0; padding: 0 0 0 16px; }
.kente-facet__list li { padding: 4px 0; }
.kente-facet__list a { color: var(--kente-text); }
.kente-facet__count { color: var(--kente-muted); }
.kente-facet .wc-block-product-filter-checkbox-list__item, .wc-block-components-checkbox { font-size: 14px; }
.kente-filters .wc-block-product-filter--hidden { display: none; }
.kente-facet fieldset, .kente-facet .wc-block-product-filter-checkbox-list { border: 0; padding: 0; margin: 0; min-inline-size: 0; }
.kente-facet .wc-block-product-filter-checkbox-list legend { display: none; }
.kente-facet > .wp-block-heading, .kente-facet > h3 { margin: 0 0 12px; }
.kente-filters > .kente-facet { padding: 16px 0; border-bottom: 1px solid var(--kente-border); }
.kente-facet--active:not(.wc-block-product-filter--hidden) { display: block; }
.kente-facet .wc-block-product-filter-checkbox-list__list { list-style: none; margin: 0; padding: 0 0 0 16px; }
.kente-facet .wc-block-product-filter-checkbox-list__item { padding: 4px 0; }
.kente-facet .wc-block-product-filter-checkbox-list__label { display: flex; align-items: center; gap: 8px; color: var(--kente-text); }
.kente-facet .wc-block-product-filter-checkbox-list__input { width: 16px; height: 16px; border: 1px solid var(--kente-silver); border-radius: 3px; accent-color: var(--kente-blue); }
.kente-facet .wc-block-product-filter-checkbox-list__show-more { background: none; border: 0; color: var(--kente-muted); padding: 4px 0 0 16px; font-size: 14px; cursor: pointer; text-decoration: underline; }
.kente-facet .wc-block-product-filter-price-slider__range { --range-color: var(--kente-blue); }
.kente-facet .wc-block-product-filter-price-slider__content { padding: 0 8px; }
.kente-facet .wc-block-product-filter-price-slider__text { font-size: 14px; }
.kente-facet .wc-block-product-filter-price-slider__text input { border: 1px solid var(--kente-border); border-radius: 4px; }
.kente-facet .wc-block-product-filter-removable-chips__item { border: 1px solid var(--kente-border); border-radius: 999px; font-size: 13px; padding: 4px 10px; background: var(--kente-surface); }
.kente-facet .wc-block-product-filter-rating .wc-block-components-product-rating__stars { color: var(--kente-gold); }
.wc-block-components-checkbox .wc-block-components-checkbox__input { width: 16px; height: 16px; border: 1px solid var(--kente-silver); border-radius: 3px; }
.wc-block-components-checkbox .wc-block-components-checkbox__input:checked { background: var(--kente-blue); border-color: var(--kente-blue); }

/* pagination */
.kente-pagination { margin-top: 32px; gap: 8px; font-size: 14px; }
.kente-pagination .page-numbers { display: inline-flex; min-width: 36px; height: 36px; align-items: center; justify-content: center; border: 1px solid var(--kente-border); border-radius: 4px; color: var(--kente-text); text-decoration: none; padding: 0 8px; }
.kente-pagination .page-numbers.current { background: var(--kente-blue); color: #fff; border-color: var(--kente-blue); }

/* ---------------------------------------------------------------------------
   PDP
   --------------------------------------------------------------------------- */
.kente-pdp__layout { gap: 24px; align-items: flex-start !important; }
.kente-pdp__gallery { align-self: flex-start; }
.kente-pdp__summary { display: flex; flex-direction: column; gap: 16px; }
.kente-card, .is-style-kente-card { background: #fff; border: 1px solid var(--kente-border); border-radius: var(--kente-card-radius); box-shadow: var(--kente-card-shadow); }
/* Gallery: one large image on top, a short thumbnail strip under it.
   The block defaults to a side-by-side row where 33% thumbnails squeeze the
   main image down to a thumbnail and the column stretches into a blank gap. */
.kente-gallery { display: flex !important; flex-direction: column !important; align-items: stretch; gap: 10px; background: #fff; width: 100%; }
.kente-gallery__large,
.kente-gallery .wc-block-product-gallery-large-image { position: relative; width: 100% !important; max-width: 100% !important; flex: 0 0 auto !important; height: auto !important; }
.kente-gallery .wc-block-product-gallery-large-image__container { width: 100% !important; height: auto !important; aspect-ratio: 1; }
.kente-gallery .wc-block-product-gallery-large-image__wrapper { flex: 0 0 100% !important; width: 100% !important; min-width: 100% !important; height: 100% !important; }
.kente-gallery__large img,
.kente-gallery .wc-block-product-gallery-large-image__image { width: 100% !important; height: 100% !important; max-height: none; aspect-ratio: auto; object-fit: contain; border-radius: 8px; }
.kente-gallery__badge { position: absolute; top: 12px; left: 12px; z-index: 2; width: auto !important; margin: 0 !important; }
.kente-gallery__badge .wc-block-components-product-sale-badge { display: inline-flex; align-items: center; height: 22px; padding: 2px 9px; margin: 0; border: 0; border-radius: 3px; background: var(--kente-red); color: #fff; font-size: 11.5px; font-weight: 600; letter-spacing: .03em; line-height: 1; text-transform: none; }
.kente-gallery__thumbs,
.kente-gallery .wc-block-product-gallery-thumbnails { width: 100% !important; max-width: 100% !important; height: auto !important; flex: 0 0 auto !important; margin-top: 0; }
.kente-gallery .wc-block-product-gallery-thumbnails__scrollable { display: flex; flex-direction: row; align-items: center; gap: 8px; width: 100%; height: auto !important; overflow-x: auto; }
.kente-gallery__thumbs .wc-block-product-gallery-thumbnails__thumbnail,
.kente-gallery .wc-block-product-gallery-thumbnails__thumbnail { width: 72px !important; height: 72px !important; min-width: 72px !important; flex: 0 0 72px !important; border: 1px solid transparent; border-radius: 6px; overflow: hidden; }
.kente-gallery .wc-block-product-gallery-thumbnails__thumbnail__image { width: 100% !important; height: 100% !important; object-fit: contain; }
.kente-gallery__thumbs .wc-block-product-gallery-thumbnails__thumbnail.wc-block-product-gallery-thumbnails__thumbnail--is-active { border-color: var(--kente-blue); }
.kente-share { background: none; border: 0; color: var(--kente-muted); cursor: pointer; }
.kente-brand-link, .kente-brand-link a { font-size: 13px; color: var(--kente-muted); text-decoration: underline; text-underline-offset: 3px; }
.kente-pdp__brand { margin: 0; }
.kente-pdp__title { font-size: 30px; font-weight: 700; letter-spacing: -.015em; margin: 4px 0; }
.kente-item-number { font-size: 12px; color: var(--kente-muted); margin: 0; }
.kente-pdp__rating { font-size: 14px; }
.kente-pdp__rating .wc-block-components-product-rating__stars { font-size: 16px; }
.kente-stock { font-size: 14px; font-weight: 700; color: var(--kente-green); margin: 0; }
.kente-stock .wc-block-components-product-stock-indicator--out-of-stock, .kente-stock.wc-block-components-product-stock-indicator--out-of-stock { color: var(--kente-red); }
.kente-compare { display: inline-flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 14px; color: var(--kente-text); cursor: pointer; }
.kente-compare__box { width: 18px; height: 18px; accent-color: var(--kente-blue); margin: 0; }
.kente-fulfillment { display: flex; gap: 12px; flex-wrap: wrap; }
.kente-fulfillment__option { width: 88px; height: 88px; display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 6px; border: 1px solid var(--kente-border); border-radius: var(--kente-card-radius); background: #fff; color: var(--kente-text); font-size: 12px; font-weight: 600; line-height: 1.2; text-align: center; cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.kente-fulfillment__option svg { color: var(--kente-blue); }
.kente-fulfillment__option:hover { border-color: var(--kente-silver); }
.kente-fulfillment__option.is-selected { border: 2px solid var(--kente-blue); box-shadow: inset 0 0 0 1px #fff; }
.kente-fulfillment__note { margin: 10px 0 0; font-size: 14px; color: var(--kente-text); }
.kente-fulfillment__link { margin: 2px 0 0; font-size: 13px; }
.kente-fulfillment__link a { color: var(--kente-muted); text-decoration: underline; text-underline-offset: 3px; }
.kente-card--fulfillment .wp-block-shortcode { margin: 0; }
.kente-atc__row { width: 100%; }
.kente-qty, .kente-qty .quantity { margin: 0; }
.kente-qty .wc-block-components-quantity-selector, .kente-qty .quantity { height: 44px; border: 1px solid var(--kente-border); border-radius: 4px; display: inline-flex; align-items: center; }
.kente-qty input { width: 44px; height: 42px; border: 0; text-align: center; font-size: 14px; }
.kente-qty button { width: 34px; height: 42px; border: 0; background: #fff; color: var(--kente-text); font-size: 18px; cursor: pointer; }
.kente-atc__button, .kente-atc .wc-block-components-product-button { flex: 1 1 auto; margin: 0; }
.kente-atc__button .wp-block-button__link, .kente-atc__button button, .kente-atc .single_add_to_cart_button, .kente-atc .wc-block-components-product-button__button { width: 100%; min-height: 44px; font-size: 16px; font-weight: 600; border-radius: 4px; background: var(--kente-metal); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.12); }
.kente-atc .wc-block-components-product-button__button:hover { background: var(--kente-blue-dark); }
.kente-atc .wc-block-components-product-button__button[disabled], .kente-atc.is-invalid .wc-block-components-product-button__button { background: var(--kente-silver); color: #fff; cursor: not-allowed; box-shadow: none; }
.kente-atc > .wp-block-group { align-items: center; }
.kente-atc .wc-block-components-product-button { display: block; }
.kente-atc .wc-block-components-product-button .wc-block-components-product-button__button { display: block; width: 100%; }
.kente-wishlist--pdp { width: 44px; height: 44px; border-radius: 4px; }
.kente-variations .wc-block-add-to-cart-with-options-variation-selector-attribute, .kente-variations table.variations { margin-bottom: 12px; }
.kente-variations label, .kente-variations .label { font-size: 14px; font-weight: 700; display: block; margin-bottom: 6px; }
.kente-variations select { height: 44px; border: 1px solid var(--kente-border); border-radius: 4px; min-width: 200px; padding: 0 32px 0 12px; font-size: 14px; }
.kente-variations .wc-block-add-to-cart-with-options-variation-selector-attribute-options__option, .kente-variations .wc-block-components-pill { border: 1px solid var(--kente-border); border-radius: 4px; min-height: 40px; padding: 8px 14px; font-size: 14px; background: #fff; }
.kente-variations .wc-block-add-to-cart-with-options-variation-selector-attribute-options__option--selected, .kente-variations .wc-block-components-pill--selected { border: 2px solid var(--kente-blue); font-weight: 700; }
.kente-pdp__features ul { margin: 0; padding-left: 20px; font-size: 14px; }
.kente-pdp__features p { margin: 0 0 8px; font-size: 14px; }
.kente-policy-summary h3 { font-size: 14px; margin: 12px 0 6px; }
.kente-policy-summary ul { margin: 0 0 8px; padding-left: 20px; }

/* accordions */
.kente-accordions { margin-top: 24px; }
.kente-accordions .wc-block-product-details__accordion, .kente-accordions .wc-block-accordion-item, .kente-accordions .wc-tabs-wrapper { border-top: 1px solid var(--kente-border); }
.kente-accordions .wc-block-accordion-header, .kente-accordions .wc-tabs li { border-bottom: 1px solid var(--kente-border); }
.kente-accordions .wc-block-accordion-header__toggle, .kente-accordions .wc-tabs li a { min-height: 56px; font-size: 16px; font-weight: 700; color: var(--kente-text); padding: 16px 0; }
.kente-accordions .wc-tabs { display: flex; gap: 32px; border-bottom: 1px solid var(--kente-border); padding: 0; list-style: none; margin: 0; }
.kente-accordions .wc-tabs li.active a { color: var(--kente-text); box-shadow: inset 0 -3px 0 var(--kente-blue); }
.kente-accordions .woocommerce-Tabs-panel { padding: 16px 0; font-size: 14px; line-height: 1.6; }
.kente-accordions .woocommerce-Tabs-panel h2:first-child { display: none; }
.woocommerce-noreviews, #reviews .comment-reply-title, #reviews #reply-title { display: none !important; }
#review_form_wrapper { margin-top: 0; }
.kente-accordions table.shop_attributes th { text-align: left; font-weight: 700; width: 30%; padding: 8px 0; border-bottom: 1px solid var(--kente-border); }
.kente-accordions table.shop_attributes td { padding: 8px 0; border-bottom: 1px solid var(--kente-border); }

/* ---------------------------------------------------------------------------
   Cart / Checkout / Mini-cart
   --------------------------------------------------------------------------- */
.kente-cart .wc-block-cart__submit-button, .kente-checkout .wc-block-components-checkout-place-order-button, .wc-block-mini-cart__footer-actions .wc-block-components-button { background: var(--kente-metal); border-radius: 4px; }
.kente-cart .wc-block-components-sidebar, .kente-checkout .wc-block-components-sidebar { border-radius: 6px; border: 1px solid var(--kente-border); box-shadow: var(--kente-card-shadow); padding: 16px; }
.kente-cart .wc-block-components-product-name { color: var(--kente-text); font-size: 14px; }
.kente-cart .wc-block-components-product-price { font-weight: 700; }
.wc-block-mini-cart__drawer { font-family: inherit; }
.kente-mini-cart .wc-block-mini-cart__title { font-size: 20px; font-weight: 700; }
.kente-mini-cart .wc-block-mini-cart__footer-cart { border: 1px solid var(--kente-blue); color: var(--kente-blue); border-radius: 4px; }
.kente-mini-cart .wc-block-mini-cart__footer-checkout { background: var(--kente-metal); border-radius: 4px; }

/* ---------------------------------------------------------------------------
   Footer – pearl: help row / 4 link columns / legal links / social / ©
   --------------------------------------------------------------------------- */
.kente-footer { font-size: 13.5px; color: var(--kente-text); border-top: 1px solid var(--kente-border); }
.kente-footer > * + * { margin-top: 24px; }
.kente-footer h2, .kente-footer h3 { margin: 0 0 12px; color: var(--kente-text); }
.kente-footer__heading { font-size: 16px; font-weight: 700; }
.kente-footer__heading--sub { font-size: 13px; margin-top: 16px; letter-spacing: .04em; text-transform: uppercase; color: var(--kente-muted); }
.kente-footer a { color: var(--kente-text); text-decoration: none; }
.kente-footer a:hover { text-decoration: underline; }
.kente-footer .wp-block-shortcode { margin: 0; }
.kente-footer__help { margin-top: 0; }
.kente-footer__gethelp { margin: 0 0 10px; font-size: 14px; }
.kente-footer__gethelp a { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; }
.kente-footer__gethelp svg { color: var(--kente-blue); }
.kente-contact-card { font-style: normal; display: flex; flex-direction: column; gap: 3px; line-height: 1.5; font-size: 13px; }
.kente-contact-card__title { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--kente-muted); margin-bottom: 4px; }
.kente-contact-card__name { font-weight: 700; }
.kente-contact-card__hours { color: var(--kente-muted); }
.kente-footer__search { display: flex; height: 40px; max-width: 360px; }
.kente-footer__search input { flex: 1 1 auto; min-width: 0; border: 1px solid var(--kente-blue); border-right: 0; border-radius: 3px 0 0 3px; padding: 0 12px; font-size: 14px; background: #fff; }
.kente-footer__search button { width: 44px; border: 0; border-radius: 0 3px 3px 0; background: var(--kente-metal); color: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.kente-email-form { display: flex; height: 40px; max-width: 360px; }
.kente-email-form input { flex: 1 1 auto; min-width: 0; border: 1px solid var(--kente-blue); border-right: 0; border-radius: 3px 0 0 3px; padding: 0 12px; font-size: 14px; background: #fff; }
.kente-email-form__go { background: var(--kente-metal); color: #fff; border: 0; border-radius: 0 3px 3px 0; padding: 0 18px; font-size: 14px; font-weight: 700; cursor: pointer; }
.kente-email-form__note, .kente-email-form__thanks { font-size: 12px; color: var(--kente-muted); margin: 8px 0 0; }
.kente-footer__rule { margin: 24px 0 !important; border: 0; height: 1px; background: var(--kente-border); opacity: 1; }
.kente-footer__cols { margin-top: 0; }
.is-style-kente-footer-links .wp-block-navigation-item__content { font-size: 13.5px; line-height: 22px; color: var(--kente-text); padding: 0; }
.is-style-kente-footer-links .wp-block-navigation__container { gap: 4px; }
.kente-footer__legal-links { justify-content: center; margin-top: 0; }
.kente-footer__legal-links .wp-block-navigation-item__content { font-size: 12px; color: var(--kente-text); padding: 0; }
.kente-social { list-style: none; margin: 16px 0 0; padding: 0; display: flex; justify-content: center; gap: 18px; }
.kente-social a { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--kente-border); background: #fff; color: var(--kente-blue); transition: background-color .15s, color .15s; }
.kente-social a:hover { background: var(--kente-blue); color: #fff; text-decoration: none; }
.kente-footer__copyright { font-size: 12px; margin: 16px 0 0; color: var(--kente-muted); }
.kente-payments { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.kente-payments__item { display: inline-flex; align-items: center; height: 26px; padding: 0 10px; border: 1px solid var(--kente-border); border-radius: 4px; background: #fff; font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--kente-muted); }

.wp-block-navigation-item__content:hover { text-decoration: underline; }

/* ---------------------------------------------------------------------------
   Pages / policy pages
   --------------------------------------------------------------------------- */
.kente-page__title { font-size: 28px; font-weight: 700; margin: 0; }
.kente-page .entry-content, .kente-single .entry-content { font-size: 16px; line-height: 1.6; }
.kente-policy__title { margin: 8px 0 0; }
.kente-policy__meta { gap: 6px; margin-bottom: 8px; }
.kente-policy__meta p { margin: 0; }
.kente-policy__content { font-size: 16px; line-height: 1.7; }
.kente-policy__content h2 { font-size: 20px; margin: 32px 0 8px; }
.kente-policy__content h3 { font-size: 17px; margin: 24px 0 6px; }
.kente-policy__content ul { padding-left: 22px; }
.kente-policy__content li { margin-bottom: 6px; }
.kente-policy__content a { color: var(--kente-text); text-decoration: underline; text-underline-offset: 3px; }
.kente-policy__content .kente-contact-card { padding: 16px 20px; border: 1px solid var(--kente-border); border-radius: 6px; background: var(--kente-surface); }

/* ---------------------------------------------------------------------------
   Responsive
   --------------------------------------------------------------------------- */
@media (max-width: 1024px) {
	.kente-trust { gap: 20px; }
	.kente-trust__item:nth-child(4) { display: none; }
	.kente-departments a { padding: 12px 8px; font-size: 14px; }
	.kente-product-carousel .wc-block-product-template > li { flex-basis: calc((100% - 48px) / 3); }
	.kente-product-grid .wc-block-product-template { grid-template-columns: repeat(3, 1fr) !important; }
	.kente-header__utility-nav .wp-block-navigation-item:nth-child(n+5) { display: none; }
	.kente-icon-tiles__track > li, .kente-brand-tiles__track > li { width: calc((100% - 40px) / 3); }
	.kente-top-deals__grid .wc-block-product-template { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
	.kente-style__tiles { gap: 16px; }
	.kente-product-carousel .kente-carousel__arrow--prev { left: -8px; }
	.kente-product-carousel .kente-carousel__arrow--next { right: -8px; }
	.kente-location-strip__inner { gap: 20px; font-size: 13px; }
	.kente-shop__sidebar { flex: 0 0 260px !important; }
	.kente-shop-menu__panel { grid-template-columns: 240px 1fr; }
	.kente-shop-menu__lvl2 { columns: 2; }
}

@media (max-width: 768px) {
	.kente-trust { gap: 16px; font-size: 12px; }
	.kente-trust__item:nth-child(n+3) { display: none; }
	.kente-header__main { flex-wrap: wrap; padding: 10px 16px; gap: 8px 12px !important; min-height: 0; }
	.kente-shop-toggle--mobile { display: inline-flex; order: 1; height: 40px; width: 40px; padding: 0; justify-content: center; color: var(--kente-text); border: 1px solid var(--kente-border); border-radius: 4px; }
	.kente-header__logo { order: 2; flex: 1 1 auto; }
	.kente-logo__svg { height: 36px; }
	.kente-header__account { order: 3; }
	.kente-header__help, .kente-header__orders { display: none !important; }
	.kente-header__signin { font-size: 11px; padding: 4px 8px; }
	.kente-header__signin a { flex-direction: column; gap: 2px; }
	.kente-header__signin .label::before { content: "Account"; font-size: 11px; }
	.kente-header__cart .wc-block-mini-cart__button::after { content: "Cart"; font-size: 11px; display: block; margin: 0; }
	.kente-header__cart .wc-block-mini-cart__button { flex-direction: column; font-size: 11px; }
	.kente-header__search { order: 4; flex: 1 1 100%; max-width: none; width: 100% !important; }
	.kente-header__search .wp-block-search__inside-wrapper { width: 100% !important; max-width: 100%; }
	.kente-header__shopbar { display: none !important; }
	.kente-shop-menu { position: fixed; inset: 0; top: 0; overflow: auto; }
	.kente-shop-menu__panel { grid-template-columns: 1fr; min-height: 100vh; }
	.kente-shop-menu__roots { max-height: none; border-right: 0; }
	.kente-shop-menu__columns { display: none; }
	.kente-shop-menu__root.is-open + .kente-shop-menu__columns { display: block; }

	.has-global-padding { padding-left: 8px; padding-right: 8px; }
	.kente-section__title { font-size: 20px; }
	.kente-header__utility { display: none !important; }
	.kente-header__logo img, .kente-header__logo .kente-logo__svg { width: 156px; height: 40px; }
	.kente-location-strip__inner { padding: 8px 16px; gap: 8px 16px; flex-wrap: wrap; min-height: 0; }
	.kente-location-strip__item:nth-child(2), .kente-location-strip__spacer { display: none; }
	.kente-icon-tiles__track, .kente-brand-tiles__track { gap: 10px; }
	.kente-icon-tiles__track > li, .kente-brand-tiles__track > li { width: calc((100% - 10px) / 2); }
	.kente-hero .kente-carousel__arrow { display: none; }
	.kente-two-up__grid { grid-template-columns: 1fr; gap: 12px; }
	.kente-style__top { grid-template-columns: 1fr; gap: 12px; }
	.kente-style__tiles { gap: 12px; }
	.kente-style__label { font-size: 13px; padding: 5px 16px; min-width: 0; }
	.kente-top-deals__grid .wc-block-product-template { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.kente-top-deals__grid .wc-block-product-template > li { padding: 10px; }
	.kente-top-deals__head { flex-wrap: wrap; }
	.kente-savings-strip { padding-left: 12px !important; padding-right: 12px !important; }
	.kente-carousel__arrow { display: none; }
	.kente-product-carousel .wc-block-product-template { gap: 12px; }
	.kente-product-carousel .wc-block-product-template > li { flex-basis: calc((100% - 12px) / 2); }
	.kente-tile__price .wc-block-components-product-price { font-size: 20px; }
	.kente-tile__button .wc-block-components-product-button__button { font-size: 13px; padding: 6px 8px; white-space: nowrap; }

	.kente-shop__layout { flex-direction: column; gap: 16px; }
	.kente-shop__sidebar { flex-basis: auto !important; width: 100%; }
	.kente-shop-sidebar { display: none !important; }
	.kente-shop-sidebar.is-open { display: block !important; }
	.kente-shop__toolbar { flex-wrap: wrap; gap: 8px; }
	.kente-shop__filter-toggle { display: inline-flex; min-height: 36px; padding: 6px 16px; font-size: 14px; }
	.kente-shop__sort select, .wc-block-catalog-sorting select { min-width: 0; width: 100%; }
	.kente-product-grid .wc-block-product-template { grid-template-columns: repeat(2, 1fr) !important; gap: 24px 12px; }

	.kente-pdp__layout { flex-direction: column; }
	.kente-pdp__gallery,
	.kente-pdp__summary { display: contents; }
	.kente-card--intro { order: 1; }
	.kente-pdp .kente-gallery { order: 2; width: 100%; }
	.kente-card--price { order: 3; }
	.kente-card--fulfillment { order: 4; }
	.kente-card--atc { order: 5; }
	.kente-card--features { order: 6; }
	.kente-pdp__title { font-size: 24px; }
	.kente-pdp__price .wc-block-components-product-price { font-size: 28px; }
	.kente-gallery__thumbs { display: none !important; }
	.kente-card--atc { position: sticky; bottom: 0; z-index: 5; }
	.kente-pdp__details,
	.kente-accordions { min-width: 0; max-width: 100%; }
	.kente-pdp__details .woocommerce-tabs ul.tabs {
		display: flex;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		overflow-y: hidden;
		gap: 4px;
		max-width: 100%;
		margin: 0;
		padding: 0 0 2px;
		-webkit-overflow-scrolling: touch;
	}
	.kente-pdp__details .woocommerce-tabs ul.tabs li { flex: 0 0 auto !important; }
	.kente-pdp__details .woocommerce-tabs ul.tabs li a { white-space: nowrap !important; padding: 12px 14px; }

	.kente-footer { padding-left: 16px !important; padding-right: 16px !important; }
	.kente-footer__help, .kente-footer__cols { flex-wrap: wrap; gap: 20px 16px !important; }
	.kente-footer__cols .wp-block-column { flex-basis: calc(50% - 8px) !important; }
	.kente-footer__legal-links .wp-block-navigation__container { gap: 8px 16px; }
	.kente-fulfillment__option { width: 80px; height: 80px; }
}

@media (prefers-reduced-motion: reduce) {
	.kente-carousel__track { scroll-behavior: auto; }
	.kente-btn, .kente-tile__image img, .kente-two-up__grid a, .kente-category-tiles__grid a { transition: none; }
}
