/*
 * Product help and delivery live below the product image. The rules are
 * intentionally scoped to the custom WooCommerce single-product layout.
 */
body.single-product .rightPromoSection > .icon-box.lightGreyTag,
body.single-product .rightPromoSection .stickyPriceSection,
body.single-product .rightPromoSection .unitPriceSection {
	display: none !important;
}

body.single-product.three-a-product-layout-ready .three-a-product-layout__promo-column {
	display: none !important;
}

body.single-product .three-a-product-service-cta {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
	gap: 0.75rem;
	width: 100%;
	margin: 1rem 0 0;
}

body.single-product .three-a-product-service-cta__ask.primaryBtnStyle {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 3.6rem;
	margin: 0 !important;
	padding: 0.9rem 1.25rem !important;
	border: 2px solid #111214 !important;
	border-radius: 999px !important;
	background: #111214 !important;
	box-shadow: 0 10px 24px rgba(17, 18, 20, 0.18);
	color: #fff !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-align: center;
	text-decoration: none !important;
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

body.single-product .three-a-product-service-cta__ask.primaryBtnStyle::after {
	content: '\2197';
	margin-left: 0.6rem;
	font-size: 1.05em;
	line-height: 1;
}

body.single-product .three-a-product-service-cta__ask.primaryBtnStyle:hover,
body.single-product .three-a-product-service-cta__ask.primaryBtnStyle:focus-visible {
	border-color: #ef2530 !important;
	background: #ef2530 !important;
	box-shadow: 0 12px 28px rgba(239, 37, 48, 0.24);
	color: #fff !important;
	transform: translateY(-1px);
}

body.single-product .three-a-product-service-cta__shipping {
	position: relative;
	display: grid;
	grid-template-columns: 3.2rem minmax(0, 1fr);
	align-items: center;
	column-gap: 0.75rem;
	min-height: 3.6rem;
	padding: 0.7rem 1rem 0.7rem 1.05rem;
	overflow: hidden;
	border: 1px solid #dedfe2;
	border-radius: 0.9rem;
	background: #f6f6f7;
	color: #111214;
}

body.single-product .three-a-product-service-cta__shipping::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 0.28rem;
	background: #ef2530;
}

body.single-product .three-a-product-service-cta__shipping-icon {
	display: grid;
	place-items: center;
	width: 3.2rem;
	height: 2.2rem;
	color: #ef2530;
}

body.single-product .three-a-product-service-cta__shipping-svg {
	display: block;
	width: 100%;
	height: auto;
	overflow: visible;
}

body.single-product .three-a-product-service-cta__truck {
	transform-origin: center;
	animation: three-a-delivery-drift 2.8s ease-in-out infinite;
}

body.single-product .three-a-product-service-cta__truck-box,
body.single-product .three-a-product-service-cta__truck-cab,
body.single-product .three-a-product-service-cta__truck-window,
body.single-product .three-a-product-service-cta__truck-road,
body.single-product .three-a-product-service-cta__truck-wheel {
	fill: none;
	stroke: currentColor;
	stroke-width: 2.4;
	stroke-linecap: round;
	stroke-linejoin: round;
}

body.single-product .three-a-product-service-cta__truck-box {
	fill: rgba(239, 37, 48, 0.08);
}

body.single-product .three-a-product-service-cta__truck-wheel {
	fill: #f6f6f7;
	transform-box: fill-box;
	transform-origin: center;
	animation: three-a-delivery-wheel 1.4s linear infinite;
}

body.single-product .three-a-product-service-cta__truck-road {
	stroke-dasharray: 5 4;
	animation: three-a-delivery-road 1.4s linear infinite;
}

body.single-product .three-a-product-service-cta__shipping-copy {
	display: grid;
	gap: 0.2rem;
	min-width: 0;
}

body.single-product .three-a-product-service-cta__shipping-label {
	color: #ef2530;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	line-height: 1;
	text-transform: uppercase;
}

body.single-product .three-a-product-service-cta__shipping-message {
	color: #111214;
	font-size: 0.98rem;
	font-weight: 750;
	line-height: 1.2;
}

@keyframes three-a-delivery-drift {
	0%, 100% { transform: translateX(0); }
	50% { transform: translateX(3px); }
}

@keyframes three-a-delivery-wheel {
	to { transform: rotate(360deg); }
}

@keyframes three-a-delivery-road {
	to { stroke-dashoffset: -9; }
}

@media (min-width: 850px) {
	body.single-product .three-a-product-layout-two-column > .three-a-product-layout__media,
	body.single-product .three-a-product-layout-two-column > .three-a-product-layout__details {
		flex: 0 0 50% !important;
		width: 50% !important;
		max-width: 50% !important;
	}
}

@media (max-width: 1099px) {
	body.single-product .three-a-product-service-cta {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 849px) {
	body.single-product .three-a-product-layout-two-column > .three-a-product-layout__media,
	body.single-product .three-a-product-layout-two-column > .three-a-product-layout__details {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.single-product .three-a-product-service-cta {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.65rem;
		margin-top: 0.8rem;
	}

	body.single-product .three-a-product-service-cta__ask.primaryBtnStyle,
	body.single-product .three-a-product-service-cta__shipping {
		width: 100%;
		min-height: 3.75rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.single-product .three-a-product-service-cta__ask.primaryBtnStyle,
	body.single-product .three-a-product-service-cta__truck,
	body.single-product .three-a-product-service-cta__truck-wheel,
	body.single-product .three-a-product-service-cta__truck-road {
		animation: none;
		transition: none;
	}
}
