/* ==========================================================================
   KIORA — Luxury Editorial Jewelry Theme
   Design system + full WooCommerce UI overrides (cart, checkout, account,
   single product, notices, forms) so the whole site — not just the
   homepage — reads as one premium brand, on desktop, tablet, and mobile.
   ========================================================================== */

:root {
	--kiora-ivory: #F7F1EA;
	--kiora-beige: #EFE5DB;
	--kiora-white: #FFFFFF;
	--kiora-charcoal: #332D2A;
	--kiora-taupe: #6F6660;
	--kiora-gold: #B8945F;
	--kiora-champagne: #D4B98A;
	--kiora-line: rgba(51,45,42,0.12);

	--kiora-font-heading: 'Playfair Display', 'Cormorant Garamond', serif;
	--kiora-font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

	--kiora-radius: 3px;
	--kiora-transition: 0.28s cubic-bezier(.4,0,.2,1);
	--kiora-container: 1320px;
	--kiora-gutter: clamp(20px, 4vw, 48px);
	--kiora-section-y: clamp(48px, 7vw, 96px);
}

/* ---------- Reset / base ---------- */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	background: var(--kiora-ivory);
	color: var(--kiora-charcoal);
	font-family: var(--kiora-font-body);
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
input, select, textarea, button { font-family: var(--kiora-font-body); }

h1, h2, h3, h4, .kiora-logo__text {
	font-family: var(--kiora-font-heading);
	font-weight: 600;
	color: var(--kiora-charcoal);
	line-height: 1.2;
	letter-spacing: 0.01em;
}
a { color: inherit; text-decoration: none; }

.kiora-container { max-width: var(--kiora-container); margin: 0 auto; padding: 0 var(--kiora-gutter); }
.kiora-eyebrow { display: block; font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--kiora-gold); margin-bottom: 14px; }

/* ---------- Buttons (shared by theme AND WooCommerce's own .button class) ---------- */
.kiora-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-message a.button,
.kiora-card-info .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 34px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	border-radius: var(--kiora-radius);
	transition: all var(--kiora-transition);
	cursor: pointer;
	border: 1px solid var(--kiora-charcoal);
	background: var(--kiora-charcoal);
	color: var(--kiora-white) !important;
	white-space: nowrap;
}
.kiora-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.kiora-card-info .button:hover {
	background: var(--kiora-gold);
	border-color: var(--kiora-gold);
	color: var(--kiora-white) !important;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #place_order {
	background: var(--kiora-gold);
	border-color: var(--kiora-gold);
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce #place_order:hover { background: var(--kiora-charcoal); border-color: var(--kiora-charcoal); }
.kiora-btn--gold { background: var(--kiora-gold); border-color: var(--kiora-gold); }
.kiora-btn--gold:hover { background: var(--kiora-charcoal); border-color: var(--kiora-charcoal); }
.kiora-btn--outline { background: transparent; color: var(--kiora-charcoal) !important; }
.kiora-btn--outline:hover { background: var(--kiora-charcoal); color: var(--kiora-white) !important; }
.woocommerce a.button.loading::after,
.woocommerce button.button.loading::after { border-color: var(--kiora-white); border-top-color: transparent; }

/* ---------- Header (grid = reliable alignment at every width) ---------- */
.kiora-header {
	position: sticky; top: 0; z-index: 100;
	background: rgba(247, 241, 234, 0.97);
	backdrop-filter: blur(8px);
	border-bottom: 1px solid var(--kiora-line);
}
.kiora-header__inner {
	max-width: var(--kiora-container);
	margin: 0 auto;
	padding: 20px var(--kiora-gutter);
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	column-gap: 24px;
}
.kiora-logo { grid-column: 2; justify-self: center; }
.kiora-logo__text { font-size: clamp(22px, 2.4vw, 27px); letter-spacing: 0.18em; }
.kiora-nav { grid-column: 2; justify-self: center; }
.kiora-header__icons { grid-column: 3; display: flex; align-items: center; gap: 20px; }
.kiora-hamburger { grid-column: 1; display: none; }

/* Desktop: logo left, nav center, icons right — the classic luxury-retail layout */
@media (min-width: 769px) {
	.kiora-header__inner { grid-template-columns: 1fr auto 1fr; }
	.kiora-logo { grid-column: 1; justify-self: start; }
	.kiora-nav { grid-column: 2; justify-self: center; }
	.kiora-header__icons { grid-column: 3; justify-self: end; }
}

.kiora-nav__list { display: flex; gap: clamp(16px, 2.4vw, 34px); list-style: none; margin: 0; padding: 0; }
.kiora-nav__list a {
	font-size: 12.5px; letter-spacing: 0.1em; text-transform: uppercase;
	position: relative; padding-bottom: 6px; display: inline-block;
}
.kiora-nav__list a::after {
	content: ''; position: absolute; left: 0; right: 100%; bottom: 0; height: 1px;
	background: var(--kiora-gold); transition: right var(--kiora-transition);
}
.kiora-nav__list a:hover { color: var(--kiora-gold); }
.kiora-nav__list a:hover::after { right: 0; }

.kiora-icon-btn { position: relative; background: none; border: none; cursor: pointer; color: var(--kiora-charcoal); display: flex; padding: 4px; }
.kiora-icon-btn:hover { color: var(--kiora-gold); }
.kiora-badge-count {
	position: absolute; top: -6px; right: -6px;
	background: var(--kiora-gold); color: #fff;
	font-size: 10px; line-height: 1; border-radius: 50%;
	width: 16px; height: 16px; display: flex; align-items: center; justify-content: center;
}
.kiora-hamburger { flex-direction: column; gap: 5px; background: none; border: none; cursor: pointer; padding: 4px; }
.kiora-hamburger span { width: 22px; height: 1.5px; background: var(--kiora-charcoal); display: block; }

.kiora-search-panel { grid-column: 1 / -1; display: none; padding: 16px 0 0; }
.kiora-search-panel.is-open { display: block; }
.kiora-search-panel input[type="search"] {
	width: 100%; padding: 12px 16px; border: 1px solid var(--kiora-line);
	background: var(--kiora-white); border-radius: var(--kiora-radius); font-size: 14px;
}

/* ---------- Hero ---------- */
.kiora-hero {
	position: relative; min-height: clamp(420px, 62vh, 680px);
	background: var(--kiora-beige) center/cover no-repeat;
	display: flex; align-items: center;
	border-bottom: 1px solid var(--kiora-line);
}
.kiora-hero__overlay { position: absolute; inset: 0; background: linear-gradient(100deg, rgba(51,45,42,0.62) 0%, rgba(51,45,42,0.28) 50%, rgba(51,45,42,0.05) 100%); }
.kiora-hero__content { position: relative; z-index: 2; max-width: 560px; padding: 0 var(--kiora-gutter); color: var(--kiora-white); margin: 0 auto; width: 100%; max-width: var(--kiora-container); }
.kiora-hero__content > * { max-width: 540px; }
.kiora-hero__content h1 { font-size: clamp(32px, 5vw, 56px); margin: 0 0 18px; }
.kiora-hero__content p { font-size: clamp(15px, 1.6vw, 19px); margin: 0 0 32px; opacity: 0.92; font-weight: 300; }

/* ---------- Sections ---------- */
.kiora-section { max-width: var(--kiora-container); margin: 0 auto; padding: var(--kiora-section-y) var(--kiora-gutter); }
.kiora-section__title { text-align: center; font-size: clamp(26px, 3.4vw, 36px); margin: 0 0 12px; }
.kiora-section__sub { text-align: center; color: var(--kiora-taupe); margin: 0 0 40px; font-size: 15px; }
.kiora-section__cta { text-align: center; margin-top: 44px; }

/* ---------- Product Grid / Cards ---------- */
.kiora-product-grid, ul.products.kiora-product-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(18px, 2.4vw, 32px);
	list-style: none; margin: 0; padding: 0;
}
li.product.kiora-card {
	background: var(--kiora-white);
	border: 1px solid var(--kiora-line);
	border-radius: var(--kiora-radius);
	overflow: hidden;
	transition: transform var(--kiora-transition), box-shadow var(--kiora-transition), border-color var(--kiora-transition);
	list-style: none;
	display: flex; flex-direction: column;
}
li.product.kiora-card:hover { transform: translateY(-5px); box-shadow: 0 18px 36px rgba(51,45,42,0.1); border-color: transparent; }
.kiora-card-media { position: relative; aspect-ratio: 1 / 1; overflow: hidden; background: var(--kiora-beige); }
.kiora-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
li.product.kiora-card:hover .kiora-card-media img { transform: scale(1.06); }
.kiora-card-info { padding: 20px 18px 24px; text-align: center; flex: 1; display: flex; flex-direction: column; align-items: center; }
.kiora-card-title { display: block; font-family: var(--kiora-font-heading); font-size: 17px; margin: 0 0 8px; line-height: 1.35; }
.kiora-card-price,
.woocommerce ul.products li.product .price { color: var(--kiora-gold) !important; font-weight: 600; margin: 0 0 16px; font-size: 15px; }
.kiora-card-price del, .woocommerce ul.products li.product .price del { color: var(--kiora-taupe); opacity: 0.55; margin-right: 8px; font-weight: 400; }
.kiora-card-price ins, .woocommerce ul.products li.product .price ins { text-decoration: none; }
.kiora-card-info .button { margin-top: auto; width: 100%; padding: 12px 20px; }

.kiora-badges { position: absolute; top: 14px; left: 14px; display: flex; flex-direction: column; gap: 5px; z-index: 2; }
.kiora-badge { background: rgba(255,255,255,0.94); color: var(--kiora-charcoal); font-size: 9.5px; letter-spacing: 0.06em; text-transform: uppercase; padding: 5px 10px; border-radius: 20px; font-weight: 500; }
.kiora-sale-flash { position: absolute; top: 14px; right: 14px; background: var(--kiora-gold); color: #fff; font-size: 10px; text-transform: uppercase; letter-spacing: 0.05em; padding: 5px 11px; border-radius: 20px; z-index: 2; }

.kiora-wishlist-btn {
	position: absolute; bottom: 14px; right: 14px; z-index: 2;
	width: 38px; height: 38px; border-radius: 50%;
	background: var(--kiora-white); border: none; cursor: pointer;
	font-size: 16px; display: flex; align-items: center; justify-content: center;
	transition: all var(--kiora-transition); box-shadow: 0 2px 8px rgba(51,45,42,0.12);
}
.kiora-wishlist-btn:hover, .kiora-wishlist-btn.is-active { color: var(--kiora-gold); }
.kiora-quickview-btn {
	position: absolute; bottom: 14px; left: 14px; z-index: 2;
	background: rgba(255,255,255,0.95); border: none; padding: 9px 16px;
	font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.08em; font-weight: 500;
	border-radius: 20px; cursor: pointer; opacity: 0; transform: translateY(8px);
	transition: all var(--kiora-transition); box-shadow: 0 2px 8px rgba(51,45,42,0.12);
}
li.product.kiora-card:hover .kiora-quickview-btn { opacity: 1; transform: translateY(0); }
.kiora-out-of-stock { display: inline-block; color: var(--kiora-taupe); font-size: 11.5px; text-transform: uppercase; letter-spacing: 0.06em; margin-top: auto; }

/* ---------- Quality Strip ---------- */
.kiora-quality { background: var(--kiora-beige); padding: var(--kiora-section-y) var(--kiora-gutter); text-align: center; }
.kiora-quality__text h2 { font-size: clamp(24px, 3vw, 32px); margin: 0 0 8px; }
.kiora-quality__text p { color: var(--kiora-taupe); margin: 0; }
.kiora-quality__grid {
	max-width: var(--kiora-container); margin: 44px auto 0;
	display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px;
}
.kiora-quality__item {
	display: flex; flex-direction: column; align-items: center; gap: 12px;
	font-size: 12px; text-transform: uppercase; letter-spacing: 0.06em; font-weight: 500;
	padding: 16px 8px; border-left: 1px solid var(--kiora-line);
}
.kiora-quality__item:first-child { border-left: none; }
.kiora-quality__icon { font-size: 26px; color: var(--kiora-gold); }

/* ---------- Category Grid ---------- */
.kiora-category-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(16px, 2vw, 26px); }
.kiora-category-card { position: relative; display: block; aspect-ratio: 4/5; border-radius: var(--kiora-radius); overflow: hidden; }
.kiora-category-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.kiora-category-card:hover img { transform: scale(1.08); }
.kiora-category-card span {
	position: absolute; inset: auto 0 0 0; padding: 24px 16px;
	background: linear-gradient(0deg, rgba(51,45,42,0.8) 0%, transparent 100%);
	color: #fff; font-family: var(--kiora-font-heading); font-size: 19px; text-align: center;
	letter-spacing: 0.02em;
}

/* ---------- Footer ---------- */
.kiora-footer { background: var(--kiora-charcoal); color: var(--kiora-ivory); padding: var(--kiora-section-y) var(--kiora-gutter) 24px; }
.kiora-footer__inner { max-width: var(--kiora-container); margin: 0 auto; display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px; }
.kiora-footer .kiora-logo__text { color: var(--kiora-champagne); }
.kiora-footer__col p { color: rgba(247,241,234,0.65); font-size: 14px; margin-top: 14px; }
.kiora-footer__contact { display: flex; flex-direction: column; gap: 8px; margin-top: 18px; }
.kiora-footer__contact a { color: var(--kiora-champagne); font-size: 14px; }
.kiora-footer__contact a:hover { color: var(--kiora-white); }
.kiora-footer__social { display: flex; gap: 14px; margin-top: 18px; }
.kiora-footer__social a { color: rgba(247,241,234,0.75); display: flex; }
.kiora-footer__social a:hover { color: var(--kiora-champagne); }
.kiora-footer h4 { color: var(--kiora-champagne); font-size: 13px; text-transform: uppercase; letter-spacing: 0.1em; margin: 0 0 18px; font-weight: 500; }
.kiora-footer ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.kiora-footer a { color: rgba(247,241,234,0.75); font-size: 14px; }
.kiora-footer a:hover { color: var(--kiora-champagne); }
.kiora-footer__bottom { max-width: var(--kiora-container); margin: 44px auto 0; padding-top: 22px; border-top: 1px solid rgba(255,255,255,0.12); font-size: 12px; color: rgba(247,241,234,0.5); text-align: center; }

/* ---------- Quick View Modal ---------- */
.kiora-modal { position: fixed; inset: 0; z-index: 1000; display: none; }
.kiora-modal.is-open { display: block; }
.kiora-modal__backdrop { position: absolute; inset: 0; background: rgba(51,45,42,0.65); }
.kiora-modal__panel {
	position: relative; max-width: 820px; margin: 5vh auto; background: var(--kiora-white);
	border-radius: var(--kiora-radius); padding: clamp(24px, 4vw, 40px); max-height: 90vh; overflow-y: auto;
}
.kiora-modal__close { position: absolute; top: 18px; right: 22px; background: none; border: none; font-size: 26px; cursor: pointer; color: var(--kiora-taupe); line-height: 1; }
.kiora-modal__close:hover { color: var(--kiora-charcoal); }
.kiora-quickview { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; }
.kiora-quickview__gallery img { border-radius: var(--kiora-radius); }
.kiora-quickview__title { font-size: 25px; margin: 0 0 10px; }
.kiora-quickview__price { color: var(--kiora-gold); font-weight: 600; margin-bottom: 16px; font-size: 19px; }
.kiora-quickview__excerpt { color: var(--kiora-taupe); font-size: 14px; margin-bottom: 16px; }
.kiora-quickview__link { display: inline-block; margin-top: 16px; font-size: 12.5px; text-transform: uppercase; letter-spacing: 0.08em; border-bottom: 1px solid var(--kiora-charcoal); padding-bottom: 2px; }

/* ---------- Sticky mobile add-to-cart ---------- */
.kiora-sticky-cart { display: none; }

/* ---------- WhatsApp float ---------- */
.kiora-whatsapp-float {
	position: fixed; bottom: 26px; right: 26px; z-index: 500;
	width: 56px; height: 56px; border-radius: 50%;
	background: #25D366; color: #fff; display: flex; align-items: center; justify-content: center;
	box-shadow: 0 8px 22px rgba(0,0,0,0.22); transition: transform var(--kiora-transition);
}
.kiora-whatsapp-float:hover { transform: scale(1.08); }

/* ==========================================================================
   WooCommerce global UI — cart, checkout, single product, my account,
   notices, forms, tables, pagination — restyled to match the brand so the
   whole storefront feels like one product, not "theme + default WooCommerce".
   ========================================================================== */

.woocommerce, .woocommerce-page {
	max-width: var(--kiora-container); margin: 0 auto; padding: var(--kiora-section-y) var(--kiora-gutter);
}

/* Breadcrumb */
.woocommerce-breadcrumb {
	font-size: 12px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--kiora-taupe);
	margin-bottom: 32px; padding-bottom: 16px; border-bottom: 1px solid var(--kiora-line);
}
.woocommerce-breadcrumb a:hover { color: var(--kiora-gold); }

/* Notices (success/error/info) */
.woocommerce-message, .woocommerce-error, .woocommerce-info, .woocommerce-noreviews {
	background: var(--kiora-white); border: 1px solid var(--kiora-line); border-left: 3px solid var(--kiora-gold);
	border-radius: var(--kiora-radius); padding: 18px 22px; margin-bottom: 28px; list-style: none;
	font-size: 14px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px;
}
.woocommerce-error { border-left-color: #b3261e; }

/* Forms: cart, checkout, my account, review forms */
.woocommerce form .form-row label { font-size: 13px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--kiora-taupe); margin-bottom: 6px; display: block; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce table.shop_table td select,
.woocommerce-page select,
.woocommerce #order_comments,
.select2-container .select2-selection--single {
	background: var(--kiora-white); border: 1px solid var(--kiora-line) !important; border-radius: var(--kiora-radius);
	padding: 12px 14px; font-size: 14px; color: var(--kiora-charcoal); width: 100%; height: auto !important;
	transition: border-color var(--kiora-transition);
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus { border-color: var(--kiora-gold) !important; outline: none; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 44px; }
.select2-container--default .select2-selection--single { height: 46px; }

/* Quantity input (cart, product page, cards) */
.quantity { display: inline-flex; border: 1px solid var(--kiora-line); border-radius: var(--kiora-radius); overflow: hidden; }
.quantity .qty {
	width: 52px; text-align: center; border: none !important; padding: 10px 4px;
	background: var(--kiora-white); font-size: 14px; -moz-appearance: textfield;
}

/* Cart & checkout review tables */
.woocommerce table.shop_table {
	border: none; border-collapse: collapse; width: 100%; margin-bottom: 32px;
}
.woocommerce table.shop_table th {
	text-transform: uppercase; font-size: 11.5px; letter-spacing: 0.08em; color: var(--kiora-taupe);
	border-bottom: 1px solid var(--kiora-charcoal); padding: 14px 10px; text-align: left; font-weight: 500;
}
.woocommerce table.shop_table td { padding: 18px 10px; border-bottom: 1px solid var(--kiora-line); vertical-align: middle; }
.woocommerce table.shop_table td.product-name a { font-family: var(--kiora-font-heading); font-size: 16px; }
.woocommerce table.shop_table .product-thumbnail img { border-radius: var(--kiora-radius); width: 72px; }
.woocommerce table.shop_table tfoot th, .woocommerce table.shop_table tfoot td {
	border-bottom: none; padding: 14px 10px; font-size: 14px;
}
.woocommerce table.shop_table tfoot tr:last-child th,
.woocommerce table.shop_table tfoot tr:last-child td {
	font-family: var(--kiora-font-heading); font-size: 20px; color: var(--kiora-charcoal); border-top: 1px solid var(--kiora-charcoal); padding-top: 18px;
}
.woocommerce-cart-form .actions { padding-top: 20px; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
.woocommerce a.remove { color: var(--kiora-taupe) !important; font-size: 20px; }
.woocommerce a.remove:hover { color: #b3261e !important; background: transparent !important; }

/* Checkout layout */
.woocommerce-checkout #customer_details, .woocommerce-checkout #order_review { background: var(--kiora-white); }
#order_review_heading, .woocommerce-checkout h3 { font-size: 22px; margin: 40px 0 20px; }
.woocommerce-checkout-review-order-table { background: var(--kiora-beige); padding: 20px; border-radius: var(--kiora-radius); }
.woocommerce-checkout-payment { background: var(--kiora-beige) !important; border-radius: var(--kiora-radius); padding: 20px; }
ul.wc_payment_methods { list-style: none; padding: 0; }
ul.wc_payment_methods li { border-bottom: 1px solid var(--kiora-line); padding: 14px 0; }
ul.wc_payment_methods li:last-child { border-bottom: none; }

/* Single product */
.woocommerce div.product { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; }
.woocommerce div.product .summary { padding-top: 4px; }
.woocommerce div.product .product_title { font-size: clamp(26px, 3vw, 36px); margin: 0 0 10px; }
.woocommerce div.product p.price { font-size: 22px; color: var(--kiora-gold); margin-bottom: 20px; }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--kiora-taupe); margin-bottom: 22px; }
.woocommerce div.product form.cart { display: flex; align-items: center; gap: 16px; margin-bottom: 28px; flex-wrap: wrap; }
.star-rating { color: var(--kiora-gold); }
.star-rating span::before { color: var(--kiora-gold); }
.woocommerce-tabs ul.tabs { list-style: none; display: flex; gap: 32px; padding: 0; border-bottom: 1px solid var(--kiora-line); margin-bottom: 28px; }
.woocommerce-tabs ul.tabs li { padding: 0 0 14px; font-size: 13px; text-transform: uppercase; letter-spacing: 0.06em; }
.woocommerce-tabs ul.tabs li.active { border-bottom: 2px solid var(--kiora-gold); color: var(--kiora-gold); }
.woocommerce-tabs ul.tabs li a { color: inherit; }
.related.products { margin-top: 72px; }
.related.products > h2 { font-size: 28px; text-align: center; margin-bottom: 36px; }

/* Sorting / result count / pagination on shop archive */
.woocommerce-result-count { color: var(--kiora-taupe); font-size: 13px; }
.woocommerce-ordering select { max-width: 220px; }
.woocommerce-notices-wrapper:empty { display: none; }
nav.woocommerce-pagination ul { border: none; display: flex; gap: 8px; }
nav.woocommerce-pagination ul li { border: none; }
nav.woocommerce-pagination ul li a, nav.woocommerce-pagination ul li span {
	border: 1px solid var(--kiora-line) !important; border-radius: var(--kiora-radius); padding: 8px 14px; color: var(--kiora-charcoal);
}
nav.woocommerce-pagination ul li a:hover, nav.woocommerce-pagination ul li span.current {
	background: var(--kiora-charcoal) !important; color: var(--kiora-white) !important; border-color: var(--kiora-charcoal) !important;
}

/* Shop filters row */
.woocommerce-products-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 32px; flex-wrap: wrap; gap: 16px; }

/* My Account */
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.woocommerce-MyAccount-navigation li a {
	display: block; padding: 12px 16px; font-size: 13px; text-transform: uppercase; letter-spacing: 0.05em;
	border-radius: var(--kiora-radius); color: var(--kiora-taupe);
}
.woocommerce-MyAccount-navigation li.is-active a, .woocommerce-MyAccount-navigation li a:hover {
	background: var(--kiora-beige); color: var(--kiora-charcoal);
}
.woocommerce-MyAccount-content { background: var(--kiora-white); border: 1px solid var(--kiora-line); border-radius: var(--kiora-radius); padding: clamp(20px, 3vw, 36px); }
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content { display: inline-block; vertical-align: top; }
.woocommerce-account .woocommerce-MyAccount-navigation { width: 230px; margin-right: 32px; }
.woocommerce-account .woocommerce-MyAccount-content { width: calc(100% - 270px); }
.kiora-empty-wishlist { text-align: center; padding: 40px 0; color: var(--kiora-taupe); }

/* ---------- Responsive: Tablet ---------- */
@media (max-width: 1024px) {
	.kiora-product-grid, ul.products.kiora-product-grid { grid-template-columns: repeat(3, 1fr); }
	.kiora-category-grid { grid-template-columns: repeat(2, 1fr); }
	.kiora-footer__inner { grid-template-columns: 1fr 1fr; row-gap: 32px; }
	.kiora-quality__grid { grid-template-columns: repeat(3, 1fr); }
	.woocommerce div.product { grid-template-columns: 1fr; gap: 32px; }
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content { width: 100%; margin-right: 0; display: block; }
	.woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom: 24px; }
	.woocommerce-MyAccount-navigation ul { flex-direction: row; flex-wrap: wrap; }
}

/* ---------- Responsive: Mobile ---------- */
@media (max-width: 768px) {
	.kiora-nav {
		position: fixed; top: 0; left: -300px; width: min(300px, 82vw); height: 100vh;
		background: var(--kiora-white); padding: 100px 28px 28px; transition: left var(--kiora-transition);
		box-shadow: 4px 0 24px rgba(0,0,0,0.1); z-index: 10; overflow-y: auto;
	}
	.kiora-nav.is-open { left: 0; }
	.kiora-nav__list { flex-direction: column; align-items: flex-start; gap: 24px; }
	.kiora-nav__list a { font-size: 14px; }
	.kiora-hamburger { display: flex; }
	.kiora-header__icons { gap: 14px; }
	.kiora-hero__content { text-align: left; }
	.kiora-product-grid, ul.products.kiora-product-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
	.kiora-card-title { font-size: 14.5px; }
	.kiora-card-info { padding: 14px 12px 18px; }
	.kiora-category-grid { grid-template-columns: 1fr 1fr; }
	.kiora-quality__grid { grid-template-columns: repeat(2, 1fr); }
	.kiora-quality__item { border-left: none !important; }
	.kiora-footer__inner { grid-template-columns: 1fr; text-align: left; }
	.kiora-quickview { grid-template-columns: 1fr; }
	.woocommerce, .woocommerce-page { padding: 32px var(--kiora-gutter) 96px; }
	.woocommerce div.product form.cart { flex-direction: column; align-items: stretch; }

	.kiora-sticky-cart {
		display: flex; position: fixed; bottom: 0; left: 0; right: 0; z-index: 400;
		background: var(--kiora-white); padding: 14px 20px; align-items: center; justify-content: space-between;
		box-shadow: 0 -6px 20px rgba(0,0,0,0.1); border-top: 1px solid var(--kiora-line);
	}
	.kiora-sticky-cart__price { font-weight: 600; color: var(--kiora-gold); }
}

@media (max-width: 480px) {
	.kiora-product-grid, ul.products.kiora-product-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
	.kiora-hero { min-height: 460px; }
	.kiora-quality__grid { grid-template-columns: 1fr 1fr; }
}
