/* ==========================================================================
   Multan Khussa Mehal — storefront styles
   Design tokens come from theme.json (--wp--preset--*). This file adds layout
   and components that theme.json can't express.
   ========================================================================== */

:root {
	--mkh-primary: var(--wp--preset--color--primary);
	--mkh-gold-deep: var(--wp--preset--color--gold-deep);
	--mkh-primary-deep: var(--wp--preset--color--primary-deep);
	--mkh-gold: var(--wp--preset--color--gold);
	--mkh-gold-light: var(--wp--preset--color--gold-light);
	--mkh-ivory: var(--wp--preset--color--ivory);
	--mkh-sand: var(--wp--preset--color--sand);
	--mkh-line: var(--wp--preset--color--line);
	--mkh-ink: var(--wp--preset--color--charcoal);
	--mkh-stone: var(--wp--preset--color--stone);
	--mkh-serif: var(--wp--preset--font-family--heading);
	--mkh-sans: var(--wp--preset--font-family--body);
	--mkh-wide: 1320px;
	--mkh-gutter: clamp(1rem, 4vw, 2.5rem);
	--mkh-pad: max(var(--mkh-gutter), calc((100% - var(--mkh-wide)) / 2));
	--mkh-section-y: clamp(3.5rem, 7vw, 6.5rem);
	--mkh-header-h: 84px;
	--mkh-ease: cubic-bezier(.2, .7, .2, 1);
}

/* ---------- Base ---------- */
html { scroll-behavior: smooth; }
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}
::selection { background: var(--mkh-primary); color: var(--mkh-ivory); }
img { max-width: 100%; height: auto; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
.wp-site-blocks { padding: 0; overflow-x: clip; }
h1 em, h2 em, h3 em { font-style: italic; font-weight: 500; color: var(--mkh-gold-deep); }
.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;
}
a, button { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 2px solid var(--mkh-gold); outline-offset: 3px; }

.mkh-icon { flex: none; display: inline-block; vertical-align: middle; }

/* Eyebrow label */
.mkh-eyebrow {
	display: inline-flex; align-items: center; gap: .75rem;
	margin: 0 0 .9rem;
	font-family: var(--mkh-sans); font-size: .75rem; font-weight: 500;
	letter-spacing: .28em; text-transform: uppercase; color: var(--mkh-gold);
}
.mkh-eyebrow::before { content: ""; width: 28px; height: 1px; background: currentColor; }
.mkh-eyebrow a { color: inherit; }

/* ---------- Buttons ---------- */
.mkh-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: .6rem;
	padding: 1rem 1.9rem;
	border: 1px solid transparent;
	font-family: var(--mkh-sans); font-size: .78rem; font-weight: 500;
	letter-spacing: .16em; text-transform: uppercase; line-height: 1.2;
	text-decoration: none; cursor: pointer;
	transition: background-color .3s var(--mkh-ease), color .3s var(--mkh-ease), border-color .3s var(--mkh-ease), transform .3s var(--mkh-ease);
}
.mkh-btn:hover { transform: translateY(-1px); }
.mkh-btn--primary { background: var(--mkh-primary); color: var(--mkh-ivory); }
.mkh-btn--primary:hover { background: var(--mkh-primary-deep); color: var(--mkh-ivory); }
.mkh-btn--outline { border-color: var(--mkh-primary); color: var(--mkh-primary); }
.mkh-btn--outline:hover { background: var(--mkh-primary); color: var(--mkh-ivory); }
.mkh-btn--light { background: var(--mkh-ivory); color: var(--mkh-primary-deep); }
.mkh-btn--light:hover { background: var(--mkh-gold-light); color: var(--mkh-primary-deep); }
.mkh-btn--ghost { border-color: rgba(251, 247, 240, .6); color: var(--mkh-ivory); }
.mkh-btn--ghost:hover { background: var(--mkh-ivory); color: var(--mkh-primary-deep); }
.mkh-btn--gold { background: var(--mkh-gold); color: var(--mkh-primary-deep); }
.mkh-btn--gold:hover { background: var(--mkh-gold-light); color: var(--mkh-primary-deep); }
.mkh-btn-row { display: flex; flex-wrap: wrap; gap: .85rem; margin-top: 2rem; }
.mkh-btn-row > * { margin: 0 !important; }

.mkh-link-btn {
	display: inline-flex; align-items: center; gap: .45rem;
	padding: 0; border: 0; background: none; cursor: pointer;
	font: 500 .8rem/1.2 var(--mkh-sans); letter-spacing: .08em; text-transform: uppercase;
	color: var(--mkh-ink); text-decoration: underline; text-decoration-color: var(--mkh-line); text-underline-offset: 5px;
}
.mkh-link-btn:hover { color: var(--mkh-primary); text-decoration-color: var(--mkh-gold); }
.mkh-link-btn .mkh-icon { color: var(--mkh-gold); }

/* ==========================================================================
   Header
   ========================================================================== */
.mkh-site-header { position: sticky; top: 0; z-index: 50; }
.admin-bar .mkh-site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .mkh-site-header { top: 0; } }

.mkh-announcement {
	background: var(--mkh-primary-deep); color: var(--mkh-ivory);
	font-size: .72rem; letter-spacing: .14em; text-transform: uppercase;
	overflow: hidden;
}
.mkh-announcement p {
	display: flex; justify-content: center; gap: 2.5rem;
	margin: 0; padding: .6rem var(--mkh-gutter); text-align: center;
}
.mkh-announcement span { display: inline-flex; align-items: center; gap: 2.5rem; white-space: nowrap; }
.mkh-announcement span + span::before { content: "✦"; color: var(--mkh-gold); font-size: .55rem; margin-left: -1.25rem; margin-right: -1.25rem; }

.mkh-header {
	position: relative;
	border-bottom: 1px solid var(--mkh-line);
	transition: box-shadow .3s var(--mkh-ease);
}
/* Blur lives on a pseudo-element: backdrop-filter on the header itself would
   trap the full-screen mobile menu (position: fixed) inside the header. */
.mkh-header::before {
	content: ""; position: absolute; inset: 0; z-index: -1;
	background: rgba(251, 247, 240, .94);
	-webkit-backdrop-filter: saturate(160%) blur(12px);
	backdrop-filter: saturate(160%) blur(12px);
}
.is-scrolled .mkh-header { box-shadow: 0 8px 24px -18px rgba(12, 10, 9, .45); }
.mkh-header__inner {
	display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1rem;
	min-height: var(--mkh-header-h);
	padding-inline: var(--mkh-pad);
}
.mkh-header__inner > * { margin: 0 !important; }

/* Logo */
.mkh-logo { display: inline-flex; align-items: center; gap: .7rem; color: var(--mkh-primary); text-decoration: none; }
.mkh-logo:hover { color: var(--mkh-primary); }
.mkh-logo__seal { display: block; width: 56px; height: 56px; flex: none; filter: drop-shadow(0 2px 6px rgba(12, 10, 9, .18)); }
.mkh-logo--light .mkh-logo__seal { width: 84px; height: 84px; }
.mkh-logo__text { display: flex; flex-direction: column; line-height: 1; }
.mkh-logo__top { font: 500 .62rem/1 var(--mkh-sans); letter-spacing: .5em; text-transform: uppercase; color: var(--mkh-stone); margin-bottom: .3rem; padding-left: .1em; }
.mkh-logo__main { font: 600 1.7rem/1 var(--mkh-serif); letter-spacing: .01em; white-space: nowrap; }
.mkh-logo--light { color: var(--mkh-ivory); }
.mkh-logo--light:hover { color: var(--mkh-ivory); }
.mkh-logo--light .mkh-logo__top { color: var(--mkh-gold-light); }

/* Navigation */
.mkh-nav .wp-block-navigation__container { gap: 2rem; }
.mkh-nav .wp-block-navigation-item__content {
	position: relative; padding: .4rem 0; color: var(--mkh-ink);
}
.mkh-nav .wp-block-navigation-item__content::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px;
	background: var(--mkh-gold); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--mkh-ease);
}
.mkh-nav .wp-block-navigation-item__content:hover::after,
.mkh-nav .current-menu-item > .wp-block-navigation-item__content::after { transform: scaleX(1); }
.mkh-nav .wp-block-navigation__responsive-container-open { color: var(--mkh-ink); }

/* Mobile navigation overlay */
.mkh-nav .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--mkh-ivory) !important; color: var(--mkh-ink) !important;
	padding: 1.5rem var(--mkh-gutter) 2rem;
}
.mkh-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.5rem; }
.mkh-nav .is-menu-open .wp-block-navigation__container { gap: 0 !important; width: 100%; align-items: stretch !important; }
.mkh-nav .is-menu-open .wp-block-navigation-item { border-bottom: 1px solid var(--mkh-line); width: 100%; }
.mkh-nav .is-menu-open .wp-block-navigation-item__content {
	display: block; width: 100%; padding: 1.1rem 0 !important;
	font: 500 1.9rem/1.1 var(--mkh-serif); letter-spacing: 0; text-transform: none;
}
.mkh-nav .is-menu-open .wp-block-navigation-item__content::after { display: none; }

/* Header actions */
.mkh-header__actions { gap: .35rem !important; justify-content: flex-end; }
.mkh-header__actions .wp-block-search__button,
.mkh-header__actions .wc-block-customer-account a,
.mkh-header__actions .wc-block-mini-cart__button {
	display: grid; place-items: center; width: 42px; height: 42px; padding: 0 !important;
	background: none !important; border: 0 !important; color: var(--mkh-ink) !important; border-radius: 50%;
	transition: background-color .2s;
}
.mkh-header__actions .wp-block-search__button:hover,
.mkh-header__actions .wc-block-customer-account a:hover,
.mkh-header__actions .wc-block-mini-cart__button:hover { background: var(--mkh-sand) !important; }
.mkh-header__actions svg { width: 22px; height: 22px; }
.mkh-search.wp-block-search__button-only .wp-block-search__inside-wrapper { border: 0; }
.mkh-search .wp-block-search__input {
	border: 1px solid var(--mkh-line) !important; background: var(--mkh-white, #fff); border-radius: 0;
	font: .9rem var(--mkh-sans); padding: .55rem .9rem !important; min-width: 0;
}
.mkh-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__input { width: min(260px, 50vw); }
.wc-block-mini-cart__badge { background: var(--mkh-primary) !important; color: var(--mkh-ivory) !important; font-size: .62rem; font-weight: 600; min-width: 1.15rem; height: 1.15rem; border: 0 !important; }
.wc-block-mini-cart__amount { display: none; }

@media (max-width: 899px) {
	:root { --mkh-header-h: 64px; }
	.mkh-header__inner { grid-template-columns: auto 1fr auto; gap: .5rem; }
	.mkh-logo { justify-self: center; }
	.mkh-header .mkh-logo__seal { width: 42px; height: 42px; }
	.mkh-logo__main { font-size: 1.3rem; }
	.mkh-logo__top { font-size: .5rem; }
	.mkh-header__inner > .mkh-logo { justify-self: center; }
	.mkh-header__actions .wc-block-customer-account { display: none; }
	.mkh-announcement span:not(:first-child) { display: none; }
	.mkh-announcement p { animation: none; }
}
@media (max-width: 420px) {
	.mkh-header .mkh-logo__seal { width: 36px; height: 36px; }
}

/* ==========================================================================
   Sections & headings
   ========================================================================== */
.mkh-section { padding: var(--mkh-section-y) var(--mkh-pad); margin: 0; }
.mkh-section--sand { background: var(--mkh-sand); }
.mkh-section-head {
	display: flex; align-items: flex-end; justify-content: space-between; gap: 1.5rem;
	margin: 0 0 clamp(1.75rem, 3vw, 2.75rem);
}
.mkh-section-head > * { margin: 0; }
.mkh-section-head h2 { margin: 0; font-size: clamp(2rem, 3.6vw, 3rem); }
.mkh-section-head__link a {
	font-size: .78rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; white-space: nowrap;
	color: var(--mkh-ink); border-bottom: 1px solid var(--mkh-gold); padding-bottom: .3rem;
}
.mkh-section-head__link a:hover { color: var(--mkh-primary); }

/* ==========================================================================
   Home: hero
   ========================================================================== */
.mkh-hero.wp-block-cover { padding: clamp(5rem, 10vw, 8rem) var(--mkh-pad); margin: 0; }
.mkh-hero .wp-block-cover__background {
	opacity: 1 !important;
	background: linear-gradient(95deg, rgba(12, 10, 9, .9) 0%, rgba(12, 10, 9, .74) 40%, rgba(12, 10, 9, .25) 75%, rgba(12, 10, 9, .1) 100%) !important;
}
@media (max-width: 767px) {
	.mkh-hero .wp-block-cover__background { background: linear-gradient(180deg, rgba(12, 10, 9, .5) 0%, rgba(12, 10, 9, .8) 40%, rgba(12, 10, 9, .88) 100%) !important; }
	.mkh-hero .mkh-btn { flex: 1 1 auto; }
}
.mkh-hero .wp-block-cover__image-background { animation: mkh-zoom 14s var(--mkh-ease) both; }
@keyframes mkh-zoom { from { transform: scale(1.08); } to { transform: scale(1); } }
.mkh-hero .wp-block-cover__inner-container { width: 100%; max-width: var(--mkh-wide); margin: 0 auto; }
.mkh-hero__content { max-width: 640px; color: var(--mkh-ivory); animation: mkh-rise 1s .2s var(--mkh-ease) both; }
@keyframes mkh-rise { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
.mkh-hero .mkh-eyebrow { color: var(--mkh-gold-light); }
.mkh-hero__title {
	margin: 0 0 1.4rem; color: var(--mkh-ivory) !important;
	font-size: clamp(2.9rem, 6.4vw, 5.6rem) !important; line-height: .98 !important; font-weight: 500 !important;
}
.mkh-hero__title em { display: block; color: var(--mkh-gold-light); }
.mkh-hero__text { max-width: 30rem; margin: 0; font-size: clamp(1rem, 1.3vw, 1.125rem); font-weight: 300; line-height: 1.7; color: rgba(251, 247, 240, .88); }

/* Promise bar */
.mkh-usp {
	display: grid; grid-template-columns: repeat(4, 1fr);
	padding: 0 var(--mkh-pad); margin: 0;
	border-bottom: 1px solid var(--mkh-line); background: var(--mkh-ivory);
}
.mkh-usp__item { display: flex; align-items: center; gap: 1rem; padding: 1.75rem 1.25rem; margin: 0 !important; }
.mkh-usp__item + .mkh-usp__item { border-left: 1px solid var(--mkh-line); }
.mkh-usp__item .mkh-icon { color: var(--mkh-gold); }
.mkh-usp__item p { margin: 0; display: flex; flex-direction: column; line-height: 1.35; }
.mkh-usp__item strong { font-weight: 500; font-size: .95rem; }
.mkh-usp__item span { font-size: .82rem; color: var(--mkh-stone); }
@media (max-width: 1023px) {
	.mkh-usp { grid-template-columns: repeat(2, 1fr); }
	.mkh-usp__item:nth-child(3) { border-left: 0; }
	.mkh-usp__item:nth-child(n + 3) { border-top: 1px solid var(--mkh-line); }
}
@media (max-width: 600px) {
	.mkh-usp { padding: 0; }
	.mkh-usp__item { flex-direction: column; align-items: flex-start; gap: .6rem; padding: 1.25rem 1rem; }
	.mkh-usp__item strong { font-size: .85rem; }
	.mkh-usp__item span { font-size: .75rem; }
}

/* Category tiles */
.mkh-tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(.75rem, 1.5vw, 1.5rem); }
.mkh-tile {
	position: relative; display: block; aspect-ratio: 3 / 4; overflow: hidden;
	background: var(--mkh-sand); color: var(--mkh-ivory); text-decoration: none;
}
.mkh-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--mkh-ease); }
.mkh-tile::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12, 10, 9, 0) 40%, rgba(12, 10, 9, .78) 100%); }
.mkh-tile:hover img { transform: scale(1.06); }
.mkh-tile:hover { color: var(--mkh-ivory); }
.mkh-tile__body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; padding: clamp(1.25rem, 2.5vw, 2.25rem); display: flex; flex-direction: column; }
.mkh-tile__sub { font-size: .72rem; letter-spacing: .24em; text-transform: uppercase; color: var(--mkh-gold-light); }
.mkh-tile__title { font: 500 clamp(2.2rem, 3.6vw, 3.25rem)/1.05 var(--mkh-serif); margin: .35rem 0 .9rem; }
.mkh-tile__cta { display: inline-flex; align-items: center; gap: .6rem; font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; }
.mkh-tile__cta .mkh-icon { transition: transform .35s var(--mkh-ease); }
.mkh-tile:hover .mkh-tile__cta .mkh-icon { transform: translateX(6px); }
@media (max-width: 767px) {
	.mkh-tiles { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 78%; overflow-x: auto; scroll-snap-type: x mandatory; margin-inline: calc(var(--mkh-pad) * -1); padding-inline: var(--mkh-pad); scrollbar-width: none; }
	.mkh-tiles::-webkit-scrollbar { display: none; }
	.mkh-tile { scroll-snap-align: start; }
}

/* ==========================================================================
   Product cards & grids
   ========================================================================== */
.mkh-products { margin: 0 !important; }
.mkh-products .wc-block-product-template {
	display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(2rem, 3vw, 3rem) clamp(.75rem, 1.6vw, 1.5rem);
	margin: 0 !important; padding: 0 !important; list-style: none;
}
.mkh-shop__grid .mkh-products .wc-block-product-template { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mkh-products .wc-block-product-template > li { width: auto !important; margin: 0 !important; text-align: left; display: flex; flex-direction: column; }
.mkh-products .wc-block-product-template > li > * { margin-block: 0; }
@media (max-width: 1023px) {
	.mkh-products .wc-block-product-template,
	.mkh-shop__grid .mkh-products .wc-block-product-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.mkh-card__image.wc-block-components-product-image,
.mkh-products .wc-block-components-product-image { position: relative; overflow: hidden; background: var(--mkh-sand); margin: 0 !important; aspect-ratio: 4 / 5; }
.mkh-products .wc-block-components-product-image a { display: block; height: 100%; }
.mkh-products .wc-block-components-product-image img {
	width: 100% !important; height: 100% !important; object-fit: cover !important; aspect-ratio: 4 / 5;
	transition: transform 1s var(--mkh-ease), opacity .5s var(--mkh-ease);
}
.mkh-products .wc-block-components-product-image img.mkh-card__alt { position: absolute; inset: 0; opacity: 0; }
.mkh-products li:hover .wc-block-components-product-image img { transform: scale(1.045); }
.mkh-products li:hover .wc-block-components-product-image img.mkh-card__alt { opacity: 1; }

.mkh-products .wc-block-components-product-sale-badge,
.wc-block-components-product-sale-badge {
	position: absolute; top: .8rem; left: .8rem; right: auto; z-index: 2; margin: 0 !important;
	padding: .35rem .65rem !important; border: 0 !important; border-radius: 0 !important;
	background: var(--mkh-primary) !important; color: var(--mkh-gold-light) !important;
	font: 500 .66rem/1 var(--mkh-sans) !important; letter-spacing: .16em; text-transform: uppercase;
}
.mkh-card__body { padding-top: 1rem; display: flex; flex-direction: column; gap: .3rem; flex: 1; }
.mkh-card__body > * { margin: 0 !important; }
.mkh-card__cat, .mkh-card__cat a { font-size: .68rem; letter-spacing: .2em; text-transform: uppercase; color: var(--mkh-stone); pointer-events: none; }
.mkh-card__cat .wp-block-post-terms__separator { color: var(--mkh-line); }
.mkh-card__title { font: 600 clamp(1.15rem, 1.6vw, 1.35rem)/1.2 var(--mkh-serif) !important; }
.mkh-card__title a { color: var(--mkh-ink); }
.mkh-card__title a:hover { color: var(--mkh-primary); }
.mkh-card__price, .mkh-card__price .wc-block-components-product-price { font-size: .95rem !important; font-weight: 500; color: var(--mkh-gold-deep); text-align: left !important; }
.wc-block-components-product-price del, .price del { color: var(--mkh-stone); font-weight: 400; margin-right: .4rem; opacity: .8; }
.wc-block-components-product-price ins, .price ins { text-decoration: none; }
.mkh-card__meta { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-top: .35rem !important; }
.mkh-card__sizes { font-size: .72rem; color: var(--mkh-stone); letter-spacing: .04em; }
.mkh-dots { display: flex; gap: .35rem; margin: 0; padding: 0; list-style: none; }
.mkh-dots li { width: 12px; height: 12px; border-radius: 50%; background: var(--dot); box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .12), 0 0 0 2px var(--mkh-ivory), 0 0 0 3px var(--mkh-line); }
.mkh-section--sand .mkh-dots li { box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .12), 0 0 0 2px var(--mkh-sand), 0 0 0 3px var(--mkh-line); }
@media (max-width: 600px) {
	.mkh-card__meta { flex-direction: column; align-items: flex-start; gap: .4rem; }
}

/* ==========================================================================
   Home: craft story, editorial, gallery, visit
   ========================================================================== */
.mkh-craft {
	display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(2.5rem, 6vw, 6rem); align-items: center;
	padding: var(--mkh-section-y) var(--mkh-pad); margin: 0;
}
.mkh-craft__media { position: relative; margin: 0; padding-right: 18%; padding-bottom: 12%; }
.mkh-craft__img { margin: 0 !important; }
.mkh-craft__img img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; }
.mkh-craft__img--small { position: absolute; right: 0; bottom: 0; width: 42%; border: 10px solid var(--mkh-ivory); }
.mkh-craft__img--small img { aspect-ratio: 3 / 4; }
.mkh-craft__text h2 { font-size: clamp(2.2rem, 4vw, 3.4rem); margin: 0 0 1.25rem; }
.mkh-craft__text > p { color: var(--mkh-stone); font-size: 1.05rem; max-width: 34rem; }
.mkh-steps { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem 2rem; margin: 2.25rem 0 2.5rem; padding: 0; list-style: none; }
.mkh-steps li { display: grid; grid-template-columns: auto 1fr; column-gap: .9rem; align-items: baseline; border-top: 1px solid var(--mkh-line); padding-top: 1rem; }
.mkh-steps__n { grid-row: span 2; font: 500 1.6rem/1 var(--mkh-serif); color: var(--mkh-gold); }
.mkh-steps strong { font-weight: 500; }
.mkh-steps li > span:last-child { font-size: .88rem; color: var(--mkh-stone); line-height: 1.5; }
@media (max-width: 899px) {
	.mkh-craft { grid-template-columns: 1fr; }
	.mkh-steps { grid-template-columns: 1fr; }
}

.mkh-editorial { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(.75rem, 1.5vw, 1.5rem); padding: 0 var(--mkh-pad) var(--mkh-section-y); margin: 0; }
.mkh-editorial__item.wp-block-cover { min-height: clamp(420px, 46vw, 600px) !important; padding: clamp(1.5rem, 3.5vw, 3rem); overflow: hidden; margin: 0 !important; }
.mkh-editorial__item .wp-block-cover__background { opacity: 1 !important; background: linear-gradient(180deg, rgba(12, 10, 9, 0) 35%, rgba(12, 10, 9, .82) 100%) !important; }
.mkh-editorial__item .wp-block-cover__image-background { transition: transform 1.2s var(--mkh-ease); }
.mkh-editorial__item:hover .wp-block-cover__image-background { transform: scale(1.05); }
.mkh-editorial__item .wp-block-cover__inner-container { color: var(--mkh-ivory); max-width: 26rem; }
.mkh-editorial__title { color: var(--mkh-ivory) !important; font-size: clamp(2rem, 3.4vw, 3rem) !important; font-weight: 500 !important; margin: 0 0 .6rem; }
.mkh-editorial__item p { color: rgba(251, 247, 240, .85); margin: 0 0 1.5rem; }
@media (max-width: 767px) { .mkh-editorial { grid-template-columns: 1fr; } }

.mkh-gallery { background: var(--mkh-primary-deep); color: var(--mkh-ivory); }
.mkh-gallery__head { text-align: center; max-width: 36rem; margin: 0 auto 2.5rem; }
.mkh-gallery__head h2 { color: var(--mkh-ivory); margin: 0 0 .8rem; }
.mkh-gallery__head p:not(.mkh-eyebrow) { color: rgba(251, 247, 240, .72); margin: 0; }
.mkh-gallery .mkh-eyebrow { color: var(--mkh-gold-light); }
.mkh-gallery .mkh-eyebrow::before { display: none; }
.mkh-gallery__grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: .5rem; margin: 0 calc(var(--mkh-pad) * -1 + .5rem); }
.mkh-gallery__grid figure { margin: 0 !important; aspect-ratio: 1; overflow: hidden; }
.mkh-gallery__grid a { display: block; height: 100%; }
.mkh-gallery__grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--mkh-ease), opacity .4s; }
.mkh-gallery__grid a:hover img { transform: scale(1.07); opacity: .85; }
@media (max-width: 767px) { .mkh-gallery__grid { grid-template-columns: repeat(3, 1fr); } }

.mkh-visit { display: grid; grid-template-columns: 1fr 1.2fr; margin: 0; background: var(--mkh-sand); }
.mkh-visit__card { padding: var(--mkh-section-y) clamp(1.5rem, 5vw, 5rem) var(--mkh-section-y) var(--mkh-pad); margin: 0; }
.mkh-visit__card h2 { margin: 0 0 1rem; }
.mkh-visit__card > p:not(.mkh-eyebrow) { color: var(--mkh-stone); max-width: 30rem; }
.mkh-map { margin: 0 !important; min-height: 420px; position: relative; }
.mkh-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; filter: grayscale(.35) sepia(.15) contrast(1.02); }
@media (max-width: 899px) {
	.mkh-visit { grid-template-columns: 1fr; }
	.mkh-visit__card { padding-inline: var(--mkh-gutter); }
	.mkh-map { min-height: 320px; }
}

.mkh-contact-list { list-style: none; margin: 1.75rem 0 0; padding: 0; display: grid; gap: .9rem; }
.mkh-contact-list li { display: flex; gap: .85rem; align-items: flex-start; font-size: .95rem; line-height: 1.5; }
.mkh-contact-list .mkh-icon { color: var(--mkh-gold); margin-top: .1rem; }
.mkh-contact-list a { color: inherit; }
.mkh-contact-list a:hover { color: var(--mkh-primary); }

/* ==========================================================================
   Footer
   ========================================================================== */
.mkh-site-footer { margin: 0; }
.mkh-footer { background: var(--mkh-primary-deep); color: rgba(251, 247, 240, .78); padding: 0 var(--mkh-pad); }
.mkh-footer a { color: rgba(251, 247, 240, .82); }
.mkh-footer a:hover { color: var(--mkh-gold-light); }
.mkh-footer__cta { text-align: center; padding: clamp(3.5rem, 6vw, 5rem) 0; border-bottom: 1px solid rgba(227, 200, 135, .18); margin: 0; }
.mkh-footer__cta h2 { color: var(--mkh-ivory); margin: 0 0 .8rem; }
.mkh-footer__cta p:not(.mkh-eyebrow) { max-width: 34rem; margin: 0 auto 1.75rem; }
.mkh-footer__cta .mkh-eyebrow { color: var(--mkh-gold-light); }
.mkh-footer__cta .mkh-eyebrow::before { display: none; }
.mkh-footer__grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.4fr; gap: 3rem; padding: 4rem 0 3rem; margin: 0; }
.mkh-footer__grid > * { margin: 0 !important; }
.mkh-footer__brand p { font-size: .92rem; line-height: 1.7; max-width: 22rem; margin: 1.25rem 0; }
.mkh-footer h3 { color: var(--mkh-gold-light); font: 500 .74rem/1 var(--mkh-sans); letter-spacing: .24em; text-transform: uppercase; margin: .5rem 0 1.4rem; }
.mkh-footer ul.wp-block-list { list-style: none; padding: 0; margin: 0; display: grid; gap: .75rem; font-size: .93rem; }
.mkh-footer .mkh-contact-list { margin: 0; }
.mkh-footer .mkh-contact-list .mkh-icon { color: var(--mkh-gold-light); }
.mkh-footer .mkh-contact-list li { font-size: .9rem; }
.mkh-social { display: flex; gap: .6rem; list-style: none; padding: 0; margin: 0; }
.mkh-social a { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(227, 200, 135, .35); border-radius: 50%; color: var(--mkh-ivory); transition: all .25s; }
.mkh-social a:hover { background: var(--mkh-gold); border-color: var(--mkh-gold); color: var(--mkh-primary-deep); }
.mkh-footer__bottom { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .75rem; padding: 1.5rem 0; border-top: 1px solid rgba(227, 200, 135, .18); font-size: .8rem; margin: 0; }
.mkh-footer__bottom p { margin: 0; }
@media (max-width: 1023px) { .mkh-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .mkh-footer__grid { grid-template-columns: 1fr; gap: 2.25rem; } }

/* Floating WhatsApp */
.mkh-wa-float {
	position: fixed; right: clamp(1rem, 2.5vw, 1.75rem); bottom: clamp(1rem, 2.5vw, 1.75rem); z-index: 60;
	display: inline-flex; align-items: center; gap: .6rem; height: 56px; padding: 0 15px;
	background: #1FAF55; color: #fff; border-radius: 999px; text-decoration: none;
	box-shadow: 0 12px 28px -10px rgba(16, 80, 40, .55);
	transition: transform .3s var(--mkh-ease), box-shadow .3s;
}
.mkh-wa-float:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 16px 34px -10px rgba(16, 80, 40, .6); }
.mkh-wa-float span { max-width: 0; overflow: hidden; white-space: nowrap; font-size: .85rem; font-weight: 500; transition: max-width .4s var(--mkh-ease); }
.mkh-wa-float:hover span { max-width: 10rem; }
.has-modal-open .mkh-wa-float, .mkh-filters-open .mkh-wa-float { display: none; }
/* Product pages on phones already have "Order on WhatsApp" + the sticky buy bar. */
@media (max-width: 899px) { .single-product .mkh-wa-float { display: none; } }

/* ==========================================================================
   Shop / archive
   ========================================================================== */
.mkh-archive__head { text-align: center; padding: clamp(2.5rem, 5vw, 4.5rem) var(--mkh-pad) clamp(2rem, 4vw, 3rem); background: var(--mkh-sand); margin: 0; }
.mkh-archive__head > * { margin-inline: auto; }
.mkh-archive__title { font-size: clamp(2.6rem, 5vw, 4.25rem) !important; font-weight: 500 !important; margin: .75rem 0 .5rem; }
.mkh-archive__desc { max-width: 36rem; color: var(--mkh-stone); }
.mkh-archive__desc p { margin: 0; }
.mkh-crumbs, .woocommerce-breadcrumb { font-size: .75rem !important; letter-spacing: .12em; text-transform: uppercase; color: var(--mkh-stone); }
.mkh-crumbs a { color: var(--mkh-stone); }
.mkh-crumbs a:hover { color: var(--mkh-primary); }
.mkh-crumb-sep { margin: 0 .55rem; color: var(--mkh-gold); }

.mkh-shop { padding: 0 var(--mkh-pad) var(--mkh-section-y); margin: 0; }
.mkh-shop__toolbar {
	display: flex; align-items: center; gap: 1rem; justify-content: space-between;
	padding: 1.25rem 0; margin: 0 0 2rem; border-bottom: 1px solid var(--mkh-line);
}
.mkh-shop__toolbar > * { margin: 0 !important; }
.mkh-shop__toolbar .wc-block-product-results-count { color: var(--mkh-stone); font-size: .85rem; margin-right: auto !important; }
.mkh-shop__toolbar .woocommerce-result-count { margin: 0; }
.mkh-shop__toolbar .woocommerce-ordering { margin: 0; }
.mkh-shop__toolbar select, .woocommerce-ordering select {
	appearance: none; -webkit-appearance: none;
	padding: .65rem 2.4rem .65rem 1rem; border: 1px solid var(--mkh-line); border-radius: 0;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%236F635A' stroke-width='1.5'%3E%3Cpath d='M1 1.5 6 6.5l5-5'/%3E%3C/svg%3E") no-repeat right 1rem center;
	font: .85rem var(--mkh-sans); color: var(--mkh-ink); cursor: pointer;
}
.mkh-filter-toggle {
	display: none; align-items: center; gap: .5rem; padding: .65rem 1rem; border: 1px solid var(--mkh-ink); background: none;
	font: 500 .78rem var(--mkh-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--mkh-ink); cursor: pointer;
}
.mkh-shop__body { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: clamp(2rem, 4vw, 3.5rem); margin: 0; }
.mkh-shop__body > * { margin: 0 !important; }

.mkh-filters { display: flex; flex-direction: column; gap: 0 !important; }
.mkh-filters .mkh-filter { padding: 1.4rem 0; border-bottom: 1px solid var(--mkh-line); margin: 0 !important; }
.mkh-filters .mkh-filter:first-child { padding-top: 0; }
.mkh-filters .mkh-filter[hidden], .mkh-filters .wc-block-product-filter--hidden { display: none; }
.mkh-filter__title { font: 500 .74rem/1 var(--mkh-sans) !important; letter-spacing: .22em; text-transform: uppercase; margin: 0 0 1rem !important; color: var(--mkh-ink); }
.mkh-filters .wc-block-product-filter-chips__items { display: flex; flex-wrap: wrap; gap: .45rem; }
.wc-block-product-filter-chips__item {
	display: inline-flex !important; align-items: center; gap: .45rem;
	padding: .5rem .8rem !important; border: 1px solid var(--mkh-line) !important; border-radius: 0 !important;
	background: #fff !important; color: var(--mkh-ink) !important; font: .82rem/1 var(--mkh-sans) !important; cursor: pointer;
	transition: border-color .2s, background-color .2s;
}
.wc-block-product-filter-chips__item:hover { border-color: var(--mkh-ink) !important; }
.wc-block-product-filter-chips__item[aria-checked="true"], .wc-block-product-filter-chips__item.is-selected,
.wc-block-product-filter-chips__item[aria-pressed="true"] {
	background: var(--mkh-primary) !important; border-color: var(--mkh-primary) !important; color: var(--mkh-ivory) !important;
}
/* Colour dots: inc/woocommerce.php prints .wc-block-product-filter-chips__item[value="<colour>"] { --dot } rules. */
.mkh-dot-chip::before { content: ""; width: 14px; height: 14px; border-radius: 50%; flex: none; background: var(--dot); box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15); }
.mkh-filters fieldset, .mkh-product__buy fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.wc-block-product-filter-checkbox-list__items { display: grid; gap: .55rem; }
.mkh-filters .wc-block-product-filter-checkbox-list,
.mkh-filters .wc-block-product-filter-checkbox-list__items { border: 0 !important; padding: 0 !important; background: none !important; box-shadow: none !important; }
.wc-block-product-filter-checkbox-list__label { font-size: .9rem; }
.wc-block-product-filter-checkbox-list__input-wrapper::before { border-radius: 0 !important; }
.wc-block-product-filter-checkbox-list__input:checked { background: var(--mkh-primary) !important; border-color: var(--mkh-primary) !important; }
.wc-block-product-filter-checkbox-list__show-more { color: var(--mkh-primary) !important; font-size: .8rem; }
.wc-block-product-filter-price-slider { --range-color: var(--mkh-primary); }
.mkh-filters .wc-block-product-filter-price-slider .text { display: flex; gap: .6rem; }
.mkh-filters .wc-block-product-filter-price-slider .text > * { flex: 1; min-width: 0; }
.mkh-filters .wc-block-product-filter-price-slider input[type="text"] { width: 100%; min-width: 0; }
.wc-block-product-filter-price-slider input[type="text"], .wc-block-product-filter-price-slider .text input { border-radius: 0 !important; border-color: var(--mkh-line) !important; font: .85rem var(--mkh-sans) !important; }
.wc-block-product-filter-removable-chips__item { border-radius: 0 !important; background: var(--mkh-sand) !important; border: 0 !important; font-size: .8rem; }
.wc-block-product-filter-clear-button, .wc-block-product-filters__overlay-footer .wp-element-button { border-radius: 0 !important; }
/* Woo's own mobile filter overlay button: we use our own drawer instead */
.mkh-filters .wc-block-product-filters__open-overlay, .mkh-filters .wc-block-product-filters__overlay-header { display: none !important; }
.mkh-filters .wc-block-product-filters__overlay,
.mkh-filters .wc-block-product-filters__overlay-wrapper,
.mkh-filters .wc-block-product-filters__overlay-dialog,
.mkh-filters .wc-block-product-filters__overlay-content { position: static !important; display: block !important; inset: auto !important; width: auto !important; height: auto !important; background: none !important; padding: 0 !important; transform: none !important; opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; box-shadow: none !important; }
.mkh-filters .wc-block-product-filters__overlay-footer { display: none !important; }

.mkh-pagination { margin-top: 3.5rem !important; gap: .4rem; font-size: .9rem; }
.mkh-pagination .page-numbers, .mkh-pagination a { display: inline-grid; place-items: center; min-width: 42px; height: 42px; padding: 0 .75rem; border: 1px solid var(--mkh-line); color: var(--mkh-ink); }
.mkh-pagination .page-numbers.current { background: var(--mkh-primary); border-color: var(--mkh-primary); color: var(--mkh-ivory); }
.mkh-empty { text-align: center; padding: 3rem 1rem; }

@media (max-width: 899px) {
	.mkh-filter-toggle { display: inline-flex; }
	.mkh-shop__body { grid-template-columns: 1fr; }
	.mkh-shop__filters {
		position: fixed; inset: 0 auto 0 0; z-index: 100; width: min(360px, 88vw);
		padding: 1.5rem 1.5rem 2rem; overflow-y: auto; background: var(--mkh-ivory);
		transform: translateX(-102%); transition: transform .4s var(--mkh-ease);
		box-shadow: 20px 0 50px -30px rgba(0, 0, 0, .5);
	}
	.mkh-shop__filters.is-open { transform: none; }
	.mkh-shop__toolbar .wc-block-product-results-count { display: none; }
}
.mkh-filters-backdrop { position: fixed; inset: 0; z-index: 99; background: rgba(31, 26, 23, .45); opacity: 0; pointer-events: none; transition: opacity .3s; }
.mkh-filters-backdrop.is-open { opacity: 1; pointer-events: auto; }
.mkh-filters-close { display: none; }
@media (max-width: 899px) {
	.mkh-filters-close { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.25rem; font: 500 1.6rem var(--mkh-serif); }
	.mkh-filters-close button { border: 0; background: none; font-size: 1.8rem; line-height: 1; cursor: pointer; color: var(--mkh-ink); }
}

/* ==========================================================================
   Single product
   ========================================================================== */
.mkh-product { padding: 1.5rem var(--mkh-pad) 0; margin: 0; }
.mkh-product > .mkh-crumbs { margin: 0 0 1.75rem; }
.mkh-product__main { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 5rem); align-items: start; margin: 0; }
.mkh-product__main > * { margin: 0 !important; }
.mkh-product__summary { position: sticky; top: calc(var(--mkh-header-h) + 60px); }
.mkh-product__summary > * { margin-block: 0 !important; }
.mkh-product__cat { margin-bottom: .8rem !important; }
.mkh-product__cat a { color: inherit; }
.mkh-product__title { font-size: clamp(2.2rem, 3.6vw, 3.25rem) !important; font-weight: 500 !important; margin: 0 0 .6rem !important; line-height: 1.05 !important; }
.mkh-product__rating { margin-bottom: .5rem !important; }
.mkh-product__price, .mkh-product__price .wc-block-components-product-price { font-size: 1.55rem !important; font-weight: 500; color: var(--mkh-gold-deep); margin-bottom: 1.25rem !important; }
.mkh-product__excerpt { color: var(--mkh-stone); font-size: 1rem; line-height: 1.75; padding-bottom: 1.5rem !important; border-bottom: 1px solid var(--mkh-line); margin-bottom: 1.5rem !important; }
.mkh-product__excerpt p { margin: 0; }
.mkh-product__excerpt .wp-block-post-excerpt__more-link { display: none; }

/* Woo product gallery */
.mkh-product__gallery .woocommerce-product-gallery { position: relative; margin: 0; width: 100% !important; max-width: none !important; float: none !important; }
.mkh-product__gallery .wp-block-woocommerce-product-image-gallery { width: 100%; max-width: none; }
.mkh-product__gallery .woocommerce-product-gallery__wrapper { margin: 0; }
.mkh-product__gallery .woocommerce-product-gallery__image { background: var(--mkh-sand); }
.mkh-product__gallery .woocommerce-product-gallery__image img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; }
.mkh-product__gallery .flex-control-thumbs { display: grid !important; grid-template-columns: repeat(5, 1fr); gap: .6rem; margin: .6rem 0 0 !important; padding: 0; list-style: none; }
.mkh-product__gallery .flex-control-thumbs li { width: auto !important; margin: 0 !important; float: none !important; }
.mkh-product__gallery .flex-control-thumbs img { aspect-ratio: 1; object-fit: cover; cursor: pointer; opacity: .55; transition: opacity .25s; border: 1px solid transparent; }
.mkh-product__gallery .flex-control-thumbs img.flex-active, .mkh-product__gallery .flex-control-thumbs img:hover { opacity: 1; border-color: var(--mkh-gold); }
.mkh-product__gallery .woocommerce-product-gallery__trigger {
	position: absolute; top: 1rem; right: 1rem; z-index: 5; display: grid; place-items: center;
	width: 42px; height: 42px; border-radius: 50%; background: rgba(251, 247, 240, .92); font-size: 0; text-decoration: none;
}
.mkh-product__gallery .woocommerce-product-gallery__trigger::before { content: ""; width: 16px; height: 16px; background: no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F1A17' stroke-width='1.6'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m20 20-4.5-4.5M10.5 7.5v6M7.5 10.5h6'/%3E%3C/svg%3E"); }
.mkh-product__gallery .woocommerce-product-gallery__trigger img { display: none !important; }
.mkh-product__gallery .onsale { display: none; }

/* Add to cart with options */
.mkh-product__buy { margin-bottom: 1.25rem !important; }
.mkh-product__buy .wp-block-woocommerce-add-to-cart-with-options-variation-selector-attribute > .wp-block-group { margin: 0 0 1.4rem !important; }
.wp-block-woocommerce-add-to-cart-with-options-variation-selector-attribute-name {
	font: 500 .74rem/1 var(--mkh-sans) !important; letter-spacing: .2em; text-transform: uppercase; color: var(--mkh-ink); margin: 0 0 .25rem !important;
}
.mkh-product__buy .wc-block-product-filter-chips__items { display: flex; flex-wrap: wrap; gap: .5rem; }
.mkh-product__buy .wc-block-product-filter-chips__item { min-width: 3.1rem; justify-content: center; padding: .7rem .95rem !important; font-size: .9rem !important; }
.mkh-product__buy .wc-block-product-filter-chips__item:disabled,
.mkh-product__buy .wc-block-product-filter-chips__item[aria-disabled="true"] { opacity: .38; text-decoration: line-through; cursor: not-allowed; }
.mkh-product__buy .wc-block-product-filter-chips__item.mkh-soldout {
	color: var(--mkh-stone) !important; background: repeating-linear-gradient(-45deg, #fff 0 6px, var(--mkh-sand) 6px 7px) !important;
	text-decoration: line-through; text-decoration-color: rgba(111, 99, 90, .6);
}
.mkh-product__buy .wc-block-product-filter-chips__item.mkh-soldout[aria-checked="true"] { color: var(--mkh-ivory) !important; background: var(--mkh-stone) !important; border-color: var(--mkh-stone) !important; }
.mkh-product__buy .wp-block-woocommerce-product-stock-indicator { font-size: .85rem; margin: .5rem 0 1rem !important; }
.mkh-product__buy .wp-block-woocommerce-product-stock-indicator.wc-block-components-product-stock-indicator--low-stock,
.mkh-product__buy .wc-block-components-product-stock-indicator--low-stock { color: #A1461E; }
.mkh-product__buy .wc-block-components-product-stock-indicator--in-stock { color: #2F6B45; }
.mkh-product__buy .wc-block-components-product-stock-indicator--out-of-stock { color: var(--mkh-primary); }
.mkh-product__buy > .wp-block-group:last-child { display: flex; gap: .75rem; align-items: stretch; flex-wrap: nowrap; }
.mkh-product__buy .wc-block-components-quantity-selector,
.mkh-product__buy .quantity { border: 1px solid var(--mkh-line) !important; border-radius: 0 !important; background: #fff; min-height: 54px; margin: 0 !important; }
.mkh-product__buy .wc-block-components-quantity-selector::after { border: 0 !important; }
.mkh-product__buy .wc-block-components-quantity-selector input { font-size: .95rem; }
.mkh-product__buy .wp-block-woocommerce-product-button { flex: 1; margin: 0 !important; }
.mkh-product__buy .wp-block-woocommerce-product-button .wp-block-button__link,
.mkh-product__buy .wp-block-woocommerce-product-button button,
.mkh-product__buy .single_add_to_cart_button {
	width: 100%; min-height: 54px; border-radius: 0 !important;
	background: var(--mkh-primary) !important; color: var(--mkh-ivory) !important;
	font: 500 .82rem/1 var(--mkh-sans) !important; letter-spacing: .18em; text-transform: uppercase;
}
.mkh-product__buy .wp-block-woocommerce-product-button button:hover { background: var(--mkh-primary-deep) !important; }
.mkh-product__buy .wp-block-woocommerce-product-button button:disabled,
.mkh-product__buy .wp-block-woocommerce-product-button .disabled { opacity: .55; cursor: not-allowed; }

.mkh-product-extras { margin: 0 0 1.5rem; }
.mkh-product-extras__links { display: flex; flex-wrap: wrap; gap: 1.5rem; margin-bottom: 1.5rem; }
.mkh-assurance { display: grid; grid-template-columns: 1fr 1fr; gap: 0; list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--mkh-line); }
.mkh-assurance li { display: flex; gap: .75rem; padding: 1rem .75rem 1rem 0; border-bottom: 1px solid var(--mkh-line); font-size: .82rem; color: var(--mkh-stone); line-height: 1.4; }
.mkh-assurance li:nth-child(odd) { padding-right: 1rem; }
.mkh-assurance li:nth-child(even) { padding-left: 1rem; border-left: 1px solid var(--mkh-line); }
.mkh-assurance .mkh-icon { color: var(--mkh-gold); flex: none; }
.mkh-assurance strong { display: block; font-weight: 500; color: var(--mkh-ink); font-size: .88rem; }
.mkh-product__meta { font-size: .78rem; color: var(--mkh-stone); letter-spacing: .06em; }
.mkh-product__meta .wc-block-components-product-sku { margin: 0; }

.mkh-product__details { max-width: 920px; margin: clamp(3rem, 6vw, 5rem) auto 0 !important; }
.mkh-product__details .wc-tabs, .mkh-product__details .woocommerce-tabs ul.tabs {
	display: flex; justify-content: center; gap: 2.5rem; padding: 0 !important; margin: 0 0 2rem !important; list-style: none;
	border-bottom: 1px solid var(--mkh-line);
}
.mkh-product__details .wc-tabs li { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
.mkh-product__details .wc-tabs li::before, .mkh-product__details .wc-tabs li::after { display: none !important; }
.mkh-product__details .wc-tabs li a {
	display: block; padding: 1rem 0 !important; font: 500 .78rem/1 var(--mkh-sans); letter-spacing: .2em; text-transform: uppercase;
	color: var(--mkh-stone); border-bottom: 2px solid transparent; margin-bottom: -1px;
}
.mkh-product__details .wc-tabs li.active a { color: var(--mkh-ink); border-bottom-color: var(--mkh-primary); }
.mkh-product__details .woocommerce-Tabs-panel { font-size: 1rem; line-height: 1.8; color: var(--mkh-ink); }
.mkh-product__details .woocommerce-Tabs-panel > h2 { display: none; }
.mkh-product__details table.shop_attributes { width: 100%; border-collapse: collapse; }
.mkh-product__details table.shop_attributes th, .mkh-product__details table.shop_attributes td { padding: .9rem 0; border-bottom: 1px solid var(--mkh-line); text-align: left; font-weight: 400; }
.mkh-product__details table.shop_attributes th { width: 30%; font-size: .78rem; letter-spacing: .16em; text-transform: uppercase; color: var(--mkh-stone); }
.mkh-product__details table.shop_attributes td p { margin: 0; }
.mkh-related { padding-inline: 0 !important; }

@media (max-width: 899px) {
	.mkh-product__main { grid-template-columns: 1fr; }
	.mkh-product__summary { position: static; }
	.mkh-product { padding-top: 1rem; }
	.mkh-product__gallery { margin-inline: calc(var(--mkh-gutter) * -1) !important; }
	.mkh-product__gallery .flex-control-thumbs { padding-inline: var(--mkh-gutter); }
	.mkh-product__details .wc-tabs, .mkh-product__details ul.tabs { gap: 1.5rem !important; justify-content: flex-start !important; overflow-x: auto !important; flex-wrap: nowrap !important; scrollbar-width: none; max-width: 100%; }
	.mkh-product__details .wc-tabs li { flex: none; }
	.mkh-product__details .wc-tabs li a { white-space: nowrap; font-size: .7rem; letter-spacing: .14em; }
}

/* Mobile sticky buy bar */
.mkh-buybar {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 55;
	display: none; align-items: center; gap: 1rem; padding: .75rem var(--mkh-gutter) calc(.75rem + env(safe-area-inset-bottom));
	background: rgba(251, 247, 240, .97); border-top: 1px solid var(--mkh-line);
	transform: translateY(110%); transition: transform .35s var(--mkh-ease);
}
.mkh-buybar.is-visible { transform: none; }
.mkh-buybar__info { flex: 1; min-width: 0; }
.mkh-buybar__name { display: block; font: 600 1.05rem/1.2 var(--mkh-serif); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mkh-buybar__price { font-size: .85rem; color: var(--mkh-gold-deep); font-weight: 500; }
.mkh-buybar .mkh-btn { padding: .9rem 1.3rem; }
@media (max-width: 899px) { .mkh-buybar { display: flex; } }

/* Dialog (size guide) */
.mkh-dialog { width: min(560px, calc(100vw - 2rem)); max-height: calc(100vh - 2rem); padding: 0; border: 0; background: var(--mkh-ivory); color: var(--mkh-ink); box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .5); }
.mkh-dialog::backdrop { background: rgba(31, 26, 23, .55); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
.mkh-dialog[open] { animation: mkh-rise .4s var(--mkh-ease); }
.mkh-dialog__inner { position: relative; padding: 2.5rem clamp(1.25rem, 4vw, 2.5rem) 2rem; }
.mkh-dialog__inner h2 { margin: 0 0 .75rem; font-size: 2.2rem; }
.mkh-dialog__inner > p { color: var(--mkh-stone); font-size: .95rem; }
.mkh-dialog__close { position: absolute; top: .75rem; right: .75rem; width: 40px; height: 40px; border: 0; background: none; font-size: 1.9rem; line-height: 1; cursor: pointer; color: var(--mkh-ink); }
.mkh-size-table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; font-size: .92rem; text-align: center; }
.mkh-size-table th { font: 500 .7rem var(--mkh-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--mkh-stone); padding: .75rem .5rem; border-bottom: 1px solid var(--mkh-ink); }
.mkh-size-table td { padding: .7rem .5rem; border-bottom: 1px solid var(--mkh-line); }
.mkh-size-table tbody tr:hover { background: var(--mkh-sand); }
.mkh-note { background: var(--mkh-sand); padding: 1rem 1.15rem; font-size: .88rem; line-height: 1.6; color: var(--mkh-ink) !important; }

/* ==========================================================================
   Pages
   ========================================================================== */
.mkh-page { margin: 0; padding-bottom: var(--mkh-section-y); }
.mkh-page__head { text-align: center; padding: clamp(2.5rem, 5vw, 4.5rem) var(--mkh-pad) clamp(1.5rem, 3vw, 2.5rem); margin: 0; }
.mkh-page__title { font-size: clamp(2.6rem, 5vw, 4.25rem) !important; font-weight: 500 !important; margin: 0; }
.mkh-page__content { padding-inline: var(--mkh-gutter); }
.mkh-page__content > * { margin-block: 0 1.25rem; }
.mkh-page__content h2 { font-size: clamp(1.8rem, 3vw, 2.4rem); margin-top: 3rem; margin-bottom: 1rem; }
.mkh-page__content h3 { font-size: 1.5rem; margin-top: 2rem; margin-bottom: .6rem; }
.mkh-page__content p, .mkh-page__content li { font-size: 1.04rem; line-height: 1.8; }
.mkh-page__content .mkh-lead { font: 400 clamp(1.3rem, 2vw, 1.6rem)/1.5 var(--mkh-serif); color: var(--mkh-ink); }
.mkh-page__content figure.wp-block-image img { width: 100%; }
.mkh-page__content .wp-block-details { border-bottom: 1px solid var(--mkh-line); padding: 1.15rem 0; margin: 0; }
.mkh-page__content .wp-block-details summary { font: 600 1.3rem/1.3 var(--mkh-serif); cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: 1rem; }
.mkh-page__content .wp-block-details summary::-webkit-details-marker { display: none; }
.mkh-page__content .wp-block-details summary::after { content: "+"; font: 300 1.6rem/1 var(--mkh-sans); color: var(--mkh-gold); transition: transform .3s; }
.mkh-page__content .wp-block-details[open] summary::after { transform: rotate(45deg); }
.mkh-page__content .wp-block-details p { margin: .75rem 0 0; color: var(--mkh-stone); }
.mkh-page__content .wp-block-details:first-of-type { border-top: 1px solid var(--mkh-line); }
.mkh-info-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; margin: 2rem 0 !important; }
.mkh-info-cards > * { margin: 0 !important; background: var(--mkh-sand); padding: 1.5rem; }
.mkh-info-cards h3 { margin: 0 0 .4rem !important; font-size: 1.3rem !important; }
.mkh-info-cards p { margin: 0; font-size: .93rem !important; color: var(--mkh-stone); line-height: 1.6 !important; }
.mkh-page--wide .mkh-page__content { padding: 0; }
.mkh-page--wide .mkh-page__content > * { max-width: none; }
.mkh-story-hero { position: relative; }

/* 404 */
.mkh-404 { text-align: center; padding: clamp(4rem, 10vw, 8rem) var(--mkh-gutter); max-width: 640px; margin: 0 auto; }
.mkh-404 h1 { font-size: clamp(2.6rem, 6vw, 4.5rem); font-weight: 500; }
.mkh-404 p:not(.mkh-eyebrow) { color: var(--mkh-stone); }
.mkh-404 .mkh-eyebrow { justify-content: center; }
.mkh-404__search { max-width: 420px; margin: 2rem auto; }

/* ==========================================================================
   Forms, notices, cart, checkout, account (WooCommerce blocks + classic)
   ========================================================================== */
.wp-element-button, .wc-block-components-button:not(.is-link), .woocommerce button.button, .woocommerce a.button, .woocommerce input.button {
	border-radius: 0 !important;
}
.wc-block-components-button:not(.is-link):not(.wc-block-components-quantity-selector__button),
.woocommerce button.button, .woocommerce a.button, .woocommerce input.button, .woocommerce button.button.alt {
	background: var(--mkh-primary) !important; color: var(--mkh-ivory) !important; border: 0 !important;
	font: 500 .8rem/1.2 var(--mkh-sans) !important; letter-spacing: .16em; text-transform: uppercase;
	padding: 1rem 1.6rem !important; min-height: 52px;
}
.wc-block-components-button:not(.is-link):not(.wc-block-components-quantity-selector__button):hover,
.woocommerce button.button:hover, .woocommerce a.button:hover { background: var(--mkh-primary-deep) !important; }
.wc-block-components-text-input input, .wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-blocks-components-select .wc-blocks-components-select__select, .wc-block-components-textarea,
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select {
	border-radius: 0 !important; border-color: var(--mkh-line) !important; background: #fff !important; font-family: var(--mkh-sans) !important;
}
.wc-block-components-text-input input:focus, .woocommerce form .form-row input.input-text:focus { border-color: var(--mkh-primary) !important; box-shadow: 0 0 0 1px var(--mkh-primary) !important; }
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background: var(--mkh-primary); border-color: var(--mkh-primary); }
.wc-block-components-radio-control__input:checked::before { background: var(--mkh-primary) !important; }
.wc-block-components-title, .wc-block-components-checkout-step__title, .wc-block-cart__totals-title {
	font-family: var(--mkh-serif) !important; font-weight: 600 !important; font-size: 1.5rem !important; text-transform: none !important; letter-spacing: 0 !important;
}
.wc-block-cart, .wc-block-checkout { max-width: var(--mkh-wide); margin-inline: auto !important; padding-inline: var(--mkh-gutter); }
.wc-block-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block { background: var(--mkh-sand); padding: 1.5rem !important; border: 0 !important; }
.wc-block-cart-items__header { font-size: .72rem; letter-spacing: .2em; color: var(--mkh-stone); }
.wc-block-cart-item__product .wc-block-components-product-name { font: 600 1.25rem/1.2 var(--mkh-serif); color: var(--mkh-ink); }
.wc-block-components-product-metadata { font-size: .85rem; color: var(--mkh-stone); }
.wc-block-components-totals-item__label, .wc-block-components-totals-item__value { font-size: .95rem; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font: 600 1.4rem var(--mkh-serif); color: var(--mkh-gold-deep); }
.wc-block-components-notice-banner { border-radius: 0 !important; }
.wc-block-components-notice-banner.is-success { border-color: #2F6B45 !important; background: #EEF5EF !important; }
.wc-block-components-notice-banner.is-error { border-color: var(--mkh-primary) !important; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-top-color: var(--mkh-gold) !important; background: var(--mkh-sand) !important; }

.wp-block-woocommerce-empty-cart-block { text-align: center; padding: 2rem 0; }
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title { font-family: var(--mkh-serif); font-size: 2rem; }

/* Cart & account: left-align the title with the content below it */
.mkh-page--cart .mkh-page__head, .woocommerce-account .mkh-page__head { text-align: left; padding-bottom: 1rem; }
.mkh-page--cart .mkh-page__head > *, .woocommerce-account .mkh-page__head > * { max-width: var(--mkh-wide); margin-inline: auto; padding-inline: var(--mkh-gutter); }
.woocommerce-account .mkh-page__content { padding-inline: var(--mkh-pad); }
.woocommerce-account .woocommerce { max-width: var(--mkh-wide); margin-inline: auto; }

/* Empty cart: calmer than WooCommerce's default */
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before { display: none !important; }
.wp-block-woocommerce-empty-cart-block .wp-block-separator { display: none; }
.wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) { font-family: var(--mkh-serif); font-size: 1.8rem; margin-top: 3rem; }
.wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new, .wp-block-woocommerce-empty-cart-block .wc-block-grid { max-width: var(--mkh-wide); margin-inline: auto; padding-inline: var(--mkh-gutter); }

/* Checkout header */
.mkh-checkout-header { display: flex; flex-direction: column; align-items: center; gap: .5rem; padding: 1.75rem var(--mkh-gutter) 1.25rem; border-bottom: 1px solid var(--mkh-line); margin: 0; }
.mkh-checkout-header__secure { margin: 0; font-size: .72rem; letter-spacing: .2em; text-transform: uppercase; color: var(--mkh-stone); }
.mkh-page--checkout { padding-top: 2.5rem; }
.mkh-checkout-footer { text-align: center; font-size: .85rem; color: var(--mkh-stone); padding: 2rem var(--mkh-gutter) 3rem; margin: 0; border-top: 1px solid var(--mkh-line); }

/* Mini cart drawer */
.wc-block-mini-cart__drawer .wc-block-mini-cart__title { font-family: var(--mkh-serif); font-weight: 600; }
.wc-block-mini-cart__drawer .components-modal__content { background: var(--mkh-ivory); }
.wc-block-mini-cart__footer { background: var(--mkh-sand); }

/* My account (classic) */
.woocommerce-account .mkh-page__content { max-width: var(--mkh-wide); margin-inline: auto; }
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 240px 1fr; gap: 3rem; }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; max-width: 900px; margin-inline: auto; }
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--mkh-line); }
.woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--mkh-line); }
.woocommerce-MyAccount-navigation a { display: block; padding: .9rem 0; color: var(--mkh-ink); font-size: .9rem; }
.woocommerce-MyAccount-navigation .is-active a { color: var(--mkh-primary); font-weight: 500; }
.woocommerce-account .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }
/* WooCommerce clearfix pseudo-elements would otherwise become grid cells */
.woocommerce-account .u-columns::before, .woocommerce-account .u-columns::after,
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after { display: none !important; }
.woocommerce-account .u-columns h2 { margin-top: 0; }
.woocommerce-account .woocommerce-form { border: 0 !important; padding: 0 !important; margin: 0 !important; }
.woocommerce-account .woocommerce-form .form-row { display: flex; flex-direction: column; gap: .35rem; margin: 0 0 1rem; }
.woocommerce-account .woocommerce-form .form-row label { font-size: .85rem; }
.woocommerce-account .woocommerce-form .input-text { padding: .8rem .9rem !important; }
.woocommerce-account .u-columns > div { float: none !important; width: auto !important; max-width: none !important; background: #fff; padding: 2rem; border: 1px solid var(--mkh-line); }
.woocommerce-account h2 { font-size: 1.8rem; }
@media (max-width: 767px) {
	.woocommerce-account .woocommerce, .woocommerce-account .u-columns { grid-template-columns: 1fr; }
}

/* Order confirmation */
.wc-block-order-confirmation-status { text-align: center; }
.wc-block-order-confirmation-summary { background: var(--mkh-sand); padding: 1.5rem; }

/* ==========================================================================
   Motion: reveal on scroll
   ========================================================================== */
@media (prefers-reduced-motion: no-preference) {
	.js .mkh-reveal { opacity: 0; transform: translateY(28px); transition: opacity .9s var(--mkh-ease), transform .9s var(--mkh-ease); }
	.js .mkh-reveal.is-visible { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; }
}

/* Price slider: keep it inside the filter column */
.mkh-shop__filters { min-width: 0; }
.mkh-filters .wc-block-product-filter-price-slider,
.mkh-filters .wc-block-product-filter-price-slider > *,
.mkh-filters .wc-block-product-filter-price-slider .range { width: 100% !important; max-width: 100% !important; box-sizing: border-box; }
.mkh-filters .wc-block-product-filter-price-slider input[type="range"] { width: 100% !important; }
.mkh-filters .wc-block-product-filter-price-slider input[type="text"] { padding: .45rem .6rem !important; }
.mkh-filters .wc-block-product-filter-price-slider__range { width: 100% !important; max-width: 100%; }
.mkh-filters .wc-block-product-filter-price-slider__range .range-bar,
.mkh-filters .wc-block-product-filter-price-slider__range input[type="range"] { width: 100% !important; left: 0; right: 0; }
.mkh-filters .wc-block-product-filter-price-slider__content { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important; }
.mkh-filters .wc-block-product-filter-price-slider__content > * { min-width: 0; }
/* Price filter: slider on its own row, the two amount boxes side by side below it */
.mkh-filters .wc-block-product-filter-price-slider__content { display: flex !important; flex-wrap: wrap; gap: .75rem .6rem; }
.mkh-filters .wc-block-product-filter-price-slider__content > .wc-block-product-filter-price-slider__range { flex: 1 1 100%; order: -1; }
.mkh-filters .wc-block-product-filter-price-slider__content > :not(.wc-block-product-filter-price-slider__range) { flex: 1 1 0; min-width: 0; }
.mkh-filters .wc-block-product-filter-price-slider__content input[type="text"] { width: 100% !important; box-sizing: border-box; }

/* Sold-out size: offer to arrange it */
.mkh-soldout-note { margin: 0 0 1.25rem; padding: .8rem 1rem; background: var(--mkh-sand); font-size: .9rem; }
.mkh-soldout-note a { color: var(--mkh-ink); font-weight: 500; text-decoration: underline; text-decoration-color: var(--mkh-gold); text-underline-offset: 4px; }

/* Thank-you page: confirm on WhatsApp */
.mkh-thanks-wa { text-align: center; background: var(--mkh-primary); color: var(--mkh-ivory); padding: clamp(2rem, 4vw, 3rem) var(--mkh-gutter); margin: 0 auto 2.5rem; max-width: 760px; }
.mkh-thanks-wa h2 { color: var(--mkh-ivory); margin: 0 0 .75rem; font-size: clamp(1.8rem, 3vw, 2.4rem); }
.mkh-thanks-wa p { color: rgba(251, 247, 240, .82); max-width: 32rem; margin: 0 auto 1.5rem; }
.mkh-thanks-wa .mkh-eyebrow { color: var(--mkh-gold-light); justify-content: center; margin-bottom: .6rem; }
.mkh-thanks-wa .mkh-eyebrow::before { display: none; }
.mkh-btn--wa { background: #1faf55; color: #fff; padding: 1.1rem 2.2rem; font-size: .85rem; }
.mkh-btn--wa:hover { background: #17924a; color: #fff; }
.mkh-thanks-wa__track { font-size: .85rem; margin: 1.25rem auto 0 !important; }
.mkh-thanks-wa__track a { color: var(--mkh-gold-light); }
.wc-block-order-confirmation-status { text-align: center; }

/* Track order */
.mkh-track-form { display: grid; grid-template-columns: 1fr 1fr auto; gap: .75rem; align-items: end; margin: 1rem 0 2rem; }
.mkh-track-form label { display: grid; gap: .35rem; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; color: var(--mkh-stone); }
.mkh-track-form input { height: 52px; padding: 0 1rem; border: 1px solid var(--mkh-line); background: #fff; font: 1rem var(--mkh-sans); text-transform: none; letter-spacing: 0; color: var(--mkh-ink); }
.mkh-track-form .mkh-btn { height: 52px; border: 0; }
.mkh-track { background: #fff; border: 1px solid var(--mkh-line); padding: clamp(1.25rem, 3vw, 2rem); }
.mkh-track h2 { margin: 0 !important; }
.mkh-track__meta { color: var(--mkh-stone); margin: .25rem 0 1.5rem !important; }
.mkh-track__steps { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, 1fr); counter-reset: s; }
.mkh-track__steps li { position: relative; text-align: center; font-size: .85rem !important; color: var(--mkh-stone); padding-top: 2.2rem; }
.mkh-track__steps li span { position: absolute; top: 0; left: 50%; width: 1.5rem; height: 1.5rem; margin-left: -.75rem; border-radius: 50%; background: var(--mkh-line); z-index: 1; }
.mkh-track__steps li::before { content: ""; position: absolute; top: .7rem; left: -50%; width: 100%; height: 2px; background: var(--mkh-line); }
.mkh-track__steps li:first-child::before { display: none; }
.mkh-track__steps li.is-done { color: var(--mkh-ink); font-weight: 500; }
.mkh-track__steps li.is-done span { background: var(--mkh-gold); box-shadow: 0 0 0 4px rgba(196, 154, 63, .2); }
.mkh-track__steps li.is-done::before { background: var(--mkh-gold); }
.mkh-track__courier { margin: 1.5rem 0 0 !important; padding-top: 1rem; border-top: 1px solid var(--mkh-line); }
.mkh-track-error { background: #fdf1f0; color: #8a1c13; padding: .9rem 1rem; }
@media (max-width: 640px) { .mkh-track-form { grid-template-columns: 1fr; } }

/* ==========================================================================
   Checkout (classic form: email optional, phone required)
   ========================================================================== */
.mkh-page--checkout .woocommerce { max-width: var(--mkh-wide); margin: 0 auto; padding: 0 var(--mkh-gutter); }
.mkh-page--checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 0 clamp(2rem, 4vw, 4rem); align-items: start; }
.mkh-page--checkout form.checkout > * { grid-column: 1; }
.mkh-page--checkout form.checkout #order_review_heading, .mkh-page--checkout form.checkout #order_review { grid-column: 2; }
.mkh-page--checkout form.checkout #customer_details { grid-row: 1 / span 7; }
.mkh-page--checkout form.checkout #order_review_heading { grid-row: 1; margin-top: 0; }
.mkh-page--checkout form.checkout #order_review { grid-row: 2 / span 6; position: sticky; top: 1.5rem; background: var(--mkh-sand); padding: 1.5rem; }
.mkh-page--checkout .col2-set { display: block; width: 100%; }
.mkh-page--checkout .col2-set .col-1, .mkh-page--checkout .col2-set .col-2 { float: none !important; width: 100% !important; }
.mkh-page--checkout h3 { font-family: var(--mkh-serif); font-size: 1.6rem; font-weight: 600; margin: 0 0 1rem; }
.mkh-page--checkout .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1rem; }
.mkh-page--checkout .form-row { margin: 0 0 1rem !important; padding: 0 !important; float: none !important; width: auto !important; }
.mkh-page--checkout .form-row-wide, .mkh-page--checkout #billing_address_1_field, .mkh-page--checkout #billing_address_2_field, .mkh-page--checkout #billing_country_field { grid-column: 1 / -1; }
.mkh-page--checkout .form-row label { display: block; font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; color: var(--mkh-stone); margin-bottom: .35rem; }
.mkh-page--checkout .form-row .required { color: var(--mkh-gold-deep); text-decoration: none; }
.mkh-page--checkout .form-row .optional { text-transform: none; letter-spacing: 0; }
.mkh-page--checkout .input-text, .mkh-page--checkout select, .mkh-page--checkout textarea, .mkh-page--checkout .select2-selection {
	width: 100%; min-height: 50px; padding: .75rem .9rem !important; border: 1px solid var(--mkh-line) !important; border-radius: 0 !important;
	background: #fff !important; font: 1rem var(--mkh-sans) !important; color: var(--mkh-ink);
}
.mkh-page--checkout textarea { min-height: 90px; }
.mkh-page--checkout .select2-selection__rendered { line-height: 1.6 !important; padding: 0 !important; }
.mkh-page--checkout .select2-selection__arrow { top: 12px !important; }
.mkh-page--checkout .input-text:focus { border-color: var(--mkh-ink) !important; outline: none; box-shadow: 0 0 0 1px var(--mkh-ink); }
.mkh-page--checkout .woocommerce-invalid .input-text { border-color: #b42318 !important; }
.mkh-page--checkout #billing_country_field { display: none !important; } /* Pakistan only */
.mkh-page--checkout table.shop_table { width: 100%; border-collapse: collapse; border: 0; font-size: .95rem; }
.mkh-page--checkout table.shop_table th, .mkh-page--checkout table.shop_table td { padding: .75rem 0; border: 0; border-bottom: 1px solid var(--mkh-line); text-align: left; background: none; }
.mkh-page--checkout table.shop_table td:last-child, .mkh-page--checkout table.shop_table th:last-child { text-align: right; }
.mkh-page--checkout table.shop_table .order-total td, .mkh-page--checkout table.shop_table .order-total th { font: 600 1.4rem var(--mkh-serif); color: var(--mkh-ink); border-bottom: 0; }
.mkh-page--checkout #shipping_method { list-style: none; margin: 0; padding: 0; text-align: left; }
.mkh-page--checkout #shipping_method li { margin: 0 0 .5rem; display: flex; gap: .5rem; align-items: baseline; justify-content: flex-end; }
.mkh-page--checkout #shipping_method li label { font-weight: 400; font-size: .92rem; text-transform: none; letter-spacing: 0; color: var(--mkh-ink); }
.mkh-page--checkout #shipping_method input { accent-color: var(--mkh-ink); }
.mkh-page--checkout .woocommerce-shipping-totals th { vertical-align: top; }
.mkh-page--checkout .woocommerce-form-login-toggle .woocommerce-info { font-size: .9rem; }
@media (max-width: 900px) {
  .mkh-page--checkout form.checkout #customer_details { grid-row: auto; }
}
.mkh-page--checkout #payment { background: none !important; border-radius: 0; margin-top: 1rem; }
.mkh-page--checkout #payment ul.payment_methods { padding: 0 !important; border: 0 !important; }
.mkh-page--checkout #payment ul.payment_methods li { list-style: none; padding: .9rem 1rem; background: #fff; margin-bottom: .5rem; border: 1px solid var(--mkh-line); }
.mkh-page--checkout #payment div.payment_box { background: var(--mkh-ivory) !important; color: var(--mkh-stone); font-size: .88rem; margin: .6rem 0 0 !important; }
.mkh-page--checkout #payment div.payment_box::before { display: none !important; }
.mkh-page--checkout #payment .place-order { padding: 1rem 0 0 !important; }
.mkh-page--checkout #place_order { width: 100%; min-height: 58px; font-size: .9rem !important; letter-spacing: .18em; }
.mkh-page--checkout .woocommerce-privacy-policy-text { font-size: .8rem; color: var(--mkh-stone); }
.mkh-page--checkout .woocommerce-form-login-toggle, .mkh-page--checkout .woocommerce-form-coupon-toggle { grid-column: 1 / -1; }
.mkh-page--checkout .woocommerce-info { border-top: 0 !important; background: var(--mkh-sand) !important; padding: .9rem 1rem !important; font-size: .9rem; }
.mkh-page--checkout .woocommerce-info::before { display: none; }
.mkh-page--checkout .woocommerce-NoticeGroup, .mkh-page--checkout .woocommerce-error { grid-column: 1 / -1; list-style: none; background: #fdf1f0 !important; border-top: 3px solid #b42318 !important; padding: 1rem 1.25rem !important; }
@media (max-width: 899px) {
	.mkh-page--checkout form.checkout { grid-template-columns: 1fr; }
	.mkh-page--checkout form.checkout #order_review_heading, .mkh-page--checkout form.checkout #order_review { grid-column: 1; grid-row: auto; position: static; }
	.mkh-page--checkout .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; }
}
/* Classic order-received page */
.woocommerce-order-received .woocommerce-order { max-width: 860px; margin: 0 auto; }
.woocommerce-order-received ul.order_details { display: flex; flex-wrap: wrap; gap: 1rem 2rem; list-style: none; padding: 1.25rem 1.5rem; background: var(--mkh-sand); margin: 0 0 2rem; }
.woocommerce-order-received ul.order_details li { font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; color: var(--mkh-stone); }
.woocommerce-order-received ul.order_details li strong { display: block; font-size: 1rem; letter-spacing: 0; text-transform: none; color: var(--mkh-ink); margin-top: .25rem; }
.woocommerce-order-received .woocommerce-notice--success { text-align: center; font: 500 1.4rem var(--mkh-serif); margin: 1rem 0 1.5rem; }

.mkh-page--checkout .wc-block-components-notice-banner.is-info { background: var(--mkh-sand) !important; border-color: var(--mkh-line) !important; color: var(--mkh-ink); }
.mkh-page--checkout .wc-block-components-notice-banner.is-info svg { fill: var(--mkh-gold-deep); background: transparent; }

/* WhatsApp updates opt-in under the mobile number */
.woocommerce-checkout .mkh-wa-optin .optional{display:none}
.woocommerce-checkout .mkh-wa-optin label{display:flex;align-items:center;gap:.5rem;text-transform:none;letter-spacing:0;font-size:.9rem;color:inherit}
.woocommerce-checkout .mkh-wa-optin input{width:1.05rem;height:1.05rem;accent-color:var(--wp--preset--color--primary,#141210)}
