/*
Theme Name: Kenzu
Author: Nazmul Hasan Tusher
Author URI: https://exprii.com/
Description: Kenzu is a bright, friendly WooCommerce theme for shops that sell women's fashion, kids' clothes, toys and baby care. It has a sticky shop header with product search, a cart drawer and a category bar, rounded product cards that show the discount percentage, and a clean blog layout with a sidebar. Block patterns let you build a home page hero, trust badges, combo offers, an about page, a contact page, delivery and refund policies, and a single-product landing page in a few clicks. A landing page template hides the header and footer for ad campaigns. Colours and fonts are bundled, so nothing loads from outside your site.
Version: 1.1.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kenzu
Tags: e-commerce, blog, right-sidebar, one-column, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, block-patterns, threaded-comments, translation-ready, wide-blocks, theme-options

Kenzu WordPress Theme, (C) 2026 Nazmul Hasan Tusher.
Kenzu is distributed under the terms of the GNU GPL v2 or later.
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS
----------------------------------------------------------------
1. Tokens and base
2. Accessibility
3. Layout
4. Top bar and header
5. Navigation
6. Buttons and forms
7. Posts, pages and comments
8. Widgets and sidebar
9. Footer
10. Cart drawer
11. WordPress core classes
12. Block styles
13. WooCommerce
14. Landing page template
15. Responsive
16. Brand header and footer
17. Demo details
--------------------------------------------------------------*/

/* 1. Tokens and base
--------------------------------------------- */
:root {
	--kenzu-bg: #fffaf1;
	--kenzu-surface: #fff3dc;
	--kenzu-ink: #3b2615;
	--kenzu-muted: #7a6352;
	--kenzu-line: #f0e2c8;
	--kenzu-accent: #f2862b;
	--kenzu-accent-ink: #3b2615;
	--kenzu-accent-text: #b4540a;
	--kenzu-brand: #664228;
	--kenzu-brand-ink: #fff6e6;
	--kenzu-brand-muted: #e9d6bd;
	--kenzu-yellow: #f6cd5a;
	--kenzu-green: #b2cc72;
	--kenzu-mint: #e6efcd;
	--kenzu-mint-ink: #4f6b1d;
	--kenzu-sun: #fde8a6;
	--kenzu-sky: #fde0c4;
	--kenzu-lilac: #f3e6d6;
	--kenzu-old: #a8917e;
	--kenzu-shadow: 0 10px 30px rgba(59, 38, 21, 0.14);
	--kenzu-radius: 18px;
	--kenzu-display: "Fredoka", "Trebuchet MS", system-ui, sans-serif;
	--kenzu-body: "Nunito Sans", system-ui, -apple-system, "Segoe UI", "Noto Sans Bengali", sans-serif;
	--kenzu-gutter: max(16px, env(safe-area-inset-left, 0px));
	--kenzu-gutter-right: max(16px, env(safe-area-inset-right, 0px));
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	background: var(--kenzu-bg);
	color: var(--kenzu-ink);
	font-family: var(--kenzu-body);
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--kenzu-display);
	font-weight: 600;
	line-height: 1.2;
	margin: 1.4em 0 0.5em;
	text-wrap: balance;
}

h1 { font-size: clamp(1.9rem, 4vw, 2.75rem); font-weight: 700; }
h2 { font-size: clamp(1.5rem, 3vw, 2rem); }
h3 { font-size: 1.35rem; }
h4 { font-size: 1.15rem; }
h5,
h6 { font-size: 1rem; }

p {
	margin: 0 0 1.1em;
}

a {
	color: var(--kenzu-accent-text);
	text-underline-offset: 0.15em;
}

a:hover {
	color: var(--kenzu-ink);
}

img,
video,
iframe {
	max-width: 100%;
	height: auto;
}

hr {
	border: 0;
	border-top: 1px solid var(--kenzu-line);
	margin: 2em 0;
}

blockquote {
	margin: 1.5em 0;
	padding: 0.5em 0 0.5em 1.25em;
	border-left: 4px solid var(--kenzu-accent);
	font-size: 1.1em;
}

pre,
code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.9em;
}

pre {
	background: var(--kenzu-surface);
	border-radius: 12px;
	padding: 1em;
	overflow-x: auto;
}

table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 1.5em;
	font-variant-numeric: tabular-nums;
}

th,
td {
	text-align: left;
	padding: 10px 12px;
	border-bottom: 1px solid var(--kenzu-line);
}

th {
	font-weight: 800;
}

/* 2. Accessibility
--------------------------------------------- */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: var(--kenzu-bg);
	border-radius: 8px;
	box-shadow: var(--kenzu-shadow);
	clip: auto !important;
	clip-path: none;
	color: var(--kenzu-ink);
	display: block;
	font-size: 0.9rem;
	font-weight: 700;
	height: auto;
	left: 8px;
	line-height: normal;
	padding: 14px 22px;
	text-decoration: none;
	top: 8px;
	width: auto;
	z-index: 100000;
}

#primary[tabindex="-1"]:focus {
	outline: 0;
}

:focus-visible {
	outline: 3px solid var(--kenzu-accent);
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

/* 3. Layout
--------------------------------------------- */
.kenzu-wrap {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--kenzu-gutter);
	padding-right: var(--kenzu-gutter-right);
}

.site-main-wrap {
	padding-block: 28px 56px;
}

.has-sidebar .site-main-wrap {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 48px;
	align-items: start;
}

.site-main {
	min-width: 0;
}

/* 4. Top bar and header
--------------------------------------------- */
.kenzu-topbar {
	background: var(--kenzu-ink);
	color: var(--kenzu-bg);
	font-size: 13px;
	font-weight: 700;
}

.kenzu-topbar .kenzu-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 4px 16px;
	padding-block: 6px;
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: var(--kenzu-bg);
	border-bottom: 1px solid var(--kenzu-line);
}

.admin-bar .site-header {
	top: 32px;
}

.kenzu-header-bar {
	display: flex;
	align-items: center;
	gap: 16px;
	padding-block: 12px;
}

.site-branding {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
	min-width: 0;
}

.site-branding .custom-logo {
	display: block;
	max-height: 56px;
	width: auto;
}

.kenzu-logo-mark {
	width: 44px;
	height: 44px;
	border-radius: 14px 14px 14px 4px;
	background: var(--kenzu-accent);
	display: grid;
	place-items: center;
	flex-shrink: 0;
}

.kenzu-logo-mark svg {
	width: 34px;
	height: 34px;
}

.site-title {
	font-family: var(--kenzu-display);
	font-size: 1.45rem;
	font-weight: 700;
	line-height: 1;
	margin: 0;
	letter-spacing: -0.01em;
}

.site-title a {
	color: var(--kenzu-ink);
	text-decoration: none;
}

.site-description {
	margin: 3px 0 0;
	font-size: 11px;
	font-weight: 700;
	color: var(--kenzu-muted);
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1.2;
}

.kenzu-search {
	flex: 1;
	display: flex;
	min-width: 0;
	border: 2px solid var(--kenzu-line);
	border-radius: 999px;
	overflow: hidden;
	background: var(--kenzu-surface);
}

.kenzu-search:focus-within {
	border-color: var(--kenzu-accent);
}

.kenzu-search input[type="search"] {
	flex: 1;
	min-width: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	padding: 10px 16px;
	font: inherit;
	color: var(--kenzu-ink);
}

.kenzu-search input[type="search"]:focus {
	outline: none;
}

.kenzu-search button {
	border: 0;
	border-radius: 0;
	background: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
	padding: 0 18px;
	font-weight: 800;
}

.kenzu-header-actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

.kenzu-social {
	display: flex;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kenzu-social a {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: var(--kenzu-surface);
	border: 1px solid var(--kenzu-line);
	color: var(--kenzu-ink);
}

.kenzu-social a:hover {
	border-color: var(--kenzu-accent);
	color: var(--kenzu-accent-text);
}

.kenzu-social svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.kenzu-cart-toggle {
	display: flex;
	align-items: center;
	gap: 8px;
	border: 0;
	background: var(--kenzu-ink);
	color: var(--kenzu-bg);
	border-radius: 999px;
	padding: 9px 16px;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

.kenzu-cart-toggle:hover {
	color: var(--kenzu-bg);
	background: var(--kenzu-accent);
}

.kenzu-cart-toggle svg {
	width: 18px;
	height: 18px;
}

.kenzu-cart-toggle .amount {
	color: inherit;
}

.kenzu-cart-count {
	background: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
	border-radius: 999px;
	min-width: 22px;
	height: 22px;
	display: inline-grid;
	place-items: center;
	font-size: 12px;
	padding: 0 6px;
}

.kenzu-cart-toggle:hover .kenzu-cart-count {
	background: var(--kenzu-bg);
	color: var(--kenzu-accent-text);
}

/* 5. Navigation
--------------------------------------------- */
.kenzu-nav-row {
	display: flex;
	align-items: center;
	gap: 18px;
	padding-bottom: 12px;
}

.kenzu-menu-toggle {
	display: none;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.main-navigation > div > ul,
.main-navigation > ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
	color: var(--kenzu-ink);
	font-weight: 800;
	font-size: 15px;
	padding: 7px 10px;
	border-radius: 10px;
}

.main-navigation a:hover,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
	color: var(--kenzu-accent-text);
	background: var(--kenzu-surface);
}

.main-navigation .sub-menu {
	position: absolute;
	left: 0;
	top: 100%;
	min-width: 200px;
	background: var(--kenzu-bg);
	border: 1px solid var(--kenzu-line);
	border-radius: 14px;
	box-shadow: var(--kenzu-shadow);
	padding: 6px;
	z-index: 60;
	display: none;
}

.main-navigation li:hover > .sub-menu,
.main-navigation li:focus-within > .sub-menu {
	display: block;
}

.main-navigation .sub-menu .sub-menu {
	left: 100%;
	top: 0;
}

.kenzu-categories {
	display: flex;
	gap: 8px;
	overflow-x: auto;
	scrollbar-width: none;
	min-width: 0;
	margin: 0;
	padding: 2px;
	list-style: none;
}

.kenzu-categories::-webkit-scrollbar {
	display: none;
}

.kenzu-categories li {
	flex-shrink: 0;
}

.kenzu-categories a {
	display: block;
	border: 1px solid var(--kenzu-line);
	background: var(--kenzu-bg);
	color: var(--kenzu-ink);
	border-radius: 999px;
	padding: 6px 14px;
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
}

.kenzu-categories a:hover,
.kenzu-categories .current-menu-item > a,
.kenzu-categories .current-cat > a {
	background: var(--kenzu-accent);
	border-color: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
}

.kenzu-categories .sub-menu,
.kenzu-categories .children {
	display: none;
}

.footer-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 18px;
}

.footer-navigation a {
	color: var(--kenzu-muted);
	text-decoration: none;
	font-weight: 700;
}

.footer-navigation a:hover {
	color: var(--kenzu-accent-text);
}

.posts-navigation,
.post-navigation,
.pagination,
.comments-pagination {
	margin: 2em 0;
}

.nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 12px;
}

.pagination .nav-links {
	justify-content: center;
}

.page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 40px;
	height: 40px;
	padding: 0 12px;
	border: 1px solid var(--kenzu-line);
	border-radius: 999px;
	text-decoration: none;
	font-weight: 800;
	color: var(--kenzu-ink);
}

.page-numbers.current,
a.page-numbers:hover {
	background: var(--kenzu-accent);
	border-color: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
}

.post-navigation a {
	text-decoration: none;
	font-weight: 800;
	color: var(--kenzu-ink);
}

.post-navigation .meta-nav {
	display: block;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--kenzu-muted);
}

/* 6. Buttons and forms
--------------------------------------------- */
button,
input,
select,
textarea {
	font: inherit;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.kenzu-button {
	display: inline-block;
	border: 0;
	border-radius: 999px;
	padding: 12px 22px;
	background: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.kenzu-button:hover {
	background: var(--kenzu-ink);
	color: var(--kenzu-bg);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="date"],
select,
textarea {
	width: 100%;
	max-width: 100%;
	border: 1.5px solid var(--kenzu-line);
	border-radius: 10px;
	padding: 10px 12px;
	background: var(--kenzu-surface);
	color: var(--kenzu-ink);
}

input:focus,
select:focus,
textarea:focus {
	outline: none;
	border-color: var(--kenzu-accent);
}

label {
	font-weight: 700;
}

.search-form {
	display: flex;
	gap: 8px;
}

.search-form label {
	display: contents;
}

.search-form .search-field {
	flex: 1;
}

/* 7. Posts, pages and comments
--------------------------------------------- */
.page-header {
	margin-bottom: 28px;
}

.page-title,
.entry-title {
	margin-top: 0;
}

.entry-title a {
	color: var(--kenzu-ink);
	text-decoration: none;
}

.entry-title a:hover {
	color: var(--kenzu-accent-text);
}

.archive-description {
	color: var(--kenzu-muted);
}

.site-main > article,
.kenzu-post-card {
	margin-bottom: 40px;
}

.kenzu-post-card {
	padding-bottom: 32px;
	border-bottom: 1px solid var(--kenzu-line);
}

.post-thumbnail {
	display: block;
	margin-bottom: 18px;
}

.post-thumbnail img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 18px;
}

.entry-meta,
.entry-footer {
	font-size: 14px;
	color: var(--kenzu-muted);
}

.entry-meta {
	margin-bottom: 14px;
}

.entry-meta > span + span::before {
	content: "\00b7";
	margin: 0 8px;
}

.entry-meta a,
.entry-footer a {
	color: inherit;
}

.entry-footer {
	margin-top: 22px;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 16px;
}

.entry-content {
	max-width: 780px;
}

.kenzu-full-width .entry-content {
	max-width: none;
}

.entry-content > *:first-child {
	margin-top: 0;
}

.entry-summary p:last-child {
	margin-bottom: 0;
}

.more-link {
	font-weight: 800;
}

.page-links {
	clear: both;
	margin: 1.5em 0;
	font-weight: 800;
}

.comments-area {
	margin-top: 48px;
	padding-top: 32px;
	border-top: 1px solid var(--kenzu-line);
}

.comment-list {
	list-style: none;
	margin: 0 0 2em;
	padding: 0;
}

.comment-list .children {
	list-style: none;
	padding-left: 24px;
}

.comment-body {
	background: var(--kenzu-surface);
	border-radius: 16px;
	padding: 16px 18px;
	margin-bottom: 14px;
}

.comment-author .avatar {
	border-radius: 50%;
	vertical-align: middle;
	margin-right: 8px;
}

.comment-meta {
	font-size: 14px;
	margin-bottom: 8px;
}

.comment-metadata a {
	color: var(--kenzu-muted);
}

.reply a {
	font-weight: 800;
	font-size: 14px;
}

.comment-form p {
	margin-bottom: 14px;
}

.comment-form label {
	display: block;
	margin-bottom: 4px;
}

.comment-form .comment-form-cookies-consent label {
	display: inline;
	font-weight: 400;
}

/* 8. Widgets and sidebar
--------------------------------------------- */
.widget-area .widget {
	margin-bottom: 32px;
	font-size: 15px;
}

.widget-title {
	font-size: 1.15rem;
	margin: 0 0 12px;
}

.widget ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.widget li {
	padding: 4px 0;
}

.widget a {
	color: var(--kenzu-ink);
	text-decoration: none;
}

.widget a:hover {
	color: var(--kenzu-accent-text);
}

.widget select {
	max-width: 100%;
}

.sidebar .widget {
	background: var(--kenzu-surface);
	border-radius: var(--kenzu-radius);
	padding: 20px;
}

/* 9. Footer
--------------------------------------------- */
.site-footer {
	margin-top: 24px;
	background: var(--kenzu-surface);
	border-top: 1px solid var(--kenzu-line);
	color: var(--kenzu-muted);
}

.kenzu-footer-widgets {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
	gap: 28px;
	padding-block: 40px;
}

.kenzu-footer-widgets .widget-title {
	color: var(--kenzu-ink);
}

.kenzu-footer-widgets .widget a {
	color: var(--kenzu-muted);
}

.kenzu-footer-widgets .widget a:hover {
	color: var(--kenzu-accent-text);
}

.kenzu-footer-basic {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 16px;
	padding-block: 32px;
}

.kenzu-footer-basic .site-title {
	font-size: 1.2rem;
}

.kenzu-footer-basic p {
	margin: 6px 0 0;
}

.site-info {
	border-top: 1px solid var(--kenzu-line);
	padding-block: 14px;
	font-size: 13px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 6px 16px;
}

.site-info a {
	color: inherit;
}

/* 10. Cart drawer
--------------------------------------------- */
.kenzu-drawer-scrim {
	position: fixed;
	inset: 0;
	background: rgba(20, 12, 28, 0.45);
	z-index: 999;
}

.kenzu-drawer {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: min(420px, 100%);
	background: var(--kenzu-bg);
	z-index: 1000;
	display: flex;
	flex-direction: column;
	box-shadow: var(--kenzu-shadow);
	padding-top: env(safe-area-inset-top, 0px);
	padding-bottom: env(safe-area-inset-bottom, 0px);
	padding-right: env(safe-area-inset-right, 0px);
}

.admin-bar .kenzu-drawer {
	top: 32px;
}

.kenzu-drawer[hidden],
.kenzu-drawer-scrim[hidden] {
	display: none;
}

.kenzu-drawer-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 20px;
	border-bottom: 1px solid var(--kenzu-line);
}

.kenzu-drawer-head h2 {
	margin: 0;
	font-size: 1.4rem;
}

.kenzu-drawer-close {
	width: 38px;
	height: 38px;
	padding: 0;
	border-radius: 50%;
	background: var(--kenzu-surface);
	color: var(--kenzu-ink);
	font-size: 22px;
	line-height: 1;
}

.kenzu-drawer-body {
	flex: 1;
	overflow-y: auto;
	padding: 16px 20px;
}

.kenzu-drawer .woocommerce-mini-cart {
	list-style: none;
	margin: 0;
	padding: 0;
}

.kenzu-drawer .woocommerce-mini-cart-item {
	position: relative;
	padding: 12px 28px 12px 0;
	border-bottom: 1px solid var(--kenzu-line);
	font-size: 15px;
}

.kenzu-drawer .woocommerce-mini-cart-item a:not(.remove) {
	color: var(--kenzu-ink);
	font-weight: 800;
	text-decoration: none;
	display: block;
}

.kenzu-drawer .woocommerce-mini-cart-item img {
	float: left;
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 12px;
	margin-right: 12px;
}

.kenzu-drawer .woocommerce-mini-cart-item .quantity {
	color: var(--kenzu-muted);
	font-size: 14px;
}

.kenzu-drawer .woocommerce-mini-cart-item .remove {
	position: absolute;
	right: 0;
	top: 12px;
	color: var(--kenzu-muted) !important;
	text-decoration: none;
	font-size: 20px;
}

.kenzu-drawer .woocommerce-mini-cart-item .remove:hover {
	background: transparent !important;
	color: var(--kenzu-accent) !important;
}

.kenzu-drawer .woocommerce-mini-cart__total {
	display: flex;
	justify-content: space-between;
	font-size: 1.1rem;
	padding: 16px 0 8px;
	margin: 0;
}

.kenzu-drawer .woocommerce-mini-cart__buttons {
	display: grid;
	gap: 10px;
	margin: 8px 0 0;
}

.kenzu-drawer .woocommerce-mini-cart__buttons .button {
	text-align: center;
	margin: 0;
}

.kenzu-drawer .woocommerce-mini-cart__empty-message {
	padding: 32px 16px;
	text-align: center;
	color: var(--kenzu-muted);
	border: 2px dashed var(--kenzu-line);
	border-radius: var(--kenzu-radius);
}

body.kenzu-drawer-open {
	overflow: hidden;
}

/* 11. WordPress core classes
--------------------------------------------- */
.alignleft {
	float: left;
	margin: 0.3em 1.5em 1em 0;
}

.alignright {
	float: right;
	margin: 0.3em 0 1em 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption {
	max-width: 100%;
	margin-bottom: 1.5em;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption-text,
.gallery-caption,
figcaption {
	font-size: 14px;
	color: var(--kenzu-muted);
	text-align: center;
	margin-top: 6px;
}

.gallery {
	display: grid;
	grid-gap: 12px;
	margin-bottom: 1.5em;
}

.gallery-columns-2 { grid-template-columns: repeat(2, 1fr); }
.gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }
.gallery-columns-4 { grid-template-columns: repeat(4, 1fr); }
.gallery-columns-5 { grid-template-columns: repeat(5, 1fr); }
.gallery-columns-6 { grid-template-columns: repeat(6, 1fr); }

.gallery-item {
	margin: 0;
}

.sticky .entry-title::before {
	content: "\2605";
	color: var(--kenzu-accent-text);
	margin-right: 8px;
}

.bypostauthor > .comment-body {
	border-left: 4px solid var(--kenzu-accent);
}

/* 12. Block styles
--------------------------------------------- */
.entry-content .alignwide {
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
}

.entry-content .alignfull {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}

.has-sidebar .entry-content .alignfull,
.has-sidebar .entry-content .alignwide {
	margin-left: 0;
	margin-right: 0;
	width: auto;
	max-width: 100%;
}

.wp-block-button__link {
	border-radius: 999px;
	font-weight: 800;
	text-decoration: none;
}

.wp-block-button.is-style-outline > .wp-block-button__link {
	border: 2px solid currentColor;
}

.wp-block-group.has-background {
	border-radius: 24px;
}

.wp-block-group.alignfull.has-background {
	border-radius: 0;
}

.wp-block-table table {
	margin: 0;
}

.wp-block-table td,
.wp-block-table th,
.wp-block-table thead,
.wp-block-table tfoot {
	border: 0;
	border-bottom: 1px solid var(--kenzu-line);
}

.wp-block-table thead {
	border-bottom: 0;
}

.wp-block-table th {
	font-size: 14px;
	color: var(--kenzu-muted);
}

.wp-block-details {
	border-bottom: 1px solid var(--kenzu-line);
	padding: 12px 0;
}

.wp-block-details summary {
	font-weight: 800;
	cursor: pointer;
}

.wp-block-details > *:not(summary) {
	margin-top: 8px;
	color: var(--kenzu-muted);
}

.wp-block-quote {
	border-left-color: var(--kenzu-accent);
}

.wp-block-separator {
	border-color: var(--kenzu-line);
}

.wp-block-image img {
	border-radius: var(--kenzu-radius);
}

.is-style-kenzu-card {
	background: var(--kenzu-surface);
	border-radius: var(--kenzu-radius);
	padding: 20px;
}

.is-style-kenzu-pill {
	display: inline-block;
	background: var(--kenzu-bg);
	border-radius: 999px;
	padding: 4px 12px !important;
	font-weight: 800;
	font-size: 13px;
}

.kenzu-eyebrow {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

/* 13. WooCommerce
--------------------------------------------- */
.woocommerce-active .site-main-wrap {
	padding-top: 20px;
}

.woocommerce .woocommerce-breadcrumb {
	font-size: 13px;
	color: var(--kenzu-muted);
	margin: 0 0 14px;
}

.woocommerce .woocommerce-breadcrumb a {
	color: var(--kenzu-muted);
	text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb a:hover {
	color: var(--kenzu-accent-text);
}

.woocommerce-products-header__title.page-title {
	margin-bottom: 4px;
}

.woocommerce .woocommerce-result-count {
	color: var(--kenzu-muted);
	font-size: 14px;
	margin-bottom: 18px;
}

.woocommerce .woocommerce-ordering select {
	width: auto;
	padding: 8px 12px;
	border-radius: 999px;
}

/* Product grid */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	margin: 0 0 2em;
	padding: 0;
	clear: both;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	display: none;
}

.woocommerce ul.products.columns-1 { grid-template-columns: minmax(0, 1fr); }
.woocommerce ul.products.columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.woocommerce ul.products.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.woocommerce ul.products.columns-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.woocommerce ul.products.columns-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce-page ul.products[class*="columns-"] li.product {
	float: none;
	clear: none;
	width: auto;
	margin: 0;
	display: flex;
	flex-direction: column;
	border: 1px solid var(--kenzu-line);
	border-radius: var(--kenzu-radius);
	overflow: hidden;
	background: var(--kenzu-bg);
	transition: transform 0.2s, box-shadow 0.2s;
	position: relative;
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-3px);
	box-shadow: var(--kenzu-shadow);
}

.woocommerce ul.products li.product a img {
	margin: 0;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	background: var(--kenzu-surface);
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
	text-decoration: none;
	color: var(--kenzu-ink);
	display: flex;
	flex-direction: column;
	flex: 1;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-category__title {
	font-family: var(--kenzu-body);
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
	padding: 14px 14px 6px;
	margin: 0;
	color: var(--kenzu-ink);
}

.woocommerce ul.products li.product .star-rating {
	margin: 0 14px 6px;
	font-size: 0.8em;
}

.woocommerce ul.products li.product .price {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: baseline;
	padding: 0 14px;
	margin-bottom: 12px;
	font-variant-numeric: tabular-nums;
}

.woocommerce ul.products li.product .button {
	margin: auto 14px 14px;
	display: block;
	text-align: center;
	background: transparent;
	color: var(--kenzu-ink);
	border: 2px solid var(--kenzu-ink);
	border-radius: 12px;
	padding: 9px;
	font-weight: 800;
}

.woocommerce ul.products li.product .button:hover {
	background: var(--kenzu-ink);
	color: var(--kenzu-bg);
}

.woocommerce ul.products li.product .button.added {
	background: var(--kenzu-mint);
	border-color: var(--kenzu-mint);
	color: var(--kenzu-mint-ink);
}

.woocommerce ul.products li.product .added_to_cart {
	display: block;
	text-align: center;
	font-size: 13px;
	font-weight: 800;
	margin: -8px 14px 12px;
}

/* Prices */
.woocommerce .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
	color: var(--kenzu-accent-text);
	font-weight: 800;
}

.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price ins {
	text-decoration: none;
	font-size: 1.15em;
	order: -1;
}

.woocommerce .price del,
.woocommerce div.product p.price del {
	color: var(--kenzu-old);
	opacity: 1;
	font-weight: 400;
	font-size: 0.85em;
}

/* Sale badge */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
	top: 10px;
	left: 10px;
	right: auto;
	margin: 0;
	min-height: 0;
	min-width: 0;
	line-height: 1.4;
	padding: 3px 10px;
	border-radius: 999px;
	background: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
	font-size: 12px;
	font-weight: 800;
}

.woocommerce div.product span.onsale {
	top: 14px;
	left: 14px;
	z-index: 9;
}

/* Buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
	border-radius: 999px;
	padding: 12px 22px;
	font-weight: 800;
	line-height: 1.2;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background: var(--kenzu-ink);
	color: var(--kenzu-bg);
}

.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce button.button.alt.disabled {
	opacity: 0.5;
	background: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
}

/* Single product */
.woocommerce div.product {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 16px clamp(20px, 4vw, 48px);
	align-items: start;
}

.woocommerce div.product > * {
	grid-column: 1 / -1;
}

.woocommerce div.product > span.onsale {
	grid-column: auto;
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary {
	float: none;
	width: auto;
	margin: 0;
	min-width: 0;
}

.woocommerce div.product div.images {
	grid-column: 1;
}

.woocommerce div.product div.summary {
	grid-column: 2;
}

.woocommerce div.product div.images img {
	border-radius: 24px;
	background: var(--kenzu-surface);
}

.woocommerce div.product div.images .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	margin-top: 8px;
}

.woocommerce div.product div.images .flex-control-thumbs li {
	width: auto;
	float: none;
}

.woocommerce div.product div.images .flex-control-thumbs li img {
	border-radius: 12px;
	border: 2px solid var(--kenzu-line);
}

.woocommerce div.product div.images .flex-control-thumbs li img.flex-active {
	border-color: var(--kenzu-accent);
}

.woocommerce div.product .product_title {
	font-size: clamp(1.6rem, 3.4vw, 2.3rem);
	margin: 0 0 10px;
}

.woocommerce div.product p.price {
	margin: 0 0 8px;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: baseline;
	font-family: var(--kenzu-display);
	font-size: 1.9rem;
}

.woocommerce div.product p.price del {
	font-family: var(--kenzu-body);
	font-size: 1rem;
}

.kenzu-saving {
	display: inline-block;
	background: var(--kenzu-mint);
	color: var(--kenzu-mint-ink);
	font-weight: 800;
	border-radius: 999px;
	padding: 3px 10px;
	font-size: 13px;
	margin-bottom: 14px;
}

.woocommerce div.product .woocommerce-product-details__short-description {
	color: var(--kenzu-muted);
}

.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	margin-bottom: 18px;
}

.woocommerce div.product form.cart::before,
.woocommerce div.product form.cart::after {
	display: none;
}

.woocommerce div.product form.cart div.quantity {
	float: none;
	margin: 0;
}

.woocommerce .quantity .qty {
	width: 80px;
	padding: 11px 8px;
	border-radius: 999px;
	text-align: center;
}

.woocommerce div.product form.cart .button {
	float: none;
}

.woocommerce div.product form.cart.variations_form {
	display: block;
}

.woocommerce div.product form.cart .variations select {
	min-width: 180px;
}

.kenzu-whatsapp-order {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--kenzu-mint);
	color: var(--kenzu-mint-ink);
	border-radius: 999px;
	padding: 12px 22px;
	font-weight: 800;
	text-decoration: none;
	margin-bottom: 18px;
}

.kenzu-whatsapp-order:hover {
	background: var(--kenzu-mint-ink);
	color: var(--kenzu-bg);
}

.kenzu-whatsapp-order svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.woocommerce div.product .product_meta {
	font-size: 14px;
	color: var(--kenzu-muted);
	display: grid;
	gap: 4px;
}

.woocommerce div.product .product_meta a {
	color: inherit;
}

.woocommerce div.product .woocommerce-tabs {
	margin-top: 32px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	padding: 0;
	margin: 0 0 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border: 1px solid var(--kenzu-line);
	background: var(--kenzu-bg);
	border-radius: 999px;
	margin: 0;
	padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	padding: 8px 16px;
	font-weight: 800;
	color: var(--kenzu-ink);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background: var(--kenzu-accent);
	border-color: var(--kenzu-accent);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--kenzu-accent-ink);
}

.woocommerce div.product .woocommerce-tabs .panel {
	max-width: 820px;
}

.woocommerce div.product .woocommerce-tabs .panel h2:first-child {
	display: none;
}

.woocommerce .related > h2,
.woocommerce .upsells > h2,
.woocommerce .cross-sells > h2 {
	margin-top: 40px;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul {
	border: 0;
	display: inline-flex;
	gap: 6px;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: 0;
	overflow: visible;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	padding: 0 12px;
	min-width: 40px;
	line-height: 38px;
	border: 1px solid var(--kenzu-line);
	border-radius: 999px;
	font-weight: 800;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
	background: var(--kenzu-accent);
	border-color: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
}

/* Notices */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
	border-top: 0;
	border-radius: 14px;
	background: var(--kenzu-surface);
	color: var(--kenzu-ink);
	padding: 1em 1.5em 1em 3.2em;
}

.woocommerce-message {
	background: var(--kenzu-mint);
}

.woocommerce-message::before {
	color: var(--kenzu-mint-ink);
}

.woocommerce-info::before {
	color: var(--kenzu-accent-text);
}

.woocommerce-message .button,
.woocommerce-info .button {
	padding: 8px 16px !important;
}

/* Cart, checkout and account (classic templates) */
.woocommerce table.shop_table {
	border-radius: var(--kenzu-radius);
	border-color: var(--kenzu-line);
}

.woocommerce table.shop_table td,
.woocommerce table.shop_table th {
	border-color: var(--kenzu-line);
}

.woocommerce-cart table.cart img {
	width: 64px;
	border-radius: 10px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	border-radius: 10px;
	padding: 10px 12px;
}

.woocommerce-checkout #payment {
	background: var(--kenzu-surface);
	border-radius: var(--kenzu-radius);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 8px 12px;
	border-radius: 10px;
	color: var(--kenzu-ink);
	text-decoration: none;
	font-weight: 700;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--kenzu-accent);
	color: var(--kenzu-accent-ink);
}

.woocommerce .star-rating span::before,
.woocommerce p.stars a {
	color: #f2a93b;
}

/* WooCommerce blocks */
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	border-radius: 999px !important;
	font-weight: 800 !important;
}

.wc-block-grid__product,
.wc-block-product {
	border: 1px solid var(--kenzu-line);
	border-radius: var(--kenzu-radius);
	padding-bottom: 12px !important;
	overflow: hidden;
}

/* 14. Landing page template
--------------------------------------------- */
.kenzu-landing .site-main-wrap {
	padding-block: 24px 64px;
}

.kenzu-landing .entry-content {
	max-width: none;
}

.kenzu-landing-footer {
	text-align: center;
	font-size: 13px;
	color: var(--kenzu-muted);
	padding-block: 24px;
	border-top: 1px solid var(--kenzu-line);
}

/* 15. Responsive
--------------------------------------------- */
@media screen and (max-width: 782px) {
	.admin-bar .site-header,
	.admin-bar .kenzu-drawer {
		top: 46px;
	}
}

@media screen and (max-width: 600px) {
	.admin-bar .site-header {
		top: 0;
	}
}

@media (max-width: 960px) {
	.has-sidebar .site-main-wrap {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products,
	.woocommerce ul.products.columns-4,
	.woocommerce ul.products.columns-5,
	.woocommerce ul.products.columns-6 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.kenzu-footer-widgets {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 860px) {
	.woocommerce div.product {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce div.product div.images,
	.woocommerce div.product div.summary {
		grid-column: 1;
	}

	.kenzu-nav-row {
		flex-direction: column;
		align-items: stretch;
		gap: 8px;
	}

	.kenzu-menu-toggle {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		align-self: flex-start;
		background: var(--kenzu-surface);
		color: var(--kenzu-ink);
		border: 1px solid var(--kenzu-line);
		padding: 8px 14px;
	}

	.kenzu-menu-toggle:hover {
		background: var(--kenzu-surface);
		color: var(--kenzu-accent-text);
	}

	.main-navigation.has-toggle > div,
	.main-navigation.has-toggle > ul {
		display: none;
	}

	.main-navigation.has-toggle.toggled > div,
	.main-navigation.has-toggle.toggled > ul {
		display: block;
	}

	.main-navigation.toggled ul {
		display: block;
	}

	.main-navigation .sub-menu {
		position: static;
		display: block;
		box-shadow: none;
		border: 0;
		padding: 0 0 0 14px;
	}
}

@media (max-width: 640px) {
	.kenzu-header-bar {
		flex-wrap: wrap;
	}

	.kenzu-search {
		order: 3;
		flex-basis: 100%;
	}

	.kenzu-header-actions {
		margin-left: auto;
	}

	.kenzu-social {
		display: none;
	}

	.kenzu-cart-toggle .kenzu-cart-total {
		display: none;
	}

	.kenzu-topbar .kenzu-topbar-right {
		display: none;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products,
	.woocommerce ul.products[class*="columns-"] {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 14px;
		padding: 10px 10px 4px;
	}

	.woocommerce ul.products li.product .price {
		padding: 0 10px;
	}

	.woocommerce ul.products li.product .button {
		margin: auto 10px 10px;
		padding: 8px;
		font-size: 14px;
	}

	.kenzu-footer-widgets {
		grid-template-columns: 1fr;
	}

	.gallery-columns-4,
	.gallery-columns-5,
	.gallery-columns-6 {
		grid-template-columns: repeat(3, 1fr);
	}
}

/* 16. Brand header and footer (logo brown)
--------------------------------------------- */
.kenzu-topbar {
	background: #3b2615;
	color: var(--kenzu-yellow);
}

.site-header {
	background: var(--kenzu-brand);
	color: var(--kenzu-brand-ink);
	border-bottom: 0;
}

.site-header .site-title a {
	color: var(--kenzu-brand-ink);
}

.site-header .site-description {
	color: var(--kenzu-brand-muted);
}

.kenzu-logo-mark {
	background: var(--kenzu-yellow);
}

.kenzu-search {
	background: #fffaf1;
	border-color: transparent;
}

.kenzu-search:focus-within {
	border-color: var(--kenzu-yellow);
}

.kenzu-search input[type="search"] {
	color: #3b2615;
}

.kenzu-search input[type="search"]::placeholder {
	color: #8a7461;
}

.kenzu-search button {
	background: var(--kenzu-yellow);
	color: #3b2615;
}

.kenzu-search button:hover {
	background: var(--kenzu-accent);
	color: #3b2615;
}

.site-header .kenzu-social a {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.18);
	color: var(--kenzu-yellow);
}

.site-header .kenzu-social a:hover {
	background: var(--kenzu-yellow);
	border-color: var(--kenzu-yellow);
	color: #3b2615;
}

.kenzu-cart-toggle {
	background: var(--kenzu-yellow);
	color: #3b2615;
}

.kenzu-cart-toggle:hover {
	background: #fff1c4;
	color: #3b2615;
}

.kenzu-cart-count,
.kenzu-cart-toggle:hover .kenzu-cart-count {
	background: #3b2615;
	color: var(--kenzu-yellow);
}

.site-header .main-navigation a {
	color: var(--kenzu-brand-ink);
}

.site-header .main-navigation a:hover,
.site-header .main-navigation .current-menu-item > a,
.site-header .main-navigation .current_page_item > a {
	background: rgba(255, 255, 255, 0.1);
	color: var(--kenzu-yellow);
}

.site-header .main-navigation .sub-menu a {
	color: var(--kenzu-ink);
}

.site-header .main-navigation .sub-menu a:hover {
	background: var(--kenzu-surface);
	color: var(--kenzu-accent-text);
}

.site-header .kenzu-menu-toggle,
.site-header .kenzu-menu-toggle:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.18);
	color: var(--kenzu-brand-ink);
}

.kenzu-categories a {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.22);
	color: var(--kenzu-brand-ink);
}

.kenzu-categories a:hover,
.kenzu-categories .current-menu-item > a,
.kenzu-categories .current-cat > a {
	background: var(--kenzu-yellow);
	border-color: var(--kenzu-yellow);
	color: #3b2615;
}

.site-footer {
	background: var(--kenzu-brand);
	color: var(--kenzu-brand-muted);
	border-top: 0;
}

.site-footer .site-title a,
.kenzu-footer-widgets .widget-title {
	color: var(--kenzu-yellow);
}

.site-footer .footer-navigation a,
.kenzu-footer-widgets .widget a {
	color: var(--kenzu-brand-muted);
}

.site-footer .footer-navigation a:hover,
.kenzu-footer-widgets .widget a:hover,
.site-info a:hover {
	color: var(--kenzu-yellow);
}

.site-info {
	border-top-color: rgba(255, 255, 255, 0.15);
}

/* 17. Demo details
--------------------------------------------- */
.kenzu-footer-columns .site-title {
	font-size: 1.15rem;
	margin-bottom: 10px;
}

.kenzu-footer-columns p {
	margin: 0;
}

.site-footer .footer-navigation ul,
.kenzu-footer-contact {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 6px;
}

.kenzu-footer-columns .widget-title {
	font-size: 1.05rem;
	margin: 0 0 10px;
	color: var(--kenzu-yellow);
}

.kenzu-coupon {
	position: relative;
	width: fit-content;
	margin: -48px 6% 0 auto;
	padding: 12px 18px !important;
	background: var(--kenzu-bg);
	border-radius: 16px;
	box-shadow: var(--kenzu-shadow);
	transform: rotate(-4deg);
	font-weight: 800;
	line-height: 1.25;
}

.kenzu-coupon p {
	margin: 0 !important;
}

.kenzu-coupon .kenzu-coupon-big {
	font-family: var(--kenzu-display);
	font-size: 1.75rem;
	color: var(--kenzu-accent-text);
	line-height: 1.1;
}

.kenzu-view-all a {
	font-weight: 800;
	color: var(--kenzu-accent-text);
	text-decoration: none;
}

.kenzu-view-all {
	margin: 0;
}

.kenzu-stock-note {
	font-weight: 700;
	color: var(--kenzu-mint-ink);
	margin: 0 0 12px;
}

.kenzu-stock-note::before {
	content: "\25CF";
	margin-right: 6px;
}

.kenzu-ship {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-bottom: 12px;
}

.kenzu-ship div {
	background: var(--kenzu-surface);
	border-radius: 14px;
	padding: 12px;
	font-size: 14px;
}

.kenzu-ship strong {
	display: block;
}

.kenzu-ship span {
	color: var(--kenzu-muted);
}

.kenzu-ship-note {
	font-size: 14px;
	color: var(--kenzu-muted);
}

.wp-block-group.is-style-kenzu-card,
.wp-block-column.is-style-kenzu-card {
	background: var(--kenzu-surface);
}

@media (max-width: 640px) {
	.kenzu-ship {
		grid-template-columns: 1fr;
	}

	.kenzu-coupon {
		margin-top: -24px;
	}
}
