@font-face {
	font-family: 'TecHorse';
	src: url('../fonts/Tec-Regular.woff2') format('woff2');
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

/* TecHorse shop archive mobile grid enforcement */
@media (max-width: 767px) {
	body.techorse-shop-archive.woocommerce ul.products:not(.elementor-grid),
	body.techorse-shop-archive.woocommerce-page ul.products:not(.elementor-grid),
	body.techorse-shop-archive ul.products.products:not(.elementor-grid) {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		width: 100% !important;
	}

	body.techorse-shop-archive.woocommerce ul.products:not(.elementor-grid) > li.product,
	body.techorse-shop-archive.woocommerce-page ul.products:not(.elementor-grid) > li.product,
	body.techorse-shop-archive ul.products.products:not(.elementor-grid) > li.product {
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	body.techorse-shop-archive .ats-loop-card__actions--shop {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		align-items: center;
	}

	body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link {
		width: 100%;
		min-width: 0;
		min-height: 44px;
		padding: 0 14px;
		box-sizing: border-box;
		aspect-ratio: auto;
		font-size: 0.88rem;
		white-space: nowrap;
	}

	body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link--tertiary {
		grid-column: 1 / -1;
		width: auto;
		min-height: 0;
		padding: 0;
		justify-self: center;
		justify-content: center;
		text-align: center;
		white-space: nowrap;
	}
}

:root {
	--ats-bg: #ffffff;
	--ats-bg-soft: #fbfaf7;
	--ats-surface: rgba(255, 255, 255, 0.94);
	--ats-surface-solid: #ffffff;
	--ats-surface-muted: rgba(255, 255, 255, 0.72);
	--ats-text: #171717;
	--ats-text-soft: rgba(23, 23, 23, 0.72);
	--ats-text-faint: rgba(23, 23, 23, 0.56);
	--ats-border: rgba(23, 23, 23, 0.08);
	--ats-border-strong: rgba(23, 23, 23, 0.14);
	--ats-accent: #171717;
	--ats-accent-soft: rgba(23, 23, 23, 0.72);
	--ats-shadow-soft: 0 14px 36px rgba(17, 17, 17, 0.035);
	--ats-shadow-gentle: 0 22px 52px rgba(17, 17, 17, 0.05);
	--ats-radius-sm: 18px;
	--ats-radius-md: 24px;
	--ats-radius-lg: 30px;
	--ats-radius-xl: 40px;
	--ats-shell: min(1240px, calc(100vw - 40px));
	--ats-shell-narrow: min(820px, calc(100vw - 40px));
	--ats-transition: 220ms ease;
	--techorse-font-family: 'TecHorse', Arial, sans-serif;
}

html,
body.techorse-theme,
body.techorse-theme #page,
body.techorse-theme .site,
body.techorse-theme .ast-site,
body.techorse-theme .site-content,
body.techorse-theme .ast-site-content,
body.techorse-theme .ats-site-shell,
body.techorse-theme .ats-site-main,
body.techorse-theme .ats-page-hero,
body.techorse-theme .ats-page-content,
body.techorse-theme .ats-section {
	background: #ffffff;
	background-image: none;
	color: var(--ats-text);
}

body.techorse-theme,
body.techorse-theme button,
body.techorse-theme input,
body.techorse-theme select,
body.techorse-theme textarea,
.ast-button,
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button,
.site-title,
.site-description,
.entry-title,
.woocommerce-loop-product__title,
.product_title,
.widget-title,
.main-header-menu,
.ast-header-account-wrap,
.site-footer,
.ats-site-header,
.ats-site-main,
.ats-button,
.ats-header-trigger,
.ats-header-call,
.ats-header-icon,
.ats-search-form__input,
.ats-search-form__button,
.ats-filter-chip,
.ats-footer-column__toggle,
.ats-footer-menu,
.ats-footer-bottom__links,
.ats-zone-links,
.ats-section-badge,
.ats-product-card,
.ats-product-card__title,
.ats-product-card__meta,
.ats-product-card__specs,
.ats-product-card__zone,
.ats-product-category-label,
.ats-product-merch-note,
.ats-single-panel,
.ats-trust-item,
.ats-empty-state,
.ats-shop-toolbar,
.ats-zone-page-intro__copy,
.ats-zone-page-campaign__content,
.ats-zone-page-story__card,
.woocommerce ul.products li.product,
.techorse-woocommerce .product,
.woocommerce div.product,
.woocommerce form .form-row,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	font-family: var(--techorse-font-family);
}

body.techorse-theme {
	font-size: 16px;
	line-height: 1.65;
}

body.ats-mobile-drawer-open,
html.ats-mobile-drawer-open {
	overflow: hidden;
}

.screen-reader-text:not(:focus):not(:active) {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.skip-link {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 1200;
	padding: 12px 18px;
	border-radius: 999px;
	background: #171717;
	color: #ffffff;
	font-size: 0.76rem;
	font-weight: 400;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.skip-link:focus {
	width: auto;
	height: auto;
	margin: 0;
	clip: auto;
}

a {
	color: inherit;
}

img {
	max-width: 100%;
	height: auto;
}

.ats-site-main {
	padding-bottom: 96px;
}

.ats-shell {
	width: var(--ats-shell);
	margin: 0 auto;
	max-width: 100%;
}

.ats-shell--narrow {
	width: var(--ats-shell-narrow);
}

.ats-shell--fluid-grid {
	width: 100%;
	max-width: none;
	margin-inline: auto;
	padding-inline: clamp(20px, 3vw, 56px);
	box-sizing: border-box;
}

.ats-section,
.ats-page-hero,
.ats-page-content,
.ats-zone-page-hero,
.ats-zone-page-intro,
.ats-zone-page-products,
.ats-zone-page-campaign,
.ats-zone-page-story {
	padding: 32px 0;
}

.ats-collections,
.ats-product-showcase,
.ats-home-video,
.ats-story,
.ats-trust {
	padding-top: 64px;
}

.ats-section-heading {
	max-width: 720px;
	margin-bottom: 24px;
}

.ats-section-heading h2,
.ats-page-hero h1,
.ats-shop-toolbar__heading h2,
.ats-single-panel__header h2,
.ats-zone-page-intro__copy h2,
.ats-zone-page-campaign__content h2 {
	margin: 0 0 16px;
	font-size: clamp(2rem, 4vw, 3.8rem);
	font-weight: 400;
	line-height: 1.12;
	letter-spacing: -0.02em;
	color: var(--ats-text);
}

.ats-section-heading p,
.ats-page-hero p,
.ats-home-hero__content p,
.ats-home-hero__spotlight p,
.ats-story__copy p,
.ats-home-video__copy p,
.ats-zone-card__content p,
.ats-collection-card__content p,
.ats-trust-item p,
.ats-footer-editorial__statement,
.ats-footer-column__description,
.ats-product-card__meta,
.ats-product-card__zone,
.ats-product-merch-note,
.ats-empty-state p,
.ats-single-panel li,
.ats-single-panel p,
.ats-zone-page-intro__copy p,
.ats-zone-page-campaign__content p,
.ats-zone-page-story__card p {
	color: var(--ats-text-soft);
	font-size: 0.98rem;
	line-height: 1.75;
}

.ats-section-badge,
.ats-home-hero__eyebrow,
.ats-zone-card__eyebrow,
.ats-header-trigger,
.ats-header-call,
.ats-footer-column__title {
	margin: 0 0 12px;
	color: var(--ats-accent-soft);
	font-size: 0.72rem;
	font-weight: 400;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ats-button,
.ats-search-form__button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button,
.ats-loop-card__link,
.ats-inline-link {
	transition: transform var(--ats-transition), background-color var(--ats-transition), border-color var(--ats-transition), color var(--ats-transition);
}

.ats-button,
.ats-search-form__button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 50px;
	padding: 0 22px;
	border: 1px solid rgba(23, 23, 23, 0.14);
	border-radius: 999px;
	background: #171717;
	color: #ffffff;
	font-size: 0.8rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
}

.ats-button:hover,
.ats-button:focus,
.ats-search-form__button:hover,
.ats-search-form__button:focus,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .button:hover {
	transform: translateY(-1px);
	background: #000000;
	color: #ffffff;
}

.ats-button--ghost {
	background: rgba(255, 255, 255, 0.94);
	color: #171717;
	border-color: rgba(23, 23, 23, 0.14);
}

.ats-button--ghost:hover,
.ats-button--ghost:focus {
	background: #171717;
	color: #ffffff;
	border-color: #171717;
}

.ats-inline-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #171717;
	font-size: 0.78rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
}

.ats-inline-link:hover,
.ats-inline-link:focus {
	color: #000000;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
	outline: 2px solid rgba(23, 23, 23, 0.3);
	outline-offset: 3px;
}

.ats-site-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	backdrop-filter: none;
}

body.admin-bar .ats-site-header {
	top: 32px;
}

.ats-header-main {
	background: rgba(255, 255, 255, 0.98);
	border-bottom: 1px solid var(--ats-border);
}

.ats-site-header.is-scrolled .ats-header-main {
	box-shadow: none;
}

.ats-header-main__inner {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	min-height: 88px;
}

.ats-header-side,
.ats-header-actions,
.ats-home-hero__actions,
.ats-footer-bottom,
.ats-shop-toolbar__filters,
.ats-loop-card__actions,
.ats-product-card__actions {
	display: flex;
	align-items: center;
	gap: 12px;
}

.ats-header-side {
	min-width: 0;
}

.ats-header-side--start {
	justify-content: flex-start;
}

.ats-header-side--end {
	justify-content: flex-end;
}

.ats-header-trigger {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--ats-text);
	text-decoration: none;
}

.ats-header-trigger__label {
	line-height: 1;
}

.ats-header-trigger__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
}

.ats-header-trigger__icon--menu {
	display: grid;
	align-content: center;
	gap: 3px;
}

.ats-header-trigger__icon--menu span {
	display: block;
	width: 18px;
	height: 1px;
	background: currentColor;
}

.ats-header-trigger__icon--search {
	font-size: 1rem;
	line-height: 1;
}

.ats-branding--center {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.ats-branding__logo {
	display: flex;
	align-items: center;
}

.ats-branding__logo .custom-logo-link,
.ats-branding__link {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: var(--ats-text);
}

.ats-branding__title {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.28em;
	text-transform: uppercase;
}

.ats-branding--center .custom-logo {
	display: block;
	max-height: 58px;
	width: auto;
}

.ats-header-call {
	margin: 0;
	color: var(--ats-text);
	font-size: 0.76rem;
	font-weight: 400;
	letter-spacing: 0.12em;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
}

.ats-header-actions {
	gap: 6px;
}

.ats-header-icon,
.ats-inquiry-placeholder,
.ats-mobile-drawer__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	min-width: 40px;
	min-height: 40px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--ats-text);
	text-decoration: none;
}

.ats-header-icon {
	position: relative;
}

.ats-header-icon__count {
	position: absolute;
	top: -4px;
	right: -2px;
	min-width: 18px;
	height: 18px;
	padding: 0 4px;
	border-radius: 999px;
	background: #171717;
	color: #ffffff;
	font-size: 0.62rem;
	line-height: 18px;
	text-align: center;
}

.ats-header-icon:hover,
.ats-header-icon:focus,
.ats-header-trigger:hover,
.ats-header-trigger:focus,
.ats-header-call:hover,
.ats-header-call:focus {
	color: #000000;
	background: transparent;
}

.ats-header-search-panel {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	right: 0;
	padding: 16px 18px;
	border: 1px solid var(--ats-border);
	border-radius: 0;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: none;
}

.ats-search-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
}

.ats-search-form__input,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.quantity .qty,
.coupon input.input-text,
#review_form input[type='text'],
#review_form input[type='email'],
#review_form textarea {
	min-height: 52px;
	padding: 0 18px;
	border: 1px solid var(--ats-border-strong);
	border-radius: 999px;
	background: #ffffff;
	color: var(--ats-text);
	box-shadow: none;
}

.ats-search-form__input::placeholder,
.woocommerce form .form-row input.input-text::placeholder,
.woocommerce form .form-row textarea::placeholder,
#review_form input::placeholder,
#review_form textarea::placeholder {
	color: var(--ats-text-faint);
}

.ats-mobile-drawer {
	position: fixed;
	inset: 0;
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	padding: 0;
	margin-top: 0;
	background: rgba(255, 255, 255, 0.82);
	backdrop-filter: blur(8px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity var(--ats-transition), visibility var(--ats-transition);
}

.ats-mobile-drawer[hidden] {
	display: none !important;
}

.ats-mobile-drawer.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.ats-mobile-drawer__inner {
	display: grid;
	gap: 18px;
	width: min(420px, calc(100vw - 18px));
	height: 100%;
	padding: 28px 24px;
	border: 0;
	border-inline-end: 1px solid var(--ats-border);
	border-radius: 0;
	background: #ffffff;
	box-shadow: none;
	overflow-y: auto;
	transform: translateX(-100%);
	transition: transform 260ms ease;
}

.ats-mobile-drawer.is-open .ats-mobile-drawer__inner {
	transform: translateX(0);
}

.ats-mobile-drawer__header,
.ats-mobile-drawer__actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.ats-mobile-drawer__heading {
	margin: 0 0 14px;
	color: var(--ats-text-soft);
	font-size: 0.68rem;
	font-weight: 400;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.ats-menu,
.ats-menu--mobile,
.ats-menu--fallback,
.ats-footer-menu,
.ats-footer-bottom__links,
.ats-zone-links,
.ats-single-panel__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ats-menu--mobile,
.ats-menu--fallback {
	display: grid;
	gap: 6px;
}

.ats-menu--mobile a,
.ats-menu--fallback a {
	display: block;
	padding: 12px 0;
	color: var(--ats-text);
	font-size: 0.96rem;
	text-decoration: none;
}

.ats-mobile-drawer__markets {
	padding-top: 14px;
	border-top: 1px solid var(--ats-border);
}

.ats-zone-links {
	display: grid;
	gap: 10px;
}

.ats-zone-links a {
	color: var(--ats-text);
	text-decoration: none;
}

.ats-site-footer {
	padding: 88px 0 26px;
	border-top: 1px solid var(--ats-border);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), #fbfaf7 100%);
}

.ats-footer-editorial {
	display: grid;
	gap: 38px;
}

.ats-footer-editorial__intro {
	max-width: 640px;
	padding-bottom: 10px;
}

.ats-footer-editorial__eyebrow {
	margin: 0 0 14px;
	color: rgba(23, 23, 23, 0.76);
	font-size: 0.68rem;
	font-weight: 400;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.ats-footer-editorial__statement {
	margin: 0;
	max-width: 32rem;
}

.ats-footer-editorial__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px 28px;
}

.ats-footer-column {
	min-width: 0;
}

.ats-footer-column__title {
	margin: 0 0 18px;
}

.ats-footer-column__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--ats-text);
	text-align: left;
	cursor: pointer;
}

.ats-footer-column__title-text {
	color: var(--ats-text);
	font-size: 0.68rem;
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1.5;
	text-transform: uppercase;
}

.ats-footer-column__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.2rem;
	color: var(--ats-text-soft);
	font-size: 1rem;
	line-height: 1;
	transition: transform 180ms ease, opacity 180ms ease;
}

.ats-footer-column.is-expanded .ats-footer-column__icon {
	transform: rotate(45deg);
}

.ats-footer-column__panel[hidden] {
	display: none !important;
}

.ats-footer-column__description {
	margin: 0 0 18px;
	max-width: 20rem;
}

.ats-footer-menu,
.ats-footer-bottom__links {
	display: grid;
	gap: 12px;
}

.ats-footer-bottom__links {
	gap: 10px 18px;
}

.ats-footer-menu a,
.ats-footer-bottom__links a {
	color: #232323;
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.8;
	text-decoration: none;
	text-underline-offset: 0.2em;
}

.ats-footer-menu a:hover,
.ats-footer-menu a:focus,
.ats-footer-bottom__links a:hover,
.ats-footer-bottom__links a:focus {
	text-decoration: underline;
}

.ats-footer-bottom {
	flex-direction: column;
	align-items: flex-start;
	gap: 18px;
	margin-top: 42px;
	padding-top: 18px;
	border-top: 1px solid var(--ats-border);
}

.ats-home-hero {
	padding-top: 0;
	padding-bottom: 24px;
}

.ats-home-hero__panel {
	position: relative;
	width: 100%;
	min-height: clamp(560px, 82vh, 840px);
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #ffffff;
	box-shadow: none;
	overflow: hidden;
}

.ats-home-hero__media,
.ats-home-hero__wash {
	position: absolute;
	inset: 0;
}

.ats-home-hero__image,
.ats-home-hero__video,
.ats-home-hero__iframe {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: 0;
}

.ats-home-hero__wash {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.92) 0%, rgba(255, 255, 255, 0.8) 34%, rgba(255, 255, 255, 0.34) 68%, rgba(255, 255, 255, 0.12) 100%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.12));
}

.ats-home-hero__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
	align-items: end;
	gap: 28px;
	min-height: inherit;
	padding-top: 84px;
	padding-bottom: 52px;
}

.ats-home-hero__content,
.ats-home-hero__aside {
	position: relative;
	z-index: 1;
}

.ats-home-hero__content {
	display: grid;
	align-content: end;
	max-width: 640px;
	min-height: min(58vh, 620px);
}

.ats-home-hero__content h1 {
	max-width: 11ch;
	margin: 0 0 18px;
	font-size: clamp(2.8rem, 5vw, 4.75rem);
	font-weight: 400;
	line-height: 1.04;
	letter-spacing: -0.02em;
	color: var(--ats-text);
	text-wrap: balance;
}

.ats-home-hero__content p {
	max-width: 560px;
}

.ats-home-hero__actions {
	flex-wrap: wrap;
	margin-top: 26px;
}

.ats-home-hero__aside {
	display: grid;
	align-content: end;
	gap: 14px;
}

.ats-home-hero__spotlight,
.ats-home-hero__stat,
.ats-home-video__copy,
.ats-home-video__media,
.ats-story__copy,
.ats-story__media,
.ats-trust-item,
.ats-empty-state,
.ats-shop-toolbar,
.ats-zone-page-intro__copy,
.ats-zone-page-campaign__content,
.ats-zone-page-story__card,
.ats-single-panel {
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid var(--ats-border);
	border-radius: var(--ats-radius-md);
	box-shadow: none;
}

.ats-home-hero__spotlight {
	padding: 22px 24px;
	backdrop-filter: blur(8px);
}

.ats-home-hero__stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.ats-home-hero__stat {
	min-height: 0;
	padding: 14px 16px;
	text-align: left;
}

.ats-home-hero__stat strong {
	display: block;
	margin-bottom: 4px;
	font-size: 1.05rem;
	font-weight: 400;
	color: var(--ats-text);
}

.ats-home-hero__stat span {
	display: block;
	font-size: 0.74rem;
	line-height: 1.45;
	color: var(--ats-text-soft);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ats-home-video__layout,
.ats-story__layout,
.ats-zone-page-campaign__layout {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	align-items: stretch;
}

.ats-home-video__copy,
.ats-home-video__media,
.ats-story__copy,
.ats-story__media,
.ats-zone-page-campaign__content,
.ats-zone-page-campaign__media {
	padding: 28px;
}

.ats-home-video__media iframe,
.ats-home-video__media video,
.ats-home-video__media img,
.ats-story__media img,
.ats-zone-page-campaign__media img {
	display: block;
	width: 100%;
	border-radius: calc(var(--ats-radius-md) - 6px);
}

.ats-zone-grid,
.ats-collection-grid,
.ats-trust-grid,
.ats-product-grid,
.ats-zone-page-story__grid {
	display: grid;
	gap: 24px;
}

.ats-zone-grid,
.ats-collection-grid,
.ats-trust-grid,
.ats-zone-page-story__grid {
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.ats-zone-card,
.ats-collection-card,
.ats-zone-page-story__card,
.ats-product-card {
	overflow: hidden;
	border: 1px solid var(--ats-border);
	border-radius: var(--ats-radius-lg);
	background: #ffffff;
	box-shadow: none;
}

.ats-zone-card,
.ats-collection-card {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: inherit;
}

.ats-collection-card__link {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 100%;
	text-decoration: none;
	color: inherit;
}

.ats-zone-card__media,
.ats-collection-card__media,
.ats-product-card__media {
	position: relative;
	aspect-ratio: 4 / 3;
	background: #ffffff;
	overflow: hidden;
}

.ats-product-card__media {
	aspect-ratio: 4 / 5;
}

.ats-zone-card__image,
.ats-collection-card__image,
.ats-product-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 260ms ease;
}

.ats-zone-card:hover .ats-zone-card__image,
.ats-zone-card:focus-visible .ats-zone-card__image,
.ats-zone-card:focus-within .ats-zone-card__image,
.ats-collection-card:hover .ats-collection-card__image,
.ats-collection-card:focus-within .ats-collection-card__image,
.ats-product-card:hover .ats-product-card__media img,
.ats-product-card:focus-within .ats-product-card__media img {
	transform: scale(1.03);
}

.ats-zone-card:hover,
.ats-zone-card:focus-visible,
.ats-zone-card:focus-within {
	border-color: rgba(23, 23, 23, 0.24);
	box-shadow: 0 16px 36px rgba(17, 24, 39, 0.08);
	transform: translateY(-2px);
}

.ats-zone-card:focus-visible {
	outline: 2px solid #171717;
	outline-offset: 4px;
}

.ats-collection-card:hover,
.ats-collection-card:focus-within {
	border-color: rgba(23, 23, 23, 0.24);
	box-shadow: 0 16px 36px rgba(17, 24, 39, 0.08);
	transform: translateY(-2px);
}

.ats-collection-card__link:focus-visible {
	outline: 2px solid #171717;
	outline-offset: 4px;
}

.ats-zone-card__flag,
.ats-product-card__placeholder {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	background: linear-gradient(180deg, rgba(23, 23, 23, 0.04), rgba(23, 23, 23, 0.08));
	color: var(--ats-text);
	font-size: 1.8rem;
	font-weight: 400;
}

.ats-zone-card__content,
.ats-collection-card__content,
.ats-product-card__content,
.ats-trust-item,
.ats-empty-state,
.ats-zone-page-story__card {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 12px;
	padding: 22px 22px 24px;
}

.ats-zone-card__content h3,
.ats-collection-card__content h3,
.ats-trust-item h3,
.ats-product-card__title {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0.015rem;
	color: var(--ats-text);
}

.ats-collection-card__button {
	margin-top: auto;
}

.ats-product-grid {
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.ats-product-card__category,
.ats-product-category-label {
	margin: 0;
	order: 0;
	color: var(--ats-text-soft);
	font-size: 0.72rem;
	font-weight: 400;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.ats-product-card__title a {
	color: var(--ats-text);
	text-decoration: none;
}

.ats-product-card__specs {
	margin: 0;
	padding: 0;
	list-style: none;
	color: var(--ats-text-soft);
	font-size: 0.9rem;
}

.ats-product-card__specs li + li {
	margin-top: 6px;
}

.ats-product-card__price {
	margin: 0;
	color: var(--ats-text);
	font-size: 1rem;
	line-height: 1.4;
}

.ats-product-card__actions {
	flex-wrap: wrap;
	margin-top: auto;
	padding-top: 6px;
}

.ats-product-card__actions .ats-button {
	flex: 1 1 180px;
	min-height: 44px;
	font-size: 0.74rem;
}

/* TecHorse homepage featured inverter showcase */
.ats-product-showcase--homepage-featured .ats-section-heading {
	max-width: 44rem;
	margin-bottom: 30px;
}

.ats-product-showcase--homepage-featured .ats-product-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-auto-rows: 1fr;
	align-items: stretch;
}

.ats-product-showcase--homepage-featured .ats-product-card {
	display: flex;
	flex-direction: column;
	position: relative;
	box-sizing: border-box;
	min-height: 100%;
	border-color: transparent;
	background: #ffffff;
	background-clip: padding-box;
	box-shadow: inset 0 0 0 1px var(--ats-border);
	isolation: isolate;
}

.ats-product-showcase--homepage-featured .ats-product-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: auto;
	min-height: clamp(280px, 32vw, 380px);
	padding: clamp(22px, 3vw, 34px);
	background: #fbfbfb;
	overflow: hidden;
	line-height: 0;
}

.ats-product-showcase--homepage-featured .ats-product-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.ats-product-showcase--homepage-featured .ats-product-card:hover .ats-product-card__media img,
.ats-product-showcase--homepage-featured .ats-product-card:focus-within .ats-product-card__media img {
	transform: none;
}

.ats-product-showcase--homepage-featured .ats-product-card__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 14px;
	padding: 24px 24px 26px;
	position: relative;
	z-index: 1;
	background: transparent;
}

.ats-product-showcase--homepage-featured .ats-product-card__title {
	font-size: 1.2rem;
	line-height: 1.35;
}

.ats-product-showcase--homepage-featured .ats-product-card__specs {
	display: grid;
	gap: 8px;
	font-size: 0.92rem;
	line-height: 1.6;
}

.ats-product-showcase--homepage-featured .ats-product-card__specs li {
	position: relative;
	padding-left: 16px;
}

.ats-product-showcase--homepage-featured .ats-product-card__specs li::before {
	content: '';
	position: absolute;
	top: 0.72em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #171717;
	transform: translateY(-50%);
}

.ats-product-showcase--homepage-featured .ats-product-card__zone {
	margin: 0;
	color: var(--ats-text-soft);
	font-size: 0.82rem;
	line-height: 1.55;
}

.ats-product-showcase--homepage-featured .ats-product-card__actions {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 10px;
	margin-top: auto;
	padding-top: 10px;
}

.ats-product-showcase--homepage-featured .ats-product-card__actions .ats-button {
	flex: 1 1 calc(50% - 5px);
	font-size: 0.78rem;
}

.ats-product-showcase--homepage-featured .ats-product-card__tertiary {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: flex-start;
	width: auto;
	min-height: 0;
	line-height: 1.4;
	white-space: nowrap;
	color: var(--ats-text-soft);
	font-size: 0.76rem;
	letter-spacing: 0.08em;
	text-decoration: none;
	text-transform: uppercase;
}

.ats-product-showcase--homepage-featured .ats-product-card__tertiary:hover,
.ats-product-showcase--homepage-featured .ats-product-card__tertiary:focus-visible {
	color: var(--ats-text);
}

.ats-trust .ats-trust-item__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid var(--ats-border);
	border-radius: 12px;
	background: #fbfbfb;
	color: #171717;
}

.ats-trust .ats-trust-item__icon svg {
	width: 22px;
	height: 22px;
}

.ats-woo-shell {
	display: grid;
	gap: 24px;
}

.ats-shop-toolbar {
	display: grid;
	gap: 20px;
	padding: 28px;
	border-radius: var(--ats-radius-lg);
}

.ats-shop-toolbar__filters {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	align-items: end;
}

.ats-shop-toolbar__field {
	display: grid;
	gap: 8px;
}

.ats-shop-toolbar__field label {
	margin: 0;
	color: var(--ats-text);
	font-size: 0.78rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ats-shop-toolbar__field select {
	width: 100%;
	min-height: 48px;
	padding: 0 14px;
	border: 1px solid var(--ats-border);
	border-radius: 14px;
	background: #ffffff;
	color: var(--ats-text);
	font-size: 0.95rem;
	font-family: var(--techorse-font-family);
}

.ats-shop-toolbar__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.ats-shop-toolbar__actions .ats-button {
	flex: 1 1 180px;
}

body.techorse-shop-archive .ats-page-content > .ats-shell,
body.techorse-shop-archive .ats-page-content .woocommerce {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

body.techorse-shop-archive .ats-woo-shell {
	gap: 28px;
}

body.techorse-shop-archive .woocommerce .woocommerce-result-count,
body.techorse-shop-archive .woocommerce .woocommerce-ordering {
	margin: 0;
}

body.techorse-shop-archive .woocommerce .woocommerce-result-count {
	color: var(--ats-text-soft);
	font-size: 0.92rem;
}

body.techorse-shop-archive .woocommerce .woocommerce-ordering select {
	min-height: 44px;
	padding: 0 14px;
	border: 1px solid var(--ats-border);
	border-radius: 14px;
	background: #ffffff;
	color: var(--ats-text);
	font-family: var(--techorse-font-family);
}

body.techorse-shop-archive .techorse-woocommerce .woocommerce ul.products,
body.techorse-shop-archive .techorse-woocommerce .woocommerce-page ul.products,
body.techorse-shop-archive.woocommerce ul.products:not(.elementor-grid),
body.techorse-shop-archive.woocommerce-page ul.products:not(.elementor-grid),
body.techorse-shop-archive .ats-page-content .woocommerce ul.products {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.techorse-shop-archive .techorse-woocommerce .woocommerce ul.products li.product,
body.techorse-shop-archive .techorse-woocommerce .woocommerce-page ul.products li.product,
body.techorse-shop-archive .ats-page-content .woocommerce ul.products li.product {
	border-radius: 22px;
	box-shadow: none;
}

body.techorse-shop-archive .ats-shop-card {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 100%;
}

body.techorse-shop-archive .techorse-woocommerce .woocommerce ul.products li.product > a:first-of-type,
body.techorse-shop-archive .techorse-woocommerce .woocommerce-page ul.products li.product > a:first-of-type,
body.techorse-shop-archive .ats-page-content .woocommerce ul.products li.product > a:first-of-type {
	display: block;
	padding: 28px 28px 18px;
	background: #fbfbfb;
}

body.techorse-shop-archive .techorse-woocommerce .woocommerce ul.products li.product a img,
body.techorse-shop-archive .techorse-woocommerce .woocommerce-page ul.products li.product a img,
body.techorse-shop-archive .ats-page-content .woocommerce ul.products li.product a img {
	height: 260px;
	aspect-ratio: auto;
	object-fit: contain;
	object-position: center;
}

body.techorse-shop-archive .ats-loop-card__content {
	gap: 14px;
	padding: 0 24px 24px;
}

body.techorse-shop-archive .techorse-woocommerce .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.techorse-shop-archive .techorse-woocommerce .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
	font-size: 1.08rem;
	line-height: 1.4;
}

body.techorse-shop-archive .ats-shop-card__summary,
body.techorse-shop-archive .ats-shop-card__availability-text {
	margin: 0;
	color: var(--ats-text-soft);
	font-size: 0.94rem;
	line-height: 1.7;
}

body.techorse-shop-archive .ats-shop-card__availability {
	display: grid;
	gap: 10px;
}

body.techorse-shop-archive .ats-shop-card__availability-label {
	color: var(--ats-text);
	font-size: 0.76rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.techorse-shop-archive .ats-shop-card__zones {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

body.techorse-shop-archive .ats-shop-card__zone-badge {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0 12px;
	border: 1px solid var(--ats-border);
	border-radius: 999px;
	background: #ffffff;
	color: var(--ats-text);
	font-size: 0.74rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

body.techorse-shop-archive .ats-loop-card__actions--shop {
	gap: 10px;
	margin-top: auto;
	padding-top: 4px;
}

body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link {
	flex: 1 1 150px;
	min-height: 46px;
}

body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link--primary {
	background: #171717;
	border-color: #171717;
	color: #ffffff;
}

body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link--tertiary {
	flex: 0 0 auto;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--ats-text-soft);
	font-size: 0.76rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link--tertiary:hover,
body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link--tertiary:focus-visible {
	background: transparent;
	color: var(--ats-text);
}

.ats-page-hero {
	padding: 48px 0 16px;
}

.ats-page-content {
	padding: 24px 0 64px;
}

.ats-page-content > .ats-shell,
.ats-page-content .woocommerce {
	padding: 28px;
	border: 1px solid var(--ats-border);
	border-radius: var(--ats-radius-xl);
	background: rgba(255, 255, 255, 0.98);
}

.techorse-woocommerce .woocommerce ul.products,
.techorse-woocommerce .woocommerce-page ul.products,
.products.columns-4 {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 24px;
	margin: 0;
}

.techorse-woocommerce .woocommerce ul.products::before,
.techorse-woocommerce .woocommerce ul.products::after,
.techorse-woocommerce .woocommerce-page ul.products::before,
.techorse-woocommerce .woocommerce-page ul.products::after {
	display: none;
}

.techorse-woocommerce .woocommerce ul.products li.product,
.techorse-woocommerce .woocommerce-page ul.products li.product,
.ats-page-content .woocommerce ul.products li.product,
.ats-page-content .woocommerce-page ul.products li.product {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--ats-border);
	border-radius: 28px;
	background: #ffffff;
	box-shadow: var(--ats-shadow-soft);
}

.techorse-woocommerce .woocommerce ul.products li.product > a:first-of-type,
.techorse-woocommerce .woocommerce-page ul.products li.product > a:first-of-type {
	display: block;
}

.techorse-woocommerce .woocommerce ul.products li.product a img,
.techorse-woocommerce .woocommerce-page ul.products li.product a img,
.ats-page-content .woocommerce ul.products li.product a img {
	width: 100%;
	height: auto;
	margin: 0;
	border-radius: 0;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: center;
}

.ats-loop-badges {
	position: absolute;
	top: 16px;
	left: 16px;
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ats-loop-badge {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 0 12px;
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ats-loop-badge--sale {
	background: #171717;
	color: #ffffff;
}

.ats-loop-badge--featured {
	background: rgba(255, 255, 255, 0.9);
	color: #171717;
	border: 1px solid var(--ats-border);
}

.ats-loop-media-overlay {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 2;
}

.ats-inquiry-placeholder {
	width: 42px;
	height: 42px;
	border: 1px solid var(--ats-border);
	background: rgba(255, 255, 255, 0.88);
	cursor: not-allowed;
}

.ats-loop-card__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 12px;
	padding: 22px 22px 24px;
}

.techorse-woocommerce .woocommerce ul.products li.product .woocommerce-loop-product__title,
.techorse-woocommerce .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
	display: block;
	margin: 0;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.45;
	color: var(--ats-text);
}

.techorse-woocommerce .woocommerce ul.products li.product .price,
.techorse-woocommerce .woocommerce-page ul.products li.product .price {
	margin: 0;
	font-size: 1rem;
	line-height: 1.4;
	color: var(--ats-text);
}

.ats-product-merch-note {
	margin-top: -2px;
	font-size: 0.84rem;
	line-height: 1.55;
}

.ats-loop-card__actions {
	flex-wrap: wrap;
	margin-top: auto;
	padding-top: 6px;
}

.ats-loop-card__actions .button,
.ats-loop-card__actions .ats-loop-card__link {
	flex: 1 1 180px;
	min-height: 44px;
}

.ats-loop-card__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 18px;
	border: 1px solid rgba(23, 23, 23, 0.14);
	border-radius: 999px;
	color: #171717;
	text-decoration: none;
	background: rgba(255, 255, 255, 0.94);
}

.ats-loop-card__link:hover,
.ats-loop-card__link:focus-visible {
	border-color: #171717;
	background: #171717;
	color: #ffffff;
}

.techorse-single-product div.product {
	max-width: 1240px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.88fr);
	gap: clamp(32px, 4vw, 64px);
	align-items: start;
}

.techorse-single-product div.product .woocommerce-product-gallery,
.techorse-single-product div.product .summary,
.techorse-single-product div.product .entry-summary {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin-top: 0 !important;
}

.techorse-single-product .woocommerce-product-gallery__image,
.techorse-single-product .woocommerce-tabs .panel,
.techorse-single-product .ats-single-panel,
.techorse-single-product .ats-trust-item,
.techorse-single-product table.shop_attributes {
	border: 1px solid rgba(17, 17, 17, 0.12);
	box-shadow: 0 16px 38px rgba(17, 17, 17, 0.03);
	background: #ffffff;
}

.techorse-single-product .woocommerce-product-gallery__image {
	border-radius: 30px;
	overflow: hidden;
}

.techorse-single-product .woocommerce-product-gallery__image a,
.techorse-single-product .woocommerce-product-gallery__image img,
.techorse-single-product .flex-control-thumbs li img {
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.techorse-single-product .summary.entry-summary {
	display: grid;
	gap: 18px;
	padding: clamp(32px, 3vw, 40px);
	border: 1px solid rgba(17, 17, 17, 0.1);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.99);
	box-shadow: 0 24px 58px rgba(17, 17, 17, 0.05);
}

.techorse-single-product .summary.entry-summary h1.product_title,
.techorse-single-product .woocommerce-tabs .panel > h2,
.techorse-single-product .woocommerce-tabs .panel h3,
.techorse-single-product .woocommerce-tabs .panel h4,
.techorse-single-product .ats-single-panel__header h2,
.techorse-single-product th,
.techorse-single-product strong {
	color: var(--ats-text) !important;
}

.techorse-single-product .summary.entry-summary .price,
.techorse-single-product .summary.entry-summary .price .amount,
.techorse-single-product .woocommerce-Price-amount {
	color: var(--ats-text) !important;
}

.techorse-single-product .woocommerce-tabs {
	margin-top: 36px;
}

.techorse-single-product .woocommerce-tabs ul.tabs li {
	background: rgba(247, 244, 237, 0.92);
	border: 1px solid rgba(17, 17, 17, 0.08);
}

.techorse-single-product .woocommerce-tabs ul.tabs li.active {
	background: #171717;
	border-color: #171717;
}

.techorse-single-product .woocommerce-tabs ul.tabs li.active a {
	color: #ffffff !important;
}

.techorse-single-product .ats-single-panel {
	margin-top: 32px;
	padding: 28px;
	border-radius: var(--ats-radius-lg);
}

.techorse-cart .woocommerce,
.techorse-checkout .woocommerce {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
	align-items: start;
	gap: clamp(24px, 4vw, 40px);
}

.techorse-cart .woocommerce-cart-form,
.techorse-checkout .col2-set,
.techorse-account .woocommerce {
	margin: 0;
}

.techorse-cart .woocommerce table.shop_table,
.techorse-checkout .woocommerce table.shop_table,
.techorse-account .woocommerce table.shop_table {
	margin: 0;
	border-radius: 28px;
	overflow: hidden;
}

.techorse-cart .woocommerce table.shop_table th,
.techorse-cart .woocommerce table.shop_table td,
.techorse-checkout .woocommerce table.shop_table th,
.techorse-checkout .woocommerce table.shop_table td,
.techorse-account .woocommerce table.shop_table th,
.techorse-account .woocommerce table.shop_table td {
	padding: 18px 20px;
	vertical-align: middle;
}

.techorse-cart .woocommerce table.shop_table .product-thumbnail img {
	width: 110px;
	height: auto;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	border-radius: 18px;
}

.techorse-cart .actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

.techorse-cart .coupon {
	display: flex;
	flex: 1 1 320px;
	flex-wrap: wrap;
	gap: 12px;
}

.techorse-cart .cart_totals {
	position: sticky;
	top: 132px;
	padding: 28px;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.96);
}

.ats-empty-state {
	padding: 28px;
	border-radius: var(--ats-radius-lg);
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-radius: 18px;
}

.ats-zone-page-intro__copy,
.ats-zone-page-campaign__content,
.ats-zone-page-story__card {
	padding: 28px;
	border-radius: var(--ats-radius-lg);
}

.ats-zone-page-campaign__media img,
.ats-story__media img {
	min-height: 100%;
	object-fit: cover;
}

body.techorse-front-page .ats-header-main {
	padding-bottom: 0;
}

@media (min-width: 768px) {
	.ats-footer-editorial__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ats-footer-column__icon {
		display: none;
	}

	.ats-footer-bottom__links {
		display: flex;
		flex-wrap: wrap;
	}
}

@media (min-width: 1080px) {
	.ats-footer-editorial__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 32px;
	}

	.ats-footer-bottom {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}
}

@media (max-width: 1180px) {
	.techorse-single-product div.product {
		grid-template-columns: 1fr;
	}

	.techorse-cart .woocommerce,
	.techorse-checkout .woocommerce {
		grid-template-columns: 1fr;
	}

	.techorse-cart .cart_totals {
		position: static;
		top: auto;
	}
}

@media (max-width: 1023px) {
	.ats-header-main__inner {
		min-height: 78px;
		gap: 12px;
	}

	.ats-header-side {
		gap: 12px;
	}

	.ats-header-call {
		display: none;
	}

	.ats-home-hero__inner,
	.ats-home-video__layout,
	.ats-story__layout,
	.ats-zone-page-campaign__layout {
		grid-template-columns: 1fr;
	}

	.ats-home-hero__aside {
		max-width: 560px;
	}
}

@media (max-width: 767px) {
	body.admin-bar .ats-site-header {
		top: 46px;
	}

	.ats-site-main {
		padding-bottom: 72px;
	}

	.ats-header-main__inner {
		min-height: 72px;
	}

	.ats-header-trigger__label {
		display: none;
	}

	.ats-branding__title {
		font-size: 0.82rem;
		letter-spacing: 0.18em;
	}

	.ats-branding--center .custom-logo {
		max-height: 42px;
	}

	.ats-mobile-drawer__inner {
		width: min(100vw, 420px);
		padding: 22px 18px;
	}

	.ats-footer-editorial__grid {
		gap: 0;
		border-top: 1px solid var(--ats-border);
	}

	.ats-footer-column {
		padding: 18px 0;
		border-bottom: 1px solid var(--ats-border);
	}

	.ats-footer-column__title {
		margin: 0;
	}

	.ats-footer-column__panel {
		padding-top: 16px;
	}

	.ats-home-hero__panel {
		min-height: clamp(520px, 74vh, 760px);
	}

	.ats-home-hero__wash {
		background:
			linear-gradient(180deg, rgba(255, 255, 255, 0.82) 0%, rgba(255, 255, 255, 0.52) 46%, rgba(255, 255, 255, 0.18) 100%),
			linear-gradient(90deg, rgba(255, 255, 255, 0.88), rgba(255, 255, 255, 0.18));
	}

	.ats-home-hero__inner {
		gap: 18px;
		padding-top: 104px;
		padding-bottom: 34px;
	}

	.ats-home-hero__content,
	.ats-home-hero__aside {
		max-width: 100%;
		min-height: 0;
	}

	.ats-home-hero__content h1 {
		max-width: 10ch;
		font-size: clamp(2.15rem, 9vw, 3.5rem);
	}

	.ats-home-hero__actions {
		gap: 10px;
		max-width: 360px;
	}

	.ats-home-hero__aside {
		display: none;
	}

	.ats-home-hero__stats {
		grid-template-columns: 1fr;
	}

	.ats-home-hero__actions,
	.ats-product-card__actions,
	.ats-loop-card__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.ats-product-card__actions .ats-button,
	.ats-loop-card__actions .button,
	.ats-loop-card__actions .ats-loop-card__link,
	.techorse-cart .coupon,
	.techorse-cart .coupon input.input-text {
		width: 100%;
	}

	.ats-home-video__copy,
	.ats-home-video__media,
	.ats-story__copy,
	.ats-story__media,
	.ats-zone-page-intro__copy,
	.ats-zone-page-campaign__content,
	.ats-zone-page-story__card,
	.ats-shop-toolbar,
	.ats-single-panel,
	.ats-page-content > .ats-shell,
	.ats-page-content .woocommerce,
	.techorse-single-product .summary.entry-summary {
		padding: 22px;
	}

	.ats-zone-grid,
	.ats-collection-grid,
	.ats-trust-grid,
	.ats-product-grid,
	.techorse-woocommerce .woocommerce ul.products,
	.techorse-woocommerce .woocommerce-page ul.products,
	.products.columns-4 {
		grid-template-columns: 1fr;
	}

	body.techorse-shop-archive .techorse-woocommerce .woocommerce ul.products,
	body.techorse-shop-archive .techorse-woocommerce .woocommerce-page ul.products,
	body.techorse-shop-archive.woocommerce ul.products:not(.elementor-grid),
	body.techorse-shop-archive.woocommerce-page ul.products:not(.elementor-grid),
	body.techorse-shop-archive .ats-page-content .woocommerce ul.products,
	.ats-shop-toolbar__filters {
		grid-template-columns: 1fr;
	}

	body.techorse-shop-archive .techorse-woocommerce .woocommerce ul.products li.product > a:first-of-type,
	body.techorse-shop-archive .techorse-woocommerce .woocommerce-page ul.products li.product > a:first-of-type,
	body.techorse-shop-archive .ats-page-content .woocommerce ul.products li.product > a:first-of-type,
	body.techorse-shop-archive .ats-loop-card__content {
		padding-left: 22px;
		padding-right: 22px;
	}

	body.techorse-shop-archive .ats-loop-card__content {
		padding-bottom: 22px;
	}

	body.techorse-shop-archive .ats-loop-card__actions--shop {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		align-items: center;
	}

	body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link {
		width: auto;
		min-width: 0;
		min-height: 44px;
		padding: 0 14px;
		box-sizing: border-box;
		aspect-ratio: auto;
	}

	body.techorse-shop-archive .ats-loop-card__actions--shop .ats-loop-card__link--tertiary {
		grid-column: 1 / -1;
		width: auto;
		min-height: 0;
		padding: 0;
		justify-self: center;
		justify-content: center;
		text-align: center;
		white-space: nowrap;
	}

	body.techorse-shop-archive .ats-shop-toolbar__actions .ats-button {
		width: 100%;
	}

	.ats-product-showcase--homepage-featured .ats-product-grid {
		grid-template-columns: 1fr;
	}

	.ats-product-showcase--homepage-featured .ats-product-card__media {
		min-height: 250px;
	}

	.ats-product-showcase--homepage-featured .ats-product-card__content {
		padding: 22px;
	}

	.ats-product-showcase--homepage-featured .ats-product-card__actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: center;
	}

	.ats-product-showcase--homepage-featured .ats-product-card__actions .ats-button {
		min-width: 0;
		width: 100%;
	}

	.ats-product-showcase--homepage-featured .ats-product-card__tertiary {
		grid-column: 1 / -1;
		width: auto;
		justify-self: center;
		justify-content: center;
		margin: 0;
	}

	.ats-section-heading h2,
	.ats-page-hero h1,
	.ats-shop-toolbar__heading h2,
	.ats-single-panel__header h2,
	.ats-zone-page-intro__copy h2,
	.ats-zone-page-campaign__content h2 {
		font-size: 1.6rem;
		line-height: 1.28;
	}

	.techorse-cart .woocommerce table.shop_table th,
	.techorse-cart .woocommerce table.shop_table td,
	.techorse-checkout .woocommerce table.shop_table th,
	.techorse-checkout .woocommerce table.shop_table td {
		padding: 14px 16px;
	}
}

/* TecHorse zone page professional polish */
.ats-zone-page-hero {
	position: relative;
	overflow: hidden;
	min-height: 0;
	padding-top: 0;
	padding-bottom: 24px;
}

.ats-zone-page-hero--with-image {
	padding-bottom: 0;
	background: #ffffff;
}

.ats-zone-page-hero__fallback {
	position: absolute;
	inset: 0;
}

.ats-zone-page-hero__media {
	position: relative;
}

.ats-zone-page-hero__media img {
	width: 100%;
	height: auto;
	display: block;
	object-position: center;
}

.ats-zone-page-hero__fallback {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.76) 34%, rgba(255, 255, 255, 0.2) 72%, rgba(255, 255, 255, 0.08) 100%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.16));
}

.ats-zone-page-hero__inner {
	position: relative;
	z-index: 1;
	display: grid;
	align-content: end;
	width: min(var(--ats-shell), calc(100vw - 40px));
	min-height: inherit;
	margin: 0 auto;
	padding: clamp(116px, 18vh, 168px) 0 clamp(40px, 6vh, 64px);
}

.ats-zone-page-hero__inner .entry-title {
	max-width: 12ch;
	margin: 0 0 18px;
	font-size: clamp(2.7rem, 5vw, 4.7rem);
	font-weight: 400;
	line-height: 1.04;
	letter-spacing: -0.025em;
	text-wrap: balance;
	color: var(--ats-text);
}

.ats-zone-page-hero__inner > p:last-child {
	max-width: 42rem;
	margin: 0;
	font-size: 1.02rem;
	line-height: 1.8;
	color: var(--ats-text-soft);
}

.ats-zone-page-intro,
.ats-zone-page-products,
.ats-zone-page-story,
.ats-zone-page-cities,
.ats-zone-page-support,
.ats-zone-page-cta {
	padding: 36px 0;
}

.ats-zone-page-intro__copy {
	display: grid;
	gap: 16px;
}

.ats-zone-page-intro__copy h2,
.ats-zone-page-products .ats-section-heading h2,
.ats-zone-page-story .ats-section-heading h2,
.ats-zone-page-cities .ats-section-heading h2,
.ats-zone-page-support__panel h2,
.ats-zone-page-cta__inner h2 {
	font-size: clamp(1.85rem, 3vw, 2.65rem);
	line-height: 1.16;
	letter-spacing: -0.02em;
}

.ats-zone-page-intro__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	padding-top: 4px;
}

.ats-zone-page-products .ats-section-heading {
	margin-bottom: 28px;
}

.ats-zone-page-products .techorse-woocommerce .woocommerce ul.products,
.ats-zone-page-products .techorse-woocommerce .woocommerce-page ul.products {
	grid-template-columns: repeat(auto-fit, minmax(280px, 320px));
	justify-content: flex-start;
	align-items: stretch;
}

.ats-zone-products + .page-numbers,
.ats-zone-page-products .page-numbers {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
}

.ats-zone-page-products .page-numbers a,
.ats-zone-page-products .page-numbers span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	min-height: 42px;
	padding: 0 14px;
	border: 1px solid var(--ats-border);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	color: var(--ats-text);
	text-decoration: none;
}

.ats-zone-page-products .page-numbers .current {
	background: #171717;
	border-color: #171717;
	color: #ffffff;
}

.ats-zone-page-products .woocommerce ul.products li.product,
.ats-zone-page-products .woocommerce-page ul.products li.product {
	display: flex;
	min-height: 100%;
}

.ats-zone-page-products .woocommerce ul.products li.product .woocommerce-LoopProduct-link.woocommerce-loop-product__link,
.ats-zone-page-products .woocommerce-page ul.products li.product .woocommerce-LoopProduct-link.woocommerce-loop-product__link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.ats-zone-page-products .woocommerce ul.products li.product .ats-loop-card,
.ats-zone-page-products .woocommerce-page ul.products li.product .ats-loop-card {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.ats-zone-page-products .ats-loop-card__content {
	gap: 10px;
}

.ats-zone-page-products .woocommerce-loop-product__title {
	min-height: 2.9em;
}

.ats-zone-page-products .ats-product-merch-note--zone {
	margin-top: -2px;
	color: var(--ats-text-soft);
	font-size: 0.84rem;
	line-height: 1.55;
}

.ats-zone-page-products .ats-loop-card__actions--zone {
	gap: 10px;
}

.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link {
	flex: 1 1 160px;
	min-height: 44px;
}

.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link--primary {
	background: #171717;
	border-color: #171717;
	color: #ffffff;
}

.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link--primary:hover,
.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link--primary:focus-visible {
	background: #000000;
	border-color: #000000;
	color: #ffffff;
}

.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link--tertiary {
	flex-basis: 100%;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--ats-text-soft);
	justify-content: flex-start;
	font-size: 0.76rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link--tertiary:hover,
.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link--tertiary:focus-visible {
	background: transparent;
	border: 0;
	color: #171717;
}

.ats-zone-page-cities__grid,
.ats-zone-page-support__layout {
	display: grid;
	gap: 24px;
}

.ats-zone-page-cities__grid {
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.ats-zone-page-cities__item,
.ats-zone-page-support__panel,
.ats-zone-page-cta__inner {
	border: 1px solid var(--ats-border);
	border-radius: var(--ats-radius-lg);
	background: rgba(255, 255, 255, 0.94);
}

.ats-zone-page-cities__item {
	padding: 18px 20px;
}

.ats-zone-page-cities__item h3 {
	margin: 0;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.4;
	color: var(--ats-text);
}

.ats-zone-page-support__layout {
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.ats-zone-page-support__panel {
	padding: 28px;
}

.ats-zone-page-support__panel h2 {
	margin: 0 0 16px;
	font-size: clamp(1.85rem, 3vw, 2.5rem);
	font-weight: 400;
	line-height: 1.15;
	letter-spacing: -0.02em;
	color: var(--ats-text);
}

.ats-zone-page-support__panel p {
	margin: 0;
}

.ats-zone-page-support__list {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ats-zone-page-support__list li {
	position: relative;
	padding-left: 18px;
	color: var(--ats-text-soft);
	font-size: 0.98rem;
	line-height: 1.75;
}

.ats-zone-page-support__list li::before {
	content: '';
	position: absolute;
	top: 0.78em;
	left: 0;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #171717;
	transform: translateY(-50%);
}

.ats-zone-page-cta__inner {
	padding: clamp(28px, 4vw, 40px);
	text-align: center;
}

.ats-zone-page-cta__inner h2 {
	margin: 0 0 14px;
	font-size: clamp(2rem, 4vw, 3.2rem);
	font-weight: 400;
	line-height: 1.12;
	letter-spacing: -0.02em;
	color: var(--ats-text);
}

.ats-zone-page-cta__inner p {
	max-width: 44rem;
	margin: 0 auto;
}

.ats-zone-page-cta__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	margin-top: 24px;
}

@media (max-width: 1099px) {
	body.techorse-shop-archive .techorse-woocommerce .woocommerce ul.products,
	body.techorse-shop-archive .techorse-woocommerce .woocommerce-page ul.products,
	body.techorse-shop-archive.woocommerce ul.products:not(.elementor-grid),
	body.techorse-shop-archive.woocommerce-page ul.products:not(.elementor-grid),
	body.techorse-shop-archive .ats-page-content .woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 1023px) {
	.ats-zone-page-support__layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.ats-zone-page-hero {
		padding-bottom: 24px;
	}

	.ats-zone-page-hero__inner {
		width: min(calc(100vw - 24px), var(--ats-shell));
		padding-top: 116px;
		padding-bottom: 30px;
	}

	.ats-zone-page-hero__inner .entry-title {
		max-width: 10ch;
		font-size: clamp(2.15rem, 9vw, 3.5rem);
	}

	.ats-zone-page-cities__grid {
		grid-template-columns: 1fr 1fr;
		gap: 14px;
	}

	.ats-zone-page-intro__actions,
	.ats-zone-page-cta__actions,
	.ats-zone-page-products .ats-loop-card__actions--zone {
		flex-direction: column;
		align-items: stretch;
	}

	.ats-zone-page-support__panel,
	.ats-zone-page-cta__inner {
		padding: 22px;
	}

	.ats-zone-page-products .techorse-woocommerce .woocommerce ul.products,
	.ats-zone-page-products .techorse-woocommerce .woocommerce-page ul.products,
	.ats-zone-page-cities__grid {
		grid-template-columns: 1fr;
	}

	.ats-zone-page-products .ats-loop-card__actions--zone {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		align-items: center;
	}

	.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link {
		min-width: 0;
		width: auto;
		min-height: 44px;
		padding: 0 14px;
		border-radius: 999px;
		box-sizing: border-box;
		aspect-ratio: auto;
	}

	.ats-zone-page-products .ats-loop-card__actions--zone .ats-loop-card__link--tertiary {
		grid-column: 1 / -1;
		width: auto;
		min-height: 0;
		padding: 0;
		justify-self: center;
		border-radius: 0;
		text-align: center;
		white-space: nowrap;
	}
}
