/*
 * Kaiti design integration for WoodMart.
 * Keep structural WooCommerce styling in the parent theme.
 */

:root {
	--sage: #6b7d7d;
	--sage-dark: #4c5f60;
	--sage-soft: #dce6e3;
	--berry: #b6285a;
	--berry-dark: #8e1d47;
	--rose: #dc9bb4;
	--rose-soft: #f5dfe7;
	--cream: #fff8ef;
	--linen: #ead8c3;
	--ink: #302b2b;
	--muted: #716865;
	--white: #fff;
	--line: rgba(48, 43, 43, .14);
}

html:root {
	--wd-primary-color: var(--berry) !important;
	--wd-alternative-color: var(--sage) !important;
	--wd-main-bgcolor: var(--cream) !important;
	--wd-text-color: var(--muted) !important;
	--wd-title-color: var(--ink) !important;
	--wd-link-color: var(--ink) !important;
	--wd-link-color-hover: var(--berry) !important;
	--wd-entities-title-color: var(--ink) !important;
	--wd-entities-title-color-hover: var(--berry) !important;
	--wd-text-font: "Trebuchet MS", Arial, sans-serif !important;
	--wd-text-font-size: 16px !important;
	--wd-text-font-weight: 400 !important;
	--wd-title-font: Georgia, "Times New Roman", serif !important;
	--wd-title-font-weight: 500 !important;
	--wd-entities-title-font: var(--wd-title-font) !important;
	--wd-form-color: var(--ink) !important;
	--wd-form-placeholder-color: #8a7e79 !important;
	--wd-form-bg: var(--white) !important;
	--wd-form-brd-color: rgba(107, 125, 125, .25) !important;
	--wd-form-brd-color-focus: var(--berry) !important;
	--btn-default-color: var(--berry) !important;
	--btn-default-color-hover: var(--white) !important;
	--btn-default-bgcolor: var(--rose-soft) !important;
	--btn-default-bgcolor-hover: var(--berry) !important;
	--btn-default-brd-radius: 999px !important;
	--btn-accented-color: var(--white) !important;
	--btn-accented-color-hover: var(--white) !important;
	--btn-accented-bgcolor: var(--berry) !important;
	--btn-accented-bgcolor-hover: var(--berry-dark) !important;
	--btn-accented-brd-radius: 999px !important;
}

html body {
	background-color: var(--cream);
	color: var(--muted);
	font-family: var(--wd-text-font);
	font-size: var(--wd-text-font-size);
	line-height: 1.55;
}

.main-page-wrapper,
.wd-content-layout {
	background-color: var(--cream);
}

.kaiti-reusable-section {
	width: min(100% - 44px, 1180px);
	margin-inline: auto;
	padding-block: clamp(40px, 6vw, 90px);
}

.kaiti-reusable-section--inline {
	width: 100%;
	padding-block: clamp(22px, 4vw, 48px);
}

.kaiti-reusable-section > :first-child {
	margin-top: 0;
}

.kaiti-reusable-section > :last-child {
	margin-bottom: 0;
}

body:not(.home) :is(h1, h2, h3, h4, h5, h6, legend, .title) {
	color: var(--ink);
	font-family: var(--wd-title-font);
}

body:not(.home) a:is(:hover, :focus, :active) {
	color: var(--berry);
}

/* Global WoodMart page titles use the same cream/berry language as Kaiti. */
.wd-page-title {
	color: var(--muted);
	background-color: var(--cream) !important;
	border-block: 1px solid rgba(182, 40, 90, .14);
}

.wd-page-title .wd-page-title-bg {
	background-color: var(--cream) !important;
}

.wd-page-title :is(.entry-title, .title, .wd-back-btn a) {
	color: var(--ink);
}

.wd-page-title .entry-title {
	font-family: var(--wd-title-font);
	font-weight: 500;
}

.wd-page-title .wd-nav-product-cat {
	--wd-link-color: var(--muted);
	--wd-link-color-hover: var(--berry);
	--wd-link-decor-color: var(--rose);
}

.wd-page-title .wd-nav-product-cat .nav-link-count {
	color: #8a7e79;
}

.wd-page-title .wd-nav-product-cat :is(.current-cat, .wd-active) > a {
	color: var(--berry);
}

/* WooCommerce feedback and empty states must never fall back to yellow/green. */
body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
	color: var(--ink) !important;
	background: var(--cream) !important;
	border: 1px solid rgba(182, 40, 90, .22) !important;
	border-inline-start: 4px solid var(--berry) !important;
	border-radius: 16px;
	box-shadow: 0 10px 28px rgba(48, 43, 43, .05);
}

body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before {
	color: var(--berry) !important;
}

body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) :is(a, .button) {
	color: var(--berry);
}

#coming-soon-footer-banner {
	color: var(--white) !important;
	background: var(--berry) !important;
}

#coming-soon-footer-banner a {
	color: var(--white) !important;
	text-decoration-color: var(--rose) !important;
}

:is(input, select, textarea):focus {
	border-color: var(--berry) !important;
	box-shadow: 0 0 0 4px rgba(220, 155, 180, .24);
}

html:has(body.home) {
	font-size: 16px;
}

body.home {
	background-color: #fff8ef;
}

.home .kaiti-home .newsletter-section h2 {
	color: #fff;
}

.home .kaiti-home [id] {
	scroll-margin-top: 0 !important;
}

.home .main-page-wrapper {
	padding-block: 0;
	background-color: #fff8ef;
}

.home .wd-content-layout {
	display: block;
	width: 100%;
	max-width: none;
	padding: 0 !important;
}

.home .wd-content-layout > .kaiti-home {
	width: 100%;
	max-width: none;
	padding-inline: 0;
}

.home .site-content {
	margin-bottom: 0;
}

.home .wd-page-title {
	display: none;
}

.home .kaiti-home {
	position: relative;
	z-index: 1;
}

@media (min-width: 1025px) {
	.home .hero h1 {
		font-size: clamp(64px, 6vw, 76px);
		line-height: 1.04;
	}

	.home .kaiti-home :is(.section-heading, .about-note) h2 {
		font-size: 64px;
		line-height: 1.04;
	}

	.home .kaiti-home .about-note h2 {
		font-size: 57.6px;
	}

	.home .before-after-section {
		min-height: 839px;
	}
}

.home .about-list li {
	margin-bottom: 0;
}

/*
 * Homepage accessibility and interaction polish.
 * Keep colors stable on hover and raise contrast on small card copy.
 */
.home .promise-strip,
.home .collection-card--sage,
.home .discovery-card--sage,
.home .specialized-card--sage {
    background-color: #5b6e6f;
}

.home .collection-card--sage:hover {
    background-color: #45595a;
}

.home .collection-card--berry:hover {
    background-color: #8e1d47;
}

.home :is(.collection-card--sage, .collection-card--berry) .collection-card__copy small {
    color: #fff;
    opacity: 1;
}

.home .collection-card__copy strong {
	text-transform: uppercase;
}

.home :is(.collection-card--rose, .collection-card--linen) .collection-card__number {
	color: #302b2b;
}

.home .featured-card__link {
	color: #fff;
	background-color: #b6285a;
	border-color: rgba(142, 29, 71, .28);
}

.home .featured-card__link:hover,
.home .featured-card__link:focus-visible {
	color: #fff;
	background-color: #8e1d47;
	border-color: #8e1d47;
}

.home .discovery-card--linen .featured-card__link {
	color: #fff8ef;
	background-color: #d790ab;
	border-color: rgba(182, 40, 90, .3);
}

.home .discovery-card--linen .featured-card__link:hover,
.home .discovery-card--linen .featured-card__link:focus-visible {
	color: #fff8ef;
	background-color: #c77e9a;
	border-color: rgba(182, 40, 90, .38);
}

.home .discovery-card {
	color: #fff8ef;
}

.home .discovery-card h3 {
	color: inherit;
}

.home .discovery-card--rose {
	color: #302b2b;
}

.home .discovery-card--rose > p:not(.project-card__tag),
.home .discovery-card--rose .project-card__tag {
	color: #302b2b;
}

.home :is(.discovery-card--sage, .discovery-card--linen) > p:not(.project-card__tag),
.home :is(.discovery-card--sage, .discovery-card--linen) .project-card__tag {
	color: #fff8ef;
}

.home .specialized-card {
	color: #fff;
}

.home .specialized-card small {
    color: #fff;
}

.home :is(
    .collection-card--sage,
    .collection-card--berry,
    .specialized-card--sage,
    .specialized-card--berry
):focus-visible {
    outline-color: #fff;
}

/* Native mobile-navigation fallback; the approved header burger opens Kaiti's drawer. */
@media (max-width: 1024px) {
    .mobile-nav.wd-side-hidden {
        color: #fff;
        background: #b6285a;
    }

    .mobile-nav .wd-search-form {
        padding: 16px 14px 10px;
        background: #b6285a;
    }

    .mobile-nav .searchform {
        overflow: hidden;
        background: #fff8ef;
        border: 0;
        border-radius: 999px;
    }

    .mobile-nav .searchform input {
        color: #302b2b;
        background: transparent;
    }

    .mobile-nav .wd-nav-mob-tab {
        padding-inline: 14px;
        background: #b6285a;
        border-bottom: 0;
    }

    .mobile-nav .wd-nav-mob-tab > li > a {
        color: rgba(255, 255, 255, .72);
    }

    .mobile-nav .wd-nav-mob-tab > li.wd-active > a {
        color: #fff;
    }

    .mobile-nav .wd-nav-mob-tab > li.wd-active > a::after {
        background: #fff;
    }

    .mobile-nav .wd-nav-mobile {
        display: grid;
        gap: 8px;
        padding: 12px 14px 24px;
        background: #b6285a;
    }

    .mobile-nav .wd-nav-mobile > li {
        overflow: hidden;
        background: #fff8ef;
        border: 0;
        border-radius: 14px;
    }

    .mobile-nav .wd-nav-mobile > li > a {
        min-height: 52px;
        padding: 13px 15px;
        color: #302b2b;
        border: 0;
    }

    .mobile-nav .wd-nav-mobile > li > a:is(:hover, :focus) {
        color: #b6285a;
        background: #f5dfe7;
    }
}

/* Match the Kaiti palette without replacing WoodMart header functionality. */
.whb-header {
	--wd-primary-color: #b6285a;
	--wd-alternative-color: #6b7d7d;
}

.whb-main-header {
	background-color: #fffaf3;
}

.whb-header .whb-top-bar {
	background-color: #b6285a !important;
}

.whb-header .whb-general-header,
.whb-header .whb-header-bottom {
	background-color: #fffaf3;
}

.whb-header .wd-nav-main > li > a {
	color: #344b4a;
}

.whb-header .wd-nav-main > li:is(:hover, .current-menu-item) > a {
	color: #b6285a;
}

/*
 * Native WoodMart header, visually matched to the original Kaiti static header.
 * Search, account, wishlist, cart, sticky state and mobile menu remain WoodMart.
 */

/* WoodMart marks shared lists as preview/read-only but still outputs an inert
 * bulk-action toolbar. Hide only that unusable toolbar; owner wishlists keep it. */
.wd-wishlist-preview > .wd-wishlist-bulk-action {
	display: none;
}

@media (min-width: 1025px) {
	.whb-header .whb-top-bar {
		padding: 0;
	}

	.whb-header .whb-top-bar > .container {
		width: 100%;
		max-width: none;
		padding-inline: 0;
	}

	.whb-header .whb-top-bar .whb-col-left {
		flex: 1 1 100%;
		justify-content: center;
		min-width: 0;
		max-width: none;
	}

	.whb-header .whb-top-bar .whb-col-center,
	.whb-header .whb-top-bar .whb-col-right {
		display: none;
	}

	.whb-header .whb-top-bar .wd-header-divider {
		display: none;
	}

	.whb-header .whb-top-bar .wd-header-text {
		font-size: 10px;
		letter-spacing: .08em;
		text-align: center;
	}

	.whb-top-bar .wd-header-html {
		width: 100%;
		min-width: 0;
	}

	.kaiti-top-bars,
	.kaiti-top-bars :is(.wp-block-group, p) {
		margin: 0;
	}

	.kaiti-announcement {
		position: relative;
		height: 32px;
		padding: 0 42px 0 16px;
		background: #e2a4ba;
		color: #68203a;
	}

	.kaiti-announcement .wd-marquee {
		height: 100%;
		max-width: 100%;
	}

	.kaiti-announcement .wd-marquee-item {
		font-size: 12px;
		line-height: 1.35;
		font-weight: 600;
	}

	.kaiti-announcement .wd-marquee-item::before {
		content: "✦";
		margin-inline-end: 8px;
		font-size: 10px;
		opacity: .6;
	}

	.kaiti-top-bars a {
		color: inherit;
		text-decoration: none;
	}

	.kaiti-top-bars a:hover {
		text-decoration: underline;
		text-underline-offset: 3px;
	}

	.kaiti-top-bars :is(a, button):focus-visible {
		outline: 2px solid currentColor;
		outline-offset: 3px;
	}

	.kaiti-marquee-toggle {
		position: absolute;
		inset: 3px 8px 3px auto;
		width: 26px;
		min-height: 0;
		padding: 0;
		border: 1px solid #68203a40;
		border-radius: 50%;
		background: transparent;
		color: #68203a;
		box-shadow: none;
		font-size: 12px;
		line-height: 1;
	}

	.kaiti-marquee-toggle:hover {
		background: #ffffff40;
		color: #68203a;
		box-shadow: none;
	}

	.kaiti-announcement[data-paused="true"] .wd-marquee-content {
		animation-play-state: paused;
	}

	/* Show every original link in place while tabbing; never focus a moving,
	 * clipped item. WoodMart resumes its native animation after focus leaves. */
	.kaiti-announcement .wd-marquee:has(a:focus-visible) .wd-marquee-content {
		animation: none;
		min-width: 100%;
		gap: 20px;
	}

	.kaiti-announcement .wd-marquee:has(a:focus-visible) .wd-marquee-content[aria-hidden="true"] {
		display: none;
	}

	.kaiti-announcement .wd-marquee:has(a:focus-visible) .wd-marquee-item {
		flex: 1 1 0;
		min-width: 0;
		white-space: normal;
		font-size: 11px;
	}

	.kaiti-announcement .wd-marquee:has(a:focus-visible) .wd-marquee-item::before {
		display: none;
	}

	.kaiti-top-bars .kaiti-utility {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 24px;
		width: min(calc(100% - 32px), 1180px);
		height: 40px;
		margin-inline: auto;
		color: #fff;
		font-size: 12px;
		line-height: 1.5;
	}

	.kaiti-utility p {
		font-size: inherit;
		line-height: inherit;
	}

	.kaiti-utility-phones a {
		font-weight: 600;
		white-space: nowrap;
	}

	.kaiti-utility-links {
		display: flex;
		gap: 18px;
		white-space: nowrap;
	}

	@media (prefers-reduced-motion: reduce) {
		.kaiti-announcement { padding-inline: 16px; }
		.kaiti-announcement .wd-marquee-content { animation: none; min-width: 100%; gap: 20px; }
		.kaiti-announcement .wd-marquee-content[aria-hidden="true"],
		.kaiti-announcement .kaiti-marquee-toggle { display: none; }
		.kaiti-announcement .wd-marquee-item { flex: 1 1 0; min-width: 0; white-space: normal; font-size: 11px; }
		.kaiti-announcement .wd-marquee-item::before { display: none; }
	}

	.whb-header .whb-general-header > .container {
		width: min(calc(100% - 32px), 1180px);
		max-width: 1180px;
	}

	.whb-header .whb-general-header-inner {
		padding-block: 16px;
		box-sizing: border-box;
	}

	/* Native Header Builder owns both heights and the fixed-size placeholder.
	 * Only the row's internal spacing moves; document geometry stays stable. */
	.whb-header.whb-scroll-stick .whb-general-header-inner {
		transition: height 280ms ease, max-height 280ms ease, padding-block 280ms ease;
	}

	.whb-header.whb-sticked .whb-general-header-inner {
		padding-block: 0;
	}

	/* Both native logo slots use the same artwork and dimensions. No re-fade
	 * when the sticky boundary is crossed, including a one-pixel reversal. */
	.whb-header .site-logo .wd-sticky-logo {
		animation: none;
	}

	@media (prefers-reduced-motion: reduce) {
		.whb-header.whb-scroll-stick .whb-general-header-inner {
			transition: none;
		}
	}

	.whb-header .whb-general-header-inner {
		display: grid !important;
		grid-template-columns: minmax(520px, 1fr) minmax(360px, 620px) 210px;
		align-items: center;
		gap: clamp(14px, 1.72vw, 22px);
	}

	.whb-header .whb-general-header .whb-col-left {
		display: grid;
		grid-template-columns: 154px minmax(0, 1fr);
		align-items: center;
		justify-content: flex-start;
		gap: clamp(14px, 1.72vw, 22px);
		width: 100%;
		margin: 0;
		max-width: none;
	}

	.whb-header .whb-general-header .whb-col-center {
		width: 100%;
		justify-content: stretch;
		max-width: none;
	}

	.whb-header .whb-general-header .whb-col-right {
		width: 195px;
		justify-content: space-between;
		gap: 8px;
		max-width: none;
		transform: none;
	}

	.whb-header .site-logo {
		width: 154px;
		padding: 0;
	}

	.whb-header .site-logo img {
		width: 154px !important;
		min-width: 154px;
		max-width: 154px !important;
		height: 103px;
		object-fit: contain;
	}

	.whb-header .wd-header-nav {
		width: 100%;
		margin: 0;
		padding: 0;
	}

	.whb-header .wd-nav-main {
		flex-wrap: nowrap;
		justify-content: flex-start;
		gap: clamp(12px, 1.6vw, 20.5px);
	}

	.whb-header .wd-nav-main > li > a {
		min-height: 46px;
		padding-inline: 0;
		color: #b6285a;
		font-size: 13px;
		font-weight: 750;
		text-transform: none;
	}

	.whb-header .wd-nav-main > li:nth-child(1) > a {
		min-width: 114px;
	}

	.whb-header .wd-nav-main > li:nth-child(2) > a {
		min-width: 95px;
	}

	.whb-header .wd-nav-main > li:nth-child(3) > a {
		min-width: 56px;
	}

	.whb-header .wd-nav-main > li:first-child > a::before {
		margin-right: 8px;
		content: "\2630";
		font-size: 16px;
	}

	.whb-header .wd-nav-main > li:first-child > a::after {
		margin-left: 8px;
		content: "\f078";
		font-family: "Font Awesome 7 Free";
		font-size: 10px;
		font-weight: 900;
	}

	.whb-header .wd-nav-main > li:nth-child(2) > a::before {
		margin-right: 8px;
		content: "\f72b";
		font-family: "Font Awesome 7 Free";
		font-size: 18px;
		font-weight: 900;
	}

	.whb-header .wd-nav-main > li:nth-child(3) > a::before {
		margin-right: 8px;
		content: "\f5ad";
		font-family: "Font Awesome 7 Free";
		font-size: 17px;
		font-weight: 900;
	}

	.whb-header .wd-header-search-form {
		width: 100%;
		transform: none;
	}

	.whb-header .searchform {
		--wd-form-height: 54px;
		display: grid;
		grid-template-columns: minmax(0, 1fr) 42px;
		align-items: center;
		width: 100%;
		height: 54px;
		padding: 5px;
		background: #fff;
		border: 1px solid rgba(182, 40, 90, .2);
		border-radius: 999px;
		box-shadow: 0 12px 32px rgba(48, 43, 43, .07);
		box-sizing: border-box;
		transition: border-color .2s ease, box-shadow .2s ease;
	}

	.whb-header .searchform:focus-within {
		border-color: #b6285a;
		box-shadow: 0 0 0 4px rgba(220, 155, 180, .2), 0 12px 32px rgba(48, 43, 43, .07);
	}

	.whb-header .searchform input[type="text"] {
		grid-column: 1;
		grid-row: 1;
		min-width: 0;
		width: 100%;
		height: 42px;
		padding-inline: 16px 38px;
		color: #344b4a;
		background: transparent;
		border: 0 !important;
		border-radius: 999px 0 0 999px;
		box-shadow: none !important;
		font-size: 13px;
	}

	.whb-header .searchform input[type="text"]:focus {
		box-shadow: none;
	}

	.whb-header .searchform .searchsubmit {
		position: relative;
		grid-column: 2;
		grid-row: 1;
		inset: auto;
		width: 42px;
		height: 42px;
		min-height: 42px;
		color: #fff;
		background: #b6285a;
		border-radius: 50%;
	}

	.whb-header .searchform .searchsubmit:hover {
		color: #fff;
		background: #8f2047;
	}

	.whb-header .searchform .wd-clear-search {
		inset-inline-end: 50px;
	}

	.whb-header .wd-header-search-form .wd-dropdown-results {
		margin-top: 12px;
		background: #fffaf3;
		border: 1px solid rgba(182, 40, 90, .14);
		border-radius: 18px;
		box-shadow: 0 20px 48px rgba(48, 43, 43, .14);
	}

	.whb-header .whb-col-right > .wd-tools-element {
		min-width: 60px;
		height: 40px;
	}

	.whb-header .whb-col-right > .wd-tools-element > a {
		flex-direction: column;
		justify-content: center;
		gap: 2px;
		padding-inline: 5px;
		color: #b6285a;
	}

	.whb-header .whb-col-right > .wd-tools-element > a::after {
		color: #344b4a;
		font-size: 9px;
		font-weight: 700;
		line-height: 1.1;
	}

	.whb-header .wd-header-wishlist > a::after {
		content: "Αγαπημένα";
	}

	.whb-header .wd-header-my-account > a::after {
		content: "Προφίλ";
	}

	.whb-header .wd-header-cart > a::after {
		content: "Καλάθι";
	}

	.whb-header .wd-tools-icon {
		width: 31px;
		height: 31px;
		color: #b6285a;
	}

	.whb-header .wd-tools-icon::before {
		font-size: 24px;
	}

	.whb-header .wd-tools-count {
		color: #fff;
		background: #b6285a;
		border-color: #fffaf3;
	}

	.whb-header .wd-cart-subtotal,
	.whb-header .wd-tools-text {
		display: none;
	}
}

/* Keep the same visual axis on compact desktop widths before the mobile header takes over. */
@media (min-width: 1025px) and (max-width: 1199px) {
	.whb-header .whb-general-header-inner {
		grid-template-columns: minmax(0, 420px) minmax(280px, 1fr) 174px;
		gap: 12px;
	}

	.whb-header .whb-general-header .whb-col-left {
		grid-template-columns: 132px minmax(0, 1fr);
		gap: 12px;
	}

	.whb-header .site-logo,
	.whb-header .site-logo img {
		width: 132px !important;
		min-width: 132px;
		max-width: 132px !important;
	}

	.whb-header .site-logo img {
		height: 88px;
	}

	.whb-header .wd-nav-main {
		gap: 8px;
	}

	.whb-header .wd-nav-main > li > a {
		font-size: 12px;
	}

	.whb-header .wd-nav-main > li:nth-child(1) > a {
		min-width: 98px;
	}

	.whb-header .wd-nav-main > li:nth-child(2) > a {
		min-width: 84px;
	}

	.whb-header .wd-nav-main > li:nth-child(3) > a {
		min-width: 50px;
	}

	.whb-header .wd-nav-main > li > a::before,
	.whb-header .wd-nav-main > li:first-child > a::after {
		margin-inline: 5px;
	}

	.whb-header .whb-general-header .whb-col-right {
		width: 174px;
		gap: 4px;
	}

	.whb-header .whb-col-right > .wd-tools-element {
		min-width: 54px;
	}
}

@media (max-width: 1024px) {
	.whb-header .whb-top-bar .wd-social-icons {
		display: none;
	}

	.whb-header .whb-top-bar .whb-col-mobile {
		display: flex;
		justify-content: center;
		min-width: 0;
	}

	.whb-header .whb-top-bar > .container {
		width: 100%;
		padding-inline: 0;
	}

	.whb-header .kaiti-mobile-announcement {
		width: 100%;
		min-width: 0;
	}

	.kaiti-mobile-announcement p {
		margin: 0;
	}

	.whb-header .kaiti-mobile-shipping {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		min-height: 30px;
		padding: 4px 8px;
		color: #fff;
		font-size: clamp(10px, 2.9vw, 12px);
		font-weight: 600;
		line-height: 1.25;
		letter-spacing: 0;
		white-space: nowrap;
		text-transform: none;
	}

	.whb-header .kaiti-mobile-shipping:focus-visible {
		outline: 2px solid #fff;
		outline-offset: -3px;
	}

	.whb-header .whb-general-header {
		background: #fffaf3;
		border-bottom: 1px solid rgba(182, 40, 90, .14);
	}

	.whb-header .whb-general-header > .container {
		width: 100%;
		padding-inline: 10px;
	}

	.whb-header .whb-general-header-inner {
		gap: 0;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) {
		gap: 1px;
		margin-inline: 0;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) > .wd-tools-element {
		flex: 0 0 auto;
		--wd-header-el-color: #b6285a;
		--wd-header-el-color-hover: #8f2047;
		--wd-tools-icon-base-width: 21px;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) > .wd-tools-element > a {
		width: 40px;
		height: 44px;
		padding: 0;
		border-radius: 50%;
		transition: color .2s ease, background-color .2s ease;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) > .wd-tools-element > a:is(:hover, :focus-visible) {
		color: #8f2047;
		background: rgba(182, 40, 90, .08);
		outline: none;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) .wd-tools-icon {
		width: 24px;
		height: 24px;
		margin-inline: 0;
		color: currentColor;
	}

	.whb-header .whb-mobile-center .site-logo {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 118px;
		height: 64px;
		padding: 0;
		overflow: hidden;
	}

	.whb-header .whb-general-header .site-logo img {
		width: 118px !important;
		max-width: 118px !important;
		height: 64px;
		max-height: 64px;
		object-fit: cover;
		object-position: center;
	}

	.whb-header .whb-mobile-right .wd-tools-count {
		color: #fff;
		background: #b6285a;
		border-color: #fffaf3;
	}
}

/* WoodMart full-screen search functionality with Kaiti presentation. */
.wd-search-full-screen-2 {
	color: #302b2b;
	background:
		radial-gradient(circle at 12% 12%, rgba(220, 155, 180, .2), transparent 34%),
		linear-gradient(145deg, #fffaf3 0%, #fff 58%, #f7ecef 100%);
	backdrop-filter: blur(8px);
}

.wd-search-full-screen-2 > .container {
	width: min(calc(100% - 32px), 720px);
}

.wd-search-full-screen-2 .searchform {
	--wd-form-height: 60px;
	order: 2;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 48px;
	align-items: center;
	overflow: hidden;
	height: 60px;
	margin-bottom: 18px;
	padding: 5px;
	background: #fff;
	border: 1px solid rgba(182, 40, 90, .24);
	border-radius: 999px;
	box-shadow: 0 18px 45px rgba(48, 43, 43, .12);
	box-sizing: border-box;
	transition: border-color .2s ease, box-shadow .2s ease;
}

.wd-search-full-screen-2 .searchform:focus-within {
	border-color: #b6285a;
	box-shadow: 0 0 0 4px rgba(220, 155, 180, .22), 0 18px 45px rgba(48, 43, 43, .1);
}

.wd-search-full-screen-2 .searchform input[type="text"] {
	grid-column: 1;
	grid-row: 1;
	min-width: 0;
	width: 100%;
	height: 48px;
	padding-inline: 16px 42px;
	color: #302b2b;
	background: transparent;
	border: 0 !important;
	border-radius: 999px 0 0 999px;
	box-shadow: none !important;
	font-size: 16px;
}

.wd-search-full-screen-2 .searchform input[type="text"]:focus {
	box-shadow: none;
}

.wd-search-full-screen-2 .searchsubmit {
	position: relative;
	grid-column: 2;
	grid-row: 1;
	inset: auto;
	width: 48px;
	height: 48px;
	min-height: 48px;
	color: #fff;
	background: #b6285a;
	border-radius: 50%;
}

.wd-search-full-screen-2 .searchsubmit:hover {
	color: #fff;
	background: #8f2047;
}

.wd-search-full-screen-2 .wd-clear-search {
	inset-inline-end: 62px;
}

.wd-search-full-screen-2 .wd-close-search.wd-style-icon {
	top: 16px;
	inset-inline-end: 16px;
	--wd-action-icon-size: 20px;
}

.wd-search-full-screen-2 .wd-close-search > a {
	width: 44px;
	height: 44px;
	color: #b6285a;
	background: rgba(255, 255, 255, .86);
	border: 1px solid rgba(182, 40, 90, .18);
	border-radius: 50%;
	box-shadow: 0 8px 24px rgba(48, 43, 43, .08);
}

.wd-search-full-screen-2 .wd-search-area {
	order: 1;
	margin-bottom: 26px;
	text-align: left;
}

.kaiti-search-intro__eyebrow {
	margin: 0 0 10px;
	color: #b6285a;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.kaiti-search-intro h2 {
	margin: 0 0 10px;
	color: #302b2b;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(30px, 8vw, 42px);
	font-weight: 400;
	line-height: 1.03;
}

.kaiti-search-intro h2 em {
	color: #b6285a;
	font-weight: 400;
}

.kaiti-search-intro__copy {
	max-width: 560px;
	margin: 0;
	color: #6b6262;
	font-size: 14px;
	line-height: 1.55;
}

.kaiti-search-shortcuts {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 20px;
}

.kaiti-search-shortcuts > span {
	flex: 1 0 100%;
	color: #6b7d7d;
	font-size: 11px;
	font-weight: 750;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.kaiti-search-shortcuts > a {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 7px 13px;
	color: #344b4a;
	background: rgba(255, 255, 255, .82);
	border: 1px solid rgba(107, 125, 125, .18);
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

.kaiti-search-shortcuts > a:is(:hover, :focus-visible) {
	color: #fff;
	background: #b6285a;
	border-color: #b6285a;
	outline: none;
}

.wd-search-full-screen-2 .wd-search-results {
	order: 3;
}

.wd-search-full-screen-2 .wd-search-results:not(:empty) {
	padding-top: 18px;
	border-top: 1px solid rgba(182, 40, 90, .14);
}

/* Keep WoodMart's native AJAX search, but present mobile products as compact cards. */
@media (max-width: 576px) {
	.wd-search-full-screen-2 {
		--wd-search-sp: 18px;
	}

	.wd-search-full-screen-2 .wd-search-results:not(:empty) {
		padding-top: 14px;
	}

	.wd-search-full-screen-2 .wd-search-suggestions .wd-search-title {
		margin-bottom: 12px;
		color: #6b7d7d;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: .1em;
		text-transform: uppercase;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-categories {
		gap: 7px;
		margin-bottom: 18px;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-categories .wd-suggestion {
		flex: 0 1 auto;
		min-height: 34px;
		padding: 7px 11px;
		color: #344b4a;
		background: rgba(255, 255, 255, .82);
		border: 1px solid rgba(107, 125, 125, .18);
		border-radius: 999px;
		font-size: 12px;
		line-height: 1.25;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-product {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		align-items: stretch;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-product .wd-suggestion {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		min-width: 0;
		padding: 8px 8px 10px;
		background: rgba(255, 255, 255, .94);
		border: 1px solid rgba(182, 40, 90, .12);
		border-radius: 15px;
		box-shadow: 0 10px 26px rgba(48, 43, 43, .07);
		line-height: 1.35;
		overflow: hidden;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-product .wd-suggestion-thumb {
		flex: 0 0 auto;
		width: 100%;
		margin: 0 0 9px;
		aspect-ratio: 1 / 1;
		background: #faf6f2;
		border-radius: 11px;
		overflow: hidden;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-product .wd-suggestion-thumb img {
		display: block;
		width: 100%;
		height: 100%;
		border-radius: 0;
		object-fit: contain;
		object-position: center;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-product .wd-suggestion-content {
		display: flex;
		flex: 1 1 auto;
		flex-direction: column;
		min-width: 0;
		width: 100%;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-product .wd-entities-title {
		display: -webkit-box;
		min-height: 3.9em;
		margin: 0;
		color: #302b2b;
		font-family: inherit;
		font-size: 12px;
		font-weight: 700;
		line-height: 1.3;
		letter-spacing: 0;
		text-transform: none;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
	}

	.wd-search-full-screen-2 .wd-suggestions-group.wd-type-product .price {
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
		gap: 2px 5px;
		margin: auto 0 0;
		padding-top: 8px;
		color: #b6285a;
		font-size: 13px;
		font-weight: 800;
		line-height: 1.3;
	}

	.wd-search-full-screen-2 .wd-all-results {
		min-height: 44px;
		margin-top: 16px;
		padding: 12px 18px;
		color: #fff;
		background: #b6285a;
		border: 0;
		border-radius: 999px;
		font-size: 11px;
		line-height: 1.35;
	}
}

@media (max-width: 1024px) {
	.wd-search-full-screen-2 {
		align-items: flex-start;
		padding: max(82px, env(safe-area-inset-top)) 0 24px;
	}

	.wd-search-full-screen-2 > .container {
		max-height: calc(100dvh - 106px);
	}
}

@media (max-width: 380px) {
	.whb-header .whb-general-header > .container {
		padding-inline: 6px;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) {
		gap: 0;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) > .wd-tools-element > a {
		width: 36px;
		height: 42px;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) > .wd-tools-element {
		--wd-tools-icon-base-width: 20px;
	}

	.whb-header .whb-general-header .site-logo img {
		width: 108px !important;
		max-width: 108px !important;
		height: 60px;
		max-height: 60px;
	}

	.whb-header .whb-mobile-center .site-logo {
		width: 108px;
		height: 60px;
	}

	.wd-search-full-screen-2 {
		padding-top: max(72px, env(safe-area-inset-top));
	}

	.kaiti-search-intro h2 {
		font-size: 28px;
	}

	.kaiti-search-shortcuts {
		gap: 6px;
	}

	.kaiti-search-shortcuts > a {
		min-height: 34px;
		padding-inline: 11px;
		font-size: 11px;
	}
}

@media (max-width: 340px) {
	.whb-header .whb-general-header > .container {
		padding-inline: 4px;
	}

	.whb-header :is(.whb-mobile-left, .whb-mobile-right) > .wd-tools-element > a {
		width: 34px;
	}

	.whb-header .whb-general-header .site-logo img {
		width: 100px !important;
		max-width: 100px !important;
		height: 58px;
		max-height: 58px;
	}

	.whb-header .whb-mobile-center .site-logo {
		width: 100px;
		height: 58px;
	}
}

/* Pixel-matched left product drawer from the original Kaiti theme. */
.kaiti-drawer-overlay {
	position: fixed;
	z-index: 998;
	inset: 0;
	visibility: hidden;
	background: rgba(48, 43, 43, .08);
	opacity: 0;
	transition: opacity .22s ease, visibility .22s ease;
}

.kaiti-drawer-overlay.is-open {
	visibility: visible;
	opacity: 1;
}

.kaiti-products-drawer {
	position: fixed;
	z-index: 999;
	inset: 0 auto 0 0;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	width: min(100%, 390px);
	padding: 0 18px 20px;
	color: #fff;
	background: #b6285a;
	box-shadow: 20px 0 50px rgba(48, 43, 43, .16);
	visibility: hidden;
	pointer-events: none;
	transform: translateX(-100%);
	transition: transform .25s ease, visibility .25s ease;
}

.kaiti-products-drawer.is-open,
body.kaiti-products-drawer-open .kaiti-products-drawer {
	visibility: visible;
	pointer-events: auto;
	transform: translateX(0);
}

body.kaiti-products-drawer-open {
	overflow: hidden;
}

.admin-bar .kaiti-products-drawer,
.admin-bar .kaiti-drawer-overlay {
	top: 32px;
}

.admin-bar .kaiti-products-drawer {
	height: calc(100vh - 32px);
}

.kaiti-products-drawer__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 68px;
}

.kaiti-products-drawer__top h2 {
	margin: 0;
	color: #fff8ef;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 22px;
	font-style: italic;
	font-weight: 700;
	line-height: 1;
}

.kaiti-products-drawer__top button {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	color: #fff;
	background: rgba(255, 255, 255, .12);
	border: 0;
	border-radius: 50%;
	font-size: 20px;
}

.kaiti-products-drawer__top button:hover {
	color: #fff;
	background: rgba(255, 255, 255, .24);
}

.kaiti-products-drawer__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-content: start;
	gap: 10px;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 1px 3px 8px;
	scrollbar-color: #888 #fff;
	scrollbar-width: auto;
}

.kaiti-products-drawer__grid a {
	position: relative;
	display: grid;
	min-height: 108px;
	align-content: center;
	justify-items: center;
	gap: 8px;
	padding: 15px 9px;
	color: #302b2b;
	background: #fff;
	border: 1px solid rgba(107, 125, 125, .18);
	border-radius: 14px;
	box-shadow: 0 4px 0 rgba(107, 125, 125, .1);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.25;
	text-align: center;
}

.kaiti-products-drawer__grid a:hover {
	color: #b6285a;
	border-color: rgba(182, 40, 90, .35);
	transform: translateY(-2px);
}

.kaiti-products-drawer__item--utility {
	background: #fff8ef !important;
	border-color: rgba(182, 40, 90, .25) !important;
}

.kaiti-products-drawer__item--sale {
	color: #fff !important;
	background: #6b7d7d !important;
	border-color: #6b7d7d !important;
}

.kaiti-products-drawer__item--sale :is(.kaiti-products-drawer__icon, .kaiti-products-drawer__arrow) {
	color: #fff;
}

.kaiti-products-drawer__icon {
	color: #c42b61;
	font-size: 21px;
}

.kaiti-products-drawer__arrow {
	position: absolute;
	right: 11px;
	bottom: 10px;
	color: #c42b61;
	font-size: 14px;
}

.kaiti-products-drawer__motto {
	margin: 16px 2px 0;
	color: rgba(255, 248, 239, .88);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 18px;
	font-style: italic;
	font-weight: 700;
	line-height: 1.08;
}

/* Native WoodMart cart drawer with the exact Kaiti visual treatment. */
.cart-widget-side.wd-side-hidden {
	--wd-side-hidden-w: 420px;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr);
	width: min(100%, 420px);
	padding: 25px 30px 29px;
	color: #302b2b;
	background: #fff8ef;
	box-shadow: -20px 0 50px rgba(48, 43, 43, .15);
}

.cart-widget-side .wd-heading {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 44px;
	grid-template-rows: 17px 54px;
	align-items: start;
	min-height: 88px;
	padding: 0;
	border: 0;
}

.cart-widget-side .wd-heading::before {
	grid-area: 1 / 1;
	color: #b6285a;
	content: "ΤΟ ΚΑΛΑΘΙ ΣΟΥ";
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .16em;
	line-height: 1;
}

.cart-widget-side .wd-heading::after {
	grid-area: 2 / 1;
	color: #302b2b;
	content: "Μικρές";
	font-family: Georgia, "Times New Roman", serif;
	font-size: 44px;
	font-weight: 400;
	letter-spacing: -.04em;
	line-height: 1.05;
}

.cart-widget-side .wd-heading > .title {
	z-index: 1;
	grid-area: 2 / 1;
	margin: 0 0 0 135px;
	font-size: 0;
	line-height: 1;
}

.cart-widget-side .wd-heading > .title::after {
	color: #b6285a;
	content: "χαρές.";
	font-family: Georgia, "Times New Roman", serif;
	font-size: 44px;
	font-style: italic;
	font-weight: 400;
	letter-spacing: -.04em;
	line-height: 1.05;
}

.cart-widget-side .close-side-widget {
	grid-area: 1 / 2 / 3 / 3;
	align-self: start;
	justify-self: end;
}

.cart-widget-side .close-side-widget > a {
	width: 44px;
	height: 44px;
	padding: 0;
}

.cart-widget-side .close-side-widget .wd-action-text {
	display: none;
}

.cart-widget-side .widget_shopping_cart,
.cart-widget-side .widget_shopping_cart_content,
.cart-widget-side .shopping-cart-widget-body,
.cart-widget-side .wd-scroll,
.cart-widget-side .wd-scroll-content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 0;
}

.cart-widget-side .widget_shopping_cart {
	overflow: hidden;
	margin-bottom: 0;
}

.cart-widget-side .wd-empty-mini-cart {
	position: relative;
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	max-width: none;
	padding: 0 !important;
}

.cart-widget-side .wd-empty-mini-cart::before {
	display: block;
	width: 155px;
	height: 155px;
	margin-top: 20vh;
	margin-bottom: 24px;
	background:
		repeating-radial-gradient(ellipse at 50% 50%, transparent 0 6px, rgba(255, 255, 255, .24) 7px 8px),
		#b6285a;
	border: 18px solid #f4dce5;
	border-radius: 50%;
	box-shadow: inset -12px -14px 20px rgba(0, 0, 0, .1);
	box-sizing: border-box;
	content: "";
}

.cart-widget-side .wd-empty-mini-cart::after {
	position: absolute;
	top: calc(20vh + 112px);
	left: calc(50% + 45px);
	width: 80px;
	height: 45px;
	border-bottom: 2px dashed #c3275c;
	border-radius: 50%;
	content: "";
	transform: rotate(-18deg);
}

.cart-widget-side .woocommerce-mini-cart__empty-message {
	max-width: 300px;
	margin: 0 0 auto;
	color: transparent;
	font-size: 0;
	text-align: center;
}

.cart-widget-side .woocommerce-mini-cart__empty-message::after {
	display: block;
	color: #776a64;
	content: "Το καλάθι σου περιμένει την πρώτη δημιουργική επιλογή.";
	font-family: Georgia, "Times New Roman", serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.45;
}

.cart-widget-side .wd-empty-mini-cart .wc-backward {
	order: 3;
	width: 100% !important;
	max-width: none !important;
	min-height: 52px;
	margin-top: auto;
	margin-inline: 0 !important;
	padding: 0 24px;
	color: #fff;
	background: #c3275c;
	border-radius: 999px;
	font-size: 0;
}

.cart-widget-side .wd-empty-mini-cart .wc-backward::before {
	content: "ΣΥΝΕΧΙΣΕ ΤΗ ΒΟΛΤΑ";
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .02em;
}

.cart-widget-side .wd-empty-mini-cart .wc-backward::after {
	margin-left: 10px;
	content: "\f35d";
	font-family: "Font Awesome 7 Free";
	font-size: 12px;
	font-weight: 900;
}

.cart-widget-side .shopping-cart-widget-footer.wd-cart-empty {
	display: none;
}

.cart-widget-side .woocommerce-mini-cart-item .cart-info > div.quantity {
	display: inline-flex;
	align-items: center;
	width: 104px;
	min-height: 36px;
	margin-top: 9px;
	overflow: hidden;
	background: #fff;
	border: 1px solid rgba(182, 40, 90, .2);
	border-radius: 999px;
}

.cart-widget-side .woocommerce-mini-cart-item .cart-info > div.quantity :is(.minus, .plus, .qty) {
	min-height: 34px;
	padding: 0;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.cart-widget-side .woocommerce-mini-cart-item .cart-info > div.quantity :is(.minus, .plus) {
	flex: 0 0 32px;
	width: 32px;
	color: #b6285a;
	font-weight: 800;
}

.cart-widget-side .woocommerce-mini-cart-item .cart-info > div.quantity .qty {
	flex: 1 1 auto;
	min-width: 38px;
	color: #302b2b;
	font-size: 13px;
	font-weight: 700;
}

.cart-widget-side .kaiti-mini-cart-continue {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	margin: 12px 0 10px;
	padding: 0 20px;
	color: #b6285a;
	border: 1px solid rgba(182, 40, 90, .42);
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .02em;
	text-transform: uppercase;
}

.cart-widget-side .kaiti-mini-cart-continue:is(:hover, :focus-visible) {
	color: #fff;
	background: #b6285a;
	border-color: #b6285a;
}

.wd-close-side.wd-close-side-opened {
	background-color: rgba(48, 43, 43, .16);
}

@media (max-width: 782px) {
	.admin-bar .kaiti-products-drawer,
	.admin-bar .kaiti-drawer-overlay {
		top: 46px;
	}

	.admin-bar .kaiti-products-drawer {
		height: calc(100vh - 46px);
	}
}

footer.wd-footer.footer-container {
	padding: 0;
	color: #fff8ef;
	background-color: #4c5f60 !important;
}

footer.wd-footer.footer-container > .main-footer {
	width: 100%;
	max-width: none;
	padding: 0;
}

/*
 * Exact global copy of the original footer from http://localhost/kaiti/.
 * WoodMart supplies only the global placement and editable HTML Block.
 */
.kaiti-static-footer {
	width: 100%;
	padding-block: 58px 28px;
	color: #fff;
	background: #4c5f60;
}

.kaiti-static-footer > .shell {
	width: min(calc(100% - 32px), 1180px);
	margin-inline: auto;
}

.kaiti-static-footer .footer-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 38px 24px;
}

.kaiti-static-footer .footer-brand,
.kaiti-static-footer .footer-contact {
	grid-column: 1 / -1;
}

.kaiti-static-footer p {
	margin-bottom: 0;
}

.kaiti-static-footer p:empty {
	display: none;
}

.kaiti-static-footer .brand--footer .brand__logo {
	width: 180px;
	aspect-ratio: 3 / 2;
	object-fit: contain;
	object-position: left center;
}

.kaiti-static-footer .footer-brand > p {
	margin: 18px 0 0;
	color: rgba(255, 255, 255, .65);
	font-size: .88rem;
}

.kaiti-static-footer .footer-heading {
	margin-bottom: 13px;
	color: #dc9bb4;
	font-family: "Trebuchet MS", Arial, sans-serif;
	font-size: .875rem;
	font-weight: 700;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.kaiti-static-footer .footer-grid > div:not(.footer-brand) > a,
.kaiti-static-footer .footer-grid > div:not(.footer-brand) > p:not(.footer-heading) > a {
	display: block;
	width: fit-content;
	min-height: 32px;
	color: rgba(255, 255, 255, .74);
	font-size: .88rem;
}

.kaiti-static-footer a:hover {
	color: #fff;
}

.kaiti-static-footer .footer-social__links {
	display: flex;
	gap: 8px;
	margin-top: 20px;
}

.kaiti-static-footer .footer-social__links a {
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, .35);
	border-radius: 50%;
	font-family: Georgia, serif;
	font-size: .95rem;
	font-weight: 700;
}

.kaiti-static-footer .footer-contact > a,
.kaiti-static-footer .footer-contact > p:not(.footer-heading) > a {
	display: block;
}

.kaiti-static-footer .footer-contact > span,
.kaiti-static-footer .footer-contact > p:not(.footer-heading) > span {
	display: block;
	margin-top: 9px;
	color: rgba(255, 255, 255, .6);
	font-size: .8rem;
	line-height: 1.5;
}

.kaiti-static-footer .footer-legal {
	display: grid;
	gap: 3px;
	margin-top: 16px;
}

.kaiti-static-footer .footer-legal a {
	min-height: 0 !important;
	color: rgba(255, 255, 255, .55) !important;
	font-size: .72rem !important;
}

/* Native WoodMart copyright row: same shell, quiet credit, no extra renderer. */
footer.wd-footer > .wd-copyrights {
	padding-block: 0;
	border-top: 1px solid rgba(255, 255, 255, .16);
	color: rgba(255, 255, 255, .74);
	font-size: .75rem;
	line-height: 1.6;
}

footer.wd-footer > .wd-copyrights > .container {
	width: min(calc(100% - 32px), 1180px);
	max-width: none;
	margin-inline: auto;
	padding: 16px 0;
	gap: 8px 24px;
}

footer.wd-footer > .wd-copyrights a {
	color: inherit;
}

footer.wd-footer > .wd-copyrights a:hover {
	color: #fff;
}

footer.wd-footer > .wd-copyrights a:focus-visible {
	outline: 2px solid #dc9bb4;
	outline-offset: 4px;
}

.wd-copyrights .kaiti-agency-credit a {
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, .3);
	text-underline-offset: 3px;
}

@media (max-width: 767px) {
	footer.wd-footer > .wd-copyrights > .container {
		grid-template-columns: minmax(0, 1fr);
		text-align: center;
	}

	footer.wd-footer > .wd-copyrights .wd-col-end {
		text-align: center;
	}
}

@media (min-width: 620px) {
	.kaiti-static-footer .footer-grid {
		grid-template-columns: 1.6fr 1fr 1.2fr 1fr;
	}

	.kaiti-static-footer .footer-brand,
	.kaiti-static-footer .footer-contact {
		grid-column: auto;
	}
}

@media (min-width: 1080px) {
	.kaiti-static-footer .footer-grid {
		gap: 75px;
	}
}

/* Full-width company story, built on the native WordPress page and WoodMart shell. */
.kaiti-company-page {
	--kaiti-company-ink: #302b2b;
	--kaiti-company-berry: #b6285a;
	--kaiti-company-green: #5e7473;
	display: grid;
	gap: clamp(48px, 7vw, 88px);
	color: var(--kaiti-company-ink);
}

.kaiti-company-page :is(h2, h3, p) {
	margin-top: 0;
}

.kaiti-company-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
	overflow: hidden;
	background:
		radial-gradient(circle at 88% 12%, rgba(220, 155, 180, .2), transparent 32%),
		#fff8f0;
	border: 1px solid rgba(182, 40, 90, .1);
	border-radius: 28px;
	box-shadow: 0 24px 60px rgba(48, 43, 43, .08);
}

.kaiti-company-hero__media {
	min-height: 470px;
	background: #f1e5dc;
}

.kaiti-company-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.kaiti-company-hero__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(34px, 5vw, 66px);
}

.kaiti-company-eyebrow {
	margin-bottom: 14px;
	color: var(--kaiti-company-berry);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.kaiti-company-page h2 {
	color: var(--kaiti-company-ink);
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(32px, 4.1vw, 55px);
	font-weight: 400;
	line-height: 1.04;
}

.kaiti-company-hero h2 {
	margin-bottom: 22px;
}

.kaiti-company-page h2 em {
	color: var(--kaiti-company-berry);
	font-weight: 400;
}

.kaiti-company-lead {
	margin-bottom: 16px;
	color: #4e4747;
	font-size: clamp(17px, 1.5vw, 20px);
	line-height: 1.55;
}

.kaiti-company-hero__content > p:not(.kaiti-company-eyebrow, .kaiti-company-lead) {
	margin-bottom: 0;
	color: #6b6262;
	font-size: 15px;
	line-height: 1.7;
}

.kaiti-company-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 28px;
}

.kaiti-company-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 20px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
	transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease;
}

.kaiti-company-button:is(:hover, :focus-visible) {
	transform: translateY(-1px);
	outline: none;
}

.kaiti-company-button--primary {
	color: #fff;
	background: var(--kaiti-company-berry);
}

.kaiti-company-button--primary:is(:hover, :focus-visible) {
	color: #fff;
	background: #8f2047;
}

.kaiti-company-button--secondary {
	color: #344b4a;
	background: transparent;
	border-color: rgba(94, 116, 115, .32);
}

.kaiti-company-button--secondary:is(:hover, :focus-visible) {
	color: #fff;
	background: var(--kaiti-company-green);
	border-color: var(--kaiti-company-green);
}

.kaiti-company-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.kaiti-company-facts > div {
	padding: 26px;
	background: #fff;
	border: 1px solid rgba(94, 116, 115, .15);
	border-radius: 18px;
}

.kaiti-company-facts strong,
.kaiti-company-facts span {
	display: block;
}

.kaiti-company-facts strong {
	margin-bottom: 7px;
	color: var(--kaiti-company-berry);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 25px;
	font-weight: 400;
}

.kaiti-company-facts span {
	color: #6b6262;
	font-size: 13px;
	line-height: 1.5;
}

.kaiti-company-story {
	display: grid;
	grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
	gap: clamp(34px, 6vw, 84px);
	align-items: start;
}

.kaiti-company-story__intro {
	position: sticky;
	top: calc(var(--wd-admin-bar-h, 0px) + 110px);
}

.kaiti-company-story__intro h2 {
	margin-bottom: 20px;
}

.kaiti-company-story__intro > p:last-child {
	margin-bottom: 0;
	color: #6b6262;
	font-size: 16px;
	line-height: 1.7;
}

.kaiti-company-values {
	display: grid;
	gap: 12px;
}

.kaiti-company-values article {
	display: grid;
	grid-template-columns: 44px 1fr;
	padding: 25px;
	background: #fff8f0;
	border-radius: 18px;
}

.kaiti-company-values article > span {
	grid-column: 1;
	grid-row: 1 / span 2;
	color: #d786a5;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .08em;
}

.kaiti-company-values h3 {
	grid-column: 2;
	grid-row: 1;
	margin-bottom: 7px;
	color: #344b4a;
	font-size: 17px;
	font-weight: 800;
}

.kaiti-company-values p {
	grid-column: 2;
	grid-row: 2;
	margin-bottom: 0;
	color: #6b6262;
	font-size: 14px;
	line-height: 1.65;
}

.kaiti-company-closing {
	padding: clamp(38px, 6vw, 72px);
	color: #fff;
	background:
		radial-gradient(circle at 85% 20%, rgba(255, 255, 255, .12), transparent 30%),
		var(--kaiti-company-green);
	border-radius: 28px;
	text-align: center;
}

.kaiti-company-closing .kaiti-company-eyebrow,
.kaiti-company-closing h2 {
	color: #fff;
}

.kaiti-company-closing h2 {
	max-width: 720px;
	margin: 0 auto 16px;
}

.kaiti-company-closing > p:not(.kaiti-company-eyebrow) {
	max-width: 610px;
	margin: 0 auto 26px;
	color: rgba(255, 255, 255, .78);
	font-size: 16px;
	line-height: 1.65;
}

.kaiti-company-button--light {
	color: var(--kaiti-company-green);
	background: #fffaf3;
}

.kaiti-company-button--light:is(:hover, :focus-visible) {
	color: var(--kaiti-company-berry);
	background: #fff;
}

@media (max-width: 900px) {
	.kaiti-company-hero,
	.kaiti-company-story {
		grid-template-columns: 1fr;
	}

	.kaiti-company-hero__media {
		min-height: 0;
		aspect-ratio: 16 / 9;
	}

	.kaiti-company-story__intro {
		position: static;
	}
}

@media (max-width: 640px) {
	.kaiti-company-page {
		gap: 42px;
	}

	.kaiti-company-hero,
	.kaiti-company-closing {
		border-radius: 20px;
	}

	.kaiti-company-hero__content {
		padding: 28px 22px 30px;
	}

	.kaiti-company-page h2 {
		font-size: 34px;
	}

	.kaiti-company-actions,
	.kaiti-company-actions .kaiti-company-button {
		width: 100%;
	}

	.kaiti-company-facts {
		grid-template-columns: 1fr;
	}

	.kaiti-company-facts > div,
	.kaiti-company-values article {
		padding: 21px;
	}

	.kaiti-company-closing {
		padding: 38px 22px;
	}
}
.kaiti-products-drawer__icon--svg {
	display: block;
	width: 27px;
	height: 27px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}
