/**
 * WESHIPAC mobile commerce layouts — 0.9.32.
 *
 * This stylesheet is intentionally mobile-only. It reshapes the existing
 * WooCommerce and wishlist markup without replacing native forms, filters,
 * ordering, pagination, payment mounts, or AJAX hooks.
 */

@media (max-width: 620px) {
	/* Shared commerce rhythm. */
	.aos-shop-page,
	.woocommerce-cart .aos-commerce-page-cart,
	.aos-wishlist-page {
		--wsp-mobile-commerce-gap: 10px;
		--wsp-mobile-commerce-radius: 9px;
		--wsp-mobile-commerce-line: rgba(17, 67, 101, 0.14);
		--wsp-mobile-commerce-shadow: 0 7px 22px rgba(10, 42, 67, 0.055);
		padding-top: 12px;
		padding-bottom: 28px;
	}

	.aos-shop-page > .aos-container,
	.woocommerce-cart .aos-commerce-page-cart > .aos-container,
	.aos-wishlist-page > .aos-container {
		width: 100%;
		max-width: none;
		padding-inline: 14px;
	}

	.aos-shop-page :is(a, button, input, select),
	.woocommerce-cart .aos-commerce-page-cart :is(a, button, input, select),
	.aos-wishlist-page :is(a, button, input, select) {
		touch-action: manipulation;
	}

	/* ---------------------------------------------------------------------
	 * Shop / product archive
	 * ------------------------------------------------------------------ */

	.aos-shop-page > .aos-container {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: start;
		gap: var(--wsp-mobile-commerce-gap);
	}

	.aos-shop-page .wsp-shop-hero {
		grid-column: 1 / -1;
		order: 0;
		min-height: 218px;
		margin: 0;
		border-radius: var(--wsp-mobile-commerce-radius);
		box-shadow: var(--wsp-mobile-commerce-shadow);
	}

	.aos-shop-page .wsp-shop-hero > img {
		object-position: 72% center;
	}

	.aos-shop-page .wsp-shop-hero::after {
		background: linear-gradient(90deg, #f8fcff 0%, rgba(248, 252, 255, 0.97) 46%, rgba(248, 252, 255, 0.48) 68%, rgba(248, 252, 255, 0.08) 100%);
	}

	.aos-shop-page .wsp-shop-hero .aos-shop-visual-copy {
		width: 62%;
		padding: 16px 10px 14px 14px;
	}

	.aos-shop-page .wsp-shop-hero .aos-eyebrow {
		font-size: 0.62rem;
		line-height: 1.2;
	}

	.aos-shop-page .wsp-shop-hero h1 {
		max-width: 12ch;
		margin: 5px 0 7px;
		font-size: clamp(1.48rem, 7.4vw, 1.82rem);
		line-height: 1.02;
		letter-spacing: -0.035em;
	}

	.aos-shop-page .wsp-shop-hero .aos-shop-visual-copy > p:not(.aos-eyebrow) {
		font-size: 0.7rem;
		line-height: 1.42;
	}

	.aos-shop-page .wsp-shop-hero .wsp-shop-hero-facts {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 6px;
		margin-top: 10px;
	}

	.aos-shop-page .wsp-shop-hero .wsp-shop-hero-facts li {
		grid-template-columns: 22px minmax(0, 1fr);
		gap: 5px;
		min-width: 0;
		padding: 6px;
		border-radius: 6px;
	}

	.aos-shop-page .wsp-shop-hero .wsp-shop-hero-facts .aos-icon {
		width: 20px;
		height: 20px;
	}

	.aos-shop-page .wsp-shop-hero .wsp-shop-hero-facts strong {
		font-size: 0.6rem;
		line-height: 1.2;
	}

	.aos-shop-page .wsp-shop-hero .wsp-shop-hero-facts small {
		display: none;
	}

	.aos-shop-page .woocommerce-breadcrumb {
		grid-column: 1 / -1;
		order: 1;
		margin: 1px 0 2px;
		font-size: 0.72rem;
		line-height: 1.4;
	}

	/* Let native loop controls participate in one compact mobile grid. */
	.aos-shop-page .aos-catalog-layout,
	.aos-shop-page .aos-catalog-results {
		display: contents;
	}

	.aos-shop-page .aos-filter-toggle {
		display: inline-flex;
		grid-column: 1;
		grid-row: auto;
		order: 2;
		align-items: center;
		justify-content: center;
		gap: 8px;
		width: 100%;
		min-height: 54px;
		padding: 8px 12px;
		margin: 0;
		border: 1px solid var(--wsp-journey-accent);
		border-radius: 7px;
		background: linear-gradient(100deg, var(--wsp-journey-accent-strong), #0798d4);
		color: #fff;
		font-size: 0.85rem;
		font-weight: 800;
	}

	.aos-shop-page .aos-filter-toggle .aos-icon {
		width: 20px;
		height: 20px;
	}

	.aos-shop-page .aos-catalog-filters {
		top: var(--wsp-filter-safe-top, 0px);
		width: min(90vw, 360px);
		padding: 16px;
		border-radius: 0 10px 10px 0;
	}

	.aos-shop-page .aos-filter-close,
	.aos-shop-page .aos-filter-actions .button,
	.aos-shop-page .aos-filter-option {
		min-height: 44px;
	}

	.aos-shop-page .woocommerce-ordering {
		grid-column: 2;
		order: 2;
		width: 100%;
		min-width: 0;
		margin: 0;
	}

	.aos-shop-page .woocommerce-ordering.aos-custom-select-wrapper.is-enhanced,
	.aos-shop-page .woocommerce-ordering .aos-orderby-ui {
		width: 100%;
		min-width: 0;
	}

	.aos-shop-page .woocommerce-ordering .aos-orderby-trigger {
		min-height: 54px;
		padding: 6px 10px;
		border-radius: 7px;
	}

	.aos-shop-page .woocommerce-ordering .aos-orderby-trigger-copy small {
		font-size: 0.56rem;
		letter-spacing: 0.04em;
	}

	.aos-shop-page .woocommerce-ordering .aos-orderby-trigger-copy strong {
		overflow: hidden;
		font-size: 0.75rem;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.aos-shop-page .woocommerce-ordering:not(.is-enhanced) select {
		width: 100%;
		max-width: none;
		min-height: 54px;
	}

	.aos-shop-page .aos-capacity-rail {
		display: block;
		grid-column: 1 / -1;
		order: 3;
		padding: 0;
		border: 0;
		background: transparent;
	}

	.aos-shop-page .aos-capacity-rail > span {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		padding: 0 !important;
		margin: -1px !important;
		overflow: hidden !important;
		clip-path: inset(50%) !important;
		white-space: nowrap !important;
	}

	.aos-shop-page .aos-capacity-rail > div {
		display: flex;
		gap: 8px;
		padding: 0 0 2px;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scrollbar-width: none;
		scroll-snap-type: x proximity;
	}

	.aos-shop-page .aos-capacity-rail > div::-webkit-scrollbar {
		display: none;
	}

	.aos-shop-page .aos-capacity-rail a {
		min-width: 72px;
		min-height: 44px;
		padding: 10px 12px;
		border-radius: 6px;
		font-size: 0.76rem;
		text-align: center;
		scroll-snap-align: start;
	}

	.aos-shop-page .woocommerce-result-count {
		grid-column: 1;
		order: 4;
		align-self: center;
		margin: 3px 0;
		font-size: 0.74rem;
		line-height: 1.35;
	}

	.aos-shop-page .wsp-catalog-view-switcher {
		grid-template-columns: repeat(2, 44px);
		grid-column: 2;
		order: 4;
		justify-self: end;
		gap: 4px;
	}

	.aos-shop-page .aos-catalog-results > :is(.woocommerce-notices-wrapper, .woocommerce-info, .woocommerce-error, .woocommerce-message),
	.aos-shop-page .aos-catalog-empty-recovery,
	.aos-shop-page .products {
		grid-column: 1 / -1;
		order: 5;
	}

	.aos-shop-page .woocommerce-pagination {
		grid-column: 1 / -1;
		order: 6;
	}

	body.woocommerce .aos-shop-page .aos-catalog-results ul.products[class*="columns-"],
	body.woocommerce-page .aos-shop-page .aos-catalog-results ul.products[class*="columns-"],
	.aos-shop-page ul.products,
	.aos-shop-page ul.products.wsp-list-view {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 8px !important;
		width: 100%;
		min-width: 0;
	}

	.aos-shop-page ul.products.wsp-list-view li.product,
	.aos-shop-page ul.products.wsp-list-view li.product .woocommerce-LoopProduct-link {
		display: flex;
		grid-template-columns: none;
		flex-direction: column;
	}

	.aos-shop-page ul.products li.product {
		min-width: 0;
		padding: 8px;
		border-radius: 8px;
		box-shadow: 0 5px 16px rgba(10, 42, 67, 0.04);
	}

	.aos-shop-page ul.products li.product img {
		aspect-ratio: 1 / 0.92;
		padding: 2px;
		margin-bottom: 8px;
	}

	.aos-shop-page ul.products li.product .woocommerce-loop-product__title {
		min-height: 3.75em;
		margin-bottom: 6px;
		font-size: 0.78rem;
		line-height: 1.25;
		overflow-wrap: anywhere;
	}

	.aos-shop-page ul.products li.product .aos-product-facts {
		min-height: 0;
		padding: 5px 6px;
		margin: auto 0 7px;
		font-size: 0.61rem;
		line-height: 1.35;
	}

	.aos-shop-page ul.products li.product .aos-product-facts p {
		overflow: hidden;
		margin: 0;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.aos-shop-page ul.products li.product .price {
		margin-bottom: 7px;
		font-size: 0.9rem;
		line-height: 1.25;
	}

	.aos-shop-page ul.products li.product > .button {
		min-height: 44px;
		padding: 8px 5px;
		border-radius: 6px;
		font-size: 0.74rem;
		line-height: 1.2;
		text-align: center;
		white-space: normal;
	}

	.aos-shop-page ul.products li.product .aos-wishlist-button--loop {
		top: 6px;
		right: 6px;
		width: 44px;
		height: 44px;
	}

	.aos-shop-page .woocommerce-pagination {
		width: 100%;
		margin-top: 4px;
	}

	.aos-shop-page .woocommerce-pagination ul.page-numbers {
		max-width: 100%;
		overflow-x: auto;
	}

	/* ---------------------------------------------------------------------
	 * Cart
	 * ------------------------------------------------------------------ */

	.woocommerce-cart .aos-commerce-page-cart {
		padding-top: 10px;
	}

	.woocommerce-cart .aos-commerce-header-cart {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
		padding-bottom: 12px;
	}

	.woocommerce-cart .aos-commerce-header-cart .aos-eyebrow {
		display: none;
	}

	.woocommerce-cart .aos-commerce-heading h1 {
		margin: 0 0 4px;
		font-size: clamp(1.8rem, 8.2vw, 2.18rem);
		line-height: 1.06;
	}

	.woocommerce-cart .aos-commerce-intro {
		font-size: 0.78rem;
		line-height: 1.45;
	}

	.woocommerce-cart .aos-order-path {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		padding: 5px;
		border-radius: 8px;
	}

	.woocommerce-cart .aos-order-path li {
		grid-template-columns: 28px minmax(0, 1fr);
		gap: 5px;
		min-height: 50px;
		padding: 4px 5px;
	}

	.woocommerce-cart .aos-order-path li + li {
		border-top: 0;
		border-left: 1px solid var(--wsp-journey-line);
	}

	.woocommerce-cart .aos-order-path-index {
		width: 28px;
		height: 28px;
		font-size: 0.7rem;
	}

	.woocommerce-cart .aos-order-path strong {
		font-size: 0.62rem;
		line-height: 1.2;
	}

	.woocommerce-cart .aos-order-path small {
		display: none;
	}

	.woocommerce-cart .wsp-cart-assurances {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		margin-bottom: 12px;
		border-radius: 8px;
	}

	.woocommerce-cart .wsp-cart-assurance {
		grid-template-columns: 30px minmax(0, 1fr);
		gap: 6px;
		min-height: 76px;
		padding: 7px;
	}

	.woocommerce-cart .wsp-cart-assurance + .wsp-cart-assurance {
		border-top: 0;
		border-left: 1px solid var(--wsp-journey-line);
	}

	.woocommerce-cart .wsp-commerce-assurance-icon {
		width: 30px;
		height: 30px;
		font-size: 0.9rem;
	}

	.woocommerce-cart .wsp-commerce-assurance-icon .aos-icon {
		width: 18px;
		height: 18px;
	}

	.woocommerce-cart .wsp-cart-assurance strong {
		font-size: 0.62rem;
		line-height: 1.2;
	}

	.woocommerce-cart .wsp-cart-assurance strong + span {
		margin-top: 2px;
		font-size: 0.56rem;
		line-height: 1.3;
	}

	.woocommerce-cart .aos-commerce-content > .woocommerce,
	.woocommerce-cart .aos-commerce-content .wp-block-shortcode > .woocommerce,
	.woocommerce-cart .aos-commerce-content .elementor-shortcode > .woocommerce {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 10px;
		min-width: 0;
	}

	.woocommerce-cart .woocommerce-cart-form,
	.woocommerce-cart .cart-collaterals,
	.woocommerce-cart .cart_totals,
	.woocommerce-cart .wsp-cart-support,
	.woocommerce-cart .wsp-cart-recommendations,
	.woocommerce-cart .wsp-cart-service-rail {
		grid-column: 1;
		min-width: 0;
	}

	.woocommerce-cart .woocommerce-cart-form {
		grid-row: 1;
		order: 1;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}

	.woocommerce-cart table.shop_table.cart {
		display: block;
		overflow: visible;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}

	.woocommerce-cart table.shop_table.cart tbody {
		display: grid;
		gap: 8px;
		width: 100%;
		max-height: min(78vh, 680px);
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		scrollbar-color: rgba(8, 127, 194, 0.42) transparent;
		scrollbar-gutter: stable;
		scrollbar-width: thin;
	}

	.woocommerce-cart table.shop_table.cart tbody::-webkit-scrollbar {
		width: 7px;
	}

	.woocommerce-cart table.shop_table.cart tbody::-webkit-scrollbar-thumb {
		border-radius: 999px;
		background: rgba(8, 127, 194, 0.42);
	}

	.woocommerce-cart table.shop_table.cart thead {
		display: none;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
		position: relative;
		display: grid;
		grid-template-columns: 72px minmax(0, 1fr) 132px;
		grid-template-rows: minmax(48px, auto) 44px;
		align-items: center;
		gap: 4px 8px;
		min-height: 116px;
		padding: 9px;
		border: 1px solid var(--wsp-mobile-commerce-line);
		border-radius: var(--wsp-mobile-commerce-radius);
		background: #fff;
		box-shadow: 0 4px 14px rgba(10, 42, 67, 0.035);
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item + tr.cart_item {
		border-top: 1px solid var(--wsp-mobile-commerce-line);
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item td {
		width: auto;
		min-width: 0;
		padding: 0 !important;
		border: 0;
		text-align: left !important;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-remove {
		position: absolute;
		z-index: 3;
		top: 6px;
		right: 6px;
		width: 44px;
		height: 44px;
		padding: 0 !important;
	}

	.woocommerce-cart table.shop_table.cart a.remove {
		width: 44px;
		height: 44px;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-thumbnail {
		display: block !important;
		grid-column: 1;
		grid-row: 1 / span 2;
		align-self: center;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-thumbnail::before,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-name::before,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-price::before,
	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-quantity::before {
		display: none;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-thumbnail img {
		width: 72px;
		height: 86px;
		padding: 4px;
		border-radius: 7px;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-name {
		grid-column: 2;
		grid-row: 1;
		align-self: start;
		padding-top: 2px !important;
		padding-right: 2px !important;
		margin: 0;
		font-size: 0.75rem;
		line-height: 1.3;
	}

	.woocommerce-cart table.shop_table.cart .product-name a {
		display: block;
		font-size: 0.78rem;
		line-height: 1.28;
		overflow-wrap: anywhere;
	}

	.woocommerce-cart table.shop_table.cart .product-name :is(dl, p, .variation) {
		margin: 3px 0 0;
		color: var(--wsp-journey-muted);
		font-size: 0.62rem;
		line-height: 1.3;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-price {
		display: flex;
		grid-column: 2;
		grid-row: 2;
		align-items: center;
		align-self: center;
		min-height: 44px;
		padding: 0 !important;
		border: 0;
		font-size: 0.76rem;
		font-weight: 800;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-quantity {
		display: flex;
		grid-column: 3;
		grid-row: 2;
		align-items: center;
		justify-content: flex-end;
		min-height: 44px;
		padding: 0 !important;
		border: 0;
	}

	body.woocommerce-cart .quantity.aos-quantity-stepper {
		grid-template-columns: repeat(3, 44px);
		width: 132px;
		min-height: 44px;
	}

	body.woocommerce-cart .quantity.aos-quantity-stepper .qty,
	body.woocommerce-cart .quantity.aos-quantity-stepper .aos-quantity-button {
		min-height: 44px;
	}

	.woocommerce-cart table.shop_table.cart .product-quantity > .quantity:not(.aos-quantity-stepper) {
		margin-left: auto;
	}

	.woocommerce-cart table.shop_table.cart .product-quantity > .quantity:not(.aos-quantity-stepper) .qty {
		width: 64px;
		min-height: 44px;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-subtotal {
		display: flex;
		grid-column: 3;
		grid-row: 1;
		align-self: stretch;
		flex-direction: column-reverse;
		align-items: flex-end;
		justify-content: flex-end;
		padding: 36px 0 3px !important;
		border: 0;
		font-size: 0.8rem;
		line-height: 1.2;
		text-align: right !important;
	}

	.woocommerce-cart table.shop_table.cart tbody tr.cart_item .product-subtotal::before {
		display: block;
		margin: 2px 0 0;
		color: var(--wsp-journey-muted);
		font-size: 0.58rem;
		font-weight: 500;
		letter-spacing: 0;
		line-height: 1.2;
		text-transform: none;
	}

	.woocommerce-cart table.shop_table.cart tr:last-child,
	.woocommerce-cart table.shop_table.cart tr:last-child td.actions {
		display: grid;
		width: 100%;
	}

	/* WooCommerce renders coupon/update controls in the final tbody row.
	 * Keep that row pinned while only the product manifest scrolls behind it. */
	.woocommerce-cart table.shop_table.cart tbody > tr:has(td.actions) {
		position: sticky;
		z-index: 5;
		bottom: 0;
		padding-top: 8px;
		background: rgba(255, 255, 255, 0.98);
		box-shadow: 0 -8px 16px rgba(10, 42, 67, 0.055);
	}

	.woocommerce-cart table.shop_table.cart td.actions {
		gap: 8px;
		padding: 8px 0 0;
		background: transparent;
	}

	.woocommerce-cart table.shop_table.cart td.actions .coupon {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(118px, 0.42fr);
		gap: 8px;
		width: 100%;
	}

	.woocommerce-cart table.shop_table.cart td.actions .coupon .input-text,
	.woocommerce-cart table.shop_table.cart td.actions .coupon button,
	.woocommerce-cart table.shop_table.cart td.actions > button[name="update_cart"] {
		width: 100%;
		min-height: 44px;
		margin: 0;
	}

	.woocommerce-cart .cart-collaterals {
		display: flex;
		grid-row: 2;
		order: 2;
		width: 100%;
	}

	.woocommerce-cart .cart_totals {
		max-width: none;
		padding: 13px;
		border-radius: var(--wsp-mobile-commerce-radius);
	}

	.woocommerce-cart .cart_totals h2 {
		padding-bottom: 8px;
		margin: 0 0 7px;
		font-size: 1.2rem;
	}

	.woocommerce-cart .cart_totals table.shop_table {
		margin-bottom: 8px;
	}

	.woocommerce-cart .cart_totals table.shop_table th,
	.woocommerce-cart .cart_totals table.shop_table td {
		padding-block: 7px;
		font-size: 0.78rem;
	}

	.woocommerce-cart .wc-proceed-to-checkout {
		padding: 7px 0 0;
	}

	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.button.alt {
		min-height: 48px;
		padding: 10px 14px;
		font-size: 0.88rem;
	}

	.woocommerce-cart #wc-stripe-express-checkout-element,
	.woocommerce-cart .wsp-cart-financing,
	.woocommerce-cart .wsp-cart-payment-assurances {
		max-width: 100%;
	}

	.woocommerce-cart .wsp-cart-support {
		padding: 11px;
		margin-top: 0;
		border-radius: var(--wsp-mobile-commerce-radius);
	}

	.woocommerce-cart .wsp-cart-support h2 {
		font-size: 1rem;
	}

	.woocommerce-cart .wsp-cart-recommendations {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		grid-template-rows: auto auto;
		gap: 7px;
		padding: 11px;
		margin-top: 0;
		border-radius: var(--wsp-mobile-commerce-radius);
	}

	.woocommerce-cart .wsp-cart-recommendations-heading {
		grid-column: 1;
		grid-row: 1;
		align-self: center;
	}

	.woocommerce-cart .wsp-cart-recommendations-heading h2 {
		margin: 2px 0 0;
		font-size: 1rem;
	}

	.woocommerce-cart .wsp-cart-recommendations-heading > p:last-child {
		display: none;
	}

	.woocommerce-cart .wsp-cart-deck-controls {
		grid-column: 2;
		grid-row: 1;
		align-self: center;
	}

	.woocommerce-cart .wsp-cart-deck-controls button {
		width: 44px;
		height: 44px;
	}

	.woocommerce-cart .wsp-cart-deck {
		grid-column: 1 / -1;
		grid-row: 2;
	}

	.woocommerce-cart .wsp-cart-deck.is-enhanced {
		height: 158px;
	}

	.woocommerce-cart .wsp-cart-deck-card {
		grid-template-columns: 70px minmax(0, 1fr);
		min-height: 104px;
		padding: 7px;
	}

	.woocommerce-cart .wsp-cart-deck-card-media {
		width: 70px;
		height: 70px;
	}

	.woocommerce-cart .wsp-cart-deck.is-enhanced .wsp-cart-deck-card.is-next {
		transform: translateY(18px) scale(0.975);
	}

	.woocommerce-cart .wsp-cart-deck.is-enhanced .wsp-cart-deck-card.is-third {
		transform: translateY(36px) scale(0.95);
	}

	.woocommerce-cart .wsp-cart-service-rail {
		display: block;
		padding: 8px;
		margin-top: 0;
		border-radius: var(--wsp-mobile-commerce-radius);
	}

	.woocommerce-cart .wsp-cart-service-rail h2 {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		padding: 0 !important;
		margin: -1px !important;
		overflow: hidden !important;
		clip-path: inset(50%) !important;
		white-space: nowrap !important;
	}

	.woocommerce-cart .wsp-cart-service-rail ul {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.woocommerce-cart .wsp-cart-service-rail li {
		padding: 5px 7px;
	}

	.woocommerce-cart .wsp-cart-service-rail li + li {
		border-top: 0;
		border-left: 1px solid var(--wsp-journey-line);
	}

	.woocommerce-cart .wsp-cart-service-rail strong {
		font-size: 0.6rem;
	}

	.woocommerce-cart .wsp-cart-service-rail span {
		font-size: 0.54rem;
	}

	/* ---------------------------------------------------------------------
	 * Wishlist
	 * ------------------------------------------------------------------ */

	.aos-wishlist-page {
		padding-top: 10px;
	}

	.aos-wishlist-page .woocommerce-breadcrumb {
		margin: 0 0 10px;
		font-size: 0.7rem;
	}

	.aos-wishlist-page .aos-wishlist-header {
		grid-template-columns: minmax(0, 1fr) 92px;
		align-items: center;
		gap: 8px;
		padding-bottom: 12px;
	}

	.aos-wishlist-page .aos-wishlist-header h1 {
		margin: 4px 0 6px;
		font-size: clamp(1.8rem, 8.4vw, 2.2rem);
		line-height: 1.04;
	}

	.aos-wishlist-page .aos-wishlist-header p:not(.aos-eyebrow) {
		font-size: 0.74rem;
		line-height: 1.45;
	}

	.aos-wishlist-page .aos-wishlist-header .aos-eyebrow {
		font-size: 0.65rem;
	}

	.aos-wishlist-page .wsp-wishlist-illustration {
		display: block;
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
		width: 92px;
	}

	.aos-wishlist-page .wsp-wishlist-shell {
		grid-template-columns: minmax(0, 1fr);
		gap: 10px;
	}

	.aos-wishlist-page .aos-wishlist-workbench-main {
		border-radius: var(--wsp-mobile-commerce-radius);
	}

	.aos-wishlist-page .wsp-wishlist-toolbar {
		position: relative;
		min-height: 56px;
		align-items: center;
		flex-direction: row;
		padding: 6px 9px;
	}

	.aos-wishlist-page .wsp-wishlist-toolbar > div:first-child {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		padding: 0 !important;
		margin: -1px !important;
		overflow: hidden !important;
		clip-path: inset(50%) !important;
		white-space: nowrap !important;
	}

	.aos-wishlist-page .aos-wishlist-toolbar-actions {
		display: flex;
		width: 100%;
		align-items: center;
		justify-content: space-between;
		gap: 6px;
		flex-wrap: nowrap;
		font-size: 0.7rem;
	}

	.aos-wishlist-page .aos-wishlist-select-all {
		min-height: 44px;
		gap: 5px;
	}

	.aos-wishlist-page .aos-wishlist-selected-count {
		font-size: 0.62rem;
		white-space: nowrap;
	}

	.aos-wishlist-page .aos-wishlist-toolbar-actions button {
		min-width: 112px;
		min-height: 44px;
		padding: 6px;
		font-size: 0.7rem;
		white-space: nowrap;
	}

	.aos-wishlist-page .aos-wishlist-action-notice {
		font-size: 0.7rem;
	}

	.aos-wishlist-page .aos-wishlist-comparison-row {
		position: relative;
		display: grid;
		grid-template-columns: 22px 62px minmax(0, 1fr) 94px 44px;
		align-items: center;
		gap: 6px;
		min-height: 106px;
		padding: 8px;
	}

	.aos-wishlist-page .aos-wishlist-row-select {
		position: static;
		z-index: auto;
		display: grid;
		grid-column: 1;
		grid-row: 1;
		align-self: center;
		width: 44px;
		height: 44px;
		place-items: center;
		margin-left: -11px;
	}

	.aos-wishlist-page :is(.aos-wishlist-select-all, .aos-wishlist-row-select) input {
		width: 20px;
		height: 20px;
	}

	.aos-wishlist-page .aos-wishlist-product-image {
		grid-column: 2;
		grid-row: 1;
		width: 62px;
		height: 76px;
		padding: 2px;
	}

	.aos-wishlist-page .aos-wishlist-product-summary {
		grid-column: 3;
		grid-row: 1;
		min-width: 0;
		padding: 0;
	}

	.aos-wishlist-page .aos-wishlist-product-summary h3 {
		margin: 0 0 4px;
		font-size: 0.7rem;
		line-height: 1.25;
		overflow-wrap: anywhere;
	}

	.aos-wishlist-page .aos-wishlist-product-facts {
		display: grid;
		gap: 1px;
		padding: 4px 5px;
		margin: 0;
	}

	.aos-wishlist-page .aos-wishlist-product-facts div {
		display: flex;
		gap: 3px;
		min-width: 0;
	}

	.aos-wishlist-page .aos-wishlist-product-facts :is(dt, dd) {
		font-size: 0.52rem;
		line-height: 1.25;
	}

	.aos-wishlist-page .aos-wishlist-product-facts dt {
		flex: 0 0 auto;
	}

	.aos-wishlist-page .aos-wishlist-product-facts dd {
		min-width: 0;
	}

	.aos-wishlist-page .aos-wishlist-product-purchase {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-column: 4;
		grid-row: 1;
		align-items: center;
		justify-items: stretch;
		gap: 3px;
		min-width: 0;
	}

	.aos-wishlist-page .aos-wishlist-price {
		font-size: 0.78rem;
		line-height: 1.2;
		white-space: nowrap;
	}

	.aos-wishlist-page .aos-wishlist-stock {
		font-size: 0.58rem;
		line-height: 1.2;
	}

	.aos-wishlist-page .aos-wishlist-cart-action {
		grid-column: 1;
		grid-row: auto;
		width: 100%;
		min-height: 44px;
		padding: 6px 4px;
		font-size: 0.65rem;
		line-height: 1.2;
		text-align: center;
		white-space: normal;
	}

	.aos-wishlist-page .aos-wishlist-row-remove {
		position: static;
		grid-column: 5;
		grid-row: 1;
		align-self: start;
	}

	.aos-wishlist-page .aos-wishlist-row-remove .aos-wishlist-button {
		width: 44px;
		height: 44px;
	}

	.aos-wishlist-page .wsp-wishlist-sidebar {
		grid-template-columns: minmax(0, 1fr);
		gap: 10px;
	}

	.aos-wishlist-page .wsp-wishlist-actions {
		padding: 10px 12px;
		border-radius: var(--wsp-mobile-commerce-radius);
	}

	.aos-wishlist-page .wsp-wishlist-actions h2 {
		margin-bottom: 4px;
		font-size: 0.9rem;
	}

	.aos-wishlist-page .wsp-wishlist-actions button {
		min-height: 48px;
		font-size: 0.72rem;
	}

	/* The mobile reference prioritizes list actions; buying support remains
	 * available in the global footer/contact paths and is not duplicated here. */
	.aos-wishlist-page .wsp-wishlist-help {
		display: none;
	}

	.aos-wishlist-page .wsp-wishlist-recommendations {
		padding: 10px;
		margin-top: 10px;
		border-radius: var(--wsp-mobile-commerce-radius);
	}

	.aos-wishlist-page .aos-wishlist-recommendations-heading {
		align-items: center;
		margin-bottom: 8px;
	}

	.aos-wishlist-page .aos-wishlist-recommendations-heading h2 {
		font-size: 0.95rem;
	}

	.aos-wishlist-page .aos-wishlist-recommendations-heading > a {
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		font-size: 0.65rem;
		white-space: nowrap;
	}

	.aos-wishlist-page .aos-wishlist-recommendation-rail {
		display: flex;
		gap: 7px;
		overflow-x: auto;
		padding-bottom: 3px;
		overscroll-behavior-inline: contain;
		scrollbar-width: thin;
		scroll-snap-type: x proximity;
	}

	.aos-wishlist-page .aos-wishlist-recommendation-rail .aos-product-card {
		flex: 0 0 126px;
		min-width: 126px;
		padding: 6px;
		scroll-snap-align: start;
	}

	.aos-wishlist-page .aos-wishlist-recommendation-rail .aos-product-image {
		height: 82px;
	}

	.aos-wishlist-page .aos-wishlist-recommendation-rail .aos-product-card h3 {
		min-height: 3.75em;
		font-size: 0.66rem;
		line-height: 1.25;
	}

	.aos-wishlist-page .aos-wishlist-recommendation-rail .aos-card-cart.ajax_add_to_cart,
	.aos-wishlist-page .aos-wishlist-recommendation-rail .aos-card-cart:not(.ajax_add_to_cart) {
		min-height: 44px !important;
	}

	.aos-wishlist-page .aos-wishlist-empty {
		padding: 28px 16px;
		border-radius: var(--wsp-mobile-commerce-radius);
	}
}
