/**
 * ARCADE DIRECT — SINGLE PRODUCT SPACING AND HYBRID SALE PANEL
 * Design contract: breadcrumb, product image and commercial summary form one compact, deliberate
 * entry sequence. Hybrid products surface the editor-set guide_sale_price in a calm teal enquiry
 * panel; sale-only, hire-only and out-of-stock products never inherit this panel.
 */

/*
 * Valid Local markup has breadcrumbs as the first child of .single-product-page,
 * followed by section.section--sm, which contains a pre-existing CSS-grid product
 * layout. Keep this sequence in normal document flow. Negative margins and forced
 * grid rows pull the gallery across the breadcrumb or tab boundaries.
 */
body.single-product #main-content,
body.single-product .ad-main { padding-top: 0 !important; }

body.single-product .single-product-page > .container:first-child {
	padding-bottom: 0 !important;
	padding-top: clamp(1rem, 1.75vw, 1.5rem) !important;
}

body.single-product .breadcrumbs,
body.single-product .woocommerce-breadcrumb,
body.single-product .breadcrumbs p,
body.single-product .woocommerce-breadcrumb p {
	margin: 0 !important;
	padding: 0 !important;
}

body.single-product .single-product-page > .section--sm {
	margin: 0 !important;
	padding: clamp(1rem, 1.75vw, 1.5rem) 0 clamp(3rem, 6vw, 6rem) !important;
}

body.single-product .single-product-page > .section--sm > .container,
body.single-product .woocommerce-notices-wrapper,
body.single-product div.product {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* The existing quote-builder grid owns column and row placement. */
body.single-product div.product > .woocommerce-product-gallery {
	align-self: start;
	position: static !important;
	top: auto !important;
}

body.single-product div.product > .summary {
	align-self: start;
	margin-top: 0 !important;
}

body.single-product div.product > .woocommerce-tabs,
body.single-product div.product > .wc-tabs-wrapper {
	position: static !important;
	z-index: auto;
}

body.single-product .ad-product-commercial__sale-panel {
	align-items: center;
	background: #e7f8f4;
	border: 1.5px solid var(--brand-teal, #35bb9d);
	border-radius: 1rem;
	color: var(--brand-navy, #081224);
	display: grid;
	gap: .8rem 1rem;
	grid-template-columns: 2.85rem minmax(0, 1fr);
	margin-top: 1.15rem;
	padding: .9rem 1rem;
}

body.single-product .ad-product-commercial__sale-icon {
	align-items: center;
	background: var(--brand-teal, #35bb9d);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	height: 2.85rem;
	justify-content: center;
	width: 2.85rem;
}

body.single-product .ad-product-commercial__sale-icon svg { fill: currentColor; height: 1.2rem; width: 1.35rem; }

body.single-product .ad-product-commercial__sale-copy { min-width: 0; }

body.single-product .ad-product-commercial__sale-label,
body.single-product .ad-product-commercial__sale-text { display: block; }

body.single-product .ad-product-commercial__sale-label {
	color: var(--brand-navy, #081224);
	font-family: var(--font-display, "Barlow Condensed", sans-serif);
	font-size: 1.35rem;
	font-weight: 800;
	letter-spacing: -.02em;
	line-height: 1;
}

body.single-product .ad-product-commercial__sale-text {
	color: #314156;
	font-size: .98rem;
	line-height: 1.35;
	margin-top: .32rem;
}

body.single-product .ad-product-commercial__sale-panel .ad-button {
	justify-self: stretch;
	min-height: 2.85rem;
	white-space: nowrap;
}

body.single-product .ad-product-commercial__sale-panel .ad-button--teal {
	background: var(--brand-teal, #35bb9d);
	border-color: var(--brand-teal, #35bb9d);
	color: var(--brand-navy, #081224);
}

body.single-product .ad-product-commercial__sale-panel .ad-button--teal:hover,
body.single-product .ad-product-commercial__sale-panel .ad-button--teal:focus-visible {
	background: var(--brand-teal-dark, #26927a);
	border-color: var(--brand-teal-dark, #26927a);
	color: #fff;
}

body.single-product .ad-product-commercial__sale-panel .ad-button:focus-visible {
	outline: 3px solid var(--brand-navy, #081224);
	outline-offset: 3px;
}

@media (min-width: 42rem) {
	body.single-product .ad-product-commercial__sale-panel { grid-template-columns: 2.85rem minmax(0, 1fr) max-content; padding: .95rem 1rem; }
	body.single-product .ad-product-commercial__sale-panel .ad-button { justify-self: end; }
}

@media (max-width: 41.99rem) {
	body.single-product .breadcrumbs,
	body.single-product .woocommerce-breadcrumb { margin-bottom: 0 !important; padding-top: .75rem; }
	body.single-product .ad-product-commercial__sale-panel { border-radius: .8rem; }
}
