/* headings */
.visual-summary h2,
.order-summary h2,
.order-breakdown h2 {
	padding-bottom: 15px;
	border-bottom: 4px solid #de5a61;
}

/* visual summary */
.visual-summary {
	flex: 1;
}

.visual_summary_div {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.visual-summary__background {
	flex: 1;
	background: #f1f5f5;
	border: 1px solid rgba(184, 209, 209, 1);
}

.product_images {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	justify-items: center;
	gap: 20px;
	padding: 20px;
}

.product_images img {
	width: 120px;
}

.cart-row {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

/* order summary */
/* style reset */
.elementor-widget-woocommerce-cart .e-cart-section {
	background: revert !important;
	border: none;
	padding: 0 !important;
}

.elementor-6 .elementor-element.elementor-element-c471691 .e-cart-section {
	border: none;
}

div:has(> .order-summary) {
	/* outline: 2px solid red; */
}

.order-summary__table {
}

.order-summary__background {
	border-top: 1px solid rgba(184, 209, 209, 1);
	border-left: 1px solid rgba(184, 209, 209, 1);
	border-right: 1px solid rgba(184, 209, 209, 1);
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.e-shop-table.e-cart-section .coupon.e-cart-section.shop_table {
	border-left: 1px solid rgba(184, 209, 209, 1);
	border-right: 1px solid rgba(184, 209, 209, 1);
	border-bottom: 1px solid rgba(184, 209, 209, 1);
	border-top-right-radius: 0;
	border-top-left-radius: 0;
}

.shop_table.order_breakdown_table tbody tr td:nth-of-type(2) {
	border-right: 1px solid rgba(184, 209, 209, 1);
}

.shop_table.order_breakdown_table tbody tr td:nth-of-type(4) {
	border-left: 1px solid rgba(184, 209, 209, 1);
	border-right: 1px solid rgba(184, 209, 209, 1);
}

.shop_table.order_breakdown_table tbody tr td:last-of-type {
	border-left: 1px solid rgba(184, 209, 209, 1);
}

.order-summary__background,
.coupon.e-cart-section.shop_table {
	padding: 16px 30px !important;
	background: rgba(241, 245, 245, 1) !important;
}

/* order breakdown */
.woocommerce table.shop_table.order_breakdown_table {
	border-collapse: collapse;
}

.shop_table.order_breakdown_table tbody {
	border: 1px solid rgba(184, 209, 209, 1);
}

.order-breakdown table tbody {
	background: rgba(241, 245, 245, 1);
}

.order-breakdown table tbody tr td:nth-of-type(3),
.order-breakdown table tbody tr td:nth-of-type(5) {
	background: #fff !important;
}

/* cart totals */

.cart_totals h2 {
	font-size: 1rem !important;
	font-weight: 600 !important;
	text-align: end !important;
	padding-right: 0 !important;
}

.cart-collaterals .cart_totals table.shop_table.shop_table_responsive {
	border: 1px solid rgba(184, 209, 209, 1);
	border-radius: 0px;
}

.cart_totals .shop_table tbody tr td {
	padding: 10px !important;
}

.cart_totals .shop_table tbody .order-total td {
	background: rgba(241, 245, 245, 1) !important;
	border-top: 1px solid rgba(184, 209, 209, 1) !important;
}

@media (min-width: 768px) {
	/* alignment of cart totals */
	.elementor-widget-woocommerce-cart
		.woocommerce
		.cart-collaterals
		.cart_totals {
		width: 50% !important;
		margin-left: auto;
	}
}

@media (min-width: 1024px) {
	.cart-row {
		flex-direction: row;
	}
}

@media (max-width: 768px) {
	/* resets display to table elements */
	.order-summary__table .shop_table thead {
		display: table-header-group !important;
	}

	.order-summary__table .shop_table tbody tr {
		display: table-row !important;
	}

	.order-summary__table .shop_table tbody tr td {
		display: table-cell !important;
		text-align: left !important;
	}

	.order-summary__table .shop_table thead tr {
		display: table-row !important;
	}

	/* removes added :before content */
	.order-summary__table table tbody tr td:before {
		content: '' !important;
	}

	/* prevents empty ui from appearing above coupon code at small screens */
	.order-summary__table table tbody tr td.actions {
		display: none !important;
	}

	/* realigns text alignment */
	.order-summary__table table.shopt_table_responsive tbody tr td {
		text-align: left !important;
	}

	/* puts padding on product number */
	.order-summary__table .shop_table tbody tr td.product-count {
		padding-right: 10px;
	}

	/* table borders */
	.order-summary__table .shop_table tbody tr:first-child,
	.order-summary__table .shop_table tbody tr:first-child td {
		border-top: none !important;
	}

	/* table borders cont */
	.order-summary__table .shop_table tbody tr td {
		border-top-style: solid !important;
		border-top-width: 1px !important;
		border-top-color: rgb(213, 216, 220) !important;
	}
}
