/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

:root {
	--ees-accent: #467FF7;
	--ees-accent-rgb: 70, 127, 247;

	--cnvs-themecolor: #467FF7;
	--cnvs-themecolor-rgb: 70, 127, 247;
	--cnvs-link-color: #467FF7;
	--bs-link-color: #467FF7;
	--bs-link-color-rgb: 70, 127, 247;
	--bs-primary: #467FF7;
	--bs-primary-rgb: 70, 127, 247;
}

::selection { background: #467FF7; }
::-moz-selection { background: #467FF7; }

/* Do not set global `a { color }` — it overrides Canvas (breadcrumbs, meta, nav, etc.). */

.btn-primary {
	--bs-btn-bg: #467FF7;
	--bs-btn-border-color: #467FF7;
	--bs-btn-hover-bg: #3a6fe0;
	--bs-btn-hover-border-color: #3a6fe0;
}

.btn-outline-primary {
	--bs-btn-color: #467FF7;
	--bs-btn-border-color: #467FF7;
	--bs-btn-hover-bg: #467FF7;
	--bs-btn-hover-border-color: #467FF7;
}

.form-control:focus,
.form-select:focus {
	border-color: #467FF7;
	box-shadow: 0 0 0 0.25rem rgba(70, 127, 247, 0.25);
}

/* EES: Canvas simple flat buttons (buttons.html) — site-wide */
#wrapper .btn-simple,
#wrapper a.btn-simple,
#wrapper button.btn-simple {
	display: inline-block;
}

#wrapper .btn-outline:not(.button),
#wrapper a.btn-outline:not(.button),
#wrapper button.btn-outline:not(.button) {
	display: inline-block;
}

/* Quantity +/- on product/cart/order lines — Canvas theme controls, not .button CTAs */
#wrapper .quantity .minus,
#wrapper .quantity .plus,
#wrapper input.minus,
#wrapper input.plus {
	/* leave as theme quantity controls */
}

#wrapper .order-details-box .shop-line-qty .quantity {
	--cnvs-cart-quantity-width: 44px;
	--cnvs-cart-quantity-height: 40px;
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: stretch;
	margin: 0;
	margin-right: 0;
	max-width: none;
}

#wrapper .order-details-box .shop-line-qty .quantity .qty,
#wrapper .order-details-box .shop-line-qty .quantity input.minus,
#wrapper .order-details-box .shop-line-qty .quantity input.plus {
	flex: 0 0 auto;
}

#wrapper .order-details-box .shop-line-qty .quantity input.minus,
#wrapper .order-details-box .shop-line-qty .quantity input.plus {
	display: block;
	width: var(--cnvs-cart-quantity-width);
	height: var(--cnvs-cart-quantity-height);
	line-height: var(--cnvs-cart-quantity-height);
	padding: 0;
	border: 0;
	cursor: pointer;
	background-color: var(--cnvs-cart-quantity-bg, var(--cnvs-contrast-200));
	color: var(--cnvs-cart-quantity-color, var(--cnvs-contrast-800));
	font-size: var(--cnvs-cart-quantity-font-size, 1rem);
	font-weight: bold;
}

#wrapper .order-details-box .shop-line-qty .quantity input.minus:hover,
#wrapper .order-details-box .shop-line-qty .quantity input.plus:hover {
	background-color: var(--cnvs-cart-quantity-bg-hover, var(--cnvs-contrast-300));
}

#wrapper .order-details-box .shop-line-qty .quantity .qty {
	width: var(--cnvs-cart-quantity-width);
	height: var(--cnvs-cart-quantity-height);
	line-height: var(--cnvs-cart-quantity-height);
}

#wrapper .order-details-box .order-details-qty-col {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-shrink: 0;
}

@media (min-width: 992px) {
	#wrapper .order-details-box .order-details-qty-col {
		min-width: 11rem;
	}
}

/* EES Canvas simple flat buttons — do not let filled styles apply to .button-border */
#wrapper a.button,
#wrapper button.button {
	text-decoration: none;
}

/* Primary filled (buttons.html simple flat) */
#wrapper a.button.button-large.button-rounded:not(.button-border),
#wrapper button.button.button-large.button-rounded:not(.button-border) {
	background-color: var(--cnvs-themecolor, #467FF7) !important;
	border-color: transparent !important;
	color: #fff !important;
}

#wrapper a.button.button-large.button-rounded:not(.button-border):hover,
#wrapper button.button.button-large.button-rounded:not(.button-border):hover,
#wrapper a.button.button-large.button-rounded:not(.button-border):focus,
#wrapper button.button.button-large.button-rounded:not(.button-border):focus {
	background-color: #3a6fe0 !important;
	color: #fff !important;
}

/* Inverted / outline */
#wrapper a.button.button-large.button-border.button-rounded,
#wrapper button.button.button-large.button-border.button-rounded,
#wrapper a.button.button-small.button-border.button-rounded,
#wrapper button.button.button-small.button-border.button-rounded {
	background: transparent !important;
	background-color: transparent !important;
	border-color: var(--cnvs-themecolor, #467FF7) !important;
	color: var(--cnvs-themecolor, #467FF7) !important;
}

#wrapper a.button.button-large.button-border.button-rounded:hover,
#wrapper button.button.button-large.button-border.button-rounded:hover,
#wrapper a.button.button-small.button-border.button-rounded:hover,
#wrapper button.button.button-small.button-border.button-rounded:hover {
	background-color: var(--cnvs-themecolor, #467FF7) !important;
	border-color: transparent !important;
	color: #fff !important;
}

/* Compact filled */
#wrapper a.button.button-small.button-rounded:not(.button-border),
#wrapper button.button.button-small.button-rounded:not(.button-border) {
	background-color: var(--cnvs-themecolor, #467FF7) !important;
	border-color: transparent !important;
	color: #fff !important;
}

#wrapper a.button.button-small.button-rounded:not(.button-border):hover,
#wrapper button.button.button-small.button-rounded:not(.button-border):hover {
	background-color: #3a6fe0 !important;
	color: #fff !important;
}

/* Icon-only buttons (account edit/delete) — no extra left gap from Canvas .button i */
#wrapper a.button.button-icon-only i,
#wrapper button.button.button-icon-only i,
#wrapper a.button:has(> i:only-child) i,
#wrapper button.button:has(> i:only-child) i {
	margin-right: 0;
	width: auto;
}

#wrapper a.button.button-icon-only,
#wrapper button.button.button-icon-only,
#wrapper a.button.button-small:has(> i:only-child),
#wrapper button.button.button-small:has(> i:only-child) {
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	line-height: 1;
}

#wrapper .account-password-toggle.button {
	padding: 0.375rem 0.65rem;
	line-height: 1;
	min-width: 2.5rem;
}

#wrapper .account-password-toggle.button i {
	margin-right: 0;
}

/* Catalog add-to-cart */
#wrapper button.add-to-cart.button,
#wrapper a.add-to-cart.button {
	margin-bottom: 0;
}

#wrapper a.cart-checkout.button {
	display: block;
}

/* Footer
-----------------------------------------------------------------*/
#footer.footer-ees {
	background-color: #D1D1D1 !important;
	border-top: none !important;
	margin-top: 0;
	padding-top: 0;
}

#footer.footer-ees .footer-widgets-wrap {
	background-color: #D1D1D1 !important;
	padding: 0 0 2rem !important;
}

#footer.footer-ees .footer-ees-brand {
	width: 100%;
	margin-bottom: 1.25rem;
}

#footer.footer-ees .footer-ees-logo {
	display: block;
	width: 100%;
	height: auto;
}

#footer.footer-ees .footer-ees-lead,
#footer.footer-ees .footer-ees-contact,
#footer.footer-ees .footer-ees-contact a {
	color: #467FF7 !important;
	font-size: 0.8125rem;
}

#footer.footer-ees .footer-ees-heading {
	color: #1a3a7a !important;
	font-size: 1.125rem;
	font-weight: 700;
}

#footer.footer-ees .footer-ees-social-icon {
	background-color: #467FF7 !important;
}

#footer.footer-ees .footer-ees-copyrights {
	padding: 0.85rem 0 !important;
	background-color: #467FF7 !important;
	color: #fff !important;
	font-size: 0.75rem;
}

#footer.footer-ees .footer-ees-copyrights p {
	color: #fff !important;
	margin: 0 !important;
}
