:root {
	--et-blue: #0646d7;
	--et-blue-dark: #04349f;
	--et-cyan: #42d7ff;
	--et-orange: #ff6817;
	--et-navy: #06152f;
	--et-ink: #111827;
	--et-muted: #64748b;
	--et-line: #e2e8f0;
	--et-soft: #f4f7fc;
	--et-white: #ffffff;
	--theme-palette-color-1: var(--et-blue);
	--theme-palette-color-2: var(--et-blue-dark);
	--theme-button-background-initial-color: var(--et-blue);
	--theme-button-background-hover-color: var(--et-blue-dark);
}

body:not(.home) {
	color: var(--et-ink);
	background: var(--et-soft);
	font-family: "Plus Jakarta Sans", sans-serif;
}

body:not(.home) h1,
body:not(.home) h2,
body:not(.home) h3,
body:not(.home) h4 {
	color: var(--et-ink);
	font-family: "Syne", "Plus Jakarta Sans", sans-serif;
	letter-spacing: -.035em;
}

body:not(.home) #main-container {
	background:
		linear-gradient(rgba(6, 70, 215, .025) 1px, transparent 1px),
		linear-gradient(90deg, rgba(6, 70, 215, .025) 1px, transparent 1px),
		var(--et-soft);
	background-size: 48px 48px;
}

body:not(.home) a:focus-visible,
body:not(.home) button:focus-visible,
body:not(.home) input:focus-visible,
body:not(.home) select:focus-visible,
body:not(.home) textarea:focus-visible {
	outline: 3px solid rgba(66, 215, 255, .75);
	outline-offset: 3px;
}

/* Header */
body:not(.home) #header {
	border-bottom: 1px solid var(--et-line);
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 8px 30px rgba(6, 21, 47, .055);
	backdrop-filter: blur(16px);
}

body:not(.home) #header [data-row="top"] {
	min-height: 34px;
	color: #fff;
	background: #0a0d12;
	--theme-text-color: #fff;
	--theme-link-initial-color: #fff;
	--theme-link-hover-color: var(--et-cyan);
}

body:not(.home) #header [data-row="top"] p {
	margin: 0;
	font-size: 11px;
	letter-spacing: .02em;
}

body:not(.home) #header [data-row="middle"] {
	background: rgba(255, 255, 255, .96);
}

body:not(.home) #header .ct-container {
	width: min(1240px, calc(100% - 40px));
}

body:not(.home) #header .site-branding {
	gap: 12px;
}

body:not(.home) #header .site-logo-container img {
	width: auto;
	max-width: 62px;
	max-height: 62px;
	object-fit: contain;
}

body:not(.home) #header .site-title {
	font-family: "Syne", "Plus Jakarta Sans", sans-serif;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: -.025em;
}

body:not(.home) #header .header-menu-1 > ul > li > a {
	position: relative;
	min-height: 58px;
	padding-inline: 13px;
	color: #28364a;
	font-size: 12px;
	font-weight: 800;
}

body:not(.home) #header .header-menu-1 > ul > li > a::after {
	content: "";
	position: absolute;
	right: 14px;
	bottom: 10px;
	left: 14px;
	height: 2px;
	background: var(--et-blue);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .22s ease;
}

body:not(.home) #header .header-menu-1 > ul > li:hover > a::after,
body:not(.home) #header .header-menu-1 > ul > li.current-menu-item > a::after {
	transform: scaleX(1);
	transform-origin: left;
}

body:not(.home) #header .sub-menu {
	overflow: hidden;
	border: 1px solid var(--et-line);
	border-radius: 14px;
	background: rgba(255, 255, 255, .985);
	box-shadow: 0 24px 60px rgba(6, 21, 47, .16);
}

body:not(.home) #header .sub-menu a {
	color: #334155;
	font-size: 12px;
	font-weight: 700;
}

body:not(.home) #header .sub-menu a:hover {
	color: var(--et-blue);
	background: #f2f6ff;
}

body:not(.home) #header [data-id="cart"],
body:not(.home) #header [data-id="account"],
body:not(.home) #header [data-id="search"] {
	color: var(--et-navy);
}

/* Page headings */
body:not(.home) .hero-section {
	position: relative;
	overflow: hidden;
	border-bottom: 1px solid rgba(6, 70, 215, .1);
	background:
		radial-gradient(circle at 82% 15%, rgba(66, 215, 255, .22), transparent 28%),
		linear-gradient(120deg, #ffffff 0%, #eef5ff 100%);
}

body:not(.home) .hero-section::after {
	content: "ET";
	position: absolute;
	right: max(24px, calc((100vw - 1240px) / 2));
	bottom: -36px;
	color: rgba(6, 70, 215, .055);
	font-family: "Syne", sans-serif;
	font-size: clamp(90px, 14vw, 190px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: -.09em;
	pointer-events: none;
}

body:not(.home) .hero-section .page-title {
	position: relative;
	z-index: 2;
	font-size: clamp(34px, 4vw, 56px);
	letter-spacing: -.055em;
}

body:not(.home) .hero-section .ct-breadcrumbs {
	position: relative;
	z-index: 2;
	color: var(--et-muted);
	font-size: 11px;
}

/* Product archives */
.woocommerce-shop .site-main,
.tax-product_cat .site-main,
.tax-product_tag .site-main {
	padding-block: 62px 82px;
}

.woocommerce-shop .woocommerce-ordering select,
.tax-product_cat .woocommerce-ordering select,
.woocommerce-shop .wc-block-product-categories__dropdown select,
.tax-product_cat .wc-block-product-categories__dropdown select {
	min-height: 45px;
	border: 1px solid var(--et-line);
	border-radius: 11px;
	background: #fff;
	color: var(--et-ink);
	font-size: 12px;
	font-weight: 700;
	box-shadow: 0 6px 20px rgba(6, 21, 47, .04);
}

.woocommerce-shop ul.products,
.tax-product_cat ul.products,
.tax-product_tag ul.products,
body.search-results ul.products {
	gap: 18px;
}

.woocommerce-shop ul.products li.product,
.tax-product_cat ul.products li.product,
.tax-product_tag ul.products li.product,
body.search-results ul.products li.product {
	position: relative;
	overflow: hidden;
	padding-bottom: 19px;
	border: 1px solid #e8edf5;
	border-radius: 0;
	background: #fff;
	box-shadow: 0 8px 24px rgba(6, 21, 47, .035);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.woocommerce-shop ul.products li.product:hover,
.tax-product_cat ul.products li.product:hover,
.tax-product_tag ul.products li.product:hover,
body.search-results ul.products li.product:hover {
	z-index: 2;
	border-color: #c8d7f3;
	box-shadow: 0 24px 54px rgba(6, 21, 47, .13);
	transform: translateY(-7px);
}

.woocommerce-shop ul.products li.product figure,
.tax-product_cat ul.products li.product figure,
.tax-product_tag ul.products li.product figure,
body.search-results ul.products li.product figure {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1 / 1;
	margin: 0 0 17px;
	background: #f0f1ef;
}

.woocommerce-shop ul.products li.product .ct-media-container,
.tax-product_cat ul.products li.product .ct-media-container,
.tax-product_tag ul.products li.product .ct-media-container,
body.search-results ul.products li.product .ct-media-container {
	display: grid;
	width: 100%;
	height: 100%;
	padding: 24px;
	place-items: center;
}

.woocommerce-shop ul.products li.product .ct-media-container img,
.tax-product_cat ul.products li.product .ct-media-container img,
.tax-product_tag ul.products li.product .ct-media-container img,
body.search-results ul.products li.product .ct-media-container img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	max-height: none;
	padding: inherit;
	aspect-ratio: auto !important;
	object-fit: contain;
	filter: drop-shadow(0 13px 13px rgba(25, 43, 72, .11));
	transition: transform .32s ease;
}

.woocommerce-shop ul.products li.product:hover .ct-media-container img,
.tax-product_cat ul.products li.product:hover .ct-media-container img,
.tax-product_tag ul.products li.product:hover .ct-media-container img,
body.search-results ul.products li.product:hover .ct-media-container img {
	transform: scale(1.045);
}

.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
.tax-product_tag ul.products li.product .woocommerce-loop-product__title,
body.search-results ul.products li.product .woocommerce-loop-product__title {
	display: block;
	min-height: 48px;
	margin: 0 18px 9px;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 12px;
	font-weight: 750;
	line-height: 1.55;
	letter-spacing: 0;
}

.woocommerce-shop ul.products li.product .woocommerce-loop-product__title a,
.tax-product_cat ul.products li.product .woocommerce-loop-product__title a,
.tax-product_tag ul.products li.product .woocommerce-loop-product__title a,
body.search-results ul.products li.product .woocommerce-loop-product__title a {
	color: var(--et-ink);
}

.woocommerce-shop ul.products li.product .price,
.tax-product_cat ul.products li.product .price,
.tax-product_tag ul.products li.product .price,
body.search-results ul.products li.product .price {
	display: block;
	margin: 0 18px 15px;
	color: var(--et-ink);
	font-size: 15px;
	font-weight: 900;
}

ul.products li.product .price del {
	color: #94a3b8;
	font-size: 10px;
	font-weight: 600;
}

ul.products li.product .price ins {
	color: #e54d20;
	text-decoration: none;
}

ul.products li.product .onsale {
	top: 13px;
	left: 13px;
	z-index: 4;
	min-width: auto;
	padding: 6px 10px;
	border-radius: 6px;
	color: #fff;
	background: var(--et-orange);
	font-size: 9px;
	font-weight: 900;
	box-shadow: 0 8px 20px rgba(255, 104, 23, .25);
}

ul.products li.product .ct-woo-card-actions {
	margin: auto 18px 0;
}

ul.products li.product .ct-woo-card-actions .button {
	width: 100%;
	min-height: 42px;
	border-radius: 9px;
	color: #fff;
	background: var(--et-blue);
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .015em;
	box-shadow: 0 9px 20px rgba(6, 70, 215, .18);
}

ul.products li.product .ct-woo-card-actions .button:hover {
	color: #fff;
	background: var(--et-blue-dark);
	transform: translateY(-1px);
}

/* Filters */
.woocommerce-shop .ct-sidebar,
.tax-product_cat .ct-sidebar {
	padding: 24px;
	border: 1px solid var(--et-line);
	border-radius: 16px;
	background: rgba(255, 255, 255, .93);
	box-shadow: 0 15px 40px rgba(6, 21, 47, .055);
}

.woocommerce-shop .ct-sidebar .widget-title,
.tax-product_cat .ct-sidebar .widget-title {
	font-family: "Syne", sans-serif;
	font-size: 15px;
	letter-spacing: -.025em;
}

/* Single product */
.single-product .site-main {
	padding-block: 62px 88px;
}

.single-product div.product {
	overflow: hidden;
	border: 1px solid var(--et-line);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 24px 70px rgba(6, 21, 47, .08);
}

.single-product .product-entry-wrapper {
	padding: clamp(22px, 4vw, 48px);
}

.single-product .woocommerce-product-gallery {
	border-radius: 14px;
	background: #f1f3f2;
}

.single-product .woocommerce-product-gallery__image {
	display: grid;
	min-height: 430px;
	padding: 24px;
	place-items: center;
}

.single-product .woocommerce-product-gallery__image img {
	max-height: 560px;
	object-fit: contain;
}

.single-product .entry-summary .product_title {
	font-size: clamp(30px, 3.4vw, 48px);
	line-height: 1.03;
	letter-spacing: -.055em;
}

.single-product .entry-summary .price {
	color: var(--et-ink);
	font-size: 24px;
	font-weight: 900;
}

.single-product .entry-summary .price ins {
	color: #e54d20;
	text-decoration: none;
}

.single-product .entry-summary .woocommerce-product-details__short-description {
	color: var(--et-muted);
	font-size: 14px;
	line-height: 1.75;
}

.single-product form.cart .single_add_to_cart_button {
	min-height: 52px;
	padding-inline: 28px;
	border-radius: 11px;
	color: #fff;
	background: linear-gradient(135deg, var(--et-orange), #ff4e0e);
	font-size: 12px;
	font-weight: 900;
	box-shadow: 0 13px 28px rgba(255, 104, 23, .25);
}

.single-product form.cart .single_add_to_cart_button:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 17px 34px rgba(255, 104, 23, .32);
}

.single-product .woocommerce-tabs,
.single-product .related,
.single-product .up-sells {
	margin-top: 28px;
	padding: clamp(22px, 4vw, 42px);
	border: 1px solid var(--et-line);
	border-radius: 18px;
	background: #fff;
}

/* Cart, checkout and account */
.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-account .site-main {
	padding-block: 62px 88px;
}

.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce {
	padding: clamp(20px, 4vw, 42px);
	border: 1px solid var(--et-line);
	border-radius: 18px;
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 24px 70px rgba(6, 21, 47, .07);
}

.woocommerce table.shop_table,
.woocommerce .cart_totals,
.woocommerce-checkout #order_review {
	border-color: var(--et-line);
	border-radius: 13px;
	background: #fff;
}

.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select {
	border: 1px solid #d8e0ec;
	border-radius: 10px;
	background: #fff;
}

.woocommerce input.input-text:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
	border-color: #8eaff6;
	box-shadow: 0 0 0 4px rgba(6, 70, 215, .08);
}

.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	border-radius: 9px;
	font-weight: 850;
}

/* Footer */
body:not(.home) footer.ct-footer {
	color: #b9c7dc;
	background: var(--et-navy);
	--theme-text-color: #9fb1cb;
	--theme-link-initial-color: #b9c7dc;
	--theme-link-hover-color: #fff;
}

body:not(.home) footer.ct-footer [data-row] {
	border-color: rgba(255, 255, 255, .1);
	background: transparent;
}

body:not(.home) footer.ct-footer .widget-title {
	color: #fff;
	font-family: "Syne", sans-serif;
	letter-spacing: -.02em;
}

body:not(.home) footer.ct-footer .site-logo-container img {
	padding: 7px;
	border-radius: 13px;
	background: #fff;
}

/* Keep catalog and product content visible immediately on mobile.
   Entrance effects that start at opacity: 0 can remain paused until
   the first touch in iOS Safari or under script optimizers. */
body:not(.home) .site-main {
	opacity: 1;
}

@media (max-width: 999px) {
	body:not(.home) #header .ct-container {
		width: min(100% - 24px, 900px);
	}

	body:not(.home) #header .site-logo-container img {
		max-width: 52px;
		max-height: 52px;
	}

	.woocommerce-shop .site-main,
	.tax-product_cat .site-main,
	.single-product .site-main,
	.woocommerce-cart .site-main,
	.woocommerce-checkout .site-main,
	.woocommerce-account .site-main {
		padding-block: 40px 64px;
	}
}

@media (max-width: 689px) {
	body:not(.home) .hero-section .page-title {
		font-size: 36px;
	}

	.woocommerce-shop ul.products,
	.tax-product_cat ul.products,
	.tax-product_tag ul.products,
	body.search-results ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	.woocommerce-shop ul.products li.product,
	.tax-product_cat ul.products li.product,
	.tax-product_tag ul.products li.product,
	body.search-results ul.products li.product {
		padding-bottom: 12px;
	}

	.woocommerce-shop ul.products li.product figure,
	.tax-product_cat ul.products li.product figure,
	.tax-product_tag ul.products li.product figure,
	body.search-results ul.products li.product figure {
		margin-bottom: 11px;
	}

	.woocommerce-shop ul.products li.product .ct-media-container,
	.tax-product_cat ul.products li.product .ct-media-container,
	.tax-product_tag ul.products li.product .ct-media-container,
	body.search-results ul.products li.product .ct-media-container {
		padding: 13px;
	}

	.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
	.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
	.tax-product_tag ul.products li.product .woocommerce-loop-product__title,
	body.search-results ul.products li.product .woocommerce-loop-product__title {
		min-height: 44px;
		margin: 0 11px 7px;
		font-size: 10px;
		line-height: 1.5;
	}

	.woocommerce-shop ul.products li.product .price,
	.tax-product_cat ul.products li.product .price,
	.tax-product_tag ul.products li.product .price,
	body.search-results ul.products li.product .price {
		margin: 0 11px 10px;
		font-size: 12px;
	}

	ul.products li.product .ct-woo-card-actions {
		margin-inline: 11px;
	}

	ul.products li.product .ct-woo-card-actions .button {
		min-height: 38px;
		padding-inline: 8px;
		font-size: 9px;
	}

	.single-product div.product {
		border-radius: 14px;
	}

	.single-product .woocommerce-product-gallery__image {
		min-height: 300px;
		padding: 14px;
	}

	.single-product .entry-summary .product_title {
		font-size: 31px;
	}

	.woocommerce-cart .woocommerce,
	.woocommerce-checkout .woocommerce,
	.woocommerce-account .woocommerce {
		padding: 16px;
		border-radius: 13px;
	}
}

/* iOS Safari catalog repaint fix.
   Long product grids can stop painting when every card/image owns a filtered,
   isolated transform layer. Keep touch devices on a simple, stable paint path. */
@media (hover: none), (pointer: coarse) {
	.woocommerce-shop ul.products,
	.tax-product_cat ul.products,
	.tax-product_tag ul.products,
	body.search-results ul.products {
		isolation: auto !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		filter: none !important;
		contain: none !important;
		content-visibility: visible !important;
		will-change: auto !important;
	}

	.woocommerce-shop ul.products li.product,
	.tax-product_cat ul.products li.product,
	.tax-product_tag ul.products li.product,
	body.search-results ul.products li.product {
		isolation: auto !important;
		overflow: visible;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		filter: none !important;
		transition: none !important;
		contain: none !important;
		content-visibility: visible !important;
		contain-intrinsic-size: none !important;
		will-change: auto !important;
		-webkit-backface-visibility: visible !important;
		backface-visibility: visible !important;
	}

	.woocommerce-shop ul.products li.product:hover,
	.tax-product_cat ul.products li.product:hover,
	.tax-product_tag ul.products li.product:hover,
	body.search-results ul.products li.product:hover {
		z-index: auto;
		border-color: #e8edf5;
		box-shadow: 0 8px 24px rgba(6, 21, 47, .035);
		transform: none !important;
	}

	.woocommerce-shop ul.products li.product figure,
	.tax-product_cat ul.products li.product figure,
	.tax-product_tag ul.products li.product figure,
	body.search-results ul.products li.product figure,
	.woocommerce-shop ul.products li.product .ct-media-container,
	.tax-product_cat ul.products li.product .ct-media-container,
	.tax-product_tag ul.products li.product .ct-media-container,
	body.search-results ul.products li.product .ct-media-container {
		isolation: auto !important;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		filter: none !important;
		transition: none !important;
		contain: none !important;
		content-visibility: visible !important;
		will-change: auto !important;
	}

	.woocommerce-shop ul.products li.product .ct-media-container img,
	.tax-product_cat ul.products li.product .ct-media-container img,
	.tax-product_tag ul.products li.product .ct-media-container img,
	body.search-results ul.products li.product .ct-media-container img {
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		filter: none !important;
		transition: none !important;
		contain-intrinsic-size: none !important;
		will-change: auto !important;
	}

	.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
	.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
	.tax-product_tag ul.products li.product .woocommerce-loop-product__title,
	body.search-results ul.products li.product .woocommerce-loop-product__title,
	.woocommerce-shop ul.products li.product .price,
	.tax-product_cat ul.products li.product .price,
	.tax-product_tag ul.products li.product .price,
	body.search-results ul.products li.product .price,
	ul.products li.product .ct-woo-card-actions,
	ul.products li.product .ct-woo-card-actions .button {
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
		filter: none !important;
		transition: none !important;
		content-visibility: visible !important;
		will-change: auto !important;
	}
}
