/* AI Electronics Redesign: site-wide design (header, footer, shop, product, cart, checkout). Loaded after aie.css. */

/* =========================================================
   8. Site-wide design: top bar, header, footer, background
   ========================================================= */

/* Clean beige page background (the theme used a textured demo image) */
.main-page-wrapper { background-image: none !important; background-color: var(--aie-bg) !important; }

/* Top bar */
.aie-topbar { position: relative; z-index: 2; background: #0B1438; color: rgba(255, 255, 255, .85); font: 500 12.5px/1.2 "Inter", Arial, sans-serif; }
.aie-topbar .aie-wrap { max-width: 1280px; }
.aie-topbar__in { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 38px; }
.aie-tb { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.aie-tb .aie-i { color: var(--aie-beige); }
.aie-tb--mid { color: var(--aie-beige); font-weight: 600; }
.aie-tb--right { gap: 22px; }
.aie-tb a { display: flex; align-items: center; gap: 8px; color: rgba(255, 255, 255, .85) !important; text-decoration: none; }
.aie-tb a:hover { color: #fff !important; }
.whb-header .whb-top-bar { display: none !important; }

/* Header rows: navy */
.whb-header .whb-general-header,
.whb-header .whb-header-bottom { background-color: var(--aie-navy) !important; border-color: rgba(255, 255, 255, .08) !important; }
.whb-header .whb-header-bottom { border-top: 1px solid rgba(255, 255, 255, .08) !important; border-bottom: 0 !important; }
@media (min-width: 1025px) { .whb-header:not(.whb-sticked) .whb-general-header-inner { height: 84px; max-height: 84px; } }
.whb-header .whb-header-bottom-inner { height: 52px; max-height: 52px; }
.whb-header.whb-sticked .whb-general-header { box-shadow: 0 14px 30px -12px rgba(5, 9, 30, .55); }
.whb-general-header .site-logo img { max-height: 44px; width: auto; }

/* Icon buttons */
.whb-header .wd-tools-element > a { color: #fff !important; }
.whb-header .wd-tools-element > a:hover { color: var(--aie-beige) !important; }
.whb-general-header .wd-header-compare .wd-tools-icon,
.whb-general-header .wd-header-wishlist .wd-tools-icon {
	background: transparent !important; color: #fff !important; border: 1px solid rgba(255, 255, 255, .18); border-radius: 50%;
	transition: border-color .3s, color .3s, transform .3s var(--aie-ease);
}
.whb-general-header .wd-header-compare > a:hover .wd-tools-icon,
.whb-general-header .wd-header-wishlist > a:hover .wd-tools-icon { border-color: var(--aie-beige); color: var(--aie-beige) !important; transform: translateY(-2px); }
.whb-header .wd-tools-count { background: var(--aie-beige) !important; color: var(--aie-navy) !important; font-weight: 800; }

/* Account: icon + "Welcome / Sign in" */
.whb-general-header .wd-header-my-account .wd-tools-icon { background: transparent !important; color: #fff !important; }
.whb-general-header .wd-header-my-account > a { gap: 2px; }
.aie-acc { display: flex; flex-direction: column; margin-left: 6px; font: 600 14px/1.3 "Inter", sans-serif; color: #fff; white-space: nowrap; }
.aie-acc small { font-size: 12px; font-weight: 500; color: rgba(255, 255, 255, .6); }
@media (max-width: 1180px) { .aie-acc { display: none; } }

/* Cart: beige pill */
.whb-general-header .wd-header-cart .wd-tools-inner {
	background: var(--aie-beige) !important; color: var(--aie-navy) !important; height: 48px; padding: 0 20px 0 16px;
	transition: transform .3s var(--aie-ease), background .3s;
}
.whb-general-header .wd-header-cart > a:hover .wd-tools-inner { background: #fff !important; transform: translateY(-2px); }
.whb-general-header .wd-header-cart .wd-tools-icon,
.whb-general-header .wd-header-cart .wd-tools-text,
.whb-general-header .wd-header-cart .amount { color: var(--aie-navy) !important; }
.whb-general-header .wd-header-cart .wd-tools-text { display: flex; flex-direction: column; font-weight: 800; font-size: 14px; line-height: 1.2; }
.whb-general-header .wd-header-cart .wd-tools-text::before { content: "My Cart"; font-size: 12px; font-weight: 700; }
.whb-general-header .wd-header-cart .wd-tools-count { background: var(--aie-navy) !important; color: #fff !important; }

/* Search: translucent pill with a beige round button */
.whb-general-header .searchform input.s {
	height: 52px; padding: 0 64px 0 22px; border: 1px solid rgba(255, 255, 255, .16) !important; border-radius: 999px !important;
	background: rgba(255, 255, 255, .07) !important; color: #fff !important; font-size: 14px;
}
.whb-general-header .searchform input.s::placeholder { color: rgba(255, 255, 255, .55); opacity: 1; }
.whb-general-header .searchform input.s:focus { border-color: var(--aie-beige) !important; background: rgba(255, 255, 255, .1) !important; }
.whb-general-header .searchform .searchsubmit {
	top: 5px !important; bottom: 5px !important; right: 5px !important; width: 42px !important; height: 42px !important;
	border-radius: 50% !important; background: var(--aie-beige) !important; color: var(--aie-navy) !important;
	transition: transform .3s var(--aie-ease);
}
.whb-general-header .searchform .searchsubmit:hover { transform: scale(1.06) rotate(-8deg); }
.whb-general-header .searchform .searchsubmit::after,
.whb-general-header .searchform .searchsubmit::before { color: var(--aie-navy) !important; }

/* Bottom row: "All Categories" + menu + WhatsApp chip */
.whb-header-bottom .wd-header-mobile-nav > a {
	height: 52px; padding: 0 22px 0 20px; gap: 10px; background: var(--aie-navy-700); color: #fff !important;
}
.whb-header-bottom .wd-header-mobile-nav > a::after { content: "All Categories"; font: 600 14px "Inter", sans-serif; }
.whb-header-bottom .wd-nav-secondary > li > a {
	position: relative; padding: 0 2px; margin: 0 13px; height: 52px; color: rgba(255, 255, 255, .82) !important;
	font: 600 14px "Inter", sans-serif; text-transform: none; letter-spacing: 0; background: transparent !important;
}
.whb-header-bottom .wd-nav-secondary > li > a::after {
	content: ""; position: absolute; left: 50%; bottom: 10px; width: 24px; height: 2px; border-radius: 2px;
	background: var(--aie-gold); transform: translateX(-50%) scaleX(0); transition: transform .35s var(--aie-ease);
}
.whb-header-bottom .wd-nav-secondary > li > a:hover,
.whb-header-bottom .wd-nav-secondary > li.current-menu-item > a { color: var(--aie-beige) !important; }
.whb-header-bottom .wd-nav-secondary > li > a:hover::after,
.whb-header-bottom .wd-nav-secondary > li.current-menu-item > a::after { transform: translateX(-50%) scaleX(1); }
.aie-hchip {
	display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px 8px 13px; border-radius: 999px; white-space: nowrap;
	border: 1px solid rgba(249, 237, 211, .45); color: var(--aie-beige) !important; font: 600 14px "Inter", sans-serif; transition: background .3s;
}
.aie-hchip:hover { background: rgba(249, 237, 211, .1); }
.aie-hchip .aie-wa-ico { color: #4ADE80; width: 17px; height: 17px; }

/* Mobile header */
@media (max-width: 1024px) {
	.whb-header .whb-general-header-inner { height: 64px; max-height: 64px; }
	.whb-general-header .site-logo img { max-height: 34px; }
	.whb-general-header .wd-header-mobile-nav .wd-tools-icon,
	.whb-general-header .wd-header-search-mobile .wd-tools-icon {
		width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid rgba(255, 255, 255, .2); border-radius: 50%; color: #fff !important;
	}
	.whb-general-header .wd-header-cart .wd-tools-icon {
		width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; background: var(--aie-beige); color: var(--aie-navy) !important;
	}
	.whb-general-header .wd-header-cart .wd-tools-count { top: -4px; right: -4px; }
	.aie-topbar__in { justify-content: center; min-height: 34px; }
	.aie-tb--left, .aie-tb--right { display: none; }
}

/* Mobile bottom toolbar */
.wd-toolbar { background: #fff !important; border-top: 1px solid var(--aie-border); box-shadow: 0 -8px 24px -12px rgba(18, 29, 72, .18); }
.wd-toolbar .wd-tools-element > a, .wd-toolbar .wd-toolbar-label { color: var(--aie-navy) !important; }
.wd-toolbar .wd-toolbar-label { font: 600 11px "Inter", sans-serif; }

/* Footer */
body .wd-prefooter { background-color: var(--aie-navy) !important; padding: 64px 0 0 !important; margin: 0 !important; }
.aie-preband {
	display: flex; justify-content: space-between; align-items: center; gap: 24px 32px; flex-wrap: wrap; padding: 34px 40px;
	border-radius: 28px; background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .12); color: #fff; font-family: "Inter", sans-serif;
}
.aie-preband h3 { margin: 0 0 4px; font: 600 clamp(22px, 2.4vw, 28px)/1.25 "Montserrat", sans-serif; color: #fff; }
.aie-preband p { margin: 0; font-size: 14px; color: rgba(255, 255, 255, .65); }
.aie-preband .aie-btn { text-decoration: none; }
.aie-preband .aie-btn--beige .aie-wa-ico { color: #1E9E54; }
footer.wd-footer { background-color: var(--aie-navy) !important; }
footer.wd-footer .main-footer { padding-top: 48px; }
footer.wd-footer .title {
	font: 700 12px/1.4 "Inter", sans-serif !important; letter-spacing: .18em !important; text-transform: uppercase; color: #FBE28F !important;
}
footer.wd-footer a, footer.wd-footer .elementor-icon-list-text, footer.wd-footer p { color: rgba(255, 255, 255, .72) !important; font-size: 14px; }
footer.wd-footer a:hover { color: var(--aie-beige) !important; }
footer.wd-footer .elementor-icon-list-icon i, footer.wd-footer .elementor-icon-list-icon svg { color: #FBE28F !important; fill: #FBE28F !important; }
footer.wd-footer .wd-image img { max-height: 44px; width: auto !important; }
footer.wd-footer .wd-social-icons .wd-social-icon {
	background: transparent !important; border: 1px solid rgba(255, 255, 255, .22); color: #FBE28F !important;
	transition: background .3s, color .3s, transform .3s var(--aie-ease);
}
footer.wd-footer .wd-social-icons .wd-social-icon:hover { background: var(--aie-beige) !important; color: var(--aie-navy) !important; transform: translateY(-3px); }
footer.wd-footer .wd-social-icons .wd-icon, footer.wd-footer .wd-social-icons .wd-social-icon * { color: inherit !important; }
footer.wd-footer .wd-social-icons .wd-label { font: 700 12px/1.4 "Inter", sans-serif !important; letter-spacing: .18em; text-transform: uppercase; color: #FBE28F !important; }
.wd-copyrights { background: var(--aie-navy) !important; border-top: 1px solid rgba(255, 255, 255, .1) !important; color: rgba(255, 255, 255, .55) !important; font-size: 12.5px; }
.wd-copyrights a { color: rgba(255, 255, 255, .7) !important; }

/* =========================================================
   9. Shop, category and brand pages
   ========================================================= */
.aie-wchead { width: auto; margin-left: 0; margin-right: 0; overflow: visible; }
.aie-phero--slim .aie-phero__in { padding-top: 30px; padding-bottom: 44px; }
.aie-phero--slim h1 { margin: 0 0 8px; font-size: clamp(28px, 3vw, 40px); }
.aie-phero--slim .aie-lead { max-width: 640px; font-size: 15.5px; }
.aie-wchead__row { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; flex-wrap: wrap; }
.aie-steps-bar { display: flex; gap: 10px; margin: 0; padding: 0; list-style: none; }
.aie-steps-bar li { display: flex; align-items: center; gap: 8px; margin: 0; padding: 8px 14px 8px 8px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .2); font-size: 13.5px; font-weight: 600; color: rgba(255, 255, 255, .7); }
.aie-steps-bar li span { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; background: rgba(255, 255, 255, .12); color: #fff; }
.aie-steps-bar li.is-done span { background: #1E9E54; }
.aie-steps-bar li.is-on { border-color: var(--aie-beige); color: #fff; }
.aie-steps-bar li.is-on span { background: var(--aie-beige); color: var(--aie-navy); }
.aie-catbar { background: #fff; border-bottom: 1px solid var(--aie-border); }
.aie-catbar__in { display: flex; gap: 8px; padding: 16px 0; overflow-x: auto; scrollbar-width: none; }
.aie-catbar__in::-webkit-scrollbar { display: none; }
.aie-catbar__in a {
	flex: none; padding: 9px 18px; border: 1px solid var(--aie-border); border-radius: 999px; background: #fff;
	color: var(--aie-navy) !important; font: 600 14px/1.2 "Inter", sans-serif; white-space: nowrap; transition: border-color .25s, background .25s, color .25s;
}
.aie-catbar__in a:hover { border-color: var(--aie-navy); }
.aie-catbar__in a.is-on { background: var(--aie-navy); border-color: var(--aie-navy); color: #fff !important; }
.aie-catbar__in a.aie-catbar__all { display: inline-flex; align-items: center; gap: 6px; border-style: dashed; }

/* Product cards in WooCommerce lists */
.wd-products .wd-product .product-wrapper {
	height: 100%; padding: 12px 12px 16px; background: #fff; border: 1px solid var(--aie-border); border-radius: 22px;
	box-shadow: var(--aie-shadow); transition: transform .4s var(--aie-ease), box-shadow .4s var(--aie-ease), border-color .3s;
}
.wd-products .wd-product:hover .product-wrapper { transform: translateY(-5px); box-shadow: var(--aie-shadow-h); border-color: rgba(18, 29, 72, .35); }
.wd-products .wd-product .product-element-top { border-radius: 16px; overflow: hidden; background: #fff; }
.wd-products .wd-product .product-image-link { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; background: #fff; }
.wd-products .wd-product .product-image-link > img { width: 88%; height: 88%; object-fit: contain; }
.wd-products .wd-product .wd-entities-title { font: 600 15px/1.4 "Inter", sans-serif !important; }
.wd-products .wd-product .wd-entities-title a { color: var(--aie-navy) !important; }
.wd-products .wd-product .wd-product-cats, .wd-products .wd-product .wd-product-brands-links { font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.wd-products .wd-product .wd-product-cats a, .wd-products .wd-product .wd-product-brands-links a { color: var(--aie-muted) !important; }
.wd-products .wd-product .price, .wd-products .wd-product .price .amount { font-size: 18px; font-weight: 700; color: var(--aie-navy); }
.product-labels .product-label { border-radius: 999px !important; font-weight: 700; }
.product-labels .product-label.featured { background: var(--aie-navy) !important; color: #fff !important; }

/* Hide the free-shipping progress bar: it says "qualifies for free shipping" while a delivery charge is added */
.elementor-widget-wd_single_product_shipping_progress_bar, .wd-free-progress-bar { display: none !important; }

/* =========================================================
   10. Product page
   ========================================================= */
.single-product .wd-single-gallery .wd-gallery-images .wd-carousel-inner { background: #fff; border: 1px solid var(--aie-border); border-radius: 24px; overflow: hidden; }
.single-product .wd-single-gallery .wd-gallery-thumb .wd-carousel-item img { border-radius: 12px; }
.single-product .wd-single-price { width: 100% !important; max-width: 100% !important; }
.single-product .wd-single-price .price {
	display: block; padding: 18px 22px; background: #fff; border: 1px solid var(--aie-border); border-radius: 18px; box-shadow: var(--aie-shadow);
	font: 700 30px/1.2 "Inter", sans-serif; color: var(--aie-navy);
}
.single-product .wd-single-price .price::after { content: "Inclusive of all taxes · Delivery charges calculated at checkout"; display: block; margin-top: 6px; font-size: 12.5px; font-weight: 500; color: var(--aie-muted); }
.single-product .wd-single-add-cart .quantity { border: 1px solid var(--aie-border); border-radius: 999px; overflow: hidden; background: #fff; }
.single-product .wd-single-add-cart .quantity input { border: 0 !important; background: transparent !important; }
.single-product .single_add_to_cart_button { border-radius: 999px !important; background: #fff !important; color: var(--aie-navy) !important; border: 1.5px solid var(--aie-navy) !important; }
.single-product .single_add_to_cart_button:hover { background: var(--aie-bg) !important; }
.single-product .wd-buy-now-btn { border-radius: 999px !important; background: var(--aie-navy) !important; color: #fff !important; }
.single-product .wd-buy-now-btn:hover { background: var(--aie-navy-700) !important; }
.aie-callorder { display: flex; align-items: center; gap: 8px; margin: 16px 0 0; font-size: 14px; color: var(--aie-navy); }
.aie-callorder a { font-weight: 700; color: var(--aie-navy) !important; }
.aie-perks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
.aie-perk { display: flex; align-items: center; gap: 12px; padding: 12px 14px; background: #fff; border: 1px solid var(--aie-border); border-radius: 16px; }
.aie-perk__ic { width: 40px; height: 40px; flex: none; border-radius: 12px; display: grid; place-items: center; background: var(--aie-navy); color: var(--aie-beige); }
.aie-perk b { display: block; font-size: 13.5px; font-weight: 600; line-height: 1.3; color: var(--aie-navy); }
.aie-perk div > span { display: block; font-size: 12px; line-height: 1.35; color: var(--aie-muted); }
.single-product .wd-single-tabs .wd-nav-tabs > li > a { text-transform: none !important; font: 600 15px "Inter", sans-serif !important; color: var(--aie-muted) !important; }
.single-product .wd-single-tabs .wd-nav-tabs > li.active > a { color: var(--aie-navy) !important; }
.single-product .wd-single-tabs .wd-nav-tabs > li > a::after { background: var(--aie-gold) !important; }
.single-product .woocommerce-product-attributes { background: #fff; border: 1px solid var(--aie-border); border-radius: 18px; overflow: hidden; border-collapse: separate; }
.single-product .woocommerce-product-attributes tr:nth-child(odd) { background: var(--aie-bg); }
.single-product .woocommerce-product-attributes th, .single-product .woocommerce-product-attributes td { padding: 14px 20px !important; border: 0 !important; }
@media (max-width: 640px) {
	.aie-perks { grid-template-columns: 1fr; }
	.single-product .wd-single-price .price { font-size: 26px; }
}

/* =========================================================
   11. Cart and checkout
   ========================================================= */
.woocommerce-cart .elementor-widget-wd_cart_table .elementor-widget-container,
.woocommerce-checkout .elementor-widget-wd_checkout_order_review .elementor-widget-container {
	background: #fff; border: 1px solid var(--aie-border); border-radius: 22px; box-shadow: var(--aie-shadow); padding: 22px 24px;
}
.woocommerce-cart table.shop_table th { font: 700 11.5px "Inter", sans-serif; letter-spacing: .14em; text-transform: uppercase; color: var(--aie-muted); }
.woocommerce-cart .product-thumbnail img { border: 1px solid var(--aie-border); border-radius: 14px; background: #fff; }
.woocommerce-cart .product-name a { font-weight: 600; color: var(--aie-navy) !important; }
.woocommerce-cart .checkout-button, .woocommerce-checkout #place_order {
	border-radius: 999px !important; background: var(--aie-navy) !important; color: #fff !important; min-height: 52px; font-weight: 600;
}
.woocommerce-cart .checkout-button:hover, .woocommerce-checkout #place_order:hover { background: var(--aie-navy-700) !important; }
.woocommerce-cart .coupon .input-text, .woocommerce-cart .coupon .button { border-radius: 999px !important; }
.woocommerce-checkout .input-text, .woocommerce-checkout select, .woocommerce-checkout .select2-container .select2-selection {
	min-height: 48px; border: 1px solid var(--aie-border) !important; border-radius: 14px !important; background-color: var(--aie-bg) !important; color: var(--aie-navy);
}
.woocommerce-checkout textarea.input-text { min-height: 96px; }
.woocommerce-checkout .input-text:focus, .woocommerce-checkout select:focus { border-color: var(--aie-navy) !important; background-color: #fff !important; }
.woocommerce-checkout .form-row label { font-weight: 600; color: var(--aie-navy); }
.woocommerce-checkout #payment { background: #fff !important; border: 1px solid var(--aie-border); border-radius: 22px; }
.woocommerce-checkout .wc_payment_method { border-radius: 14px; }

/* Old orange accents from the theme template -> brand colors */
.woocommerce-checkout .elementor-element-d91bbfd > .elementor-widget-container,
.woocommerce-checkout .elementor-element-48a4bd2 > .elementor-widget-container,
.woocommerce-checkout .elementor-element-553ce95 > .elementor-widget-container { background-color: var(--aie-navy) !important; color: #fff !important; }
.woocommerce-checkout .elementor-element-d91bbfd *, .woocommerce-checkout .elementor-element-48a4bd2 *, .woocommerce-checkout .elementor-element-553ce95 * { color: #fff !important; }
.woocommerce-checkout .elementor-element-843fa7b > .elementor-widget-container { background-color: var(--aie-beige) !important; color: var(--aie-navy) !important; }
.wd-info-box .info-box-icon img { filter: hue-rotate(195deg) saturate(1.4) brightness(.5); }
.wd-info-box .info-box-inner a { color: var(--aie-navy) !important; font-style: normal; font-weight: 600; }
footer.wd-footer .elementor-widget-wd_image_or_svg > .elementor-widget-container { margin-left: 0 !important; width: auto !important; }
.whb-header .wd-nav-img { display: none !important; }

/* Header placeholder: WoodMart reserves the old header height (150px) for its sticky header; ours is 137px */
@media (min-width: 1025px) { .whb-header.whb-sticky-prepared { padding-top: 137px !important; } }
@media (max-width: 1024px) { .whb-header.whb-sticky-prepared { padding-top: 64px !important; } }

/* Checkout notes for the payment rules */
.woocommerce-checkout .payment_box strong { color: var(--aie-navy); }
.aie-advance { margin: 24px 0; padding: 24px 26px; background: #fff; border: 1px solid var(--aie-border); border-radius: 20px; box-shadow: var(--aie-shadow); }
.aie-advance h2 { margin: 0 0 8px; font-size: 22px; }
.aie-advance ul { margin: 10px 0 14px; padding-left: 18px; }
.aie-advance li { margin: 4px 0; font-weight: 600; color: var(--aie-navy); }
