/* EVP Ice Dogs - Main Stylesheet */

/* Reset / Base */
:root {
	--brand-black: #0A0A0F;
	--brand-red: #E30613;
	--brand-blue: #0A1628;
	--brand-ice: #7DD3FC;
	--brand-white: #F8FAFC;
	--brand-charcoal: #1A1A22;
	--brand-gray: #94A3B8;
}

html, body {
	background: var(--brand-black);
	color: var(--brand-white);
	font-family: 'Inter', system-ui, -apple-system, sans-serif;
	scroll-behavior: smooth;
}

* { box-sizing: border-box; }

a { color: inherit; text-decoration: none; }

img { max-width: 100%; height: auto; display: block; }

/* Animations */
@keyframes evp-pulse-red {
	0%, 100% { box-shadow: 0 0 0 0 rgba(227, 6, 19, 0.6); }
	50%      { box-shadow: 0 0 0 12px rgba(227, 6, 19, 0); }
}

.evp-pulse { animation: evp-pulse-red 2s infinite; }

/* WooCommerce Overrides */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	background: var(--brand-charcoal) !important;
	border-left: 4px solid var(--brand-red) !important;
	color: var(--brand-white) !important;
	padding: 1rem 1.5rem !important;
	margin-bottom: 1.5rem !important;
	border-radius: 4px !important;
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
	color: var(--brand-red) !important;
}

/* Buttons (WooCommerce default) */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-page button.button,
.woocommerce-page a.button {
	background: var(--brand-red) !important;
	color: #fff !important;
	font-family: 'Anton', sans-serif !important;
	font-weight: 400 !important;
	letter-spacing: 0.02em !important;
	text-transform: uppercase !important;
	padding: 0.75rem 1.5rem !important;
	border-radius: 4px !important;
	border: none !important;
	transition: all 0.2s ease !important;
	font-size: 1rem !important;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
	background: #fff !important;
	color: var(--brand-red) !important;
	box-shadow: 0 0 20px rgba(227, 6, 19, 0.35) !important;
}

.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
.woocommerce-cart .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	background: var(--brand-red) !important;
	color: #fff !important;
	font-family: 'Anton', sans-serif !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	font-size: 1.25rem !important;
	padding: 1rem 2rem !important;
	width: 100%;
	display: block;
	text-align: center;
}

/* Inputs / Select */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout input,
.woocommerce-checkout select,
.woocommerce-checkout textarea,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
select,
textarea {
	background: var(--brand-black) !important;
	border: 1px solid rgba(255,255,255,0.1) !important;
	color: var(--brand-white) !important;
	padding: 0.75rem 1rem !important;
	border-radius: 4px !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 1rem !important;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:focus,
input:focus, select:focus, textarea:focus {
	border-color: var(--brand-red) !important;
	outline: none !important;
	box-shadow: 0 0 0 2px rgba(227,6,19,0.2) !important;
}

.woocommerce form .form-row label {
	color: var(--brand-gray) !important;
	font-family: 'Bebas Neue', sans-serif !important;
	letter-spacing: 0.05em !important;
	font-size: 0.875rem !important;
	text-transform: uppercase !important;
}

/* Quantity input */
.woocommerce .quantity .qty,
.evp-qty {
	background: var(--brand-black) !important;
	border: 1px solid rgba(255,255,255,0.1) !important;
	color: var(--brand-white) !important;
	padding: 0.5rem !important;
	width: 70px !important;
	text-align: center !important;
	font-family: 'Anton', sans-serif !important;
	font-size: 1.25rem !important;
}

/* Price */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--brand-red) !important;
	font-family: 'Bebas Neue', sans-serif !important;
	font-size: 2rem !important;
	font-weight: normal !important;
}

/* Cart Totals */
.woocommerce-cart .cart-collaterals .cart_totals,
.evp-cart-totals .cart_totals {
	width: 100% !important;
	float: none !important;
}
.woocommerce-cart-form table,
.shop_table {
	background: transparent !important;
	border: none !important;
	color: var(--brand-white) !important;
}
.woocommerce-cart .cart_totals h2,
.evp-cart-totals h2 {
	display: none !important;
}
.woocommerce-cart .cart_totals table tr,
.evp-cart-totals table tr {
	border-bottom: 1px solid rgba(255,255,255,0.05) !important;
}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td,
.evp-cart-totals table th,
.evp-cart-totals table td {
	background: transparent !important;
	color: var(--brand-white) !important;
	padding: 0.75rem 0 !important;
	border: none !important;
	font-family: 'Inter', sans-serif !important;
}
.woocommerce-cart .cart_totals table th,
.evp-cart-totals table th {
	color: var(--brand-gray) !important;
	font-weight: 400 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	font-size: 0.875rem !important;
}
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td,
.evp-cart-totals .order-total th,
.evp-cart-totals .order-total td {
	font-family: 'Anton', sans-serif !important;
	font-size: 1.5rem !important;
	color: var(--brand-white) !important;
	border-top: 2px solid var(--brand-red) !important;
	padding-top: 1rem !important;
}
.evp-cart-totals .order-total .amount,
.cart_totals .order-total .amount {
	color: var(--brand-red) !important;
	font-family: 'Bebas Neue', sans-serif !important;
	font-size: 2.5rem !important;
}

/* Product Loop List */
.woocommerce ul.products,
ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
	gap: 1.5rem !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}
.woocommerce ul.products li.product,
ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
}

/* Hide Storefront / Default Title in single product (we render our own) */
.evp-product-summary .product_title { display: none !important; }

/* Result Count + Ordering */
.woocommerce .woocommerce-result-count {
	color: var(--brand-gray) !important;
	font-family: 'Bebas Neue', sans-serif !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
}
.woocommerce .woocommerce-ordering select {
	background: var(--brand-charcoal) !important;
	color: var(--brand-white) !important;
	border: 1px solid rgba(255,255,255,0.1) !important;
}

/* Pagination */
.woocommerce-pagination ul.page-numbers,
.pagination .page-numbers {
	display: flex !important;
	gap: 0.5rem !important;
	list-style: none !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 2rem 0 !important;
}
.woocommerce-pagination ul.page-numbers li {
	border: none !important;
	background: transparent !important;
}
.woocommerce-pagination ul.page-numbers a,
.woocommerce-pagination ul.page-numbers span,
.pagination .page-numbers a,
.pagination .page-numbers span {
	background: var(--brand-charcoal) !important;
	color: var(--brand-white) !important;
	padding: 0.5rem 1rem !important;
	border-radius: 4px !important;
	font-family: 'Anton', sans-serif !important;
	transition: all 0.2s !important;
}
.woocommerce-pagination ul.page-numbers .current,
.pagination .page-numbers.current {
	background: var(--brand-red) !important;
}

/* Tabs */
.evp-wc-tabs .wc-tabs {
	display: flex;
	gap: 1.5rem;
	border-bottom: 2px solid var(--brand-charcoal);
	padding: 0;
	margin-bottom: 1.5rem;
	list-style: none;
}
.evp-wc-tabs .wc-tabs li {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
.evp-wc-tabs .wc-tabs li a {
	display: block;
	padding: 1rem 0 !important;
	font-family: 'Anton', sans-serif !important;
	text-transform: uppercase;
	color: var(--brand-gray) !important;
	font-size: 1.125rem !important;
	letter-spacing: 0.02em;
	border-bottom: 2px solid transparent;
	margin-bottom: -2px;
	transition: all 0.2s;
}
.evp-wc-tabs .wc-tabs li.active a {
	color: var(--brand-red) !important;
	border-bottom-color: var(--brand-red);
}

/* Borlabs Cookie Banner Override */
#BorlabsCookieBox ._brlbs-btn-accept-all { background: var(--brand-red) !important; }

/* Checkout */
.woocommerce-checkout #payment {
	background: var(--brand-charcoal) !important;
	border-radius: 8px !important;
	padding: 1.5rem !important;
}
.woocommerce-checkout #payment ul.payment_methods {
	background: transparent !important;
	border: none !important;
}
.woocommerce-checkout #payment div.payment_box {
	background: var(--brand-black) !important;
	color: var(--brand-gray) !important;
}

/* Helpers */
.line-clamp-2 {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.line-clamp-3 {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Mobile Header */
@media (max-width: 1023px) {
	.evp-mobile-nav-open { display: block !important; }
}
