/* Near-white mint components against a pale mint canvas, exclusively on mobile. */
@media (max-width: 780px) {
	html body[class] {
		--ls-mobile-background: #effcf9;
		--ls-mobile-surface: #fafefc;
		--ls-mobile-line: #cfe1da;
		--ls-mobile-ink: #143e46;
		--ls-mobile-action: #0b5f4a;
		--lsh-page-bg: var(--ls-mobile-background);
		--lsc-page-bg: var(--ls-mobile-background);
		--lspa-surface: var(--ls-mobile-surface);
		background-color: var(--ls-mobile-background) !important;
		background-image: none !important;
	}

	/* Page canvases and shared navigation. Images and modal backdrops stay intact. */
	html body[class] #main-container,
	html body[class] #main-container > main,
	html body[class] :is(.ls-topbar, .ls-hero, .ls-vs),
	html body #main-container .ls-canopy-collection {
		background-color: var(--ls-mobile-background) !important;
		background-image: none !important;
	}
	html body[class] :is(.ls-main-nav, .ls-nav-icons, .ls-category-row,
		.ls-account-dropdown, .ls-product-more__panel, .lsips-form, .lsips-results,
		.lsips-result, .lsips-result-label) {
		background-color: var(--ls-mobile-surface) !important;
		background-image: none !important;
	}
	html body[class] :is(.ls-hero-arrow),
	html body #main-container :is(.flexy-arrow-prev, .flexy-arrow-next, .lspc-thumbs-nav),
	html body #main-container .lspv-price-notice::before,
	html body #main-container .ls-canopy-pagination :is(a, span:not(.current)),
	html body #main-container .ls-canopy-sort-option:is(:hover, :focus-visible, .is-active),
	html body #main-container .ls-canopy-check:hover {
		background-color: var(--ls-mobile-surface) !important;
		background-image: none !important;
	}
	/* Contact icons blend into the brand row while retaining their focus outline. */
	html body[class] .ls-topbar .ls-contact a {
		background: transparent !important;
		box-shadow: none !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
	/* Keep the space between floating buttons clear as the page scrolls. */
	html body.lsh-mobile-glass-header :is(.ls-main-nav, .ls-nav-icons) {
		background-color: transparent !important;
	}
	html body[class] .ls-nav-icons :is(.ls-mobile-back, .ls-cart, .ls-account-trigger),
	html body[class] .ls-product-more__trigger,
	html body[class] .ls-product-more__panel a {
		background-color: var(--ls-mobile-surface) !important;
		background-image: none !important;
		color: var(--ls-mobile-action) !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
	/* Keep navigation controls circular on mobile. */
	html body.lsh-mobile-catalog-header .ls-nav-icons > .ls-mobile-back {
		border-radius: 50%;
	}
	html body.lsh-mobile-catalog-header .ls-nav-icons :is(.ls-account-trigger, .ls-cart) {
		border-radius: 50%;
		height: var(--ls-mobile-icon-size, 44px);
	}
	html body[class] .ls-nav-icons :is(.ls-mobile-back, .ls-cart, .ls-account-trigger) svg {
		stroke: currentColor;
	}
	html body[class] .ls-nav-icons :is(.ls-mobile-back, .ls-cart, .ls-account-trigger):focus-visible {
		outline-color: var(--ls-mobile-action);
	}
	html body[class] .ls-cart-count {
		background: var(--ls-mobile-action) !important;
		color: #fff !important;
	}

	/* Catalog, product details and buying controls. Do not reset authored description content. */
	html body #main-container :is(
		.ls-vs-inner, .ls-canopy-content, .ls-canopy-toolbar,
		.ls-canopy-product, .ls-canopy-dd-toggle, .ls-canopy-dd-menu,
		.ls-canopy-price-field, .ls-canopy-count, .ls-canopy-pagination,
		.woocommerce-product-gallery, .summary.entry-summary, .sku_wrapper,
		.lspv-price-notice, .lspc-related-card, .woocommerce-tabs, .woocommerce-Tabs-panel,
		.wcbud-panel, .wcbud-panel__heading, .wcbud-discount-table, .wcbud-preview,
		.lspa-mobile-purchase, .lspa-action, .lspa-mobile-help,
		.lspa-mobile-float-quantity),
	html body #main-container ul.products > li.product,
	html body #main-container .wc-block-grid__product,
	html body #main-container .wcbud-discount-table :is(thead, tbody, tr, th, td),
	html body #main-container .woocommerce-tabs .tabs :is(li, a),
	html body #main-container .woocommerce-product-gallery .flexy-pills li,
	html body[class] .lspa-floating-cart.lspa-floating-cart--mobile,
	html body[class] .lspa-floating-cart--mobile :is(.lspa-mobile-float-quantity, .lspa-mobile-float-buy) {
		background-color: var(--ls-mobile-surface) !important;
		background-image: none !important;
	}
	html body #main-container :is(.woocommerce-product-gallery, .summary.entry-summary,
		.ls-vs-inner, .ls-canopy-toolbar, .ls-canopy-product, .lspc-related-card),
	html body #main-container ul.products > li.product {
		border-color: var(--ls-mobile-line);
		box-shadow: none;
	}
	/* Product media keeps its original image; remove only the decorative color wash. */
	html body #main-container .ls-canopy-product-image::after {
		background: none !important;
	}
	html body #main-container .woocommerce-tabs .tabs li.active::before {
		background: var(--ls-mobile-action) !important;
	}
	html body #main-container .wcbud-discount-table .wcbud-current-tier td {
		color: var(--ls-mobile-action) !important;
		font-weight: 700;
	}
	html body #main-container .wcbud-discount-table .wcbud-current-tier td:first-child {
		box-shadow: inset 3px 0 var(--ls-mobile-action);
	}

	/* Cart, checkout, customer account and public information/form cards. */
	html body #main-container :is(
		.wc-block-cart__main, .wc-block-cart__sidebar, .lightsign-cart-selection,
		.lightsign-cart-remove-selected, .wc-block-cart-items__row,
		.wc-block-components-quantity-selector, .wc-block-components-totals-coupon,
		.lightsign-selected-total, .lightsign-selected-total__coupon-code-label,
		.wc-block-checkout__main, .wc-block-checkout__sidebar,
		.wc-block-components-checkout-order-summary__content,
		.wc-block-components-address-card, .wc-block-components-radio-control,
		.wc-block-components-radio-control__option, .wc-block-components-radio-control-accordion-option,
		.wc-block-components-radio-control-accordion-content,
		.lightsign-checkout-breakdown, .lightsign-checkout-coupon, .lightsign-address-summary,
		.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content,
		.woocommerce-form-login, .woocommerce-form-register, .lsua-account-register,
		.lightsign-reset-form-card, .lightsign-password-change, .lightsign-extra-shipping-card,
		.woocommerce-Address, .woocommerce-info, .ls-account-credentials, .ls-account-password-status,
		.select2-selection, .lightsign-order-complete-card, .lightsign-order-complete-card__reference,
		.lsua-form, .lsua-code-send, .lsua-notice,
		.lscu-form, .lscu-thank-card, .lscu-thank-icon, .lscu-thank-button-secondary,
		.ls-info-panel, .lightsign-legal, .lightsign-not-found,
		.lsw-application, .lsw-form, .lsw-prompt-reason, .lsw-upload-control,
		.lsw-file-media, .lsw-upload-progress, .lsw-state, .lsw-feedback,
		.lsw-review-section, .lsw-document-count, .lsw-document-card, .lsw-document-preview),
	html body #main-container .lsw-progress-ring > span,
	html body #main-container .lightsign-extra-shipping-card .button.is-default,
	html body #main-container .lightsign-order-complete-actions a:last-child,
	html body #main-container .woocommerce-MyAccount-content > p:first-of-type,
	html body #main-container .woocommerce-ResetPassword > p:first-child,
	html body.lightsign-password-reset-sent #main-container .entry-content > .woocommerce,
	html body #main-container :is(.woocommerce-cart-form, .woocommerce-MyAccount-content) table.shop_table,
	html body #main-container .woocommerce-MyAccount-content table.shop_table :is(thead, tbody, tr, th, td),
	html body #main-container .edit-account :is(fieldset, legend),
	html body #main-container .woocommerce-customer-details address {
		background-color: var(--ls-mobile-surface) !important;
		background-image: none !important;
	}
	/* Preserve the canvas in the gaps between separate cart item cards. */
	html body.woocommerce-cart #main-container .wc-block-cart__main:has(.wc-block-cart-items) {
		background-color: var(--ls-mobile-background) !important;
	}
	/* Checkout uses these pseudo-elements as the actual mobile card surfaces. */
	html body.woocommerce-checkout #main-container .wc-block-checkout__main::before,
	html body.woocommerce-checkout #main-container .wc-block-checkout__form::before {
		background-color: var(--ls-mobile-surface) !important;
		background-image: none !important;
		border-color: var(--ls-mobile-line);
		box-shadow: none;
	}

	/* Inputs share the surface color; preserve native/select SVG affordances and checked states. */
	html body #main-container :is(.woocommerce, .wp-block-woocommerce-cart,
		.wp-block-woocommerce-checkout, .lsua-form, .lscu-form, .lsw-form)
		:is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="file"]), textarea, select),
	html body[class] .lsips-input,
	html body #scs-widget :is(.scs-lead-form, .scs-chat-composer) :is(input, textarea) {
		background-color: var(--ls-mobile-surface) !important;
	}

	/* Flat decoration instead of cyan/mint gradients. Existing content markers are not targeted. */
	html body #main-container::before,
	html body #main-container .ls-canopy-collection::before {
		background-color: var(--ls-mobile-background) !important;
		background-image: none !important;
	}
	html body #main-container :is(.ls-canopy-toolbar,
		.ls-canopy-product, .ls-vs-inner, .summary.entry-summary,
		.wc-block-cart__main, .wc-block-cart__sidebar, .wc-block-checkout__sidebar,
		.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content,
		.woocommerce-form-login, .woocommerce-form-register, .lsua-account-register,
		.lightsign-reset-form-card, .lsua-form, .lscu-form, .lscu-thank-card,
		.ls-info-panel, .lightsign-legal, .lightsign-not-found)::before,
	html body #main-container ul.products > li.product::before,
	html body #main-container .summary.entry-summary::after {
		background-color: var(--ls-mobile-surface) !important;
		background-image: none !important;
	}

	/* Modal/dialog surfaces and the customer service panel use the same mint. */
	html body[class] :is(.lspc-cart-notice-dialog, .lightsign-coupon-modal__dialog,
		.lightsign-account-success-modal__dialog, .lsw-login-dialog, .lscc-banner, .lscc-dialog,
		.lrcsp-shipping-refresh, .select2-dropdown, .select2-search--dropdown,
		.select2-search__field, .select2-results,
		.scs-chat-panel, .scs-lead-view, .scs-chat-header,
		.scs-chat-messages, .scs-chat-composer, .scs-disclaimer, .scs-typing),
	html body[class] .scs-chat-message:not(.scs-chat-message--customer) > div,
	html body #scs-widget :is(.scs-unread-bubble, .scs-guest-link-skip, .scs-shipping-quote,
		.scs-shipping-quote__decline, .scs-shipping-quote__accepted),
	html body #scs-widget .scs-unread-bubble::after,
	html body[class] .lscc-actions button:not([data-lscc-accept]):not([data-lscc-save]),
	html body #lrcsp-shipping-entry-notice,
	html body #lrcsp-quote-review,
	html body #lrcsp-quote-review dl,
	html body #lrcsp-quote-notice {
		background-color: var(--ls-mobile-surface) !important;
		background-image: none !important;
	}
	html body #scs-widget .scs-chat-header :is(strong, small, .scs-close, .scs-back) {
		color: var(--ls-mobile-ink) !important;
	}
	html body #scs-widget .scs-chat-header .scs-back {
		border-color: var(--ls-mobile-line) !important;
	}

	/* Primary actions and selected navigation stay unmistakable with a solid dark green. */
	html body #main-container :is(.single_add_to_cart_button, .lsua-submit,
		.lscu-submit, .lsw-submit, .woocommerce-form-login__submit,
		.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button),
	html body #main-container .woocommerce-MyAccount-navigation .is-active a,
	html body[class] .lspa-floating-cart--mobile > .lspa-floating-cart__button {
		background-color: var(--ls-mobile-action) !important;
		background-image: none !important;
		color: #fff !important;
	}
	html body[class] .ls-account-dropdown a:is(:hover, :focus-visible),
	html body[class] .ls-product-more__panel a:is(:hover, :focus-visible) {
		background-color: var(--ls-mobile-surface) !important;
		outline-color: var(--ls-mobile-action);
	}


	/* Glass belongs to the outer card, with a solid fallback for older browsers. */
	html body[class] {
		--ls-mobile-glass: var(--ls-mobile-surface);
		--ls-mobile-glass-filter: none;
		--ls-mobile-glass-edge: rgba(255, 255, 255, .9);
		--ls-mobile-glass-shadow: 0 10px 28px rgba(22, 70, 58, .09), 0 2px 6px rgba(22, 70, 58, .04), inset 0 1px 0 rgba(255, 255, 255, .96);
		--ls-mobile-control-shadow: 0 4px 14px rgba(22, 70, 58, .09), inset 0 0 0 1px rgba(255, 255, 255, .78);
	}
	@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
		html body[class] {
			--ls-mobile-glass: rgba(250, 254, 252, .78);
			--ls-mobile-glass-filter: blur(16px) saturate(125%);
		}
	}
	@media (prefers-reduced-transparency: reduce) {
		html body[class] {
			--ls-mobile-glass: var(--ls-mobile-surface);
			--ls-mobile-glass-filter: none;
		}
	}

	html body #main-container :is(.ls-vs-inner, .ls-canopy-content, .ls-canopy-toolbar,
		.ls-canopy-product, .lspc-related-card, .woocommerce-product-gallery, .summary.entry-summary,
		.woocommerce-tabs, .wc-block-cart__sidebar, .wc-block-checkout__sidebar,
		.lightsign-cart-selection, .wc-block-cart-items__row,
		.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content,
		.woocommerce-form-login, .woocommerce-form-register, .lightsign-reset-form-card,
		.lsua-form, .lscu-form, .lscu-thank-card, .ls-info-panel, .lightsign-legal,
		.lightsign-not-found, .lightsign-order-complete-card),
	html body #main-container ul.products > li.product,
	html body #main-container .wc-block-grid__product,
	html body.woocommerce-cart #main-container .wc-block-cart__main:not(:has(.wc-block-cart-items)),
	html body.woocommerce-checkout #main-container .wc-block-checkout__main::before,
	html body.woocommerce-checkout #main-container .wc-block-checkout__form::before,
	html body.lsh-mobile-catalog-header .ls-main-nav,
	html body[class] :is(.ls-account-dropdown, .ls-product-more__panel, .lsips-results,
		.lspc-cart-notice-dialog, .lightsign-coupon-modal__dialog,
		.lightsign-account-success-modal__dialog, .lsw-login-dialog, .lscc-banner, .lscc-dialog,
		.select2-dropdown, .scs-chat-panel),
	html body #lrcsp-shipping-entry-notice,
	html body #lrcsp-quote-review,
	html body #lrcsp-quote-notice,
	html body[class] .lspa-floating-cart.lspa-floating-cart--mobile {
		background-color: var(--ls-mobile-glass) !important;
		border-color: var(--ls-mobile-glass-edge);
		box-shadow: var(--ls-mobile-glass-shadow) !important;
		-webkit-backdrop-filter: var(--ls-mobile-glass-filter);
		backdrop-filter: var(--ls-mobile-glass-filter);
	}

	/* Small floating controls share the material without changing primary buttons. */
	html body[class] .ls-nav-icons :is(.ls-mobile-back, .ls-cart, .ls-account-trigger),
	html body[class] :is(.ls-product-more__trigger, .ls-hero-arrow),
	html body #main-container :is(.flexy-arrow-prev, .flexy-arrow-next, .lspc-thumbs-nav) {
		background-color: var(--ls-mobile-glass) !important;
		border-color: var(--ls-mobile-glass-edge);
		box-shadow: var(--ls-mobile-control-shadow) !important;
		-webkit-backdrop-filter: var(--ls-mobile-glass-filter);
		backdrop-filter: var(--ls-mobile-glass-filter);
	}
	html body[class] .lspa-floating-cart.lspa-floating-cart--mobile {
		box-shadow: 0 -6px 24px rgba(22, 70, 58, .09), inset 0 1px 0 rgba(255, 255, 255, .96) !important;
	}

	/* Clear inner layers so they do not paint over, or repeatedly blur, the glass. */
	html body.lsh-mobile-catalog-header :is(.ls-nav-icons, .ls-category-row),
	html body[class] :is(.lsips-result, .lsips-result-label, .select2-results, .select2-search--dropdown,
		.scs-lead-view, .scs-chat-header, .scs-chat-messages, .scs-chat-composer, .scs-disclaimer, .scs-typing),
	html body[class] .ls-product-more__panel a,
	html body #main-container :is(.woocommerce-Tabs-panel, .wc-block-components-checkout-order-summary__content),
	html body #main-container .summary.entry-summary .woocommerce-product-gallery,
	html body #main-container .wcbud-panel :is(.wcbud-panel__heading, .wcbud-discount-table,
		.wcbud-preview, thead, tbody, tr, th, td) {
		background-color: transparent !important;
	}
	html body #main-container .summary.entry-summary .woocommerce-product-gallery {
		box-shadow: none !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
	html body #main-container :is(.wcbud-panel, .lightsign-selected-total,
		.lightsign-checkout-breakdown, .wc-block-components-address-card, .woocommerce-Address,
		.lightsign-extra-shipping-card, .lsw-review-section) {
		background-color: var(--ls-mobile-glass) !important;
		border-color: var(--ls-mobile-glass-edge);
		box-shadow: var(--ls-mobile-control-shadow);
	}

	/* These are decorative strips, not the description's diamond markers. */
	html body #main-container :is(.ls-canopy-toolbar, .ls-canopy-product, .ls-vs-inner,
		.summary.entry-summary, .wc-block-cart__main, .wc-block-cart__sidebar, .wc-block-checkout__sidebar,
		.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content,
		.woocommerce-form-login, .woocommerce-form-register, .lightsign-reset-form-card,
		.lsua-form, .lscu-form, .lscu-thank-card, .ls-info-panel, .lightsign-legal, .lightsign-not-found)::before,
	html body #main-container ul.products > li.product::before,
	html body #main-container .summary.entry-summary::after {
		background-color: transparent !important;
	}
}

/* Let the sticky catalog navigation reach both mobile screen edges. */
@media (max-width: 780px) {
	html body.lsh-mobile-catalog-header .ls-main-nav {
		border-radius: 0;
		margin-inline: 0;
		max-width: none;
		width: 100%;
	}
	html body.lsh-mobile-catalog-header .ls-main-nav .ls-nav-inner {
		max-width: none;
		width: 100%;
	}
	html body.lsh-mobile-catalog-header .ls-main-nav .ls-nav-icons {
		border-radius: 0;
		padding-left: max(12px, env(safe-area-inset-left));
		padding-right: max(12px, env(safe-area-inset-right));
	}
	html body.lsh-mobile-catalog-header .ls-category-row .ls-nav-menu {
		padding-left: max(12px, env(safe-area-inset-left));
		padding-right: max(12px, env(safe-area-inset-right));
		scroll-padding-left: max(12px, env(safe-area-inset-left));
		scroll-padding-right: max(12px, env(safe-area-inset-right));
	}
}

/* Three horizontal separators around the mobile catalog navigation rows. */
@media (max-width: 780px) {
	html body.lsh-mobile-catalog-header .ls-nav-icons {
		border-top: 1px solid var(--ls-mobile-line, #cfe1da);
	}
	html body.lsh-mobile-catalog-header .ls-category-row {
		border-top: 1px solid var(--ls-mobile-line, #cfe1da);
		border-bottom: 1px solid var(--ls-mobile-line, #cfe1da);
	}
}

/* Separate the mobile brand header from the floating navigation controls. */
@media (max-width: 780px) {
	html body.lsh-mobile-glass-header .ls-topbar {
		border-bottom: 1px solid var(--ls-mobile-line, #cfe1da);
	}
}

/* Keep the mobile account menu readable over product photos and banners. */
@media (max-width: 780px) {
	html body[class] .ls-account-dropdown {
		background-color: rgba(250, 254, 252, .98) !important;
	}
}

/* Attach the mobile account dropdown directly to its trigger. */
@media (max-width: 780px) {
	html body[class] .ls-account-dropdown {
		top: 100%;
	}
	html body[class] .ls-account-dropdown::before {
		content: none;
	}
}

/* Keep the order note prompts compact without changing the entered text. */
@media (max-width: 780px) {
	html body.woocommerce-checkout #main-container .wc-block-checkout__order-notes .wc-block-components-checkbox label,
	html body.woocommerce-checkout #main-container .wc-block-checkout__order-notes .wc-block-components-checkbox__label {
		font-size: 12px;
	}
	html body.woocommerce-checkout #main-container .wc-block-checkout__order-notes .wc-block-components-textarea::placeholder {
		font-size: 12px;
	}
}

/* Keep the mobile checkout summary header equally compact in both states. */
@media (max-width: 780px) {
	html body.woocommerce-checkout .wc-block-checkout__sidebar:has(.wc-block-components-checkout-order-summary__title) {
		padding-block: 10px !important;
	}
	html body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title {
		border-bottom: 1px solid color-mix(in srgb, currentColor 20%, transparent);
		margin-top: 0;
		padding-block: 10px;
	}
}

/* Separate visible products in the mobile checkout order summary. */
@media (max-width: 780px) {
	html body.woocommerce-checkout #main-container .wc-block-components-order-summary__content >
		.wc-block-components-order-summary-item:where(:not([hidden]):not(.lrcsp-row):not(.lightsign-required-shipping-row)) ~
		.wc-block-components-order-summary-item:where(:not([hidden]):not(.lrcsp-row):not(.lightsign-required-shipping-row)) {
		border-top: 1px solid var(--ls-mobile-line, #cfe1da) !important;
	}
}

/* Give a collapsed mobile product summary one clean rounded surface. */
@media (max-width: 780px) {
	html body.woocommerce-checkout .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block:has(> .wc-block-components-checkout-order-summary__title[aria-expanded="false"])::before {
		grid-row: 1;
	}
	html body.woocommerce-checkout .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block > .wc-block-components-checkout-order-summary__title[aria-expanded="false"] {
		border-bottom: 0;
	}
	html body.woocommerce-checkout .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block:has(> .wc-block-components-checkout-order-summary__title[aria-expanded="false"]) .wc-block-components-totals-wrapper:has(.wc-block-components-order-summary) {
		display: none !important;
	}
}

/* Put mobile collection filters in one compact row below the title. */
@media (max-width: 780px) {
	html body #main-container .ls-canopy-header {
		margin-bottom: 0;
	}
	html body #main-container .ls-canopy-toolbar {
		border-radius: 10px;
		display: grid;
		gap: 6px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin: 12px 0 18px;
		overflow: visible;
		padding: 6px;
	}
	html body #main-container .ls-canopy-toolbar:has(.ls-canopy-price-menu) {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	html body #main-container .ls-canopy-toolbar:has(.ls-canopy-dropdown.is-open) {
		z-index: 50;
	}
	html body #main-container .ls-canopy-toolbar :is(.ls-canopy-filters, .ls-canopy-toolbar-right) {
		display: contents;
	}
	html body #main-container .ls-canopy-toolbar .ls-canopy-dropdown {
		min-width: 0;
		position: static;
		width: auto;
	}
	html body #main-container .ls-canopy-toolbar .ls-canopy-dd-toggle {
		border-radius: 7px;
		font-size: 13px;
		gap: 4px;
		height: 36px;
		line-height: 1.2;
		min-height: 36px;
		min-width: 0;
		padding: 0 5px;
		white-space: nowrap;
		width: 100%;
	}
	html body #main-container .ls-canopy-toolbar .ls-canopy-dd-menu {
		box-sizing: border-box;
		left: 0;
		max-width: 100%;
		min-width: 0;
		right: auto;
		top: calc(100% + 6px);
		width: min(220px, 100%);
	}
	html body #main-container .ls-canopy-toolbar .ls-canopy-price-menu {
		left: 50%;
		transform: translateX(-50%);
		width: min(300px, 100%);
	}
	html body #main-container .ls-canopy-toolbar .ls-canopy-sort-menu {
		left: auto;
		right: 0;
		width: min(260px, 100%);
	}
}

/* Reduce mobile footer whitespace while retaining its familiar link layout. */
@media (max-width: 780px) {
	html body .ct-footer .lsfl-row > .ct-container {
		padding-block: 12px 8px;
	}
	html body .ct-footer .ls-footer-links {
		gap: 6px 24px;
	}
	html body .ct-footer [data-row="bottom"] > .ct-container {
		padding-block: 8px 10px;
	}
	@media (max-width: 359px) {
		html body .ct-footer .lsfl-row > .ct-container {
			padding-bottom: 12px;
		}
		html body .ct-footer .ls-footer-links {
			column-gap: 12px;
		}
	}
}

/* Keep the mobile Price entry visible before an account gains price access. */
@media (max-width: 780px) {
	html body #main-container .ls-canopy-toolbar .ls-canopy-price-access {
		display: block !important;
	}
	html body #main-container .ls-canopy-price-access-link {
		align-items: center;
		border-radius: 6px;
		color: var(--lscp-green, #0b5f4a);
		display: flex;
		font-size: 14px;
		font-weight: 600;
		justify-content: center;
		min-height: 40px;
		padding: 8px;
		text-align: center;
		text-decoration: underline;
		text-underline-offset: 3px;
	}
}

/* Keep the mobile search field seamless inside its rounded search bar. */
@media (max-width: 780px) {
	html body[class] .ls-main-nav .lsips-form > input.lsips-input {
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		outline: 0 !important;
	}
}

/* Keep mobile gallery controls close to the edge and the product image visible. */
@media (max-width: 780px) {
	html body.single-product #main-container .woocommerce-product-gallery .flexy > :is(.flexy-arrow-prev, .flexy-arrow-next) {
		--translate-x: 0;
		background: rgba(250, 254, 252, .2) !important;
		border-color: rgba(255, 255, 255, .3);
		box-shadow: none !important;
		color: #164f4b !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
	html body.single-product #main-container .woocommerce-product-gallery .flexy > .flexy-arrow-prev {
		left: 4px;
	}
	html body.single-product #main-container .woocommerce-product-gallery .flexy > .flexy-arrow-next {
		right: 4px;
	}
	html body.single-product #main-container .woocommerce-product-gallery .flexy > :is(.flexy-arrow-prev, .flexy-arrow-next):is(:active, :focus-visible) {
		background: rgba(250, 254, 252, .4) !important;
	}
}
