/**
 * SunSpike shop & product styles
 * Migrated from Appearance → Additional CSS
 * Edit this file; deploy via blocksy-child folder only.
 */

/* Load stability: Elementor entrance anim starts invisible → layout "flash/乱".
   Keep structure visible; motion can still run on opacity/transform. */
.elementor-invisible {
	visibility: visible !important;
}
body.elementor-page .elementor-element[data-settings*="animation"] {
	opacity: 1;
}
/* Brand index slides — height follows content (no inflated reserve) */
#ss-home-bridge .ss-bridge-slides,
#ss-home-bridge .ss-bridge-slides--live {
	min-height: 0;
}
@media (max-width: 767px) {
	#ss-home-bridge .ss-bridge-slides__viewport {
		min-height: 120px;
	}
}

@media (min-width: 691px) and (max-width: 1000px) {
	.final-sale-home-cta [data-products] {
		--shop-columns: repeat(3, minmax(0, 1fr))
	}
}

.final-sale-home-cta .product {
	--theme-text-color: rgba(255, 255, 255, 0.5);
	--theme-heading-color: #fff;
}

.elementor-icon-box-content {
	margin-top: -4px;
}

.wpforms-container {
	margin-bottom: 0px;
}

.ct-widget-cover-block {
	padding: 40px;
}

.widget_top_rated_products .product_list_widget .price {
    display: none !important;
}


/* === SS HEADER === */
/*
 * Clean white bar (slab experiment reverted).
 * Nav: Source Sans 3 @ 500 — no bold; active via color + underline.
 */
.ct-header [data-row="middle"] {
	--height: 104px !important;
	background: #ffffff !important;
	box-shadow: inset 0 -1px 0 rgba(27, 50, 96, 0.08);
	overflow: visible;
}
.ct-header [data-row="middle"] .ct-container,
.ct-header [data-row="middle"] .ct-container-fluid {
	min-height: 104px;
	overflow: visible;
}
.ct-header [data-column="start"] {
	overflow: visible;
}
.ct-header [data-id="logo"] .site-logo-container,
.ct-header .site-logo-container {
	--logo-max-height: 104px !important;
	--logo-shrink-height: 104px !important;
	height: 104px !important;
	max-height: none !important;
	overflow: visible;
}
.ct-header .site-branding img,
.ct-header [data-id="logo"] img,
.ct-header .site-logo-container img,
.ct-header .site-logo-container svg,
.ct-header .site-logo-container picture {
	/* Fill the 104 bar; scale up so it reads like the larger mark without a taller header */
	max-height: 104px !important;
	height: 104px !important;
	width: auto !important;
	filter: none;
	transform: scale(1.12);
	transform-origin: left center;
}
.ct-header [data-id="menu"],
.ct-header [data-id="menu"] > ul,
.ct-header [data-id="menu"] > ul > li {
	--menu-items-spacing: 28px !important;
}
/* Override Blocksy header CSS vars (global.css) + hard properties */
.ct-header [data-id="menu"] > ul > li > a,
.ct-header [data-id="menu"] > ul > li > a.ct-menu-link,
.ct-header .header-menu-1 > ul > li > a.ct-menu-link {
	--theme-font-family: "Source Sans 3", "Source Sans Pro", Helvetica, Arial, sans-serif !important;
	--theme-font-weight: 500 !important;
	--theme-font-size: 15px !important;
	--theme-letter-spacing: 0.04em !important;
	--theme-text-transform: uppercase !important;
	--theme-line-height: 1.2 !important;
	--theme-link-initial-color: #435268 !important;
	--theme-link-hover-color: #1b3260 !important;
	--theme-link-active-color: #1b3260 !important;
	font-family: "Source Sans 3", "Source Sans Pro", Helvetica, Arial, sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
	padding-inline: 3px;
	padding-block: 10px;
	color: #435268 !important;
	box-shadow: inset 0 -2px 0 transparent;
	transition: color 0.15s ease, box-shadow 0.15s ease;
}
.ct-header [data-id="menu"] > ul > li > a:hover,
.ct-header [data-id="menu"] > ul > li > a.ct-menu-link:hover,
.ct-header .header-menu-1 > ul > li > a.ct-menu-link:hover {
	color: #1b3260 !important;
	font-weight: 500 !important;
	box-shadow: inset 0 -2px 0 #1b3260;
}
.ct-header [data-id="menu"] > ul > li.current-menu-item > a,
.ct-header [data-id="menu"] > ul > li.current_page_item > a,
.ct-header [data-id="menu"] > ul > li.current-menu-ancestor > a,
.ct-header [data-id="menu"] > ul > li.current-menu-item > a.ct-menu-link,
.ct-header [data-id="menu"] > ul > li.current_page_item > a.ct-menu-link,
.ct-header [data-id="menu"] > ul > li.current-menu-ancestor > a.ct-menu-link,
.ct-header .header-menu-1 > ul > li.current-menu-item > a.ct-menu-link,
.ct-header .header-menu-1 > ul > li.current_page_item > a.ct-menu-link,
.ct-header .header-menu-1 > ul > li.current-menu-ancestor > a.ct-menu-link {
	--theme-font-weight: 500 !important;
	--theme-link-initial-color: #1b3260 !important;
	color: #1b3260 !important;
	font-weight: 500 !important;
	box-shadow: inset 0 -2px 0 #2777f2;
}
.ct-header [data-id="menu"] > ul > li.menu-item-has-children > a.ct-menu-link .ct-toggle-dropdown-desktop-ghost,
.ct-header [data-id="menu"] > ul > li.menu-item-has-children > .ct-toggle-dropdown-desktop {
	color: inherit;
}
.ct-header [data-id="search"],
.ct-header [data-id="account"] {
	--theme-icon-size: 22px;
}
.ct-header [data-id="search"] {
	position: relative;
	margin-left: 18px !important;
	padding-left: 20px !important;
}
.ct-header [data-id="search"]::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 1px;
	height: 26px;
	transform: translateY(-50%);
	background: #e4eaf0;
}
/* Give the search trigger the same circular-button treatment as the phone
   icon so the two right-side actions read as one consistent icon language
   instead of one being a bare glyph and the other a bordered button. */
.ct-header [data-id="search"] button,
.ct-header button[data-id="search"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid #d5dee8;
	border-radius: 50%;
	background: #fff;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}
.ct-header [data-id="search"] button,
.ct-header [data-id="search"] .ct-button,
.ct-header [data-id="account"] a,
.ct-header [data-id="account"] .ct-button {
	color: #1b3260 !important;
}
.ct-header [data-id="search"] svg,
.ct-header [data-id="account"] svg {
	width: 17px !important;
	height: 17px !important;
}
.ct-header [data-id="search"]:hover button,
.ct-header button[data-id="search"]:hover,
.ct-header [data-id="search"]:hover .ct-button,
.ct-header [data-id="account"] a:hover {
	color: #1b3260 !important;
	border-color: #1b3260;
	background: #f4f7fa;
}
/* Account removed — customers don't use login */
.ct-header [data-id="account"] {
	display: none !important;
}
/* Support contact after search */
.ct-header [data-id="text"] {
	--margin: 0 0 0 18px !important;
}
.ct-header [data-id="text"] .entry-content {
	margin: 0 !important;
	padding: 0 !important;
}
.ct-header [data-id="text"] .entry-content > *:last-child {
	margin-bottom: 0 !important;
}
.ss-header-support {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	line-height: 1.15;
	text-decoration: none;
}
.ss-header-support__icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 1px solid #d8e0ea;
	border-radius: 50%;
	color: #1b3260;
	background: #fff;
	text-decoration: none !important;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}
.ss-header-support__icon:hover {
	color: #128c7e;
	border-color: #25d366;
	background: #f3fbf7;
	box-shadow: 0 0 0 3px rgba(37, 211, 102, 0.12);
}
.ss-header-support__icon svg {
	display: block;
	width: 16px;
	height: 16px;
}
.ss-header-support__text {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}
.ss-header-support__line {
	font-family: "Source Sans 3", "Source Sans Pro", Helvetica, Arial, sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em;
	text-decoration: none !important;
	color: #1b3260 !important;
	white-space: nowrap;
}
.ss-header-support__title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1b3260 !important;
}
.ss-header-support__mail {
	font-size: 12.5px !important;
	font-weight: 400 !important;
	color: #4d5d6d !important;
}
.ss-header-support__mail:hover {
	color: #1b3260 !important;
}
@media (max-width: 1100px) {
	.ct-header [data-id="text"] {
		--margin: 0 0 0 12px !important;
	}
	.ss-header-support__icon {
		width: 38px;
		height: 38px;
	}
}
.ct-header [data-menu] > ul > li {
	--menu-indicator-opacity: 0 !important;
	--menu-indicator-width: 0 !important;
	--menu-indicator-height: 0 !important;
}
.ct-header [data-menu] > ul > li > a.ct-menu-link::before,
.ct-header [data-menu] > ul > li > a.ct-menu-link::after {
	content: none !important;
	display: none !important;
	opacity: 0 !important;
}
@media (max-width: 999px) {
	.ct-header [data-row="middle"] {
		--height: 92px !important;
	}
	.ct-header [data-row="middle"] .ct-container,
	.ct-header [data-row="middle"] .ct-container-fluid {
		min-height: 92px;
	}
	.ct-header [data-id="logo"] .site-logo-container,
	.ct-header .site-logo-container {
		--logo-max-height: 92px !important;
		--logo-shrink-height: 92px !important;
		height: 92px !important;
		max-height: none !important;
	}
	.ct-header .site-branding img,
	.ct-header [data-id="logo"] img,
	.ct-header .site-logo-container img,
	.ct-header .site-logo-container svg,
	.ct-header .site-logo-container picture {
		max-height: 92px !important;
		height: 92px !important;
		transform: scale(1.1);
	}
	.ct-header .header-menu-1 > ul > li > a.ct-menu-link,
	.ct-header [data-id="menu"] > ul > li > a.ct-menu-link {
		font-size: 14px !important;
	}
}
@media (max-width: 689px) {
	.ct-header [data-row="middle"] {
		--height: 70px !important;
		background: #ffffff !important;
	}
	.ct-header [data-row="middle"] .ct-container,
	.ct-header [data-row="middle"] .ct-container-fluid {
		min-height: 70px;
	}
	.ct-header [data-id="logo"] .site-logo-container,
	.ct-header .site-logo-container {
		--logo-max-height: 70px !important;
		--logo-shrink-height: 70px !important;
		height: 70px !important;
		max-height: none !important;
	}
	.ct-header .site-branding img,
	.ct-header [data-id="logo"] img,
	.ct-header .site-logo-container img,
	.ct-header .site-logo-container svg,
	.ct-header .site-logo-container picture {
		max-height: 70px !important;
		height: 70px !important;
		filter: none;
		transform: scale(1.08);
	}
	.ct-header [data-id="search"] button,
	.ct-header [data-id="search"] .ct-button,
	.ct-header [data-id="account"] a,
	.ct-header [data-id="account"] .ct-button,
	.ct-header [data-id="trigger"] button,
	.ct-header .ct-header-trigger {
		color: #1b3260 !important;
	}
}
/* === SS HEADER END === */

/* ═══════════════════════════════
   FOOTER — custom ss-footer (Blocksy widgets hidden)
═══════════════════════════════ */
.ct-footer {
	display: none !important;
}
.ss-footer {
	position: relative;
	/* Dark site chrome — Contact stays in the white inventory chapter above */
	background: #0d1a37;
	color: rgba(255, 255, 255, 0.78);
	border-top: none;
	margin-top: 0;
}
.ss-footer::before {
	content: "";
	display: block;
	height: 2px;
	background: linear-gradient(90deg, rgba(39, 119, 242, 0.9), rgba(79, 209, 255, 0.5) 45%, rgba(39, 119, 242, 0.1));
}
.ss-footer a {
	color: rgba(255, 255, 255, 0.78);
	text-decoration: none;
	transition: color .15s ease;
}
.ss-footer a:hover {
	color: #fff;
}
.ss-footer__inner {
	max-width: 1290px;
	margin: 0 auto;
	padding: 48px 24px 0;
}
.ss-footer__grid {
	display: grid;
	grid-template-columns: minmax(260px, 1.55fr) repeat(3, minmax(140px, 1fr));
	gap: 40px 56px;
	align-items: start;
	padding-bottom: 44px;
}
.ss-footer__brand {
	padding-right: 8px;
}
.ss-footer__name {
	margin: 0 0 14px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #fff;
}
.ss-footer__tag {
	margin: 0 0 10px;
	max-width: 34em;
	font-size: 13.5px;
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.7);
}
.ss-footer__tag--2 {
	margin-bottom: 18px;
	color: rgba(255, 255, 255, 0.58);
}
/* Footer contact — vertical list (narrow col; no boxes) */
.ss-footer__ways {
	list-style: none;
	margin: 0;
	padding: 0;
}
.ss-footer__ways li {
	margin: 0 0 12px;
}
.ss-footer__ways li:last-child {
	margin-bottom: 0;
}
.ss-footer__ways a {
	display: flex;
	align-items: center;
	gap: 10px;
	color: rgba(255, 255, 255, 0.78) !important;
	text-decoration: none !important;
	line-height: 1.25;
}
.ss-footer__ways a:hover {
	color: #fff !important;
}
.ss-footer__ways-ico {
	flex: 0 0 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-top: 0;
	color: inherit;
	line-height: 0;
}
.ss-footer__ways-ico svg {
	display: block;
	width: 18px;
	height: 18px;
	overflow: visible;
}
.ss-footer__ways-txt {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.ss-footer__ways-name {
	font-size: 13.5px;
	font-weight: 400;
	color: inherit;
}
.ss-footer__ways-meta {
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.01em;
	color: rgba(255, 255, 255, 0.52);
	word-break: break-word;
}
.ss-footer__ways a:hover .ss-footer__ways-meta {
	color: rgba(255, 255, 255, 0.78);
}

/* Panel contact — About (white) / Buyback+Contact (navy) */
.ss-ways--panel {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
	margin: 0;
	padding: 0;
}
.ss-ways--panel .ss-ways__row {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	min-height: 56px;
	padding: 10px 14px 10px 12px;
	box-sizing: border-box;
	border: none;
	text-decoration: none !important;
	transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
.ss-ways--panel .ss-ways__glyph {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	line-height: 0;
}
.ss-ways--panel .ss-ways__glyph svg {
	display: block;
	width: 18px;
	height: 18px;
	overflow: visible;
}
.ss-ways--panel .ss-ways__copy {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}
.ss-ways--panel .ss-ways__name {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.2;
}
.ss-ways--panel .ss-ways__meta {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.25;
	word-break: break-word;
}
.ss-ways--panel .ss-ways__go {
	font-size: 16px;
	line-height: 1;
	transition: color 0.15s ease, transform 0.15s ease;
}

/* Dark navy bands (default panel): Buyback / Contact Direct lines */
.ss-ways--panel .ss-ways__row {
	border-left: 2px solid rgba(255, 255, 255, 0.22);
	background: rgba(255, 255, 255, 0.05);
	color: #fff !important;
}
.ss-ways--panel .ss-ways__row:hover {
	background: rgba(39, 119, 242, 0.18);
	border-left-color: #2777f2;
	transform: translateX(2px);
}
.ss-ways--panel .ss-ways__glyph {
	background: rgba(255, 255, 255, 0.08);
	color: #9ec4ff;
}
.ss-ways--panel .ss-ways__row:hover .ss-ways__glyph {
	background: rgba(39, 119, 242, 0.28);
	color: #fff;
}
.ss-ways--panel .ss-ways__name {
	color: #fff;
}
.ss-ways--panel .ss-ways__meta {
	color: rgba(226, 234, 250, 0.72);
}
.ss-ways--panel .ss-ways__go {
	color: rgba(255, 255, 255, 0.45);
}
.ss-ways--panel .ss-ways__row:hover .ss-ways__go {
	color: #fff;
	transform: translateX(3px);
}

/* About #about-bridge is navy (same as BUYBACK/Contact bands) — use default light-on-dark panel.
   Do not force navy-on-white here or channels look “empty” until hover. */

/* Contact — ensure hero / The desk photo survive Elementor CSS regen */
#contact-hero:not(.elementor-motion-effects-element-type-background),
#contact-hero > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-image: url("/wp-content/uploads/2026/08/contact-hero-office.png") !important;
	background-position: center center !important;
	background-size: cover !important;
	background-color: #1b3260 !important;
}
#contact-reach:not(.elementor-motion-effects-element-type-background),
#contact-reach > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-image: url("/wp-content/uploads/2026/08/contact-desk-band.png") !important;
	background-position: center right !important;
	background-size: cover !important;
	background-color: #1b3260 !important;
}
/* Left-readable navy wash — photo peeks on the right (match BUYBACK contact band) */
#contact-reach.e-con::before {
	background-image: linear-gradient(
		90deg,
		rgba(27, 50, 96, 0.96) 0%,
		rgba(27, 50, 96, 0.9) 42%,
		rgba(15, 31, 74, 0.72) 100%
	) !important;
	opacity: 0.92 !important;
}

.ss-footer__label {
	margin: 0 0 16px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #fff;
}
.ss-footer__col ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.ss-footer__col li {
	margin: 0 0 10px;
	font-size: 13.5px;
	line-height: 1.35;
}
.ss-footer__col li:last-child {
	margin-bottom: 0;
}
.ss-footer__links {
	margin: 0;
	padding: 0;
}
.ss-footer__links li {
	margin: 0 0 12px;
}
.ss-footer__links li:last-child {
	margin-bottom: 0;
}
.ss-footer__links a {
	color: rgba(255, 255, 255, 0.9);
	font-size: 14px;
	letter-spacing: 0.01em;
}
.ss-footer__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 22px;
	padding: 10px 14px;
	min-width: 148px;
	border: 1px solid #2777f2;
	background: #2777f2;
	color: #fff !important;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	transition: background-color .18s ease, border-color .18s ease;
}
.ss-footer__cta:hover {
	background: #1b3260;
	border-color: #fff;
}
.ss-footer__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 20px;
	padding: 16px 0 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.16);
	font-size: 12px;
	color: rgba(255, 255, 255, 0.45);
}
.ss-footer__addr,
.ss-footer__copy,
.ss-footer__meta {
	margin: 0;
}
.ss-footer__addr {
	flex: 1 1 240px;
	line-height: 1.45;
}
.ss-footer__meta a {
	color: rgba(255, 255, 255, 0.45);
}
.ss-footer__meta a:hover {
	color: #fff;
}
@media (max-width: 999px) {
	.ss-footer__grid {
		grid-template-columns: 1fr 1fr;
		gap: 32px 28px;
		padding-bottom: 36px;
	}
	.ss-footer__brand {
		grid-column: 1 / -1;
		padding-right: 0;
		padding-bottom: 20px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	}
}
@media (max-width: 689px) {
	.ss-footer__inner {
		padding: 36px 18px 0;
	}
	.ss-footer__grid {
		grid-template-columns: 1fr;
		gap: 28px;
		padding-bottom: 32px;
	}
	.ss-footer__brand {
		grid-column: auto;
		border-bottom: 0;
		padding-bottom: 0;
	}
	.ss-footer__cta {
		margin-top: 20px;
	}
	.ss-footer__bar {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ═══════════════════════════════
   HUSKY 筛选器样式
═══════════════════════════════ */
.woof_container_inner h4 {
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    margin-bottom: 8px !important;
}
.woof_products_top_panel_ul {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 10px 0 !important;
}
.woof_products_top_panel_ul li,
.woof_products_top_panel_ul li a {
    font-size: 12px !important;
    color: #555 !important;
    vertical-align: middle !important;
}
.woof_products_top_panel_ul li ul li:first-child {
    font-weight: 700 !important;
    color: #333 !important;
}
.woof_products_top_panel_ul li a span.woof_remove_ppi {
    font-size: 12px !important;
}
.woof_reset_button_2 {
    font-size: 12px !important;
    padding: 6px 12px !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    background: #fff !important;
    color: #333 !important;
    cursor: pointer !important;
    transition: border-color 0.2s, color 0.2s !important;
    line-height: 1.5 !important;
}
.woof_reset_button_2:hover {
    border-color: #3b6fd8 !important;
    color: #3b6fd8 !important;
    background: #fff !important;
}
.woof_btn_default {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    width: auto !important;
    height: auto !important;
    background-image: none !important;
    background-color: #fff !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    padding: 6px 14px !important;
    font-size: 12px !important;
    color: #333 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: border-color 0.2s, color 0.2s !important;
}
.woof_btn_default:hover {
    border-color: #3b6fd8 !important;
    color: #3b6fd8 !important;
}
.woof_btn_default.woof_show_auto_form::before {
    content: "Filter ▾" !important;
}
.woof_btn_default.woof_hide_auto_form::before {
    content: "Filter ▴" !important;
}

/* 展开收起箭头 chevron */
.woof_childs_list_opener span {
    all: unset !important;
}
.woof_childs_list_opener {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 16px !important;
    height: 16px !important;
    margin-left: 6px !important;
    vertical-align: middle !important;
    text-decoration: none !important;
    cursor: pointer !important;
}
.woof_childs_list_opener .woof_is_closed::after,
.woof_childs_list_opener .woof_is_opened::after {
    content: "" !important;
    display: inline-block !important;
    width: 7px !important;
    height: 7px !important;
    border-right: 1.5px solid #3b6fd8 !important;
    border-bottom: 1.5px solid #3b6fd8 !important;
    opacity: 0.6 !important;
    transition: opacity 0.2s !important;
}
.woof_childs_list_opener .woof_is_closed::after {
    transform: rotate(-45deg) !important;
}
.woof_childs_list_opener .woof_is_opened::after {
    transform: rotate(45deg) !important;
    margin-bottom: 3px !important;
}
.woof_childs_list_opener:hover .woof_is_closed::after,
.woof_childs_list_opener:hover .woof_is_opened::after {
    opacity: 1 !important;
}

/* === SS SHOP FILTERS === */
/* Hide redundant WOOF submit (autosubmit is on) */
.woocommerce .woof_submit_search_form_container,
.woocommerce .woof .woof_submit_search_form,
.woocommerce button.button.woof_submit_search_form {
	display: none !important;
}
/* Hide WOOF text search if it still appears */
.woocommerce .woof_text_search_container,
.woocommerce .woof_container_woof_text {
	display: none !important;
}
/* === SS SHOP SIDEBAR FILTER === */
.ct-sidebar {
	--ss-ink: #1b3260;
	--ss-accent: #2777f2;
	--ss-text: #2a3544;
	--ss-muted: #7a8494;
	--ss-line: #e6e8eb;
	--ss-bar: #123f96;
	--ss-bar-hover: #2777f2;
}
.ct-sidebar .ct-widget:not(:has(.ct-breadcrumbs)) + .ct-widget {
	margin-top: 28px;
	padding-top: 22px;
	border-top: 1px solid var(--ss-line);
}
.ct-sidebar .widget-title,
.ct-sidebar .wp-block-heading.widget-title,
.ct-sidebar .widget-title.has-medium-font-size {
	position: relative;
	display: block;
	color: var(--ss-ink) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase;
	line-height: 1.35;
	margin: 0 0 14px;
	padding: 0 0 10px;
}
.ct-sidebar .widget-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 28px;
	height: 2px;
	background: var(--ss-accent);
}

/* Search */
.ct-sidebar .ct-search-box,
.ct-sidebar .wp-block-search { margin: 0; }
.ct-sidebar .ct-search-form-inner,
.ct-sidebar .ct-pseudo-input {
	border-radius: 0 !important;
	background: #fff !important;
	border: 1px solid #d0d4da !important;
	box-shadow: none !important;
}
.ct-sidebar .ct-search-form:focus-within .ct-search-form-inner,
.ct-sidebar .ct-search-form:focus-within .ct-pseudo-input {
	border-color: var(--ss-accent) !important;
	box-shadow: 0 0 0 1px rgba(39, 119, 242, 0.2) !important;
}
.ct-sidebar .ct-search-form input[type="search"],
.ct-sidebar .wp-block-search__input,
.ct-sidebar input[type="search"] {
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 13.5px !important;
	color: var(--ss-ink) !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}
.ct-sidebar .ct-search-form input[type="search"]::placeholder {
	color: #9aa3b2 !important;
	opacity: 1;
}
.ct-sidebar .ct-search-form .ct-search-submit,
.ct-sidebar .ct-search-form button {
	color: var(--ss-ink) !important;
}
.ct-sidebar .ct-widget:has(.ct-search-form),
.ct-sidebar .ct-search-box,
.ct-sidebar .ct-search-form {
	position: relative;
	z-index: 8;
	overflow: visible;
}
.ct-sidebar .ct-search-form-inner,
.ct-sidebar .ct-pseudo-input {
	position: relative;
	z-index: 2;
}
.ct-sidebar .ct-search-results {
	z-index: 1;
	background: #fff;
	border: 1px solid #d0d4da;
	border-radius: 0;
	box-shadow: 0 14px 36px rgba(13, 26, 55, 0.16);
	--search-dropdown-background: #fff;
	--search-image-radius: 0;
	--items-padding: 10px 12px;
	--items-spacing: 10px;
	--search-image-size: 40px;
	--items-divider: 1px solid #e6e8eb;
}
.ct-sidebar .ct-search-results a {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: var(--ss-ink);
	line-height: 1.35;
}
.ct-sidebar .ct-search-results a:hover {
	color: var(--ss-accent);
	background: #fff;
}
.ct-sidebar .ct-search-more {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--ss-accent);
}

/* Blocksy Product Filter — same visual language as prior shop filters */
.ct-sidebar .ct-filter-widget-wrapper {
	gap: 0;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] {
	gap: 10px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	--theme-link-initial-color: var(--ss-text);
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item {
	position: relative;
	margin: 0;
	background: #fff;
	border-top: 1px solid var(--ss-line);
	border-right: 1px solid var(--ss-line);
	border-bottom: 1px solid var(--ss-line);
	border-left: 0;
	transition: background-color .18s ease, border-color .18s ease;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 2px;
	background: var(--ss-bar);
	pointer-events: none;
	z-index: 0;
	transition: background-color .18s ease, width .18s ease;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item:hover,
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item.active {
	background: #f7f8fa;
	border-top-color: #d5d8de;
	border-right-color: #d5d8de;
	border-bottom-color: #d5d8de;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item:hover::before,
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item.active::before {
	background: var(--ss-bar-hover);
	width: 3px;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-item-inner,
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-children {
	position: relative;
	z-index: 1;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-item-inner {
	padding: 8px 10px 8px 12px;
	gap: 6px;
}
.ct-sidebar .ss-filter-toggle,
.ct-sidebar .ct-filter-item-inner > .ct-expandable-trigger {
	appearance: none;
	-webkit-appearance: none;
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	margin: 0 0 0 auto;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--ss-ink);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}
.ct-sidebar .ss-filter-toggle svg,
.ct-sidebar .ct-filter-item-inner > .ct-expandable-trigger svg {
	width: 10px;
	height: 10px;
	display: block;
	transform: rotate(180deg);
	transition: transform .18s ease;
}
.ct-sidebar .ss-filter-toggle[aria-expanded="true"] svg,
.ct-sidebar .ct-filter-item-inner > .ct-expandable-trigger[aria-expanded="true"] svg {
	transform: rotate(0deg);
}
.ct-sidebar .ss-filter-toggle:hover,
.ct-sidebar .ct-filter-item-inner > .ct-expandable-trigger:hover {
	color: var(--ss-accent);
}
.ct-sidebar .ct-filter-children[data-behaviour="drop-down"][aria-hidden="true"] {
	display: none !important;
}
.ct-sidebar .ct-filter-children[data-behaviour="drop-down"][aria-hidden="false"] {
	display: flex;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-item-inner a {
	gap: 8px;
	align-items: center;
	color: var(--ss-ink);
	text-decoration: none;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-item-inner .ct-filter-label {
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1.3;
	color: var(--ss-ink);
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-item-inner a:hover .ct-filter-label,
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item.active > .ct-filter-item-inner .ct-filter-label,
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-item-inner a.active .ct-filter-label {
	color: var(--ss-accent);
	font-weight: 700;
}

/* Children */
/* Children: one thin nested rail (not parent-weight bars) */
.ct-sidebar .ct-filter-children {
	gap: 0 !important;
	margin: 0;
	padding: 4px 0 6px 11px;
	border-top: 1px solid var(--ss-line);
	border-left: 1px solid #9aa8ba;
	background: #fff;
}
.ct-sidebar .ct-filter-children > li:first-child {
	margin-top: 0 !important;
}
.ct-sidebar .ct-filter-children .ct-filter-item {
	position: relative;
	background: transparent !important;
	border: 0 !important;
	transition: background-color .18s ease;
}
.ct-sidebar .ct-filter-children .ct-filter-item::before {
	content: none !important;
}
.ct-sidebar .ct-filter-children .ct-filter-item:hover,
.ct-sidebar .ct-filter-children .ct-filter-item.active {
	background: #f7f8fa !important;
}
.ct-sidebar .ct-filter-children .ct-filter-item-inner {
	position: relative;
	z-index: 1;
	padding: 5px 10px 5px 8px;
}
.ct-sidebar .ct-filter-children .ct-filter-item-inner a {
	gap: 8px;
	color: var(--ss-text);
	text-decoration: none;
}
.ct-sidebar .ct-filter-children .ct-filter-label {
	font-size: 13px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--ss-text) !important;
	line-height: 1.35;
}
.ct-sidebar .ct-filter-children a:hover .ct-filter-label,
.ct-sidebar .ct-filter-children .ct-filter-item.active .ct-filter-label,
.ct-sidebar .ct-filter-children a.active .ct-filter-label {
	color: var(--ss-accent) !important;
	font-weight: 600 !important;
}

/* Count — quiet number, not pill */
.ct-sidebar .ct-filter-item-inner a > .ct-filter-count {
	min-width: 0 !important;
	height: auto !important;
	padding: 0 !important;
	margin-inline-start: auto !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	font-size: 11.5px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	color: var(--ss-muted) !important;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-item-inner a > .ct-filter-count {
	color: var(--ss-accent) !important;
	font-weight: 600 !important;
	font-size: 11px !important;
}
.ct-sidebar .ct-filter-item-inner a:is(:hover, .active) > .ct-filter-count,
.ct-sidebar .ct-filter-item.active .ct-filter-item-inner a > .ct-filter-count {
	color: var(--ss-accent) !important;
	background: transparent !important;
	border: 0 !important;
}

/* Square checkboxes */
.ct-sidebar .ct-checkbox {
	appearance: none !important;
	-webkit-appearance: none !important;
	width: 13px !important;
	height: 13px !important;
	min-width: 13px;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #7f8b9c !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	cursor: pointer;
	position: relative;
	flex-shrink: 0;
	top: 0 !important;
}
.ct-sidebar .ct-filter-widget[data-display-type="list"] > .ct-filter-item > .ct-filter-item-inner .ct-checkbox {
	border-color: var(--ss-ink) !important;
}
.ct-sidebar .ct-checkbox:hover {
	border-color: var(--ss-accent) !important;
}
.ct-sidebar .ct-checkbox:checked,
.ct-sidebar .ct-filter-item.active .ct-checkbox {
	background: var(--ss-accent) !important;
	border-color: var(--ss-accent) !important;
}
.ct-sidebar .ct-checkbox:checked::after,
.ct-sidebar .ct-filter-item.active .ct-checkbox::after {
	content: "";
	position: absolute;
	left: 3px;
	top: 0px;
	width: 3px;
	height: 6.5px;
	border: solid #fff;
	border-width: 0 1.5px 1.5px 0;
	transform: rotate(45deg);
}

/* Brand logos — keep small, don’t dominate */
.ct-sidebar .ct-filter-widget .ct-media-container {
	width: 22px !important;
	height: 22px;
	flex-shrink: 0;
}
.ct-sidebar .ct-filter-widget .ct-media-container img {
	max-height: 22px;
	width: auto;
	object-fit: contain;
}
.ct-sidebar .ct-filter-reset {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ss-ink);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.ct-sidebar .ct-filter-reset:hover {
	color: var(--ss-accent);
}
/* === SS SHOP SIDEBAR FILTER END === */

/* === SS SHOP FILTER TOP PANEL === */
.woof_products_top_panel {
	display: block;
	margin: 0 0 18px !important;
	padding: 0 0 14px !important;
	border-bottom: 1px solid #e6e8eb;
	line-height: 1.35 !important;
	overflow: visible !important;
	clear: both;
}
.woof_products_top_panel_ul {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 12px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.woof_products_top_panel_ul > li {
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.woof_products_top_panel_ul > li > ul {
	display: inline-flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.woof_products_top_panel_ul > li > ul > li {
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #7a8698;
	line-height: 1.2;
}
.woof_products_top_panel_ul > li > ul > li a {
	text-decoration: none !important;
	color: inherit;
}

/* Chip row: query first, Clear last */
.woof_products_top_panel_ul > li:has(.woof_reset_button_2) {
	order: 1;
	margin-left: 4px !important;
}

/* Clear — quiet text, not a shouty label */
.woof_products_top_panel .woof_reset_button_2 {
	appearance: none;
	-webkit-appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #5a6b7b !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.02em;
	text-transform: none !important;
	line-height: 1.2 !important;
	cursor: pointer;
	box-shadow: none !important;
	text-decoration: none !important;
	border-bottom: 1px solid transparent !important;
	transition: color .15s ease, border-color .15s ease;
}
.woof_products_top_panel .woof_reset_button_2:hover {
	color: #2777f2 !important;
	border-bottom-color: #2777f2 !important;
	background: transparent !important;
}

/* Selected chip — drop “By text:” jargon, keep the query */
.woof_products_top_panel a[data-tax="woof_text"] .woof_remove_ppi {
	font-size: 0 !important;
	letter-spacing: 0 !important;
}
.woof_products_top_panel a[data-tax="woof_text"] .woof_remove_ppi i {
	font-size: 13px !important;
	font-style: normal !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	color: inherit;
}
.woof_products_top_panel .woof_remove_ppi,
.woof_products_top_panel li span.woof_remove_ppi {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	margin: 0 !important;
	padding: 5px 6px 5px 10px !important;
	border: 1px solid #d0d4da !important;
	border-left: 2px solid #1b3260 !important;
	border-radius: 0 !important;
	background: #fff !important;
	background-image: none !important;
	color: #1b3260 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: 0;
	text-transform: none !important;
	line-height: 1.2 !important;
	cursor: pointer;
	transition: border-color .15s ease, color .15s ease;
}
.woof_products_top_panel .woof_remove_ppi::after {
	content: "×";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin: 0;
	border: 0;
	background: transparent;
	font-size: 15px;
	font-weight: 400;
	line-height: 1;
	color: #7a8694;
	transition: color .15s ease;
}
.woof_products_top_panel .woof_remove_ppi:hover,
.woof_products_top_panel li span.woof_remove_ppi:hover {
	background: #fff !important;
	background-image: none !important;
	border-color: #2777f2 !important;
	border-left-color: #2777f2 !important;
	color: #1b3260 !important;
}
.woof_products_top_panel .woof_remove_ppi:hover::after {
	background: transparent;
	border-color: transparent;
	color: #2777f2;
}

/*
 * Product search: query already lives in the hero + sidebar field.
 * A second chip row (“24 × Clear”) above count/sort is what made the band messy.
 * Hide the text-only panel; keep it if a real filter chip (brand/cat) is also on.
 */
.search.post-type-archive-product .woof_products_top_panel a[data-tax="woof_text"],
.search.post-type-archive-product .woof_products_top_panel li:has(> a[data-tax="woof_text"]) {
	display: none !important;
}
.search.post-type-archive-product .woof_products_top_panel:not(:has(a[data-tax]:not([data-tax="woof_text"]))) {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}
.search.post-type-archive-product .woo-listing-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 45px;
	margin: 0 0 18px !important;
}
.search.post-type-archive-product .woocommerce-result-count {
	margin: 0 !important;
	flex: 0 1 auto;
}
/* === SS SHOP HERO POTTERY === */
.post-type-archive-product .hero-section[data-type="type-2"],
.tax-product_cat .hero-section[data-type="type-2"] {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	--ss-phi: 1.618;
	--ss-phi-inv: 0.618;
	--min-height: 240px !important;
	--container-padding: 26px 0 !important;
	min-height: 248px !important;
}
.post-type-archive-product .hero-section[data-type="type-2"]::after,
.tax-product_cat .hero-section[data-type="type-2"]::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(
			90deg,
			rgba(27, 50, 96, 0.78) 0%,
			rgba(27, 50, 96, 0.62) 38%,
			rgba(27, 50, 96, 0.28) 68%,
			rgba(27, 50, 96, 0.18) 100%
		);
}

/* Soft seam under category (and shop) heroes into next band */
.tax-product_cat .hero-section[data-type="type-2"] {
	box-shadow: 0 12px 28px -18px rgba(27, 50, 96, 0.45);
}
.tax-product_cat .hero-section[data-type="type-2"]::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -14px;
	height: 14px;
	z-index: 3;
	pointer-events: none;
	background: linear-gradient(
		180deg,
		rgba(27, 50, 96, 0.22) 0%,
		rgba(27, 50, 96, 0.08) 45%,
		rgba(27, 50, 96, 0) 100%
	);
}

.post-type-archive-product .hero-section[data-type="type-2"] .entry-header,
.tax-product_cat .hero-section[data-type="type-2"] .entry-header {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	box-sizing: border-box;
	width: 100%;
	max-width: 1180px !important;
	margin-inline: auto !important;
	padding-inline: clamp(16px, 3vw, 40px) !important;
	text-align: left !important;
	gap: 0;
}

.post-type-archive-product .hero-section .ct-breadcrumbs,
.tax-product_cat .hero-section .ct-breadcrumbs {
	margin: 0 0 0.55rem;
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 0.08em;
}
.post-type-archive-product .hero-section .ct-breadcrumbs a,
.tax-product_cat .hero-section .ct-breadcrumbs a { color: #2777f2 !important; }

.post-type-archive-product .hero-section .page-title,
.tax-product_cat .hero-section .page-title {
	margin: 0;
	max-width: min(36rem, 100%);
	text-wrap: unset;
	font-size: clamp(26px, 2.8vw, 36px) !important;
	line-height: 1.22 !important;
	letter-spacing: 0.04em !important;
	font-weight: 700 !important;
	color: #fff !important;
}
.post-type-archive-product .hero-section .page-title {
	max-width: 40rem !important;
	line-height: 1.2 !important;
}
.post-type-archive-product .hero-section .page-description,
.tax-product_cat .hero-section .page-description {
	max-width: 34rem;
	margin: 0.55rem 0 0;
	color: rgba(255,255,255,0.88) !important;
	font-size: 14.5px !important;
	line-height: 1.5 !important;
}
.tax-product_cat .hero-section .page-description p { margin: 0; }

.post-type-archive-product .hero-section .ss-shop-hero-structured,
.tax-product_cat .hero-section .ss-shop-hero-structured { display: contents; }

.post-type-archive-product .hero-section .ss-shop-hero-divider,
.tax-product_cat .hero-section .ss-shop-hero-divider {
	height: 1px;
	width: 100%;
	max-width: 34rem;
	margin: 0.7rem 0 0.55rem;
	background: linear-gradient(90deg, rgba(255,255,255,.55) 0%, rgba(255,255,255,.18) 55%, transparent 100%);
}

.post-type-archive-product .hero-section .ss-shop-hero-features,
.tax-product_cat .hero-section .ss-shop-hero-features {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 1.25rem;
	margin: 0 0 0.7rem;
	max-width: 34rem;
	width: 100%;
}
.post-type-archive-product .hero-section .ss-shop-hero-feature,
.tax-product_cat .hero-section .ss-shop-hero-feature {
	display: flex;
	gap: 8px;
	align-items: flex-start;
}
.post-type-archive-product .hero-section .ss-shop-hero-feature__icon,
.tax-product_cat .hero-section .ss-shop-hero-feature__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 0;
	border: 1px solid rgba(255,255,255,.22);
	color: #fff;
	background: rgba(255,255,255,.06);
	flex-shrink: 0;
}
.post-type-archive-product .hero-section .ss-shop-hero-feature__text h3,
.tax-product_cat .hero-section .ss-shop-hero-feature__text h3 {
	margin: 0 0 2px;
	font-size: 12.5px;
	font-weight: 700;
	color: #fff;
}
.post-type-archive-product .hero-section .ss-shop-hero-feature__text p,
.tax-product_cat .hero-section .ss-shop-hero-feature__text p {
	margin: 0;
	font-size: 11.5px;
	line-height: 1.35;
	color: rgba(255,255,255,.74);
}

.post-type-archive-product .hero-section .ss-shop-hero-browse {
	display: inline-flex;
	align-items: center;
	padding: 8px 16px;
	border-radius: 0;
	text-decoration: none;
	background: #2777f2;
	color: #fff !important;
	font-weight: 700;
	font-size: 13px;
}
.post-type-archive-product .hero-section .ss-shop-hero-browse:hover { background: #1f63d6; }
.post-type-archive-product .hero-section .ss-shop-hero-categories { display: none !important; }

@media (max-width: 640px) {
	.post-type-archive-product .hero-section .ss-shop-hero-features,
	.tax-product_cat .hero-section .ss-shop-hero-features { grid-template-columns: 1fr; }
	.post-type-archive-product .hero-section[data-type="type-2"],
	.tax-product_cat .hero-section[data-type="type-2"] {
		--min-height: 200px !important;
		min-height: 200px !important;
		--container-padding: 18px 0 !important;
	}
}

/* === SS SHOP HERO POTTERY END === */


/* === SS SHOP CATEGORY STRIP === */
.ss-shop-cats {
	position: relative;
	background: #1b3260;
	border-bottom: none;
	/* φ rhythm: ~18→29 bottom, keep head calm */
	padding: 22px 0 26px;
	margin: 0;
	box-shadow: 0 12px 28px -18px rgba(27, 50, 96, 0.55);
}
.ss-shop-cats::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	/* 14 × φ ≈ 23 */
	bottom: -23px;
	height: 23px;
	pointer-events: none;
	background: linear-gradient(
		180deg,
		rgba(27, 50, 96, 0.2) 0%,
		rgba(27, 50, 96, 0.08) 48%,
		rgba(27, 50, 96, 0) 100%
	);
}
.ss-shop-cats__inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 clamp(16px, 3vw, 40px);
}
.ss-shop-cats__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 12px 24px;
	margin-bottom: 12px;
	flex-wrap: wrap;
}
.ss-shop-cats__head-text { display: flex; flex-direction: column; gap: 3px; }
.ss-shop-cats__kicker {
	margin: 0;
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #7eb0ff;
	font-weight: 700;
}
.ss-shop-cats__title {
	margin: 0;
	font-size: 18px;
	line-height: 1.2;
	color: #ffffff;
	font-weight: 700;
}
.ss-shop-cats__hint {
	margin: 0;
	max-width: 26rem;
	font-size: 12.5px;
	line-height: 1.4;
	color: rgba(255,255,255,0.72);
}
.ss-shop-cats__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}
.ss-shop-cats__card {
	display: grid;
	grid-template-columns: 0.72fr 1.618fr;
	align-items: stretch;
	height: 58px;
	min-height: 58px;
	text-decoration: none;
	border: 1px solid rgba(255,255,255,0.14);
	border-radius: 0;
	overflow: hidden;
	background: #ffffff;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.ss-shop-cats__card:hover {
	border-color: #2777f2;
	box-shadow: 0 8px 20px rgba(0,0,0,.18);
}
.ss-shop-cats__media {
	display: block;
	height: 100%;
	background: #f4f7fb;
	border-right: 1px solid #e7ebee;
}
.ss-shop-cats__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 6px 8px;
	background: transparent;
}
.ss-shop-cats__meta {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 1px;
	padding: 6px 12px;
	background: #fff;
}
.ss-shop-cats__name {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #1b3260;
}
.ss-shop-cats__count {
	font-size: 11px;
	color: #5a6b7b;
	white-space: nowrap;
}

.post-type-archive-product .ct-sidebar .ct-widget:has(.ct-breadcrumbs),
.tax-product_cat .ct-sidebar .ct-widget:has(.ct-breadcrumbs) {
	display: none !important;
}
.post-type-archive-product #main > .ct-container,
.tax-product_cat .ct-container[data-vertical-spacing],
.tax-product_cat #main > .ct-container {
	/* was 12; 12×φ² ≈ 31 → 34 for breath under navy band */
	padding-top: 34px !important;
}
.post-type-archive-product #ss-shop-toolbar,
.post-type-archive-product .ct-search-form {
	scroll-margin-top: 140px;
}

/*
 * Shop grid: sidebar + products share one CSS grid row. When the filter column
 * grows (e.g. CISCO under Brand & Series), the product column stretches but
 * pagination stayed directly under the grid — visually beside the sidebar tail.
 * Flex + margin-top:auto pins pagination to the content column baseline.
 */
.post-type-archive-product .ct-container[data-sidebar] > section,
.tax-product_cat .ct-container[data-sidebar] > section {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	align-self: stretch;
}
.post-type-archive-product .ct-container[data-sidebar] > section > .ct-pagination,
.post-type-archive-product .ct-container[data-sidebar] > section > .woocommerce-pagination,
.tax-product_cat .ct-container[data-sidebar] > section > .ct-pagination,
.tax-product_cat .ct-container[data-sidebar] > section > .woocommerce-pagination {
	margin-top: auto;
	padding-top: 28px;
	width: 100%;
	clear: both;
}

@media (max-width: 900px) {
	.ss-shop-cats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
	.ss-shop-cats__grid { grid-template-columns: 1fr; gap: 8px; }
	.ss-shop-cats__card { height: 52px; min-height: 52px; }
	.ss-shop-cats__title { font-size: 17px; }
	.ss-shop-cats__head { align-items: flex-start; }
}
.ss-shop-seam {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 0;
	width: 100%;
	pointer-events: none;
	scroll-margin-top: 120px;
}

/* === SS SHOP CATEGORY STRIP END === */

/* === SS SHOP PRODUCT CARDS === */
/*
  φ ≈ 1.618
  Measured problems (4-col ~200px cards):
  - card W/H ≈ 0.52 (too tall; portrait φ ≈ 0.618)
  - media:body ≈ 1:1 (should be ~φ:1)
  - title 3 lines @17px + 25px gaps inflate body
*/
.woocommerce ul.products {
	--ss-phi: 1.618;
	gap: 21px !important;
	row-gap: 28px !important;
}
.woocommerce ul.products li.product {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}
/* Square product thumbs — no frame/letterbox; images already 1:1 */
.woocommerce ul.products li.product figure {
	margin: 0 0 13px !important;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: transparent;
	border: 0;
}
.woocommerce ul.products li.product figure .ct-media-container,
.woocommerce ul.products li.product figure > a {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto !important;
	padding-bottom: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: hidden !important;
}
.woocommerce ul.products li.product figure img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
/* Hover → 2nd gallery image (Blocksy data-hover="swap") */
.woocommerce ul.products[data-hover="swap"] li.product .ct-swap {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	opacity: 0 !important;
	transition: opacity 0.35s ease !important;
	z-index: 1;
	pointer-events: none;
}
@media (hover: hover) {
	.woocommerce ul.products[data-hover="swap"] li.product .has-hover-effect:hover .ct-swap {
		opacity: 1 !important;
	}
	.woocommerce ul.products[data-hover="swap"] li.product .has-hover-effect:hover .ct-swap + img {
		opacity: 0 !important;
	}
}
/* Title: 2-line clamp, denser type */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: 0 !important;
	color: #1b3260 !important;
	margin: 0 0 8px !important;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	max-height: calc(1.35em * 2);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title a {
	color: inherit !important;
	text-decoration: none !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title a:hover {
	color: #2777f2 !important;
}
/* SKU / excerpt — secondary band */
.woocommerce ul.products li.product .entry-excerpt {
	margin: 0 0 8px !important;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 1.3;
	color: #7a8494;
}
.woocommerce ul.products li.product .entry-excerpt p {
	margin: 0 !important;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
/* Category meta — quiet label */
.woocommerce ul.products li.product .entry-meta {
	margin: 0 !important;
	padding-top: 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1.3;
	color: #7a8494;
	border-top: 0;
}
.woocommerce ul.products li.product .entry-meta a {
	color: #7a8494 !important;
	text-decoration: none !important;
	border-bottom: 0 !important;
	background-image: none !important;
}
.woocommerce ul.products li.product .entry-meta a::before,
.woocommerce ul.products li.product .entry-meta a::after {
	display: none !important;
}
.woocommerce ul.products li.product .entry-meta a:hover {
	color: #2777f2 !important;
}
.woocommerce ul.products li.product .star-rating,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .ct-woo-card-actions {
	margin-top: 0 !important;
	margin-bottom: 8px !important;
}
@media (max-width: 999px) {
	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 13.5px !important;
	}
}
/* === SS SHOP PRODUCT CARDS END === */
/* === SS SHOP QUICK VIEW === */
.woocommerce ul.products li.product figure {
	position: relative;
	overflow: hidden;
}
.woocommerce ul.products li.product .ct-woo-card-extra {
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	top: auto !important;
	bottom: 0 !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: stretch;
	justify-content: center;
	gap: 0;
	opacity: 0;
	transform: translateY(100%);
	pointer-events: none;
	transition: opacity .28s ease, transform .28s ease;
	z-index: 3;
	background: #1b3260;
	border: 0;
	box-shadow: none;
}
.woocommerce ul.products li.product:hover .ct-woo-card-extra,
.woocommerce ul.products li.product:focus-within .ct-woo-card-extra {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}
.woocommerce ul.products li.product .ct-woo-card-extra .ct-open-quick-view,
.woocommerce ul.products li.product .ct-woo-card-extra .ct-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	min-width: 0 !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 12px !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	color: #fff !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	cursor: pointer;
	transition: background-color .18s ease, color .18s ease;
}
.woocommerce ul.products li.product .ct-woo-card-extra .ct-open-quick-view:hover,
.woocommerce ul.products li.product .ct-woo-card-extra .ct-button:hover {
	color: #fff !important;
	background: #2777f2 !important;
}
.woocommerce ul.products li.product .ct-woo-card-extra .ct-open-quick-view svg,
.woocommerce ul.products li.product .ct-woo-card-extra .ct-button svg,
.woocommerce ul.products li.product .ct-woo-card-extra .ct-tooltip {
	display: none !important;
}
.woocommerce ul.products li.product .ct-woo-card-extra .ss-qv-label {
	display: inline-block;
}
@media (max-width: 689px) {
	.woocommerce ul.products li.product .ct-woo-card-extra {
		opacity: 1;
		transform: none;
		pointer-events: auto;
	}
}

/* Outer product prev/next — light ghost arrows, no heavy white tile */
.quick-view-modal [class*="ct-quick-view-nav"] {
	width: 36px !important;
	height: 36px !important;
	border-radius: 0 !important;
	background: transparent !important;
	border: 0 !important;
	color: rgba(255, 255, 255, 0.72) !important;
	opacity: 1 !important;
	transform: none !important;
	box-shadow: none !important;
	--theme-link-initial-color: rgba(255, 255, 255, 0.72);
	--theme-link-hover-color: #fff;
}
.quick-view-modal [class*="ct-quick-view-nav"]:hover {
	background: transparent !important;
	border: 0 !important;
	color: #fff !important;
}
.quick-view-modal [class*="ct-quick-view-nav"] svg {
	width: 18px !important;
	height: 12px !important;
	fill: currentColor;
}

/* Inner gallery arrows — no box, stronger glyph + soft outline */
.ct-quick-view-card .flexy > [class*="flexy-arrow"],
.ct-quick-view-card .flexy-container [class*="flexy-arrow"] {
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 52px !important;
	height: 76px !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #1b3260 !important;
	box-shadow: none !important;
	border: 0 !important;
	top: 50% !important;
	margin-top: -38px !important;
	z-index: 3 !important;
	transition: color .18s ease, transform .18s ease;
}
.ct-quick-view-card .flexy > [class*="flexy-arrow"]::before,
.ct-quick-view-card .flexy-container [class*="flexy-arrow"]::before {
	content: none !important;
	display: none !important;
}
.ct-quick-view-card .flexy > [class*="flexy-arrow"]:hover,
.ct-quick-view-card .flexy-container [class*="flexy-arrow"]:hover {
	background: transparent !important;
	border: 0 !important;
	color: #2777f2 !important;
}
.ct-quick-view-card .flexy > [class*="flexy-arrow"] svg,
.ct-quick-view-card .flexy-container [class*="flexy-arrow"] svg {
	width: 22px !important;
	height: 22px !important;
	stroke-width: 2.6 !important;
	filter:
		drop-shadow(0 0 1.5px rgba(255, 255, 255, 0.95))
		drop-shadow(0 0 3px rgba(255, 255, 255, 0.75))
		drop-shadow(0 1px 2px rgba(27, 50, 96, 0.18));
	pointer-events: none;
	transition: filter .18s ease, transform .18s ease;
}
.ct-quick-view-card .flexy > [class*="flexy-arrow"]:hover svg,
.ct-quick-view-card .flexy-container [class*="flexy-arrow"]:hover svg {
	filter:
		drop-shadow(0 0 1.5px rgba(255, 255, 255, 0.95))
		drop-shadow(0 0 3px rgba(255, 255, 255, 0.75))
		drop-shadow(0 1px 3px rgba(39, 119, 242, 0.28));
	transform: scale(1.08);
}
.ct-quick-view-card .flexy-arrow-prev { left: 2px !important; }
.ct-quick-view-card .flexy-arrow-next { right: 2px !important; }
.ct-quick-view-card .flexy-arrow-prev:hover { transform: translateX(-1px) !important; }
.ct-quick-view-card .flexy-arrow-next:hover { transform: translateX(1px) !important; }
.ct-quick-view-card .flexy-container[data-ss-gallery-count="1"] [class*="flexy-arrow"],
.ct-quick-view-card[data-ss-gallery-count="1"] [class*="flexy-arrow"] {
	display: none !important;
}

/*
 * QV gallery layout safety net (also enqueue flexy.min.css in functions.php).
 * Without Flexy CSS the track is display:block → slides stack → last frame white.
 */
.ct-quick-view-card .flexy-items {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 0;
	align-items: flex-start;
}
.ct-quick-view-card .flexy-items > .flexy-item,
.ct-quick-view-card .flexy-items > * {
	flex: 0 0 var(--flexy-item-width, 100%) !important;
	max-width: var(--flexy-item-width, 100%) !important;
	min-width: 0;
	order: 0 !important;
	transform: translate3d(calc(-100% * var(--current-item, 0)), 0, 0) !important;
}
.ct-quick-view-card .flexy-view {
	min-height: max(280px, var(--flexy-view-height, 280px)) !important;
	overflow: hidden;
	background: #ffffff;
}
.ct-quick-view-card [data-flexy=""] .flexy-items > .flexy-item:not(.flexy-item-is-visible),
.ct-quick-view-card [data-flexy=""] .flexy-items > *:not(.flexy-item-is-visible) {
	height: auto !important;
	min-height: var(--flexy-view-height, 280px) !important;
}
.ct-quick-view-card .flexy-items > .flexy-item {
	min-height: var(--flexy-view-height, 280px);
}
.ct-quick-view-card .flexy-items > .flexy-item .ct-media-container {
	min-height: inherit;
	background: #ffffff;
}
.ct-quick-view-card .flexy-items > .flexy-item .ct-media-container,
.ct-quick-view-card .flexy-items > .flexy-item img {
	width: 100%;
	height: auto;
	object-fit: contain;
}

/* Dots only — no photo-count badge */
.ct-quick-view-card .flexy-pills[data-type="circle"] {
	bottom: 12px !important;
	--flexyInitialPill: rgba(27, 50, 96, 0.28) !important;
	--flexyActivePill: #2777f2 !important;
}
.ct-quick-view-card .flexy-pills[data-type="circle"] span,
.ct-quick-view-card .flexy-pills[data-type="circle"] button,
.ct-quick-view-card .flexy-pills[data-type="circle"] a {
	width: 7px !important;
	height: 7px !important;
	border-radius: 0 !important;
}
.ct-quick-view-card .ss-qv-gallery-count {
	display: none !important;
}

/* Right summary:
   title
   short desc (reserved block)
   spacer
   meta lower
   CTA bottom
*/
.ct-quick-view-card .ct-quick-view-content {
	align-items: stretch;
}
.ct-quick-view-card .woocommerce-product-summary {
	display: flex !important;
	flex-direction: column;
	height: 100%;
	min-height: 100%;
	box-sizing: border-box;
	padding: 4px 0 0;
}
.ct-quick-view-card .entry-summary {
	display: flex !important;
	flex-direction: column;
	flex: 1 1 auto;
	height: 100%;
	min-height: 0;
	gap: 0;
}
.ct-quick-view-card .entry-summary .product_title {
	order: 1;
	margin: 0 0 14px !important;
	font-size: 22px !important;
	line-height: 1.25 !important;
}
.ct-quick-view-card .entry-summary .price,
.ct-quick-view-card .entry-summary .woocommerce-product-rating,
.ct-quick-view-card .entry-summary form.cart {
	order: 2;
}
.ct-quick-view-card .entry-summary .woocommerce-product-details__short-description {
	order: 3;
	margin: 0 !important;
	min-height: 4.8em;
	max-height: 7.2em;
	overflow: auto;
	font-size: 14px;
	line-height: 1.55;
	color: #4a5565;
}
.ct-quick-view-card .entry-summary .woocommerce-product-details__short-description p {
	margin: 0 !important;
}
.ct-quick-view-card .entry-summary .product_meta {
	order: 4;
	margin: auto 0 16px !important;
	padding-top: 14px;
	border-top: 1px solid #e6e8eb;
	font-size: 12px;
	line-height: 1.55;
	color: #7a8494;
}
.ct-quick-view-card .entry-summary .ct-quick-more {
	order: 5;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: 12px 16px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #1b3260 !important;
	color: #fff !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	line-height: 1.2 !important;
	box-shadow: none !important;
	transition: background-color .18s ease;
}
.ct-quick-view-card .entry-summary .ct-quick-more:hover {
	background: #2777f2 !important;
	color: #fff !important;
}
/* === SS SHOP QUICK VIEW END === */

/* === SS PRODUCT DETAIL === */
body.single-product .ct-container[data-sidebar],
body.single-product .ct-container {
	--sidebar-width: 22%;
	--sidebar-width-no-unit: 22;
}
body.single-product .product-entry-wrapper {
	gap: 28px !important;
	align-items: flex-start;
}
body.single-product .woocommerce-product-gallery {
	max-width: 100%;
}
body.single-product .woocommerce-product-gallery .ct-media-container,
body.single-product .woocommerce-product-gallery .flexy-container,
body.single-product .woocommerce-product-gallery .flexy-view {
	aspect-ratio: 1 / 1;
}
body.single-product .woocommerce-product-gallery img {
	object-fit: contain;
	background: #f4f6f8;
}
body.single-product .flexy-pills,
body.single-product .flexy-components {
	margin-top: 10px !important;
	gap: 8px !important;
}
body.single-product .flexy-pills img,
body.single-product .flexy-pills .ct-media-container {
	width: 56px !important;
	height: 56px !important;
}

/* Summary denser */
body.single-product .summary.entry-summary {
	padding-top: 0 !important;
}
body.single-product .summary .ct-breadcrumbs {
	margin: 0 0 10px !important;
	font-size: 12px;
	line-height: 1.4;
}
body.single-product .summary .product_title {
	margin: 0 0 10px !important;
	font-size: clamp(20px, 1.7vw, 26px) !important;
	line-height: 1.25 !important;
	letter-spacing: -0.01em;
}
body.single-product .summary .woocommerce-product-details__short-description {
	margin: 0 0 12px !important;
	font-size: 14px;
	line-height: 1.5;
	color: #4d5d6d;
}
body.single-product .summary .woocommerce-product-details__short-description p {
	margin: 0 !important;
}
body.single-product .summary .ct-product-divider {
	margin: 10px 0 !important;
}
body.single-product .summary .product_meta {
	margin: 0 !important;
	font-size: 12px;
	line-height: 1.55;
	color: #5b6b7c;
}
body.single-product .summary .product_meta > span {
	display: block;
	margin: 0 0 4px;
}

/* Tabs / long content */
body.single-product .woocommerce-tabs {
	margin-top: 28px !important;
}
body.single-product .woocommerce-tabs ul.tabs {
	margin: 0 0 16px !important;
	padding: 0 !important;
}
body.single-product .woocommerce-tabs .panel {
	margin: 0 !important;
	padding: 0 !important;
}
body.single-product .woocommerce-tabs .panel h2,
body.single-product .woocommerce-tabs .panel h3 {
	margin: 1.1em 0 0.45em !important;
	font-size: 18px !important;
	line-height: 1.3 !important;
}
body.single-product .woocommerce-tabs .panel h2:first-child,
body.single-product .woocommerce-tabs .panel h3:first-child {
	margin-top: 0 !important;
}
body.single-product .woocommerce-tabs .panel p,
body.single-product .woocommerce-tabs .panel li {
	font-size: 14px;
	line-height: 1.6;
}
body.single-product .woocommerce-tabs .panel table {
	font-size: 13px;
	margin: 0 0 16px !important;
}
body.single-product .related.products {
	margin-top: 36px !important;
}
body.single-product .related.products > h2 {
	font-size: 18px !important;
	margin: 0 0 14px !important;
}

/* Product tools rail */
body.single-product #sidebar .ss-pdp-tools {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
body.single-product #sidebar .ss-pdp-tools__card {
	padding: 14px 14px 12px;
	border: 1px solid #e3e7ec;
	background: #fff;
	border-radius: 0;
}
body.single-product #sidebar .ss-pdp-tools__card--cta {
	border-color: #1b3260;
	background: #f5f8fc;
}
body.single-product #sidebar .ss-pdp-tools__label {
	margin: 0 0 8px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #1b3260;
}
body.single-product #sidebar .ss-pdp-tools__hint {
	margin: 0 0 10px;
	font-size: 13px;
	line-height: 1.45;
	color: #4d5d6d;
}
body.single-product #sidebar .ss-pdp-tools__sku {
	margin: 0 0 12px;
	font-size: 12px;
	color: #5b6b7c;
}
body.single-product #sidebar .ss-pdp-tools__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin: 0 0 8px;
	padding: 11px 12px;
	background: #1b3260;
	color: #fff !important;
	text-decoration: none !important;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border: 1px solid #1b3260;
	transition: background-color .18s ease, color .18s ease;
}
body.single-product #sidebar .ss-pdp-tools__btn:hover {
	background: #2777f2;
	border-color: #2777f2;
	color: #fff !important;
}
body.single-product #sidebar .ss-pdp-tools__btn--ghost {
	background: transparent;
	color: #1b3260 !important;
}
body.single-product #sidebar .ss-pdp-tools__btn--ghost:hover {
	background: #1b3260;
	color: #fff !important;
}
body.single-product #sidebar .ss-pdp-tools__contacts {
	list-style: none;
	margin: 6px 0 0;
	padding: 0;
}
body.single-product #sidebar .ss-pdp-tools__contacts li {
	margin: 0 0 4px;
	font-size: 12px;
	line-height: 1.4;
}
body.single-product #sidebar .ss-pdp-tools__contacts a {
	color: #4d5d6d;
	text-decoration: none;
}
body.single-product #sidebar .ss-pdp-tools__contacts a:hover {
	color: #2777f2;
}
body.single-product #sidebar .ss-pdp-tools__search {
	display: flex;
	gap: 0;
	border: 1px solid #d5dbe3;
}
body.single-product #sidebar .ss-pdp-tools__search input[type="search"] {
	flex: 1;
	min-width: 0;
	margin: 0;
	padding: 9px 10px;
	border: 0;
	border-radius: 0;
	font-size: 13px;
	background: #fff;
}
body.single-product #sidebar .ss-pdp-tools__search button {
	margin: 0;
	padding: 0 12px;
	border: 0;
	border-left: 1px solid #d5dbe3;
	border-radius: 0;
	background: #1b3260;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
}
body.single-product #sidebar .ss-pdp-tools__cats,
body.single-product #sidebar .ss-pdp-tools__recent {
	list-style: none;
	margin: 0;
	padding: 0;
}
body.single-product #sidebar .ss-pdp-tools__cats li {
	margin: 0;
	border-top: 1px solid #eef1f4;
}
body.single-product #sidebar .ss-pdp-tools__cats li:first-child {
	border-top: 0;
}
body.single-product #sidebar .ss-pdp-tools__cats a {
	display: block;
	padding: 7px 0;
	font-size: 13px;
	color: #1b3260;
	text-decoration: none;
}
body.single-product #sidebar .ss-pdp-tools__cats a:hover {
	color: #2777f2;
}
body.single-product #sidebar .ss-pdp-tools__recent li {
	margin: 0 0 8px;
}
body.single-product #sidebar .ss-pdp-tools__recent li:last-child {
	margin-bottom: 0;
}
body.single-product #sidebar .ss-pdp-tools__recent a {
	display: flex;
	gap: 10px;
	align-items: center;
	text-decoration: none;
	color: inherit;
}
body.single-product #sidebar .ss-pdp-tools__recent-thumb {
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	overflow: hidden;
	background: #f4f6f8;
}
body.single-product #sidebar .ss-pdp-tools__recent-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
body.single-product #sidebar .ss-pdp-tools__recent-text {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
body.single-product #sidebar .ss-pdp-tools__recent-title {
	font-size: 12.5px;
	line-height: 1.35;
	color: #1b3260;
}
body.single-product #sidebar .ss-pdp-tools__recent-sku {
	font-size: 11px;
	color: #7a8494;
}
@media (max-width: 999px) {
	body.single-product #sidebar .ss-pdp-tools {
		margin-top: 20px;
	}
}

/* PDP denser gallery + summary fill */
body.single-product .product-entry-wrapper {
	gap: 22px !important;
}
body.single-product .woocommerce-product-gallery .flexy-container,
body.single-product .woocommerce-product-gallery .flexy-view,
body.single-product .woocommerce-product-gallery .flexy-items,
body.single-product .woocommerce-product-gallery .flexy-item,
body.single-product .woocommerce-product-gallery .ct-media-container {
	aspect-ratio: 1 / 1 !important;
	height: auto !important;
	max-height: none !important;
}
body.single-product .woocommerce-product-gallery .ct-media-container > img,
body.single-product .woocommerce-product-gallery .flexy-item img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	background: #f4f6f8;
}
body.single-product .summary .product_title {
	font-size: clamp(18px, 1.45vw, 22px) !important;
	line-height: 1.28 !important;
	margin: 0 0 8px !important;
}
body.single-product .summary .ss-pdp-summary-cta {
	margin: 14px 0 0;
	padding: 12px 14px;
	border: 1px solid #1b3260;
	background: #f5f8fc;
}
body.single-product .summary .ss-pdp-summary-cta__row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}
body.single-product .summary .ss-pdp-summary-cta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 14px;
	background: #1b3260;
	color: #fff !important;
	text-decoration: none !important;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border: 1px solid #1b3260;
}
body.single-product .summary .ss-pdp-summary-cta__btn:hover {
	background: #2777f2;
	border-color: #2777f2;
}
body.single-product .summary .ss-pdp-summary-cta__btn--ghost {
	background: #fff;
	color: #1b3260 !important;
}
body.single-product .summary .ss-pdp-summary-cta__btn--ghost:hover {
	background: #1b3260;
	color: #fff !important;
}
body.single-product .summary .ss-pdp-summary-cta__note {
	margin: 8px 0 0;
	font-size: 12px;
	line-height: 1.45;
	color: #5b6b7c;
}
/* === SS PRODUCT DETAIL END === */
/* === SS HOME START === */

/* —— Hero: layered stage — copy + floating product card —— */
#ss-home-hero.ss-home-hero,
#ss-home-hero.e-con,
#ss-home-hero > .e-con-inner {
	position: relative;
	overflow: visible;
	padding: 0 !important;
	margin: 0 !important;
	background: #060b16 !important;
	min-height: clamp(560px, calc(100vh - 104px), 860px);
}
#ss-home-hero .elementor-widget-html,
#ss-home-hero .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

#ss-home-brands.ss-home-brands,
#ss-home-brands.e-con,
#ss-home-brands > .e-con-inner {
	position: relative;
	overflow: hidden;
	padding: 0 !important;
	margin: 0 !important;
}
#ss-home-brands .elementor-widget-html,
#ss-home-brands .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

/* Elementor brands strip — flatten widget chrome onto HTML marquee rules */
#ss-home-brands.ss-home-brands,
#ss-home-brands.ss-brands,
#ss-home-brands.e-con,
#ss-home-brands > .e-con-inner {
	background: linear-gradient(180deg, #0a1224 0%, #0d1830 100%) !important;
	border-bottom: 1px solid rgba(148, 180, 255, 0.12);
}
#ss-home-brands .ss-brands__bar.e-con,
#ss-home-brands .ss-brands__bar > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: clamp(20px, 2.5vw, 36px) !important;
	min-height: 56px;
	width: 100%;
	max-width: none !important;
	padding: 14px 0 !important;
}
#ss-home-brands .ss-brands__label,
#ss-home-brands .ss-brands__label .elementor-heading-title {
	flex: none;
	margin: 0 !important;
	padding: 0 0 0 clamp(24px, 4vw, 64px) !important;
	font-family: "Source Sans 3", Arial, Helvetica, sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	line-height: 1.25 !important;
	color: rgba(168, 190, 230, 0.58) !important;
	white-space: nowrap;
}
#ss-home-brands .ss-brands__viewport.e-con,
#ss-home-brands .ss-brands__viewport > .e-con-inner {
	position: relative;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	width: auto !important;
	max-width: none !important;
	overflow: hidden !important;
	padding: 0 !important;
	-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 5%, #000 94%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0%, #000 5%, #000 94%, transparent 100%);
}
#ss-home-brands .ss-brands__track.e-con {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	width: max-content !important;
	max-width: none !important;
	padding: 0 !important;
	gap: 0 !important;
	/* Animate track when groups are direct children (no .e-con-inner) */
	animation: ss-brands-marquee 56s linear infinite !important;
	will-change: transform;
}
#ss-home-brands .ss-brands__track:has(> .e-con-inner) {
	animation: none !important;
	will-change: auto;
}
#ss-home-brands .ss-brands__track > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	width: max-content !important;
	max-width: none !important;
	padding: 0 !important;
	gap: 0 !important;
	animation: ss-brands-marquee 56s linear infinite;
	will-change: transform;
}
#ss-home-brands:hover .ss-brands__track.e-con,
#ss-home-brands:hover .ss-brands__track > .e-con-inner {
	animation-play-state: paused !important;
}
#ss-home-brands .ss-brands__group.e-con,
#ss-home-brands .ss-brands__group > .e-con-inner {
	display: flex !important;
	flex: none !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 40px !important;
	width: max-content !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 24px !important;
}
#ss-home-brands .ss-brands__item.e-con,
#ss-home-brands .ss-brands__item > .e-con-inner {
	display: inline-flex !important;
	flex: none !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0 !important;
	width: auto !important;
	max-width: none !important;
	height: 14px;
	margin: 0 !important;
	padding: 0 !important;
}
/* Band is fixed; each logo keeps its own optical w×h (not forced square / full-bleed) */
#ss-home-brands .ss-brands__mark.e-con,
#ss-home-brands .ss-brands__mark > .e-con-inner {
	display: inline-flex !important;
	flex: none !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	height: 14px !important;
	min-width: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 0;
}
#ss-home-brands .ss-brands__mark .elementor-widget-image,
#ss-home-brands .ss-brands__mark .elementor-widget-container {
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0;
}
#ss-home-brands .ss-brands__mark img {
	display: block !important;
	/* Keep catalog optical size — do NOT max-height-normalize every mark to the same H */
	object-fit: contain !important;
	opacity: 0.72;
	user-select: none;
	pointer-events: none;
}
#ss-home-brands .ss-brands__item:hover .ss-brands__mark img {
	opacity: 0.96;
}
@media (prefers-reduced-motion: reduce) {
	#ss-home-brands .ss-brands__track.e-con,
	#ss-home-brands .ss-brands__track > .e-con-inner {
		animation: none !important;
		flex-wrap: wrap !important;
		width: 100% !important;
	}
	#ss-home-brands .ss-brands__group.is-duplicate,
	#ss-home-brands #ss-brands-group-dup {
		display: none !important;
	}
	#ss-home-brands .ss-brands__viewport.e-con,
	#ss-home-brands .ss-brands__viewport > .e-con-inner {
		-webkit-mask-image: none;
		mask-image: none;
	}
}
@media (max-width: 700px) {
	#ss-home-brands .ss-brands__bar.e-con,
	#ss-home-brands .ss-brands__bar > .e-con-inner {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px !important;
		min-height: 0;
		padding: 16px 0 18px !important;
	}
	#ss-home-brands .ss-brands__label,
	#ss-home-brands .ss-brands__label .elementor-heading-title {
		padding: 0 20px !important;
		white-space: normal;
	}
	#ss-home-brands .ss-brands__group.e-con,
	#ss-home-brands .ss-brands__group > .e-con-inner {
		gap: 32px !important;
		padding: 0 20px !important;
	}
	#ss-home-brands .ss-brands__mark.e-con,
	#ss-home-brands .ss-brands__mark > .e-con-inner {
		height: 13px !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}
	#ss-home-brands .ss-brands__item.e-con,
	#ss-home-brands .ss-brands__item > .e-con-inner {
		height: 13px;
	}
}
#ss-home-paths.ss-home-paths,
#ss-home-paths.e-con {
	position: relative;
	overflow: hidden;
}
#ss-home-paths .elementor-widget-html,
#ss-home-paths .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

.ss-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	align-items: center;
	/* Fill exactly the first screen: viewport height minus the (non-transparent)
	   104px header, so the next section starts right at the fold on ordinary
	   screens. Floor keeps it usable on short viewports; ceiling stops the
	   content from looking marooned in a sea of empty space on very tall
	   monitors (2K/ultrawide) — a small gap there beats a huge dead zone. */
	min-height: clamp(560px, calc(100vh - 104px), 860px);
	background: radial-gradient(130% 100% at 12% -10%, #12285c 0%, #081226 42%, #05080f 100%);
	color: #fff;
}
@media (max-width: 999px) {
	.ss-hero {
		/* Blocksy header shrinks on smaller screens; keep the fold math in sync. */
		min-height: clamp(560px, calc(100vh - 92px), 900px);
	}
}
@media (max-width: 689px) {
	.ss-hero {
		min-height: clamp(520px, calc(100vh - 70px), 1000px);
	}
}

/* atmosphere */
.ss-hero__atmosphere {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}
.ss-hero__grid {
	position: absolute;
	inset: -1px;
	background-image:
		linear-gradient(rgba(148, 180, 255, 0.08) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 180, 255, 0.08) 1px, transparent 1px);
	background-size: 54px 54px;
	/* Widen with the content band so large monitors don’t leave flat
	   dark panels outside a narrow lit core. */
	-webkit-mask-image: radial-gradient(88% 82% at 48% 44%, #000 0%, transparent 88%);
	mask-image: radial-gradient(88% 82% at 48% 44%, #000 0%, transparent 88%);
}
.ss-hero__glow {
	position: absolute;
	border-radius: 50%;
	filter: blur(70px);
}
.ss-hero__glow--a {
	/* Scale with viewport width so the glow keeps real presence instead of
	   thinning out (as a % of the hero) on large/ultrawide monitors. */
	width: clamp(560px, 40vw, 900px);
	height: clamp(560px, 40vw, 900px);
	left: clamp(-220px, -8vw, -140px);
	top: -200px;
	background: radial-gradient(circle, rgba(39, 119, 242, 0.55), transparent 72%);
	animation: ss-hero-drift 17s ease-in-out infinite alternate;
}
.ss-hero__glow--b {
	width: clamp(500px, 34vw, 820px);
	height: clamp(500px, 34vw, 820px);
	right: clamp(-200px, -7vw, -120px);
	bottom: -220px;
	background: radial-gradient(circle, rgba(79, 209, 255, 0.32), transparent 72%);
	animation: ss-hero-drift 21s ease-in-out infinite alternate-reverse;
}
.ss-hero__glow--c {
	/* Third accent seated behind the spec card so the right-hand zone on
	   wide screens reads as deliberately lit, not merely empty. */
	width: clamp(360px, 30vw, 620px);
	height: clamp(360px, 30vw, 620px);
	right: clamp(-40px, 4vw, 120px);
	top: 46%;
	transform: translateY(-50%);
	background: radial-gradient(circle, rgba(67, 230, 164, 0.16), transparent 74%);
	animation: ss-hero-drift 24s ease-in-out infinite alternate;
}
@keyframes ss-hero-drift {
	from { transform: translate3d(0, 0, 0); }
	to { transform: translate3d(34px, 24px, 0); }
}
.ss-hero__noise {
	position: absolute;
	inset: 0;
	opacity: 0.05;
	mix-blend-mode: overlay;
	background-image: radial-gradient(#fff 0.6px, transparent 0.6px);
	background-size: 3px 3px;
}

/* layout — content width tracks viewport so large screens
   keep ~5–8vw side gutters instead of a fixed 1220px island */
.ss-hero__inner {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: min(1520px, calc(100vw - clamp(48px, 8vw, 160px)));
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr);
	align-items: center;
	gap: clamp(28px, 4.5vw, 72px);
	padding: clamp(32px, 5vh, 56px) clamp(24px, 4vw, 72px);
}

.ss-hero__copy {
	position: relative;
	animation: ss-hero-in 0.9s cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes ss-hero-in {
	from { opacity: 0; transform: translateY(18px); }
	to { opacity: 1; transform: translateY(0); }
}

.ss-hero__badge {
	display: inline-flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 8px;
	max-width: 100%;
	margin: 0 0 16px;
	padding: 7px 16px 7px 12px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #d3e3ff;
	background: linear-gradient(180deg, rgba(64, 138, 255, 0.22), rgba(39, 119, 242, 0.12));
	border: 1px solid rgba(148, 190, 255, 0.6);
	border-radius: 999px;
	box-shadow: 0 0 0 1px rgba(148, 190, 255, 0.12) inset, 0 8px 20px -10px rgba(39, 119, 242, 0.6);
	white-space: nowrap;
	box-sizing: border-box;
}
.ss-hero__badge span {
	flex: none;
	white-space: nowrap;
}
.ss-hero__dot {
	flex: none;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #43e6a4;
	box-shadow: 0 0 0 3px rgba(67, 230, 164, 0.25);
	animation: ss-hero-pulse 2.2s ease-in-out infinite;
}
@keyframes ss-hero-pulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.35; }
}

.ss-hero__title {
	margin: 0 0 12px;
	max-width: 16em;
	font-family: "Source Sans 3", "Source Sans Pro", Arial, Helvetica, sans-serif;
	font-size: clamp(28px, 2.6vw + 0.6rem, 50px);
	font-weight: 700;
	line-height: 1.14;
	letter-spacing: -0.01em;
	color: #fff;
	text-wrap: balance;
}
.ss-hero__title-sub {
	display: block;
	margin-top: 4px;
	font-size: clamp(16px, 1.6vw, 21px);
	font-weight: 600;
	letter-spacing: -0.005em;
	background: linear-gradient(96deg, #8fc1ff 0%, #4fd1ff 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.ss-hero__lede {
	margin: 0 0 18px;
	max-width: min(36rem, 100%);
	font-family: Arial, Helvetica, sans-serif;
	font-size: clamp(14px, 1.05vw + 0.15rem, 17px);
	line-height: 1.55;
	color: rgba(226, 234, 250, 0.82);
}
.ss-hero__caps {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 2px;
	margin: 0 0 6px;
}
.ss-hero__cap {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #9ec4ff;
	text-decoration: none;
	padding: 4px 8px;
	border-bottom: 1px solid transparent;
	transition: color 0.15s ease, border-color 0.15s ease;
}
.ss-hero__cap:hover {
	color: #fff;
	border-bottom-color: rgba(255, 255, 255, 0.5);
}
.ss-hero__cap-sep {
	color: rgba(255, 255, 255, 0.3);
	padding: 0 2px;
	user-select: none;
}
.ss-hero__caps-note {
	margin: 0 0 20px;
	padding-left: 9px;
	max-width: 28rem;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 1.45;
	color: rgba(200, 214, 240, 0.62);
}
.ss-hero__cta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 24px;
}
.ss-hero__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 26px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none !important;
	border: 1px solid transparent;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}
.ss-hero__btn--solid {
	background: #2777f2;
	color: #fff !important;
	box-shadow: 0 14px 34px rgba(39, 119, 242, 0.42);
}
.ss-hero__btn--solid:hover {
	background: #fff;
	color: #1b3260 !important;
	transform: translateY(-1px);
	box-shadow: 0 18px 40px rgba(39, 119, 242, 0.3);
}
.ss-hero__btn--ghost {
	background: rgba(255, 255, 255, 0.05);
	color: #fff !important;
	border-color: rgba(255, 255, 255, 0.5);
	backdrop-filter: blur(10px);
}
.ss-hero__btn--ghost:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: #fff;
	transform: translateY(-1px);
}

.ss-hero__stats {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(22px, 3.5vw, 40px);
	padding-top: 18px;
	margin-bottom: 10px;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.ss-hero__stat {
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.ss-hero__stat-num {
	font-family: "Source Sans 3", "Source Sans Pro", Arial, Helvetica, sans-serif;
	font-size: clamp(24px, 2.6vw, 30px);
	font-weight: 700;
	line-height: 1;
	color: #fff;
	white-space: nowrap;
}
.ss-hero__stat-label {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 1.3;
	color: rgba(210, 222, 245, 0.68);
	max-width: 11em;
}
.ss-hero__note {
	margin: 0;
	max-width: 34rem;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 1.5;
	color: rgba(180, 197, 230, 0.55);
}

/* visual: unified server spec card */
.ss-hero__visual {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: clamp(340px, 32vw, 480px);
}
.ss-hero__stage-glow {
	position: absolute;
	width: min(560px, 96%);
	height: min(560px, 96%);
	border-radius: 50%;
	background: radial-gradient(circle at 50% 32%, rgba(96, 200, 255, 0.38), rgba(39, 119, 242, 0.12) 52%, transparent 74%);
	filter: blur(6px);
	animation: ss-hero-orb 8s ease-in-out infinite;
}
@keyframes ss-hero-orb {
	0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
	50% { transform: translate3d(0, -10px, 0) scale(1.03); }
}

.ss-hero__spec {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	width: min(clamp(300px, 30vw, 440px), 100%);
	background: #0a1428;
	border: 1px solid rgba(140, 178, 255, 0.3);
	box-shadow: 0 30px 60px -16px rgba(0, 0, 0, 0.55), 0 50px 90px -24px rgba(15, 60, 160, 0.5);
	animation: ss-hero-float 7s ease-in-out infinite;
}
@keyframes ss-hero-float {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50% { transform: translate3d(0, -10px, 0); }
}
.ss-hero__spec::before,
.ss-hero__spec::after {
	content: "";
	position: absolute;
	width: 22px;
	height: 22px;
	pointer-events: none;
	z-index: 3;
}
.ss-hero__spec::before {
	left: 0;
	top: 0;
	border-top: 2px solid #4fd1ff;
	border-left: 2px solid #4fd1ff;
}
.ss-hero__spec::after {
	right: 0;
	bottom: 0;
	border-bottom: 2px solid #4fd1ff;
	border-right: 2px solid #4fd1ff;
}

.ss-hero__spec-media {
	position: relative;
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-bottom: 1px solid rgba(140, 178, 255, 0.22);
}
/* Fills the 4:3 stage when sunspike.css loads AFTER Elementor (normal enqueue). */
.ss-hero__spec-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 42%;
}
.ss-hero__spec-media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 55%, rgba(10, 20, 40, 0.9) 100%);
	pointer-events: none;
}
.ss-hero__spec-live {
	position: absolute;
	left: 14px;
	top: 14px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 6px 12px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #eaf1ff;
	background: rgba(6, 13, 28, 0.72);
	border: 1px solid rgba(148, 180, 255, 0.3);
	border-radius: 999px;
	backdrop-filter: blur(8px);
}
.ss-hero__spec-live .ss-hero__chip-dot {
	flex: none;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #43e6a4;
	box-shadow: 0 0 0 3px rgba(67, 230, 164, 0.25);
	animation: ss-hero-pulse 2.2s ease-in-out infinite;
}

.ss-hero__spec-info {
	position: relative;
	padding: 20px 22px 22px;
}
.ss-hero__spec-eyebrow {
	margin: 0 0 4px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #7ea9ff;
}
.ss-hero__spec-heading {
	margin: 0 0 14px;
	font-family: "Source Sans 3", "Source Sans Pro", Arial, Helvetica, sans-serif;
	font-size: 21px;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: #fff;
}
.ss-hero__spec-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 14px;
	margin: 0;
	padding: 14px 0 0;
	list-style: none;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.ss-hero__spec-list li {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
	color: rgba(226, 234, 250, 0.9);
}
.ss-hero__spec-check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 17px;
	height: 17px;
	flex: none;
	font-size: 9px;
	color: #08121f;
	background: #4fd1ff;
	border-radius: 50%;
	box-shadow: 0 0 0 4px rgba(79, 209, 255, 0.16);
}

@media (prefers-reduced-motion: reduce) {
	.ss-hero__glow,
	.ss-hero__stage-glow,
	.ss-hero__dot,
	.ss-hero__spec {
		animation: none !important;
	}
}

/* Two-column layout (grid fr-based) is kept all the way down to 681px so the
   hero height stays roughly constant across desktop/laptop/tablet — only
   switch to a stacked layout once there truly isn't room side-by-side. */
@media (max-width: 560px) {
	.ss-hero__inner {
		grid-template-columns: 1fr;
		padding: 28px 20px 32px;
		gap: 22px;
	}
	.ss-hero__copy {
		max-width: 100%;
	}
	.ss-hero__title {
		max-width: none;
	}
	.ss-hero__badge {
		font-size: 10.5px;
		letter-spacing: 0.07em;
		padding: 7px 14px 7px 11px;
	}
	.ss-hero__stats {
		gap: 14px 26px;
	}
	.ss-hero__stat-num {
		font-size: 23px;
	}
	.ss-hero__visual {
		height: auto;
		margin-top: 4px;
	}
	.ss-hero__spec {
		width: 100%;
	}
	.ss-hero__spec-media {
		aspect-ratio: 16 / 9;
	}
	.ss-hero__spec-info {
		padding: 18px 18px 20px;
	}
	.ss-hero__spec-heading {
		margin-bottom: 10px;
		font-size: 20px;
	}
	.ss-hero__spec-list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 6px;
		padding-top: 12px;
	}
	.ss-hero__spec-list li {
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
		font-size: 10px;
		line-height: 1.2;
	}
}

/* —— Brands marquee (under hero) —— */
/* One horizontal band: label left + logos fill the rest (avoids empty stack). */
.ss-brands {
	position: relative;
	width: 100%;
	padding: 0;
	background: linear-gradient(180deg, #0a1224 0%, #0d1830 100%);
	border-bottom: 1px solid rgba(148, 180, 255, 0.12);
	overflow: hidden;
}
.ss-brands__bar {
	display: flex;
	align-items: center;
	gap: clamp(20px, 2.5vw, 36px);
	min-height: 56px;
	padding: 14px 0;
}
.ss-brands__label {
	flex: none;
	margin: 0;
	padding: 0 0 0 clamp(24px, 4vw, 64px);
	max-width: none;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	line-height: 1.25;
	color: rgba(168, 190, 230, 0.58);
	white-space: nowrap;
}
.ss-brands__viewport {
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 5%, #000 94%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0%, #000 5%, #000 94%, transparent 100%);
}
.ss-brands__track {
	display: flex;
	width: max-content;
	align-items: center;
	animation: ss-brands-marquee 42s linear infinite;
	will-change: transform;
}
.ss-brands:hover .ss-brands__track {
	animation-play-state: paused;
}
.ss-brands__group {
	display: flex;
	flex: none;
	align-items: center;
	gap: 52px;
	margin: 0;
	padding: 0 28px;
	list-style: none;
}
.ss-brands__item {
	flex: none;
	display: inline-flex;
	align-items: center;
	gap: 0;
	margin: 0;
	padding: 0;
	height: 14px;
}
.ss-brands__mark {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: 14px;
	line-height: 0;
}
.ss-brands__mark img {
	display: block;
	width: auto;
	height: auto;
	object-fit: contain;
	opacity: 0.72;
	user-select: none;
	pointer-events: none;
}
.ss-brands__item:hover .ss-brands__mark img {
	opacity: 0.96;
}
.ss-brands__name {
	flex: none;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13.5px;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1;
	white-space: nowrap;
	color: inherit;
}
@keyframes ss-brands-marquee {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
	.ss-brands__track {
		animation: none;
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 0 24px 0 0;
		gap: 16px 32px;
	}
	.ss-brands__group[aria-hidden="true"] {
		display: none;
	}
	.ss-brands__viewport {
		-webkit-mask-image: none;
		mask-image: none;
	}
	.ss-brands__group {
		flex-wrap: wrap;
		justify-content: flex-start;
		gap: 16px 32px;
		padding: 0 24px 0 0;
	}
}
@media (max-width: 700px) {
	.ss-brands__bar {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		min-height: 0;
		padding: 16px 0 18px;
	}
	.ss-brands__label {
		padding: 0 20px;
		white-space: normal;
	}
	.ss-brands__group {
		gap: 40px;
		padding: 0 20px;
	}
	.ss-brands__mark,
	.ss-brands__mark img {
		width: auto;
		height: 15px;
		max-height: 15px;
	}
	.ss-brands__item {
		height: 15px;
		gap: 0;
	}
}

/* —— Offer block: inventory rail + dual paths —— */
.ss-home-offer-section {
	background: #ffffff !important;
	border-bottom: 1px solid #e8eef5;
}
.ss-home-offer-section.e-con,
.ss-home-offer-section > .e-con-inner {
	background: #ffffff !important;
}
.ss-offer {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 0;
}
.ss-offer__intro {
	margin: 0 0 clamp(28px, 3.5vw, 40px);
	max-width: 40rem;
}
.ss-offer__eyebrow {
	margin: 0 0 10px;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #1e3a8a;
}
.ss-offer__heading {
	margin: 0 0 12px;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: clamp(26px, 2.6vw, 34px);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.02em;
	text-transform: none;
	color: #1b3260;
}
.ss-offer__lede {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
	color: rgba(27, 50, 96, 0.62);
}
.ss-home-stock,
.ss-stock {
	--ss-stock-ink: #1b3260;
	--ss-stock-accent: #2777f2;
	--ss-stock-muted: rgba(27, 50, 96, 0.55);
	--ss-stock-line: #9aabbe;
	--ss-stock-inset: 22px;
	--ss-stock-gap: 18px;
}
#ss-home-stock,
#ss-home-stock.e-con,
#ss-home-stock > .e-con-inner {
	background: #ffffff !important;
}
#ss-home-stock.e-con,
#ss-home-stock > .e-con-inner {
	--gap: 28px !important;
	--row-gap: 28px !important;
	gap: 28px !important;
}
#ss-home-stock .elementor-widget-html,
#ss-home-stock .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
}
.ss-stock__head {
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
}
.ss-stock__eyebrow {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(27, 50, 96, 0.5);
}
.ss-stock__title-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px 28px;
	flex-wrap: wrap;
}
.ss-stock__title {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: clamp(24px, 2.4vw, 30px);
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.12;
	color: var(--ss-stock-ink);
}
.ss-stock__cta {
	flex: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--ss-stock-accent) !important;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none !important;
	white-space: nowrap;
	transition: color 0.2s ease;
}
.ss-stock__cta::after {
	content: "→";
	font-size: 14px;
	transition: transform 0.2s ease;
}
.ss-stock__cta:hover {
	color: var(--ss-stock-ink) !important;
}
.ss-stock__cta:hover::after {
	transform: translateX(3px);
}
.ss-stock__lede {
	margin: 0;
	max-width: 36rem;
	font-size: 14px;
	line-height: 1.55;
	color: var(--ss-stock-muted);
}

/* Stacked panel: Category above, Featured below — stroke + corner accents, no cell grid */
.ss-home-stock .ss-stock__panel,
.ss-home-stock .ss-stock__panel.e-con {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0 !important;
	border: 1px solid var(--ss-stock-line);
	background: #ffffff;
	--gap: 0px !important;
	--row-gap: 0px !important;
	gap: 0 !important;
}
.ss-home-stock .ss-stock__panel::before,
.ss-home-stock .ss-stock__panel::after {
	content: "";
	position: absolute;
	width: 18px;
	height: 18px;
	pointer-events: none;
	z-index: 2;
}
.ss-home-stock .ss-stock__panel::before {
	top: -1px;
	left: -1px;
	border-top: 2px solid var(--ss-stock-accent);
	border-left: 2px solid var(--ss-stock-accent);
}
.ss-home-stock .ss-stock__panel::after {
	right: -1px;
	bottom: -1px;
	border-right: 2px solid var(--ss-stock-ink);
	border-bottom: 2px solid var(--ss-stock-ink);
}
.ss-home-stock .ss-stock__panel > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	--gap: 0px !important;
}
.ss-home-stock .ss-stock__panel > .e-con-inner > .elementor-element {
	margin: 0 !important;
	width: 100% !important;
}

.ss-stock__band {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 22px var(--ss-stock-inset) 10px;
	background: #ffffff;
}
.ss-stock__band-label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(27, 50, 96, 0.55);
}
.ss-stock__band-label::after {
	content: "";
	display: block;
	width: 28px;
	height: 2px;
	background: var(--ss-stock-accent);
	flex: none;
}
.ss-stock__cats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--ss-stock-gap);
	margin: 0;
	border: 0;
	background: transparent;
}
.ss-stock__cat {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-width: 0;
	padding: 0 0 16px;
	border: 0;
	text-decoration: none !important;
	color: inherit;
	outline: none;
	background: transparent;
}
/* Calm separators — feathered, not hard cell walls */
.ss-stock__cat + .ss-stock__cat::before {
	content: "";
	position: absolute;
	left: calc(var(--ss-stock-gap) / -2);
	top: 12px;
	bottom: 20px;
	width: 1px;
	background: linear-gradient(
		180deg,
		transparent 0%,
		rgba(154, 171, 190, 0.55) 18%,
		rgba(154, 171, 190, 0.75) 50%,
		rgba(154, 171, 190, 0.55) 82%,
		transparent 100%
	);
	pointer-events: none;
}
.ss-stock__media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 112px;
	padding: 8px 8px 12px;
	overflow: hidden;
	background: transparent;
}
/* Soft resting floor — feathered ray, light only */
.ss-stock__media::before {
	content: "";
	position: absolute;
	left: 12%;
	right: 12%;
	bottom: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(154, 171, 190, 0.55) 50%,
		transparent 100%
	);
	transform-origin: center;
	transition:
		left 0.4s cubic-bezier(0.22, 1, 0.36, 1),
		right 0.4s cubic-bezier(0.22, 1, 0.36, 1),
		background 0.3s ease;
	pointer-events: none;
	z-index: 2;
}
.ss-stock__media img {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	transform: translateZ(0);
	transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.ss-stock__meta {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding: 0 2px;
}
.ss-stock__num {
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: clamp(24px, 2.2vw, 30px);
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1;
	color: var(--ss-stock-ink);
	font-variant-numeric: tabular-nums;
	transition: color 0.25s ease;
}
.ss-stock__name {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--ss-stock-ink);
	transition: color 0.25s ease;
}
.ss-stock__name::after {
	content: "→";
	font-size: 13px;
	opacity: 0;
	transform: translateX(-4px);
	transition: opacity 0.28s ease, transform 0.28s ease;
	color: var(--ss-stock-accent);
}
.ss-stock__tags {
	font-size: 12px;
	line-height: 1.35;
	color: var(--ss-stock-muted);
	transition: color 0.25s ease;
}
/* Hover: light stays on the ray — no image bloom / heavy glow */
/* Hover: crisp center→sides ray — no glow haze */
.ss-stock__cat:hover .ss-stock__media::before,
.ss-stock__cat:focus-visible .ss-stock__media::before {
	left: 0;
	right: 0;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(39, 119, 242, 0.15) 22%,
		#2777f2 50%,
		rgba(39, 119, 242, 0.15) 78%,
		transparent 100%
	);
}
.ss-stock__cat:hover .ss-stock__media img,
.ss-stock__cat:focus-visible .ss-stock__media img {
	transform: translateY(-3px);
}
.ss-stock__cat:hover .ss-stock__num,
.ss-stock__cat:focus-visible .ss-stock__num,
.ss-stock__cat:hover .ss-stock__name,
.ss-stock__cat:focus-visible .ss-stock__name {
	color: var(--ss-stock-accent);
}
.ss-stock__cat:hover .ss-stock__name::after,
.ss-stock__cat:focus-visible .ss-stock__name::after {
	opacity: 1;
	transform: translateX(0);
}
.ss-stock__cat:hover .ss-stock__tags,
.ss-stock__cat:focus-visible .ss-stock__tags {
	color: rgba(27, 50, 96, 0.68);
}

/* Featured continues inside the same panel */
.ss-home-stock .ss-stock-featured {
	position: relative;
	margin: 0 !important;
	padding: 20px var(--ss-stock-inset) 14px !important;
	border: 0 !important;
	border-top: 0 !important;
	background: #ffffff !important;
	box-shadow: none;
}
.ss-home-stock .ss-stock-featured::before {
	content: "";
	position: absolute;
	top: 0;
	left: var(--ss-stock-inset);
	right: var(--ss-stock-inset);
	height: 1px;
	transform: none;
	width: auto;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(154, 171, 190, 0.55) 18%,
		rgba(39, 119, 242, 0.85) 50%,
		rgba(154, 171, 190, 0.55) 82%,
		transparent 100%
	);
}
.ss-home-stock .ss-stock-featured,
.ss-home-stock .ss-stock-featured.e-con,
.ss-home-stock .ss-stock-featured > .e-con-inner {
	--gap: 14px !important;
	--row-gap: 14px !important;
	gap: 14px !important;
}
.ss-home-stock .ss-stock-featured__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 0 !important;
	background: transparent;
	border: 0 !important;
}
.ss-home-stock .ss-stock-featured__head .elementor-heading-title {
	margin: 0;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: rgba(27, 50, 96, 0.55) !important;
}
.ss-home-stock .ss-stock-featured__cta .elementor-button {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--ss-stock-accent) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	transition: color 0.2s ease, letter-spacing 0.2s ease !important;
}
.ss-home-stock .ss-stock-featured__cta .elementor-button:hover {
	color: var(--ss-stock-ink) !important;
	background: transparent !important;
}
.ss-home-stock .ss-stock-featured .elementor-widget-shortcode,
.ss-home-stock .ss-stock-featured .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}
body.home #ss-home-stock ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--ss-stock-gap) !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	border: 0 !important;
	background: transparent;
}
body.home #ss-home-stock ul.products::before,
body.home #ss-home-stock ul.products::after {
	display: none !important;
	content: none !important;
}
body.home #ss-home-stock ul.products > li.product {
	position: relative !important;
	width: auto !important;
	margin: 0 !important;
	padding: 8px 4px 42px !important;
	float: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: hidden;
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
/* Soft resting ray → crisp center-out light on hover */
body.home #ss-home-stock ul.products > li.product::before {
	content: "";
	position: absolute;
	left: 14%;
	right: 14%;
	bottom: 40px;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(154, 171, 190, 0.55) 50%,
		transparent 100%
	);
	transform-origin: center;
	transition:
		left 0.4s cubic-bezier(0.22, 1, 0.36, 1),
		right 0.4s cubic-bezier(0.22, 1, 0.36, 1),
		background 0.3s ease;
	pointer-events: none;
	z-index: 1;
}
body.home #ss-home-stock ul.products > li.product:hover,
body.home #ss-home-stock ul.products > li.product:focus-within {
	transform: translateY(-3px);
}
body.home #ss-home-stock ul.products > li.product:hover::before,
body.home #ss-home-stock ul.products > li.product:focus-within::before {
	left: 0;
	right: 0;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(39, 119, 242, 0.2) 18%,
		#2777f2 50%,
		rgba(39, 119, 242, 0.2) 82%,
		transparent 100%
	);
}
body.home #ss-home-stock ul.products > li.product a {
	text-decoration: none !important;
}
body.home #ss-home-stock ul.products > li.product .ct-media-container,
body.home #ss-home-stock ul.products > li.product figure,
body.home #ss-home-stock ul.products > li.product .ct-image-container {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 132px !important;
	max-height: 132px !important;
	aspect-ratio: auto !important;
	margin: 0 auto 10px !important;
	overflow: hidden !important;
	background: transparent !important;
}
body.home #ss-home-stock ul.products > li.product .ct-media-container img,
body.home #ss-home-stock ul.products > li.product img {
	display: block !important;
	width: auto !important;
	max-width: 100% !important;
	height: 100% !important;
	max-height: 132px !important;
	margin: 0 auto !important;
	object-fit: contain !important;
	object-position: center !important;
	transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease !important;
}
body.home #ss-home-stock ul.products[data-hover="swap"] li.product .ct-swap {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	max-height: none !important;
	object-fit: contain !important;
	opacity: 0 !important;
	z-index: 1;
	transform: none !important;
	pointer-events: none;
}
@media (hover: hover) {
	body.home #ss-home-stock ul.products[data-hover="swap"] li.product .has-hover-effect:hover .ct-swap {
		opacity: 1 !important;
	}
	body.home #ss-home-stock ul.products[data-hover="swap"] li.product .has-hover-effect:hover .ct-swap + img {
		opacity: 0 !important;
		transform: none !important;
	}
}
body.home #ss-home-stock ul.products > li.product:hover .ct-media-container img:not(.ct-swap),
body.home #ss-home-stock ul.products > li.product:hover img:not(.ct-swap) {
	transform: translateY(-3px);
}
body.home #ss-home-stock ul.products > li.product .woocommerce-loop-product__title,
body.home #ss-home-stock ul.products > li.product .ct-woo-card-title {
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	color: var(--ss-stock-ink) !important;
	margin: 0 0 2px !important;
}
body.home #ss-home-stock ul.products > li.product .price {
	font-size: 12px !important;
	color: var(--ss-stock-muted) !important;
	margin: 0 !important;
}
body.home #ss-home-stock ul.products > li.product .button,
body.home #ss-home-stock ul.products > li.product .added_to_cart,
body.home #ss-home-stock ul.products > li.product .entry-meta,
body.home #ss-home-stock ul.products > li.product .entry-excerpt {
	display: none !important;
}
body.home #ss-home-stock ul.products > li.product .ct-woo-card-extra {
	display: flex !important;
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	top: auto !important;
	bottom: 0 !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	align-items: stretch;
	justify-content: center;
	opacity: 0;
	transform: translateY(100%);
	pointer-events: none;
	transition: opacity 0.28s ease, transform 0.28s ease;
	z-index: 3;
	background: var(--ss-stock-ink);
}
body.home #ss-home-stock ul.products > li.product:hover .ct-woo-card-extra,
body.home #ss-home-stock ul.products > li.product:focus-within .ct-woo-card-extra {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}
body.home #ss-home-stock ul.products > li.product .ct-open-quick-view {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	min-height: 36px;
	padding: 0 10px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
body.home #ss-home-stock ul.products > li.product .ct-open-quick-view:hover {
	background: var(--ss-stock-accent) !important;
	color: #ffffff !important;
}
body.home #ss-home-stock ul.products > li.product .ct-open-quick-view svg,
body.home #ss-home-stock ul.products > li.product .ct-open-quick-view .ct-button-loader {
	display: none !important;
}

@media (max-width: 999px) {
	.ss-stock__cats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px 14px;
	}
	.ss-stock__cat + .ss-stock__cat::before {
		display: none;
	}
	.ss-stock__cat:nth-child(2n)::before {
		content: "";
		display: block;
		position: absolute;
		left: calc(var(--ss-stock-gap) / -2);
		top: 12px;
		bottom: 20px;
		width: 1px;
		background: linear-gradient(
			180deg,
			transparent 0%,
			rgba(154, 171, 190, 0.55) 18%,
			rgba(154, 171, 190, 0.75) 50%,
			rgba(154, 171, 190, 0.55) 82%,
			transparent 100%
		);
		pointer-events: none;
	}
	body.home #ss-home-stock ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}
@media (max-width: 560px) {
	:is(.ss-home-stock, .ss-stock) {
		--ss-stock-inset: 14px;
		--ss-stock-gap: 12px;
	}
	.ss-stock__cat + .ss-stock__cat::before,
	.ss-stock__cat:nth-child(2n)::before {
		display: none;
	}
	.ss-stock__media {
		height: 96px;
	}
	.ss-stock__num {
		font-size: 22px;
	}
	body.home #ss-home-stock ul.products > li.product {
		padding: 6px 2px 40px !important;
	}
	body.home #ss-home-stock ul.products > li.product::before {
		bottom: 38px;
	}
	body.home #ss-home-stock ul.products > li.product .ct-media-container,
	body.home #ss-home-stock ul.products > li.product figure,
	body.home #ss-home-stock ul.products > li.product .ct-image-container {
		height: 100px !important;
		max-height: 100px !important;
	}
	body.home #ss-home-stock ul.products > li.product .ct-media-container img,
	body.home #ss-home-stock ul.products > li.product img {
		max-height: 100px !important;
	}
	body.home #ss-home-stock ul.products > li.product .ct-woo-card-extra {
		opacity: 1;
		transform: none;
		pointer-events: auto;
	}
}

/* —— Inventory close — last band inside the stock panel —— */
.ss-home-stock .ss-stock__close {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(220px, 0.7fr);
	gap: 28px 40px;
	align-items: stretch;
	width: 100%;
	margin: 0;
	padding: 32px var(--ss-stock-inset) 30px;
	border-top: 0;
	background: #ffffff;
}
.ss-home-stock .ss-stock__close::before {
	content: "";
	position: absolute;
	top: 0;
	left: var(--ss-stock-inset);
	right: var(--ss-stock-inset);
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(154, 171, 190, 0.55) 18%,
		rgba(39, 119, 242, 0.85) 50%,
		rgba(154, 171, 190, 0.55) 82%,
		transparent 100%
	);
}
.ss-stock__close-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
}
.ss-stock__close-copy .ss-stock__band-label {
	margin-bottom: 12px;
}
.ss-stock__close-title {
	margin: 0 0 14px;
	max-width: 18em;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: -0.015em;
	line-height: 1.25;
	color: var(--ss-stock-ink);
}
.ss-stock__close-body {
	max-width: 40rem;
}
.ss-stock__close-body p {
	margin: 0 0 0.85em;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
	color: var(--ss-stock-muted);
}
.ss-stock__close-body p:last-child {
	margin-bottom: 0;
}
.ss-stock__close-action {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
	gap: 0;
	padding: 8px 0 8px 8px;
	border-left: 0;
	background: #ffffff;
}
.ss-stock__close-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 16px 20px;
	border: 1px solid #2777f2;
	background: #2777f2;
	color: #fff !important;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none !important;
	text-align: center;
	transition: background-color 0.18s ease, border-color 0.18s ease;
}
.ss-stock__close-btn:hover {
	background: #1b3260;
	border-color: #1b3260;
	color: #fff !important;
}
@media (max-width: 767px) {
	.ss-home-stock .ss-stock__close {
		grid-template-columns: 1fr;
		gap: 22px;
		padding: 24px var(--ss-stock-inset) 26px;
	}
	.ss-stock__close-action {
		padding: 0;
		border-left: 0;
		border-top: 0;
		padding-top: 4px;
	}
	.ss-stock__close-title {
		max-width: none;
		font-size: 20px;
	}
}

/* —— Paths (upper half of offer block) —— */
.ss-offer .ss-paths {
	display: grid;
	grid-template-columns: 1fr 1fr;
	width: 100%;
	margin: 0;
	border: 1px solid #d9e2ec;
	background: #fff;
}
.ss-paths__panel {
	display: flex;
	align-items: stretch;
	background: #fff;
}
.ss-paths__panel + .ss-paths__panel {
	border-left: 1px solid #d9e2ec;
}
.ss-paths__inner {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: clamp(28px, 3.5vw, 40px) clamp(22px, 2.8vw, 36px);
}
.ss-paths__eyebrow {
	margin: 0 0 14px;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #1b3260;
}
.ss-paths__title {
	margin: 0 0 12px;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: clamp(20px, 2vw, 24px);
	font-weight: 600;
	line-height: 1.28;
	letter-spacing: -0.025em;
	color: #1b3260;
}
.ss-paths__body {
	margin: 0 0 24px;
	max-width: 34em;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 14.5px;
	font-weight: 400;
	line-height: 1.62;
	color: rgba(27, 50, 96, 0.62);
}
.ss-paths__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: flex-start;
	min-height: 44px;
	padding: 0 22px;
	margin: 0 0 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	text-decoration: none !important;
	color: #fff !important;
	background: #1b3260;
	border: 1px solid #1b3260;
	transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}
.ss-paths__btn:hover {
	background: #2777f2;
	border-color: #2777f2;
	color: #fff !important;
	transform: translateY(-1px);
}
.ss-paths__points {
	margin: 28px 0 0;
	padding: 18px 0 0;
	list-style: none;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 18px;
	background: transparent;
	border: 0;
	border-top: 1px solid rgba(27, 50, 96, 0.1);
}
.ss-paths__points li {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 24px;
	padding: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.3;
	color: #1b3260;
}
.ss-paths__check {
	flex: none;
	width: 15px;
	height: 15px;
	border-radius: 0;
	background:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M2.5 7.8l3.1 3.1 7-7.2' stroke='%232777f2' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
		center / 15px 15px no-repeat;
}
@media (max-width: 900px) {
	.ss-offer .ss-paths {
		grid-template-columns: 1fr;
	}
	.ss-paths__panel + .ss-paths__panel {
		border-left: 0;
		border-top: 1px solid #d9e2ec;
	}
	.ss-paths__inner {
		padding: 28px 20px;
	}
}
@media (max-width: 520px) {
	.ss-paths__points {
		grid-template-columns: 1fr;
		gap: 10px;
		padding-top: 16px;
	}
	.ss-paths__btn {
		width: 100%;
	}
}

/* —— Why (dark) —— */
.ss-home-why,
.ss-home-why.e-con,
.ss-home-why > .e-con-inner {
	background: linear-gradient(180deg, #0a1224 0%, #0d1830 100%) !important;
}
.ss-home-fact {
	border-top: 2px solid #2777f2;
	padding-top: 14px !important;
}
.ss-home-why .ss-home-fact + .ss-home-fact {
	border-left: 0;
}
.ss-home-why-head {
	width: 100%;
	margin: 0;
	padding: 0;
}
.ss-home-why-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
	margin: 0 0 10px;
	padding: 0;
}
.ss-home-why-eyebrow {
	margin: 0;
	padding: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.16em;
	line-height: 1;
	text-transform: uppercase;
	color: rgba(168, 190, 230, 0.72);
}
.ss-home-why-link {
	margin: 0;
	padding: 0;
	color: #7eb6ff;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	transition: color 0.2s ease;
}
.ss-home-why-link:hover {
	color: #a8d0ff;
}
.ss-home-why-title {
	margin: 0;
	padding: 0;
	color: #e8eef8;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.25;
}
.ss-home-why .elementor-widget-html,
.ss-home-why .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}
.ss-home-why-facts,
.ss-home-why-facts.e-con,
.ss-home-why-facts > .e-con-inner {
	padding: 0 !important;
	width: 100% !important;
}
.ss-home-why .ss-home-fact {
	box-sizing: border-box;
}
.ss-home-why .ss-home-fact:last-child {
	padding-right: 0 !important;
}
/* Kill Elementor default 10px padding if old markup ever resurfaces */
.ss-home-why .ss-home-why-head.e-con,
.ss-home-why .ss-home-why-meta.e-con,
.ss-home-why .ss-home-why-head > .e-con-inner,
.ss-home-why .ss-home-why-meta > .e-con-inner {
	padding: 0 !important;
}
.ss-home-why .ss-home-why-meta .elementor-widget-heading {
	margin: 0 !important;
}

/* —— Services intro (below Why) ——
   Equal-height panels: left claim panel | right services stage. */
.ss-home-services-section {
	background: #ffffff !important;
	border-top: 1px solid #e8eef5;
	border-bottom: 1px solid #e8eef5;
}
.ss-svc {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 0;
}
.ss-svc__intro {
	margin: 0 0 clamp(24px, 3vw, 32px);
	max-width: 40rem;
}
.ss-svc__split {
	display: grid;
	grid-template-columns: minmax(18rem, 1fr) minmax(0, 1.35fr);
	gap: clamp(20px, 2.5vw, 28px);
	align-items: stretch;
	width: 100%;
}
.ss-svc__rail,
.ss-svc__stage {
	position: relative;
	min-height: clamp(420px, 44vw, 500px);
	padding: clamp(32px, 3.5vw, 44px);
	border: 1px solid #d5dde8;
	background: #ffffff;
}
.ss-svc__rail {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	gap: 28px;
}
.ss-svc__rail-top {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	max-width: 24rem;
}
.ss-svc__kicker {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #2777f2;
}
.ss-svc__claim {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: clamp(20px, 1.9vw, 24px);
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.32;
	color: #1b3260;
}
.ss-svc__rail-bottom {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	width: 100%;
	max-width: 24rem;
	padding-top: 20px;
	border-top: 1px solid #d5dde8;
}
.ss-svc__bridge-lead {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.015em;
	line-height: 1.4;
	color: #1b3260;
}
.ss-svc__bridge-line {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13.5px;
	font-weight: 400;
	letter-spacing: -0.01em;
	line-height: 1.65;
	color: rgba(27, 50, 96, 0.62);
}
.ss-svc__cta {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: auto;
	padding: 14px 24px;
	background: #1b3260;
	color: #ffffff !important;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none !important;
	transition: background 0.2s ease;
}
.ss-svc__cta::after {
	content: "→";
	font-size: 14px;
	transition: transform 0.2s ease;
}
.ss-svc__cta:hover {
	background: #2777f2;
}
.ss-svc__cta:hover::after {
	transform: translateX(4px);
}
.ss-svc__corner {
	position: absolute;
	width: 20px;
	height: 20px;
	pointer-events: none;
	z-index: 3;
}
.ss-svc__corner--tl {
	top: -1px;
	left: -1px;
	border-top: 2px solid #2777f2;
	border-left: 2px solid #2777f2;
}
.ss-svc__corner--br {
	bottom: -1px;
	right: -1px;
	border-bottom: 2px solid #2777f2;
	border-right: 2px solid #2777f2;
}
.ss-svc__divider {
	position: absolute;
	background: #d0d8e4;
	pointer-events: none;
	z-index: 1;
}
.ss-svc__divider--v {
	left: 50%;
	top: 12%;
	bottom: 12%;
	width: 1px;
	margin-left: -0.5px;
}
.ss-svc__divider--h {
	top: 50%;
	left: 10%;
	right: 10%;
	height: 1px;
	margin-top: -0.5px;
}
.ss-svc__list {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(28px, 3.5vw, 40px) clamp(36px, 4vw, 52px);
	margin: 0;
	padding: 0;
	list-style: none;
	width: 100%;
	height: 100%;
	align-content: space-between;
}
.ss-svc__item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	padding: 0;
	max-width: 18rem;
	background: transparent;
}
.ss-svc__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	color: #2777f2;
	flex: none;
}
.ss-svc__icon svg {
	width: 30px;
	height: 30px;
	display: block;
}
.ss-svc__title {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: clamp(17px, 1.5vw, 20px);
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1.25;
	color: #1b3260;
}
.ss-svc__body {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.65;
	color: rgba(27, 50, 96, 0.56);
}
@media (max-width: 900px) {
	.ss-svc__split {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.ss-svc__rail,
	.ss-svc__stage {
		min-height: 0;
	}
	.ss-svc__rail {
		gap: 22px;
	}
	.ss-svc__cta {
		margin-top: 4px;
	}
	.ss-svc__divider {
		display: none;
	}
}
@media (max-width: 560px) {
	.ss-svc__list {
		grid-template-columns: 1fr;
		gap: 28px;
	}
	.ss-svc__item {
		max-width: none;
	}
}

/* —— Bridge (Services → Inventory)
   LOCKED — see .cursor/rules/sunspike-home-bridge.mdc
   Rail = 1140px (same as #ss-home-services / #ss-home-stock), NOT Hero 1520 */
.ss-home-bridge,
.ss-home-bridge.e-con,
.ss-home-bridge > .e-con-inner {
	--ss-phi: 1.618;
	--ss-phi-inv: 0.618;
	background: linear-gradient(180deg, #0a1224 0%, #0d1830 100%) !important;
}
.ss-home-bridge,
.ss-home-bridge *,
.ss-home-bridge .elementor-button,
.ss-home-bridge .e-con,
.ss-home-bridge .e-con-inner {
	border-radius: 0 !important;
}
.ss-home-bridge .ss-bridge-copy,
.ss-home-bridge .ss-bridge-stage,
.ss-home-bridge .ss-bridge-copy > .e-con-inner,
.ss-home-bridge .ss-bridge-stage > .e-con-inner {
	padding: 0 !important;
}
/* Copy column — packed unit (not stretched hollow); width = .ss-svc__rail-top */
.ss-home-bridge .ss-bridge-copy {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: flex-start !important;
	align-self: stretch !important;
	--align-self: stretch !important;
	gap: 14px !important;
	width: 100% !important;
	max-width: none !important;
	--width: 100% !important;
	flex: none !important;
	height: auto !important;
	min-width: 0;
	min-height: 100%;
}
.ss-home-bridge .ss-bridge-copy > .elementor-element:not(.ss-bridge-cta) {
	width: 100% !important;
	max-width: 24rem !important;
	margin: 0 !important;
}
/* Bottom rail — same job as .ss-svc__rail-bottom (anchors CTA, kills mid void) */
.ss-home-bridge .ss-bridge-copy > .elementor-element.ss-bridge-cta {
	width: 100% !important;
	max-width: 24rem !important;
	margin: 8px 0 0 !important;
	padding-top: 18px !important;
	border-top: 1px solid rgba(140, 178, 255, 0.2);
	align-self: flex-start !important;
}
.ss-home-bridge .ss-bridge-copy > .elementor-element:first-child {
	margin: 0 !important;
}
.ss-home-bridge .ss-bridge-copy > .elementor-element:first-child .elementor-heading-title {
	margin: 0 !important;
	max-width: none !important;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.18em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	color: rgba(79, 209, 255, 0.62) !important;
}
.ss-home-bridge .ss-bridge-copy .elementor-heading-title {
	margin: 0;
	max-width: none !important;
	line-height: 1.2 !important;
}
.ss-home-bridge .ss-bridge-copy > .elementor-element:nth-child(2) {
	margin: 0 !important;
}
.ss-home-bridge .ss-bridge-copy > .elementor-element:nth-child(2) .elementor-heading-title {
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif !important;
	font-size: clamp(22px, 2vw, 26px) !important;
	font-weight: 600 !important;
	letter-spacing: -0.025em !important;
	line-height: 1.28 !important;
	color: #e8eef8 !important;
}
.ss-home-bridge .ss-bridge-copy__body {
	margin: 0 !important;
}
.ss-home-bridge .ss-bridge-copy__body .elementor-widget-container p,
.ss-home-bridge .ss-bridge-copy__body p {
	margin: 0 0 0.7em;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 400 !important;
	line-height: 1.6 !important;
	color: rgba(168, 190, 230, 0.78) !important;
}
/* Second line = claim weight (Services .ss-svc__bridge-lead) */
.ss-home-bridge .ss-bridge-copy__body .elementor-widget-container p:last-child,
.ss-home-bridge .ss-bridge-copy__body p:last-child {
	margin: 0;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: -0.015em !important;
	line-height: 1.45 !important;
	color: rgba(216, 232, 255, 0.88) !important;
}
.ss-home-bridge .ss-bridge-cta .elementor-button {
	border-radius: 0 !important;
	min-height: 46px !important;
	padding: 12px 26px !important;
	border-color: rgba(140, 178, 255, 0.45) !important;
	background: rgba(255, 255, 255, 0.04) !important;
	color: #e8eef8 !important;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}
.ss-home-bridge .ss-bridge-cta .elementor-button:hover {
	background: #2777f2 !important;
	border-color: #2777f2 !important;
	color: #ffffff !important;
}

#ss-home-bridge.ss-home-bridge,
#ss-home-bridge.e-con {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding-top: 48px !important;
	padding-bottom: 48px !important;
	--padding-top: 48px !important;
	--padding-bottom: 48px !important;
	--gap: 0px !important;
	--row-gap: 0px !important;
	--column-gap: 0px !important;
	--align-items: stretch !important;
	gap: 0 !important;
	background: linear-gradient(180deg, #0a1224 0%, #0d1830 100%) !important;
}
/* Field atmosphere — same idea as .ss-hero__grid / glow */
#ss-home-bridge.ss-home-bridge::before {
	content: "";
	position: absolute;
	inset: -1px;
	z-index: 0;
	pointer-events: none;
	background-image:
		linear-gradient(rgba(148, 180, 255, 0.07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(148, 180, 255, 0.07) 1px, transparent 1px);
	background-size: 48px 48px;
	-webkit-mask-image: radial-gradient(86% 80% at 58% 48%, #000 0%, transparent 86%);
	mask-image: radial-gradient(86% 80% at 58% 48%, #000 0%, transparent 86%);
	opacity: 0.9;
}
#ss-home-bridge.ss-home-bridge::after {
	content: "";
	position: absolute;
	z-index: 0;
	pointer-events: none;
	width: clamp(360px, 34vw, 640px);
	height: clamp(360px, 34vw, 640px);
	right: clamp(-40px, 6vw, 120px);
	top: 50%;
	transform: translateY(-50%);
	border-radius: 50%;
	background: radial-gradient(circle, rgba(39, 119, 242, 0.28) 0%, rgba(79, 209, 255, 0.1) 42%, transparent 72%);
	filter: blur(8px);
}
#ss-home-bridge > .e-con-inner {
	position: relative;
	z-index: 1;
	--display: grid !important;
	display: grid !important;
	/* Same split rhythm as .ss-svc__split (section above) */
	grid-template-columns: minmax(18rem, 1fr) minmax(0, 1.35fr);
	width: 100% !important;
	max-width: 1140px !important;
	margin-inline: auto !important;
	padding: 0 !important;
	align-items: stretch !important;
	--align-items: stretch !important;
	gap: clamp(20px, 2.5vw, 28px) !important;
	--gap: clamp(20px, 2.5vw, 28px) !important;
	--column-gap: clamp(20px, 2.5vw, 28px) !important;
	background: transparent !important;
}
@media (max-width: 767px) {
	#ss-home-bridge.ss-home-bridge,
	#ss-home-bridge.e-con {
		padding-top: 36px !important;
		padding-bottom: 36px !important;
		--padding-top: 36px !important;
		--padding-bottom: 36px !important;
	}
	#ss-home-bridge > .e-con-inner {
		grid-template-columns: 1fr;
		max-width: 100% !important;
		padding: 0 16px !important;
	}
}
/* Stage — same material language as .ss-hero__spec (one edge, float, glow behind) */
.ss-home-bridge .ss-bridge-stage {
	--ss-mon-cyan: #4fd1ff;
	--ss-mon-blue: #2777f2;
	--ss-mon-live: #3dd68c;
	position: relative;
	isolation: isolate;
	overflow: visible;
	border-radius: 0 !important;
	--border-radius: 0px !important;
	width: 100% !important;
	max-width: none !important;
	--width: 100% !important;
	flex: none !important;
	--align-self: stretch !important;
	align-self: stretch !important;
	height: auto !important;
	min-width: 0;
	min-height: 0 !important;
	/* One thin edge — no inset ring, no outer 1px stack (that was the bloated “round” look) */
	border: 1px solid rgba(140, 178, 255, 0.3) !important;
	background: rgba(10, 20, 40, 0.72) !important;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	/* Soft float like Hero — light far from edge, not an edge halo */
	box-shadow:
		0 30px 60px -16px rgba(0, 0, 0, 0.55),
		0 50px 90px -24px rgba(15, 60, 160, 0.45);
	animation: ss-bridge-float 7s ease-in-out infinite;
}
@keyframes ss-bridge-float {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50% { transform: translate3d(0, -6px, 0); }
}
@media (prefers-reduced-motion: reduce) {
	.ss-home-bridge .ss-bridge-stage {
		animation: none;
	}
}
/* Glow sits behind the panel (Hero stage-glow), not on the border */
.ss-home-bridge .ss-bridge-stage::before {
	content: "";
	position: absolute;
	z-index: 0;
	pointer-events: none;
	width: min(520px, 110%);
	height: min(520px, 110%);
	left: 50%;
	top: 42%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: radial-gradient(
		circle at 50% 36%,
		rgba(96, 200, 255, 0.34) 0%,
		rgba(39, 119, 242, 0.12) 52%,
		transparent 74%
	);
	filter: blur(6px);
	opacity: 0.9;
}
/* Diagonal L-corners — same as .ss-hero__spec (not painted into the border stack) */
.ss-home-bridge .ss-bridge-stage::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 5;
	pointer-events: none;
	background:
		linear-gradient(#4fd1ff, #4fd1ff) 0 0 / 22px 2px no-repeat,
		linear-gradient(#4fd1ff, #4fd1ff) 0 0 / 2px 22px no-repeat,
		linear-gradient(#4fd1ff, #4fd1ff) 100% 100% / 22px 2px no-repeat,
		linear-gradient(#4fd1ff, #4fd1ff) 100% 100% / 2px 22px no-repeat;
}
@media (min-width: 1024px) {
	#ss-home-bridge.ss-home-bridge::after {
		opacity: 0.38;
	}
}
.ss-home-bridge .ss-bridge-stage,
.ss-home-bridge .ss-bridge-stage *,
.ss-home-bridge .ss-bridge-cta .elementor-button {
	border-radius: 0 !important;
}
.ss-home-bridge .ss-bridge-stage > .elementor-widget-html,
.ss-home-bridge .ss-bridge-stage > .elementor-widget-html > .elementor-widget-container {
	position: relative;
	z-index: 2;
	margin: 0 !important;
	padding: 0 !important;
}
.ss-home-bridge .ss-bridge-stage__head {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 12px 20px;
	padding: 12px 18px 10px;
	border-bottom: 1px solid rgba(140, 178, 255, 0.18);
	background: rgba(6, 14, 28, 0.35);
}
.ss-home-bridge .ss-bridge-stage__head::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		#4fd1ff 0%,
		rgba(39, 119, 242, 0.55) 40%,
		transparent 100%
	);
	pointer-events: none;
}
.ss-home-bridge .ss-bridge-stage__eyebrow {
	margin: 0 0 3px;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: rgba(79, 209, 255, 0.52);
}
.ss-home-bridge .ss-bridge-stage__title {
	margin: 0;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	line-height: 1.25;
	color: #d8e8ff;
}
.ss-home-bridge .ss-bridge-stage__status {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	flex: none;
	padding: 4px 9px 4px 7px;
	border: 1px solid rgba(61, 214, 140, 0.38);
	border-radius: 0;
	background: rgba(61, 214, 140, 0.08);
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #5eeaa8;
	white-space: nowrap;
	box-shadow: inset 0 0 12px rgba(61, 214, 140, 0.06);
}
.ss-home-bridge .ss-bridge-stage__pulse {
	display: block;
	width: 6px;
	height: 6px;
	border-radius: 0;
	background: var(--ss-mon-live, #3dd68c);
	box-shadow: 0 0 8px rgba(61, 214, 140, 0.75);
	animation: ss-bridge-live-pulse 2.2s ease-in-out infinite;
}
@keyframes ss-bridge-live-pulse {
	0%, 100% {
		opacity: 1;
		transform: scale(1);
		box-shadow: 0 0 6px rgba(61, 214, 140, 0.55);
	}
	50% {
		opacity: 0.55;
		transform: scale(0.92);
		box-shadow: 0 0 14px rgba(61, 214, 140, 0.9);
	}
}
@media (prefers-reduced-motion: reduce) {
	.ss-home-bridge .ss-bridge-stage__pulse {
		animation: none;
	}
}
.ss-home-bridge .ss-bridge-slides {
	--ss-bridge-inset: 18px;
	position: relative;
	z-index: 1;
	width: 100%;
}
.ss-home-bridge .ss-bridge-slides--live {
	padding: 10px 16px 34px;
	box-sizing: border-box;
}
.ss-home-bridge .ss-bridge-slides__viewport {
	position: relative;
	width: 100%;
	min-height: 0;
	/* Locked to tallest slide via home-bridge-brands.js — prevents carousel height jump */
	padding-bottom: 4px;
}
.ss-home-bridge .ss-bridge-slides__slide {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 1;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.55s ease, visibility 0.55s ease;
}
.ss-home-bridge .ss-bridge-slides__slide.is-active {
	position: absolute;
	z-index: 2;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.ss-home-bridge .ss-bridge-slide__panel {
	position: relative;
	z-index: 2;
	margin: 0 0 10px;
	padding: 0 0 9px;
	border-bottom: 1px solid rgba(79, 209, 255, 0.14);
}
.ss-home-bridge .ss-bridge-slide__panel::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 42px;
	height: 1px;
	background: #4fd1ff;
	box-shadow: 0 0 10px rgba(79, 209, 255, 0.55);
	pointer-events: none;
}
.ss-home-bridge .ss-bridge-slide__heading {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	display: block;
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.07em;
	line-height: 1.2;
	text-transform: uppercase;
	color: #e8f2ff;
	text-shadow: 0 0 20px rgba(79, 209, 255, 0.12);
}
.ss-home-bridge .ss-bridge-slide__brand-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 6px;
}
.ss-home-bridge .ss-bridge-slide__stats {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}
.ss-home-bridge .ss-bridge-slide__body {
	display: block;
	width: 100%;
	color: rgba(168, 190, 230, 0.85);
	font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif;
	font-size: 13px;
	line-height: 1.4;
}
/* Stage frame corners live on .ss-bridge-stage — no duplicate on head widget */
.ss-home-bridge .ss-bridge-stage > .elementor-widget-html::before,
.ss-home-bridge .ss-bridge-stage > .elementor-widget-html::after {
	content: none;
}
.ss-home-bridge .ss-bridge-slides::before,
.ss-home-bridge .ss-bridge-slides::after {
	content: none;
}
.ss-home-bridge .ss-bridge-slides .elementor-swiper,
.ss-home-bridge .ss-bridge-slides .elementor-main-swiper,
.ss-home-bridge .ss-bridge-slides .elementor-slides-wrapper {
	width: 100%;
	position: relative;
}
.ss-home-bridge .ss-bridge-slides .swiper-slide {
	border-top: none;
	overflow: hidden;
	position: relative;
	background: transparent !important;
}
.ss-home-bridge .ss-bridge-slides .swiper-slide::before,
.ss-home-bridge .ss-bridge-slides .swiper-slide::after {
	content: none;
}
.ss-home-bridge .ss-bridge-slides .swiper-slide-bg,
.ss-home-bridge .ss-bridge-slides .elementor-background-overlay {
	display: none !important;
}
.ss-home-bridge .ss-bridge-slides .swiper-slide-inner {
	align-items: flex-start;
	position: relative;
	width: 100%;
	z-index: 1;
}
.ss-home-bridge .ss-bridge-slides .swiper-slide-contents {
	display: flex !important;
	flex-direction: column;
	position: relative;
	z-index: 1;
	width: 100% !important;
	max-width: 100% !important;
	padding-right: 0;
	opacity: 1 !important;
	visibility: visible !important;
}
.ss-home-bridge .ss-bridge-slides .elementor-slide-heading {
	letter-spacing: 0.06em;
	line-height: 1.2;
	min-height: 0;
	padding-right: 0;
	margin: 0;
	display: block;
}
.ss-home-bridge .ss-bridge-slides .elementor-slide-description {
	display: block;
	width: 100%;
}
.ss-home-bridge .ss-bridge-slide__top {
	display: none;
}
.ss-home-bridge .ss-bridge-slide__table {
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}
.ss-home-bridge .ss-bridge-slide__table-head,
.ss-home-bridge .ss-bridge-slide__series li {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 3.25rem;
	column-gap: 12px;
	align-items: baseline;
}
.ss-home-bridge .ss-bridge-slide__table-head {
	padding: 0 0 6px;
	margin: 0 0 4px;
	border-bottom: 1px solid rgba(79, 209, 255, 0.22);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(79, 209, 255, 0.48);
}
.ss-home-bridge .ss-bridge-slide__table-head span:last-child {
	text-align: right;
}
.ss-home-bridge .ss-bridge-slide__logo {
	position: static;
	flex: none;
	display: grid;
	place-items: center;
	width: 68px;
	height: 26px;
	padding: 3px 6px;
	border: 1px solid rgba(140, 178, 255, 0.28);
	background: rgba(6, 13, 28, 0.72);
	box-shadow: none;
	text-decoration: none;
	color: inherit;
}
.ss-home-bridge a.ss-bridge-slide__logo:hover {
	border-color: rgba(140, 178, 255, 0.5);
	background: rgba(8, 16, 32, 0.85);
	box-shadow: none;
}
.ss-home-bridge .ss-bridge-slide__empty a {
	color: #7eb6ff;
	text-decoration: none;
}
.ss-home-bridge .ss-bridge-slide__empty a:hover {
	color: #ffffff;
}
.ss-home-bridge .ss-bridge-slide__logo img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 56px;
	max-height: 20px;
	object-fit: contain;
	object-position: center;
	margin: 0 auto;
}
.ss-home-bridge .ss-bridge-slide__meta {
	display: inline-flex;
	align-items: baseline;
	gap: 8px;
	color: rgba(148, 170, 210, 0.62);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
.ss-home-bridge .ss-bridge-slide__meta-label {
	color: rgba(148, 170, 210, 0.48);
}
.ss-home-bridge .ss-bridge-slide__meta-value {
	color: #4fd1ff;
	font-size: 13px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.02em;
	text-shadow: 0 0 14px rgba(79, 209, 255, 0.35);
}
.ss-home-bridge .ss-bridge-slide__page {
	display: block;
	margin: 0;
	padding: 2px 6px;
	border: 1px solid rgba(39, 119, 242, 0.22);
	border-radius: 0;
	background: rgba(39, 119, 242, 0.08);
	color: rgba(79, 209, 255, 0.72);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.12em;
	font-variant-numeric: tabular-nums;
}
.ss-home-bridge .ss-bridge-slide__series {
	list-style: none;
	margin: 0 0 12px;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 16px;
	width: 100%;
	max-width: none;
	border-top: none;
}
.ss-home-bridge .ss-bridge-slide__series li {
	padding: 5px 4px;
	border-bottom: 1px solid rgba(39, 119, 242, 0.12);
	transition: background 0.18s ease, border-color 0.18s ease;
}
.ss-home-bridge .ss-bridge-slide__series li:nth-child(odd) {
	background: rgba(39, 119, 242, 0.04);
}
.ss-home-bridge .ss-bridge-slide__series li:hover {
	background: rgba(39, 119, 242, 0.11);
	border-bottom-color: rgba(79, 209, 255, 0.28);
}
.ss-home-bridge .ss-bridge-slide__series a {
	color: #d8e8ff !important;
	font-size: 12.5px;
	font-weight: 500;
	line-height: 1.25;
	text-decoration: none !important;
	transition: color 0.18s ease;
}
.ss-home-bridge .ss-bridge-slide__series a:hover {
	color: #4fd1ff !important;
}
.ss-home-bridge .ss-bridge-slide__series span {
	justify-self: end;
	color: #4fd1ff;
	font-size: 11px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.02em;
	text-shadow: 0 0 10px rgba(79, 209, 255, 0.22);
}
.ss-home-bridge .ss-bridge-slide__empty {
	margin: 0;
	color: rgba(168, 190, 230, 0.65);
	font-size: 14px;
}
.ss-home-bridge .ss-bridge-slides .elementor-slide-button {
	display: none !important;
}
.ss-home-bridge .ss-bridge-slides .elementor-swiper-button,
.ss-home-bridge .ss-bridge-slides .swiper-pagination {
	display: none !important;
}
.ss-home-bridge .ss-bridge-slides,
.ss-home-bridge .ss-bridge-slides > .elementor-widget-container {
	position: relative;
}
.ss-home-bridge .ss-bridge-brand-dots {
	position: absolute;
	left: var(--ss-bridge-inset, 16px);
	right: var(--ss-bridge-inset, 16px);
	bottom: 10px;
	z-index: 30;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
	min-height: 18px;
	padding: 9px 0 0;
	border-top: 1px solid rgba(79, 209, 255, 0.16);
	background: linear-gradient(180deg, transparent 0%, rgba(3, 10, 22, 0.45) 100%);
	pointer-events: auto;
	touch-action: manipulation;
	cursor: default;
}
.ss-home-bridge .ss-bridge-brand-dots__dot {
	pointer-events: auto;
	position: relative;
	display: block;
	width: 18px;
	height: 2px;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: rgba(39, 119, 242, 0.35);
	cursor: pointer;
	appearance: none;
	touch-action: manipulation;
	transition: background 0.2s ease, width 0.2s ease, box-shadow 0.2s ease;
}
.ss-home-bridge .ss-bridge-brand-dots__dot.is-active,
.ss-home-bridge .ss-bridge-brand-dots__dot[aria-selected="true"] {
	width: 26px;
	background: #4fd1ff;
	box-shadow: 0 0 10px rgba(79, 209, 255, 0.55);
	animation: ss-bridge-channel-pulse 2.8s ease-in-out infinite;
}
@keyframes ss-bridge-channel-pulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.72; }
}
@media (prefers-reduced-motion: reduce) {
	.ss-home-bridge .ss-bridge-brand-dots__dot.is-active,
	.ss-home-bridge .ss-bridge-brand-dots__dot[aria-selected="true"] {
		animation: none;
	}
}
.ss-home-bridge .ss-bridge-brand-dots__dot::after {
	content: "";
	position: absolute;
	inset: -10px -4px;
}
.ss-home-bridge .ss-bridge-brand-dots__dot:focus-visible {
	outline: 1px solid #7eb6ff;
	outline-offset: 3px;
}
@media (max-width: 767px) {
	.ss-home-bridge .ss-bridge-slides {
		--ss-bridge-inset: 16px;
	}
	.ss-home-bridge .ss-bridge-stage__head {
		padding: 12px 16px 10px;
	}
	.ss-home-bridge .ss-bridge-slide__series {
		grid-template-columns: 1fr;
		column-gap: 0;
	}
	.ss-home-bridge .ss-bridge-slide__logo {
		width: 72px;
		height: 30px;
	}
}

/* === SS HOME END === */
