/* T&T Graphics - site-wide polish (header, nav, buttons, product cards, footer) */

/* Header: subtle elevation so it reads as a bar above the content */
#kad-header-menu.headerclass-outer {
	box-shadow: 0 2px 14px rgba(3, 40, 66, .10);
}

/* ==================================================================
   Two-row header (desktop): row 1 = utility (logo, search, Custom
   Quote, account, cart), row 2 = category nav. GotPrint-style.
   ================================================================== */
@media (min-width: 992px) {
	/* Row 1: hide the category menu copy and the icon-only search in the topbar */
	#topbar .kad-topbar-menu { display: none; }
	#topbar .kad-topbar-search { display: none; }
	/* Row 1 scrolls away; only the category bar sticks (GotPrint-style) */
	#topbar.topbarclass { position: static !important; }
	.kt-topbar-right { align-items: center; flex: 1 1 auto; }
	.ttg-topbar-search { order: 1; }
	.ttg-topbar-quote { order: 2; margin: 0 12px; }
	.kad-topbar-account { order: 3; }
	.kad-topbar-cart { order: 4; }

	/* Search bar: centered, expanding, pill — like GotPrint's top row */
	.ttg-topbar-search {
		flex: 1 1 auto;
		display: flex;
		justify-content: center;
		margin: 0 28px;
	}
	.ttg-search-form {
		position: relative;
		width: 100%;
		max-width: 460px;
	}
	.ttg-search-icon {
		position: absolute;
		z-index: 1;
		left: 16px;
		top: 50%;
		transform: translateY(-50%);
		width: 17px;
		height: 17px;
		color: #8a97a3;
		pointer-events: none;
	}
	.ttg-search-form .ttg-search-field {
		width: 100%;
		border: 1px solid #d5dee7;
		border-radius: 30px;
		padding: 11px 20px 11px 44px;
		font-size: 15px;
		line-height: 1.4;
		background: #f7f9fb;
		transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
	}
	.ttg-search-form .ttg-search-field:focus {
		outline: none;
		background: #fff;
		border-color: #39434f;
		box-shadow: 0 0 0 3px rgba(57, 67, 79, .12);
	}

	/* Sticky category bar (toggled by site-polish.js) */
	body.ttg-cat-stuck .kad-header-menu-outer.headerclass {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 999;
		box-shadow: 0 6px 20px rgba(3, 40, 66, .14);
		animation: ttg-catbar-in .25s ease both;
	}
	body.admin-bar.ttg-cat-stuck .kad-header-menu-outer.headerclass { top: 32px; }
	@keyframes ttg-catbar-in {
		from { transform: translateY(-100%); }
		to { transform: none; }
	}

	/* Row 2: category bar (theme ships this row hidden) */
	.kad-header-menu-outer.headerclass { display: block !important; }
	.kad-header-menu-outer .kad-left-header,
	.kad-header-menu-outer .kad-right-header { display: none; }
	.kad-header-menu-outer .kad-center-header { width: 100%; }
	.kad-header-menu-outer .kad-header-flex,
	.kad-header-menu-outer .kad-header-height { height: 54px; }
	.kad-header-menu-outer {
		border-top: 1px solid #eef1f4;
		border-bottom: 1px solid #e3e8ee;
	}
	.kt-header-layout-standard .kad-header-menu-outer .nav-main { float: none; }
	.kt-header-position-above .kad-header-menu-outer .nav-main > ul.sf-menu {
		justify-content: center;
	}
	.kad-header-menu-outer .nav-main ul.sf-menu > li > a {
		font-size: 15px;
		font-weight: 600;
		letter-spacing: .4px;
		padding: 10px 18px;
	}
	/* Custom Quote lives in the utility row now */
	.kad-header-menu-outer .nav-main ul.sf-menu > li.menu-item-677,
	.kad-header-menu-outer .nav-main ul.sf-menu > li:has(> a[href*="request-print-quote"]) {
		display: none;
	}
}

/* Custom Quote button + search bar (row 1) */
.ttg-topbar-quote { display: flex; align-items: center; }
@media (max-width: 991.98px) {
	.ttg-topbar-search { display: none; }
}
.ttg-quote-btn {
	display: inline-block;
	padding: 9px 22px;
	border-radius: 30px;
	background: #e26835;
	color: #fff !important;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: .3px;
	text-decoration: none;
	transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.ttg-quote-btn:hover {
	background: #c9501f;
	transform: translateY(-1px);
	box-shadow: 0 6px 16px rgba(226, 104, 53, .35);
}

/* ==================================================================
   Category nav (row 2) + dropdowns — modern redesign
   ================================================================== */

/* --- Top-level category links: clean type + animated underline --- */
.nav-main ul.sf-menu > li > a {
	position: relative;
	transition: color .25s ease;
}
.nav-main ul.sf-menu > li > a::before {
	content: "";
	position: absolute;
	left: 18px;
	right: 18px;
	bottom: 4px;
	height: 3px;
	border-radius: 2px;
	background: linear-gradient(90deg, #e26835, #f2905f);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform .32s cubic-bezier(.2, .7, .3, 1);
}
.nav-main ul.sf-menu > li > a:hover,
.nav-main ul.sf-menu > li.sfHover > a,
.nav-main ul.sf-menu > li.current-menu-item > a {
	background: transparent;
	color: #0370af !important;
	box-shadow: none;
}
.nav-main ul.sf-menu > li > a:hover::before,
.nav-main ul.sf-menu > li.sfHover > a::before,
.nav-main ul.sf-menu > li.current-menu-item > a::before {
	transform: scaleX(1);
}

/* Dropdown parents: flip the theme's existing caret triangle on open */
.nav-main ul.sf-menu.sf-menu-normal > li.sf-dropdown > a:after {
	transition: transform .3s ease;
}
.nav-main ul.sf-menu > li.sf-dropdown:hover > a:after,
.nav-main ul.sf-menu > li.sf-dropdown.sfHover > a:after {
	transform: rotate(180deg);
}

/* ---------- Mega dropdown panels ---------- */
.nav-main ul.sf-menu li.kt-lgmenu > ul.sub-menu {
	background: #fff;
	border: 1px solid rgba(13, 42, 67, .08);
	border-radius: 18px;
	box-shadow: 0 30px 70px -12px rgba(3, 40, 66, .30), 0 4px 16px rgba(3, 40, 66, .07);
	padding: 24px 14px 16px;
	overflow: hidden;
}
/* a touch wider than the theme default for breathing room */
.nav-main ul.sf-menu.sf-menu-normal > li.kt-lgmenu.kt-menu-column-3 > ul.sub-menu {
	width: 660px;
	margin-left: -330px;
}
/* brand gradient accent strip along the top edge (replaces caret arrow) */
.nav-main ul.sf-menu.sf-menu-normal > li.kt-lgmenu > ul.sub-menu:before {
	border: none;
	width: auto;
	height: 4px;
	top: 0;
	left: 0;
	right: 0;
	margin-left: 0;
	background: linear-gradient(90deg, #3b4684 0%, #0370af 55%, #e26835 100%);
}
/* opening animation: fade + rise + subtle scale */
.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu,
.nav-main ul.sf-menu li.kt-lgmenu.sfHover > ul.sub-menu {
	animation: ttg-menu-in .3s cubic-bezier(.2, .7, .3, 1) both;
}
@keyframes ttg-menu-in {
	from { opacity: 0; transform: translateY(12px) scale(.985); }
	to { opacity: 1; transform: none; }
}
/* product links: modern rows with a sliding arrow on hover */
.nav-main ul.sf-menu li.kt-lgmenu > ul.sub-menu > li,
.nav-main ul.sf-menu li.kt-lgmenu > ul.sub-menu > li > a {
	background: transparent; /* kill theme's indigo dropdown backgrounds */
}
.nav-main ul.sf-menu li.kt-lgmenu > ul.sub-menu > li > a {
	display: flex;
	align-items: center;
	margin: 2px 8px;
	padding: 11px 16px;
	border-radius: 10px;
	text-transform: none;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: .1px;
	color: #22313f !important;
	transition: background .2s ease, color .2s ease;
}
.nav-main ul.sf-menu li.kt-lgmenu > ul.sub-menu > li > a:before { display: none; } /* kill hairline separators */
.nav-main ul.sf-menu li.kt-lgmenu > ul.sub-menu > li > a::after {
	content: "\2192"; /* → */
	display: block; /* theme hides a:after when superfish cssArrows are off */
	border: none;   /* and styles a:after as a caret triangle on parents */
	width: auto;
	height: auto;
	margin-left: auto;
	padding-left: 12px;
	font-size: 15px;
	font-weight: 700;
	color: #e26835;
	opacity: 0;
	transform: translateX(-8px);
	transition: opacity .22s ease, transform .22s ease;
}
.nav-main ul.sf-menu li.kt-lgmenu > ul.sub-menu > li > a:hover {
	background: #edf3fa;
	color: #0370af !important;
}
.nav-main ul.sf-menu li.kt-lgmenu > ul.sub-menu > li > a:hover::after {
	opacity: 1;
	transform: none;
}
/* links cascade in when the panel opens */
	.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu > li > a,
	.nav-main ul.sf-menu li.kt-lgmenu.sfHover > ul.sub-menu > li > a {
		animation: none;
	}
}

/* ==================================================================
   Cart: GotPrint-style outline cart icon + circular quantity badge
   ================================================================== */
.kt-top-extras-label .ascend-svg-iconset,
.kt-extras-label .ascend-svg-iconset {
	display: inline-flex;
	vertical-align: middle;
}
.ascend-cart-svg {
	width: 22px;
	height: 22px;
}
.kad-mobile-cart-flex-item .ascend-cart-svg {
	width: 24px;
	height: 24px;
}
.kt-header-extras span.kt-cart-total,
.kt-mobile-header-toggle span.kt-cart-total {
	border-radius: 50%;
}
.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu > li:nth-child(2) > a { animation-delay: .05s; }
.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu > li:nth-child(3) > a { animation-delay: .1s; }
.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu > li:nth-child(4) > a { animation-delay: .15s; }
.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu > li:nth-child(5) > a { animation-delay: .2s; }
.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu > li:nth-child(6) > a { animation-delay: .25s; }
.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu > li:nth-child(n+7) > a { animation-delay: .3s; }
@keyframes ttg-link-in {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: none; }
}

/* ---------- Standard (non-mega) dropdowns: same modern treatment ---------- */
.nav-main ul.sf-menu li:not(.kt-lgmenu) ul.sub-menu {
	background: #fff !important;
	border: 1px solid rgba(13, 42, 67, .08);
	border-radius: 14px;
	box-shadow: 0 20px 50px -10px rgba(3, 40, 66, .28), 0 3px 12px rgba(3, 40, 66, .07);
	padding: 8px;
	min-width: 220px;
}
.nav-main ul.sf-menu.sf-menu-normal > li:not(.kt-lgmenu) > ul.sub-menu:before { display: none; } /* caret arrow off */
.nav-main ul.sf-menu li:not(.kt-lgmenu) ul.sub-menu li a {
	background: transparent !important;
	border-radius: 8px;
	padding: 10px 14px;
	font-size: 15px;
	font-weight: 500;
	color: #22313f !important;
	transition: background .2s ease, color .2s ease;
}
.nav-main ul.sf-menu li:not(.kt-lgmenu) ul.sub-menu li a:hover {
	background: #edf3fa !important;
	color: #0370af !important;
}
.nav-main ul.sf-menu li:not(.kt-lgmenu):hover > ul.sub-menu,
.nav-main ul.sf-menu li:not(.kt-lgmenu).sfHover > ul.sub-menu {
	animation: ttg-menu-in .3s cubic-bezier(.2, .7, .3, 1) both;
}

/* ==================================================================
   Mobile menu drawer — modern dark slate panel with accordion
   ================================================================== */
.mfp-slide .mag-pop-sldr.kt-mobile-menu {
	background: linear-gradient(180deg, #222f3c 0%, #17222d 100%);
	padding: 0;
	box-shadow: 0 0 46px rgba(0, 0, 0, .5);
}
.kt-mobile-menu .pop-modal-body { padding: 10px 0 42px; }
.kt-mobile-menu ul.kad-mobile-nav { padding: 6px 0; }
.kt-mobile-menu ul.kad-mobile-nav li a {
	padding: 14px 22px;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: .2px;
	text-transform: none;
	color: #e6edf3 !important;
	border-bottom: 1px solid rgba(255, 255, 255, .06);
	transition: background .2s ease, color .2s ease;
}
.kt-mobile-menu ul.kad-mobile-nav li a:hover {
	background: rgba(255, 255, 255, .05);
	color: #fff !important;
}
/* accordion toggle: generous tap target, orange when open */
.kt-mobile-menu ul.kad-mobile-nav li .kad-submenu-accordion {
	padding: 13px 20px;
	color: #93a4b3;
	border-left: 1px solid rgba(255, 255, 255, .07);
	transition: color .2s ease, background .2s ease;
}
.kt-mobile-menu ul.kad-mobile-nav li .kad-submenu-accordion:hover { color: #fff; }
.kt-mobile-menu ul.kad-mobile-nav li .kad-submenu-accordion.toggle-active {
	background: rgba(255, 255, 255, .05);
	color: #e26835;
}
/* open submenus: inset panel with orange accent edge */
.kt-mobile-menu ul.kad-mobile-nav ul.sub-menu {
	background: rgba(0, 0, 0, .28);
	box-shadow: inset 3px 0 0 #e26835;
}
.kt-mobile-menu ul.kad-mobile-nav ul.sub-menu li a {
	padding: 12px 22px 12px 34px;
	font-size: 15px;
	font-weight: 500;
	color: #b7c4d0 !important;
	border-bottom-color: rgba(255, 255, 255, .04);
}
.kt-mobile-menu ul.kad-mobile-nav ul.sub-menu li a:hover {
	background: rgba(255, 255, 255, .04);
	color: #fff !important;
}
/* Custom Quote becomes a bold CTA button inside the drawer */
.kt-mobile-menu ul.kad-mobile-nav > li.menu-item-677,
.kt-mobile-menu ul.kad-mobile-nav > li:has(> a[href*="request-print-quote"]) {
	padding: 16px 18px 8px;
}
.kt-mobile-menu ul.kad-mobile-nav > li.menu-item-677 > a,
.kt-mobile-menu ul.kad-mobile-nav > li:has(> a[href*="request-print-quote"]) > a {
	display: block;
	background: #e26835;
	border: none;
	border-radius: 12px;
	text-align: center;
	font-size: 16px;
	font-weight: 700;
	color: #fff !important;
	box-shadow: 0 8px 20px rgba(226, 104, 53, .30);
	transition: background .2s ease, transform .2s ease;
}
.kt-mobile-menu ul.kad-mobile-nav > li.menu-item-677 > a:hover,
.kt-mobile-menu ul.kad-mobile-nav > li:has(> a[href*="request-print-quote"]) > a:hover {
	background: #c9501f;
	color: #fff !important;
}
/* search form inside the drawer (if enabled) */
.kt-mobile-menu .woocommerce-product-search,
.kt-mobile-menu form.search-form {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 16px 18px;
}
.kt-mobile-menu .search-field,
.kt-mobile-menu form.search-form input[type="search"] {
	flex: 1;
	min-width: 0;
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 10px;
	color: #fff;
	padding: 11px 16px;
	font-size: 15px;
}
.kt-mobile-menu .search-field::placeholder,
.kt-mobile-menu form.search-form input[type="search"]::placeholder { color: #8ea0b0; }
.kt-mobile-menu .search-submit,
.kt-mobile-menu form.search-form button[type="submit"] {
	background: #e26835;
	border: none;
	border-radius: 10px;
	color: #fff;
	font-weight: 700;
	padding: 11px 18px;
	cursor: pointer;
}

/* Buttons & form submits: smooth interaction everywhere */
.button,
.btn,
a.button,
input[type="submit"],
button[type="submit"] {
	transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease, border-color .25s ease;
}
.button:hover,
.btn:hover,
a.button:hover,
input[type="submit"]:hover,
button[type="submit"]:hover {
	transform: translateY(-2px);
}

/* WooCommerce product grids: card lift + image zoom */
ul.products li.product {
	border-radius: 10px;
	transition: transform .35s ease, box-shadow .35s ease;
}
ul.products li.product:hover {
	transform: translateY(-6px);
	box-shadow: 0 14px 34px rgba(3, 40, 66, .16);
}
ul.products li.product a img {
	transition: transform .5s cubic-bezier(.2, .6, .2, 1);
}
ul.products li.product:hover a img {
	transform: scale(1.06);
}

/* ==================================================================
   Above-footer widget band (Featured / Best sellers / Categories /
   Search) — colorful band with cards, chips, and scroll reveal
   ================================================================== */
.above_footer_outer {
	position: relative;
	overflow: hidden;
	background: linear-gradient(160deg, #f2f7fc 0%, #e9f1f9 55%, #f7f3ee 100%);
	padding: 64px 0 56px;
}
/* decorative blurred color blobs (echo the homepage hero) */
.above_footer_outer::before,
.above_footer_outer::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	filter: blur(90px);
	pointer-events: none;
}
.above_footer_outer::before {
	width: 380px;
	height: 380px;
	background: #0370af;
	opacity: .10;
	top: -140px;
	right: -120px;
}
.above_footer_outer::after {
	width: 300px;
	height: 300px;
	background: #e26835;
	opacity: .10;
	bottom: -120px;
	left: -100px;
}
.above_footer_outer .kt_sep_panel { display: none; } /* white triangle separators */
.above-footer-widgets { position: relative; z-index: 1; }

/* scroll reveal (toggled by site-polish.js) */
.above_footer_outer .above-footer-widget {
	opacity: 0;
	transform: translateY(26px);
	transition: opacity .6s cubic-bezier(.2, .6, .2, 1), transform .6s cubic-bezier(.2, .6, .2, 1);
}
.above_footer_outer.ttg-af-in .above-footer-widget { opacity: 1; transform: none; }
.above_footer_outer.ttg-af-in .above-footer-widget:nth-child(2) { transition-delay: .08s; }
.above_footer_outer.ttg-af-in .above-footer-widget:nth-child(3) { transition-delay: .16s; }
.above_footer_outer.ttg-af-in .above-footer-widget:nth-child(4) { transition-delay: .24s; }

/* Centered column titles: kill the theme's line-through rule and the
   white span background (band is a gradient, so white chunks show). */
.above-footer-widgets .widget-title {
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
	line-height: 1.3;
	color: #1a2733;
	margin: 0 0 26px;
	padding-bottom: 14px;
	position: relative;
	text-align: center;
}
.above-footer-widgets .widget-title::before { display: none; }
/* theme's ascend.css loads later, so the tie-break needs !important */
.above-footer-widgets .widget-title > span {
	background: transparent !important;
	padding-right: 0 !important;
}
.above-footer-widgets .widget-title::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 44px;
	height: 3px;
	border-radius: 2px;
	background: #39434f;
	transform: translateX(-50%);
}
/* product mini-cards: centered, stacked (thumb above title), lift + border glow */
.above-footer-widgets ul.product_list_widget li {
	background: #fff;
	border: 1px solid #e6ecf2;
	border-radius: 12px;
	padding: 16px 14px;
	margin: 0 auto 12px;
	max-width: 280px;
	text-align: center;
	box-shadow: 0 2px 8px rgba(3, 40, 66, .07);
	transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
	overflow: hidden;
}
.above-footer-widgets ul.product_list_widget li:hover {
	transform: translateY(-4px);
	border-color: #b3d4ec;
	box-shadow: 0 14px 30px rgba(3, 40, 66, .14);
}
.above-footer-widgets ul.product_list_widget li a {
	display: block;
	padding: 0;
}
.above-footer-widgets ul.product_list_widget li a img {
	float: none;
	display: block;
	width: 56px;
	height: 56px;
	max-width: 56px;
	object-fit: cover;
	padding-right: 0;
	margin: 0 auto 10px;
	border-radius: 8px;
	transition: transform .45s cubic-bezier(.2, .6, .2, 1);
}
.above-footer-widgets ul.product_list_widget li:hover a img {
	transform: scale(1.1);
}
.above-footer-widgets ul.product_list_widget li .product-title {
	display: block;
	font-weight: 600;
	color: #1a2733;
	transition: color .2s ease;
}
.above-footer-widgets ul.product_list_widget li:hover .product-title {
	color: #0370af;
}
.above-footer-widgets ul.product_list_widget li .amount {
	color: #0370af;
	font-weight: 700;
	font-size: 13px;
}
/* categories: interactive chips with sliding arrow */
.above-footer-widgets ul.product-categories li {
	padding: 0;
	margin-bottom: 12px;
}
.above-footer-widgets ul.product-categories li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #fff;
	border: 1px solid #e6ecf2;
	border-radius: 12px;
	padding: 14px 18px;
	font-weight: 600;
	color: #39434f;
	box-shadow: 0 2px 8px rgba(3, 40, 66, .07);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, color .25s ease;
}
.above-footer-widgets ul.product-categories li a::after {
	content: "\2192"; /* → */
	color: #e26835;
	font-size: 18px;
	transition: transform .25s ease;
}
.above-footer-widgets ul.product-categories li a:hover {
	color: #0370af;
	border-color: #b3d4ec;
	box-shadow: 0 10px 24px rgba(3, 40, 66, .13);
	transform: translateX(6px);
}
.above-footer-widgets ul.product-categories li a:hover::after {
	transform: translateX(5px);
}
/* product search: unified pill with orange submit, centered in its column */
.above-footer-widgets .woocommerce-product-search {
	display: flex;
	align-items: center;
	max-width: 320px;
	margin: 0 auto;
	background: #fff;
	border: 1px solid #e6ecf2;
	border-radius: 40px;
	padding: 6px;
	box-shadow: 0 2px 8px rgba(3, 40, 66, .07);
	transition: border-color .25s ease, box-shadow .25s ease;
}
.above-footer-widgets .woocommerce-product-search:focus-within {
	border-color: #39434f;
	box-shadow: 0 0 0 4px rgba(57, 67, 79, .10);
}
.above-footer-widgets .woocommerce-product-search .search-field {
	flex: 1;
	min-width: 0;
	border: none;
	background: transparent;
	padding: 10px 18px;
	font-size: 15px;
}
.above-footer-widgets .woocommerce-product-search .search-field:focus {
	outline: none;
	box-shadow: none;
}
.above-footer-widgets .woocommerce-product-search .search-submit {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: #e26835;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
	transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.above-footer-widgets .woocommerce-product-search .search-submit:hover {
	background: #c9501f;
	transform: translateY(-1px);
	box-shadow: 0 6px 16px rgba(226, 104, 53, .35);
}

/* ==================================================================
   Footer — dark neutral slate, complementing the homepage aesthetic
   ================================================================== */
.footerclass {
	background: #1a2733 !important;
	color: #aeb9c4;
}
.footerclass > .container {
	padding-top: 56px;
	padding-bottom: 36px;
}
.footerclass .footer-widget-title {
	margin-bottom: 26px;
}
.footerclass .footer-widget-title span {
	background: transparent !important;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
	display: block;
	padding-bottom: 18px;
	position: relative;
}
.footerclass .footer-widget-title span::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 44px;
	height: 3px;
	border-radius: 2px;
	background: #4b5a69;
}
.footerclass p { color: #aeb9c4; }
.footerclass a {
	color: #aeb9c4;
	transition: color .2s ease, padding-left .2s ease;
}
.footerclass a:hover { color: #fff !important; }
.footerclass .menu li { margin-bottom: 2px; }
.footerclass .menu li a {
	display: inline-block;
	padding: 5px 0;
}
.footerclass .menu li a:hover {
	border-color: transparent !important;
	padding-left: 6px;
}
/* social icons: bordered circles that invert on hover */
.footerclass .kadence_social_widget a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: 50%;
	margin: 0 8px 8px 0;
	color: #cfd8e0 !important;
	transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease;
}
.footerclass .kadence_social_widget a:hover {
	background: #fff;
	color: #1a2733 !important;
	border-color: #fff;
	transform: translateY(-2px);
}
/* payment icons */
.footerclass .kt-payment-methods {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.footerclass .kt-payment-methods .payment-method-icon {
	opacity: .85;
	transition: opacity .2s ease, transform .2s ease;
}
.footerclass .kt-payment-methods .payment-method-icon:hover {
	opacity: 1;
	transform: translateY(-2px);
}
/* footer base bar */
.footerclass .footerbase {
	background: #141d26;
	padding: 20px 0;
}
.footerclass .footerbase p {
	margin: 0;
	color: #7e8b97;
	font-size: 14px;
}
.footerclass .footerbase .footermenu {
	list-style: none;
	margin: 0 0 8px;
	padding: 0;
}
.footerclass .footerbase .footermenu li {
	display: inline-block;
	margin: 0;
}
.footerclass .footerbase .footermenu li a {
	color: #7e8b97;
	font-size: 14px;
	padding: 2px 0;
}
.footerclass .footerbase .footermenu li + li:before {
	content: "\00b7";
	color: #4b5a69;
	margin: 0 10px;
}
.footerclass .footerbase .footermenu li a:hover { color: #fff; }

@media (prefers-reduced-motion: reduce) {
	ul.products li.product,
	ul.products li.product a img,
	.button, .btn, a.button,
	input[type="submit"], button[type="submit"],
	.above-footer-widgets ul.product_list_widget li,
	.above-footer-widgets ul.product_list_widget li a img,
	.above-footer-widgets ul.product-categories li a {
		transition: none;
		transform: none !important;
	}
	.above_footer_outer .above-footer-widget {
		opacity: 1;
		transform: none;
		transition: none;
	}
	body.ttg-cat-stuck .kad-header-menu-outer.headerclass {
		animation: none;
	}
	.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu,
	.nav-main ul.sf-menu li.kt-lgmenu.sfHover > ul.sub-menu,
	.nav-main ul.sf-menu li.kt-lgmenu:hover > ul.sub-menu > li > a,
	.nav-main ul.sf-menu li.kt-lgmenu.sfHover > ul.sub-menu > li > a,
	.nav-main ul.sf-menu li:not(.kt-lgmenu):hover > ul.sub-menu,
	.nav-main ul.sf-menu li:not(.kt-lgmenu).sfHover > ul.sub-menu {
		animation: none;
	}
}
