/* Final client review: product media, checkout clarity and mobile polish. */

.gotto-reference-header__cart-count {
	display: none;
	box-sizing: border-box;
	width: 20px;
	min-width: 20px;
	height: 20px;
	padding: 0;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

.gotto-reference-header__cart-count.has-items {
	display: flex;
}

.gotto-mobile-cart-count {
	position: absolute;
	top: 7px;
	right: 2px;
	display: none;
	box-sizing: border-box;
	width: 19px;
	height: 19px;
	align-items: center;
	justify-content: center;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #d3a33d;
	color: #062f55;
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
}

.gotto-mobile-cart-count.has-items {
	display: flex;
}

body.gotto-client-redesign .site-content .wd-product .wd-product-img-link,
body.gotto-client-redesign .site-content .gotto-loop-card .wd-product-img-link {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #fbf8f1 !important;
}

body.gotto-client-redesign .site-content .wd-product .wd-product-img-link img,
body.gotto-client-redesign .site-content .gotto-loop-card .wd-product-img-link img,
body.gotto-client-redesign .site-content .gotto-client-featured .wd-product-img-link img {
	width: 100% !important;
	height: auto !important;
	max-width: 100% !important;
	object-fit: contain !important;
	object-position: center !important;
	transform: none !important;
}

body.gotto-client-redesign .site-content .wd-product:hover .wd-product-img-link img,
body.gotto-client-redesign .site-content .gotto-loop-card:hover .wd-product-img-link img {
	transform: none !important;
}

.woocommerce-checkout .sidebar-container,
.woocommerce-order-pay .sidebar-container,
.woocommerce-order-received .sidebar-container {
	display: none !important;
}

.woocommerce-checkout .wd-sidebar-opener,
.woocommerce-order-pay .wd-sidebar-opener,
.woocommerce-order-received .wd-sidebar-opener {
	display: none !important;
}

.woocommerce-checkout .site-content > .container > .row > .site-content,
.woocommerce-order-pay .site-content > .container > .row > .site-content,
.woocommerce-order-received .site-content > .container > .row > .site-content,
.woocommerce-checkout .content-layout-wrapper > .site-content,
.woocommerce-order-pay .content-layout-wrapper > .site-content,
.woocommerce-order-received .content-layout-wrapper > .site-content {
	flex: 0 0 100% !important;
	max-width: 100% !important;
}

.woocommerce form .form-row label,
.woocommerce-checkout .form-row label {
	display: flex !important;
	flex-wrap: wrap;
	align-items: baseline !important;
	gap: .3em;
}

.woocommerce form .form-row label .optional,
.woocommerce-checkout .form-row label .optional {
	position: static !important;
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: .82em !important;
	font-weight: 400 !important;
	line-height: inherit !important;
	vertical-align: baseline !important;
	transform: none !important;
}

.woocommerce-checkout-review-order-table .vp-woo-pont-review-order th,
.woocommerce-checkout-review-order-table .vp-woo-pont-review-order td {
	padding: 16px !important;
	vertical-align: middle !important;
}

#vp-woo-pont-show-map {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 0 18px;
	border-radius: 5px;
	background: #073761;
	color: #fff !important;
	font-weight: 700;
}

.gotto-order-product-link {
	color: #073761 !important;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: rgba(168,130,60,.45);
	text-underline-offset: 3px;
}

.gotto-bank-transfer-confirmation {
	display: grid;
	grid-template-columns: minmax(0,.85fr) minmax(420px,1.15fr);
	gap: 26px;
	align-items: stretch;
	margin: 30px 0;
}

.gotto-bank-transfer-confirmation__intro,
.gotto-bank-transfer-card {
	padding: clamp(24px,3vw,38px);
	border-radius: 8px;
}

.gotto-bank-transfer-confirmation__intro {
	border: 1px solid #dfd2bb;
	background: #fff;
}

.gotto-bank-transfer-confirmation__intro > span {
	color: #a27628;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.gotto-bank-transfer-confirmation__intro h2 {
	margin: 10px 0;
	color: #082c4f;
}

.gotto-bank-transfer-confirmation__intro p {
	margin: 0;
	color: #526476;
	line-height: 1.7;
}

.gotto-bank-transfer-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: #062f55;
	box-shadow: 0 18px 45px rgba(4,31,55,.18);
	color: #fff;
	text-align: center;
}

.gotto-bank-transfer-card strong {
	color: #f1c24e;
	font-size: clamp(16px,2vw,22px);
	letter-spacing: .03em;
}

.gotto-bank-transfer-card span {
	font-size: 16px;
	text-transform: uppercase;
}

.gotto-bank-transfer-card code {
	display: block;
	margin: 5px 0;
	color: #fff;
	font-family: "IBM Plex Mono", monospace;
	font-size: clamp(17px,2.2vw,27px);
	font-weight: 700;
	letter-spacing: .04em;
}

.gotto-bank-transfer-card small {
	color: #d7e0e8;
	font-size: 14px;
	font-style: italic;
}

.woocommerce-order-received h2.wc-bacs-bank-details-heading,
.woocommerce-order-received .woocommerce-bacs-bank-details {
	display: none !important;
}

.woocommerce-order-received .gotto-bank-transfer-confirmation + p {
	display: none !important;
}

@media (max-width: 767px) {
	.gotto-reference-header__cart-count {
		top: 7px !important;
		right: 4px !important;
	}

	body.gotto-client-redesign .site-content .wd-product .wd-quick-view-btn,
	body.gotto-client-redesign .site-content .gotto-loop-card .wd-quick-view-btn {
		display: none !important;
	}

	body.gotto-client-redesign .site-content .gotto-client-new-products .wd-product-img-link img,
	body.gotto-client-redesign .site-content .gotto-client-accessory-products .wd-product-img-link img {
		aspect-ratio: 1.12 / 1 !important;
		padding: 9px !important;
	}

	body.gotto-client-redesign .site-content .gotto-client-featured .wd-product-img-link img {
		max-height: 245px !important;
		padding: 16px !important;
	}

	.gotto-bank-transfer-confirmation {
		grid-template-columns: minmax(0,1fr);
		gap: 14px;
	}

	.gotto-bank-transfer-confirmation__intro,
	.gotto-bank-transfer-card {
		padding: 23px 18px;
	}

	.gotto-bank-transfer-card code {
		font-size: 17px;
		letter-spacing: 0;
	}

	.woocommerce-checkout-review-order-table .vp-woo-pont-review-order th,
	.woocommerce-checkout-review-order-table .vp-woo-pont-review-order td {
		display: block !important;
		width: 100% !important;
		text-align: left !important;
	}

	#vp-woo-pont-show-map {
		width: 100%;
	}

	.vp-woo-pont-modal.show {
		top: 10px !important;
		right: 8px !important;
		bottom: 10px !important;
		left: 8px !important;
		width: auto !important;
		height: auto !important;
		border-radius: 12px !important;
		background: #fff !important;
		box-shadow: 0 24px 70px rgba(0,25,48,.28) !important;
	}

	.vp-woo-pont-modal .vp-woo-pont-modal-map,
	.vp-woo-pont-modal .vp-woo-pont-modal-sidebar {
		background-color: #fff !important;
	}

	.vp-woo-pont-modal .vp-woo-pont-modal-sidebar-search-field {
		min-height: 46px !important;
		background: #fff !important;
	}
}
