/**
 * Responsive polish for the custom Underscores theme with Divi Builder and WooCommerce.
 *
 * Keep this file focused on mobile/tablet fixes and preserve desktop behavior.
 */

/* -------------------------------------------------------------------------
 * Shared responsive safeguards
 * ------------------------------------------------------------------------- */

html,
body {
	max-width: 100%;
}

body {
	overflow-x: hidden;
}

img,
iframe,
video,
embed,
object {
	max-width: 100%;
}

img,
video {
	height: auto;
}

@media screen and (max-width: 1024px) {
	button,
	input[type="button"],
	input[type="submit"],
	.button,
	.et_pb_button,
	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button {
		min-height: 44px;
	}

	a:focus-visible,
	button:focus-visible,
	input:focus-visible,
	select:focus-visible,
	textarea:focus-visible {
		outline: 2px solid #2fb5dc;
		outline-offset: 3px;
	}
}

/* -------------------------------------------------------------------------
 * Header / Divi Theme Builder navigation
 * ------------------------------------------------------------------------- */

@media screen and (max-width: 1100px) {
	.et-db #et-boc .et-l--header,
	.et-db #et-boc .et-l--header .et_pb_section,
	.et-db #et-boc .et-l--header .et_pb_row,
	.et-db #et-boc .et-l--header .et_pb_column,
	.et-db #et-boc .et-l--header .et_pb_module,
	.et-db #et-boc .et-l--header .et_pb_menu,
	.et-db #et-boc .et-l--header .et_pb_menu_inner_container {
		box-sizing: border-box;
		max-width: 100%;
	}

	.et-db #et-boc .et-l--header .et_pb_row {
		width: min(92%, 1180px);
		max-width: calc(100% - 32px);
	}

	.et-db #et-boc .et-l--header .et_pb_menu_inner_container {
		display: flex;
		align-items: center;
		width: 100%;
	}

	.et-db #et-boc .et-l--header .et_pb_menu__logo-wrap {
		flex: 0 1 auto;
		max-width: 42%;
	}

	.et-db #et-boc .et-l--header .et_pb_menu__logo,
	.et-db #et-boc .et-l--header .et_pb_menu__logo img {
		max-width: 100%;
		height: auto;
	}

	.et-db #et-boc .et-l--header .et_pb_menu__wrap {
		flex: 1 1 auto;
		min-width: 0;
		justify-content: flex-end;
	}

	.et-db #et-boc .et-l--header .et-menu {
		flex-wrap: wrap;
		justify-content: flex-end;
		gap: 0 0.35rem;
	}

	.et-db #et-boc .et-l--header .et-menu > li {
		padding-left: 0.35rem;
		padding-right: 0.35rem;
	}

	.et-db #et-boc .et-l--header .et-menu > li > a {
		display: flex;
		align-items: center;
		min-height: 44px;
		font-size: clamp(0.78rem, 1.2vw, 0.95rem);
		line-height: 1.2;
	}

	.et-db #et-boc .et-l--header .et_pb_menu__icon,
	.et-db #et-boc .et-l--header .et_pb_menu__cart-button,
	.et-db #et-boc .et-l--header .et_pb_menu__search-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 44px;
		min-height: 44px;
	}
}

@media screen and (max-width: 980px) {
	.et-db #et-boc .et-l--header {
		position: relative;
		z-index: 10000;
	}

	.et-db #et-boc .et-l--header .et_pb_section {
		overflow: visible;
	}

	.et-db #et-boc .et-l--header .et_pb_section_0_tb_header {
		box-shadow: none;
	}

	.et-db #et-boc .et-l--header .et_pb_row_0_tb_header {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		gap: 0.25rem;
		max-width: calc(100% - 24px);
		padding-top: 0.55rem !important;
		padding-bottom: 0.6rem !important;
	}

	.et-db #et-boc .et-l--header .et_pb_row_0_tb_header .et_pb_column {
		width: 100% !important;
		max-width: 100% !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		margin-bottom: 0 !important;
	}

	.et-db #et-boc .et-l--header .et_pb_column_3_tb_header {
		order: 1;
	}

	.et-db #et-boc .et-l--header .et_pb_column_2_tb_header {
		order: 2;
	}

	.et-db #et-boc .et-l--header .et_pb_column_1_tb_header {
		order: 3;
	}

	.et-db #et-boc .et-l--header .et_pb_column_0_tb_header {
		order: 4;
	}

	.et-db #et-boc .et-l--header .et_pb_text_0_tb_header,
	.et-db #et-boc .et-l--header .et_pb_text_1_tb_header {
		margin-bottom: 0 !important;
	}

	.et-db #et-boc .et-l--header .et_pb_text_0_tb_header .et_pb_text_inner,
	.et-db #et-boc .et-l--header .et_pb_text_1_tb_header .et_pb_text_inner {
		line-height: 1.2;
	}

	.et-db #et-boc .et-l--header .et_pb_text_0_tb_header p,
	.et-db #et-boc .et-l--header .et_pb_text_1_tb_header p {
		margin: 0 !important;
		padding: 0 !important;
		font-size: 1rem;
		line-height: 1.2;
	}

	.et-db #et-boc .et-l--header .et_pb_section_0_tb_header a {
		min-height: 0 !important;
	}

	.et-db #et-boc .et-l--header .et_pb_text_0_tb_header a,
	.et-db #et-boc .et-l--header .et_pb_text_1_tb_header a {
		display: inline-flex;
		align-items: center;
		min-height: 24px !important;
	}

	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header {
		margin-bottom: 0 !important;
	}

	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header,
	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et_pb_menu_inner_container,
	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et_pb_menu__wrap,
	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et_pb_menu__menu,
	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et-menu-nav {
		width: 100%;
	}

	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et_mobile_nav_menu {
		display: none !important;
	}

	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et_pb_menu__menu {
		display: block !important;
		width: 100%;
	}

	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et-menu {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		margin: 0 !important;
		padding: 0 !important;
	}

	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et-menu > li,
	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et-menu > li > a {
		margin: 0 !important;
		padding: 0 !important;
	}

	.et-db #et-boc .et-l--header .et_pb_menu_0_tb_header .et-menu > li > a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 28px !important;
		color: #3f3d3a !important;
		font-family: "Italiana", Georgia, "Times New Roman", serif !important;
		font-size: 1rem;
		font-weight: 700;
		line-height: 1.2;
		text-transform: capitalize;
	}

	.et-db #et-boc .et-l--header .et_pb_social_media_follow_0_tb_header {
		display: flex;
		justify-content: center;
		gap: 0.55rem;
		margin-bottom: 0.15rem !important;
	}

	.et-db #et-boc .et-l--header .et_pb_social_media_follow_0_tb_header li {
		margin: 0 !important;
	}

	.et-db #et-boc .et-l--header .et_pb_social_media_follow_0_tb_header li a.icon {
		width: 20px !important;
		height: 20px !important;
		min-width: 20px !important;
		min-height: 20px !important;
	}

	.et-db #et-boc .et-l--header .et_pb_social_media_follow_0_tb_header li a.icon::before {
		width: 20px !important;
		height: 20px !important;
		font-size: 10px !important;
		line-height: 20px !important;
	}

	.et-db #et-boc .et-l--header .et_pb_section_1_tb_header {
		position: relative;
		z-index: 10001;
	}

	.et-db #et-boc .et-l--header .et_pb_section_1_tb_header .et_pb_row {
		padding-top: 0.65rem !important;
		padding-bottom: 0.65rem !important;
	}

	.et-db #et-boc .et-l--header .et_pb_row {
		width: 100%;
		max-width: calc(100% - 32px);
		margin-left: auto;
		margin-right: auto;
	}

	.et-db #et-boc .et-l--header .et_pb_column,
	.et-db #et-boc .et-l--header .et_pb_menu,
	.et-db #et-boc .et-l--header .et_pb_menu_inner_container,
	.et-db #et-boc .et-l--header .et_pb_menu__wrap {
		width: 100%;
	}

	.et-db #et-boc .et-l--header .et_pb_menu__wrap {
		justify-content: flex-end;
	}

	.et-db #et-boc .et-l--header .et_mobile_nav_menu {
		margin-left: auto;
		max-width: 100%;
	}

	.et-db #et-boc .et-l--header .mobile_nav {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		min-width: 44px;
		min-height: 44px;
	}

	.et-db #et-boc .et-l--header .mobile_menu_bar {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		padding: 0;
	}

	.et-db #et-boc .et-l--header .et_mobile_menu {
		right: 0;
		left: auto;
		width: min(88vw, 360px);
		max-width: calc(100vw - 32px);
		z-index: 10002;
		margin-top: 0.5rem;
		background: #f5f3ef !important;
		box-shadow: 0 14px 28px rgba(47, 43, 38, 0.16);
	}

	.et-db #et-boc .et-l--header .et_pb_menu_1_tb_header .et_mobile_menu {
		top: 100%;
	}

	body:not(.home).et-db #et-boc .et-l--body .et_pb_section_0_tb_body {
		display: flex;
		align-items: center;
		min-height: 220px;
		padding-top: 2.4rem !important;
		padding-bottom: 2.4rem !important;
		background-size: min(105vw, 460px) auto !important;
		background-position: left center !important;
	}

	body:not(.home).et-db #et-boc .et-l--body .et_pb_section_0_tb_body .et_pb_row_0_tb_body {
		width: min(88%, 720px) !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	body:not(.home).et-db #et-boc .et-l--body .et_pb_text_0_tb_body,
	body:not(.home).et-db #et-boc .et-l--body .et_pb_text_0_tb_body h1,
	body.woocommerce-order-received.et-db #et-boc .et-l .et_pb_text_0_tb_body .et_pb_text_inner::before,
	body.woocommerce-order-received.et-db #et-boc .et-l .et_pb_text_0_tb_body h1::before {
		font-family: "Italiana", Georgia, "Times New Roman", serif !important;
		font-size: clamp(2.45rem, 12vw, 3.45rem) !important;
		font-weight: 400 !important;
		line-height: 1.08 !important;
		letter-spacing: 0 !important;
	}
}

@media screen and (max-width: 480px) {
	.et-db #et-boc .et-l--header .et_pb_row {
		max-width: calc(100% - 24px);
	}

	.et-db #et-boc .et-l--header .et_pb_menu__logo-wrap {
		max-width: 58%;
	}
}

/* -------------------------------------------------------------------------
 * Footer / small touch targets
 * ------------------------------------------------------------------------- */

@media screen and (max-width: 1024px) {
	.et-db #et-boc .et-l--footer a,
	.et-db #et-boc .et-l--header a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	.et-db #et-boc .et-l--footer .et_pb_social_icon a,
	.et-db #et-boc .et-l--header .et_pb_social_icon a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 44px;
		min-height: 44px;
	}
}

/* -------------------------------------------------------------------------
 * Divi contact forms
 * ------------------------------------------------------------------------- */

@media screen and (max-width: 1024px) {
	.et-db #et-boc .et-l .et_pb_contact_form {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		margin-left: 0;
	}

	.et-db #et-boc .et-l .et_pb_contact_field {
		box-sizing: border-box;
		max-width: 100%;
		padding-left: 0;
	}

	.et-db #et-boc .et-l .et_pb_contact_field_half {
		width: 100%;
		margin-right: 0;
	}

	.et-db #et-boc .et-l .et_pb_contact_field input,
	.et-db #et-boc .et-l .et_pb_contact_field textarea,
	.et-db #et-boc .et-l .et_pb_contact_submit {
		min-height: 44px;
	}
}

/* -------------------------------------------------------------------------
 * WooCommerce cart table on mobile
 * ------------------------------------------------------------------------- */

@media screen and (max-width: 700px) {
	body.woocommerce-cart .woocommerce-cart-form table.cart,
	body.woocommerce-cart .woocommerce-cart-form table.cart tbody,
	body.woocommerce-cart .woocommerce-cart-form table.cart tr,
	body.woocommerce-cart .woocommerce-cart-form table.cart td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart tbody,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart tr,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart {
		border: 0;
		background: transparent;
		overflow: visible;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart thead,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart thead {
		display: none;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart tr.cart_item,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart tr.cart_item {
		position: relative;
		margin: 0 0 1rem;
		padding: 1rem;
		border: 1px solid #ddd8e3;
		border-radius: 8px;
		background: #f2f2f2;
		box-shadow: 0 12px 26px rgba(47, 43, 38, 0.05);
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart tr.cart_item td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart tr.cart_item td {
		border: 0;
		padding: 0.45rem 0 !important;
		text-align: left !important;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-remove,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-remove {
		position: absolute;
		top: 0.65rem;
		right: 0.65rem;
		z-index: 2;
		width: auto !important;
		padding: 0 !important;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-remove a.remove,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-remove a.remove {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-thumbnail {
		width: 4.5rem !important;
		margin-bottom: 0.25rem;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail::before,
	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-remove::before,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-thumbnail::before,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-remove::before {
		display: none;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-name,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-name {
		padding-right: 3.25rem !important;
		font-size: 1.05rem;
		font-weight: 700;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-price,
	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-quantity,
	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-subtotal,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-price,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-quantity,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-subtotal {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.actions,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.actions {
		padding: 1rem 0 0 !important;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.actions .coupon,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.actions .coupon {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr);
		gap: 0.75rem;
		width: 100%;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.actions .coupon .input-text,
	body.woocommerce-cart .woocommerce-cart-form table.cart td.actions .coupon .button,
	body.woocommerce-cart .woocommerce-cart-form table.cart td.actions button[name="update_cart"],
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.actions .coupon .input-text,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.actions .coupon .button,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.actions button[name="update_cart"] {
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
	}
}

@media screen and (max-width: 1024px) {
	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-remove a.remove,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-remove a.remove,
	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-thumbnail a,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-thumbnail a,
	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-name a,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-name a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 44px;
		min-height: 44px;
	}

	body.woocommerce-cart .woocommerce-cart-form table.cart td.product-name a,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_products table.cart td.product-name a {
		justify-content: flex-start;
	}
}

/* -------------------------------------------------------------------------
 * WooCommerce cart totals
 * ------------------------------------------------------------------------- */

@media screen and (max-width: 640px) {
	body.woocommerce-cart .cart_totals,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals {
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals h2,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals h2 {
		margin-bottom: 1rem !important;
		text-align: center !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals table.shop_table {
		width: 100% !important;
		table-layout: fixed;
		border-collapse: separate !important;
		border-spacing: 0;
		overflow: hidden;
	}

	body.woocommerce-cart .cart_totals table.shop_table th,
	body.woocommerce-cart .cart_totals table.shop_table td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals table.shop_table th,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals table.shop_table td {
		box-sizing: border-box;
	}

	body.woocommerce-cart .cart_totals table.shop_table td::before,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals table.shop_table td::before {
		display: none !important;
		content: none !important;
	}

	body.woocommerce-cart .cart_totals tr.cart-subtotal,
	body.woocommerce-cart .cart_totals tr.order-total,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.cart-subtotal,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.order-total {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		gap: 1rem;
		padding: 1rem 1.1rem !important;
	}

	body.woocommerce-cart .cart_totals tr.cart-subtotal th,
	body.woocommerce-cart .cart_totals tr.cart-subtotal td,
	body.woocommerce-cart .cart_totals tr.order-total th,
	body.woocommerce-cart .cart_totals tr.order-total td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.cart-subtotal th,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.cart-subtotal td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.order-total th,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.order-total td {
		display: block !important;
		width: auto !important;
		padding: 0 !important;
		border: 0 !important;
	}

	body.woocommerce-cart .cart_totals tr.cart-subtotal td,
	body.woocommerce-cart .cart_totals tr.order-total td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.cart-subtotal td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.order-total td {
		text-align: right !important;
		white-space: nowrap;
	}

	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals,
	body.woocommerce-cart .cart_totals tr.shipping,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.woocommerce-shipping-totals,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.shipping {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr);
		gap: 0.8rem;
		padding: 1rem 1.1rem !important;
	}

	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th,
	body.woocommerce-cart .cart_totals tr.shipping th,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.woocommerce-shipping-totals th,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.shipping th {
		display: block !important;
		width: auto !important;
		padding: 0 !important;
		border: 0 !important;
		text-align: left !important;
		font-weight: 800;
	}

	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td,
	body.woocommerce-cart .cart_totals tr.shipping td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.woocommerce-shipping-totals td,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals tr.shipping td {
		display: block !important;
		width: 100% !important;
		padding: 0 !important;
		border: 0 !important;
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals #shipping_method,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method,
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method {
		display: grid !important;
		width: 100% !important;
		gap: 0.65rem !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals #shipping_method li,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method li,
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method li {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals #shipping_method .zdl-cart-shipping-method,
	body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method .zdl-cart-shipping-method,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method,
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method .zdl-cart-shipping-method {
		display: grid !important;
		grid-template-columns: 22px minmax(0, 1fr);
		align-items: center !important;
		justify-content: initial !important;
		gap: 0.7rem !important;
		width: 100% !important;
		min-height: 48px;
		margin: 0 !important;
		padding: 0.7rem 0.8rem !important;
		border: 1px solid #ded8e6;
		border-radius: 8px;
		background: #fff;
		box-shadow: 0 8px 20px rgba(62, 52, 72, 0.05);
		text-align: left !important;
	}

	body.woocommerce-cart .cart_totals #shipping_method .zdl-cart-shipping-method:has(input.shipping_method:checked),
	body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method:has(input.shipping_method:checked),
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method .zdl-cart-shipping-method:has(input.shipping_method:checked),
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method:has(input.shipping_method:checked),
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method .zdl-cart-shipping-method:has(input.shipping_method:checked) {
		border-color: #2fb5dc;
		background: #f7fcff;
		box-shadow: 0 12px 28px rgba(47, 181, 220, 0.16);
	}

	body.woocommerce-cart .cart_totals #shipping_method input.shipping_method,
	body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #shipping_method input.shipping_method,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method input.shipping_method,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals .woocommerce-shipping-totals #shipping_method input.shipping_method,
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method input.shipping_method {
		grid-column: 1;
		align-self: center !important;
		justify-self: center;
		width: 20px !important;
		height: 20px !important;
		margin: 0 !important;
		position: static !important;
		transform: none !important;
	}

	body.woocommerce-cart .cart_totals #shipping_method input[type="hidden"].shipping_method,
	body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #shipping_method input[type="hidden"].shipping_method,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method input[type="hidden"].shipping_method,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals .woocommerce-shipping-totals #shipping_method input[type="hidden"].shipping_method,
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method input[type="hidden"].shipping_method {
		display: none !important;
	}

	body.woocommerce-cart .cart_totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method),
	body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method),
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method),
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method),
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method) {
		grid-template-columns: minmax(0, 1fr);
	}

	body.woocommerce-cart .cart_totals #shipping_method .zdl-cart-shipping-method__text,
	body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method__text,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method .zdl-cart-shipping-method__text,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method__text,
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method .zdl-cart-shipping-method__text {
		display: flex !important;
		grid-column: 2;
		align-items: center !important;
		flex-wrap: wrap;
		gap: 0.25rem;
		min-height: 0 !important;
		font-size: 1rem;
		line-height: 1.35 !important;
		text-align: left !important;
		overflow-wrap: anywhere;
	}

	body.woocommerce-cart .cart_totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method) .zdl-cart-shipping-method__text,
	body.woocommerce-cart .cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method) .zdl-cart-shipping-method__text,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method) .zdl-cart-shipping-method__text,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals .woocommerce-shipping-totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method) .zdl-cart-shipping-method__text,
	body.woocommerce-cart.et-db #et-boc .et-l .woocommerce .cart_totals #shipping_method .zdl-cart-shipping-method:has(input[type="hidden"].shipping_method) .zdl-cart-shipping-method__text {
		grid-column: 1;
	}

	body.woocommerce-cart .cart_totals #shipping_method .amount,
	body.woocommerce-cart .cart_totals #shipping_method strong,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method .amount,
	body.woocommerce-cart.et-db #et-boc .et-l .et_pb_wc_cart_totals #shipping_method strong {
		white-space: nowrap;
	}
}

/* -------------------------------------------------------------------------
 * WooCommerce forms and notices
 * ------------------------------------------------------------------------- */

@media screen and (max-width: 768px) {
	.woocommerce form .form-row,
	.woocommerce-page form .form-row {
		width: 100%;
	}

	.woocommerce form .form-row input.input-text,
	.woocommerce form .form-row textarea,
	.woocommerce form .form-row select,
	.woocommerce-page form .form-row input.input-text,
	.woocommerce-page form .form-row textarea,
	.woocommerce-page form .form-row select {
		min-height: 44px;
		font-size: 16px;
	}

	.woocommerce-error,
	.woocommerce-info,
	.woocommerce-message {
		display: block;
		padding: 1rem;
		line-height: 1.45;
	}

	.wc-block-components-address-form__address_2-toggle,
	.wc-block-components-panel__button {
		display: flex;
		align-items: center;
		min-height: 44px;
	}
}

/* -------------------------------------------------------------------------
 * WooCommerce order received
 * ------------------------------------------------------------------------- */

@media screen and (min-width: 901px) {
	body.woocommerce-order-received .woocommerce-customer-details > .woocommerce-column__title {
		margin-bottom: 0.9rem !important;
	}

	body.woocommerce-order-received .woocommerce-customer-details {
		display: grid;
		gap: 0.9rem;
	}

	body.woocommerce-order-received .woocommerce-customer-details > address {
		min-height: 0;
		padding: 1.35rem 1.45rem !important;
	}

	body.woocommerce-order-received .woocommerce-customer-details > address .zdl-order-address-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 0.85rem;
	}

	body.woocommerce-order-received .woocommerce-customer-details > address .zdl-order-address-list__item {
		grid-template-columns: minmax(6.5rem, 0.4fr) minmax(0, 1fr);
		align-items: center;
		min-height: 2rem;
		padding: 0 0 0.85rem;
	}

	body.woocommerce-order-received .woocommerce-customer-details > address .zdl-order-address-list__item:nth-last-child(-n + 2) {
		padding-bottom: 0;
		border-bottom: 0;
	}

	body.woocommerce-order-received .woocommerce-customer-details > address .zdl-order-address-list dd {
		font-size: 1rem !important;
	}
}

@media screen and (max-width: 900px) {
	body.woocommerce-order-received .woocommerce-order {
		width: 100%;
		max-width: 100%;
		overflow: hidden;
	}

	body.woocommerce-order-received.et-db #et-boc .et-l .woocommerce .woocommerce-order ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		flex-wrap: wrap !important;
		gap: 0.75rem !important;
		max-width: 100% !important;
		overflow: visible !important;
	}

	body.woocommerce-order-received.et-db #et-boc .et-l .woocommerce .woocommerce-order ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details > li,
	body.woocommerce-order-received .woocommerce-thankyou-order-details li,
	body.woocommerce-order-received .woocommerce-order-overview li,
	body.woocommerce-order-received .woocommerce ul.order_details li {
		width: 100% !important;
		min-height: auto;
		padding: 0.95rem !important;
		overflow-wrap: anywhere;
	}

	body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns {
		grid-template-columns: minmax(0, 1fr);
		gap: 2.65rem;
	}
}

@media screen and (max-width: 640px) {
	body.woocommerce-order-received.et-db #et-boc .et-l .et_pb_post_content_0_tb_body {
		padding: 24px 16px 0 !important;
	}

	body.woocommerce-order-received .woocommerce-order {
		gap: 1rem;
	}

	body.woocommerce-order-received .woocommerce-thankyou-order-received {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 0.85rem;
		margin-bottom: 0.25rem !important;
		padding: 1.15rem !important;
		font-size: clamp(1.05rem, 6vw, 1.45rem) !important;
		line-height: 1.25 !important;
	}

	body.woocommerce-order-received .woocommerce-thankyou-order-received::before {
		width: 44px;
		height: 44px;
		background:
			linear-gradient(135deg, transparent 46%, #fff 47% 56%, transparent 57%) 14px 16px / 18px 14px no-repeat,
			#2fb5dc;
	}

	body.woocommerce-order-received.et-db #et-boc .et-l .woocommerce .woocommerce-order ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details,
	body.woocommerce-order-received .woocommerce-thankyou-order-details,
	body.woocommerce-order-received .woocommerce-order-overview,
	body.woocommerce-order-received .woocommerce ul.order_details {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 0.65rem !important;
	}

	body.woocommerce-order-received .woocommerce-thankyou-order-details li strong,
	body.woocommerce-order-received .woocommerce-order-overview li strong,
	body.woocommerce-order-received .woocommerce ul.order_details li strong {
		font-size: 1.02rem !important;
	}

	body.woocommerce-order-received .woocommerce-order-details,
	body.woocommerce-order-received .woocommerce-customer-details {
		padding: 1rem !important;
		border-radius: 6px;
	}

	body.woocommerce-order-received .woocommerce-order-details__title,
	body.woocommerce-order-received .woocommerce-column__title {
		font-size: 1.25rem !important;
	}

	body.woocommerce-order-received .woocommerce-table--order-details {
		width: 100% !important;
		table-layout: fixed;
	}

	body.woocommerce-order-received .woocommerce-table--order-details th,
	body.woocommerce-order-received .woocommerce-table--order-details td {
		padding: 0.75rem 0.8rem !important;
		font-size: 0.92rem !important;
		overflow-wrap: anywhere;
	}

	body.woocommerce-order-received .woocommerce-table--order-details tfoot tr:last-child th,
	body.woocommerce-order-received .woocommerce-table--order-details tfoot tr:last-child td {
		font-size: 1rem !important;
	}

	body.woocommerce-order-received .woocommerce-customer-details address {
		min-height: 0 !important;
		padding: 1rem !important;
	}

	body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column + .woocommerce-column,
	body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column--shipping-address {
		margin-top: 2.65rem !important;
	}

	body.woocommerce-order-received .woocommerce-customer-details address::before {
		margin: -1rem -1rem 0.9rem;
	}
}
