/* Samtecno child theme styles. */

@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@500;600;700;800&display=swap');

:root {
	--samtecno-blue: #56317e;
	--samtecno-blue-deep: #3b1f5b;
	--samtecno-red: #008b8b;
	--samtecno-red-soft: #e0f4f3;
	--samtecno-surface: #ffffff;
	--samtecno-bg: #f4f6f8;
	--samtecno-text: #202832;
	--samtecno-muted: #66717e;
	--samtecno-border: rgba(32, 40, 50, 0.12);
	--samtecno-shadow: 0 10px 28px rgba(32, 40, 50, 0.09);
	--samtecno-radius: 8px;
}

html {
	scroll-behavior: smooth;
}

body {
	background-color: var(--samtecno-bg);
	background-image: linear-gradient(rgba(255, 255, 255, 0.66), rgba(255, 255, 255, 0.66));
	color: var(--samtecno-text);
	font-family: 'Manrope', 'Segoe UI', sans-serif;
	letter-spacing: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.display-1,
.display-2,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.block-categories .category-top-menu a {
	font-family: 'Sora', 'Manrope', sans-serif;
	letter-spacing: 0;
}

a {
	color: var(--samtecno-blue);
	transition: color 160ms ease, opacity 160ms ease;
}

a:hover {
	color: var(--samtecno-red);
	text-decoration: none;
}

.container,
.container-fluid {
	position: relative;
}

.header-nav,
.header-top,
.footer-container,
.block-category,
.product-miniature,
.card,
.cms-block,
.search-widget {
	backdrop-filter: blur(12px);
}

.header-banner {
	margin: 0;
}

.samtecno-trust-bar {
	background: var(--samtecno-blue-deep);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.samtecno-trust-items {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 28px;
	min-height: 34px;
}

.samtecno-trust-items span {
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
}

.samtecno-trust-items span + span::before {
	background: rgba(255, 255, 255, 0.45);
	border-radius: 50%;
	content: '';
	display: inline-block;
	height: 4px;
	margin-right: 28px;
	width: 4px;
}

.header-nav {
	background: #fff;
	border-bottom: 1px solid var(--samtecno-border);
	box-shadow: none;
	position: relative;
	z-index: 220;
	overflow: visible;
}

.header-top {
	background: #fff;
	border-bottom: 1px solid var(--samtecno-border);
	box-shadow: 0 4px 14px rgba(32, 40, 50, 0.05);
	border-radius: 0;
	margin-bottom: 8px;
	position: relative;
	z-index: 140;
	overflow: visible;
}

.header-top .row {
	align-items: center;
}

.header-top #_desktop_logo,
.header-top .top-logo,
.header-top .logo {
	display: inline-block;
	align-items: center;
	justify-content: center;
	height: auto;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	border-radius: 0;
}

.header-top #_desktop_logo img,
.header-top .top-logo img,
.header-top .logo img {
	height: auto;
	max-height: 118px;
	width: auto;
	max-width: 270px;
	filter: none;
	transform: none;
	display: block;
}

@media (min-width: 992px) {
	.header-top .search-widget {
		min-width: 320px;
	}
}

.header-top .search-widget,
.header-top .input-group,
.header-top .input-group input,
.header-top .search-widget form {
	border-radius: 999px;
}

.header-top .search-widget input,
.header-top input[type='search'],
.header-top input[type='text'] {
	background: rgba(244, 247, 251, 0.95);
	border: 1px solid rgba(108, 75, 255, 0.2);
	border-radius: 999px;
	box-shadow: none;
}

.header-top .search-widget input:focus,
.header-top input[type='search']:focus,
.header-top input[type='text']:focus,
.form-control:focus {
	border-color: rgba(108, 75, 255, 0.5);
	box-shadow: 0 0 0 0.2rem rgba(108, 75, 255, 0.16);
}

#_desktop_top_menu .top-menu[data-depth='0'] {
	font-weight: 700;
}

#_desktop_top_menu .top-menu[data-depth='0'] > li > a {
	color: var(--samtecno-text);
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 0 12px;
	position: relative;
	text-transform: uppercase;
	font-size: 0.78rem;
	letter-spacing: 0.04em;
	transition: color 160ms ease, background-color 160ms ease;
}

#_desktop_top_menu .top-menu[data-depth='0'] > li > a::after {
	content: '';
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 4px;
	height: 2px;
	background: var(--samtecno-blue);
	opacity: 0;
	transform: scaleX(0.4);
	transition: opacity 160ms ease, transform 160ms ease;
}

#_desktop_top_menu .top-menu[data-depth='0'] > li > a:hover::after,
#_desktop_top_menu .top-menu[data-depth='0'] > li.current > a::after {
	opacity: 1;
	transform: scaleX(1);
}

#_desktop_top_menu .top-menu[data-depth='0'] > li > a:hover,
#_desktop_top_menu .top-menu[data-depth='0'] > li.current > a {
	background: rgba(9, 114, 186, 0.06);
	color: var(--samtecno-blue);
}

.carousel,
.banner,
.block-category,
.card,
.product-miniature,
.featured-products,
.new-products,
.best-sellers,
.block-reassurance,
.footer-container,
.cms-block,
.contact-rich,
.cart-grid-body,
.product-prices,
.product-cover,
.product-accessories,
.product-tabs,
.search-results,
.pagination,
.breadcrumb,
.page-content,
.page-home .featured-products,
.page-home .products,
.page-home .featured-products .products,
.page-home .products .products {
	border-radius: var(--samtecno-radius);
}

.page-home .featured-products,
.page-home .products,
.page-content,
.product-page,
.cart-grid,
.checkout-step,
.block-category,
.search-results {
	background: rgba(255, 255, 255, 0.88);
	box-shadow: var(--samtecno-shadow);
	border: 1px solid var(--samtecno-border);
}

.carousel {
	overflow: hidden;
	box-shadow: var(--samtecno-shadow);
	border: 1px solid var(--samtecno-border);
}

.carousel .carousel-caption,
.carousel .caption,
.carousel h2,
.carousel p {
	text-shadow: none;
}

.carousel .display-1,
.carousel h2 {
	font-family: 'Sora', sans-serif;
	font-weight: 800;
}

.btn,
.btn-primary,
.btn-secondary,
.btn-tertiary,
.btn-outline-primary,
.product-add-to-cart .btn,
.form-control,
.custom-select,
select,
input,
textarea {
	border-radius: 999px;
}

.btn-primary,
.btn-secondary,
.btn-outline-primary:hover,
.product-add-to-cart .btn,
.btn.btn-primary,
.btn.btn-primary.disabled,
.btn.btn-primary:disabled {
	background: linear-gradient(135deg, var(--samtecno-blue), var(--samtecno-blue-deep));
	border: none;
	box-shadow: 0 14px 30px rgba(76, 42, 199, 0.28);
	color: #fff;
}

.btn-primary:hover,
.btn-secondary:hover,
.product-add-to-cart .btn:hover {
	background: linear-gradient(135deg, #5736db, #381f98);
	transform: translateY(-1px);
}

.btn-outline-primary {
	border-color: rgba(108, 75, 255, 0.34);
	color: var(--samtecno-blue-deep);
}

.btn-outline-primary:hover {
	color: #fff;
}

.product-miniature,
.card,
.block-category,
.product-cover,
.product-tabs,
.footer-container,
.cms-block,
.contact-rich {
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid rgba(15, 23, 42, 0.06);
	box-shadow: var(--samtecno-shadow);
}

.product-miniature {
	min-height: 369px;
	overflow: hidden;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
	margin-bottom: 20px;
}

.products .products,
.featured-products .products,
.new-products .products,
.best-sellers .products {
	row-gap: 18px;
}

.product-miniature:hover {
	transform: translateY(-6px);
	box-shadow: 0 24px 44px rgba(57, 30, 150, 0.2);
	border-color: rgba(108, 75, 255, 0.28);
}

.product-miniature .thumbnail-container,
.product-miniature .product-image,
.product-miniature img {
	border-radius: 18px;
}

.product-miniature .thumbnail-container {
	background: #fff;
	border-bottom: 1px solid rgba(32, 40, 50, 0.08);
	margin: 0;
	padding: 10px;
}

.product-miniature .thumbnail-container .thumbnail {
	display: block;
	overflow: hidden;
}

.product-miniature .thumbnail-container img {
	aspect-ratio: 1;
	object-fit: contain;
	transition: transform 180ms ease;
}

.product-miniature:hover .thumbnail-container img {
	transform: scale(1.035);
}

.product-miniature .product-description {
	display: flex;
	flex-direction: column;
	min-height: 112px;
	padding: 15px 16px 17px;
}

.product-miniature .discount,
.product-miniature .new,
.product-miniature .on-sale,
.product-miniature .product-flags,
.product-flags .discount,
.product-flags .new {
	border-radius: 999px;
	font-weight: 800;
	letter-spacing: 0.04em;
}

.product-miniature .new,
.product-flags .new {
	background: rgba(108, 75, 255, 0.14);
	color: var(--samtecno-blue-deep);
}

.product-miniature .discount,
.product-flags .discount,
.product-miniature .on-sale {
	background: rgba(177, 75, 255, 0.14);
	color: var(--samtecno-red);
}

.price,
.current-price,
.product-price,
.discount-percentage,
.has-discount .current-price {
	color: var(--samtecno-blue-deep);
	font-weight: 800;
}

body#product .product-container h1 {
	color: var(--samtecno-text);
	font-size: 1.7rem;
	line-height: 1.2;
	margin-bottom: 14px;
}

#product .product-prices {
	border-bottom: 1px solid var(--samtecno-border);
	margin-bottom: 16px;
	padding-bottom: 14px;
}

#product .product-prices .current-price {
	font-size: 1.28rem;
}

#product .product-description {
	border-bottom: 1px solid var(--samtecno-border);
	color: var(--samtecno-muted);
	line-height: 1.55;
	margin-bottom: 20px;
	padding-bottom: 20px;
}

#product .product-quantity {
	align-items: flex-end;
	border-bottom: 1px solid var(--samtecno-border);
	margin-bottom: 18px;
	padding-bottom: 18px;
}

#product .product-quantity .add-to-cart {
	min-height: 44px;
	padding-left: 20px;
	padding-right: 20px;
}

.product-title,
.product-miniature .product-title {
	color: var(--samtecno-text);
	font-size: 0.94rem;
	font-weight: 700;
	line-height: 1.35;
	margin-bottom: 10px;
}

.product-miniature .product-title a {
	color: inherit;
}

.product-miniature .product-title a:hover {
	color: var(--samtecno-blue);
}

.product-miniature .product-price-and-shipping {
	margin-top: auto;
}

.product-miniature .price {
	color: var(--samtecno-blue-deep);
	font-size: 1.08rem;
	letter-spacing: 0;
}

.product-miniature .quick-view {
	background: rgba(32, 40, 50, 0.88);
	border-radius: 6px;
	bottom: 12px;
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	left: 12px;
	padding: 8px 10px;
	right: auto;
	text-transform: none;
}

.product-miniature .quick-view:hover {
	background: var(--samtecno-blue-deep);
	color: #fff;
}

body#cart .cart-grid-body {
	padding: 22px;
}

body#cart .cart-item {
	border-bottom: 1px solid var(--samtecno-border);
	padding-bottom: 18px;
}

body#cart .cart-item:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

body#cart .cart-item .product-image {
	border: 1px solid var(--samtecno-border);
	border-radius: 6px;
	padding: 5px;
}

body#cart .cart-summary {
	border-color: var(--samtecno-border);
	padding: 20px;
}

body#cart .cart-summary .cart-summary-line:last-child {
	border-top: 1px solid var(--samtecno-border);
	font-size: 1.12rem;
	margin-top: 10px;
	padding-top: 14px;
}

body#cart .checkout .btn-primary {
	align-items: center;
	display: flex;
	justify-content: center;
	min-height: 46px;
	width: 100%;
}

@media (min-width: 992px) {
	body#cart .cart-grid-right {
		position: sticky;
		top: 20px;
	}
}

.breadcrumb {
	background: transparent;
	color: var(--samtecno-muted);
}

.breadcrumb a {
	color: var(--samtecno-muted);
}

body#category .block-category,
body#search .block-category {
	padding: 24px;
}

body#category #search_filters,
body#search #search_filters {
	background: #fff;
	border: 1px solid var(--samtecno-border);
	border-radius: 8px;
	box-shadow: 0 6px 18px rgba(32, 40, 50, 0.05);
	padding: 4px 18px;
}

body#category #search_filters .facet,
body#search #search_filters .facet {
	border-bottom: 1px solid var(--samtecno-border);
	margin: 0;
	padding: 17px 0;
}

body#category #search_filters .facet:last-child,
body#search #search_filters .facet:last-child {
	border-bottom: 0;
}

body#category #search_filters .facet-title,
body#search #search_filters .facet-title {
	color: var(--samtecno-text);
	font-family: 'Sora', 'Manrope', sans-serif;
	font-size: 0.87rem;
	font-weight: 700;
}

body#category #js-product-list-top,
body#search #js-product-list-top {
	align-items: center;
	border-bottom: 1px solid var(--samtecno-border);
	margin-bottom: 22px;
	padding-bottom: 14px;
}

body#category .products-sort-order .select-title,
body#search .products-sort-order .select-title {
	background: #fff;
	border: 1px solid var(--samtecno-border);
	border-radius: 6px;
	color: var(--samtecno-text);
	font-weight: 700;
	padding: 9px 12px;
}

body#category .products-sort-order .select-title:hover,
body#search .products-sort-order .select-title:hover {
	border-color: var(--samtecno-blue);
}

.pagination {
	gap: 8px;
	padding: 6px 0;
}

.pagination .page-item .page-link {
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid rgba(108, 75, 255, 0.18);
	color: var(--samtecno-blue-deep);
	box-shadow: 0 8px 18px rgba(57, 30, 150, 0.08);
	border-radius: 14px;
	min-width: 42px;
	text-align: center;
	transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.pagination .page-item .page-link:hover {
	background: rgba(108, 75, 255, 0.08);
	border-color: rgba(108, 75, 255, 0.34);
	color: var(--samtecno-blue);
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(76, 42, 199, 0.16);
}

.pagination .page-item.active .page-link,
.pagination .page-item.active .page-link:hover {
	background: linear-gradient(135deg, var(--samtecno-blue), var(--samtecno-blue-deep));
	border-color: transparent;
	color: #fff;
	box-shadow: 0 12px 26px rgba(76, 42, 199, 0.26);
}

.pagination .page-item.disabled .page-link,
.pagination .page-item.disabled .page-link:hover {
	background: rgba(255, 255, 255, 0.72);
	border-color: rgba(108, 75, 255, 0.1);
	color: rgba(111, 103, 144, 0.65);
	box-shadow: none;
	transform: none;
}

.pagination .page-link:focus {
	box-shadow: 0 0 0 0.2rem rgba(108, 75, 255, 0.16);
	border-color: rgba(108, 75, 255, 0.42);
	outline: none;
}

.footer-container {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(245, 248, 252, 0.98)),
		radial-gradient(circle at left top, rgba(108, 75, 255, 0.14), transparent 26%),
		radial-gradient(circle at right top, rgba(177, 75, 255, 0.14), transparent 24%);
	border: 1px solid rgba(108, 75, 255, 0.14);
	border-radius: 28px 28px 0 0;
	margin-top: 42px;
}

.footer-container h3,
.footer-container h4,
.footer-container .title,
.footer-container .h3 {
	color: var(--samtecno-text);
}

.footer-container a,
.footer-container p,
.footer-container li {
	color: var(--samtecno-muted);
}

.footer-container a:hover {
	color: var(--samtecno-red);
}

.block-reassurance ul {
	gap: 12px;
}

.block-reassurance li {
	background: rgba(108, 75, 255, 0.1);
	border-radius: 18px;
	padding: 14px 16px;
}

.page-index .featured-products > h2,
.page-index .featured-products .section-title,
.page-index .products > h2,
.page-index .products .section-title {
	text-align: center;
	margin-bottom: 18px;
}

.page-index .featured-products > h2::after,
.page-index .products > h2::after,
.section-title::after {
	content: '';
	display: block;
	width: 84px;
	height: 4px;
	border-radius: 999px;
	margin: 12px auto 0;
	background: linear-gradient(90deg, var(--samtecno-blue), var(--samtecno-red));
}

.page-index main,
.page-index #wrapper .container,
.page-index #content-wrapper .container {
	position: relative;
}

.page-index main::before {
	content: none;
}

.header-top .container,
.header-top .row,
.header-top-right,
.header-top .position-static {
	overflow: visible;
}

#header,
#header .header-nav,
#header .header-top,
#header .header-nav .container,
#header .header-top .container,
#header .header-nav .row,
#header .header-top .row {
	position: relative;
	overflow: visible !important;
}

#header .header-nav {
	z-index: 260;
}

#header .header-top {
	z-index: 140;
}

.header-top .language-selector,
.header-top .currency-selector,
.header-top .user-info,
.header-top #contact-link,
.header-top .blockcart,
.header-top .search-widget {
	position: relative;
	z-index: 120;
}

#_desktop_language_selector,
#_desktop_currency_selector,
.header-top .dropdown,
.header-nav .dropdown {
	position: relative;
	z-index: 1700;
}

#_desktop_language_selector.show,
#_desktop_currency_selector.show,
.header-top .dropdown.show,
.header-nav .dropdown.show {
	z-index: 1750;
}

.header-top .dropdown-menu,
.header-nav .dropdown-menu,
.header-top .language-selector .dropdown-menu,
.header-top .currency-selector .dropdown-menu {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	z-index: 1800 !important;
	border: 1px solid rgba(108, 75, 255, 0.24);
	box-shadow: 0 18px 35px rgba(57, 30, 150, 0.2);
	border-radius: 14px;
}

#_desktop_language_selector .dropdown-menu,
#_desktop_currency_selector .dropdown-menu {
	min-width: 170px;
}

.header-top .user-info a,
.header-top #contact-link a,
.header-top .language-selector .dropdown-menu,
.header-top .currency-selector .dropdown-menu {
	color: var(--samtecno-text);
}

.quickview,
.wishlist-button,
.cart-preview {
	border-radius: 999px;
}

.header-top .shopping-cart,
.header-top .material-icons,
.header-top .dropdown-item,
.header-top .btn,
.header-top .nav-link {
	transition: transform 160ms ease, color 160ms ease, opacity 160ms ease;
}

.header-top .nav-link:hover,
.header-top .btn:hover,
.header-top .dropdown-item:hover {
	transform: translateY(-1px);
}

.page-index .carousel .carousel-inner img {
	object-fit: cover;
}

@media (max-width: 991px) {
	.header-top {
		border-radius: 0;
	}

	.page-home .featured-products,
	.page-home .products,
	.page-content,
	.product-page,
	.cart-grid,
	.checkout-step,
	.block-category,
	.search-results {
		border-radius: 18px;
	}
}

@media (max-width: 767px) {
	body#category .block-category,
	body#search .block-category {
		padding: 18px;
	}

	body#category #search_filters,
	body#search #search_filters {
		padding: 4px 14px;
	}

	body#cart .cart-grid-body,
	body#cart .cart-summary {
		padding: 16px;
	}

	body#product .product-container h1 {
		font-size: 1.4rem;
	}

	#product .product-quantity {
		align-items: stretch;
	}

	body#product .product-add-to-cart {
		background: #fff;
		bottom: 0;
		box-shadow: 0 -5px 14px rgba(32, 40, 50, 0.08);
		left: 0;
		margin: 0;
		padding: 12px;
		position: fixed;
		right: 0;
		z-index: 100;
	}

	body#product .product-information {
		padding-bottom: 88px;
	}

	.samtecno-trust-items {
		gap: 12px;
		justify-content: flex-start;
		overflow-x: auto;
		padding: 0 14px;
		scrollbar-width: none;
	}

	.samtecno-trust-items::-webkit-scrollbar {
		display: none;
	}

	.samtecno-trust-items span + span::before {
		margin-right: 12px;
	}

	body {
		background-color: var(--samtecno-bg);
		background-image: linear-gradient(rgba(255, 255, 255, 0.66), rgba(255, 255, 255, 0.66));
	}

	.header-nav,
	.header-top {
		border-radius: 0;
	}

	.header-top .search-widget,
	.header-top input[type='search'],
	.header-top input[type='text'] {
		border-radius: 18px;
	}

	.header-top #_desktop_logo img,
	.header-top .top-logo img,
	.header-top .logo img {
		max-height: 70px;
		transform: none;
	}

	.header-top #_desktop_logo,
	.header-top .top-logo,
	.header-top .logo {
		height: auto;
		padding: 0;
	}

}
