/* Maxxed — Cart, Checkout (WooCommerce Blocks) and My Account (classic
   WooCommerce templates) pages. These three page types render through
   WooCommerce's own markup (block components / classic account templates)
   rather than theme templates, so — unlike the rest of the site — they're
   styled entirely by overriding WooCommerce's default classes instead of
   custom PHP markup. Class names are taken directly from the installed
   WooCommerce Blocks package (assets/client/blocks/cart.css,checkout.css)
   and the classic myaccount/*.php templates, not guessed. !important is
   used deliberately on brand-critical rules (colors, fonts, button styling)
   since load order relative to WooCommerce's own block stylesheet isn't
   guaranteed. */

/* ---------------------------------------------------------------------
   Cart/Checkout only render through the generic page.php template, whose
   inline padding-top:160px exists to clear the fixed header on ordinary
   content pages — on these two it just leaves a big empty gap above the
   page title, so bring it back down.
   --------------------------------------------------------------------- */

.woocommerce-cart .section1,
.woocommerce-checkout .section1 {
	padding-top: 40px !important;
}

/* ---------------------------------------------------------------------
   Shared base — bigger, theme-matching type everywhere on these pages.
   --------------------------------------------------------------------- */

.wc-block-cart,
.wc-block-checkout,
.woocommerce-MyAccount-content,
.woocommerce-account .u-columns {
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif !important;
	font-size: 16px !important;
	color: #000;
}

.wc-block-cart *,
.wc-block-checkout * {
	font-family: inherit;
}

/* Page title above the block ("Cart" / "Checkout" / "My account") — same
   treatment as every other page's heading. */
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title,
.woocommerce-account .entry-title,
.page-id-10 h1.entry-title,
.page-id-11 h1.entry-title,
.page-id-12 h1.entry-title {
	font-family: var(--maxxed-heading-font, 'Bebas Neue') !important;
	font-size: 48px !important;
	line-height: 1 !important;
	text-transform: uppercase;
}

/* ---------------------------------------------------------------------
   Cart & Checkout — section headings ("Order summary", "Contact
   information", "Shipping address", etc.)
   --------------------------------------------------------------------- */

.wc-block-cart__totals-title,
.wc-block-components-checkout-order-summary__title-text,
.wc-block-components-checkout-step__title,
.wc-block-cart__empty-cart__title,
.wc-block-checkout-empty__title,
.wc-block-checkout-error__title {
	font-family: var(--maxxed-heading-font, 'Bebas Neue') !important;
	font-size: 28px !important;
	line-height: 1.1 !important;
	letter-spacing: 0.3px;
	color: #000 !important;
	text-transform: uppercase;
}

.wc-block-components-checkout-step__description {
	font-size: 15px !important;
	color: #6b6b6b;
}

/* ---------------------------------------------------------------------
   Line items (cart page rows + checkout order-summary rows)
   --------------------------------------------------------------------- */

.wc-block-cart-items__header,
.wc-block-cart-items__row {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

.wc-block-components-product-name,
.wc-block-components-product-name--static {
	font-family: var(--maxxed-heading-font, 'Bebas Neue') !important;
	font-size: 20px !important;
	line-height: 1.2 !important;
	letter-spacing: 0.3px;
	color: #000 !important;
	text-transform: uppercase;
}

.wc-block-components-product-metadata,
.wc-block-components-product-metadata__variation-data,
.wc-block-components-product-metadata__description {
	font-size: 15px !important;
	color: #000;
}

.wc-block-components-product-price,
.wc-block-components-product-price__value,
.wc-block-components-formatted-money-amount,
.wc-block-components-order-summary-item__total-price {
	font-size: 17px !important;
	font-weight: 700 !important;
	color: #000 !important;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif !important;
}

.wc-block-components-product-price del .wc-block-components-formatted-money-amount,
.wc-block-components-order-summary-item__total-price del {
	font-weight: 400 !important;
	color: #9a9a9a !important;
	text-decoration: line-through;
}

/* "Save $X" chip on discounted order-summary items. */
.wc-block-components-product-badge,
.wc-block-components-discounts-meta {
	font-size: 13px !important;
	font-weight: 700;
	background: #f2f2f2 !important;
	color: #000 !important;
	border-radius: 4px;
}

/* Product thumbnail — same bordered-box look as the mini-cart drawer. The
   border/radius goes on the <img> itself, not the wrapper: WooCommerce
   positions its item-quantity badge (the "2" / "24" circle) absolutely,
   deliberately overflowing the wrapper's top-right corner — overflow:hidden
   on the wrapper clips that badge down to a stray sliver. */
.wc-block-components-product-image img,
.wc-block-cart-item__image img,
.wc-block-components-order-summary-item__image img {
	border: 1px solid #d9d9d9 !important;
	border-radius: 8px !important;
}

/* Quantity selector — same bordered stepper look used sitewide. */
.wc-block-components-quantity-selector {
	border: 1px solid #d9d9d9 !important;
	border-radius: 0 !important;
	height: 40px !important;
}

.wc-block-components-quantity-selector__button,
.wc-block-components-quantity-selector__input {
	font-size: 16px !important;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif !important;
	color: #000 !important;
}

.wc-block-components-quantity-selector__button {
	background: #f2f2f2 !important;
}

.wc-block-cart-item__remove-link {
	font-size: 14px !important;
	color: #000 !important;
	text-decoration: underline;
}

.wc-block-cart-item__remove-link:hover {
	color: #c0392b !important;
}

/* ---------------------------------------------------------------------
   Coupon panel
   --------------------------------------------------------------------- */

.wc-block-components-panel .wc-block-components-panel__button {
	font-size: 16px !important;
	font-weight: 700;
	color: #000 !important;
}

.wc-block-components-totals-coupon__input input,
.wc-block-components-text-input input,
.wc-block-components-address-form input[type="text"],
.wc-block-components-address-form input[type="email"],
.wc-block-components-address-form input[type="tel"],
.wc-block-components-select-input,
select.wc-block-components-select-input {
	font-size: 16px !important;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif !important;
	border-color: #d6d6d6 !important;
	border-radius: 0 !important;
	color: #000 !important;
}

.wc-block-components-totals-coupon__button {
	background: #000 !important;
	color: #fff !important;
	border-radius: 5px !important;
	font-size: 14px !important;
	font-weight: 700;
	text-transform: uppercase;
}

/* ---------------------------------------------------------------------
   Totals ("Subtotal", "Total", shipping/tax rows)
   --------------------------------------------------------------------- */

.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,
.wc-block-components-totals-item__description {
	font-size: 17px !important;
	color: #000 !important;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-family: var(--maxxed-heading-font, 'Bebas Neue') !important;
	font-size: 26px !important;
	font-weight: 400 !important;
	text-transform: uppercase;
}

/* ---------------------------------------------------------------------
   Buttons — same gold/black button used everywhere else on the site.
   --------------------------------------------------------------------- */

.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	background: var(--maxxed-brand, #e1b04a) !important;
	color: #000 !important;
	border: none !important;
	border-radius: 5px !important;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	height: 58px !important;
	line-height: 58px !important;
	padding: 0 24px !important;
	box-shadow: 0 10px 30px 0 rgba(237, 172, 58, 0.6) !important;
}

.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
	background: #d19f3f !important;
	color: #000 !important;
}

.wc-block-components-checkout-return-to-cart-button {
	font-size: 15px !important;
	color: #000 !important;
	text-decoration: underline;
}

/* ---------------------------------------------------------------------
   My Account (classic templates)
   --------------------------------------------------------------------- */

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
	font-family: var(--maxxed-heading-font, 'Bebas Neue') !important;
	font-size: 30px !important;
	line-height: 1.1 !important;
	text-transform: uppercase;
	margin: 0 0 16px;
}

.woocommerce-MyAccount-content p,
.woocommerce-MyAccount-content li,
.woocommerce-MyAccount-content td,
.woocommerce-MyAccount-content th {
	font-size: 16px !important;
	line-height: 1.5;
}

/* Account nav — vertical tab list, gold/black on the active item. */
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid #ececec;
	border-radius: 8px;
	overflow: hidden;
}

.woocommerce-MyAccount-navigation-link {
	border-bottom: 1px solid #ececec;
}

.woocommerce-MyAccount-navigation-link:last-child {
	border-bottom: none;
}

.woocommerce-MyAccount-navigation-link a {
	display: block;
	padding: 14px 20px;
	font-size: 15px !important;
	font-weight: 700;
	letter-spacing: 0.3px;
	text-transform: uppercase;
	color: #000 !important;
	text-decoration: none;
	transition: background .15s ease, color .15s ease;
}

.woocommerce-MyAccount-navigation-link a:hover {
	background: #f7f6f4;
}

.woocommerce-MyAccount-navigation-link.is-active a {
	background: var(--maxxed-brand, #e1b04a);
	color: #000 !important;
}

/* Login / Register forms. */
.woocommerce-form-login .woocommerce-Input,
.woocommerce-form-register .woocommerce-Input,
.woocommerce-EditAccountForm .woocommerce-Input,
.woocommerce-address-fields .woocommerce-Input,
.woocommerce-form-row select {
	width: 100%;
	height: 52px;
	padding: 0 16px;
	border: 1px solid #d6d6d6;
	border-radius: 0;
	background: #fff;
	font-size: 16px !important;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif;
	color: #000;
	outline: none;
	-webkit-appearance: none;
}

.woocommerce-form-row textarea.woocommerce-Input {
	height: auto;
	padding: 14px 16px;
}

.woocommerce-form-row label {
	display: block;
	margin-bottom: 6px;
	font-size: 14px !important;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.3px;
	color: #000;
}

.woocommerce-button.button,
.woocommerce-Button.button,
.woocommerce-form-login__submit,
.woocommerce-form-register__submit {
	display: inline-block !important;
	background: var(--maxxed-brand, #e1b04a) !important;
	color: #000 !important;
	border: none !important;
	border-radius: 5px !important;
	font-family: var(--maxxed-body-font, 'Arial'), sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	height: 52px;
	line-height: 52px !important;
	padding: 0 28px !important;
	cursor: pointer;
	box-shadow: 0 8px 20px 0 rgba(237, 172, 58, 0.5) !important;
}

.woocommerce-button.button:hover,
.woocommerce-Button.button:hover {
	background: #d19f3f !important;
}

/* Orders table. */
.woocommerce-orders-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px !important;
}

.woocommerce-orders-table__header {
	text-align: left;
	padding: 12px 10px;
	font-size: 13px !important;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.3px;
	border-bottom: 2px solid #000;
}

.woocommerce-orders-table__cell {
	padding: 14px 10px;
	border-bottom: 1px solid #ececec;
	font-size: 15px !important;
}

.woocommerce-orders-table__cell-order-actions .woocommerce-button,
.woocommerce-orders-table__cell-order-actions .button {
	height: 38px;
	line-height: 38px !important;
	padding: 0 16px !important;
	font-size: 12px !important;
	margin: 3px 4px 3px 0;
}

/* ---------------------------------------------------------------------
   Mobile
   --------------------------------------------------------------------- */

@media only screen and (max-width: 767px) {
	.wc-block-cart,
	.wc-block-checkout,
	.woocommerce-MyAccount-content {
		font-size: 15px !important;
	}

	.wc-block-cart__totals-title,
	.wc-block-components-checkout-order-summary__title-text,
	.wc-block-components-checkout-step__title {
		font-size: 24px !important;
	}

	.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
	.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
		font-size: 22px !important;
	}

	.woocommerce-orders-table,
	.woocommerce-orders-table__cell,
	.woocommerce-orders-table__header {
		font-size: 13px !important;
	}
}
