:root {
	--sh-inquiry-navy: #17324d;
	--sh-inquiry-navy-dark: #10263a;
	--sh-inquiry-ink: #17212b;
	--sh-inquiry-text: #52606d;
	--sh-inquiry-surface: #f4f6f8;
	--sh-inquiry-border: #d9e0e6;
}

body.woocommerce-cart .site-main,
body.woocommerce-cart .entry-content {
	width: 100%;
}

body.woocommerce-cart #secondary {
	display: none;
}

body.woocommerce-cart #primary {
	float: none;
	max-width: 1180px;
	width: 100%;
}

body.woocommerce-cart .woocommerce {
	max-width: 1180px;
	margin-inline: auto;
}

body.woocommerce-cart table.shop_table {
	border: 0;
	border-collapse: collapse;
	margin: 0;
}

body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td {
	border: 0;
	border-bottom: 1px solid var(--sh-inquiry-border);
	padding: 20px 14px;
	text-align: left;
	vertical-align: middle;
}

body.woocommerce-cart table.shop_table th {
	color: var(--sh-inquiry-ink);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

body.woocommerce-cart .product-thumbnail img {
	width: 108px;
	height: 108px;
	object-fit: cover;
}

body.woocommerce-cart .product-name > a {
	color: var(--sh-inquiry-ink);
	font-weight: 700;
}

body.woocommerce-cart .product-name > a:hover {
	color: var(--sh-inquiry-navy);
}

body.woocommerce-cart .product-name dl.variation,
body.woocommerce-cart .product-name .wc-item-meta {
	color: var(--sh-inquiry-text);
	font-size: 13px;
	margin-top: 8px;
}

body.woocommerce-cart a.remove {
	align-items: center;
	color: var(--sh-inquiry-text) !important;
	display: inline-flex;
	font-size: 22px;
	justify-content: center;
}

body.woocommerce-cart a.remove:hover {
	background: transparent;
	color: var(--sh-inquiry-navy) !important;
}

body.woocommerce-cart .quantity .qty {
	border: 1px solid var(--sh-inquiry-border);
	min-height: 42px;
	width: 72px;
}

body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .coupon,
body.woocommerce-cart .wc-proceed-to-checkout {
	display: none !important;
}

body.woocommerce-cart .woocommerce-cart-form .actions {
	padding-block: 18px;
}

body.woocommerce-cart button[name="update_cart"],
body.woocommerce-cart .return-to-shop .button,
.sh-inquiry-form input[type="submit"] {
	background: var(--sh-inquiry-navy);
	border: 1px solid var(--sh-inquiry-navy);
	border-radius: 0;
	box-shadow: none;
	color: #fff;
	font-weight: 700;
	min-height: 46px;
	padding: 11px 22px;
}

body.woocommerce-cart button[name="update_cart"]:hover,
body.woocommerce-cart .return-to-shop .button:hover,
.sh-inquiry-form input[type="submit"]:hover {
	background: var(--sh-inquiry-navy-dark);
	border-color: var(--sh-inquiry-navy-dark);
	color: #fff;
}

.sh-inquiry-form {
	background: var(--sh-inquiry-surface);
	margin-top: 54px;
	padding: clamp(28px, 5vw, 58px);
}

.sh-inquiry-form__intro {
	max-width: 720px;
	margin-bottom: 30px;
}

.sh-inquiry-form__eyebrow {
	color: var(--sh-inquiry-navy);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .12em;
	margin: 0 0 9px;
	text-transform: uppercase;
}

.sh-inquiry-form__intro h2,
.sh-inquiry-confirmation h2 {
	color: var(--sh-inquiry-ink);
	font-size: clamp(26px, 3vw, 36px);
	line-height: 1.2;
	margin: 0 0 12px;
}

.sh-inquiry-form__intro p:last-child,
.sh-inquiry-confirmation p {
	color: var(--sh-inquiry-text);
	margin-bottom: 0;
}

.sh-inquiry-form-grid {
	display: grid;
	gap: 20px 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sh-inquiry-field--full {
	grid-column: 1 / -1;
}

.sh-inquiry-form label {
	color: var(--sh-inquiry-ink);
	display: block;
	font-size: 14px;
	font-weight: 600;
}

.sh-inquiry-form input[type="text"],
.sh-inquiry-form input[type="email"],
.sh-inquiry-form input[type="tel"],
.sh-inquiry-form textarea {
	background: #fff;
	border: 1px solid var(--sh-inquiry-border);
	border-radius: 0;
	box-shadow: none;
	color: var(--sh-inquiry-ink);
	margin-top: 8px;
	width: 100%;
}

.sh-inquiry-form input[type="text"],
.sh-inquiry-form input[type="email"],
.sh-inquiry-form input[type="tel"] {
	min-height: 48px;
}

.sh-inquiry-form textarea {
	min-height: 150px;
	resize: vertical;
}

.sh-inquiry-form .wpcf7-not-valid-tip {
	font-size: 13px;
	margin-top: 5px;
}

.sh-inquiry-form .wpcf7-response-output {
	border-radius: 0;
	margin: 22px 0 0;
	padding: 12px 15px;
}

.sh-inquiry-confirmation {
	background: var(--sh-inquiry-surface);
	margin-top: 30px;
	padding: clamp(28px, 5vw, 50px);
}

@media (max-width: 767px) {
	body.woocommerce-cart table.shop_table thead {
		display: none;
	}

	body.woocommerce-cart table.shop_table tr.cart_item {
		display: grid;
		grid-template-columns: 36px 82px minmax(0, 1fr);
		padding: 18px 0;
		position: relative;
	}

	body.woocommerce-cart table.shop_table td {
		border: 0;
		padding: 6px;
	}

	body.woocommerce-cart table.shop_table td::before {
		display: none;
	}

	body.woocommerce-cart .product-remove {
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	body.woocommerce-cart .product-thumbnail {
		display: block;
		grid-column: 2;
		grid-row: 1 / span 2;
	}

	body.woocommerce-cart .product-thumbnail img {
		height: 72px;
		width: 72px;
	}

	body.woocommerce-cart .product-name {
		grid-column: 3;
		grid-row: 1;
		text-align: left !important;
	}

	body.woocommerce-cart .product-quantity {
		align-items: center;
		display: flex;
		grid-column: 3;
		grid-row: 2;
		justify-content: flex-start;
		text-align: left !important;
	}

	body.woocommerce-cart .product-price,
	body.woocommerce-cart .product-subtotal {
		display: block;
		grid-column: 3;
		text-align: left !important;
	}

	body.woocommerce-cart .product-price {
		grid-row: 2;
	}

	body.woocommerce-cart .product-quantity {
		grid-row: 3;
	}

	body.woocommerce-cart .product-subtotal {
		grid-row: 4;
	}

	body.woocommerce-cart .product-price::before,
	body.woocommerce-cart .product-subtotal::before {
		color: var(--sh-inquiry-text);
		content: attr(data-title) ": ";
		display: inline;
		font-size: 12px;
		font-weight: 600;
	}

	body.woocommerce-cart .woocommerce-cart-form .actions {
		display: flex;
		justify-content: stretch;
	}

	body.woocommerce-cart button[name="update_cart"] {
		width: 100%;
	}

	.sh-inquiry-form {
		margin-inline: -15px;
		padding-inline: 20px;
	}

	.sh-inquiry-form-grid {
		grid-template-columns: 1fr;
	}

	.sh-inquiry-field--full {
		grid-column: auto;
	}
}
