/**
 * Traveling Ashlar — mobile-first UX overrides
 * Loads last. Fixes tap targets, safe-area, overflow, sticky CTA, typography.
 * Does not replace site.css; wins via cascade + !important where legacy layers fight.
 */

/* ---------- Safe area + base ---------- */
.ta-header .ta-nav {
	padding-top: max(0.45rem, env(safe-area-inset-top, 0px)) !important;
}

.ta-footer-v2 {
	padding-bottom: max(1.25rem, env(safe-area-inset-bottom, 0px)) !important;
}

/* Prefer clip over hidden so sticky children still work */
@media (max-width: 1239px) {
	html,
	body {
		overflow-x: clip !important;
		max-width: 100% !important;
	}
	.ta-site {
		overflow-x: clip !important;
	}
}

/* ---------- Kill 100vw sticker bleed ---------- */
@media (max-width: 900px) {
	.ta-sticker-section {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		overflow: hidden !important;
	}
	.ta-sticker-art,
	.ta-sticker-art img {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		height: auto !important;
		object-fit: cover !important;
	}
}

/* ---------- Header tap targets (≥44px) ---------- */
@media (max-width: 1239px) {
	.ta-mobile-menu-toggle {
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		touch-action: manipulation;
	}

	.ta-header-icons {
		display: flex !important;
		align-items: center !important;
		gap: 0.15rem !important;
	}

	.ta-header-icons a,
	.ta-header-icons .ta-header-search-toggle {
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 0 !important;
		box-sizing: border-box !important;
		touch-action: manipulation;
	}

	.ta-header-icons a svg,
	.ta-header-icons .ta-header-search-toggle svg {
		width: 22px !important;
		height: 22px !important;
		max-width: 22px !important;
		max-height: 22px !important;
	}

	.ta-header-join {
		min-height: 44px !important;
		height: auto !important;
		font-size: 0.8rem !important;
		padding: 0.55rem 0.9rem !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		touch-action: manipulation;
	}

	.ta-mobile-menu-actions a {
		min-height: 48px !important;
		font-size: 0.95rem !important;
		padding: 0.7rem 0.85rem !important;
		touch-action: manipulation;
	}

	/* When hamburger menu is open: lock scroll via body class from JS */
	body.ta-mobile-nav-locked {
		overflow: hidden !important;
		touch-action: none;
	}

	.ta-brand {
		min-height: 44px !important;
		align-items: center !important;
	}
}

/* ---------- Footer social ---------- */
.ta-footer-v2 .ta-footer-social a {
	width: 44px !important;
	height: 44px !important;
	min-width: 44px !important;
	min-height: 44px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* ---------- Membership / CTAs ---------- */
@media (max-width: 900px) {
	.ta-membership-pricing .ta-price .ta-button,
	.ta-membership-pricing .ta-button,
	.ta-join-submit,
	.ta-join-btn {
		min-height: 48px !important;
		font-size: 0.95rem !important;
	}
}

/* ---------- Exclusives archive type + CTAs ---------- */
@media (max-width: 640px) {
	.ta-exclusives-archive .ta-ex-card-title,
	.ta-ex-card-title {
		font-size: 1rem !important;
		line-height: 1.25 !important;
	}
	.ta-exclusives-archive .ta-ex-card-blurb,
	.ta-ex-card-blurb {
		font-size: 0.85rem !important;
		line-height: 1.4 !important;
	}
	.ta-exclusives-archive .ta-ex-badge,
	.ta-ex-badge {
		font-size: 0.7rem !important;
	}
	.ta-exclusives-archive .ta-ex-card-actions a,
	.ta-exclusives-archive .ta-ex-card-actions .button,
	.ta-ex-card-actions a,
	.ta-ex-card-actions .button {
		min-height: 48px !important;
		font-size: 0.85rem !important;
	}
}

@media (max-width: 400px) {
	.ta-exclusives-archive .ta-ex-grid,
	.ta-ex-grid {
		grid-template-columns: 1fr !important;
	}
}

/* ---------- Product helpers ---------- */
.ta-size-step .ta-size-help,
.ta-size-help {
	font-size: 0.7rem !important;
	line-height: 1.35 !important;
}

.ta-gallery-thumbs {
	-webkit-overflow-scrolling: touch;
	scroll-padding-inline: 0.75rem;
}

/* ---------- Home sticky Join spacer ---------- */
@media (max-width: 720px) {
	.ta-home-sticky-cta {
		bottom: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		padding: 0.65rem 0.75rem max(0.65rem, env(safe-area-inset-bottom, 0px)) !important;
		z-index: 95 !important;
		display: flex !important;
		gap: 0.4rem !important;
	}

	.ta-home-sticky-btn {
		min-height: 48px !important;
		flex: 1 1 auto !important;
	}

	.ta-home-sticky-dismiss {
		width: 48px !important;
		min-width: 48px !important;
		min-height: 48px !important;
	}

	body.home.ta-sticky-cta-visible,
	body.ta-sticky-cta-visible {
		padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
	}

	/* Keep chat above thumb zone of sticky CTA when both present */
	.ta-catalog-chat,
	.ta-catalog-chat-root,
	#ta-catalog-chat {
		bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
	}
}

/* ---------- Account nav on small phones ---------- */
@media (max-width: 880px) {
	.woocommerce-account .woocommerce-MyAccount-navigation ul li a,
	.woocommerce-MyAccount-navigation a,
	.ta-account .woocommerce-MyAccount-navigation li a {
		min-height: 48px !important;
		display: flex !important;
		align-items: center !important;
		padding: 0.7rem 0.65rem !important;
	}

	.ta-account .woocommerce-MyAccount-navigation ul {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 0.4rem !important;
	}

	.ta-account .woocommerce-MyAccount-navigation li a {
		justify-content: center !important;
		text-align: center !important;
		font-size: 0.78rem !important;
	}

	.ta-account-hero-cta a {
		min-height: 44px !important;
		display: inline-flex !important;
		align-items: center !important;
		padding: 0.6rem 0.9rem !important;
	}
}

@media (max-width: 480px) {
	.ta-account .woocommerce-MyAccount-navigation ul {
		grid-template-columns: 1fr !important;
		max-height: min(42vh, 16rem) !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
		gap: 0.35rem !important;
	}

	.ta-account .woocommerce-MyAccount-navigation li a {
		justify-content: flex-start !important;
		text-align: left !important;
		font-size: 0.82rem !important;
	}

	.ta-account-stats,
	.ta-account-quick {
		grid-template-columns: 1fr 1fr !important;
	}

	.ta-account .shop_table thead {
		display: none !important;
	}

	.ta-account .shop_table,
	.ta-account .shop_table tbody,
	.ta-account .shop_table tr,
	.ta-account .shop_table td {
		display: block !important;
		width: 100% !important;
	}

	.ta-account .shop_table tr {
		padding: 0.75rem 0 !important;
		border-bottom: 1px solid #d9d3c3 !important;
	}

	.ta-mobile-menu-actions a {
		min-height: 48px !important;
	}
}

/* ---------- Drops / archive arrows ---------- */
@media (max-width: 720px) {
	.ta-drops-nav button,
	.ta-drops-arrow,
	.ta-archive-nav button {
		min-width: 44px !important;
		min-height: 44px !important;
	}
}

/* ============================================================
 * SECOND PASS — checkout / cart / home hero / payment
 * ============================================================ */

/* Stack WC cart + checkout review tables (kill sideways scrub) */
@media (max-width: 991px) {
	body.woocommerce-cart .woocommerce table.shop_table,
	body.woocommerce-checkout .woocommerce table.shop_table,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table {
		display: table !important;
		width: 100% !important;
		overflow: visible !important;
	}

	body.woocommerce-cart .woocommerce-cart-form table.shop_table thead,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table thead {
		display: none !important;
	}

	body.woocommerce-cart .woocommerce-cart-form table.shop_table,
	body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody,
	body.woocommerce-cart .woocommerce-cart-form table.shop_table tr,
	body.woocommerce-cart .woocommerce-cart-form table.shop_table td,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	body.woocommerce-cart .woocommerce-cart-form table.shop_table tr,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody tr {
		padding: 0.85rem 0 !important;
		border-bottom: 1px solid #e0e2e0 !important;
	}

	body.woocommerce-cart .woocommerce-cart-form table.shop_table td::before,
	body.woocommerce-checkout table.woocommerce-checkout-review-order-table td::before {
		content: attr(data-title);
		display: block;
		font-family: Oswald, Inter, sans-serif;
		font-size: 0.7rem;
		font-weight: 800;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		color: #626162;
		margin-bottom: 0.2rem;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-remove::before,
	body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail::before {
		content: none !important;
	}

	body.woocommerce-cart .woocommerce-cart-form td.product-quantity .quantity,
	body.woocommerce-cart .woocommerce-cart-form td.product-quantity input.qty {
		min-height: 44px !important;
		min-width: 3.25rem !important;
		font-size: 1rem !important;
	}
}

@media (max-width: 480px) {
	body.woocommerce-cart .woocommerce-cart-form .actions,
	body.woocommerce-cart .woocommerce-cart-form .coupon {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0.5rem !important;
	}

	body.woocommerce-cart .woocommerce-cart-form .coupon .input-text,
	body.woocommerce-cart .woocommerce-cart-form .coupon #coupon_code,
	body.woocommerce-cart .woocommerce-cart-form .coupon button.button,
	body.woocommerce-cart .woocommerce-cart-form .actions .button,
	body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
	a.ta-cart-clear {
		width: 100% !important;
		max-width: none !important;
		min-height: 48px !important;
		margin-left: 0 !important;
	}
}

/* Cart drawer remove hitbox + line items */
@media (max-width: 720px) {
	.ta-cart-drawer-body .woocommerce-mini-cart-item {
		grid-template-columns: 3.75rem minmax(0, 1fr) !important;
		gap: 0.65rem !important;
		position: relative !important;
		padding-right: 0.25rem !important;
	}

	.ta-cart-drawer-body .woocommerce-mini-cart-item a.remove,
	.ta-cart-drawer-body .woocommerce-mini-cart-item a.remove_from_cart_button {
		position: absolute !important;
		top: 0.55rem !important;
		right: 0 !important;
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 1px solid rgba(199, 33, 39, 0.45) !important;
		border-radius: 8px !important;
		background: #fff !important;
		color: #c72127 !important;
		font-size: 1.25rem !important;
		line-height: 1 !important;
		text-decoration: none !important;
		z-index: 2 !important;
		touch-action: manipulation;
	}

	.ta-cart-drawer-body .woocommerce-mini-cart-item .quantity {
		display: block !important;
		margin-top: 0.35rem !important;
		font-size: 0.9rem !important;
		color: #626162 !important;
	}

	.ta-cart-drawer-body .woocommerce-mini-cart-item a:not(.remove):not(.remove_from_cart_button) {
		padding-right: 3rem !important;
		overflow-wrap: anywhere !important;
		word-break: break-word !important;
	}

	.ta-cart-drawer-head,
	.ta-cart-drawer-foot,
	.ta-cart-drawer-body {
		padding-left: max(0.85rem, env(safe-area-inset-left)) !important;
		padding-right: max(0.85rem, env(safe-area-inset-right)) !important;
	}

	.ta-cart-drawer-checkout,
	.ta-cart-drawer-view,
	.ta-cart-drawer-keep {
		min-height: 48px !important;
	}
}

/* Cart page Remove stays usable on phones */
@media (max-width: 600px) {
	.woocommerce-cart-form .product-remove {
		min-width: 0 !important;
		width: 100% !important;
		padding: 0.35rem 0 !important;
	}

	.woocommerce-cart-form .product-remove a.remove {
		min-width: 44px !important;
		min-height: 44px !important;
		width: auto !important;
		padding: 0.55rem 0.85rem !important;
		font-size: 0 !important;
	}

	.woocommerce-cart-form .product-remove a.remove::after {
		content: "Remove" !important;
		font-size: 0.78rem !important;
	}
}

/* Payment method tap rows + place order */
@media (max-width: 991px) {
	body.woocommerce-checkout #payment ul.payment_methods {
		padding: 0 !important;
		margin: 0 0 0.75rem !important;
	}

	body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		gap: 0.65rem !important;
		margin: 0 !important;
		padding: 0.65rem 0.15rem !important;
		border-bottom: 1px solid #e8e8e8 !important;
		min-height: 48px !important;
	}

	body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input.input-radio {
		flex: 0 0 auto !important;
		width: 1.25rem !important;
		height: 1.25rem !important;
		min-width: 1.25rem !important;
		margin: 0 !important;
	}

	body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label {
		flex: 1 1 auto !important;
		display: flex !important;
		align-items: center !important;
		min-height: 44px !important;
		padding: 0.35rem 0 !important;
		font-size: 1rem !important;
		line-height: 1.3 !important;
		color: #000 !important;
	}

	body.woocommerce-checkout #payment ul.payment_methods li .payment_box {
		flex: 1 1 100% !important;
		margin: 0.35rem 0 0.25rem !important;
	}

	body.woocommerce-checkout #place_order,
	body.woocommerce-checkout button#place_order,
	body.ta-checkout-wizard .ta-checkout-wizard-actions .button {
		width: 100% !important;
		min-height: 52px !important;
		touch-action: manipulation;
	}

	body.woocommerce-checkout.ta-checkout-wizard.ta-checkout-step-active--2 #payment,
	body.woocommerce-checkout:not(.ta-checkout-wizard) #payment {
		padding-bottom: max(1.1rem, env(safe-area-inset-bottom)) !important;
	}
}

@media (max-width: 480px) {
	body.ta-checkout-wizard .ta-checkout-progress li {
		min-height: 44px !important;
		display: flex !important;
		align-items: center !important;
		padding: 0.7rem 0.85rem !important;
	}

	body.woocommerce-checkout:not(.woocommerce-order-received).ta-checkout-wizard.ta-checkout-step-active--2
		form.checkout.woocommerce-checkout.ta-checkout-senior,
	body.woocommerce-checkout:not(.woocommerce-order-received):not(.ta-checkout-wizard)
		form.checkout.woocommerce-checkout.ta-checkout-senior {
		padding-bottom: calc(11.5rem + env(safe-area-inset-bottom, 0px)) !important;
	}

	body.woocommerce-checkout #payment {
		padding-left: 0.85rem !important;
		padding-right: 0.85rem !important;
	}
}

/* Home hero CTAs — stack before 480 so 481–820 doesn't crush type */
@media (max-width: 820px) {
	.ta-home-hero-cta {
		flex-wrap: wrap !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0.5rem !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.ta-home-hero-cta .ta-home-btn {
		flex: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-height: 48px !important;
		white-space: normal !important;
		padding: 0.75rem 0.9rem !important;
		font-size: clamp(0.8rem, 3.2vw, 0.95rem) !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 720px) {
	.ta-home-btn-sm,
	.ta-home-modal-maptoggle .ta-home-btn {
		min-height: 44px !important;
	}

	.ta-home-wall-arrow {
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
	}
}

@media (max-width: 480px) {
	.ta-home-feature-card {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.ta-home-feature-tap {
		min-height: 44px !important;
		display: inline-flex !important;
		align-items: center !important;
		padding: 0.35rem 0 !important;
	}
}

/* ---------- Reduce motion ---------- */
@media (prefers-reduced-motion: reduce) {
	.ta-mobile-menu-toggle span[aria-hidden="true"],
	.ta-header.is-mobile-menu-open .ta-nav-right {
		transition: none !important;
	}
}

/* Desktop keeps the side gallery; the in-summary hero is mobile-only. */
.ta-mobile-pdp-hero {
	display: none !important;
}

/* ---------- Mobile PDP: title, description, options first ---------- */
@media (max-width: 900px) {
	body.single-product div.product,
	body.single-product.woocommerce div.product,
	body.single-product.woocommerce-page div.product {
		display: flex !important;
		flex-direction: column !important;
	}

	body.single-product div.product::before,
	body.single-product div.product::after {
		content: none !important;
		display: none !important;
	}

	body.single-product div.product > * {
		min-width: 0;
		max-width: 100%;
		order: 3;
	}

	body.single-product div.product > .woocommerce-notices-wrapper {
		order: 0 !important;
	}

	body.single-product div.product > .summary,
	body.single-product div.product > .entry-summary,
	body.single-product div.product > .summary.entry-summary {
		order: 1 !important;
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-top: 0 !important;
	}

	body.single-product div.product > .woocommerce-product-gallery,
	body.single-product div.product > div.images,
	body.single-product div.product > .images {
		order: 2 !important;
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-top: 1rem !important;
	}

	body.single-product .summary .product_title,
	body.single-product .entry-summary .product_title {
		margin-top: 0 !important;
		margin-bottom: 0.35rem !important;
	}

	/*
	 * First screen: title → photo → buying options.
	 * Story, short description, FAQ, extra gallery sit after that.
	 */
	body.single-product .summary.entry-summary,
	body.single-product div.product .summary {
		display: flex !important;
		flex-direction: column !important;
	}

	body.single-product .summary.entry-summary > *,
	body.single-product div.product .summary > * {
		order: 30;
		min-width: 0;
		max-width: 100%;
	}

	body.single-product .summary > .woocommerce-breadcrumb,
	body.single-product .summary > .ta-rug-breadcrumb,
	body.single-product .summary > .ta-tb-breadcrumb,
	body.single-product .summary > .ta-holo-crumb,
	body.single-product .summary > .ta-rug-exclusive-kicker,
	body.single-product .summary > .ta-tb-exclusive-kicker,
	body.single-product .summary > .ta-holo-kicker,
	body.single-product .summary > .product_title,
	body.single-product .summary > h1 {
		order: 1 !important;
	}

	body.single-product .summary > .price,
	body.single-product .summary > p.price,
	body.single-product .summary > .ta-rug-ship-chip,
	body.single-product .summary > .ta-holo-headline,
	body.single-product .summary > .ta-holo-starting {
		order: 2 !important;
	}

	body.single-product .summary > .ta-mobile-pdp-hero {
		order: 3 !important;
	}

	body.single-product .summary > form.cart,
	body.single-product .summary > .variations_form,
	body.single-product .summary > .cart,
	body.single-product .summary > .ta-size-step,
	body.single-product .summary > .ta-membership-pre-variation-flow,
	body.single-product .summary > .ta-excl-color-size-picker,
	body.single-product .summary > .ta-buy-now,
	body.single-product .summary > .stripe-express-checkout,
	body.single-product .summary > #wc-stripe-express-checkout-element,
	body.single-product .summary > .wc-stripe-express-checkout-element {
		order: 4 !important;
	}

	/* One product photo in the first screen. Keep it short so options stay on-screen. */
	.ta-mobile-pdp-hero {
		display: block !important;
		width: 100%;
		margin: 0.4rem 0 0.65rem;
		background: #f3f1ea;
		line-height: 0;
	}

	.ta-mobile-pdp-hero-img {
		display: block !important;
		width: 100% !important;
		height: auto !important;
		max-height: min(28vh, 220px) !important;
		object-fit: contain !important;
		object-position: center !important;
		margin: 0 auto !important;
	}

	body.ta-has-mobile-pdp-hero .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child {
		display: none !important;
	}

	body.ta-has-mobile-pdp-hero .woocommerce-product-gallery:not(:has(.woocommerce-product-gallery__image:nth-child(2))) {
		display: none !important;
	}

	/* Main ATC: long labels like “Bring it home” must stay inside the button. */
	body.single-product .product .single_add_to_cart_button,
	body.single-product .product .ta-size-cta-btn {
		white-space: normal !important;
		overflow-wrap: anywhere;
		word-break: break-word;
		letter-spacing: 0.06em !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		line-height: 1.2 !important;
		padding-left: 0.75rem !important;
		padding-right: 0.75rem !important;
		text-align: center !important;
	}
}

/* Hologram wraps stage + gallery + summary; keep copy/options first when it stacks. */
@media (max-width: 960px) {
	body.single-product .ta-holo-top,
	body.ta-hologram-product .ta-holo-top {
		display: flex !important;
		flex-direction: column !important;
	}

	body.single-product .ta-holo-top > .summary,
	body.single-product .ta-holo-top > .entry-summary {
		order: 1 !important;
	}

	body.single-product .ta-holo-top > .ta-holo-stage {
		order: 2 !important;
	}

	body.single-product .ta-holo-top > .woocommerce-product-gallery,
	body.single-product .ta-holo-top > .images {
		order: 3 !important;
	}
}

/* ---------- Product sticky / floating ATC: text must fit ---------- */
@media (max-width: 900px) {
	.ta-rug-sticky,
	.ta-tb-sticky,
	.ta-holo-sticky {
		box-sizing: border-box !important;
		padding-left: 0.65rem !important;
		padding-right: 0.65rem !important;
	}

	.ta-rug-sticky-inner,
	.ta-tb-sticky-inner,
	.ta-holo-sticky {
		display: flex !important;
		align-items: center !important;
		gap: 0.5rem !important;
		min-width: 0 !important;
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.ta-rug-sticky-thumb,
	.ta-tb-sticky-thumb {
		flex: 0 0 auto !important;
	}

	.ta-rug-sticky-meta,
	.ta-tb-sticky-meta,
	.ta-holo-sticky [data-ta-holo-sticky-price] {
		flex: 0 1 auto !important;
		min-width: 0 !important;
		overflow: hidden !important;
	}

	.ta-rug-sticky-size,
	.ta-rug-sticky-price,
	.ta-tb-sticky-size,
	.ta-tb-sticky-price {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.ta-rug-sticky-atc,
	.ta-tb-sticky-atc,
	.ta-holo-sticky button,
	.ta-holo-sticky [data-ta-holo-sticky-cta] {
		flex: 1 1 8.5rem !important;
		min-width: 0 !important;
		width: auto !important;
		max-width: 100% !important;
		white-space: normal !important;
		overflow-wrap: anywhere;
		word-break: break-word;
		letter-spacing: 0.04em !important;
		font-size: clamp(0.72rem, 3.3vw, 0.92rem) !important;
		line-height: 1.15 !important;
		padding: 0.55rem 0.6rem !important;
		text-align: center !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 420px) {
	.ta-rug-sticky-thumb,
	.ta-tb-sticky-thumb {
		display: none !important;
	}

	body.single-product .product .single_add_to_cart_button {
		font-size: clamp(0.82rem, 4.2vw, 1rem) !important;
		letter-spacing: 0.04em !important;
		min-height: 52px !important;
	}
}
