/*!
 * SK Horma: WooCommerce styles (shop, cards, product page, cart drawer, account, checkout).
 */

/* ---------- Notices ---------- */
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner {
	list-style: none; margin: 0 0 24px; padding: 14px 18px; border-left: 2px solid var(--skh-ink);
	background: var(--skh-soft); font-size: 14px; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between;
}
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error { border-top: 0; padding: 14px 18px; position: relative; color: var(--skh-ink); }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { content: none !important; display: none !important; }
.woocommerce-message::after, .woocommerce-info::after, .woocommerce-error::after { content: none !important; }
.woocommerce-info { border-color: var(--skh-ink); }
.woocommerce .woocommerce-message .button, .woocommerce .woocommerce-info .button { float: none; margin-left: auto; }
.woocommerce-error { border-color: var(--skh-error); }
.woocommerce-message { border-color: var(--skh-ok); }
.woocommerce-message .button, .woocommerce-info .button { min-height: 36px; padding: 0 16px; order: 2; }

/* ---------- Breadcrumbs ---------- */
.skh-crumbs { display: flex; flex-wrap: wrap; gap: 8px; padding-block: 18px; font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--skh-muted); }
.skh-crumbs a:hover { color: var(--skh-ink); }

/* ---------- Shop ---------- */
.skh-shop__head { padding-block: 8px 28px; text-align: center; }
.skh-shop__head .skh-crumbs { justify-content: center; }
.skh-shop__title { margin: 8px 0 0; font-size: clamp(20px, 2.4vw, 30px); letter-spacing: .16em; }
.term-description, .page-description { max-width: 720px; margin: 12px auto 0; color: var(--skh-muted); font-size: 14px; }
.skh-shop__body--side { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 40px; align-items: start; }

/* Filters bar */
.skh-filters { position: relative; z-index: 20; margin-bottom: 28px; }
.skh-filters__bar {
	display: flex; justify-content: space-between; align-items: center; gap: 16px;
	border-block: 1px solid var(--skh-line); min-height: 56px;
}
.skh-filters__toggle { display: none; align-items: center; gap: 8px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.skh-filters__panel { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }
.skh-filters__panel-head { display: none; }
.skh-filter { position: relative; }
.skh-filter > summary {
	display: flex; align-items: center; gap: 6px; padding-block: 16px; list-style: none; cursor: pointer;
	font-size: 12px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase;
}
.skh-filter > summary::-webkit-details-marker { display: none; }
.skh-filter > summary .skh-icon { width: 14px; height: 14px; transition: transform .3s; }
.skh-filter[open] > summary .skh-icon { transform: rotate(180deg); }
.skh-filter__n { color: var(--skh-muted); }
.skh-filters--bar .skh-filter[open] > :not(summary) {
	position: absolute; top: 100%; left: -20px; z-index: 30; min-width: 240px; max-height: 360px; overflow: auto;
	padding: 18px 20px; background: var(--skh-bg); border: 1px solid var(--skh-line); box-shadow: 0 18px 40px -24px rgba(0, 0, 0, .25);
	animation: skh-fade .3s var(--skh-ease);
}
.skh-filter__list { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.skh-filter__list--sizes { grid-template-columns: repeat(4, minmax(46px, 1fr)); gap: 6px; }
.skh-filter__opt, .skh-filter__flag { display: flex; align-items: center; gap: 10px; font-size: 14px; cursor: pointer; }
.skh-filter__box { width: 16px; height: 16px; flex: none; border: 1px solid var(--skh-ink); display: grid; place-items: center; }
.is-on > .skh-filter__box::after { content: ""; width: 8px; height: 8px; background: var(--skh-ink); }
.skh-filter__dot { width: 18px; height: 18px; flex: none; border-radius: 50%; background: var(--c); box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .12); }
.skh-filter__opt.is-on .skh-filter__dot { box-shadow: 0 0 0 2px var(--skh-bg), 0 0 0 3px var(--skh-ink); }
.skh-filter__list--sizes .skh-filter__opt { justify-content: center; height: 40px; border: 1px solid var(--skh-line); font-size: 13px; transition: border-color .2s; }
.skh-filter__list--sizes .skh-filter__opt:hover { border-color: var(--skh-ink); }
.skh-filter__list--sizes .skh-filter__opt.is-on { background: var(--skh-ink); border-color: var(--skh-ink); color: var(--skh-bg); }
.skh-filter__price { display: grid; gap: 18px; min-width: 260px; }
.skh-filter__price button { width: 100%; }
/* Price range slider: two native range inputs on one track. */
.skh-range { --skh-thumb: 18px; display: grid; gap: 12px; }
.skh-range__vals { display: flex; align-items: center; justify-content: center; gap: 10px; font-size: 15px; font-variant-numeric: tabular-nums; }
.skh-range__vals output { min-width: 4.5em; padding: 7px 10px; border: 1px solid var(--skh-line); border-radius: var(--skh-radius, 0); text-align: center; }
.skh-range__track { position: relative; height: var(--skh-thumb); }
.skh-range__track::before, .skh-range__fill { content: ""; position: absolute; top: 50%; height: 2px; margin-top: -1px; border-radius: 2px; }
.skh-range__track::before { left: 0; right: 0; background: var(--skh-line); }
.skh-range__fill { left: calc(var(--skh-thumb) / 2 + (100% - var(--skh-thumb)) * var(--lo-n, 0)); right: calc(var(--skh-thumb) / 2 + (100% - var(--skh-thumb)) * (1 - var(--hi-n, 1))); background: var(--skh-ink); }
.skh-range input[type="range"] { position: absolute; inset: 0; width: 100%; height: var(--skh-thumb); min-height: 0; margin: 0; padding: 0; border: 0; background: none; -webkit-appearance: none; appearance: none; pointer-events: none; }
.skh-range input[type="range"]::-webkit-slider-runnable-track { height: var(--skh-thumb); background: none; }
.skh-range input[type="range"]::-moz-range-track { height: var(--skh-thumb); background: none; }
.skh-range input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: var(--skh-thumb); height: var(--skh-thumb); border: 2px solid var(--skh-ink); border-radius: 50%; background: var(--skh-bg); cursor: grab; pointer-events: auto; transition: transform .15s; }
.skh-range input[type="range"]::-moz-range-thumb { width: var(--skh-thumb); height: var(--skh-thumb); box-sizing: border-box; border: 2px solid var(--skh-ink); border-radius: 50%; background: var(--skh-bg); cursor: grab; pointer-events: auto; }
.skh-range input[type="range"]:active::-webkit-slider-thumb { cursor: grabbing; transform: scale(1.15); }
.skh-range input[type="range"]:focus-visible::-webkit-slider-thumb { outline: 2px solid var(--skh-accent); outline-offset: 2px; }
.skh-range input[type="range"]:focus-visible::-moz-range-thumb { outline: 2px solid var(--skh-accent); outline-offset: 2px; }
.skh-range__ends { display: flex; justify-content: space-between; font-size: 11.5px; color: var(--skh-muted); }
.skh-filters__tools { display: flex; align-items: center; gap: 20px; margin-left: auto; }
.skh-filters__count { margin: 0; font-size: 12px; color: var(--skh-muted); white-space: nowrap; }
.skh-filters__count p { margin: 0; font-size: 12px; }
@media (max-width: 700px) { .skh-pdp-wrap .skh-crumbs { flex-wrap: nowrap; overflow: hidden; white-space: nowrap; } .skh-pdp-wrap .skh-crumbs > :last-child { overflow: hidden; text-overflow: ellipsis; } }
.skh-sort select { min-height: 40px; border: 0; padding-left: 0; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; background-color: transparent; }
.skh-colswitch { display: flex; gap: 4px; }
.skh-colswitch button { width: 32px; height: 32px; display: grid; place-items: center; color: var(--skh-muted); }
.skh-colswitch button.is-on, .skh-colswitch button:hover { color: var(--skh-ink); }
.skh-colswitch .skh-icon { width: 16px; height: 16px; }
.skh-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 16px; }
.skh-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid var(--skh-line); border-radius: 999px; font-size: 12px; }
.skh-chip:hover { border-color: var(--skh-ink); }

/* Sidebar layout */
.skh-filters--sidebar { margin: 0; position: sticky; top: calc(var(--skh-top-offset) + var(--skh-hh) + 16px); }
.skh-filters--sidebar .skh-filters__bar { display: block; border: 0; }
.skh-filters--sidebar .skh-filters__panel { display: block; }
.skh-filters--sidebar .skh-filter { border-bottom: 1px solid var(--skh-line); }
.skh-filters--sidebar .skh-filter[open] > :not(summary) { padding-bottom: 18px; }
.skh-filters--sidebar .skh-filter__flag { padding-block: 12px; }
.skh-filters--sidebar .skh-filters__tools { margin-top: 20px; flex-wrap: wrap; }
.skh-shop__body--side .skh-filters--sidebar .skh-filters__tools { display: none; }

/* Drawer layout and mobile: the panel becomes a side drawer */
.skh-filters--drawer .skh-filters__toggle { display: inline-flex; }
.skh-filters--drawer .skh-filters__panel,
.skh-filters__panel.is-drawer {
	position: fixed; top: 0; bottom: 0; left: 0; z-index: 100; display: block; width: min(400px, 100vw);
	overflow-y: auto; padding: 0 24px 24px; background: var(--skh-bg);
	transform: translateX(-100%); visibility: hidden; transition: transform .5s var(--skh-ease), visibility .5s;
}
.skh-filters__panel.is-open { transform: none; visibility: visible; }
.skh-filters--drawer .skh-filters__panel-head, .skh-filters__panel.is-drawer .skh-filters__panel-head {
	display: flex; justify-content: space-between; align-items: center; min-height: 64px; margin: 0 -12px 8px 0; border-bottom: 1px solid var(--skh-line);
}
.skh-filters--drawer .skh-filter, .skh-filters__panel.is-drawer .skh-filter { border-bottom: 1px solid var(--skh-line); }
.skh-filters--drawer .skh-filter[open] > :not(summary), .skh-filters__panel.is-drawer .skh-filter[open] > :not(summary) {
	position: static; min-width: 0; max-height: none; padding: 0 0 18px; border: 0; box-shadow: none;
}
.skh-filters--drawer .skh-filter__flag, .skh-filters__panel.is-drawer .skh-filter__flag { padding-block: 12px; }
@media (max-width: 1000px) {
	.skh-cartpage .wc-block-cart__main { padding-right: 0 !important; width: 100%; }
	.skh-cartpage .wc-block-cart__sidebar { position: static; margin-top: 24px; }
	.skh-shop__body--side { grid-template-columns: 1fr; }
	.skh-filters--sidebar { position: relative; top: 0; }
	.skh-filters--sidebar .skh-filters__bar { display: flex; border-block: 1px solid var(--skh-line); }
	.skh-shop__body--side .skh-filters--sidebar .skh-filters__tools { display: flex; }
	.skh-filters__toggle { display: inline-flex; }
	.skh-filters__panel {
		position: fixed; top: 0; bottom: 0; left: 0; z-index: 100; display: block; width: min(400px, 100vw);
		overflow-y: auto; padding: 0 24px 24px; background: var(--skh-bg);
		transform: translateX(-100%); visibility: hidden; transition: transform .5s var(--skh-ease), visibility .5s;
	}
	.skh-filters__panel-head { display: flex; justify-content: space-between; align-items: center; min-height: 64px; margin: 0 -12px 8px 0; border-bottom: 1px solid var(--skh-line); }
	.skh-filter { border-bottom: 1px solid var(--skh-line); }
	.skh-filters .skh-filter[open] > :not(summary) { position: static; min-width: 0; max-height: none; padding: 0 0 18px; border: 0; box-shadow: none; }
	.skh-filter__flag { padding-block: 12px; }
	.skh-filters__count { display: none; }
}

/* ---------- Product grid and cards ---------- */
ul.products, .skh-grid {
	display: grid; grid-template-columns: repeat(var(--skh-cols), minmax(0, 1fr));
	gap: 36px var(--skh-grid-gap); margin: 0; padding: 0; list-style: none;
}
ul.products::before, ul.products::after { display: none; }
.skh-grid.is-cols-2 { --skh-cols: 2 !important; }
.skh-grid.is-cols-3 { --skh-cols: 3 !important; }
.skh-grid.is-cols-4 { --skh-cols: 4 !important; }
.skh-grid.is-cols-5 { --skh-cols: 5 !important; }
/* SK widgets (.skhc-products) take their columns from their own Elementor settings. */
@media (max-width: 1100px) { ul.products:not(.skhc-products), .skh-grid:not(.skhc-products) { --skh-cols: var(--skh-cols-t) !important; } }
@media (max-width: 700px) { ul.products:not(.skhc-products), .skh-grid:not(.skhc-products) { --skh-cols: var(--skh-cols-m) !important; row-gap: 28px; column-gap: 8px; } }
.skh-card, ul.products li.product { position: relative; display: grid; gap: 12px; align-content: start; margin: 0; width: auto; float: none; }
.skh-card__media { position: relative; overflow: hidden; aspect-ratio: var(--skh-img-ratio); background: var(--skh-card-bg, var(--skh-soft)); border-radius: var(--skh-radius-card); }
.skh-card__link { display: block; width: 100%; height: 100%; }
/* ".skh-card" in front: Elementor's ".elementor img { height: auto }" must not shrink the photo inside widgets. */
.skh-card .skh-card__media img { display: block; width: 100%; height: var(--skh-card-h, 100%); max-width: none; margin: 0; padding: var(--skh-card-pad, 0); box-sizing: border-box; border-radius: 0; object-fit: var(--skh-card-fit, cover); object-position: var(--skh-card-pos, center); transition: opacity .6s, transform 1.2s var(--skh-ease); }
.skh-card__img2 { position: absolute; inset: 0; opacity: 0; }
@media (hover: hover) {
	.skh-card:hover .skh-card__img2 { opacity: 1; }
	.skh-card:hover .skh-card__media img { transform: scale(1.03); }
}
.skh-badge {
	position: absolute; top: 12px; left: 12px; z-index: 2; padding: 4px 8px; background: var(--skh-bg); color: var(--skh-ink);
	font-size: 10px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase;
}
.skh-badge--sale { background: var(--skh-sale); color: #fff; }
.skh-badge--out { background: var(--skh-ink); color: var(--skh-bg); }
.skh-card__wish {
	position: absolute; top: 6px; right: 6px; z-index: 2; width: 40px; height: 40px; display: grid; place-items: center;
	transition: transform .3s var(--skh-ease);
}
.skh-card__wish:active { transform: scale(.85); }
.skh-card__wish[aria-pressed="true"] .skh-icon { fill: var(--skh-accent); stroke: var(--skh-accent); }
.skh-card__quick {
	position: absolute; left: 8px; right: 8px; bottom: 8px; z-index: 2; padding: 12px; text-align: center;
	background: color-mix(in srgb, var(--skh-bg) 94%, transparent); backdrop-filter: blur(6px);
	transform: translateY(calc(100% + 12px)); transition: transform .45s var(--skh-ease);
}
.skh-card__quick p { margin: 0 0 8px; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--skh-muted); }
.skh-card__sizes { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px; }
.skh-card__sizes button { min-width: 34px; height: 30px; padding: 0 6px; font-size: 12px; border: 1px solid transparent; transition: border-color .2s; }
.skh-card__sizes button:hover { border-color: var(--skh-ink); }
.skh-card__sizes button:disabled { color: var(--skh-muted); text-decoration: line-through; cursor: not-allowed; }
.skh-card__sizes button.is-loading { opacity: .5; }
.skh-card__add { width: 100%; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
@media (hover: hover) { .skh-card:hover .skh-card__quick, .skh-card:focus-within .skh-card__quick { transform: none; } }
@media (hover: none) { .skh-card__quick { display: none; } }
.skh-card__body { display: grid; gap: 6px; align-content: start; }
.skh-card__body > .skh-pos:empty { display: none; }
.skh-card__body .skhc-cmp-toggle { margin-top: 0; }
.skh-card__rating .star-rating { margin: 0; font-size: 11px; }
.skh-card__title { margin: 0; font-family: var(--skh-font-body); font-size: 12.5px; font-weight: 500; letter-spacing: .1em; line-height: 1.4; }
.skh-card__meta { margin: 0; color: var(--skh-muted); font-size: 12.5px; }
.skh-card__price, .price { font-size: 13.5px; }
.price del { color: var(--skh-muted); margin-right: 6px; font-size: .92em; }
.price ins { text-decoration: none; color: var(--skh-sale); }
.skh-swatches { display: flex; gap: 12px; align-items: center; margin: 4px 0 0; padding: 0; list-style: none; }
.skh-swatches li { width: 12px; height: 12px; border-radius: 50%; background: var(--c); box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .12); }
.skh-swatches__more { width: auto !important; height: auto !important; background: none !important; box-shadow: none !important; font-size: 11px; color: var(--skh-muted); }
.skh-swatches li { position: relative; }
.skh-swatches li.is-on { box-shadow: 0 0 0 1px var(--skh-bg), 0 0 0 2px var(--skh-ink); }
.skh-swatches a { position: absolute; inset: -6px; border-radius: 50%; }
/* Card layouts */
.skh-card--sizes-always .skh-card__quick,
.skh-card--boxed .skh-card__body .skh-card__quick { position: static; transform: none; padding: 6px 0 0; background: none; backdrop-filter: none; text-align: left; }
.skh-card--sizes-always .skh-card__quick p, .skh-card--boxed .skh-card__body .skh-card__quick p { display: none; }
.skh-card__body .skh-card__sizes { justify-content: flex-start; gap: 4px; }
.skh-card__body .skh-card__sizes button { min-width: 30px; height: 26px; font-size: 11.5px; border-color: var(--skh-line); }
.skh-card__body .skh-card__sizes button:hover:not(:disabled) { border-color: var(--skh-ink); }
@media (hover: none) { .skh-card__body .skh-card__quick { display: block; } }
.skh-card--centered .skh-card__body, .skh-card--boxed .skh-card__body { text-align: center; justify-items: center; }
.skh-card--centered .skh-card__sizes, .skh-card--boxed .skh-card__body .skh-card__sizes,
.skh-card--centered .skh-swatches, .skh-card--boxed .skh-swatches { justify-content: center; }
.skh-card--centered .skh-card__body .skh-card__quick, .skh-card--boxed .skh-card__body .skh-card__quick { text-align: center; }
.skh-card--boxed { padding: 10px 10px 16px; border: 1px solid var(--skh-line); border-radius: var(--skh-radius-card); background: var(--skh-bg); transition: box-shadow .35s var(--skh-ease), border-color .35s; }
.skh-card--boxed:hover { border-color: transparent; box-shadow: 0 10px 30px rgba(20, 20, 30, .08); }
.skh-card__cta { width: 100%; margin-top: 10px; }
@media (min-width: 701px) {
	.skh-card--overlay { gap: 0; }
	.skh-card--overlay .skh-card__media { aspect-ratio: var(--skh-img-ratio); }
	.skh-card--overlay .skh-card__body {
		position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; padding: 48px 16px 16px; color: #fff; pointer-events: none;
		background: linear-gradient(to top, rgba(10, 10, 14, .78), rgba(10, 10, 14, 0)); border-radius: 0 0 var(--skh-radius-card) var(--skh-radius-card);
		transition: opacity .35s;
	}
	.skh-card--overlay .skh-card__body a, .skh-card--overlay .skh-card__body button, .skh-card--overlay .skh-swatches li { pointer-events: auto; }
	.skh-card--overlay .skh-card__title a, .skh-card--overlay .price, .skh-card--overlay .price ins { color: #fff; }
	.skh-card--overlay .skh-card__meta, .skh-card--overlay .price del { color: rgba(255, 255, 255, .7); }
	.skh-card--overlay .skh-card__body .skh-card__sizes button { color: #fff; border-color: rgba(255, 255, 255, .4); }
	.skh-card--overlay .skh-card__body .skh-card__sizes button:hover:not(:disabled) { border-color: #fff; }
	.skh-card--overlay .skh-card__body .skh-card__sizes button:disabled { color: rgba(255, 255, 255, .5); }
	@media (hover: hover) { .skh-card--overlay.skh-card--sizes-hover:hover .skh-card__body, .skh-card--overlay.skh-card--sizes-hover:focus-within .skh-card__body { opacity: 0; } }
}
.skh-card--inline .skh-card__body { grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; align-items: start; }
.skh-card--inline .skh-card__price { text-align: right; white-space: nowrap; }
.skh-card--inline .skh-card__price .price del { display: block; margin: 0; }
.skh-card--inline .skh-card__body > * { grid-column: 1 / -1; }
.skh-card--inline .skh-card__body > .skh-card__title { grid-column: 1; grid-row: 1; }
.skh-card--inline .skh-card__body > .skh-card__price { grid-column: 2; grid-row: 1; }
.skh-card--actions .skh-card__wish, .skh-card--actions .skhc-qv-btn, .skh-card__icon {
	position: absolute; right: 10px; z-index: 2; width: 38px; height: 38px; display: grid; place-items: center;
	background: var(--skh-bg); color: var(--skh-ink); border-radius: 50%; box-shadow: 0 2px 10px rgba(20, 20, 30, .1);
	transition: opacity .3s, transform .4s var(--skh-ease), background .2s, color .2s;
}
.skh-card--actions .skh-card__wish { top: 10px; }
.skh-card--actions .skhc-qv-btn { top: 54px; }
.skh-card__icon { top: 98px; }
.skh-card__icon .skh-icon { width: 18px; height: 18px; }
.skh-card--actions .skh-card__wish:hover, .skh-card--actions .skhc-qv-btn:hover, .skh-card__icon:hover { background: var(--skh-ink); color: var(--skh-bg); }
@media (hover: hover) {
	.skh-card--actions .skhc-qv-btn, .skh-card__icon { opacity: 0; transform: translateX(10px); }
	.skh-card--actions .skhc-qv-btn { transition-delay: .04s; }
	.skh-card__icon { transition-delay: .08s; }
	.skh-card--actions:hover .skhc-qv-btn, .skh-card--actions:hover .skh-card__icon, .skh-card--actions:focus-within .skhc-qv-btn, .skh-card--actions:focus-within .skh-card__icon { opacity: 1; transform: none; }
}
.skh-card--actions .skh-card__body { text-align: center; justify-items: center; }
.skh-card--actions .skh-swatches, .skh-card--actions .skh-card__body .skh-card__sizes { justify-content: center; }
.woocommerce-loop-product__title { font-size: 12.5px; }
.woocommerce-info.woocommerce-no-products-found { justify-content: center; }

/* Load more */
.skh-more { display: grid; justify-items: center; gap: 14px; margin-top: 56px; text-align: center; }
.skh-more__count { margin: 0; font-size: 12px; color: var(--skh-muted); letter-spacing: .06em; }
.skh-more__bar { position: relative; width: 200px; height: 2px; background: var(--skh-line); }
.skh-more__bar span { position: absolute; inset: 0 auto 0 0; background: var(--skh-ink); transition: width .6s var(--skh-ease); }

/* ---------- Product page ---------- */
.skh-pdp-wrap { margin-bottom: var(--skh-section); }
.skh-pdp {
	display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(320px, 1fr); gap: clamp(24px, 4vw, 72px);
	align-items: start; max-width: var(--skh-container); margin-inline: auto; padding-inline: 0 var(--skh-pad);
}
.skh-pdp__summary { padding-top: 12px; }
.skh-pdp--sticky .skh-pdp__summary { position: sticky; top: calc(var(--skh-top-offset) + var(--skh-hh) + 24px); }
.skh-pdp__summary-in { max-width: 480px; }
.skh-pdp__summary .product_title { font-size: clamp(18px, 2vw, 26px); letter-spacing: .12em; margin-bottom: 6px; }
.skh-pdp__color { margin: 0 0 12px; color: var(--skh-muted); font-size: 13px; }
.skh-pdp__summary .price { display: block; margin-bottom: 18px; font-size: 18px; }
.skh-pdp__summary .woocommerce-product-details__short-description { margin-bottom: 20px; color: var(--skh-muted); font-size: 14px; }
.skh-pdp__summary .woocommerce-product-rating { display: flex; gap: 8px; align-items: center; margin-bottom: 10px; font-size: 12px; }

/* Gallery */
.skh-gallery { position: relative; }
.skh-gallery__track { display: grid; gap: 4px; }
.skh-gallery--grid .skh-gallery__track { grid-template-columns: 1fr 1fr; }
.skh-gallery--grid .skh-gallery__item:first-child:nth-last-child(odd) { grid-column: 1 / -1; }
.skh-gallery__item { margin: 0; overflow: hidden; background: var(--skh-soft); aspect-ratio: var(--skh-img-ratio); }
.skh-gallery__zoom { display: block; width: 100%; height: 100%; cursor: zoom-in; }
.skh-gallery__img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--skh-ease); }
.skh-gallery__dots { display: none; }
.skh-gallery--thumbs .skh-gallery__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; gap: 0; }
.skh-gallery--thumbs .skh-gallery__track::-webkit-scrollbar { display: none; }
.skh-gallery--thumbs .skh-gallery__item { flex: 0 0 100%; scroll-snap-align: start; }
.skh-gallery__thumbs { display: flex; gap: 6px; margin-top: 8px; overflow-x: auto; }
.skh-gallery__thumbs button { flex: 0 0 72px; aspect-ratio: var(--skh-img-ratio); background: var(--skh-soft); opacity: .55; transition: opacity .2s; }
.skh-gallery__thumbs button.is-on, .skh-gallery__thumbs button:hover { opacity: 1; }
.skh-gallery__thumbs img { width: 100%; height: 100%; object-fit: cover; }
.skh-gallery .skh-badge { top: 16px; left: 16px; }
@media (max-width: 900px) {
	.skh-pdp { grid-template-columns: 1fr; padding: 0; gap: 20px; }
	.skh-pdp__summary { position: static !important; padding-inline: var(--skh-pad); }
	.skh-pdp__summary-in { max-width: none; }
	.skh-gallery .skh-gallery__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; gap: 0; }
	.skh-gallery .skh-gallery__track::-webkit-scrollbar { display: none; }
	.skh-gallery .skh-gallery__item { flex: 0 0 100%; scroll-snap-align: start; }
	.skh-gallery__dots { position: absolute; left: 0; right: 0; bottom: 14px; display: flex; justify-content: center; gap: 6px; }
	.skh-gallery__dots span { width: 6px; height: 6px; border-radius: 50%; background: rgba(20, 20, 20, .25); transition: background .3s, transform .3s; }
	.skh-gallery__dots span.is-on { background: var(--skh-ink); transform: scale(1.3); }
	.skh-gallery__thumbs { display: none; }
}

/* Product page layouts */
.skh-gallery--thumbs-left { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 10px; align-items: start; }
.skh-gallery--thumbs-left .skh-gallery__track { grid-column: 2; grid-row: 1; }
.skh-gallery--thumbs-left .skh-gallery__thumbs { grid-column: 1; grid-row: 1; flex-direction: column; margin: 0; max-height: 100%; overflow-y: auto; scrollbar-width: none; }
.skh-gallery--thumbs-left .skh-gallery__thumbs button { flex: none; width: 100%; }
.skh-gallery--thumbs-left .skh-badge { left: 102px; }
.skh-pdp-layout-wide .skh-pdp { grid-template-columns: 1fr; padding-inline: 0; gap: 40px; }
.skh-gallery--carousel .skh-gallery__track { display: flex; gap: 4px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.skh-gallery--carousel .skh-gallery__track::-webkit-scrollbar { display: none; }
.skh-gallery--carousel .skh-gallery__item { flex: 0 0 auto; height: min(74vh, 720px); scroll-snap-align: start; }
.skh-gallery--carousel.skh-gallery--few .skh-gallery__track { justify-content: center; }
.skh-gallery__nav {
	position: absolute; top: 50%; z-index: 2; width: 46px; height: 46px; margin-top: -23px; display: grid; place-items: center;
	background: var(--skh-bg); border-radius: 50%; box-shadow: 0 2px 12px rgba(20, 20, 30, .12); transition: background .2s, color .2s;
}
.skh-gallery__nav:hover { background: var(--skh-ink); color: var(--skh-bg); }
.skh-gallery__nav--prev { left: 16px; }
.skh-gallery__nav--next { right: 16px; }
.skh-pdp-layout-wide .skh-pdp__summary { position: static !important; width: 100%; max-width: 1080px; margin-inline: auto; padding: 0 var(--skh-pad); }
.skh-pdp-layout-wide .skh-pdp__summary-in { max-width: none; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: clamp(24px, 5vw, 80px); }
.skh-pdp-layout-wide .skh-pdp__col { min-width: 0; }
.skh-pdp-layout-wide .skh-pdp__col--info { align-self: start; position: sticky; top: calc(var(--skh-hh) + 24px); }
.skh-pdp-layout-boxed .skh-pdp { max-width: 1180px; padding-inline: var(--skh-pad); grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); padding-top: 8px; }
.skh-pdp-layout-boxed .skh-gallery__item { border-radius: var(--skh-radius-card); }
.skh-pdp-layout-boxed .skh-pdp__summary { padding-top: 24px; }
@media (max-width: 900px) {
	.skh-gallery--thumbs-left { display: block; }
	.skh-gallery--thumbs-left .skh-badge { left: 16px; }
	.skh-gallery__nav { display: none; }
	.skh-gallery--carousel .skh-gallery__item { flex: 0 0 100%; height: auto; }
	.skh-gallery--carousel.skh-gallery--few .skh-gallery__track { justify-content: flex-start; }
	.skh-pdp-layout-wide .skh-pdp__summary-in { display: block; }
	.skh-pdp-layout-wide .skh-pdp__col--info { position: static; }
	.skh-pdp-layout-boxed .skh-pdp { padding: 0; grid-template-columns: 1fr; }
	.skh-pdp-layout-boxed .skh-gallery__item { border-radius: 0; }
}

/* Lightbox */
/* Lightbox (product gallery). Images always fit the screen; arrows, swipe, keys, thumbnails. */
.skh-lb {
	position: fixed; inset: 0; z-index: 130; display: grid; grid-template-rows: auto minmax(0, 1fr) auto;
	height: 100vh; height: 100dvh; background: var(--skh-bg); color: var(--skh-ink);
	animation: skh-lb-in .28s var(--skh-ease); touch-action: none; user-select: none; -webkit-user-select: none;
}
.skh-lb.is-closing { animation: skh-lb-out .22s ease forwards; }
@keyframes skh-lb-in { from { opacity: 0; } }
@keyframes skh-lb-out { to { opacity: 0; } }
.skh-lb__top { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px clamp(14px, 2.5vw, 28px); }
.skh-lb__count { display: flex; align-items: baseline; gap: 6px; margin: 0; font-size: 12px; letter-spacing: .14em; color: var(--skh-muted); font-variant-numeric: tabular-nums; }
.skh-lb__count b { font-weight: 500; color: var(--skh-ink); }
.skh-lb__btn {
	display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--skh-line); border-radius: 50%;
	background: var(--skh-bg); color: var(--skh-ink); cursor: pointer; box-shadow: 0 2px 14px rgb(0 0 0 / .06);
	transition: background .25s, color .25s, border-color .25s, transform .2s var(--skh-ease);
}
.skh-lb__btn .skh-icon { width: 20px; height: 20px; }
.skh-lb__btn:hover { background: var(--skh-ink); border-color: var(--skh-ink); color: var(--skh-bg); }
.skh-lb__btn:active { transform: scale(.94); }
.skh-lb__btn:focus-visible, .skh-lb__thumbs button:focus-visible { outline: 2px solid var(--skh-ink); outline-offset: 3px; }
.skh-lb__stage { position: relative; min-height: 0; overflow: hidden; cursor: grab; }
.skh-lb__stage:active { cursor: grabbing; }
.skh-lb__track { display: flex; height: 100%; transition: transform .45s var(--skh-ease); will-change: transform; }
.skh-lb__slide {
	position: relative; flex: 0 0 100%; min-width: 0; height: 100%; margin: 0; overflow: hidden;
	display: flex; align-items: center; justify-content: center; padding: 0 clamp(12px, 7vw, 96px);
}
.skh-lb__slide img {
	display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain;
	cursor: zoom-in; transition: transform .35s var(--skh-ease), opacity .3s; -webkit-user-drag: none;
}
.skh-lb__slide.is-zoomed img { transform: scale(2.2); cursor: zoom-out; }
.skh-lb__slide.is-loading img { opacity: 0; }
.skh-lb__slide.is-loading::after {
	content: ""; position: absolute; top: 50%; left: 50%; width: 28px; height: 28px; margin: -14px 0 0 -14px;
	border: 1.5px solid var(--skh-line); border-top-color: var(--skh-ink); border-radius: 50%; animation: skh-spin .8s linear infinite;
}
.skh-lb__nav { position: absolute; top: 50%; z-index: 2; margin-top: -22px; }
.skh-lb__nav--prev { left: clamp(10px, 2vw, 28px); }
.skh-lb__nav--next { right: clamp(10px, 2vw, 28px); }
.skh-lb__thumbs { display: flex; gap: 8px; padding: 12px clamp(14px, 2.5vw, 28px) 16px; overflow-x: auto; scrollbar-width: none; }
.skh-lb__thumbs::-webkit-scrollbar { display: none; }
.skh-lb__thumbs button {
	position: relative; flex: 0 0 56px; aspect-ratio: var(--skh-img-ratio, 1); padding: 0; border: 0; border-radius: var(--skh-radius, 0);
	overflow: hidden; background: var(--skh-soft); opacity: .45; cursor: pointer; transition: opacity .25s;
}
.skh-lb__thumbs button::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--skh-ink); transform: scaleX(0); transition: transform .3s var(--skh-ease); }
.skh-lb__thumbs button:hover { opacity: .8; }
.skh-lb__thumbs button.is-on { opacity: 1; }
.skh-lb__thumbs button.is-on::after { transform: scaleX(1); }
.skh-lb__thumbs img { display: block; width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
/* Centered strip that still scrolls when it overflows. */
.skh-lb__thumbs button:first-child { margin-left: auto; }
.skh-lb__thumbs button:last-child { margin-right: auto; }
@media (max-width: 767px) {
	.skh-lb__slide { padding: 0; }
	.skh-lb__nav { width: 38px; height: 38px; margin-top: -19px; background: rgb(255 255 255 / .88); backdrop-filter: blur(6px); }
	.skh-lb__nav .skh-icon { width: 17px; height: 17px; }
	.skh-lb__thumbs button { flex-basis: 46px; }
}
@media (prefers-reduced-motion: reduce) {
	.skh-lb, .skh-lb__track, .skh-lb__slide img { animation: none; transition: none; }
}

/* Add to cart form */
form.cart { margin: 0 0 20px; }
form.cart:not(.variations_form), .woocommerce-variation-add-to-cart { display: flex; gap: 8px; flex-wrap: wrap; }
form.cart .single_add_to_cart_button { flex: 1; }
.single_add_to_cart_button.disabled { opacity: 1; background: #6b6b6b !important; border-color: #6b6b6b !important; color: #fff !important; cursor: not-allowed; }
.quantity { display: inline-flex; align-items: center; border: 1px solid var(--skh-line); }
.quantity .qty { width: 56px; min-height: calc(var(--skh-btn-h) - 2px); border: 0; text-align: center; -moz-appearance: textfield; }
.quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; }
.skh-qty-btn { width: 36px; height: calc(var(--skh-btn-h) - 2px); display: grid; place-items: center; }
table.variations { width: 100%; margin-bottom: 12px; border-collapse: collapse; }
table.variations tr { display: block; margin-bottom: 18px; }
table.variations th, table.variations td { display: block; padding: 0; text-align: left; }
table.variations th label { display: block; margin-bottom: 10px; font-size: 11.5px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; }
.reset_variations { display: inline-block; margin-top: 10px; font-size: 12px; text-decoration: underline; color: var(--skh-muted); }
.woocommerce-variation-price { margin-bottom: 12px; }
.woocommerce-variation-availability .stock { font-size: 13px; }
.stock.in-stock { color: var(--skh-ok); }
.stock.out-of-stock { color: var(--skh-error); }

/* Attribute buttons */
.skh-attr-wrap { position: relative; }
.skh-attr__select { position: absolute !important; opacity: 0; pointer-events: none; width: 1px !important; height: 1px; min-height: 0 !important; padding: 0; border: 0; }
.skh-attr { display: flex; flex-wrap: wrap; gap: 6px; }
.skh-attr__opt {
	min-width: 46px; height: 40px; padding: 0 10px; border: 1px solid var(--skh-line); border-radius: var(--skh-radius-input);
	font-size: 13px; transition: border-color .2s, background .2s, color .2s;
}
.skh-attr__opt:hover { border-color: var(--skh-ink); }
.skh-attr__opt[aria-checked="true"] { background: var(--skh-ink); border-color: var(--skh-ink); color: var(--skh-bg); }
.skh-attr__opt.is-out { color: var(--skh-muted); background: linear-gradient(to top left, transparent calc(50% - .5px), var(--skh-line) 50%, transparent calc(50% + .5px)); }
.skh-attr__opt.is-out[aria-checked="true"] { color: var(--skh-ink); border-color: var(--skh-ink); background: linear-gradient(to top left, transparent calc(50% - .5px), var(--skh-muted) 50%, transparent calc(50% + .5px)), var(--skh-soft); }
.skh-attr__opt.is-na { display: none; }
.skh-attr__opt--color { min-width: 0; width: 34px; height: 34px; padding: 0; border-radius: 50%; background: var(--c); border: 0; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .12); }
.skh-attr__opt--color[aria-checked="true"] { background: var(--c); box-shadow: 0 0 0 2px var(--skh-bg), 0 0 0 3px var(--skh-ink); }
.skh-attr__guide { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; }

/* Perks, accordion, notify */
.skh-pdp__perks { display: grid; gap: 10px; margin: 24px 0; padding: 20px 0; list-style: none; border-block: 1px solid var(--skh-line); font-size: 13px; }
.skh-pdp__perks li { display: flex; gap: 12px; align-items: center; }
.skh-accordion__item { border-bottom: 1px solid var(--skh-line); }
.skh-accordion__item > summary {
	display: flex; justify-content: space-between; align-items: center; padding-block: 18px; list-style: none; cursor: pointer;
	font-size: 12px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase;
}
.skh-accordion__item > summary::-webkit-details-marker { display: none; }
.skh-accordion__item > summary .skh-icon { width: 16px; height: 16px; transition: transform .3s var(--skh-ease); }
.skh-accordion__item[open] > summary .skh-icon { transform: rotate(45deg); }
.skh-accordion__item.is-closing > summary .skh-icon { transform: none; }
.skh-accordion__body { padding-bottom: 20px; font-size: 14px; color: color-mix(in srgb, var(--skh-ink) 85%, transparent); }
.skh-accordion__body h2:first-child { display: none; }
.skh-accordion .woocommerce-product-attributes { width: 100%; border-collapse: collapse; }
.skh-accordion .woocommerce-product-attributes th { text-align: left; font-weight: 500; width: 40%; }
.skh-notify { display: grid; grid-template-rows: 0fr; opacity: 0; transition: grid-template-rows .45s var(--skh-ease), opacity .3s ease, margin .45s var(--skh-ease); }
.skh-notify.is-open { grid-template-rows: 1fr; opacity: 1; margin: 4px 0 20px; }
.skh-notify__in { min-height: 0; overflow: hidden; }
.skh-notify__box { padding: 16px; background: var(--skh-soft); transform: translateY(-6px); transition: transform .45s var(--skh-ease); }
.skh-notify.is-open .skh-notify__box { transform: none; }
@media (prefers-reduced-motion: reduce) { .skh-notify, .skh-notify__box { transition: none; } }
.skh-notify__title { display: flex; gap: 8px; align-items: center; margin: 0 0 10px; font-size: 13px; }
.skh-notify__row { display: flex; gap: 8px; }
.skh-notify__row input[type="email"] { flex: 1; min-height: 44px; }
.skh-notify__row .skh-btn { min-height: 44px; padding: 0 18px; }
.product_meta { font-size: 12px; color: var(--skh-muted); display: grid; gap: 4px; margin-top: 16px; }

/* Tabs (when chosen instead of the accordion) */
.woocommerce-tabs { margin-top: 64px; }
.woocommerce-tabs ul.tabs { display: flex; gap: 28px; margin: 0 0 24px; padding: 0; list-style: none; border-bottom: 1px solid var(--skh-line); overflow-x: auto; }
.woocommerce-tabs ul.tabs li a { display: block; padding-block: 14px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--skh-muted); border-bottom: 1px solid transparent; }
.woocommerce-tabs ul.tabs li.active a { color: var(--skh-ink); border-color: var(--skh-ink); }
.woocommerce-Tabs-panel { max-width: 860px; }

/* Related and upsells */
/* Slider on tablet and mobile (option "Related products on tablet and mobile"). --skh-peek: part of the next card. */
@media (max-width: 1024px) {
	ul.products.skh-grid--slide { --skh-pg: min(1, var(--skh-peek, 0) * 1000); --skh-sg: 16px; --skh-cw: calc((100% - (var(--skh-cols) - 1 + var(--skh-pg)) * var(--skh-sg)) / (var(--skh-cols) + var(--skh-peek, 0)));
		display: grid; grid-auto-flow: column; grid-template-columns: none !important; grid-auto-columns: var(--skh-cw); column-gap: var(--skh-sg) !important;
		overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	ul.products.skh-grid--slide::-webkit-scrollbar { display: none; }
	ul.products.skh-grid--slide > li { scroll-snap-align: start; }
	.skh-js .skh-reveal-on ul.skh-grid--slide .skh-reveal { transform: none; }
	ul.products.skh-grid--fade:not(.is-end) { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - var(--skh-cw) * var(--skh-peek, 0) * 1.4), transparent 100%); mask-image: linear-gradient(90deg, #000 calc(100% - var(--skh-cw) * var(--skh-peek, 0) * 1.4), transparent 100%); }
}
.related, .upsells, .cross-sells { margin-top: var(--skh-section); }
.related > h2, .upsells > h2, .cross-sells > h2 { margin-bottom: 28px; text-align: center; font-size: clamp(16px, 1.6vw, 22px); letter-spacing: .16em; }

/* Sticky add to cart (mobile) */
.skh-stickybar {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 70; display: flex; justify-content: space-between; align-items: center; gap: 12px;
	padding: 10px var(--skh-pad) calc(10px + env(safe-area-inset-bottom, 0px)); background: var(--skh-bg); border-top: 1px solid var(--skh-line);
	transform: translateY(110%); transition: transform .45s var(--skh-ease);
}
.skh-stickybar.is-on { transform: none; }
.skh-stickybar { flex-wrap: wrap; }
.skh-stickybar__info { flex: 1 1 0; }
.skh-stickybar-picking .skh-top { opacity: 0; pointer-events: none; }
.skh-stickybar__sheet { flex: 1 0 100%; display: grid; gap: 14px; max-height: 50vh; overflow: auto; padding: 4px 0 14px; margin-bottom: 2px; border-bottom: 1px solid var(--skh-line); animation: skh-sheet-in .3s var(--skh-ease); }
.skh-stickybar__sheet[hidden] { display: none; }
.skh-stickybar__label { margin: 0 0 8px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--skh-muted); }
.skh-stickybar__sheet .skh-attr { display: flex; flex-wrap: wrap; gap: 6px; }
.skh-stickybar__sheet.is-nudge { animation: skh-nudge .4s; }
@keyframes skh-sheet-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.skh-stickybar__info { display: flex; align-items: center; gap: 10px; min-width: 0; }
.skh-stickybar__info img { width: 44px; height: 54px; object-fit: cover; background: var(--skh-soft); }
.skh-stickybar__name { margin: 0; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.skh-stickybar__price { margin: 0; font-size: 13px; }
.skh-stickybar .skh-btn { flex: none; padding: 0 22px; }
@media (min-width: 901px) { .skh-stickybar { display: none; } }

/* Reviews */
#reviews .commentlist { list-style: none; padding: 0; }
#reviews .comment_container { display: flex; gap: 14px; padding-block: 18px; border-bottom: 1px solid var(--skh-line); }
#reviews .avatar { width: 40px; height: 40px; border-radius: 50%; }
.star-rating { position: relative; display: inline-block; width: 5.4em; height: 1em; overflow: hidden; font-size: 12px; line-height: 1; letter-spacing: .1em; }
.star-rating::before { content: "★★★★★"; position: absolute; inset: 0; color: var(--skh-line); }
.star-rating span { position: absolute; inset: 0 auto 0 0; overflow: hidden; padding-top: 1.5em; }
.star-rating span::before { content: "★★★★★"; position: absolute; top: 0; left: 0; color: var(--skh-ink); }
p.stars a { font-size: 0; }
p.stars a::before { content: "★"; font-size: 20px; color: var(--skh-line); }
p.stars:hover a::before, p.stars.selected a.active::before, p.stars.selected a:not(.active)::before { color: var(--skh-ink); }
p.stars a:hover ~ a::before, p.stars.selected a.active ~ a::before { color: var(--skh-line); }

/* ---------- Side cart ---------- */
.skh-cart__goal { padding: 14px 24px; border-bottom: 1px solid var(--skh-line); font-size: 12.5px; }
.skh-cart__goal p { margin: 0 0 8px; }
.skh-cart__goal-bar { position: relative; height: 3px; background: var(--skh-line); }
.skh-cart__goal-bar span { position: absolute; inset: 0 auto 0 0; background: var(--skh-ink); transition: width .6s var(--skh-ease); }
.skh-cart__goal.is-done .skh-cart__goal-bar span { background: var(--skh-ok); }
.skh-cart__items { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; }
.skh-cart__item { display: grid; grid-template-columns: 88px 1fr; gap: 16px; animation: skh-fade .4s var(--skh-ease) both; }
.skh-cart__item.is-busy { opacity: .45; pointer-events: none; }
.skh-cart__thumb { aspect-ratio: var(--skh-img-ratio); background: var(--skh-soft); overflow: hidden; }
.skh-cart__thumb img { width: 100%; height: 100%; object-fit: cover; }
.skh-cart__info { display: grid; gap: 4px; align-content: start; font-size: 13px; }
.skh-cart__name { margin: 0; font-size: 12px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.skh-cart__meta { margin: 0; color: var(--skh-muted); font-size: 12.5px; }
.skh-cart__row { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-top: 8px; }
.skh-cart__qty { display: inline-flex; align-items: center; border: 1px solid var(--skh-line); }
.skh-cart__qty button { width: 30px; height: 30px; display: grid; place-items: center; }
.skh-cart__qty button .skh-icon { width: 14px; height: 14px; }
.skh-cart__qty span { min-width: 24px; text-align: center; font-size: 13px; }
.skh-cart__remove { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--skh-muted); text-decoration: underline; text-underline-offset: 3px; }
.skh-cart__price del { color: var(--skh-muted); margin-right: 4px; }
.skh-cart__foot { display: grid; gap: 12px; padding: 20px 24px calc(20px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--skh-line); text-align: center; }
.skh-cart__total { display: flex; justify-content: space-between; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; }
.skh-cart__total b { font-weight: 500; }
.skh-cart__note { margin: 0; color: var(--skh-muted); font-size: 12px; }
.skh-cart__view { justify-self: center; }
.skh-cart__empty { display: grid; justify-items: center; gap: 12px; padding-block: 48px; text-align: center; }
.skh-cart__empty p { margin: 0; }
.skh-cart__suggest { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--skh-line); }
.skh-cart__suggest-list { display: grid; grid-auto-flow: column; grid-auto-columns: 46%; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; }
.skh-cart__suggest-list a { display: grid; gap: 6px; scroll-snap-align: start; font-size: 12px; }
.skh-cart__suggest-list .skh-ph { aspect-ratio: var(--skh-img-ratio); background: var(--skh-soft); overflow: hidden; }
.skh-cart__suggest-list img { width: 100%; height: 100%; object-fit: cover; }

/* ---------- Cart, checkout, account pages ---------- */
.skh-woo-page { padding-block: 32px var(--skh-section); }
.woocommerce-cart-form table.shop_table, .woocommerce table.shop_table { width: 100%; border-collapse: collapse; font-size: 14px; }
.woocommerce table.shop_table th { padding: 12px 8px; text-align: left; font-size: 11.5px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; border-bottom: 1px solid var(--skh-ink); }
.woocommerce table.shop_table td { padding: 16px 8px; border-bottom: 1px solid var(--skh-line); vertical-align: middle; }
.woocommerce table.shop_table img { width: 80px; }
.woocommerce .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.woocommerce form .form-row { margin: 0 0 14px; }
.woocommerce form .form-row label { display: block; margin-bottom: 6px; font-size: 12px; letter-spacing: .08em; }
.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: calc(50% - 6px); display: inline-block; }
.woocommerce form .form-row-first { margin-right: 8px; }
.woocommerce-checkout #order_review { background: var(--skh-soft); padding: 28px; }
.woocommerce-checkout-payment ul.payment_methods { list-style: none; padding: 0; }
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 240px minmax(0, 1fr); column-gap: 48px; row-gap: 0; align-items: start; }
/* WooCommerce clearfix pseudo-elements would take a grid cell and push the menu to the right. */
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after { content: none !important; display: none !important; }
.woocommerce-account .woocommerce > * { grid-column: 2; min-width: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { float: none; width: auto; }
.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation { grid-column: 1; grid-row: 1 / span 40; position: sticky; top: calc(var(--skh-header-h, 80px) + 24px); }
.woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-EditAccountForm { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
.woocommerce-EditAccountForm::before, .woocommerce-EditAccountForm::after { content: none !important; }
.woocommerce-EditAccountForm > * { grid-column: 1 / -1; }
.woocommerce form.woocommerce-EditAccountForm .form-row-first { grid-column: 1; width: auto; float: none; margin-right: 0; }
.woocommerce form.woocommerce-EditAccountForm .form-row-last { grid-column: 2; width: auto; float: none; }
.woocommerce-EditAccountForm .clear { display: none; }
.woocommerce-EditAccountForm em, .woocommerce-EditAccountForm #account_display_name_description { display: block; margin-top: 6px; font-size: 12.5px; font-style: normal; color: var(--skh-muted); }
.woocommerce-MyAccount-content fieldset { margin: 20px 0 24px; padding: 20px 24px 6px; border: 1px solid var(--skh-line); }
.woocommerce-MyAccount-content legend { padding: 0 8px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.woocommerce-MyAccount-content .woocommerce-Addresses { gap: 24px; }
.woocommerce-MyAccount-content .woocommerce-Address { padding: 24px; border: 1px solid var(--skh-line); }
.woocommerce-MyAccount-content .woocommerce-Address-title::before, .woocommerce-MyAccount-content .woocommerce-Address-title::after { content: none !important; }
.woocommerce-MyAccount-content .woocommerce-Address-title { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 12px; }
.woocommerce-MyAccount-content .woocommerce-Address-title h2 { margin: 0; font-size: 14px; letter-spacing: .14em; }
.woocommerce-MyAccount-content .woocommerce-Address-title .edit { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; text-decoration: underline; text-underline-offset: 3px; }
.woocommerce-MyAccount-content address { font-style: normal; line-height: 1.7; color: var(--skh-muted); }
.woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--skh-line); }
.woocommerce-MyAccount-navigation li a { display: block; padding: 14px 0; border-bottom: 1px solid var(--skh-line); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.woocommerce-MyAccount-navigation li.is-active a { font-weight: 600; }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; max-width: 900px; margin-inline: auto; }
@media (max-width: 800px) {
	.woocommerce .col2-set, .woocommerce-account .woocommerce { grid-template-columns: 1fr; gap: 28px; }
	.woocommerce-EditAccountForm { grid-template-columns: 1fr; }
	.woocommerce form.woocommerce-EditAccountForm .form-row-first, .woocommerce form.woocommerce-EditAccountForm .form-row-last { grid-column: 1; }
	.woocommerce-account .woocommerce > * , .woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation { grid-column: 1; grid-row: auto; position: static; }
	.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: 100%; margin-right: 0; }
	.woocommerce-cart-form table.shop_table thead { display: none; }
	.woocommerce-cart-form table.shop_table tr { display: grid; grid-template-columns: 80px 1fr; gap: 4px 12px; padding-block: 14px; border-bottom: 1px solid var(--skh-line); }
	.woocommerce-cart-form table.shop_table td { border: 0; padding: 0; }
	.woocommerce-cart-form .product-thumbnail { grid-row: span 4; }
}

/* Block cart and checkout inherit theme tokens */
.wc-block-components-button:not(.is-link) { border-radius: var(--skh-radius-btn) !important; background: var(--skh-btn-bg) !important; color: var(--skh-btn-fg) !important; text-transform: var(--skh-tt-btn); letter-spacing: var(--skh-ls-btn); }
.wc-block-components-text-input input, .wc-block-components-combobox input { border-radius: var(--skh-radius-input) !important; }

/* Wishlist page */
.skh-wishlist { padding-block: 24px; }

/* Order received / view order */
.woocommerce table.shop_table { border: 0; }
.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tfoot th, .woocommerce table.shop_table tfoot td { padding: 14px 8px; border-bottom: 1px solid var(--skh-line); font-size: 13px; }
.woocommerce table.shop_table tfoot tr:last-child th, .woocommerce table.shop_table tfoot tr:last-child td { border-bottom: 0; }
.woocommerce table.shop_table tfoot th { font-weight: 500; letter-spacing: .1em; text-transform: uppercase; font-size: 11.5px; }
.woocommerce table.shop_table .product-total, .woocommerce table.shop_table tfoot td { text-align: right; }
.woocommerce table.shop_table td.product-name a { color: inherit; }
.woocommerce-order-details, .woocommerce-customer-details { margin-top: clamp(32px, 5vw, 56px); }
.woocommerce-order-details__title, .woocommerce-column__title { font-size: var(--skh-h4, 18px); margin: 0 0 16px; }
.woocommerce-order-overview { display: flex; flex-wrap: wrap; gap: 0; margin: 24px 0 0; padding: 0; list-style: none; border: 1px solid var(--skh-line); }
.woocommerce-order-overview li { flex: 1 1 160px; padding: 16px 20px; border-right: 1px solid var(--skh-line); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--skh-muted); }
.woocommerce-order-overview li:last-child { border-right: 0; }
.woocommerce-order-overview li strong { display: block; margin-top: 6px; color: var(--skh-ink); font-size: 15px; letter-spacing: 0; text-transform: none; font-weight: 500; }
.woocommerce-thankyou-order-received { font-size: 17px; margin: 0; }
.woocommerce-customer-details address { padding: 20px; border: 1px solid var(--skh-line); font-style: normal; line-height: 1.8; }

/* Block cart / checkout extras (empty cart suggestions) */
.wp-block-woocommerce-empty-cart-block .wp-block-separator { display: none; }
.wc-block-grid__products { gap: var(--skh-grid-gap, 16px); }
.wc-block-grid__product { border: 0 !important; text-align: left !important; }
.wc-block-grid__product-image { background: var(--skh-soft); margin-bottom: 12px !important; }
.wc-block-grid__product-title { font-family: var(--skh-font-body); font-size: 12.5px !important; font-weight: 500 !important; letter-spacing: .1em; text-transform: uppercase; }
.wc-block-grid__product-price { font-size: 13.5px; }
.wc-block-grid__product-add-to-cart .wp-block-button__link, .wc-block-grid__product-add-to-cart .add_to_cart_button {
	border-radius: 0 !important; background: transparent !important; color: var(--skh-ink) !important; border: 1px solid var(--skh-ink) !important;
	padding: 10px 16px !important; font-size: 11px !important; letter-spacing: .14em; text-transform: uppercase; transition: background .25s, color .25s;
}
.wc-block-grid__product-add-to-cart .wp-block-button__link:hover { background: var(--skh-ink) !important; color: var(--skh-bg) !important; }
.wc-block-cart__empty-cart__title { font-size: 14px; letter-spacing: .14em; }

/* The filters bar keeps a z-index for its dropdowns; lift it while the
   filters drawer is open so the drawer sits above the scrim. */
.skh-filters:has(.skh-filters__panel.is-open) { z-index: 101; }
.skh-stickybar__info > div { min-width: 0; }
@media (max-width: 900px) { .skh-has-stickybar .skh-top { bottom: 92px; } .skh-has-stickybar .skh-toast { bottom: 96px; } }
@media (min-width: 701px) { .skh-card--overlay .skhc-cmp-toggle { color: rgba(255, 255, 255, .85); } }

/* Card alignment and size styles */
.skh-card--align-left .skh-card__body { text-align: left; justify-items: start; }
.skh-card--align-left .skh-swatches, .skh-card--align-left .skh-card__body .skh-card__sizes { justify-content: flex-start; }
.skh-card--align-left .skh-card__body .skh-card__quick { text-align: left; }
.skh-card--align-center .skh-card__body { text-align: center; justify-items: center; }
.skh-card--align-center .skh-swatches, .skh-card--align-center .skh-card__body .skh-card__sizes { justify-content: center; }
.skh-card--align-center .skh-card__body .skh-card__quick { text-align: center; }
.skh-card__body .skh-card__quick { padding-top: 2px !important; }
.skh-card--sz-pills .skh-card__body .skh-card__sizes button { border-radius: 999px; min-width: 34px; }
.skh-card--sz-text .skh-card__body .skh-card__sizes { gap: 2px 10px; }
.skh-card--sz-text .skh-card__body .skh-card__sizes button { min-width: 0; height: auto; padding: 2px 0; border: 0; border-bottom: 1px solid transparent; font-size: 12px; color: var(--skh-muted); }
.skh-card--sz-text .skh-card__body .skh-card__sizes button:hover:not(:disabled) { color: var(--skh-ink); border-bottom-color: var(--skh-ink); }
.skh-card--overlay.skh-card--sz-text .skh-card__body .skh-card__sizes button { color: rgba(255, 255, 255, .8); }
.skh-card__cta { margin-top: 6px; }
.skh-card--actions .skhc-cmp-icon { right: 10px; width: 38px; height: 38px; background: var(--skh-bg); border-radius: 50%; box-shadow: 0 2px 10px rgba(20, 20, 30, .1); }
.skh-card--actions .skhc-cmp-icon.is-below-qv { top: 98px; }
.skh-card--actions .skhc-cmp-icon:not(.is-below-qv) { top: 54px; }
.skh-card--actions .skhc-cmp-icon.is-on { background: var(--skh-ink); color: var(--skh-bg); }
.skh-card--actions .skh-card__media:has(.skhc-cmp-icon) .skh-card__icon { top: 142px; }

/* ---------- Cart page ---------- */
.skh-has-steps .skh-page-head { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.skh-steps { max-width: 760px; margin: 40px auto 36px; }
.skh-steps ol { display: flex; align-items: center; justify-content: center; gap: 0; margin: 0; padding: 0; list-style: none; }
.skh-steps li { display: flex; align-items: center; gap: 10px; color: var(--skh-muted); font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; white-space: nowrap; }
.skh-steps li + li::before { content: ""; width: clamp(24px, 8vw, 96px); height: 1px; margin: 0 14px 0 4px; background: var(--skh-line); }
.skh-steps li.is-done + li::before, .skh-steps li.is-on + li::before { background: var(--skh-ink); }
.skh-steps a { display: flex; align-items: center; gap: 10px; color: inherit; text-decoration: none; }
.skh-steps__n { width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid var(--skh-line); border-radius: 50%; font-size: 12px; letter-spacing: 0; }
.skh-steps__n .skh-icon { width: 14px; height: 14px; }
.skh-steps li.is-on, .skh-steps li.is-done { color: var(--skh-ink); }
.skh-steps li.is-on .skh-steps__n { background: var(--skh-ink); border-color: var(--skh-ink); color: var(--skh-bg); }
.skh-steps li.is-done .skh-steps__n { border-color: var(--skh-ink); }
.skh-steps li.is-on .skh-steps__t { font-weight: 600; }

.skh-cartgoal { display: flex; gap: 14px; align-items: center; max-width: var(--skh-container); margin: 0 auto 28px; padding: 16px 20px; background: var(--skh-soft); border-radius: var(--skh-radius-card); }
.skh-cartgoal__icon { flex: none; width: 40px; height: 40px; display: grid; place-items: center; background: var(--skh-bg); border-radius: 50%; }
.skh-cartgoal__body { flex: 1; min-width: 0; }
.skh-cartgoal p { margin: 0 0 8px; font-size: 13.5px; }
.skh-cartgoal__bar { position: relative; height: 4px; background: color-mix(in srgb, var(--skh-ink) 12%, transparent); border-radius: 4px; overflow: hidden; }
.skh-cartgoal__bar span { position: absolute; inset: 0 auto 0 0; background: var(--skh-ink); border-radius: 4px; transition: width .6s var(--skh-ease); }
.skh-cartgoal.is-done .skh-cartgoal__bar span { background: var(--skh-ok, #2f6b45); }

/* Cart block */
.skh-cartpage .wc-block-cart { gap: 0; }
.skh-cartpage .wc-block-cart__main { padding-right: clamp(24px, 4vw, 64px); }
.skh-cartpage .wc-block-cart-items__header th, .skh-cartpage .wc-block-cart__totals-title {
	padding-bottom: 14px !important; font-size: 11px !important; font-weight: 500 !important; letter-spacing: .16em; text-transform: uppercase; color: var(--skh-muted);
}
.skh-cartpage .wc-block-cart-items__header { border-bottom: 1px solid var(--skh-line); }
.skh-cartpage .wc-block-cart-items__row { border-bottom: 1px solid var(--skh-line); }
.skh-cartpage .wc-block-cart-item__image a { display: block; aspect-ratio: var(--skh-img-ratio); overflow: hidden; background: var(--skh-soft); border-radius: var(--skh-radius-card); }
.skh-cartpage .wc-block-cart-item__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--skh-ease); }
.skh-cartpage .wc-block-cart-item__image a:hover img { transform: scale(1.04); }
.skh-cartpage .wc-block-components-product-name { font-size: 12.5px !important; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; color: var(--skh-ink); text-decoration: none; line-height: 1.4; }
.skh-cartpage .wc-block-cart-item__prices { font-size: 13.5px; }
.skh-cartpage .wc-block-cart-item__prices del { color: var(--skh-muted); }
.skh-cartpage .wc-block-cart-item__prices ins { color: var(--skh-sale); text-decoration: none; }
.skh-cartpage .wc-block-components-product-metadata { margin: 0 !important; font-size: 12.5px; color: var(--skh-muted); }
.skh-cartpage .wc-block-components-product-details { margin: 0; }
.skh-cartpage .wc-block-components-product-details__name { font-weight: 400; }
.skh-cartpage .wc-block-components-quantity-selector { width: 112px; min-height: 40px; margin: 0 !important; border: 1px solid var(--skh-line) !important; border-radius: var(--skh-radius-input); }
.skh-cartpage .wc-block-components-quantity-selector::after { display: none; }
.skh-cartpage .wc-block-components-quantity-selector__input { min-height: 0; border: 0 !important; font-size: 13px; }
.skh-cartpage .wc-block-components-quantity-selector__button { min-width: 36px; color: var(--skh-ink) !important; opacity: 1; }
.skh-cartpage .wc-block-components-quantity-selector__button:disabled { opacity: .3; }
.skh-cartpage .wc-block-cart-item__total { font-size: 14px; font-weight: 500; }
.skh-cartpage .wc-block-components-sale-badge { margin-top: 6px; padding: 3px 7px; border: 0; border-radius: 3px; background: color-mix(in srgb, var(--skh-sale) 12%, transparent); color: var(--skh-sale); font-size: 10.5px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; }

.skh-cartpage .wc-block-cart__sidebar { position: sticky; top: calc(var(--skh-top-offset, 0px) + var(--skh-hh, 80px) + 24px); align-self: flex-start; padding: 28px !important; background: var(--skh-soft); border-radius: var(--skh-radius-card); }
.skh-cartpage .wc-block-cart__totals-title { display: block !important; margin: 0 0 4px !important; text-align: left !important; }
.skh-cartpage .wc-block-cart__sidebar .wc-block-components-totals-wrapper { border-color: color-mix(in srgb, var(--skh-ink) 10%, transparent) !important; padding-inline: 0 !important; }
.skh-cartpage .wc-block-components-panel__button { font-size: 13px; }
.skh-cartpage .wc-block-components-totals-item { font-size: 13.5px; }
.skh-cartpage .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-size: 13px !important; font-weight: 500 !important; letter-spacing: .14em; text-transform: uppercase; }
.skh-cartpage .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 22px !important; font-weight: 500 !important; }
.skh-cartpage .wc-block-components-totals-item__description { font-size: 12px; color: var(--skh-muted); }
.skh-cartpage .wc-block-cart__submit { margin: 20px 0 0 !important; }
.skh-cartpage .wc-block-cart__submit-button {
	width: 100%; min-height: 56px; border: 0; border-radius: var(--skh-radius-btn, 0); background: var(--skh-btn-bg, var(--skh-ink)); color: var(--skh-btn-text, var(--skh-bg));
	font-size: 12px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; transition: background .25s;
}
.skh-cartpage .wc-block-cart__submit-button:hover { background: var(--skh-btn-hover, var(--skh-accent)); }
.skh-trust { display: grid; gap: 10px; margin: 20px 0 0; padding: 18px 0 0; border-top: 1px solid color-mix(in srgb, var(--skh-ink) 10%, transparent); list-style: none; }
.skh-trust li { display: flex; align-items: center; gap: 10px; font-size: 12.5px; color: var(--skh-muted); }
.skh-trust .skh-icon { flex: none; width: 18px; height: 18px; color: var(--skh-ink); }
.skh-cart-suggest { margin-top: clamp(48px, 7vw, 96px); }
.skh-cart-suggest__title { margin: 0 0 24px; font-size: clamp(18px, 2vw, 24px); letter-spacing: .12em; text-transform: uppercase; text-align: center; }
.skh-cartpage .wp-block-woocommerce-product-collection { margin-top: 48px; }
.skh-cartpage .wc-block-cart__empty-cart__title { font-size: 20px; letter-spacing: .12em; text-transform: uppercase; }

@media (max-width: 1000px) {
}

@media (max-width: 700px) {
	.skh-steps { margin: 20px auto 20px; }
	.skh-steps__t { display: none; }
	.skh-steps li.is-on .skh-steps__t { display: inline; }
	.skh-cartgoal { margin-inline: 0; padding: 12px 14px; }
	.skh-cartpage .wc-block-cart__main { padding-right: 0 !important; width: 100%; }
	.skh-cartpage .wc-block-cart-item__total { font-size: 13px; }
	.skh-cartpage .wc-block-cart-item__total .wc-block-components-sale-badge { display: none; }
	.skh-cartpage .wc-block-components-product-name { font-size: 12px; }
	.skh-cartpage .wc-block-cart__submit-container--sticky { padding: 12px 16px; box-shadow: 0 -8px 24px rgba(0,0,0,.08); }
	.skh-cartpage .wc-block-cart__sidebar { position: static; padding: 20px !important; margin-top: 24px; }
}

/* Cart rows: remove X | photo | name, price, size | quantity | line total.
   The wrappers inside the block use display: contents so their pieces sit
   on the row grid; the block keeps all its own AJAX behaviour. */
.skh-cartpage .wc-block-cart table.wc-block-cart-items, .skh-cartpage .wc-block-cart table.wc-block-cart-items tbody, .skh-cartpage .wc-block-cart table.wc-block-cart-items thead { display: block; width: 100%; border: 0; }
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header,
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row {
	display: grid !important;
	grid-template-columns: 32px var(--skh-cart-thumb, 110px) minmax(0, 1fr) 128px 110px;
	grid-template-areas: "x img . qty total" "x img name qty total" "x img price qty total" "x img meta qty total" "x img . qty total";
	grid-template-rows: 1fr auto auto auto 1fr;
	column-gap: 20px;
	align-items: start;
	padding: 24px 0 !important;
}
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header { grid-template-areas: ". prod prod qty total"; grid-template-rows: auto; align-items: center; padding: 0 0 14px !important; }
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header th { padding: 0 !important; width: auto !important; line-height: 1.4; }
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-image { display: block !important; grid-area: prod; text-align: left; visibility: visible; }
.skh-cartpage .wc-block-cart-items__header-product { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-total { grid-area: total; text-align: right; }
.skh-cartpage .wc-block-cart-items__header::after { content: var(--skh-t-qty, ""); grid-area: qty; text-align: center; line-height: 1.4; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--skh-muted); }
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row > td { padding: 0 !important; border: 0; width: auto !important; }
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
.skh-cartpage .wc-block-cart-items__row .wc-block-cart-item__wrap,
.skh-cartpage .wc-block-cart-items__row .wc-block-cart-item__quantity { display: contents !important; }
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image { grid-area: img; align-self: center; }
.skh-cartpage .wc-block-cart-items__row .wc-block-components-product-name { grid-area: name; margin: 0 0 6px; }
.skh-cartpage .wc-block-cart-items__row .wc-block-cart-item__prices { grid-area: price; margin: 0 0 6px; }
.skh-cartpage .wc-block-cart-items__row .wc-block-components-product-metadata { grid-area: meta; margin: 0; }
.skh-cartpage .wc-block-cart-items__row .wc-block-components-product-metadata > *:last-child, .skh-cartpage .wc-block-cart-items__row .wc-block-components-product-details { margin-bottom: 0 !important; }
.skh-cartpage .wc-block-cart-item__total-price-and-sale-badge-wrapper { display: flex; flex-direction: column; gap: 6px; }
.skh-cartpage .wc-block-cart-item__total .wc-block-components-sale-badge { margin: 0 !important; }
.skh-cartpage .wc-block-cart-items__row .wc-block-components-quantity-selector { grid-area: qty; align-self: center; justify-self: center; }
.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total { grid-area: total; align-self: center; text-align: right; }
.skh-cartpage .wc-block-cart-item__total-price-and-sale-badge-wrapper { align-items: flex-end; }
.skh-cartpage .wc-block-cart-item__total .wc-block-components-product-price { font-size: 16px; font-weight: 500; transition: opacity .2s; }
.skh-cartpage .wc-block-cart-items__row.is-disabled .wc-block-cart-item__total .wc-block-components-product-price { opacity: .35; }
/* Remove: a round X at the start of the line. */
.skh-cartpage .wc-block-cart-items__row .wc-block-cart-item__remove-link {
	grid-area: x; align-self: center; position: relative; display: block;
	width: 32px !important; height: 32px !important; margin: 0 !important; padding: 0 !important;
	border: 1px solid var(--skh-line) !important; border-radius: 50% !important;
	background: var(--skh-bg) !important; color: var(--skh-ink) !important; font-size: 0 !important;
	cursor: pointer; transition: background .2s, color .2s, border-color .2s;
}
.skh-cartpage .wc-block-cart-item__remove-link svg { display: none; }
.skh-cartpage .wc-block-cart-item__remove-link::before, .skh-cartpage .wc-block-cart-item__remove-link::after {
	content: ""; position: absolute; top: 50%; left: 50%; width: 12px; height: 1.5px; background: currentColor; border-radius: 1px;
	transform: translate(-50%, -50%) rotate(45deg);
}
.skh-cartpage .wc-block-cart-item__remove-link::after { transform: translate(-50%, -50%) rotate(-45deg); }
.skh-cartpage .wc-block-cart-item__remove-link:hover, .skh-cartpage .wc-block-cart-item__remove-link:focus-visible { background: var(--skh-ink) !important; border-color: var(--skh-ink) !important; color: var(--skh-bg) !important; }

@media (max-width: 1000px) {
	.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row,
	.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header { grid-template-columns: 28px 96px minmax(0, 1fr) 118px 90px; column-gap: 14px; }
	.skh-cartpage .wc-block-cart-items__row .wc-block-cart-item__remove-link { width: 28px !important; height: 28px !important; }
}
@media (max-width: 700px) {
	/* Photo | info with the X on the right | quantity and total under the info. */
	.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header { display: none !important; }
	.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row {
		grid-template-columns: 84px minmax(0, 1fr) auto;
		grid-template-areas: "img name x" "img price price" "img meta meta" "img qty total";
		grid-template-rows: auto auto auto 1fr;
		column-gap: 14px; padding: 18px 0 !important;
	}
	.skh-cartpage .wc-block-cart-items__row .wc-block-components-quantity-selector { justify-self: start; align-self: end; margin-top: 10px !important; width: 104px; }
	.skh-cartpage .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total { align-self: end; padding-bottom: 10px !important; white-space: nowrap; }
	.skh-cartpage .wc-block-cart-items__row .wc-block-cart-item__remove-link { align-self: start; width: 28px !important; height: 28px !important; }
}


/* Pick a size, then buy (cards with sizes + button). */
.skh-card__sizes [data-skh-pick] { cursor: pointer; transition: background .2s, color .2s, border-color .2s; }
.skh-card__sizes [data-skh-pick][aria-pressed="true"] { border-color: var(--skh-ink) !important; background: var(--skh-ink) !important; color: var(--skh-bg) !important; }
.skh-card--sz-text .skh-card__sizes [data-skh-pick][aria-pressed="true"] { background: none !important; color: var(--skh-ink) !important; text-decoration: underline; text-underline-offset: 4px; font-weight: 600; }
.skh-card__cta[aria-disabled="true"], .skh-card__cta:disabled { border-color: #ecebe9 !important; background: #ecebe9 !important; color: #85817c !important; cursor: not-allowed; }
.skh-card.is-nudge .skh-card__sizes { animation: skh-nudge .45s var(--skh-ease); }
@keyframes skh-nudge { 0%, 100% { transform: none; } 20% { transform: translateX(-5px); } 40% { transform: translateX(5px); } 60% { transform: translateX(-3px); } 80% { transform: translateX(3px); } }
@media (prefers-reduced-motion: reduce) { .skh-card.is-nudge .skh-card__sizes { animation: none; outline: 1px solid var(--skh-ink); outline-offset: 4px; } }

/* "+N" button for long size runs: same box as a size, quieter text. */
.skh-card__sizes .skh-card__more-sizes { color: var(--skh-muted); border-style: dashed; font-variant-numeric: tabular-nums; cursor: pointer; }
.skh-card__sizes .skh-card__more-sizes:hover { color: var(--skh-ink); border-style: solid; }
.skh-card--sz-text .skh-card__sizes .skh-card__more-sizes { border: 0; text-decoration: underline; text-underline-offset: 3px; }

/* Sticky bar: lighter size sheet and button. */
.skh-stickybar__sheet { gap: 10px; padding-bottom: 12px; }
.skh-stickybar__label { margin-bottom: 6px; font-size: 10.5px; }
.skh-stickybar__sheet .skh-attr { gap: 5px; }
.skh-stickybar__sheet .skh-attr__opt { min-width: 42px; height: 36px; padding: 0 8px; font-size: 12.5px; }
.skh-stickybar__sheet .skh-attr__opt--color { min-width: 0; width: 28px; height: 28px; padding: 0; }
.skh-stickybar .skh-btn { height: 42px; min-height: 42px; padding: 0 18px; font-size: 11px; }
.skh-stickybar__info img { width: 38px; height: 46px; }
.skh-stickybar__name { font-size: 11px; }
.skh-stickybar__price { font-size: 12.5px; }

/* Gallery navigation on phones and tablets (panel: "Gallery on mobile"). */
.skh-gallery__bar, .skh-gallery__count, .skh-gallery__mnav, .skh-gallery__thumbs--m { display: none; }
@media (max-width: 900px) {
	.skh-gallery:not(.skh-gnav-dots) .skh-gallery__dots { display: none; }
	/* Progress bar: one thin line that fills by sections. */
	.skh-gallery__bar { position: absolute; left: var(--skh-pad); right: var(--skh-pad); bottom: 16px; z-index: 2; display: block; height: 2px; border-radius: 2px; background: rgb(20 20 20 / .14); overflow: hidden; }
	.skh-gallery__bar span { position: absolute; top: 0; bottom: 0; left: calc(100% / var(--gn) * var(--gi, 0)); width: calc(100% / var(--gn)); border-radius: 2px; background: var(--skh-ink); transition: left .35s var(--skh-ease); }
	/* Counter "1 / 5" with two small arrows. */
	.skh-gallery__count { position: absolute; right: 14px; bottom: 14px; z-index: 2; display: block; margin: 0; padding: 5px 11px; border-radius: 30px; background: rgb(255 255 255 / .9); color: var(--skh-ink); font-size: 11.5px; letter-spacing: .12em; font-variant-numeric: tabular-nums; backdrop-filter: blur(6px); }
	.skh-gallery__count b { font-weight: 500; }
	.skh-gallery__mnav { position: absolute; top: 50%; z-index: 2; display: grid; place-items: center; width: 34px; height: 34px; margin-top: -17px; border-radius: 50%; background: rgb(255 255 255 / .9); color: var(--skh-ink); box-shadow: 0 2px 10px rgb(0 0 0 / .08); transition: opacity .25s, transform .2s; }
	.skh-gallery__mnav .skh-icon { width: 16px; height: 16px; }
	.skh-gallery__mnav:active { transform: scale(.92); }
	.skh-gallery__mnav--prev { left: 10px; }
	.skh-gallery__mnav--next { right: 10px; }
	.skh-gallery.is-first .skh-gallery__mnav--prev, .skh-gallery.is-last .skh-gallery__mnav--next { opacity: 0; pointer-events: none; }
	/* Thumbnails below the photo. */
	.skh-gnav-thumbs .skh-gallery__thumbs { display: flex; gap: 6px; margin: 8px 0 0; padding: 0 var(--skh-pad); overflow-x: auto; scrollbar-width: none; }
	.skh-gnav-thumbs .skh-gallery__thumbs::-webkit-scrollbar { display: none; }
	.skh-gnav-thumbs .skh-gallery__thumbs button { position: relative; flex: 0 0 58px; opacity: .5; }
	.skh-gnav-thumbs .skh-gallery__thumbs button::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--skh-ink); transform: scaleX(0); transition: transform .3s var(--skh-ease); }
	.skh-gnav-thumbs .skh-gallery__thumbs button.is-on { opacity: 1; }
	.skh-gnav-thumbs .skh-gallery__thumbs button.is-on::after { transform: none; }
	.skh-gnav-thumbs.skh-gallery--thumbs-left { display: block; }
	/* Next photo peeks in from the right. */
	.skh-gnav-peek .skh-gallery__track { gap: 6px; padding-inline: var(--skh-pad); scroll-padding-inline: var(--skh-pad); }
	.skh-gnav-peek .skh-gallery__item { flex-basis: 84%; }
	.skh-gnav-peek .skh-gallery__bar { position: relative; left: auto; right: auto; bottom: auto; margin: 14px var(--skh-pad) 0; }
	.skh-gnav-peek .skh-badge { left: calc(var(--skh-pad) + 12px); }
}

/* Filter drop-downs (bar): softer panel, thin scrollbar, never a sideways scroll. */
@media (min-width: 1001px) {
.skh-filters--bar .skh-filter[open] > :not(summary) {
	top: calc(100% + 2px); left: -16px; max-height: min(440px, 62vh); overflow: hidden auto; overscroll-behavior: contain;
	padding: 16px; border-color: var(--skh-line); border-radius: max(var(--skh-radius, 0px), 6px);
	box-shadow: 0 1px 2px rgb(0 0 0 / .04), 0 18px 44px -18px rgb(0 0 0 / .22);
	scrollbar-width: thin; scrollbar-color: color-mix(in srgb, var(--skh-ink) 22%, transparent) transparent;
}
.skh-filters--bar .skh-filter[open] > :not(summary)::-webkit-scrollbar { width: 6px; }
.skh-filters--bar .skh-filter[open] > :not(summary)::-webkit-scrollbar-thumb { border-radius: 6px; background: color-mix(in srgb, var(--skh-ink) 22%, transparent); }
.skh-filters--bar .skh-filter[open] > :not(summary)::-webkit-scrollbar-track { background: transparent; }
}
/* Size grid: square-ish cells sized to the labels, columns set by the number of sizes. */
.skh-filter__list--sizes { grid-template-columns: repeat(4, minmax(40px, 1fr)); gap: 6px; }
@media (min-width: 1001px) { .skh-filters--bar .skh-filter[open] > .skh-filter__list--sizes { grid-template-columns: repeat(var(--fs-cols, 6), 44px); width: max-content; min-width: 0; } }
.skh-filter__list--sizes .skh-filter__opt { height: 38px; padding: 0 4px; border-color: color-mix(in srgb, var(--skh-ink) 14%, transparent); border-radius: var(--skh-radius-btn, 0); font-size: 13px; font-variant-numeric: tabular-nums; letter-spacing: 0; transition: border-color .2s, background-color .2s, color .2s, transform .15s; }
.skh-filter__list--sizes .skh-filter__opt:hover { border-color: var(--skh-ink); }
.skh-filter__list--sizes .skh-filter__opt:active { transform: scale(.95); }
.skh-filter__list--sizes .skh-filter__opt:focus-visible { outline: 2px solid var(--skh-accent); outline-offset: 2px; }
@media (max-width: 1000px) {
	.skh-filter__list--sizes { grid-template-columns: repeat(auto-fill, minmax(48px, 1fr)); }
	.skh-filter__list--sizes .skh-filter__opt { height: 42px; }
}
