/* =========================================================
   Single product — summary meta (mockup), keep 50/50 columns
   ========================================================= */

body.single-product {
	--rr-pdp-accent: #c62828;
	--rr-pdp-text: #1a1a1a;
	--rr-pdp-muted: #6b6b6b;
	--rr-pdp-line: #e6e6e6;
	--rr-pdp-soft: #f5f5f5;
}

/* Keep gallery / summary equal */
body.single-product .product-image-summary > .row > .product-images,
body.single-product .product-image-summary > .row > .summary,
body.single-product div.product > .row > .product-images.col-sm-6,
body.single-product div.product > .row > .summary.col-sm-6 {
	width: 50% !important;
	float: left;
}

body.single-product .summary-inner,
body.single-product .basel-scroll-content {
	padding-left: 8px;
}

/* Stock badge */
.rr-pdp-stock {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 14px;
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--rr-pdp-soft);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #3a3a3a;
	line-height: 1;
}

.rr-pdp-stock-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #2e7d32;
	flex: 0 0 auto;
}

.rr-pdp-stock.is-out-of-stock .rr-pdp-stock-dot {
	background: #9e9e9e;
}

.rr-pdp-stock.is-out-of-stock {
	color: #666;
}

/* Title */
body.single-product .summary .product_title {
	margin: 0 0 10px !important;
	font-size: 26px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: var(--rr-pdp-text) !important;
}

/* Rating */
body.single-product .summary .woocommerce-product-rating {
	margin: 0 0 14px !important;
	display: flex;
	align-items: center;
	gap: 8px;
}

body.single-product .summary .star-rating {
	color: var(--rr-pdp-accent) !important;
	float: none !important;
	margin: 0 !important;
}

body.single-product .summary .woocommerce-review-link {
	color: var(--rr-pdp-muted) !important;
	font-size: 13px !important;
	text-decoration: none !important;
}

/* Price */
body.single-product .summary > .basel-scroll-content > p.price,
body.single-product .summary p.price {
	margin: 0 0 4px !important;
	color: var(--rr-pdp-accent) !important;
}

body.single-product .summary p.price .amount {
	color: var(--rr-pdp-accent) !important;
	font-size: 28px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
}

.rr-pdp-vat {
	margin: 0 0 16px !important;
	font-size: 13px;
	color: var(--rr-pdp-muted);
	line-height: 1.3;
}

/* Short description */
body.single-product .summary .woocommerce-product-details__short-description {
	margin: 0 0 22px !important;
	color: var(--rr-pdp-muted);
	font-size: 14.5px;
	line-height: 1.55;
}

body.single-product .summary .woocommerce-product-details__short-description p {
	margin: 0 0 0.6em;
}

body.single-product .summary .woocommerce-product-details__short-description p:last-child {
	margin-bottom: 0;
}

/* Trailer specs above add-to-cart */
.rr-pdp-specs {
	display: block;
	margin: 0 0 22px;
	padding: 0;
	border-top: 1px solid var(--rr-pdp-line);
}

.rr-pdp-specs-row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 20px;
	margin: 0;
	padding: 14px 0;
	border-bottom: 1px solid var(--rr-pdp-line);
}

.rr-pdp-specs-row dt,
.rr-pdp-specs-row dd {
	margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.35;
	color: var(--rr-pdp-text);
}

.rr-pdp-specs-row dt {
	font-weight: 600;
	flex: 1 1 auto;
}

.rr-pdp-specs-row dd {
	font-weight: 400;
	flex: 0 1 auto;
	text-align: right;
	white-space: nowrap;
}

/* Cart row */
body.single-product .summary form.cart {
	display: flex !important;
	align-items: stretch;
	gap: 12px;
	margin: 0 0 28px !important;
	padding: 0 !important;
	border: 0 !important;
}

body.single-product .summary form.cart .quantity {
	display: inline-flex !important;
	align-items: center;
	margin: 0 !important;
	border: 1px solid var(--rr-pdp-line);
	border-radius: 4px;
	overflow: hidden;
	background: #fff;
	flex: 0 0 auto;
	height: 52px;
}

body.single-product .summary form.cart .quantity .minus,
body.single-product .summary form.cart .quantity .plus {
	width: 40px !important;
	height: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	background: #fff !important;
	color: var(--rr-pdp-text) !important;
	font-size: 18px !important;
	line-height: 1 !important;
	box-shadow: none !important;
	cursor: pointer;
}

body.single-product .summary form.cart .quantity .qty {
	width: 48px !important;
	height: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	border-left: 1px solid var(--rr-pdp-line) !important;
	border-right: 1px solid var(--rr-pdp-line) !important;
	border-radius: 0 !important;
	text-align: center !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--rr-pdp-text) !important;
	background: #fff !important;
	box-shadow: none !important;
	-moz-appearance: textfield;
}

body.single-product .summary form.cart .quantity .qty::-webkit-outer-spin-button,
body.single-product .summary form.cart .quantity .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

body.single-product .summary form.cart .single_add_to_cart_button {
	flex: 1 1 auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
	margin: 0 !important;
	min-height: 52px !important;
	padding: 0 22px !important;
	border: 0 !important;
	border-radius: 4px !important;
	background: var(--rr-pdp-accent) !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	line-height: 1.2 !important;
}

body.single-product .summary form.cart .single_add_to_cart_button:hover {
	background: #a61f1f !important;
	color: #fff !important;
}

body.single-product .summary form.cart .single_add_to_cart_button::before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	background: no-repeat center / contain;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.7 12.4a2 2 0 0 0 2 1.6h7.7a2 2 0 0 0 2-1.6L21 6H6'/%3E%3C/svg%3E");
}

/* Kill Basel icon font on ATC if present */
body.single-product .summary form.cart .single_add_to_cart_button::after {
	content: none !important;
	display: none !important;
}

/* Hide clutter not in mockup */
body.single-product .summary .wishlist-btn-wrapper,
body.single-product .summary .basel-wishlist-btn,
body.single-product .summary .product_meta,
body.single-product .summary .product-share,
body.single-product .summary .basel-after-add-to-cart {
	display: none !important;
}

/* Trust strip */
.rr-pdp-trust {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 18px;
	margin: 0 0 28px;
	padding: 18px 0;
	border-top: 1px solid var(--rr-pdp-line);
	border-bottom: 1px solid var(--rr-pdp-line);
}

.rr-pdp-trust-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-width: 0;
}

.rr-pdp-trust-icon {
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	color: var(--rr-pdp-accent);
	margin-top: 1px;
}

.rr-pdp-trust-icon svg {
	width: 22px;
	height: 22px;
	display: block;
}

.rr-pdp-trust-copy {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.rr-pdp-trust-copy strong {
	font-size: 13.5px;
	font-weight: 700;
	color: var(--rr-pdp-text);
	line-height: 1.25;
}

.rr-pdp-trust-copy small {
	font-size: 12.5px;
	color: var(--rr-pdp-muted);
	line-height: 1.3;
}

/* Locations */
.rr-pdp-locations {
	margin: 0 0 8px;
}

.rr-pdp-locations-label {
	margin: 0 0 14px !important;
	font-size: 14px;
	font-weight: 700;
	color: var(--rr-pdp-text);
}

.rr-pdp-locations-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px 28px;
}

.rr-pdp-location-city {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 8px;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--rr-pdp-text);
	line-height: 1.2;
}

.rr-pdp-location-pin {
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	color: var(--rr-pdp-accent);
}

.rr-pdp-location-pin svg {
	width: 16px;
	height: 16px;
	display: block;
}

.rr-pdp-location-phone,
.rr-pdp-location-address {
	margin: 0 0 4px !important;
	padding: 0 !important;
	font-size: 13.5px;
	line-height: 1.45;
	color: var(--rr-pdp-muted);
}

.rr-pdp-location-phone a {
	color: var(--rr-pdp-muted) !important;
	text-decoration: none !important;
}

.rr-pdp-location-phone a:hover {
	color: var(--rr-pdp-accent) !important;
}

.rr-pdp-location-phone-label {
	font-weight: 600;
	color: var(--rr-pdp-muted);
}

@media (max-width: 991px) {
	body.single-product .product-image-summary > .row > .product-images,
	body.single-product .product-image-summary > .row > .summary,
	body.single-product div.product > .row > .product-images.col-sm-6,
	body.single-product div.product > .row > .summary.col-sm-6 {
		width: 100% !important;
		float: none;
	}

	body.single-product .summary-inner,
	body.single-product .basel-scroll-content {
		padding-left: 0;
		padding-top: 24px;
	}

	body.single-product .summary .product_title {
		font-size: 22px !important;
	}
}

@media (max-width: 575px) {
	.rr-pdp-trust,
	.rr-pdp-locations-grid {
		grid-template-columns: 1fr;
	}

	body.single-product .summary form.cart {
		flex-wrap: wrap;
	}

	body.single-product .summary form.cart .single_add_to_cart_button {
		width: 100%;
		flex: 1 1 100%;
	}
}
