/* Mobile legibility, independent variation pricing UI and cart/checkout responsive pass. */
.pps-wrap .pps-product-title-row h3,
.pps-wrap .pps-product-info h3{
	font-size:15px!important;
	font-weight:600!important;
	line-height:1.65!important;
}
.pps-wrap .pps-variant-line{
	font-size:11px!important;
	line-height:1.65!important;
}
.pps-wrap .pps-variant-item>span{font-size:10.8px!important}
.pps-wrap .pps-variant-item>strong{font-size:11.3px!important;font-weight:650!important}
.pps-wrap .pps-expiry-line,
.pps-wrap .pps-expiry-line strong{font-size:10.2px!important;line-height:1.6!important}
.pps-wrap .pps-current-label{display:block!important}
.pps-wrap .pps-cart-variation,
.pps-wrap .pps-cart-variation dl.variation{margin:3px 0 0!important;padding:0!important;color:#61758a!important;font-size:10px!important;line-height:1.5!important}
.pps-wrap .pps-cart-variation dt,
.pps-wrap .pps-cart-variation dd,
.pps-wrap .pps-cart-variation p{margin:0!important;padding:0!important;font-size:inherit!important;line-height:inherit!important}

@media(max-width:700px){
	.pps-wrap{
		padding:5px 6px 100px!important;
		scroll-padding-bottom:92px!important;
	}
	.pps-wrap .pps-list{
		gap:11px!important;
		padding-bottom:74px!important;
	}
	.pps-wrap .pps-row{
		overflow:hidden!important;
		border-radius:13px!important;
		background:#fff!important;
	}
	.pps-wrap .pps-product{
		grid-template-columns:64px minmax(0,1fr)!important;
		gap:11px!important;
		padding:11px 12px!important;
	}
	.pps-wrap .pps-thumb{
		width:64px!important;
		height:64px!important;
		border-radius:9px!important;
	}
	.pps-wrap .pps-product-info{gap:4px!important}
	.pps-wrap .pps-product-title-row h3,
	.pps-wrap .pps-product-info h3{
		font-size:14px!important;
		font-weight:600!important;
		line-height:1.65!important;
	}
	.pps-wrap .pps-variant-line{
		gap:4px 10px!important;
		font-size:10.5px!important;
		line-height:1.6!important;
	}
	.pps-wrap .pps-variant-item{
		gap:4px!important;
		white-space:normal!important;
	}
	.pps-wrap .pps-variant-item>span{font-size:10.8px!important}
	.pps-wrap .pps-variant-item>strong{font-size:11.4px!important;font-weight:600!important}
	.pps-wrap .pps-expiry-line,
	.pps-wrap .pps-expiry-line strong{font-size:10.2px!important;font-weight:500!important}

	/* Price is intentionally three clear rows so labels never disappear on mobile. */
	.pps-wrap .pps-commerce{
		grid-template-columns:1fr!important;
		border-top:1px solid #e4eaf0!important;
	}
	.pps-wrap .pps-price-panel{
		display:flex!important;
		flex-direction:column!important;
		align-items:stretch!important;
		gap:7px!important;
		width:100%!important;
		padding:10px 12px!important;
		border-inline-end:0!important;
		border-bottom:1px solid #e4eaf0!important;
		background:#f9fbfd!important;
	}
	.pps-wrap .pps-price-head{
		display:flex!important;
		align-items:center!important;
		justify-content:space-between!important;
		grid-area:auto!important;
		min-height:21px!important;
	}
	.pps-wrap .pps-current-price,
	.pps-wrap .pps-old-price{
		display:flex!important;
		grid-area:auto!important;
		flex-direction:row!important;
		align-items:baseline!important;
		justify-content:space-between!important;
		gap:12px!important;
		width:100%!important;
		min-height:24px!important;
	}
	.pps-wrap .pps-current-label,
	.pps-wrap .pps-old-price>span{
		display:block!important;
		flex:0 0 auto!important;
		color:#50677e!important;
		font-size:10px!important;
		font-weight:550!important;
		line-height:1.4!important;
	}
	.pps-wrap .pps-sale-price{
		width:auto!important;
		margin-inline-start:auto!important;
		font-size:19px!important;
		font-weight:700!important;
		line-height:1.2!important;
		white-space:nowrap!important;
	}
	.pps-wrap .pps-money-unit{font-size:9px!important;font-weight:550!important}
	.pps-wrap .pps-old-price del{
		display:inline-flex!important;
		align-items:baseline!important;
		gap:3px!important;
		margin-inline-start:auto!important;
		white-space:nowrap!important;
	}
	.pps-wrap .pps-old-price del .pps-money{font-size:10.5px!important}
	.pps-wrap .pps-old-price del .pps-money-unit{font-size:8px!important}
	.pps-wrap .pps-price-badge{font-size:9.5px!important}
	.pps-wrap .pps-discount-badge{min-width:42px!important;height:22px!important;font-size:9px!important}

	.pps-wrap .pps-buy-panel{gap:7px!important;padding:10px 12px 12px!important}
	.pps-wrap .pps-limit-line{min-height:15px!important;font-size:9.5px!important}
	.pps-wrap .pps-limit-line strong{font-size:10px!important}
	.pps-wrap .pps-buy-controls{
		direction:rtl!important;
		display:grid!important;
		grid-template-columns:108px minmax(0,1fr)!important;
		align-items:center!important;
		gap:8px!important;
		width:100%!important;
	}
	.pps-wrap .pps-qty{
		grid-template-columns:33px 42px 33px!important;
		width:108px!important;
		min-width:108px!important;
		height:42px!important;
		min-height:42px!important;
	}
	.pps-wrap .pps-qty-btn{width:33px!important;min-width:33px!important;height:40px!important;min-height:40px!important}
	.pps-wrap .pps-qty-input{width:42px!important;min-width:42px!important;height:40px!important;min-height:40px!important;line-height:40px!important;font-size:13.5px!important}
	.pps-wrap .pps-add{width:100%!important;height:42px!important;min-height:42px!important;font-size:11.5px!important;font-weight:650!important}

	/* Mobile cart: readable product block followed by one contained action strip. */
	.pps-wrap .pps-checkout-area{margin-top:16px!important}
	.pps-wrap .pps-cart-summary{overflow:hidden!important;border-radius:13px!important}
	.pps-wrap .pps-cart-summary-head{min-height:44px!important;padding:9px 12px!important}
	.pps-wrap .pps-cart-summary-title>strong{font-size:12px!important}
	.pps-wrap .pps-cart-summary-title>span{min-width:44px!important;height:23px!important;font-size:9px!important}
	.pps-wrap .pps-cart-items{padding:0 11px!important}
	.pps-wrap .pps-cart-row{
		display:grid!important;
		grid-template-columns:1fr!important;
		gap:10px!important;
		min-height:0!important;
		padding:12px 0!important;
	}
	.pps-wrap .pps-cart-product{align-items:flex-start!important;gap:10px!important;padding:0 2px!important}
	.pps-wrap .pps-cart-thumb{width:54px!important;height:54px!important;flex-basis:54px!important;border-radius:9px!important}
	.pps-wrap .pps-cart-copy{flex:1 1 auto!important;min-width:0!important;padding-top:2px!important}
	.pps-wrap .pps-cart-copy>strong{
		display:block!important;
		overflow:visible!important;
		font-size:12.5px!important;
		font-weight:600!important;
		line-height:1.65!important;
		white-space:normal!important;
		text-overflow:clip!important;
	}
	.pps-wrap .pps-cart-variation,
	.pps-wrap .pps-cart-variation dl.variation{
		display:flex!important;
		align-items:center!important;
		flex-wrap:wrap!important;
		gap:3px 8px!important;
		margin:3px 0 0!important;
		padding:0!important;
		color:#61758a!important;
		font-size:9.5px!important;
		line-height:1.5!important;
	}
	.pps-wrap .pps-cart-variation dt,
	.pps-wrap .pps-cart-variation dd,
	.pps-wrap .pps-cart-variation p{float:none!important;clear:none!important;margin:0!important;padding:0!important;font-size:inherit!important;line-height:inherit!important}
	.pps-wrap .pps-cart-variation dt{font-weight:500!important}
	.pps-wrap .pps-cart-variation dd{font-weight:600!important;color:#2f587b!important}
	.pps-wrap .pps-cart-actions{
		display:grid!important;
		grid-template-columns:112px minmax(0,1fr) 42px!important;
		align-items:end!important;
		gap:9px!important;
		width:100%!important;
		padding:9px!important;
		border:1px solid #e1e8ef!important;
		border-radius:10px!important;
		background:#f8fafc!important;
	}
	.pps-wrap .pps-cart-cell-label,
	.pps-wrap .pps-cart-subtotal>span{margin:0 0 5px!important;font-size:9px!important;line-height:1.3!important}
	.pps-wrap .pps-cart-qty-cell .pps-cart-qty-wrap{grid-template-columns:34px 44px 34px!important;width:112px!important;min-width:112px!important;height:40px!important;min-height:40px!important}
	.pps-wrap .pps-cart-qty-cell .pps-cart-qty-btn{width:34px!important;min-width:34px!important;height:38px!important;min-height:38px!important}
	.pps-wrap .pps-cart-qty-cell .pps-cart-qty-input{width:44px!important;min-width:44px!important;height:38px!important;min-height:38px!important;line-height:38px!important;font-size:13px!important}
	.pps-wrap .pps-cart-subtotal{align-items:flex-start!important;min-height:0!important;padding-bottom:5px!important}
	.pps-wrap .pps-cart-subtotal strong{font-size:11.5px!important;font-weight:650!important;line-height:1.4!important;white-space:normal!important}
	.pps-wrap .pps-remove{
		align-self:end!important;
		width:42px!important;
		height:40px!important;
		padding:0!important;
		border:1px solid #f1d4d1!important;
		border-radius:8px!important;
		background:#fff7f6!important;
		color:#b23b32!important;
		font-size:9px!important;
		font-weight:600!important;
	}
	.pps-wrap .pps-cart-summary-foot{min-height:54px!important;padding:11px 12px!important}
	.pps-wrap .pps-cart-summary-foot>span{font-size:10px!important}
	.pps-wrap .pps-cart-summary-foot>strong{font-size:16px!important;font-weight:700!important}

	/* Checkout becomes a true single-column flow on small screens. */
	.pps-wrap .pps-checkout-panel{overflow:hidden!important;border-radius:13px!important}
	.pps-wrap .pps-checkout-topline{min-height:45px!important;padding:10px 12px!important}
	.pps-wrap .pps-checkout-topline>strong{font-size:12px!important}
	.pps-wrap .pps-private-fields .form-row label{font-size:9.5px!important}
	.pps-wrap .pps-private-fields input.input-text,
	.pps-wrap .pps-private-fields select,
	.pps-wrap .pps-private-fields textarea,
	.pps-wrap .pps-private-fields .select2-container .select2-selection--single{font-size:11px!important}

	/* Fixed order shortcut with reserved page space so the final product is never hidden. */
	.pps-wrap .pps-sticky-cart,
	.pps-wrap .pps-sticky-cart.is-empty{
		left:8px!important;
		right:8px!important;
		bottom:max(8px, env(safe-area-inset-bottom))!important;
		width:auto!important;
		min-height:58px!important;
		padding:8px 9px!important;
		border:1px solid #d7e1eb!important;
		border-radius:12px!important;
		box-shadow:0 10px 28px rgba(15,35,55,.16)!important;
	}
	.pps-wrap .pps-sticky-cart>div>span{font-size:9px!important}
	.pps-wrap .pps-sticky-cart>div>strong{font-size:11.5px!important}
	.pps-wrap .pps-sticky-cart>a{min-width:132px!important;height:42px!important;font-size:11px!important}
	.pps-wrap .pps-toast{bottom:82px!important}
}

@media(max-width:520px){
	.pps-wrap .pps-private-fields{grid-template-columns:1fr!important;gap:9px!important;padding:11px!important}
	.pps-wrap .pps-private-fields .form-row,
	.pps-wrap .pps-private-fields #billing_first_name_field,
	.pps-wrap .pps-private-fields #billing_last_name_field,
	.pps-wrap .pps-private-fields #billing_state_field,
	.pps-wrap .pps-private-fields #billing_city_field,
	.pps-wrap .pps-private-fields #billing_phone_field,
	.pps-wrap .pps-private-fields #billing_address_1_field{grid-column:1/-1!important;width:100%!important}
	.pps-wrap .pps-private-fields input.input-text,
	.pps-wrap .pps-private-fields select,
	.pps-wrap .pps-private-fields textarea,
	.pps-wrap .pps-private-fields .select2-container .select2-selection--single{height:42px!important;min-height:42px!important}
	.pps-wrap .pps-private-fields .select2-selection__rendered{line-height:40px!important}
	.pps-wrap .pps-private-fields .select2-selection__arrow{height:40px!important}
	.pps-wrap .pps-checkout-finalbar{grid-template-columns:1fr!important}
	.pps-wrap .pps-private-summary{border-inline-start:0!important;border-bottom:1px solid #e2eaf1!important}
}

@media(max-width:380px){
	.pps-wrap .pps-product{grid-template-columns:58px minmax(0,1fr)!important;gap:9px!important;padding:10px!important}
	.pps-wrap .pps-thumb{width:58px!important;height:58px!important}
	.pps-wrap .pps-product-title-row h3,
	.pps-wrap .pps-product-info h3{font-size:12.5px!important}
	.pps-wrap .pps-price-panel{padding:9px 10px!important}
	.pps-wrap .pps-buy-panel{padding:9px 10px 11px!important}
	.pps-wrap .pps-buy-controls{grid-template-columns:104px minmax(0,1fr)!important;gap:7px!important}
	.pps-wrap .pps-qty{grid-template-columns:32px 40px 32px!important;width:104px!important;min-width:104px!important}
	.pps-wrap .pps-qty-btn{width:32px!important;min-width:32px!important}
	.pps-wrap .pps-qty-input{width:40px!important;min-width:40px!important}
	.pps-wrap .pps-cart-actions{grid-template-columns:106px minmax(0,1fr) 38px!important;gap:6px!important;padding:7px!important}
	.pps-wrap .pps-cart-qty-cell .pps-cart-qty-wrap{grid-template-columns:32px 42px 32px!important;width:106px!important;min-width:106px!important}
	.pps-wrap .pps-cart-qty-cell .pps-cart-qty-btn{width:32px!important;min-width:32px!important}
	.pps-wrap .pps-cart-qty-cell .pps-cart-qty-input{width:42px!important;min-width:42px!important}
	.pps-wrap .pps-remove{width:38px!important}
	.pps-wrap .pps-sticky-cart>a{min-width:122px!important}
}
