/* ═══════════════════════════════════════════════
   WooCommerce Style Overrides — iLife Bumble
   ═══════════════════════════════════════════════
   Matches WooCommerce elements to the iLife Bumble plan-card design.
   Uses theme CSS custom properties from main.css.
   Loaded only when WooCommerce is active (see functions.php).

   @package ILifeBumble
   ═══════════════════════════════════════════════ */

/* ── Product Grid ── */
.woocommerce-main {
	padding: 40px 0 80px;
}

.woocommerce ul.products,
.woocommerce ul.products.columns-3,
.woocommerce ul.products.columns-4 {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 2rem;
	padding: 0;
	margin: 0;
	list-style: none;
}

/* Hide placeholder images for plan products (no images yet) */
.woocommerce ul.products li.product a img.woocommerce-placeholder {
	display: none;
}

.woocommerce .ilb-product-fallback-image {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	background: linear-gradient(135deg, #ffffff 0%, var(--color-primary-light) 100%);
}

/* Override WooCommerce column width calculations */
.woocommerce ul.products li.product:nth-child(2n),
.woocommerce ul.products li.product:nth-child(3n),
.woocommerce ul.products li.product:nth-child(4n) {
	margin-right: 0 !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display: none !important;
}

.woocommerce ul.products li.product,
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce-page ul.products li.product {
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: none !important;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-sm);
	overflow: hidden;
	transition: transform var(--transition), box-shadow var(--transition);
	display: flex;
	flex-direction: column;
	clear: none !important;
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-4px);
	box-shadow: var(--shadow-md);
}

.woocommerce ul.products li.product a img {
	width: 100%;
	height: auto;
	display: block;
	margin: 0;
	border-radius: 0;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	padding: 1rem 1.25rem 0.25rem;
	font-family: var(--font-heading);
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--color-accent);
	margin: 0;
}

.woocommerce ul.products li.product .price {
	padding: 4px 1.25rem 0.5rem;
	font-family: var(--font-heading);
	font-size: 1.5rem;
	font-weight: 800;
	color: var(--color-primary);
}

.woocommerce ul.products li.product .price del {
	font-size: 0.875rem;
	color: var(--color-text-light);
	font-weight: 400;
}

.woocommerce ul.products li.product .price ins {
	text-decoration: none;
}

.woocommerce ul.products li.product .star-rating {
	margin: 0 1.25rem 0.5rem;
}

/* ── Buttons — Primary (cyan) & Secondary (yellow) ── */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .widget_price_filter .price_slider_amount .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 12px 28px;
	font-family: var(--font-body);
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.025em;
	text-transform: none;
	text-decoration: none;
	border: 2px solid var(--color-primary);
	border-radius: var(--radius-xl);
	background: var(--color-primary);
	color: #fff;
	cursor: pointer;
	transition: background var(--transition), border-color var(--transition), transform 0.15s ease;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
	background: var(--color-primary-dark);
	border-color: var(--color-primary-dark);
	color: #fff;
	transform: translateY(-1px);
}

/* Alt / Secondary button (yellow) */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
	background: var(--color-secondary);
	border-color: var(--color-secondary);
	color: var(--color-accent);
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover {
	background: var(--color-secondary-dark);
	border-color: var(--color-secondary-dark);
	color: var(--color-accent);
}

/* Disabled state */
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce input.button.disabled,
.woocommerce input.button:disabled {
	opacity: 0.5;
	cursor: not-allowed;
	transform: none;
}

/* Add-to-cart button within product cards */
.woocommerce ul.products li.product .button {
	margin: auto 1.25rem 1.25rem;
	text-align: center;
	background: var(--color-secondary);
	border-color: var(--color-secondary);
	color: var(--color-accent);
	border-radius: var(--radius-xl);
}

.woocommerce ul.products li.product .button:hover {
	background: var(--color-secondary-dark);
	border-color: var(--color-secondary-dark);
}

/* ── Single Product ── */
.woocommerce div.product {
	padding: 40px 0;
}

.woocommerce div.product .product_title {
	font-family: var(--font-heading);
	font-size: 2.5rem;
	color: var(--color-accent);
	margin-bottom: 12px;
}

.woocommerce div.product p.price {
	color: var(--color-primary);
	font-size: 2rem;
	font-weight: 800;
	font-family: var(--font-heading);
	margin-bottom: 16px;
}

.woocommerce div.product .woocommerce-product-details__short-description {
	margin-bottom: 24px;
	color: var(--color-text-light);
	line-height: 1.7;
	font-size: 1.05rem;
}

/* Hide WooCommerce placeholder image */
.woocommerce div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img[src*="woocommerce-placeholder"],
.woocommerce div.product .woocommerce-product-gallery .wp-post-image[src*="placeholder"] {
	display: none;
}

/* Replace placeholder with styled plan card background */
.woocommerce div.product .woocommerce-product-gallery {
	background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-bg-alt) 100%);
	border-radius: var(--radius-lg);
	min-height: 300px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.woocommerce div.product .woocommerce-product-gallery--without-images {
	background: transparent;
	border-radius: 0;
	min-height: 0;
	display: block;
}

.woocommerce div.product .woocommerce-product-gallery--without-images .woocommerce-product-gallery__wrapper {
	width: 100%;
}

.woocommerce div.product .woocommerce-product-gallery__image--placeholder {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.woocommerce div.product .ilb-product-gallery__image--fallback {
	display: block;
}

.woocommerce div.product .woocommerce-product-gallery__image--placeholder .ilb-product-fallback-image {
	width: min(100%, 360px);
	border-radius: 24px;
	box-shadow: var(--shadow-md);
}

.woocommerce div.product .ilb-product-gallery__image--fallback .ilb-product-fallback-image {
	display: block;
	width: min(100%, 420px);
	max-width: 100%;
	margin: 0 auto;
	background: transparent;
	border-radius: 0;
	box-shadow: none;
}

/* Hide stock status */
.woocommerce div.product p.stock {
	display: none !important;
}

/* Style add-to-cart button on single product */
.woocommerce div.product form.cart {
	margin-bottom: 24px;
}

.woocommerce div.product form.cart .button {
	padding: 16px 50px !important;
	background: var(--color-secondary) !important;
	border-color: var(--color-secondary) !important;
	color: var(--color-accent) !important;
	font-size: 1.05rem !important;
	font-weight: 700;
}

.woocommerce div.product form.cart .button:hover {
	background: var(--color-secondary-dark) !important;
	border-color: var(--color-secondary-dark) !important;
}

.woocommerce div.product form.cart .quantity .qty {
	width: 70px;
	padding: 14px;
	border: 2px solid var(--color-border);
	border-radius: var(--radius-sm);
	font-size: 1rem;
	text-align: center;
}

/* "View cart" link after add to cart */
.woocommerce a.added_to_cart {
	background: var(--color-primary) !important;
	padding: 14px 40px !important;
	margin-left: 12px !important;
	color: #fff !important;
	font-size: 1rem !important;
	font-weight: 600;
	border-radius: var(--radius-xl);
	text-decoration: none;
	display: inline-block;
}

/* Product tabs styling */
.woocommerce div.product .woocommerce-tabs {
	position: relative;
	max-width: 900px;
	margin: 3.5rem auto 0;
	padding: 1.2rem 2rem 2.2rem;
	background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
	border: 1px solid rgba(0, 97, 176, 0.1);
	border-radius: 32px;
	box-shadow: 0 22px 44px rgba(0, 97, 176, 0.09);
	overflow: hidden;
}

.woocommerce div.product .woocommerce-tabs::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 6px;
	background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 100%);
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	width: fit-content;
	max-width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.35rem;
	margin: 0 0 2rem;
	margin-left: auto;
	margin-right: auto;
	background: rgba(0, 97, 176, 0.06);
	border: 1px solid rgba(0, 97, 176, 0.08);
	border-radius: 999px;
	border-bottom: none;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border: none;
	background: transparent;
	border-radius: 999px;
	margin: 0;
	padding: 0;
	box-shadow: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block;
	min-width: 138px;
	padding: 0.9rem 1.4rem;
	font-weight: 700;
	color: var(--color-text-light);
	font-family: var(--font-body);
	text-align: center;
	border-radius: 999px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background: linear-gradient(135deg, var(--color-primary) 0%, #3371c0 100%);
	box-shadow: 0 12px 24px rgba(0, 97, 176, 0.22);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: #fff;
}

.woocommerce div.product .woocommerce-tabs .panel {
	border: none;
	padding: 0;
	max-width: 760px;
	margin: 0 auto;
	box-shadow: none;
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
	font-family: var(--font-heading);
	font-size: 1.65rem;
	margin-bottom: 1.1rem;
	text-align: center;
	color: var(--color-accent);
}

.woocommerce div.product .woocommerce-Tabs-panel--description p {
	max-width: 680px;
	margin: 0 auto;
	padding: 1.45rem 1.7rem;
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
	border: 1px solid rgba(0, 97, 176, 0.09);
	border-radius: 22px;
	box-shadow: 0 18px 34px rgba(0, 97, 176, 0.06);
	line-height: 1.9;
	color: var(--color-text);
}

.woocommerce div.product .woocommerce-Tabs-panel--description strong {
	color: var(--color-accent);
}

.woocommerce div.product .woocommerce-Tabs-panel--reviews #reviews,
.woocommerce div.product .woocommerce-Tabs-panel--reviews #review_form_wrapper {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

.woocommerce div.product .woocommerce-Tabs-panel--reviews #comments,
.woocommerce div.product .woocommerce-Tabs-panel--reviews .woocommerce-noreviews {
	text-align: center;
}

.woocommerce div.product .woocommerce-Tabs-panel--reviews .woocommerce-Reviews-title {
	font-size: 1.6rem;
	color: var(--color-accent);
	margin-bottom: 0.85rem;
}

.woocommerce div.product .woocommerce-Tabs-panel--reviews .woocommerce-noreviews {
	max-width: 430px;
	margin-left: auto;
	margin-right: auto;
	padding: 1rem 1.2rem;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	border: 1px dashed rgba(0, 97, 176, 0.18);
	border-radius: 18px;
	box-shadow: none;
}

.woocommerce div.product .woocommerce-Tabs-panel--reviews #review_form_wrapper {
	margin-top: 1.75rem;
}

/* Hide related products for plan products */
section.related.products {
	display: none !important;
}

/* Product meta (category links) */
.woocommerce div.product .product_meta {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--color-border);
	font-size: 0.9rem;
	color: var(--color-text-light);
}

.woocommerce div.product .product_meta a {
	color: var(--color-primary);
	font-weight: 500;
}

/* Breadcrumb styling */
.woocommerce .woocommerce-breadcrumb {
	color: var(--color-text-light);
	font-size: 0.85rem;
	margin-bottom: 24px;
	padding: 12px 0;
}

.woocommerce .woocommerce-breadcrumb a {
	color: var(--color-primary);
	text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb a:hover {
	text-decoration: underline;
}

/* ── Reviews Section ── */
.woocommerce #reviews {
	max-width: 700px;
}

.woocommerce #reviews #comments h2,
.woocommerce #reviews h2 {
	font-family: var(--font-heading);
	font-size: 1.5rem;
	margin-bottom: 16px;
}

.woocommerce #reviews .woocommerce-noreviews {
	background: var(--color-bg-light);
	padding: 20px 24px;
	border-radius: var(--radius-sm);
	color: var(--color-text-light);
	border: 1px solid var(--color-border);
	font-size: 0.95rem;
}

/* Review form card */
.woocommerce #review_form_wrapper {
	margin-top: 30px;
}

.woocommerce #review_form #respond {
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	padding: 34px;
	border-radius: 24px;
	border: 1px solid rgba(0, 97, 176, 0.1);
	box-shadow: 0 20px 36px rgba(0, 97, 176, 0.08);
}

.woocommerce #review_form #respond .comment-reply-title {
	font-family: var(--font-heading);
	font-size: 1.35rem;
	color: var(--color-accent);
	margin-bottom: 8px;
	display: block;
	text-align: center;
}

.woocommerce #review_form #respond .comment-notes {
	font-size: 0.85rem;
	color: var(--color-text-light);
	margin-bottom: 20px;
	text-align: center;
}

/* Star rating selector */
.woocommerce #review_form #respond .comment-form-rating {
	max-width: 280px;
	margin: 0 auto 20px;
}

.woocommerce #review_form #respond .comment-form-rating label {
	display: block;
	font-weight: 600;
	margin-bottom: 8px;
	color: var(--color-accent);
	font-size: 0.9rem;
	text-align: center;
}

.woocommerce #review_form #respond .stars a {
	font-size: 1.5rem;
}

.woocommerce #review_form #respond .stars a:hover,
.woocommerce #review_form #respond .stars a.active {
	color: var(--color-secondary) !important;
}

/* Form fields */
.woocommerce #review_form #respond .comment-form-comment,
.woocommerce #review_form #respond .comment-form-author,
.woocommerce #review_form #respond .comment-form-email {
	margin-bottom: 16px;
}

.woocommerce #review_form #respond label {
	display: block;
	font-weight: 600;
	margin-bottom: 6px;
	color: var(--color-text);
	font-size: 0.9rem;
}

.woocommerce #review_form #respond textarea,
.woocommerce #review_form #respond input[type="text"],
.woocommerce #review_form #respond input[type="email"],
.woocommerce #review_form #respond select {
	width: 100%;
	padding: 12px 16px;
	border: 2px solid rgba(0, 97, 176, 0.12);
	border-radius: 14px;
	font-family: var(--font-body);
	font-size: 1rem;
	transition: border-color 0.3s ease;
	outline: none;
	background: #fff;
	box-sizing: border-box;
}

.woocommerce #review_form #respond textarea:focus,
.woocommerce #review_form #respond input[type="text"]:focus,
.woocommerce #review_form #respond input[type="email"]:focus,
.woocommerce #review_form #respond select:focus {
	border-color: var(--color-primary);
	box-shadow: 0 0 0 4px rgba(0, 97, 176, 0.08);
}

.woocommerce #review_form #respond textarea {
	min-height: 130px;
	resize: vertical;
}

/* Author + email side by side */
.woocommerce #review_form #respond .comment-form-author,
.woocommerce #review_form #respond .comment-form-email {
	display: inline-block;
	width: calc(50% - 10px);
	vertical-align: top;
}

.woocommerce #review_form #respond .comment-form-author {
	margin-right: 16px;
}

/* Cookies checkbox */
.woocommerce #review_form #respond .comment-form-cookies-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 20px;
	font-size: 0.85rem;
	color: var(--color-text-light);
	padding: 0.95rem 1rem;
	border-radius: 16px;
	background: rgba(0, 97, 176, 0.04);
}

.woocommerce #review_form #respond .comment-form-cookies-consent input[type="checkbox"] {
	width: 18px;
	height: 18px;
	accent-color: var(--color-primary);
	margin-top: 2px;
	flex-shrink: 0;
}

/* Submit button */
.woocommerce #review_form #respond .form-submit input[type="submit"] {
	background: var(--color-primary);
	color: #fff;
	border: 2px solid var(--color-primary);
	border-radius: var(--radius-xl);
	padding: 14px 40px;
	font-size: 1rem;
	font-weight: 600;
	font-family: var(--font-body);
	cursor: pointer;
	transition: all 0.3s ease;
}

.woocommerce #review_form #respond .form-submit {
	text-align: center;
}

.woocommerce #review_form #respond .form-submit input[type="submit"]:hover {
	background: var(--color-primary-dark);
	border-color: var(--color-primary-dark);
}

/* Existing reviews list */
.woocommerce #reviews .commentlist {
	list-style: none;
	padding: 0;
}

.woocommerce #reviews .commentlist li {
	background: #fff;
	padding: 24px;
	border-radius: var(--radius-md);
	border: 1px solid var(--color-border);
	margin-bottom: 16px;
}

.woocommerce #reviews .commentlist li .comment-text {
	margin: 0;
	padding: 0;
	border: none;
}

.woocommerce #reviews .commentlist li .meta {
	font-size: 0.85rem;
	color: var(--color-text-light);
	margin-bottom: 8px;
}

.woocommerce #reviews .commentlist li .meta strong {
	color: var(--color-accent);
}

.woocommerce #reviews .commentlist li .star-rating {
	margin-bottom: 8px;
}

.woocommerce #reviews .commentlist li .description p {
	color: var(--color-text);
	line-height: 1.7;
}

/* ── Notices / Alerts ── */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
	position: relative;
	padding: 1rem 1.25rem 1rem 3.35rem;
	margin: 0 0 1.5rem;
	border-radius: var(--radius-sm);
	font-family: var(--font-body);
	font-size: 0.9375rem;
	line-height: 1.6;
}

.woocommerce-message {
	background: #ecfdf5;
	border: 1px solid #6ee7b7;
	border-left: 4px solid var(--color-primary);
	color: #065f46;
}

.woocommerce-info {
	background: var(--color-primary-light);
	border: 1px solid #93c5fd;
	border-left: 4px solid var(--color-primary);
	color: #1e40af;
}

.woocommerce-error {
	background: #fef2f2;
	border: 1px solid #fca5a5;
	border-left: 4px solid var(--color-error);
	color: #991b1b;
	list-style: none;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
	position: absolute;
	left: 1rem;
	top: 1.08rem;
	margin-top: 0;
	font-size: 1rem;
	line-height: 1;
}

.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--color-primary);
}

.woocommerce-error::before {
	color: var(--color-error);
}

.woocommerce-notices-wrapper:empty {
	display: none;
}

.woocommerce-message a.button {
	background: var(--color-primary);
}

/* ── Cart Page ── */
.woocommerce-cart .woocommerce {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
	align-items: flex-start;
}

.woocommerce-cart .woocommerce-notices-wrapper,
.woocommerce-cart .wc-empty-cart-message,
.woocommerce-cart .return-to-shop {
	flex: 0 0 100%;
}

.woocommerce-cart .woocommerce-cart-form {
	flex: 1 1 0;
	min-width: 0;
}

.woocommerce-cart .woocommerce-cart-form {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 20px;
	padding: 1.75rem;
	box-shadow: var(--shadow-sm);
}

.woocommerce table.shop_table {
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	overflow: hidden;
	border-collapse: separate;
	border-spacing: 0;
}

.woocommerce table.shop_table thead {
	background: var(--color-accent);
}

.woocommerce table.shop_table thead th {
	font-family: var(--font-body);
	font-weight: 600;
	color: #fff;
	padding: 14px 16px;
	border: none;
}

.woocommerce table.shop_table td {
	padding: 14px 16px;
	border-top: 1px solid var(--color-border);
	vertical-align: middle;
}

.woocommerce table.shop_table img {
	width: 60px;
	height: 60px;
	object-fit: cover;
	border-radius: var(--radius-sm);
}

.woocommerce .cart-collaterals .cart_totals {
	float: none;
	width: 100%;
	max-width: 480px;
	margin-left: auto;
	background: var(--color-bg-light);
	padding: 24px;
	border-radius: var(--radius-md);
}

.woocommerce .cart-collaterals .cart_totals table {
	border-radius: var(--radius-md);
}

.woocommerce-cart table.shop_table {
	border: none;
	margin: 0;
	width: 100%;
	table-layout: fixed;
}

.woocommerce-cart table.shop_table thead {
	background: transparent;
}

.woocommerce-cart table.shop_table thead th {
	background: transparent;
	color: var(--color-text-light);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 0 0 1rem;
	border-bottom: 1px solid var(--color-border);
}

.woocommerce-cart table.shop_table td {
	padding: 1.2rem 0;
}

.woocommerce-cart th.product-remove,
.woocommerce-cart td.product-remove {
	width: 56px;
	padding-right: 1rem;
	text-align: center;
}

.woocommerce-cart th.product-thumbnail,
.woocommerce-cart td.product-thumbnail {
	width: 96px;
}

.woocommerce-cart th.product-price,
.woocommerce-cart td.product-price,
.woocommerce-cart th.product-quantity,
.woocommerce-cart td.product-quantity,
.woocommerce-cart th.product-subtotal,
.woocommerce-cart td.product-subtotal {
	width: 110px;
}

.woocommerce-cart td.product-remove,
.woocommerce-cart td.product-thumbnail,
.woocommerce-cart td.product-name,
.woocommerce-cart td.product-price,
.woocommerce-cart td.product-quantity,
.woocommerce-cart td.product-subtotal {
	vertical-align: middle;
}

.woocommerce-cart td.product-name a {
	color: var(--color-accent);
	font-weight: 700;
}

.woocommerce-cart td.product-thumbnail {
	padding-right: 1rem;
}

.woocommerce-cart td.product-thumbnail a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
	border: 1px solid rgba(0, 97, 176, 0.08);
	box-shadow: 0 8px 18px rgba(0, 97, 176, 0.08);
}

.woocommerce-cart td.product-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: inherit;
}

.woocommerce-cart td.product-name dl.variation {
	margin-top: 0.5rem;
	color: var(--color-text-light);
	font-size: 0.9rem;
}

.woocommerce-cart td.product-subtotal,
.woocommerce-cart td.product-price {
	font-weight: 700;
	color: var(--color-text);
	white-space: nowrap;
}

.woocommerce-cart td.product-quantity .quantity {
	display: flex;
	justify-content: flex-start;
}

.woocommerce-cart td.actions {
	padding: 1.4rem 0 0;
	text-align: left;
}

.woocommerce-cart td.actions > .coupon,
.woocommerce-cart td.actions > button,
.woocommerce-cart td.actions > input {
	margin-top: 0 !important;
}

.woocommerce-cart table.cart td.actions {
	display: block;
	border-top: 1px solid var(--color-border);
}

.woocommerce-cart .actions {
	border-top: 1px solid var(--color-border);
}

.woocommerce-cart .coupon {
	display: inline-grid;
	grid-template-columns: minmax(240px, 280px) auto;
	width: auto;
	max-width: 100%;
	gap: 0.75rem;
	align-items: center;
	min-width: 0;
	vertical-align: top;
}

.woocommerce-cart .coupon label {
	display: none;
}

.woocommerce-cart .coupon .input-text {
	float: none !important;
	width: 100% !important;
	min-width: 240px;
	margin: 0 !important;
	margin-right: 0;
}

.woocommerce-cart .coupon .button {
	min-width: 158px;
	white-space: nowrap;
}

.woocommerce-cart button[name="update_cart"] {
	float: none !important;
	display: block;
	clear: both;
	margin: 1rem 0 0 auto !important;
	min-width: 158px;
}

.woocommerce-cart button[name="update_cart"]:disabled,
.woocommerce-cart button[name="update_cart"][disabled] {
	display: none !important;
}

.woocommerce-cart .cart-collaterals {
	flex: 0 0 360px;
	display: block;
	margin-top: 0;
}

.woocommerce-cart .cart-collaterals .cart_totals {
	max-width: none;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 20px;
	padding: 1.5rem;
	box-shadow: var(--shadow-sm);
	position: sticky;
	top: 110px;
}

.woocommerce-cart .cart_totals h2 {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--color-text);
	margin-bottom: 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--color-primary);
}

.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
	padding: 0.85rem 0;
}

.woocommerce-cart .wc-proceed-to-checkout {
	margin-top: 1.25rem;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	width: 100%;
	padding: 1rem 1.25rem;
	font-size: 1.02rem;
}

.woocommerce-cart .cart-empty,
.woocommerce-cart .return-to-shop {
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}

.woocommerce-cart .wc-empty-cart-message {
	max-width: 560px;
	margin: 0 auto;
}

.woocommerce-cart .cart-empty {
	position: relative;
	margin-bottom: 1rem;
	padding: 1.5rem 1.5rem 1.25rem;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	border: 1px solid rgba(0, 97, 176, 0.14);
	border-radius: 24px;
	box-shadow: 0 18px 36px rgba(0, 97, 176, 0.08);
	color: var(--color-text);
	text-align: center;
	font-size: 1.02rem;
	font-weight: 600;
}

.woocommerce-cart .cart-empty::before {
	content: "";
	position: static;
	display: block;
	width: 60px;
	height: 60px;
	margin: 0 auto 1rem;
	border-radius: 18px;
	background:
		radial-gradient(circle at 28% 28%, #ffffff 0%, #ffffff 18%, transparent 19%),
		linear-gradient(135deg, #ffffff 0%, var(--color-primary-light) 100%);
	border: 1px solid rgba(0, 97, 176, 0.12);
	box-shadow: 0 12px 22px rgba(0, 97, 176, 0.08);
}

.woocommerce-cart .cart-empty::after {
	content: "";
	position: absolute;
	top: 1.18rem;
	left: 50%;
	width: 20px;
	height: 24px;
	margin-left: -10px;
	border: 3px solid var(--color-primary);
	border-top: none;
	border-radius: 0 0 9px 9px;
}

.woocommerce-cart .return-to-shop {
	text-align: center;
}

.woocommerce-cart .return-to-shop .button {
	min-width: 220px;
	padding: 0.95rem 1.6rem;
	border-radius: 999px;
}

.woocommerce-cart .ilb-empty-cart-followup {
	max-width: 700px;
	margin: 1.5rem auto 0;
	padding: 1.4rem 1.5rem;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 20px;
	box-shadow: var(--shadow-sm);
	text-align: center;
}

.woocommerce-cart .ilb-empty-cart-followup h3 {
	margin-bottom: 0.5rem;
	font-size: 1.2rem;
	color: var(--color-text);
}

.woocommerce-cart .ilb-empty-cart-followup p {
	margin: 0 auto 1rem;
	max-width: 560px;
	color: var(--color-text-light);
}

.woocommerce-cart .ilb-empty-cart-followup__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.85rem;
}

/* Quantity input */
.woocommerce .quantity .qty {
	width: 60px;
	padding: 0.5rem;
	border: 2px solid var(--color-border);
	border-radius: var(--radius-sm);
	font-size: 0.9375rem;
	text-align: center;
	font-family: var(--font-body);
	transition: border-color var(--transition);
}

.woocommerce .quantity .qty:focus {
	border-color: var(--color-primary);
	outline: none;
}

/* Remove link */
.woocommerce a.remove {
	color: var(--color-error) !important;
	font-size: 1.25rem;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	transition: background var(--transition);
}

.woocommerce a.remove:hover {
	background: #fef2f2;
	color: #dc2626 !important;
}

.woocommerce-cart td.product-remove .remove {
	position: relative;
	width: 36px;
	height: 36px;
	margin: 0 auto;
	border-radius: 12px;
	border: 1px solid rgba(220, 38, 38, 0.12);
	background: linear-gradient(180deg, #fff7f7 0%, #fff1f1 100%);
	box-shadow: 0 8px 18px rgba(220, 38, 38, 0.08);
	color: transparent !important;
	font-size: 0;
	line-height: 0;
}

.woocommerce-cart td.product-remove .remove::before {
	content: "";
	display: block;
	width: 18px;
	height: 18px;
	margin: 0 auto;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dc2626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 10v6'/%3E%3Cpath d='M14 10v6'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 18px 18px;
}

.woocommerce-cart td.product-remove .remove:hover {
	background: linear-gradient(180deg, #fff1f1 0%, #ffe5e5 100%);
	border-color: rgba(220, 38, 38, 0.2);
	color: transparent !important;
	transform: translateY(-1px);
}

/* Coupon field */
.woocommerce .coupon .input-text {
	padding: 10px 14px;
	border: 2px solid var(--color-border);
	border-radius: var(--radius-sm);
	font-size: 0.9375rem;
	font-family: var(--font-body);
	margin-right: 0.5rem;
	transition: border-color var(--transition);
}

.woocommerce .coupon .input-text:focus {
	border-color: var(--color-primary);
	outline: none;
}

/* ── Checkout Page ── */

/* Checkout container — center and constrain width */
.woocommerce-checkout .woocommerce,
.woocommerce-cart .woocommerce {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 1.5rem;
}

.woocommerce-account .woocommerce {
	max-width: 1260px;
	margin: 0 auto;
	padding: 0 1.5rem;
}

.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-account .entry-content {
	max-width: none;
	line-height: 1.6;
}

.woocommerce-cart .entry-content > .woocommerce,
.woocommerce-checkout .entry-content > .woocommerce,
.woocommerce-account .entry-content > .woocommerce {
	width: 100%;
}

/* Account page shell */
.woocommerce-account #customer_login {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2rem;
	align-items: stretch;
	max-width: 1080px;
	margin: 0 auto;
}

.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2,
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-ResetPassword,
.woocommerce-account .lost_reset_password {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 18px;
	box-shadow: var(--shadow-sm);
}

.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2,
.woocommerce-account .woocommerce-ResetPassword,
.woocommerce-account .lost_reset_password {
	padding: 2rem;
}

.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2 {
	flex: 1 1 420px;
	width: 100% !important;
	max-width: 500px;
	min-width: 0;
	margin: 0 !important;
	float: none !important;
	display: flex;
	flex-direction: column;
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.woocommerce-account .woocommerce-notices-wrapper {
	max-width: 1080px;
	margin: 0 auto 1.25rem;
}

.woocommerce-account #customer_login h2,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .addresses h3,
.woocommerce-account .woocommerce-Address-title h3 {
	font-size: 1.45rem;
	font-weight: 700;
	color: var(--color-text);
	margin-bottom: 1.4rem;
	padding-bottom: 0.9rem;
	border-bottom: 2px solid var(--color-primary);
}

.woocommerce-account #customer_login .woocommerce-form,
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account .woocommerce-address-fields,
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.woocommerce-account .woocommerce-form-row,
.woocommerce-account .form-row {
	display: flex !important;
	flex-direction: column !important;
	grid-template-columns: none !important;
	gap: 0.55rem;
	width: 100% !important;
	margin: 0 0 1rem !important;
	padding: 0 !important;
	float: none !important;
	clear: none !important;
}

.woocommerce-account label,
.woocommerce-account .woocommerce-form label {
	display: block;
	font-weight: 600;
	color: var(--color-text);
	margin-bottom: 0.5rem;
}

.woocommerce-account .password-input {
	display: block;
	width: 100%;
	position: relative;
}

.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="tel"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="number"],
.woocommerce-account select,
.woocommerce-account textarea {
	width: 100%;
	max-width: 100%;
	padding: 12px 16px;
	border: 2px solid var(--color-border);
	border-radius: 10px;
	font-size: 1rem;
	font-family: var(--font-body);
	background: #fff;
}

.woocommerce-account .password-input .input-text {
	padding-right: 3rem !important;
}

.woocommerce-account input[type="text"]:focus,
.woocommerce-account input[type="email"]:focus,
.woocommerce-account input[type="tel"]:focus,
.woocommerce-account input[type="password"]:focus,
.woocommerce-account input[type="number"]:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
	outline: none;
	border-color: var(--color-primary);
	box-shadow: 0 0 0 3px rgba(0, 97, 176, 0.15);
}

.woocommerce-account .show-password-input {
	position: absolute;
	top: 50%;
	right: 14px;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	color: var(--color-text-light);
}

.woocommerce-account .show-password-input::after {
	line-height: 1;
}

.woocommerce-account .woocommerce-form-login__rememberme,
.woocommerce-account .woocommerce-form__label-for-checkbox {
	display: flex !important;
	align-items: flex-start;
	gap: 0.75rem;
	padding: 0.85rem 1rem;
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: 12px;
	margin-bottom: 0;
}

.woocommerce-account .woocommerce-form-login__rememberme input,
.woocommerce-account .woocommerce-form__label-for-checkbox input {
	width: 18px;
	height: 18px;
	margin: 0;
}

.woocommerce-account .woocommerce-form-login .form-row:last-child {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 0.9rem !important;
	align-items: stretch;
	margin-top: 0.25rem !important;
}

.woocommerce-account .woocommerce-form-register .form-row:last-child {
	display: block !important;
	margin-top: 0.25rem !important;
}

.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register__submit {
	width: 100%;
	min-height: 52px;
	justify-content: center;
	font-size: 1rem;
	font-weight: 700;
	border-radius: 999px;
}

.woocommerce-account .lost_password,
.woocommerce-account .woocommerce-LostPassword {
	margin-top: 0.25rem;
	font-size: 0.9rem;
}

.woocommerce-account .woocommerce-privacy-policy-text {
	margin: 0.25rem 0 1rem;
	padding: 1rem 1.1rem;
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: 14px;
	font-size: 0.9rem;
	color: var(--color-text-light);
}

.woocommerce-account.logged-in .woocommerce {
	display: block;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	padding: 1.25rem;
	position: sticky;
	top: 110px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 0.5rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: block;
	padding: 0.85rem 1rem;
	border-radius: 12px;
	color: var(--color-text);
	font-weight: 600;
	background: transparent;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
	background: var(--color-primary-light);
	color: var(--color-primary);
}

.woocommerce-account .woocommerce-MyAccount-content {
	padding: 1.75rem;
	min-width: 0;
}

.woocommerce-account .woocommerce-MyAccount-content p:first-child {
	font-size: 1rem;
	color: var(--color-text);
}

/* Branded account dashboard */
.woocommerce-account .ilb-account-shell {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	align-items: start;
	width: 100%;
	min-width: 0;
}

.woocommerce-account .ilb-account-aside {
	position: static;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 1rem;
	min-width: 0;
	width: 100%;
}

.woocommerce-account .ilb-account-profile-card,
.woocommerce-account .ilb-account-support-card,
.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation,
.woocommerce-account .ilb-account-main {
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
	border: 1px solid var(--color-border);
	border-radius: 24px;
	box-shadow: var(--shadow-sm);
}

.woocommerce-account .ilb-account-profile-card,
.woocommerce-account .ilb-account-support-card,
.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation {
	padding: 1.25rem;
}

.woocommerce-account .ilb-account-profile-card {
	flex: 0 0 320px;
	max-width: 100%;
}

.woocommerce-account .ilb-account-main {
	padding: 1.5rem;
	display: grid;
	gap: 1.5rem;
	min-width: 0;
	width: 100%;
}

.woocommerce-account .ilb-account-main > .woocommerce-MyAccount-content {
	padding: 0;
	min-width: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	display: grid;
	gap: 1.5rem;
}

.woocommerce-account .ilb-account-header {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	padding: 1.6rem;
	border: 1px solid rgba(0, 97, 176, 0.1);
	border-radius: 22px;
	background:
		radial-gradient(circle at top right, rgba(255, 211, 62, 0.14) 0, rgba(255, 211, 62, 0) 40%),
		linear-gradient(180deg, #f9fcff 0%, #f4f9ff 100%);
}

.woocommerce-account .ilb-account-header__copy {
	display: grid;
	gap: 0.55rem;
	max-width: 680px;
}

.woocommerce-account .ilb-account-header__copy h2 {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: clamp(1.8rem, 2.7vw, 2.55rem);
	line-height: 1.05;
}

.woocommerce-account .ilb-account-header__copy p {
	margin: 0;
	color: var(--color-text-light);
	font-size: 1rem;
	line-height: 1.7;
}

.woocommerce-account .ilb-account-header__eyebrow,
.woocommerce-account .ilb-account-section-label,
.woocommerce-account .ilb-account-profile__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--color-primary);
}

.woocommerce-account .ilb-account-header__meta {
	display: grid;
	justify-items: start;
	gap: 0.9rem;
	min-width: 0;
}

.woocommerce-account .ilb-account-header__badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 0.55rem;
}

.woocommerce-account .ilb-account-badge {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 0.45rem 0.85rem;
	border-radius: 999px;
	background: #fff;
	border: 1px solid rgba(0, 97, 176, 0.12);
	color: var(--color-text);
	font-size: 0.86rem;
	font-weight: 700;
}

.woocommerce-account .ilb-account-header__actions,
.woocommerce-account .ilb-account-panel__actions,
.woocommerce-account .ilb-account-support-card__actions,
.woocommerce-account .ilb-account-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.woocommerce-account .ilb-account-header__button,
.woocommerce-account .ilb-account-panel .button,
.woocommerce-account .ilb-account-support-card .button,
.woocommerce-account .ilb-account-hero__actions .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0.82rem 1.15rem;
	border-radius: 999px;
	background: var(--color-primary);
	border: 1px solid var(--color-primary);
	color: #fff;
	font-size: 0.95rem;
	font-weight: 700;
	text-decoration: none;
	box-shadow: none;
}

.woocommerce-account .ilb-account-header__button:hover,
.woocommerce-account .ilb-account-panel .button:hover,
.woocommerce-account .ilb-account-support-card .button:hover,
.woocommerce-account .ilb-account-hero__actions .button:hover {
	background: var(--color-primary-dark);
	border-color: var(--color-primary-dark);
	color: #fff;
}

.woocommerce-account .ilb-account-header__button--secondary,
.woocommerce-account .ilb-account-panel .button--secondary,
.woocommerce-account .ilb-account-support-card .button--secondary,
.woocommerce-account .ilb-account-hero__actions .button--secondary {
	background: #fff;
	border-color: rgba(0, 97, 176, 0.18);
	color: var(--color-primary);
}

.woocommerce-account .ilb-account-header__button--secondary:hover,
.woocommerce-account .ilb-account-panel .button--secondary:hover,
.woocommerce-account .ilb-account-support-card .button--secondary:hover,
.woocommerce-account .ilb-account-hero__actions .button--secondary:hover {
	background: var(--color-primary-light);
	border-color: rgba(0, 97, 176, 0.16);
	color: var(--color-primary);
}

.woocommerce-account .ilb-account-profile {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.woocommerce-account .ilb-account-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 20px;
	background: linear-gradient(135deg, var(--color-primary) 0%, #49aef4 100%);
	color: #fff;
	font-size: 1.15rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	box-shadow: 0 16px 35px rgba(0, 97, 176, 0.18);
}

.woocommerce-account .ilb-account-profile__copy {
	display: grid;
	gap: 0.2rem;
	min-width: 0;
}

.woocommerce-account .ilb-account-profile__copy strong {
	font-size: 1.1rem;
	color: var(--color-text);
}

.woocommerce-account .ilb-account-profile__copy a {
	color: var(--color-text-light);
	font-size: 0.92rem;
	text-decoration: none;
	word-break: break-word;
}

.woocommerce-account .ilb-account-profile__stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
	margin-top: 1rem;
}

.woocommerce-account .ilb-account-stat {
	padding: 0.9rem 0.95rem;
	border-radius: 18px;
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
}

.woocommerce-account .ilb-account-stat span {
	display: block;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--color-text-light);
	margin-bottom: 0.45rem;
}

.woocommerce-account .ilb-account-stat strong {
	display: block;
	font-size: 1rem;
	line-height: 1.3;
}

.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation {
	flex: 1 0 100%;
	width: 100%;
	position: static;
	top: auto;
}

.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation ul {
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 0.75rem;
}

.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation a {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.75rem;
	min-height: 64px;
	padding: 0.8rem 0.95rem;
	border: 1px solid transparent;
	border-radius: 16px;
	font-weight: 700;
	font-size: 0.95rem;
}

.woocommerce-account .ilb-account-nav__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	flex: 0 0 2.5rem;
	border-radius: 14px;
	background: #fff;
	color: var(--color-primary);
	border: 1px solid rgba(0, 97, 176, 0.12);
}

.woocommerce-account .ilb-account-nav__icon svg {
	width: 18px;
	height: 18px;
}

.woocommerce-account .ilb-account-nav__label {
	display: block;
	line-height: 1.2;
}

.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation a:hover {
	background: rgba(73, 174, 244, 0.12);
	border-color: rgba(73, 174, 244, 0.26);
	color: var(--color-primary);
}

.woocommerce-account .ilb-account-support-card {
	flex: 1 1 420px;
	display: grid;
	gap: 0.85rem;
	align-content: center;
}

.woocommerce-account .ilb-account-support-card h3 {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 1.15rem;
}

.woocommerce-account .ilb-account-support-card p {
	margin: 0;
	font-size: 0.94rem;
	line-height: 1.65;
	color: var(--color-text-light);
}

.woocommerce-account .ilb-account-overview {
	display: grid;
	gap: 1.5rem;
}

.woocommerce-account .ilb-account-hero,
.woocommerce-account .ilb-account-note,
.woocommerce-account .ilb-account-panel {
	padding: 1.45rem;
	border-radius: 22px;
	border: 1px solid var(--color-border);
	background: #fff;
}

.woocommerce-account .ilb-account-hero {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem 1.5rem;
	align-items: center;
	background:
		radial-gradient(circle at top right, rgba(255, 211, 62, 0.16) 0, rgba(255, 211, 62, 0) 38%),
		linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
}

.woocommerce-account .ilb-account-hero__copy {
	display: grid;
	gap: 0.55rem;
}

.woocommerce-account .ilb-account-hero__copy h3,
.woocommerce-account .ilb-account-panel__header h3,
.woocommerce-account .ilb-account-note h3 {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 1.55rem;
	line-height: 1.15;
}

.woocommerce-account .ilb-account-hero__copy p,
.woocommerce-account .ilb-account-panel__header p,
.woocommerce-account .ilb-account-note p {
	margin: 0;
	color: var(--color-text-light);
	line-height: 1.7;
}

.woocommerce-account .ilb-account-kpis {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.woocommerce-account .ilb-account-kpi {
	padding: 1.25rem;
	border-radius: 20px;
	border: 1px solid var(--color-border);
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.woocommerce-account .ilb-account-kpi span {
	display: block;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--color-text-light);
	margin-bottom: 0.65rem;
}

.woocommerce-account .ilb-account-kpi strong {
	display: block;
	font-size: 1.15rem;
	line-height: 1.25;
	margin-bottom: 0.45rem;
	color: var(--color-text);
}

.woocommerce-account .ilb-account-kpi p {
	margin: 0;
	font-size: 0.94rem;
	line-height: 1.55;
	color: var(--color-text-light);
}

.woocommerce-account .ilb-account-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

.woocommerce-account .ilb-account-panel {
	display: grid;
	gap: 1.1rem;
}

.woocommerce-account .ilb-account-panel__header {
	display: grid;
	gap: 0.45rem;
}

.woocommerce-account .ilb-account-order-summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.9rem;
	padding: 1rem;
	border-radius: 18px;
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
}

.woocommerce-account .ilb-account-order-summary strong {
	display: block;
	font-size: 1rem;
	margin-bottom: 0.35rem;
}

.woocommerce-account .ilb-account-order-summary p {
	margin: 0;
	color: var(--color-text-light);
	font-size: 0.93rem;
}

.woocommerce-account .ilb-account-action-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.9rem;
}

.woocommerce-account .ilb-account-action-tile {
	display: grid;
	gap: 0.35rem;
	padding: 1rem;
	border-radius: 18px;
	border: 1px solid var(--color-border);
	background: #fff;
	text-decoration: none;
	transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-account .ilb-account-action-tile:hover {
	transform: translateY(-2px);
	border-color: rgba(0, 97, 176, 0.18);
	box-shadow: 0 12px 30px rgba(0, 97, 176, 0.08);
}

.woocommerce-account .ilb-account-action-tile strong {
	color: var(--color-text);
	font-size: 1rem;
}

.woocommerce-account .ilb-account-action-tile span {
	color: var(--color-text-light);
	font-size: 0.92rem;
	line-height: 1.55;
}

.woocommerce-account .ilb-account-note {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem 1.5rem;
	align-items: center;
	background:
		radial-gradient(circle at top left, rgba(73, 174, 244, 0.12) 0, rgba(73, 174, 244, 0) 35%),
		#fff;
}

.woocommerce-account .ilb-account-main .woocommerce-MyAccount-content > * {
	margin-top: 0;
}

.woocommerce-account .ilb-account-main > .woocommerce-MyAccount-content > p {
	margin: 0 0 1rem;
	color: var(--color-text-light);
	line-height: 1.7;
}

.woocommerce-account .ilb-account-main .woocommerce-notices-wrapper {
	margin: 0;
}

.woocommerce-account .ilb-account-main .woocommerce-orders-table,
.woocommerce-account .ilb-account-main .woocommerce-table--order-details,
.woocommerce-account .ilb-account-main .woocommerce-table--order-downloads {
	margin-top: 0;
}

.woocommerce-account .ilb-account-main .woocommerce-orders-table th,
.woocommerce-account .ilb-account-main .woocommerce-orders-table td,
.woocommerce-account .ilb-account-main .woocommerce-table--order-details th,
.woocommerce-account .ilb-account-main .woocommerce-table--order-details td {
	padding: 1rem 1.1rem;
}

.woocommerce-account .ilb-account-main .woocommerce-orders-table .button,
.woocommerce-account .ilb-account-main .woocommerce-Address a,
.woocommerce-account .ilb-account-main .edit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	padding: 0.72rem 1rem;
	font-weight: 700;
}

.woocommerce-account .ilb-account-main .woocommerce-Address-title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	margin-bottom: 0.9rem;
}

.woocommerce-account .ilb-account-main .woocommerce-Address-title h2,
.woocommerce-account .ilb-account-main .woocommerce-Address-title h3 {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
	font-size: 1.2rem;
	line-height: 1.15;
}

.woocommerce-account .ilb-account-main .woocommerce-Address-title .edit {
	white-space: nowrap;
}

.woocommerce-account .ilb-account-main fieldset {
	margin: 0.5rem 0 0;
	padding: 1.2rem;
	border: 1px solid var(--color-border);
	border-radius: 18px;
	background: var(--color-bg-light);
}

.woocommerce-account .ilb-account-main legend {
	padding: 0 0.35rem;
	font-size: 0.88rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--color-primary);
}

.woocommerce-account .ilb-account-main #account_display_name_description {
	color: var(--color-text-light);
	font-size: 0.86rem;
	line-height: 1.55;
}

.woocommerce-account .ilb-account-main .woocommerce-address-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 1rem;
}

.woocommerce-account .ilb-account-main .woocommerce-address-fields .form-row-wide,
.woocommerce-account .ilb-account-main .woocommerce-address-fields .form-row-first + .form-row-last,
.woocommerce-account .ilb-account-main .woocommerce-address-fields .form-row.address-field {
	grid-column: auto;
}

.woocommerce-account .ilb-account-main .woocommerce-address-fields .form-row-wide,
.woocommerce-account .ilb-account-main .woocommerce-address-fields .address-field-wide,
.woocommerce-account .ilb-account-main .woocommerce-address-fields #billing_address_1_field,
.woocommerce-account .ilb-account-main .woocommerce-address-fields #billing_address_2_field,
.woocommerce-account .ilb-account-main .woocommerce-address-fields #shipping_address_1_field,
.woocommerce-account .ilb-account-main .woocommerce-address-fields #shipping_address_2_field,
.woocommerce-account .ilb-account-main .woocommerce-address-fields #order_comments_field {
	grid-column: 1 / -1;
}

.woocommerce-account .ilb-account-main .woocommerce-message,
.woocommerce-account .ilb-account-main .woocommerce-info,
.woocommerce-account .ilb-account-main .woocommerce-error {
	margin: 0;
}

@media (max-width: 1240px) {
	.woocommerce-account .ilb-account-aside {
		display: grid;
		grid-template-columns: 1fr;
	}

	.woocommerce-account .ilb-account-header__meta {
		justify-items: start;
		width: 100%;
	}

	.woocommerce-account .ilb-account-header__badges {
		justify-content: flex-start;
	}

	.woocommerce-account .ilb-account-panel__actions,
	.woocommerce-account .ilb-account-support-card__actions,
	.woocommerce-account .ilb-account-hero__actions,
	.woocommerce-account .ilb-account-header__actions {
		width: 100%;
	}

	.woocommerce-account .ilb-account-action-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce-account .ilb-account-address-grid {
		grid-template-columns: 1fr;
	}
}

.woocommerce-account .ilb-account-surface {
	padding: 1.45rem;
	border-radius: 22px;
	border: 1px solid var(--color-border);
	background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
	box-shadow: var(--shadow-sm);
}

.woocommerce-account .ilb-account-surface__intro {
	margin: 0 0 1.35rem;
	color: var(--color-text-light);
	line-height: 1.7;
}

.woocommerce-account .ilb-account-address-book {
	display: grid;
	gap: 1.35rem;
}

.woocommerce-account .ilb-account-address-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.35rem;
	align-items: stretch;
}

.woocommerce-account .ilb-account-address-grid--single {
	grid-template-columns: minmax(0, 1fr);
}

.woocommerce-account .ilb-account-address-card {
	display: grid;
	gap: 1.15rem;
	padding: 1.35rem;
	border-radius: 20px;
	border: 1px solid var(--color-border);
	background: #fff;
	min-width: 0;
	box-shadow: var(--shadow-sm);
}

.woocommerce-account .ilb-account-address-card__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas:
		"title"
		"actions";
	align-items: start;
	gap: 0.9rem;
}

.woocommerce-account .ilb-account-address-card__title-group {
	grid-area: title;
	display: grid;
	gap: 0.45rem;
	min-width: 0;
}

.woocommerce-account .ilb-account-address-card__title-group h3 {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 1.25rem;
	line-height: 1.15;
}

.woocommerce-account .ilb-account-address-card__actions {
	grid-area: actions;
	display: grid;
	grid-template-columns: 1fr;
	justify-items: start;
	gap: 0.7rem;
}

.woocommerce-account .ilb-account-address-card__status {
	justify-self: start;
	max-width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0.38rem 0.78rem;
	border-radius: 999px;
	background: rgba(73, 174, 244, 0.12);
	border: 1px solid rgba(73, 174, 244, 0.18);
	color: var(--color-primary);
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.woocommerce-account .ilb-account-address-card__status.is-empty {
	background: rgba(255, 211, 62, 0.18);
	border-color: rgba(255, 211, 62, 0.4);
	color: #8f6600;
}

.woocommerce-account .ilb-account-address-card__action {
	white-space: nowrap;
	min-width: 0;
	width: 100%;
	padding-inline: 1rem;
	font-size: 0.94rem;
}

.woocommerce-account .ilb-account-address-card__body {
	padding: 1rem 1.05rem;
	border-radius: 18px;
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	min-height: 168px;
	display: flex;
	align-items: flex-start;
}

.woocommerce-account .ilb-account-address-card__body address {
	margin: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	font-style: normal;
	color: var(--color-text);
	line-height: 1.8;
	width: 100%;
}

.woocommerce-account .ilb-account-address-card__body address p {
	margin: 0;
}

.woocommerce-account .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem;
	margin-top: 1rem;
	align-items: stretch;
	width: 100%;
}

.woocommerce-account .woocommerce-Addresses .u-column1,
.woocommerce-account .woocommerce-Addresses .u-column2,
.woocommerce-account .woocommerce-Addresses .col-1,
.woocommerce-account .woocommerce-Addresses .col-2 {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	min-width: 0;
	justify-self: stretch;
}

.woocommerce-account .woocommerce-Address {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 20px;
	padding: 1.35rem;
	box-shadow: var(--shadow-sm);
	width: 100%;
	min-width: 0;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.woocommerce-account .woocommerce-Address address {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	font-style: normal;
	color: var(--color-text);
	line-height: 1.75;
	min-height: 3.5rem;
}

.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .woocommerce-table--order-downloads {
	margin-top: 1rem;
}

.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .woocommerce-table--order-details,
.woocommerce-account .woocommerce-table--order-downloads,
.woocommerce-order .woocommerce-table--order-details {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--color-border);
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
}

.woocommerce-account .woocommerce-orders-table th,
.woocommerce-account .woocommerce-orders-table td,
.woocommerce-account .woocommerce-table--order-details th,
.woocommerce-account .woocommerce-table--order-details td,
.woocommerce-account .woocommerce-table--order-downloads th,
.woocommerce-account .woocommerce-table--order-downloads td,
.woocommerce-order .woocommerce-table--order-details th,
.woocommerce-order .woocommerce-table--order-details td {
	padding: 0.95rem 1rem;
	border-bottom: 1px solid var(--color-border);
	text-align: left;
	vertical-align: top;
}

.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table thead th,
.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-table--order-details thead th,
.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-table--order-downloads thead th,
.woocommerce-order table.woocommerce-table--order-details thead th {
	background: var(--color-primary-light);
	color: var(--color-primary);
	font-size: 0.88rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table thead th .nobr,
.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-table--order-details thead th .nobr,
.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-table--order-downloads thead th .nobr,
.woocommerce-order table.woocommerce-table--order-details thead th .nobr {
	color: inherit;
}

.woocommerce-account .woocommerce-orders-table tbody tr:last-child td,
.woocommerce-account .woocommerce-table--order-details tbody tr:last-child td,
.woocommerce-account .woocommerce-table--order-downloads tbody tr:last-child td,
.woocommerce-account .woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-account .woocommerce-table--order-details tfoot tr:last-child td,
.woocommerce-order .woocommerce-table--order-details tbody tr:last-child td,
.woocommerce-order .woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-order .woocommerce-table--order-details tfoot tr:last-child td {
	border-bottom: none;
}

.woocommerce-account .woocommerce-orders-table .button,
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-order .button {
	border-radius: 999px;
	padding: 0.72rem 1.1rem;
	font-weight: 700;
}

.woocommerce-order {
	display: grid;
	gap: 1.5rem;
}

.woocommerce-order .woocommerce-thankyou-order-received,
.woocommerce-order .woocommerce-notice--success.woocommerce-thankyou-order-received {
	margin: 0;
	padding: 1.15rem 1.25rem;
	background: linear-gradient(180deg, #eef9f0 0%, #f8fffa 100%);
	border: 1px solid rgba(76, 175, 80, 0.2);
	border-left: 4px solid var(--color-success);
	border-radius: 14px;
	color: #19692c;
	font-size: 1rem;
	font-weight: 600;
}

.woocommerce-order .woocommerce-order-overview {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
	padding: 1.25rem;
	margin: 0;
	list-style: none;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 16px;
	box-shadow: var(--shadow-sm);
}

.woocommerce-order .woocommerce-order-overview li {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 0.25rem 0;
	font-size: 0.86rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--color-text-light);
}

.woocommerce-order .woocommerce-order-overview strong {
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: normal;
	text-transform: none;
	color: var(--color-text);
}

.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-customer-details {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 16px;
	padding: 1.5rem;
	box-shadow: var(--shadow-sm);
}

.woocommerce-order .woocommerce-order-details__title,
.woocommerce-order .woocommerce-column__title,
.woocommerce-order .woocommerce-customer-details h2 {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--color-text);
	margin-bottom: 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--color-primary);
}

.woocommerce-order .woocommerce-customer-details address {
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: 14px;
	padding: 1.15rem;
	margin-top: 1rem;
	font-style: normal;
	line-height: 1.7;
}

.woocommerce-order .affiliate-thankyou-box {
	margin: 0;
}

.woocommerce-order .ilb-thankyou-next-steps {
	padding: 1.5rem;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 16px;
	box-shadow: var(--shadow-sm);
}

.woocommerce-order .ilb-thankyou-next-steps h3 {
	margin-bottom: 0.5rem;
	color: var(--color-text);
}

.woocommerce-order .ilb-thankyou-next-steps p {
	margin-bottom: 1rem;
	color: var(--color-text-light);
	max-width: 60ch;
}

.woocommerce-order .ilb-thankyou-next-steps__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

/* Checkout layout */
.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) minmax(360px, 1fr);
	gap: 2.5rem;
	align-items: start;
}

.woocommerce-checkout #customer_details {
	grid-column: 1;
	grid-row: 1;
	display: flex !important;
	flex-direction: column;
	gap: 1.5rem;
	margin: 0;
	min-width: 0;
}

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
	float: none !important;
	width: 100% !important;
	min-width: 0;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 16px;
	padding: 1.5rem;
	box-shadow: var(--shadow-sm);
}

.woocommerce-checkout .ilb-checkout-sidebar {
	grid-column: 2;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	min-width: 0;
	align-self: start;
	position: sticky;
	top: 120px;
}

.woocommerce-checkout #order_review_heading {
	margin: 0;
}

.woocommerce-checkout #order_review {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 16px;
	padding: 1.5rem;
	box-shadow: var(--shadow-sm);
	align-self: start;
	min-width: 0;
}

/* Page title */
.woocommerce-checkout .entry-title,
.woocommerce-cart .entry-title,
.woocommerce-checkout h1,
.woocommerce-cart h1 {
	color: #333 !important;
	font-size: 1.75rem !important;
	font-weight: 700 !important;
	margin-bottom: 1.5rem;
	text-align: left !important;
}

/* Section headings */
.woocommerce-checkout h3,
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading {
	font-size: 1.25rem !important;
	font-weight: 700 !important;
	color: #333 !important;
	margin-bottom: 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--color-primary);
	text-align: left !important;
}

/* Field wrappers */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem 1.25rem !important;
	align-items: start;
}

.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
	display: block !important;
}

/* Form rows */
.woocommerce form .form-row,
.woocommerce-page form .form-row,
.woocommerce form.checkout .form-row {
	margin-bottom: 0 !important;
	padding: 0 !important;
	float: none !important;
	text-align: left !important;
	clear: none !important;
	width: auto !important;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper > .form-row,
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper > .form-row {
	display: flex;
	flex-direction: column;
	align-self: stretch;
	min-width: 0;
}

.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last,
.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
	width: auto !important;
}

.woocommerce-checkout .form-row-wide,
.woocommerce form .form-row-wide {
	width: 100% !important;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-wide,
.woocommerce-checkout #order_comments_field {
	grid-column: 1 / -1;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > [id^="billing_"]:not(#billing_first_name_field):not(#billing_last_name_field),
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper > [id^="shipping_"]:not(#shipping_first_name_field):not(#shipping_last_name_field) {
	grid-column: 1 / -1;
}

.woocommerce form .form-row .woocommerce-input-wrapper,
.woocommerce-checkout .woocommerce-input-wrapper {
	display: block !important;
	width: 100% !important;
	min-width: 0;
}

/* Labels — FORCE dark text, left aligned */
.woocommerce form .form-row label,
.woocommerce form.checkout .form-row label,
.woocommerce-checkout label,
.woocommerce-checkout .woocommerce-form-login label,
.woocommerce-checkout .woocommerce-form-coupon label {
	font-family: var(--font-body) !important;
	font-weight: 600 !important;
	font-size: 0.875rem !important;
	color: #333 !important;
	margin-bottom: 6px !important;
	display: block !important;
	text-align: left !important;
	line-height: 1.4 !important;
}

/* Required asterisk */
.woocommerce form .form-row .required {
	color: #f44336 !important;
}

/* Inputs — FORCE full width and proper sizing */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce .woocommerce-input-wrapper input.input-text,
.woocommerce .woocommerce-input-wrapper select,
.woocommerce .woocommerce-input-wrapper textarea {
	width: 100% !important;
	max-width: 100% !important;
	padding: 12px 16px !important;
	border: 2px solid #e0e0e0 !important;
	border-radius: 8px !important;
	font-family: var(--font-body) !important;
	font-size: 1rem !important;
	color: #333 !important;
	background: #fff !important;
	transition: border-color 0.2s, box-shadow 0.2s;
	box-sizing: border-box !important;
	height: auto !important;
	min-height: 48px;
}

.woocommerce-checkout #order_comments_field textarea {
	min-height: 120px;
	resize: vertical;
}

.woocommerce-checkout #billing_address_2_field label.screen-reader-text,
.woocommerce-checkout #shipping_address_2_field label.screen-reader-text {
	clip: auto !important;
	clip-path: none !important;
	height: auto !important;
	width: auto !important;
	overflow: visible !important;
	position: static !important;
	margin: 0 0 6px !important;
}

.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus {
	outline: none;
	border-color: var(--color-primary);
	box-shadow: 0 0 0 3px rgba(0, 97, 176, 0.15);
}

.woocommerce form .form-row.woocommerce-validated .input-text {
	border-color: var(--color-success);
}

.woocommerce form .form-row.woocommerce-invalid .input-text {
	border-color: var(--color-error);
}

/* Select2 overrides (WooCommerce uses Select2 for dropdowns) */
.woocommerce-checkout .select2-container .select2-selection--single {
	height: 48px;
	border: 2px solid var(--color-border);
	border-radius: 8px;
	padding: 10px 16px;
}

.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
	line-height: 24px;
	color: var(--color-text);
	padding-left: 0;
}

.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
	height: 46px;
	right: 8px;
}

.woocommerce-checkout .select2-container--focus .select2-selection--single {
	border-color: var(--color-primary);
	box-shadow: 0 0 0 3px rgba(0, 97, 176, 0.15);
}

/* Coupon bar */
.woocommerce-checkout .woocommerce-info {
	background: var(--color-bg-light);
	border: none;
	border-left: 4px solid var(--color-primary);
	color: var(--color-text);
	padding: 1rem 1.25rem;
	border-radius: 0 8px 8px 0;
	margin-bottom: 1.5rem;
	font-size: 0.95rem;
}

.woocommerce-checkout .woocommerce-info a {
	color: var(--color-primary);
	font-weight: 600;
}

.woocommerce-checkout .woocommerce-info::before {
	color: var(--color-primary);
}

/* Coupon form (expanded) */
.woocommerce-checkout .checkout_coupon {
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: 8px;
	padding: 1.25rem;
	margin-bottom: 1.5rem;
}

/* Payment section */
.woocommerce-checkout #payment {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 12px;
	padding: 24px;
	margin-top: 1rem;
}

.woocommerce-checkout #payment div.payment_box {
	background: #fff;
	border-radius: 8px;
	padding: 1rem;
	font-size: 0.9rem;
	color: var(--color-text-light);
}

.woocommerce-checkout #payment ul.payment_methods {
	list-style: none;
	padding: 0;
	margin: 0 0 1.5rem;
	border-bottom: 1px solid var(--color-border);
}

.woocommerce-checkout #payment ul.payment_methods li {
	padding: 1rem 0;
	border-top: 1px solid var(--color-border);
}

.woocommerce-checkout #payment ul.payment_methods li:first-child {
	border-top: none;
}

.woocommerce-checkout #payment ul.payment_methods li label {
	color: var(--color-text);
	font-weight: 600;
	cursor: pointer;
}

.woocommerce-checkout #payment .woocommerce-info {
	background: #f8fbff;
	border: 1px solid rgba(0, 97, 176, 0.16);
	border-left: 4px solid var(--color-primary);
	border-radius: 10px;
	color: var(--color-text);
	position: relative;
	padding: 1rem 1rem 1rem 2.85rem;
	margin: 0;
	line-height: 1.7;
	font-size: 0.95rem;
}

.woocommerce-checkout #payment .woocommerce-info::before {
	left: 1rem;
	top: 1rem;
}

.woocommerce-checkout #payment .place-order {
	padding-top: 1.25rem;
	margin-top: 1rem !important;
	border-top: 1px solid var(--color-border);
}

/* Credit card fields */
.woocommerce-checkout #payment .form-row-first,
.woocommerce-checkout #payment .form-row-last {
	width: 48%;
}

.woocommerce-checkout #payment .place-order {
	padding-top: 1.5rem;
}

/* Place order button */
.woocommerce-checkout #place_order {
	width: 100%;
	background: var(--color-secondary);
	color: var(--color-text);
	font-family: var(--font-heading);
	font-size: 1.125rem;
	font-weight: 700;
	padding: 16px 32px;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background 0.2s, transform 0.2s;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.woocommerce-checkout #place_order:hover {
	background: var(--color-secondary-dark);
	transform: translateY(-1px);
}

/* Order review table */
.woocommerce-checkout-review-order-table {
	margin-bottom: 1.5rem;
	width: 100%;
	border-collapse: collapse;
}

.woocommerce-checkout-review-order-table th {
	font-weight: 700;
	color: var(--color-text);
	padding: 0.75rem 0;
	text-align: left;
	border-bottom: 2px solid var(--color-border);
}

.woocommerce-checkout-review-order-table td {
	padding: 0.75rem 0;
	border-bottom: 1px solid var(--color-border);
	color: var(--color-text);
}

.woocommerce-checkout-review-order-table .order-total td {
	font-weight: 700;
	font-size: 1.125rem;
	color: var(--color-text);
}

.woocommerce-checkout-review-order-table .fee td,
.woocommerce-checkout-review-order-table .tax-rate td {
	font-size: 0.9rem;
}

/* Warehouse club discount */
.ilb-club-discount {
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	border: 1px solid rgba(0, 97, 176, 0.1);
	border-radius: 16px;
	padding: 1.15rem 1.2rem;
	margin-top: 1rem;
	box-shadow: 0 12px 24px rgba(0, 97, 176, 0.06);
}

.ilb-club-discount h3 {
	margin: 0 0 0.35rem;
	font-size: 1.05rem;
	color: var(--color-accent);
}

.ilb-club-discount p {
	margin: 0 0 1rem;
	font-size: 0.92rem;
	color: var(--color-text-light);
}

.ilb-club-discount .form-row {
	margin-bottom: 0.9rem;
}

.ilb-club-discount .form-row:last-child {
	margin-bottom: 0;
}

.ilb-club-discount label {
	display: block;
	margin-bottom: 0.4rem;
	font-weight: 700;
	color: var(--color-text);
}

.ilb-club-discount select,
.ilb-club-discount input[type="text"] {
	width: 100%;
	min-height: 52px;
	padding: 0.9rem 1rem;
	border: 1px solid rgba(0, 97, 176, 0.14);
	border-radius: 14px;
	background: #fff;
	color: var(--color-text);
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.03);
}

.ilb-club-discount select:focus,
.ilb-club-discount input[type="text"]:focus {
	border-color: rgba(0, 97, 176, 0.3);
	outline: none;
	box-shadow: 0 0 0 3px rgba(0, 97, 176, 0.08);
}

/* Affiliate opt-in checkbox */
.affiliate-checkout-optin {
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	border: 1px solid rgba(0, 97, 176, 0.1);
	border-radius: 16px;
	padding: 1.15rem 1.2rem;
	margin-top: 1rem;
	box-shadow: 0 12px 24px rgba(0, 97, 176, 0.06);
}

.affiliate-checkout-optin .form-row {
	margin: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	min-height: 128px;
}

.affiliate-checkout-optin label,
.affiliate-checkout-optin label.checkbox {
	color: var(--color-text) !important;
	font-weight: 600 !important;
	font-size: 1rem !important;
	display: grid !important;
	grid-template-columns: 18px minmax(0, 1fr);
	width: min(100%, 460px);
	align-items: flex-start;
	column-gap: 0.8rem;
	row-gap: 0.2rem;
	cursor: pointer;
	line-height: 1.55;
	margin: 0 auto;
	padding: 1rem 1.1rem;
	background: #fff;
	border: 1px solid rgba(0, 97, 176, 0.08);
	border-radius: 14px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.affiliate-checkout-optin input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	margin: 0.18rem 0 0 !important;
	grid-column: 1;
	accent-color: var(--color-primary);
}

.affiliate-checkout-optin .woocommerce-input-wrapper,
.affiliate-checkout-optin .checkbox {
	width: 100%;
}

.affiliate-checkout-optin .optional {
	display: block;
	grid-column: 2;
	margin: 0;
	color: var(--color-text-light);
	font-weight: 400;
}

/* Privacy / terms text */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin-top: 1rem;
	margin-bottom: 1rem;
	padding-top: 1rem;
	border-top: 1px solid var(--color-border);
	font-size: 0.9rem;
	color: var(--color-text-light);
}

.woocommerce-checkout #payment .form-row,
.woocommerce-checkout #payment .place-order,
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
.woocommerce-checkout #payment .terms,
.woocommerce-checkout #payment .wc-terms-and-conditions {
	display: block !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	max-width: none !important;
	text-align: left !important;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row {
	margin-top: 0.9rem !important;
	margin-bottom: 0 !important;
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox {
	display: grid !important;
	grid-template-columns: 18px minmax(0, 1fr);
	align-items: flex-start;
	column-gap: 0.8rem;
	row-gap: 0.2rem;
	line-height: 1.55;
	width: 100%;
	padding: 0.9rem 1rem;
	background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
	border: 1px solid rgba(0, 97, 176, 0.1);
	border-radius: 14px;
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text {
	display: block;
	grid-column: 2;
	min-width: 0;
	font-weight: 600;
	color: var(--color-text);
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox .input-checkbox {
	grid-column: 1;
	width: 18px !important;
	height: 18px !important;
	margin: 0.18rem 0 0 !important;
	accent-color: var(--color-primary);
}

.woocommerce-checkout .woocommerce-privacy-policy-text {
	margin: 0;
	padding: 0;
	font-size: 0.92rem;
	line-height: 1.7;
	color: var(--color-text-light);
	width: 100%;
}

.woocommerce-checkout .woocommerce-privacy-policy-text p {
	margin: 0;
}

.woocommerce-checkout .woocommerce-privacy-policy-text a,
.woocommerce-checkout .woocommerce-form__label-for-checkbox a {
	font-weight: 600;
}

.woocommerce-checkout #payment #place_order {
	float: none !important;
	display: block;
	width: 100% !important;
}

/* ── Mini-Cart Widget ── */
.woocommerce .widget_shopping_cart .cart_list,
.woocommerce.widget_shopping_cart .cart_list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.woocommerce .widget_shopping_cart .cart_list li,
.woocommerce.widget_shopping_cart .cart_list li {
	padding: 0.75rem 0;
	border-bottom: 1px solid var(--color-border);
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.woocommerce .widget_shopping_cart .cart_list li:last-child,
.woocommerce.widget_shopping_cart .cart_list li:last-child {
	border-bottom: none;
}

.woocommerce .widget_shopping_cart .cart_list li img,
.woocommerce.widget_shopping_cart .cart_list li img {
	width: 48px;
	height: 48px;
	object-fit: cover;
	border-radius: var(--radius-sm);
	flex-shrink: 0;
}

.woocommerce .widget_shopping_cart .cart_list li a.remove {
	order: -1;
	flex-shrink: 0;
}

.woocommerce .widget_shopping_cart .total,
.woocommerce.widget_shopping_cart .total {
	font-family: var(--font-body);
	font-weight: 700;
	font-size: 1rem;
	padding: 0.75rem 0;
	border-top: 2px solid var(--color-accent);
	margin-top: 0.5rem;
}

.woocommerce .widget_shopping_cart .total .amount,
.woocommerce.widget_shopping_cart .total .amount {
	color: var(--color-primary);
}

.woocommerce .widget_shopping_cart .buttons,
.woocommerce.widget_shopping_cart .buttons {
	display: flex;
	gap: 0.5rem;
	margin-top: 1rem;
}

.woocommerce .widget_shopping_cart .buttons a,
.woocommerce.widget_shopping_cart .buttons a {
	flex: 1;
	text-align: center;
	padding: 0.625rem 1rem;
	font-size: 0.8125rem;
}

/* ── Breadcrumbs ── */
.woocommerce .woocommerce-breadcrumb {
	font-family: var(--font-body);
	font-size: 0.85rem;
	color: var(--color-text-light);
	padding: 1rem 0;
	margin-bottom: 1rem;
}

.woocommerce .woocommerce-breadcrumb a {
	color: var(--color-primary);
	text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb a:hover {
	text-decoration: underline;
}

/* ── Sale Badge ── */
.woocommerce span.onsale {
	background: var(--color-secondary);
	color: var(--color-accent);
	font-family: var(--font-body);
	font-weight: 700;
	font-size: 0.75rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	border-radius: var(--radius-sm);
	padding: 0.25rem 0.75rem;
	min-width: auto;
	min-height: auto;
	line-height: 1.6;
}

/* ── Star Rating ── */
.woocommerce .star-rating span::before {
	color: var(--color-secondary);
}

/* ── Pagination ── */
.woocommerce nav.woocommerce-pagination ul {
	border: none;
	display: flex;
	justify-content: center;
	gap: 0.375rem;
	margin-top: 2rem;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: none;
	overflow: visible;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span.current {
	padding: 0.5rem 0.875rem;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	font-size: 0.875rem;
	color: var(--color-accent);
	text-decoration: none;
	transition: all var(--transition);
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
	border-color: var(--color-primary);
	color: var(--color-primary);
}

.woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--color-primary);
	border-color: var(--color-primary);
	color: #fff;
}

/* ── Responsive ── */
@media (max-width: 1024px) {
	.woocommerce ul.products,
	.woocommerce ul.products.columns-3,
	.woocommerce ul.products.columns-4 {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 980px) {
	.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
	}

	.woocommerce-checkout #customer_details,
	.woocommerce-checkout .ilb-checkout-sidebar {
		grid-column: auto;
		grid-row: auto;
	}

	.woocommerce-checkout .ilb-checkout-sidebar {
		position: static;
	}

	.woocommerce-account #customer_login,
	.woocommerce-account.logged-in .woocommerce,
	.woocommerce-account .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		position: static;
	}

	.woocommerce-account .ilb-account-shell,
	.woocommerce-account .ilb-account-kpis,
	.woocommerce-account .ilb-account-grid,
	.woocommerce-account .ilb-account-note,
	.woocommerce-account .ilb-account-hero {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .ilb-account-aside {
		position: static;
	}

	.woocommerce-account .ilb-account-header {
		flex-direction: column;
	}

	.woocommerce-account .ilb-account-header__meta {
		width: 100%;
		justify-items: start;
	}

	.woocommerce-account .ilb-account-header__badges {
		justify-content: flex-start;
	}
}

@media (max-width: 768px) {
	.woocommerce ul.products,
	.woocommerce ul.products.columns-3,
	.woocommerce ul.products.columns-4 {
		grid-template-columns: 1fr !important;
	}

	.woocommerce div.product div.images,
	.woocommerce div.product div.summary {
		float: none;
		width: 100%;
	}

	.woocommerce div.product div.summary {
		margin-top: 1.35rem;
	}

	.woocommerce div.product .product_title {
		font-size: 1.5rem;
	}

	.woocommerce div.product form.cart {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0.85rem;
	}

	.woocommerce div.product form.cart .quantity {
		margin: 0 !important;
	}

	.woocommerce div.product form.cart .button {
		width: 100%;
	}

	.woocommerce div.product .woocommerce-tabs {
		padding: 1rem 1rem 1.4rem;
		border-radius: 22px;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs {
		width: 100%;
		gap: 0.5rem;
		margin-bottom: 1.5rem;
		border-radius: 24px;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li {
		flex: 1 1 100%;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li a {
		width: 100%;
		min-width: 0;
		text-align: center;
	}

	.woocommerce div.product .woocommerce-Tabs-panel--description p {
		padding: 1.2rem 1.1rem;
		border-radius: 18px;
	}

	.woocommerce #review_form #respond {
		padding: 1.25rem;
		border-radius: 20px;
	}

	.woocommerce #review_form #respond .comment-form-author,
	.woocommerce #review_form #respond .comment-form-email {
		display: block;
		width: 100%;
		margin-right: 0;
	}

	.woocommerce table.shop_table {
		display: block;
	}

	.woocommerce table.shop_table thead {
		display: none;
	}

	.woocommerce table.shop_table tbody,
	.woocommerce table.shop_table tr,
	.woocommerce table.shop_table td {
		display: block;
		width: 100%;
	}

	.woocommerce table.shop_table tr {
		border-bottom: 1px solid var(--color-border);
		padding: 1rem 0;
	}

	.woocommerce table.shop_table td {
		border: none;
		padding: 0.375rem 1rem;
		text-align: left;
	}

	.woocommerce table.shop_table td::before {
		content: attr(data-title) ": ";
		font-weight: 600;
		display: inline;
	}

	.woocommerce .cart-collaterals .cart_totals {
		max-width: none;
	}

	.woocommerce-cart .woocommerce-cart-form {
		padding: 1.25rem;
	}

	.woocommerce-cart table.shop_table tbody {
		display: grid;
		gap: 1rem;
	}

	.woocommerce-cart table.shop_table tr {
		position: relative;
		margin: 0;
		padding: 1rem;
		border: 1px solid var(--color-border);
		border-radius: 20px;
		background: #fff;
		box-shadow: var(--shadow-sm);
	}

	.woocommerce-cart td.product-remove,
	.woocommerce-cart td.product-thumbnail,
	.woocommerce-cart td.product-name {
		padding-top: 0;
	}

	.woocommerce-cart td.product-remove::before,
	.woocommerce-cart td.product-thumbnail::before,
	.woocommerce-cart td.product-name::before {
		display: none;
	}

	.woocommerce-cart td.product-remove {
		position: absolute;
		top: 0.9rem;
		right: 0.9rem;
		width: auto;
		padding: 0;
		text-align: right;
	}

	.woocommerce-cart td.product-thumbnail a {
		width: 84px;
		height: 84px;
	}

	.woocommerce-cart td.product-name {
		padding-right: 3.25rem;
	}

	.woocommerce-cart td.product-name a {
		font-size: 1.05rem;
	}

	.woocommerce-cart td.product-price,
	.woocommerce-cart td.product-quantity,
	.woocommerce-cart td.product-subtotal {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
	}

	.woocommerce-cart td.product-price::before,
	.woocommerce-cart td.product-quantity::before,
	.woocommerce-cart td.product-subtotal::before {
		font-size: 0.8rem;
		font-weight: 800;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: var(--color-text-light);
	}

	.woocommerce-cart td.product-quantity .quantity {
		justify-content: flex-end;
	}

	.woocommerce-cart .coupon .input-text {
		min-width: 0;
	}

	.woocommerce-cart .actions {
		border-top: 1px solid var(--color-border);
	}

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

	.woocommerce-cart .coupon {
		display: grid;
		grid-template-columns: 1fr;
	}

	.woocommerce-cart button[name="update_cart"] {
		margin: 0.9rem 0 0 !important;
	}

	.woocommerce-cart .woocommerce {
		display: block;
	}

	.woocommerce-cart .cart-collaterals {
		flex: 0 0 auto;
		margin-top: 1.75rem;
	}

	.woocommerce-cart .cart-collaterals .cart_totals {
		position: static;
	}

	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr;
	}

	.woocommerce-checkout form.checkout {
		gap: 1rem;
	}

	.woocommerce-checkout #payment .form-row-first,
	.woocommerce-checkout #payment .form-row-last {
		width: 100% !important;
	}

	.woocommerce-checkout .woocommerce,
	.woocommerce-cart .woocommerce,
	.woocommerce-account .woocommerce {
		padding: 0 1rem;
	}

	.woocommerce-account #customer_login .u-column1,
	.woocommerce-account #customer_login .u-column2,
	.woocommerce-account .woocommerce-MyAccount-content,
	.woocommerce-account .woocommerce-MyAccount-navigation {
		padding: 1.25rem;
	}

	.woocommerce-account .ilb-account-aside {
		display: grid;
		grid-template-columns: 1fr;
	}

	.woocommerce-account .ilb-account-profile {
		align-items: flex-start;
	}

	.woocommerce-account .ilb-account-profile-card,
	.woocommerce-account .ilb-account-support-card {
		flex: 1 1 auto;
		width: 100%;
	}

	.woocommerce-account .ilb-account-profile__stats,
	.woocommerce-account .ilb-account-action-grid,
	.woocommerce-account .ilb-account-kpis,
	.woocommerce-account .ilb-account-order-summary,
	.woocommerce-account .ilb-account-main .woocommerce-address-fields__field-wrapper,
	.woocommerce-account .ilb-account-address-grid {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation ul {
		display: flex;
		grid-template-columns: none;
		gap: 0.75rem;
		overflow-x: auto;
		padding-bottom: 0.25rem;
		scroll-snap-type: x proximity;
	}

	.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation li {
		flex: 0 0 180px;
		scroll-snap-align: start;
	}

	.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation a {
		min-height: 58px;
	}

	.woocommerce-account .ilb-account-main,
	.woocommerce-account .ilb-account-profile-card,
	.woocommerce-account .ilb-account-support-card,
	.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation {
		padding: 1.1rem;
	}

	.woocommerce-account .ilb-account-address-card__header {
		gap: 0.8rem;
	}

	.woocommerce-account .ilb-account-address-card__actions {
		width: 100%;
	}

	.woocommerce-account .ilb-account-address-card__status,
	.woocommerce-account .ilb-account-address-card__action {
		justify-self: start;
	}

	.woocommerce-account .ilb-account-header {
		padding: 1.2rem;
	}

	.woocommerce-account .ilb-account-header__actions,
	.woocommerce-account .ilb-account-hero__actions,
	.woocommerce-account .ilb-account-support-card__actions,
	.woocommerce-account .ilb-account-panel__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.woocommerce-account .ilb-account-header__button,
	.woocommerce-account .ilb-account-panel .button,
	.woocommerce-account .ilb-account-support-card .button,
	.woocommerce-account .ilb-account-hero__actions .button,
	.woocommerce-account .ilb-account-address-card__action {
		width: 100%;
	}

	.woocommerce-account .ilb-account-hero,
	.woocommerce-account .ilb-account-note,
	.woocommerce-account .ilb-account-panel,
	.woocommerce-account .ilb-account-kpi {
		padding: 1.1rem;
	}

	.woocommerce-account .ilb-account-address-card__body {
		min-height: auto;
	}

	.woocommerce-order .woocommerce-order-overview {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 540px) {
	.woocommerce-checkout .woocommerce,
	.woocommerce-cart .woocommerce,
	.woocommerce-account .woocommerce {
		padding: 0 0.75rem;
	}

	.woocommerce-account .ilb-account-header__copy h2 {
		font-size: 2rem;
	}

	.woocommerce-account .ilb-account-aside .woocommerce-MyAccount-navigation li {
		flex-basis: 155px;
	}

	.woocommerce-order .woocommerce-order-overview {
		grid-template-columns: 1fr;
	}
}
