

/* Start:/local/templates/ajerramoto/src/styles/main.css?178920494641100*/
/* ============================================
   AJERRA MOTO — Rugged Motorsport Aesthetic
   ============================================ */

:root {
	/* Core Colors */
	--color-primary: #feb05d;
	--color-primary-dark: #dc872c;
	--color-bg: #f5f2f2;
	--color-bg-dark: #242424;
	--color-text: #242424;
	--color-text-light: #ffffff;
	--color-text-muted: #7b7b7b;
	--color-text-dim: #838383;
	--color-border: #d3d3d3;
	--color-border-light: #cccccc;
	--color-card: #ffffff;

	/* Typography */
	--font-display: "Krona One", sans-serif;
	--font-body: "Inter", sans-serif;

	/* Spacing */
	--space-xs: 4px;
	--space-sm: 8px;
	--space-md: 16px;
	--space-lg: 24px;
	--space-xl: 32px;
	--space-2xl: 48px;
	--space-3xl: 64px;
	--space-4xl: 76px;

	/* Container */
	--container-max: 1345px;
	--container-padding: 24px;

	/* Effects */
	--shadow-card: 0 4px 10px rgba(0, 0, 0, 0.08);
	--transition-fast: 150ms ease;
	--transition-base: 250ms ease;

	/* Border Radius */
	--radius-sm: 4px;
	--radius-md: 20px;
	--radius-lg: 34px;
	--radius-full: 9999px;

	/* Header */
	--header-height: 68px;
}

/* Reset & Base */
*,
*::before,
*::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: var(--font-body);
	font-size: 16px;
	line-height: 1.5;
	color: var(--color-text);
	background: var(--color-bg);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

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

a {
	color: inherit;
	text-decoration: none;
}

button {
	font-family: inherit;
	border: none;
	background: none;
	cursor: pointer;
}

ul {
	list-style: none;
}

.mb-0.mb-0.mb-0 {
	margin-bottom: 0;
}

/* Page Container */
.page {
	min-height: 100vh;
	background: var(--color-bg);
	position: relative;
}

/* Container */
.container {
	width: 100%;
	max-width: var(--container-max);
	margin: 0 auto;
	padding: 0 var(--container-padding);
}

/* ============================================
   HEADER
   ============================================ */

.header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	background: transparent;
}

.header .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: var(--space-md);
	padding-bottom: var(--space-md);
	position: relative;
}

.logo {
	display: block;
	background: url('/local/templates/ajerramoto/src/styles/../assets/logo.png') center / contain no-repeat;
	width: 200px;
	height: 36px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

.nav {
	display: flex;
	gap: var(--space-xl);
}

.nav-link {
	font-size: 14px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.8);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: color var(--transition-fast);
}

.nav-link:hover,
.nav-link.active {
	color: var(--color-primary);
}

.header-actions {
	display: flex;
	gap: var(--space-sm);
}

.icon-btn {
	width: 32px;
	height: 32px;
	border: 1px solid #999;
	border-radius: var(--radius-full);
	display: flex;
	align-items: center;
	justify-content: center;
	transition:
		border-color var(--transition-fast),
		background var(--transition-fast);
	color: white;
}

.icon-btn svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

.icon-btn-menu {
	display: none;
	position: relative;
}

.icon-btn-menu .menu-icon-hamburger,
.icon-btn-menu .menu-icon-close {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.icon-btn-menu .menu-icon-hamburger {
	display: block;
}

.icon-btn-menu .menu-icon-close {
	display: none;
}

.icon-btn:hover {
	border-color: var(--color-primary);
	background: rgba(254, 176, 93, 0.1);
}

/* Show cart on all screens */
.icon-btn-cart {
	display: flex;
	position: relative;
}

.icon-btn-heart {
	display: flex;
	position: relative;
}

/* Header Dark Variant (used on inner pages) */
.header.header-dark {
	background: #2c2c2c;
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.06);
}

/* Header Scrolled State */
.header.scrolled {
	background: #2c2c2c;
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.06);
}

.header.scrolled .logo {
	color: var(--color-text-light);
}

.header.scrolled .nav-link {
	color: rgba(255, 255, 255, 0.5);
}

.header.scrolled .nav-link:hover,
.header.scrolled .nav-link.active {
	color: var(--color-primary);
}

.header.scrolled .icon-btn {
	border-color: #999;
	color: white;
}

/* Page with fixed header - add padding for content */
.page-with-header {
	padding-top: var(--header-height);
}

.header.header-dark .logo {
	color: var(--color-text-light);
}

.header.header-dark .nav-link {
	color: rgba(255, 255, 255, 0.5);
}

.header.header-dark .nav-link:hover,
.header.header-dark .nav-link.active {
	color: var(--color-primary);
}

.header.header-dark .icon-btn {
	border-color: #999;
	color: white;
}

.header.header-dark .icon-btn-menu {
	/* shown only on mobile */
}

.header.header-dark .icon-btn-heart {
	display: flex;
	position: relative;
}

.header.header-dark .icon-btn-cart {
	display: flex;
	position: relative;
}

/* Mobile Menu - Hidden on desktop, shown on mobile */
.mobile-menu-overlay,
.mobile-menu {
	display: none;
}

/* Search Dropdown */
.search-dropdown {
	position: absolute;
	top: 100%;
	right: 0;
	width: 320px;
	background: var(--color-card);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
	padding: var(--space-sm);
	display: flex;
	align-items: center;
	gap: var(--space-sm);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
	transition:
		opacity var(--transition-fast),
		transform var(--transition-fast),
		visibility var(--transition-fast);
	z-index: 50;
}

.search-dropdown.active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.search-dropdown .search-input {
	flex: 1;
	border: none;
	background: transparent;
	font-family: var(--font-body);
	font-size: 14px;
	color: var(--color-text);
	outline: none;
	padding: var(--space-sm) var(--space-md);
}

.search-dropdown .search-input::placeholder {
	color: var(--color-text-muted);
}

.search-submit {
	width: 36px;
	height: 36px;
	background: var(--color-primary);
	border-radius: var(--radius-full);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transform: scale(0.8);
	transition:
		opacity var(--transition-fast),
		transform var(--transition-fast),
		visibility var(--transition-fast);
}

.search-submit.visible {
	opacity: 1;
	visibility: visible;
	transform: scale(1);
}

.search-submit:hover {
	background: var(--color-primary-dark);
}

.search-suggest {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	display: none;
	max-height: 372px;
	overflow-y: auto;
	background: #fff;
	border: 1px solid #e4e0dd;
	border-radius: 14px;
	box-shadow: 0 18px 44px rgba(0, 0, 0, 0.16);
	padding: 8px;
	z-index: 60;
}

.search-suggest.active {
	display: grid;
	gap: 4px;
}

.search-suggest__item {
	display: grid;
	grid-template-columns: 44px 1fr;
	align-items: center;
	gap: 10px;
	padding: 8px;
	border-radius: 10px;
	color: var(--color-text);
	text-decoration: none;
	transition: background var(--transition-fast);
}

.search-suggest__item:hover {
	background: #f6f2ed;
}

.search-suggest__image {
	width: 44px;
	height: 44px;
	object-fit: cover;
	border-radius: 8px;
	background: #f3f3f3;
}

.search-suggest__name {
	min-width: 0;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--color-text);
}

.search-suggest__empty {
	padding: 14px 12px;
	font-size: 13px;
	font-weight: 600;
	color: var(--color-text-muted);
}

.search-suggest__all {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	margin-top: 4px;
	background: var(--color-primary);
	border-radius: 999px;
	color: #562C00;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0;
}

.site-search-page {
	padding: 120px 0 80px;
	background: #f5f3f2;
	min-height: 60vh;
}

.site-search-head {
	margin-bottom: 24px;
}

.site-search-head h1 {
	margin: 0;
	font-size: 40px;
	font-weight: 800;
	line-height: 1.15;
	color: var(--color-text);
}

.ajerra-search {
	max-width: 960px;
}

.ajerra-search__form {
	display: flex;
	gap: 12px;
	margin-bottom: 28px;
	padding: 8px;
	background: #fff;
	border: 1px solid #e4e0dd;
	border-radius: 18px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.06);
}

.ajerra-search__input {
	flex: 1;
	min-width: 0;
	height: 50px;
	padding: 0 16px;
	background: #f7f7f7;
	border: 1px solid #e2e2e2;
	border-radius: 12px;
	outline: none;
	font-family: var(--font-body);
	font-size: 15px;
	color: var(--color-text);
	transition: border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);
}

.ajerra-search__input:focus {
	background: #fff;
	border-color: var(--color-primary);
	box-shadow: 0 0 0 4px rgba(254, 176, 93, 0.22);
}

.ajerra-search__submit,
.ajerra-search__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 28px;
	background: var(--color-primary);
	border: none;
	border-radius: 41px;
	color: #562C00;
	cursor: pointer;
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0;
	text-decoration: none;
	transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}

.ajerra-search__submit:hover,
.ajerra-search__link:hover {
	transform: translateY(-1px);
	box-shadow: 0 10px 24px rgba(254, 176, 93, 0.35);
}

.ajerra-search__summary {
	margin-bottom: 14px;
	font-size: 14px;
	font-weight: 700;
	color: var(--color-text-muted);
}

.ajerra-search__results {
	display: grid;
	gap: 12px;
}

.ajerra-search__item,
.ajerra-search__empty {
	background: #fff;
	border: 1px solid #e6e2df;
	border-radius: 18px;
	padding: 22px;
}

.ajerra-search__title {
	display: inline-block;
	margin-bottom: 10px;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.3;
	color: var(--color-text);
	text-decoration: none;
}

.ajerra-search__title:hover {
	color: #9a5a00;
}

.ajerra-search__text {
	margin-bottom: 12px;
	font-size: 14px;
	line-height: 1.65;
	color: var(--color-text-muted);
}

.ajerra-search__text b {
	color: var(--color-text);
	background: rgba(254, 176, 93, 0.28);
	border-radius: 4px;
	padding: 0 3px;
}

.ajerra-search__url {
	font-size: 13px;
	line-height: 1.4;
	color: #8a6a44;
	text-decoration: none;
	word-break: break-word;
}

.ajerra-search__empty h2 {
	margin: 0 0 10px;
	font-size: 26px;
	font-weight: 800;
	color: var(--color-text);
}

.ajerra-search__empty p {
	margin: 0 0 18px;
	font-size: 15px;
	line-height: 1.55;
	color: var(--color-text-muted);
}

.ajerra-search__pager {
	margin-top: 26px;
}

@media (max-width: 768px) {
	.site-search-page {
		padding: 96px 0 56px;
	}

	.site-search-head h1 {
		font-size: 30px;
	}

	.ajerra-search__form {
		flex-direction: column;
		border-radius: 16px;
	}

	.ajerra-search__submit {
		width: 100%;
	}

	.ajerra-search__item,
	.ajerra-search__empty {
		padding: 18px;
		border-radius: 16px;
	}

	.ajerra-search__title {
		font-size: 18px;
	}
}

/* ============================================
   HERO SECTION
   ============================================ */

.hero {
	position: relative;
	overflow: hidden;
}

.hero-bg {
	position: absolute;
	inset: 0;
}

.hero-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.hero-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
}

.hero-content {
	position: relative;
	z-index: 10;
	max-width: 737px;
	padding-top: 324px;
	padding-bottom: 120px;
}

.hero-title {
	font-family: var(--font-body);
	font-size: 64px;
	font-weight: 800;
	line-height: 1.1;
	color: var(--color-text-light);
	text-transform: uppercase;
	letter-spacing: -0.02em;
	margin-bottom: var(--space-lg);
}

.hero-subtitle {
	font-size: 20px;
	line-height: 1.4;
	color: #e8e8e8;
	max-width: 575px;
	margin-bottom: var(--space-3xl);
}

.hero-nav {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	display: flex;
	justify-content: space-between;
	padding: 0 90px;
	pointer-events: none;
	z-index: 20;
}

.nav-arrow {
	border-radius: var(--radius-full);
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: auto;
	transition: background var(--transition-fast);
}

.nav-arrow svg {
	width: 64px;
	height: 64px;
}

.nav-arrow:hover {
	background: rgba(254, 176, 93, 0.2);
}

/* ============================================
   BUTTONS
   ============================================ */

.btn {
	display: inline-flex;
	align-items: center;
	gap: var(--space-md);
	font-size: 16px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	transition:
		transform var(--transition-fast),
		box-shadow var(--transition-fast);
}

.btn:hover {
	/* hover effect removed */
}

.btn-primary {
	padding: var(--space-md) var(--space-2xl);
	background: var(--color-primary);
	color: var(--color-text);
	border-radius: var(--radius-full);
	box-shadow: 0 4px 20px rgba(254, 176, 93, 0.4);
	font-weight: 400;
}

.btn-primary:hover {
	box-shadow: 0 6px 30px rgba(254, 176, 93, 0.5);
}

.btn-arrow {
	transition: transform var(--transition-fast);
}

.btn:hover .btn-arrow {
	/* hover effect removed */
}

/* ============================================
   SECTION COMMON
   ============================================ */

.section-header {
	margin-bottom: var(--space-xl);
	position: relative;
	z-index: 1;
}

.section-title {
	font-size: 36px;
	font-weight: 600;
	color: var(--color-text);
	margin-bottom: var(--space-sm);
	line-height: normal;
}

.title-underline {
	position: absolute;
	bottom: 0;
	z-index: -1;
	left: -27px;
}

.section-title.light {
	color: var(--color-text-light);
}

/* Utility classes */
.desktop-only {
	display: inline;
}

.mobile-only {
	display: none !important;
}

/* ============================================
   BREADCRUMBS (Shared across pages)
   ============================================ */

.breadcrumbs {
	display: flex;
	align-items: center;
	gap: 8px;
}

.breadcrumb-link {
	font-size: 14px;
	color: #777;
	transition: color var(--transition-fast);
}

.breadcrumb-link:hover {
	color: var(--color-text);
}

.breadcrumb-current {
	font-size: 14px;
	color: var(--color-text);
}

.breadcrumb-arrow {
	opacity: 0.5;
}

.breadcrumb-divider {
	height: 1px;
	background: #e5e5e5;
	margin-bottom: var(--space-xl);
}

/* ============================================
   SUMMARY COMPONENTS (Shared: cart, order)
   ============================================ */

.summary-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.summary-label {
	font-size: 16px;
	font-weight: 500;
	color: var(--color-text);
}

.summary-total {
	font-size: 22px;
	font-weight: 700;
	color: var(--color-text);
}

.summary-divider {
	height: 1px;
	background: #e5e5e5;
}

/* ============================================
   SHARED BUTTON STYLES
   ============================================ */

/* Primary button (orange) */
.btn-primary-pill {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 49px;
	padding: 0 24px;
	background: var(--color-primary);
	border: none;
	border-radius: 41px;
	font-size: 14px;
	font-weight: 600;
	color: #562c00;
	cursor: pointer;
	transition: background var(--transition-fast);
}

.btn-primary-pill:hover {
	background: var(--color-primary-dark);
}

/* Secondary button (gray) */
.btn-secondary-pill {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 49px;
	padding: 0 24px;
	background: #e3e3e3;
	border: none;
	border-radius: 41px;
	font-size: 14px;
	font-weight: 600;
	color: var(--color-text);
	cursor: pointer;
	transition: background var(--transition-fast);
}

.btn-secondary-pill:hover {
	background: #d5d5d5;
}

/* ============================================
   SHARED DIVIDERS
   ============================================ */

.divider {
	height: 1px;
	background: #e5e5e5;
}

.divider-dark {
	height: 1px;
	background: #242424;
}

/* ============================================
   MODELS SECTION
   ============================================ */

.models-section {
	padding: var(--space-3xl) 0;
}

.products-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 35px;
	max-width: 1345px;
	margin: 0 auto;
}

.product-card {
	background: var(--color-card);
	border: 1px solid var(--color-border-light);
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-card);
	transition:
		transform var(--transition-base),
		box-shadow var(--transition-base);
	cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.product-card:hover {
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.product-image {
	position: relative;
	height: 220px;
	overflow: hidden;
	z-index: 1;
}

.product-image img {
	width: 100%;
	object-fit: cover;
	max-height: 100%;
	transition: transform var(--transition-base);
}

.product-badge {
	position: absolute;
	top: 16px;
	right: 16px;
	padding: 4px 12px;
	background: var(--color-primary);
	color: var(--color-text-light);
	font-size: 12px;
	font-weight: 600;
	text-transform: lowercase;
	border-radius: var(--radius-sm);
}

.product-badge.wide {
	padding: 4px 16px;
}

.product-info {
	padding: var(--space-lg);
}

.product-name {
	font-size: 18px;
	font-weight: 700;
	color: var(--color-text);
	margin-bottom: var(--space-sm);
}

.product-desc {
	font-size: 14px;
	color: #515151;
	line-height: 1.5;
	margin-bottom: var(--space-lg);
}

.product-divider {
	height: 1px;
	background: rgba(0, 0, 0, 0.6);
	margin-bottom: var(--space-md);
}

.product-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.product-price {
	display: flex;
	align-items: baseline;
	gap: var(--space-md);
	font-size: 14px;
}

.price-current {
	font-size: 16px;
	color: var(--color-text);
}

.price-old {
	font-size: 14px;
	color: #888;
	text-decoration: line-through;
}

.add-to-cart {
	display: flex;
	align-items: center;
	height: 28px;
	border: 2px solid var(--color-primary);
	border-radius: var(--radius-sm);
	overflow: hidden;
	transition: transform var(--transition-fast);
}

.add-to-cart:hover {
	/* hover effect removed */
}

.product-footer .product-badge {
    position: static;
}

.cart-text {
	padding: 0 var(--space-md);
	font-size: 9px;
	font-weight: 700;
	color: #3f3f3f;
	letter-spacing: 0.05em;
}

.cart-icon {
	width: 28px;
	height: 28px;
	background: var(--color-primary);
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-text);
}

/* ============================================
   PARTS SECTION
   ============================================ */

.parts-section {
	position: relative;
	padding: var(--space-4xl) 0;
	background: linear-gradient(135deg, rgba(254, 176, 93, 0.05) 0%, transparent 50%), var(--color-bg-dark);
}

.parts-content {
	position: relative;
	z-index: 10;
}

.parts-row {
	margin-bottom: var(--space-4xl);
}

.parts-row:last-child {
	margin-bottom: 0;
}

.parts-row .section-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.parts-nav {
	display: flex;
	gap: var(--space-md);
}

/* Carousel container with edge-positioned arrows */
.parts-carousel {
	position: relative;
	display: flex;
	align-items: center;
}

.parts-carousel .carousel-prev {
	position: absolute;
	left: -64px;
	z-index: 10;
}

.parts-carousel .carousel-next {
	position: absolute;
	right: -64px;
	z-index: 10;
}

/* Swiper styles for parts section */
.parts-swiper {
	width: 100%;
	padding: 4px;
}

.parts-swiper .swiper-wrapper {
	box-sizing: border-box;
}

.parts-swiper .swiper-slide {
	width: 312px;
	height: auto;
}

.part-card {
	background: var(--color-card);
	border: 1px solid var(--color-border-light);
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-card);
	transition: transform var(--transition-base);
}

.part-image {
	display: block;
	height: 220px;
	position: relative;
	overflow: hidden;
}

.part-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.part-badge {
	position: absolute;
	top: var(--space-md);
	right: var(--space-md);
	padding: 2px 12px;
	background: var(--color-primary);
	border-radius: var(--radius-full);
	font-size: 12px;
	font-weight: 600;
}

.part-badge.wide {
	padding: 2px 10px;
}

.part-name {
	font-size: 14px;
	font-weight: 700;
	color: var(--color-text);
	padding: var(--space-md);
}

.part-divider {
	height: 1px;
	background: #e5e5e5;
	margin: 0 var(--space-md);
}

.part-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--space-md);
}

.part-price {
	font-size: 14px;
	color: var(--color-text);
}

.add-to-cart.small .cart-text {
	padding: 0 10px;
}

.view-all {
	display: flex;
	align-items: center;
	gap: var(--space-sm);
	font-size: 16px;
	font-weight: 500;
	color: var(--color-text-light);
	transition: color var(--transition-fast);
}

.view-all:hover {
	color: var(--color-primary);
}

/* View All Mobile */
.view-all-mobile {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 16px;
	font-weight: 500;
	color: #999;
	transition: color var(--transition-fast);
}

.view-all-mobile:hover {
	color: var(--color-primary);
}

/* ============================================
   ABOUT SECTION
   ============================================ */

.about-section {
	padding: var(--space-4xl) 0;
	overflow: hidden;
}

.about-content {
	display: flex;
	position: relative;
}

.about-image-wrapper {
	position: relative;
	flex: 0 0 852px;
	height: 568px;
	z-index: 1;
}

.about-scatter {
	position: absolute;
	pointer-events: none;
	z-index: 0;
}

.about-scatter--top {
	top: -50px;
	left: 0;
	width: 811px;
	height: 54px;
}

.about-scatter--bottom {
	bottom: -40px;
	left: -20px;
	width: 900px;
	height: 595px;
}

.about-scatter--left {
	top: 0;
	left: -30px;
	width: 857px;
	height: 50px;
}

.about-image {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 2;
}

.about-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.about-image .desktop-img {
	display: block;
}

.about-image .mobile-img {
	display: none;
}

.about-text {
	position: absolute;
	width: 655px;
	background: var(--color-card);
	padding: var(--space-2xl);
	padding-bottom: 10px;
	top: 60px;
	right: 0;
	z-index: 3;
}

.about-title {
	font-size: 36px;
	font-weight: 800;
	color: var(--color-text);
	margin-bottom: var(--space-xl);
}

.about-text p {
	font-size: 16px;
	line-height: 1.7;
	color: var(--color-text);
	margin-bottom: var(--space-lg);
}

.about-slogan {
	font-weight: 600;
	color: var(--color-primary-dark);
}

/* ============================================
   CONTACTS SECTION
   ============================================ */

.contacts-section {
	padding: var(--space-4xl) 0;
	background: var(--color-bg);
}

.contacts-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: var(--space-3xl);
}

.city-select {
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--space-md);
	padding: var(--space-md) var(--space-lg);
	background: var(--color-card);
	border-radius: var(--radius-lg);
	font-size: 14px;
	font-weight: 500;
	color: var(--color-text-dim);
	cursor: pointer;
	user-select: none;
}

.city-select img {
	transition: transform var(--transition-fast);
}

.city-select.open img {
	transform: rotate(180deg);
}

.city-dropdown {
	position: absolute;
	top: calc(100% + var(--space-sm));
	left: 0;
	min-width: 100%;
	background: var(--color-card);
	border-radius: var(--radius-md);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px);
	transition:
		opacity var(--transition-fast),
		transform var(--transition-fast),
		visibility var(--transition-fast);
	z-index: 100;
	overflow: hidden;
}

.city-select.open .city-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.city-dropdown-item {
	padding: var(--space-md) var(--space-lg);
	font-size: 14px;
	font-weight: 500;
	color: var(--color-text);
	transition:
		background var(--transition-fast),
		color var(--transition-fast);
	white-space: nowrap;
}

.city-dropdown-item:hover {
	background: var(--color-bg);
	color: var(--color-primary-dark);
}

.city-dropdown-item:first-child {
	border-radius: var(--radius-md) var(--radius-md) 0 0;
}

.city-dropdown-item:last-child {
	border-radius: 0 0 var(--radius-md) var(--radius-md);
}

.contacts-info {
	display: flex;
	gap: var(--space-4xl);
}

.contact-item {
	display: flex;
	flex-direction: column;
	gap: var(--space-sm);
}

.contact-label {
	font-size: 14px;
	color: var(--color-text-muted);
}

.contact-value {
	font-size: 16px;
	font-weight: 600;
	color: var(--color-text);
}

.contacts-grid {
	display: flex;
	gap: 0;
}

.store-list {
	flex: 0 0 655px;
}

.store-card {
	display: flex;
	gap: var(--space-xl);
	padding: var(--space-xl);
	background: var(--color-card);
	border-bottom: 1px solid var(--color-border);
}

.store-card.last {
	border-bottom: none;
}

.store-image {
	flex: 0 0 210px;
	height: 140px;
	border-radius: var(--radius-sm);
	overflow: hidden;
}

.store-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.store-info h3 {
	font-size: 18px;
	font-weight: 600;
	color: var(--color-text);
	margin-bottom: var(--space-md);
}

.map-link {
	display: flex;
	align-items: center;
	gap: var(--space-xs);
	font-size: 14px;
	color: var(--color-primary-dark);
	margin-bottom: var(--space-md);
}

.store-hours {
	display: flex;
	align-items: flex-start;
	gap: var(--space-xs);
	font-size: 14px;
	color: var(--color-text-muted);
	margin-bottom: var(--space-sm);
}

.store-contact {
	font-size: 12px;
	color: var(--color-text);
}

.contacts-map {
	flex: 1;
	min-height: 400px;
}

.contacts-map iframe {
	width: 100%;
	height: 100%;
	min-height: 400px;
	border: none;
	border-radius: 20px;
}

/* ============================================
   TOOBA SECTION
   ============================================ */

.tooba-section {
	padding: var(--space-3xl) 0;
	background: var(--color-bg);
	position: relative;
	overflow: hidden;
}

.tooba-phone {
	position: absolute;
	left: 54%;
	top: 0;
	pointer-events: none;
}

.tooba-phone img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.tooba-content {
	max-width: 850px;
	margin: auto;
}

.tooba-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: var(--space-xl);
}

.tooba-cta {
	text-align: right;
}

.cta-title {
	font-size: 16px;
	color: var(--color-text);
	margin-bottom: var(--space-xs);
}

.cta-subtitle {
	font-size: 12px;
	color: var(--color-text-muted);
}

.tooba-text {
	font-size: 16px;
	line-height: 1.7;
	color: var(--color-text);
	margin-bottom: var(--space-3xl);
}

.tooba-apps {
	display: flex;
	gap: var(--space-md);
	justify-content: flex-end;
}

.store-btn {
	display: flex;
	align-items: center;
	transition:
		transform var(--transition-fast),
		background var(--transition-fast);
}

.store-btn:hover {
	/* hover effect removed */
}

/* ============================================
   FOOTER
   ============================================ */

.footer {
	background: var(--color-bg-dark);
	padding-top: var(--space-3xl);
}

.footer-content {
	display: flex;
	gap: var(--space-4xl);
	padding-bottom: var(--space-4xl);
}

.footer-logo {
	font-family: "Krona One", sans-serif;
	font-size: 24px;
	color: var(--color-text-light);
}

.footer-nav {
	display: flex;
	gap: var(--space-4xl);
	flex: 1;
}

.footer-col h4 {
	font-size: 14px;
	font-weight: 600;
	color: #6e6e6e;
	text-transform: uppercase;
	margin-bottom: var(--space-lg);
}

.footer-col ul {
	display: flex;
	flex-direction: column;
	gap: var(--space-sm);
}

.footer-col a {
	font-size: 14px;
	color: #aaa;
	transition: color var(--transition-fast);
}

.footer-col a:hover {
	color: var(--color-text-light);
}

.catalog-grid {
	display: flex;
	gap: 24px;
}

.catalog-grid ul {
	flex: 1;
}

.social-links {
	display: flex;
	gap: var(--space-md);
	margin-top: var(--space-xl);
}

.social-link {
	opacity: 0.7;
	transition: opacity var(--transition-fast);
}

.social-link:hover {
	opacity: 1;
}

/* Cart Badge */
.cart-badge {
	position: absolute;
	top: -4px;
	right: -4px;
	min-width: 20px;
	height: 15px;
	padding: 0 4px;
	background: var(--color-primary);
	border-radius: 4px;
	font-size: 12px;
	font-weight: 500;
	color: var(--color-text);
	display: flex;
	align-items: center;
	justify-content: center;
}

.icon-btn-cart {
	position: relative;
}

.footer-bottom {
	/* Container handles padding */
}

.footer-divider {
	height: 1px;
	background: rgba(255, 255, 255, 0.1);
	margin-bottom: var(--space-lg);
}

.copyright {
	font-size: 13px;
	color: #565656;
	text-align: center;
	padding-bottom: var(--space-xl);
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 1600px) {
	.hero-nav {
		padding-inline: 24px;
	}
	.products-grid {
		gap: 24px;
	}

	.parts-swiper .swiper-slide {
		width: 280px;
	}
}

@media (max-width: 1400px) {
	.nav-arrow svg {
		width: 36px;
		height: 36px;
	}
	.hero-content {
		padding-inline: 3rem;
	}
	.hero-title {
		font-size: 48px;
	}

	.parts-swiper {
		width: 95%;
	}

	.parts-carousel .carousel-prev {
		left: -16px;
	}

	.parts-carousel .carousel-next {
		right: -16px;
	}

	.parts-swiper .swiper-slide {
		width: 280px;
	}

	.about-image {
		flex: 0 0 600px;
	}
}

@media (max-width: 900px) {
	.nav {
		display: none;
	}

	.icon-btn-menu {
		display: flex;
	}

	.header.header-dark .icon-btn-menu {
		display: flex;
	}

	.hero-content {
		padding-top: 200px;
	}

	.hero-title {
		font-size: 40px;
	}

	.products-grid {
		grid-template-columns: repeat(2, 1fr);
		max-width: 900px;
		margin: 0 auto;
	}

	.parts-swiper .swiper-slide {
		width: calc(50% - 12px);
	}

	.about-section {
		padding: var(--space-3xl) 0;
	}

	.about-content {
		flex-direction: column;
	}

	.about-image-wrapper {
		flex: auto;
	}

	.about-image {
		flex: none;
		width: 100%;
		max-width: 900px;
		margin: 0 auto;
	}

	.about-text {
		max-width: 900px;
		margin: 0 auto;
		position: static;
		width: auto;
		margin-top: -100px;
	}

	.contacts-grid {
		flex-direction: column;
	}

	.store-list {
		flex: none;
		width: 100%;
	}
}

/* ============================================
   MOBILE (< 768px)
   ============================================ */

@media (max-width: 768px) {
	/* Utility classes */
	.desktop-only {
		display: none;
	}

	.mobile-only {
		display: initial !important;
	}

	.container {
		padding: 0 20px;
	}

	/* Header Mobile */
	.header .container {
		padding: 21px 20px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	}

	.nav {
		display: none;
	}

	.header-actions {
		gap: 8px;
	}

	.icon-btn {
		width: 32px;
		height: 32px;
		border-color: white;
		color: white;
	}

	.icon-btn svg {
		stroke: currentColor;
	}

	.icon-btn-search {
		order: 1;
	}

	.icon-btn-phone {
		order: 2;
	}

	.icon-btn-menu {
		display: flex;
		order: 3;
	}

	.icon-btn-heart {
		display: flex;
		order: 4;
	}

	.icon-btn-cart {
		display: flex;
		order: 5;
	}

	/* Header Dark Mobile */
	.header.header-dark .container {
		padding: 21px 20px;
	}

	.header.header-dark .nav {
		display: none;
	}

	.header.header-dark .header-actions {
		gap: 8px;
	}

	.header.header-dark .icon-btn {
		width: 32px;
		height: 32px;
		border-color: white;
		color: white;
	}

	.header.header-dark .icon-btn-phone {
		order: 2;
	}

	.header.header-dark .icon-btn-search {
		order: 1;
	}

	.header.header-dark .icon-btn-menu {
		order: 3;
	}

	.header.header-dark .icon-btn-heart {
		display: flex;
		order: 4;
	}

	.header.header-dark .icon-btn-cart {
		display: flex;
		order: 5;
	}

	/* Mobile Menu Overlay */
	.mobile-menu-overlay {
		display: block;
		position: fixed;
		inset: 0;
		background: rgba(0, 0, 0, 0.75);
		z-index: 999;
		opacity: 0;
		visibility: hidden;
		transition:
			opacity var(--transition-base),
			visibility var(--transition-base);
	}

	.mobile-menu-overlay.active {
		opacity: 1;
		visibility: visible;
	}
	.search-dropdown {
		right: 20px;
		left: 20px;
		width: auto;
	}

	/* Mobile Menu Panel */
	.mobile-menu {
		display: block;
		position: fixed;
		top: 72px;
		left: 0;
		right: 0;
		bottom: 0;
		background: var(--color-card);
		border-top: 1px solid rgba(0, 0, 0, 0.15);
		z-index: 1001;
		transform: translateY(-100%);
		opacity: 0;
		visibility: hidden;
		transition:
			transform var(--transition-base),
			opacity var(--transition-base),
			visibility var(--transition-base);
		overflow-y: auto;
	}

	.mobile-menu.active {
		transform: translateY(0);
		opacity: 1;
		visibility: visible;
	}

	.mobile-menu-content {
		display: flex;
		flex-direction: column;
		gap: 16px;
		padding: 40px 24px;
	}

	.mobile-menu-item {
		display: flex;
		flex-direction: column;
		gap: 16px;
	}

	.mobile-menu-link {
		font-family: var(--font-body);
		font-size: 14px;
		font-weight: 500;
		color: #262626;
		text-transform: uppercase;
		letter-spacing: 0.05em;
	}

	.mobile-menu-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		background: none;
		border: none;
		cursor: pointer;
	}

	.mobile-menu-toggle .chevron-down,
	.mobile-menu-toggle .chevron-up {
		width: 20px;
		height: 20px;
		flex-shrink: 0;
	}

	.mobile-menu-toggle .chevron-up {
		display: none;
	}

	.mobile-menu-toggle[aria-expanded="true"] .chevron-down {
		display: none;
	}

	.mobile-menu-toggle[aria-expanded="true"] .chevron-up {
		display: block;
	}

	.mobile-menu-subcategories {
		display: none;
		padding-left: 11px;
		flex-direction: column;
		gap: 8px;
	}

	.mobile-menu-sublink {
		font-family: var(--font-body);
		font-size: 14px;
		font-weight: 400;
		color: #666;
	}

	/* Header Menu Open State */
	.header.menu-open {
		background: var(--color-card) !important;
		box-shadow: none;
	}

	.header.menu-open .container {
		border-bottom-color: rgba(0, 0, 0, 0.1) !important;
	}

	.header.menu-open .logo {
		color: #222;
	}

	.header.menu-open .icon-btn {
		border-color: #222;
		color: #222;
	}

	.header.menu-open .icon-btn svg {
		stroke: currentColor;
	}

	/* Menu icon toggle */
	.header.menu-open .menu-icon-hamburger {
		display: none;
	}

	.header.menu-open .menu-icon-close {
		display: block;
		width: 24px;
		height: 24px;
	}

	/* Prevent body scroll when menu is open */
	body.menu-open {
		overflow: hidden;
	}

	/* Hero Mobile */
	.hero {
		min-height: 673px;
	}

	.hero-image {
		object-position: 20% center;
	}

	.hero-content {
		padding-top: 197px;
		max-width: 100%;
		padding-inline: 0;
	}

	.hero-title {
		font-size: 36px;
		line-height: 1.33;
		margin-bottom: 24px;
	}

	.hero-subtitle {
		font-size: 16px;
		line-height: 1.69;
		max-width: 100%;
		margin-bottom: 54px;
	}

	.hero-nav {
		display: none;
	}

	.btn-primary {
		padding: 14px 24px;
		font-size: 12px;
		letter-spacing: 0.08em;
		gap: 10px;
	}

	.btn-arrow {
		width: 22px;
		height: 22px;
	}

	/* Section Header Mobile */
	.section-header {
		margin-bottom: 16px;
	}

	.section-title {
		font-size: 24px;
	}

	.title-underline {
		width: 402px;
		max-width: calc(100vw - 51px);
		margin-top: 8px;
	}

	/* Models Section Mobile */
	.models-section {
		padding: 48px 0;
	}

	.models-section .container {
		padding: 0 24px;
	}

	.products-grid {
		grid-template-columns: 1fr;
		gap: 24px;
		max-width: 100%;
	}

	.product-card {
		width: 100%;
		margin: 0 auto;
	}

	.product-image {
		height: 220px;
	}

	.product-info {
		padding: 14px 20px 20px;
	}

	.product-name {
		font-size: 18px;
		margin-bottom: 8px;
	}

	.product-desc {
		font-size: 14px;
		line-height: 1.5;
		margin-bottom: 16px;
	}

	.product-divider {
		margin-bottom: 16px;
	}

	.price-current {
		font-size: 16px;
	}

	.price-old {
		font-size: 14px;
	}

	/* Mobile: Icon-only add-to-cart */
	.add-to-cart {
		width: 28px;
		height: 28px;
		border: none;
		background: var(--color-primary);
	}

	.add-to-cart .cart-text {
		display: none;
	}

	.add-to-cart .cart-icon {
		background: transparent;
		width: 28px;
		height: 28px;
	}

	/* Parts Section Mobile */
	.parts-section {
		padding: 44px 0 56px;
	}

	.parts-section .container {
		padding: 0 24px;
	}

	.parts-row {
		margin-bottom: 56px;
	}

	.parts-row:last-child {
		margin-bottom: 0;
	}

	.parts-row .section-header {
		margin-bottom: 16px;
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
	}

	.view-all-mobile {
		color: #999;
		font-size: 16px;
	}

	.parts-row .section-header .section-title {
		font-size: 24px;
	}

	.parts-nav {
		justify-content: center;
		display: flex;
		gap: 16px;
		margin-top: 24px;
	}

	.parts-carousel {
		position: relative;
		padding: 0 28px;
	}

	.parts-carousel .carousel-prev,
	.parts-carousel .carousel-next {
		display: flex;
	}

	.parts-carousel .carousel-prev {
		left: -16px;
	}

	.parts-carousel .carousel-next {
		right: -16px;
	}

	.nav-arrow {
		width: 36px;
		height: 36px;
	}

	.nav-arrow svg {
		width: 36px;
		height: 36px;
	}

	.parts-swiper {
		width: 100%;
	}

	.parts-swiper .swiper-slide {
		width: 100% !important;
	}

	.part-card {
		width: 100%;
	}

	.part-image {
		height: 220px;
	}

	.part-badge {
		padding: 2px 12px;
		font-size: 12px;
	}

	.part-badge.wide {
		padding: 2px 10px;
	}

	.part-name {
		font-size: 14px;
		padding: 16px;
	}

	.part-divider {
		margin: 0 16px;
	}

	.part-footer {
		padding: 16px;
	}

	/* View all link mobile */
	.view-all {
		display: none;
	}

	/* About Section Mobile */
	.about-section {
		padding: 0;
	}

	.about-content {
		flex-direction: column;
	}

	.about-scatter {
		display: none;
	}

	.about-image-wrapper {
		flex: none;
		height: auto;
		max-width: none;
		margin-left: -20px;
		margin-right: -20px;
	}

	.about-image {
		width: 100%;
	}

	.about-image .desktop-img {
		display: none;
	}

	.about-image .mobile-img {
		display: block;
	}

	.about-text {
		flex-basis: auto;
		background: var(--color-card);
		padding: 30px 24px 8px;
		margin-inline: -20px;
		margin-top: 0;
	}

	.about-title {
		font-size: 36px;
		margin-bottom: 24px;
	}

	.about-text p {
		font-size: 16px;
		line-height: 1.69;
	}

	/* Contacts Section Mobile */
	.contacts-section {
		padding: 36px 0 0;
	}

	.contacts-section .container {
		padding: 0 24px;
	}

	.contacts-header {
		flex-direction: column;
		gap: 24px;
		align-items: flex-start;
		margin-bottom: 36px;
	}

	.city-select {
		padding: 12px 20px;
		font-size: 14px;
	}

	.contacts-info {
		flex-direction: row;
		gap: 64px;
		width: 100%;
	}

	.contact-item {
		gap: 8px;
	}

	.contact-label {
		font-size: 14px;
	}

	.contact-value {
		font-size: 16px;
	}

	.contacts-grid {
		flex-direction: column;
		margin-inline: -20px;
	}

	.store-list {
		flex: none;
		width: 100%;
	}

	.store-card {
		flex-direction: column;
		padding: 24px;
		gap: 16px;
		border-bottom: 1px solid var(--color-border);
	}

	.store-card.last {
		border-bottom: none;
	}

	.store-image {
		flex: none;
		width: 100%;
		height: 287px;
		border-radius: var(--radius-sm);
	}

	.store-info h3 {
		font-size: 18px;
		margin-bottom: 16px;
	}

	.map-link {
		font-size: 14px;
		margin-bottom: 16px;
	}

	.store-hours {
		font-size: 14px;
		margin-bottom: 12px;
	}

	.store-contact {
		font-size: 12px;
	}

	.contacts-map {
		display: none;
	}

	/* Tooba Section Mobile */
	.tooba-section {
		padding: 48px 0;
	}

	.tooba-section .container {
		padding: 0 24px;
	}

	.tooba-phone {
		display: none;
	}

	.tooba-phone-mobile {
		position: absolute;
		right: 0;
		top: -110%;
		pointer-events: none;
		left: 0;
	}

	.tooba-phone-mobile svg {
		width: 100%;
	}

	.tooba-content {
		max-width: 100%;
	}

	.tooba-header {
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
		margin-bottom: 40px;
	}

	.tooba-cta {
		text-align: right;
	}

	.cta-title {
		font-size: 16px;
		margin-bottom: 4px;
	}

	.cta-subtitle {
		font-size: 12px;
	}

	.tooba-text {
		font-size: 16px;
		line-height: 1.69;
		margin-bottom: 20px;
	}

	.tooba-apps.mobile-only {
		gap: 8px;
		display: flex !important;
		position: relative;
		justify-content: center;
		margin-top: 100px;
		margin-bottom: 80px;
	}

	.store-btn-text span {
		font-size: 10px;
	}

	.store-btn-text strong {
		font-size: 14px;
	}

	/* Footer Mobile */
	.footer {
		padding-top: 40px;
	}

	.footer .container {
		padding: 0 24px;
	}

	.footer-content {
		flex-direction: column;
		gap: 32px;
		padding-bottom: 32px;
	}

	.footer-logo {
		font-size: 24px;
	}

	.footer-nav {
		flex-direction: column;
		gap: 32px;
	}

	.footer-col h4 {
		font-size: 14px;
		margin-bottom: 16px;
	}

	.footer-col ul {
		gap: 0;
		line-height: 30px;
	}

	.footer-col a {
		font-size: 14px;
	}

	/* Split footer catalog into two columns */
	.footer-col.catalog-col {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0;
	}

	.footer-col.catalog-col ul:first-of-type {
		grid-column: 1;
	}

	.footer-col.catalog-col ul:last-of-type {
		grid-column: 2;
	}

	.social-links {
		margin-top: 24px;
		gap: 10px;
	}

	.footer-divider {
		margin-bottom: 16px;
	}

	.copyright {
		font-size: 13px;
		padding-bottom: 24px;
	}
}

/* End */


/* Start:/local/templates/ajerramoto/src/styles/category.css?177511638017801*/
/* ============================================
   CATEGORY PAGE STYLES
   ============================================ */

/* Breadcrumbs - page-specific adjustments */
.breadcrumbs {
  padding-top: 24px;
}

.breadcrumb-divider {
  margin-top: 16px;
  margin-bottom: 28px;
}

/* Category Layout */
.category-layout {
  display: flex;
  gap: 36px;
  padding-bottom: 80px;
}

.category-layout .product-name {
    font-size: 14px;
}
.category-layout .product-badge {
    font-size: 12px;
    text-transform: lowercase;
    color: black;
}

/* ============================================
   SIDEBAR
   ============================================ */

.sidebar {
  position: relative;
  flex: 0 0 310px;
  background: var(--color-card);
  border-radius: var(--radius-md);
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.08);
  padding: 24px 20px;
  height: 100%;
}

/* Sidebar Tabs */
.sidebar-tabs {
  display: flex;
  gap: 0;
  margin-bottom: 24px;
  position: relative;
}

.sidebar-tab {
  flex: 1;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text);
  text-transform: uppercase;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0 0 12px 0;
  transition: color var(--transition-fast);
  position: relative;
  z-index: 1;
}

.sidebar-tab.active {
  color: #FEB05D;
}

.sidebar-tab::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: transparent;
  transition: background var(--transition-fast);
  z-index: 2;
}

.sidebar-tab.active::after {
  background: #FEB05D;
}

.sidebar-tabs::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: #242424;
  z-index: 0;
}

/* Filter Groups */
.filter-group {
  margin-bottom: 32px;
  /* clear: both; */
}

.filter-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: 16px;
}

/* Search Input */
.search-input {
  display: flex;
  align-items: center;
  background: #EAEAEA;
  border: 1px solid #D2D2D2;
  border-radius: 59px;
  padding: 10px 16px;
  gap: 8px;
}

.search-input input {
  flex: 1;
  border: none;
  background: transparent;
  font-size: 12px;
  color: var(--color-text);
  outline: none;
}

.search-input input::placeholder {
  color: #6D6D6D;
}

.search-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Checkbox List */
.checkbox-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.checkbox-item {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.checkbox-item input {
  display: none;
}

.checkbox-box {
  width: 16px;
  height: 16px;
  border: 1px solid #CECECE;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--transition-fast);
}

.checkbox-item input:checked + .checkbox-box {
  border-color: var(--color-primary);
  background: transparent;
}

.checkbox-check {
  display: none;
  width: 12px;
  height: 12px;
}

.checkbox-item input:checked + .checkbox-box .checkbox-check {
  display: block;
}

.checkbox-label {
  font-size: 14px;
  color: #555;
  line-height: 1.5;
  user-select: none;
}

/* Price Range */
.price-range {
  display: flex;
  align-items: center;
  gap: 12px;
}

.price-row {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.price-label {
  font-size: 12px;
  color: var(--color-text);
  padding-left: 16px;
}

.price-input {
  height: 38px;
  background: #EAEAEA;
  border: 1px solid #D2D2D2;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
}

.price-input input {
  width: 100%;
  border: none;
  background: transparent;
  font-size: 12px;
  color: #6D6D6D;
  text-align: center;
  outline: none;
}

.price-divider {
  width: 21px;
  height: 1px;
  background: #D2D2D2;
  margin-top: 26px;
}

/* Filter Buttons */
.filter-buttons {
  position: sticky;
  top: 200px;
  margin-right: -120px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  z-index: 10;
  float: right;
  align-items: flex-start;
}

.btn-filter-apply {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 16px;
  background: var(--color-primary);
  border: none;
  border-radius: 41px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  color: #562C00;
  cursor: pointer;
  transition: transform var(--transition-fast);
}

.btn-filter-apply:hover {
  /* hover effect removed */
}

.btn-filter-apply svg {
  width: 18px;
  height: 18px;
}

.btn-filter-clear {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px;
  background: #E3E3E3;
  border: none;
  border-radius: 41px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  color: var(--color-text);
  cursor: pointer;
  transition: transform var(--transition-fast);
}

.btn-filter-clear:hover {
  /* hover effect removed */
}

.btn-filter-clear svg {
  width: 18px;
  height: 18px;
}

/* ============================================
   CATEGORIES LIST
   ============================================ */

.category-item {
  margin-bottom: 16px;
}

.category-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*cursor: pointer;*/
  padding: 4px 0;
}

.category-name {
  font-size: 18px;
  font-weight: 500;
  color: var(--color-text);
  text-transform: uppercase;
}

.category-item.collapsed .category-name {
  color: var(--color-text-muted);
}

.category-arrow {
  transition: transform var(--transition-fast);
}

.category-item.expanded .category-arrow {
  transform: rotate(90deg);
}

.category-item.collapsed .category-arrow {
  transform: rotate(0deg);
}

.category-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
}

.category-icon .icon-plus,
.category-icon .icon-minus {
  display: none;
}

.category-item.expanded .category-icon .icon-minus {
  display: block;
}

.category-item.collapsed .category-icon .icon-plus {
  display: block;
}

.category-children {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.category-item.collapsed .category-children {
  display: none;
}

.category-child {
  font-size: 14px;
  color: #444;
  line-height: 27px;
  transition: color var(--transition-fast);
}

.category-child:hover {
  color: var(--color-primary-dark);
}

.category-child.active {
  color: var(--color-primary-dark);
}

.category-divider {
  height: 1px;
  background: #242424;
  margin-top: 16px;
}

/* ============================================
   CATEGORY MAIN
   ============================================ */

.category-main {
  flex: 1;
}

.category-header-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  gap: 16px;
}

.category-title {
  font-size: 20px;
  font-weight: 600;
  color: var(--color-text);
}

.category-controls {
  display: flex;
  gap: 24px;
}

.view-control,
.sort-control {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.view-label,
.sort-label {
  font-size: 11px;
  font-weight: 500;
  color: #6E6E6E;
  text-transform: uppercase;
}

.view-select {
  display: flex;
  gap: 8px;
}

/* Shared Dropdown Styles */
.view-dropdown,
.sort-dropdown {
  position: relative;
}

.view-dropdown-menu,
.sort-dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 8px;
  background: #fff;
  border: 1px solid #D2D2D2;
  border-radius: 20px;
  padding: 8px 0;
  min-width: 140px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all var(--transition-fast);
  z-index: 100;
  overflow: hidden;
}

.sort-dropdown-menu {
  min-width: 200px;
}

.view-dropdown.open .view-dropdown-menu,
.sort-dropdown.open .sort-dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.view-dropdown.open .view-btn img,
.sort-dropdown.open .sort-btn img {
  transform: rotate(180deg);
}

.view-option,
.sort-option {
  display: block;
  width: 100%;
  padding: 10px 20px;
  background: none;
  border: none;
  font-size: 13px;
  color: #555;
  text-align: left;
  cursor: pointer;
  transition: all var(--transition-fast);
  text-decoration: none;
}

.view-option:hover,
.sort-option:hover {
  background: #f5f5f5;
  color: var(--color-text);
}

.view-option.active,
.sort-option.active {
  color: var(--color-primary);
  font-weight: 500;
}

.view-btn,
.sort-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 33px;
  padding: 0 16px;
  background: transparent;
  border: 1px solid #D2D2D2;
  border-radius: 34px;
  font-size: 13px;
  font-weight: 500;
  color: #555;
  cursor: pointer;
  transition: all var(--transition-fast);
}

.view-btn img,
.sort-btn img {
  transition: transform var(--transition-fast);
}

.view-btn:hover,
.sort-btn:hover {
  border-color: var(--color-primary);
}

/* ============================================
   GRID VIEW
   ============================================ */

.products-grid-view {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  margin-bottom: 60px;
}

/* ============================================
   LIST VIEW
   ============================================ */

.products-list-view {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 60px;
}

.list-item {
  display: flex;
  align-items: center;
  gap: 20px;
  background: var(--color-card);
  border: 1px solid #CCC;
  border-radius: var(--radius-md);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
  padding: 24px;
  transition: transform var(--transition-base), box-shadow var(--transition-base);
}

.list-item:hover {
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12);
}

.list-item-image {
  flex: 0 0 115px;
  height: 81px;
  border: 1px solid #D0D0D0;
  border-radius: 4px;
  overflow: hidden;
}

.list-item-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.list-item-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: flex-start;
  gap: 8px;
  flex: 1;
}

.list-item-badge {
  padding: 2px 12px;
  background: var(--color-primary);
  border-radius: var(--radius-full);
  font-size: 12px;
  font-weight: 500;
  color: var(--color-text);
}

.list-item-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text);
}

.list-item-price {
  font-size: 16px;
  color: var(--color-text);
  margin-right: 20px;
}

/* ============================================
   PAGINATION
   ============================================ */

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}

.pagination-btn {
  width: 36px;
  height: 36px;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: background var(--transition-fast);
}

.pagination-btn:hover {
  background: rgba(254, 176, 93, 0.1);
}

.pagination-num {
  width: 36px;
  height: 36px;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text);
  background: transparent;
  border: 1px solid transparent;
  /*cursor: pointer;*/
  transition: all var(--transition-fast);
}

.pagination-num:hover {
  border-color: var(--color-primary);
}

.pagination-num.active {
  border-color: #ddd;
}

/* ============================================
   RESPONSIVE - TABLET
   ============================================ */

@media (max-width: 1200px) {
  .category-layout {
    gap: 30px;
  }

  .sidebar {
    flex: 0 0 280px;
  }

  .products-grid-view {
    grid-template-columns: repeat(2, 1fr);
  }

  .category-controls {
    gap: 16px;
  }
}

@media (max-width: 992px) {
  .sidebar {
    display: none;
  }

  .category-layout {
    flex-direction: column;
  }

  .category-header-row {
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
  }

  .category-controls {
    width: 100%;
  }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */

@media (max-width: 768px) {
  .breadcrumbs {
    padding-top: 16px;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .breadcrumbs::-webkit-scrollbar {
    display: none;
  }

  .breadcrumb-divider {
    margin-bottom: 24px;
  }

  .category-section .container {
    padding: 0 20px;
  }

  .category-header-row {
    margin-bottom: 24px;
  }

  .category-title {
    font-size: 18px;
  }

  .category-controls {
    flex-direction: row;
    gap: 12px;
    padding-bottom: 8px;
  }

  .view-label,
  .sort-label {
    display: none;
  }

  .view-btn,
  .sort-btn {
    padding: 0 12px;
    height: 28px;
    font-size: 12px;
  }

  .sort-btn {
    flex-shrink: 0;
  }

  .products-grid-view {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 40px;
    width: 75%;
  }

  .products-list-view {
    gap: 12px;
    margin-bottom: 40px;
  }

  .list-item {
    flex-wrap: wrap;
    padding: 16px;
    gap: 12px;
  }

  .list-item-image {
    flex: 0 0 80px;
    height: 60px;
  }

  .list-item-badge {
    order: 1;
  }

  .list-item-name {
    order: 2;
    flex: 1;
    min-width: 150px;
  }

  .list-item-price {
    order: 3;
    margin-right: 0;
  }

  .list-item .add-to-cart {
    order: 4;
    margin-left: auto;
  }

  /* Keep full button style on mobile */
  .product-card .add-to-cart {
    width: auto;
    height: auto;
    border: 2px solid var(--color-primary);
    background: transparent;
  }

  .product-card .add-to-cart .cart-text {
    display: block;
  }

  .product-card .add-to-cart .cart-icon {
    background: var(--color-primary);
    width: 28px;
    height: 28px;
  }

  .pagination {
    gap: 6px;
  }

  .pagination-btn,
  .pagination-num {
    width: 32px;
    height: 32px;
    font-size: 13px;
  }

  .footer {
    padding-top: 40px;
  }

  .footer .container {
    padding: 0 24px;
  }

  .footer-content {
    flex-direction: column;
    gap: 32px;
    padding-bottom: 32px;
  }

  .footer-logo {
    font-size: 24px;
  }

  .footer-nav {
    flex-direction: column;
    gap: 32px;
  }

  .footer-col h4 {
    font-size: 14px;
    margin-bottom: 16px;
  }

  .footer-col ul {
    gap: 0;
    line-height: 30px;
  }

  .footer-col a {
    font-size: 14px;
  }

  .footer-col.catalog-col {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }

  .footer-col.catalog-col ul:first-of-type {
    grid-column: 1;
  }

  .footer-col.catalog-col ul:last-of-type {
    grid-column: 2;
  }

  .social-links {
    margin-top: 24px;
    gap: 10px;
  }

  .footer-divider {
    margin-bottom: 16px;
  }

  .copyright {
    font-size: 13px;
    padding-bottom: 24px;
  }
}

/* ============================================
   MOBILE SIDEBAR TOGGLE
   ============================================ */

/* Sidebar Overlay */
.sidebar-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 998;
  opacity: 0;
  transition: opacity var(--transition-base);
}

.sidebar-overlay.active {
  opacity: 1;
}

/* Mobile Filter Toggle Button */
.mobile-filter-toggle {
  display: none;
  position: fixed;
  top: 45vh;
  right: 10px;
  z-index: 997;
  align-items: center;
  gap: 7px;
  padding: 14px 16px;
  background: var(--color-primary);
  border: none;
  border-radius: 41px;
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: #562C00;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
  transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}

.mobile-filter-toggle:hover {
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.3);
}

.mobile-filter-toggle svg {
  flex-shrink: 0;
}

/* Sidebar Close Button */
.sidebar-close {
  display: none;
  position: absolute;
  top: 16px;
  right: 16px;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  cursor: pointer;
  z-index: 10;
}

/* Mobile Filter Actions - hidden on desktop by default */
.mobile-filter-actions {
  display: none;
}

@media (max-width: 992px) {
  .sidebar-overlay {
    display: block;
    pointer-events: none;
  }

  .sidebar-overlay.active {
    pointer-events: auto;
  }

  .mobile-filter-toggle {
    display: flex;
  }

  /* Hide sidebar filter buttons on mobile */
  .sidebar .filter-buttons {
    display: none;
  }

  /* Mobile filter action buttons (replace toggle when sidebar open) */
  .mobile-filter-actions {
    display: none;
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
    gap: 12px;
    align-items: center;
  }

  .mobile-filter-actions.active {
    display: flex;
  }

  .mobile-filter-actions .btn-filter-apply,
  .mobile-filter-actions .btn-filter-clear {
    flex-direction: row;
    padding: 14px 24px;
    white-space: nowrap;
  }

  /* Hide toggle when sidebar is open */
  .mobile-filter-toggle.hidden {
    display: none;
  }

  .sidebar {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 310px;
    max-width: 85vw;
    z-index: 999;
    border-radius: 0;
    overflow-y: auto;
    transform: translateX(-100%);
    transition: transform var(--transition-base);
    padding-top: 96px;
  }

  .sidebar.mobile-open {
    display: block;
    transform: translateX(0);
  }

  .category-layout {
    flex-direction: column;
  }

  .category-header-row {
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
  }

  .category-controls {
    width: 100%;
  }
}

/* End */


/* Start:/local/templates/ajerramoto/src/styles/product.css?178902781719368*/
/* ============================================
   PRODUCT PAGE STYLES
   ============================================ */

/* Product Card Main */
.product-card-main {
  display: flex;
  flex-direction: column;
  background: var(--color-card);
  border-radius: var(--radius-md);
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.08);
  padding: 40px;
  margin-bottom: 40px;
}

body.one-click-modal-open {
  overflow: hidden;
}

.one-click-modal {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity var(--transition-fast), visibility var(--transition-fast);
  z-index: 1200;
}

.one-click-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.one-click-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(18, 18, 18, 0.58);
  backdrop-filter: blur(8px);
}

.one-click-modal__dialog {
  position: relative;
  width: min(100%, 492px);
  max-height: calc(100vh - 48px);
  overflow-y: auto;
  background: #fff;
  border-radius: 24px;
  padding: 34px;
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.22);
  transform: translateY(16px) scale(0.98);
  transition: transform var(--transition-fast);
}

.one-click-modal.is-open .one-click-modal__dialog {
  transform: translateY(0) scale(1);
}

.one-click-modal__close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f5f5f5;
  border: 1px solid #e7e7e7;
  border-radius: 50%;
  cursor: pointer;
  transition: background var(--transition-fast), border-color var(--transition-fast);
}

.one-click-modal__close:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
}

.one-click-modal__close span {
  position: absolute;
  width: 18px;
  height: 2px;
  background: #202020;
  border-radius: 2px;
}

.one-click-modal__close span:first-child {
  transform: rotate(45deg);
}

.one-click-modal__close span:last-child {
  transform: rotate(-45deg);
}

.one-click-modal__header {
  padding-right: 46px;
  margin-bottom: 24px;
}

.one-click-modal__eyebrow {
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  color: #9a5a00;
  text-transform: uppercase;
  letter-spacing: 0;
}

.one-click-modal__header h2 {
  margin: 0 0 12px;
  font-size: 30px;
  font-weight: 800;
  line-height: 1.16;
  color: var(--color-text);
}

.one-click-modal__header p:last-child {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
  color: var(--color-text-muted);
}

.one-click-form {
  display: grid;
  gap: 14px;
}

.one-click-form__field {
  display: grid;
  gap: 8px;
  margin: 0;
}

.one-click-form__field span,
.one-click-form__product span {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text);
}

.one-click-form__field input {
  width: 100%;
  height: 52px;
  padding: 0 18px;
  background: #f7f7f7;
  border: 1px solid #dfdfdf;
  border-radius: 14px;
  font-size: 15px;
  color: var(--color-text);
  outline: none;
  transition: background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.one-click-form__field input:focus {
  background: #fff;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 4px rgba(255, 170, 82, 0.22);
}

.one-click-form__field input::placeholder {
  color: #9c9c9c;
}

.one-click-form__product {
  display: grid;
  gap: 8px;
  padding: 16px 18px;
  background: #fff8f0;
  border: 1px solid #ffd9ad;
  border-radius: 14px;
}

.one-click-form__product strong {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  color: #202020;
}

.one-click-form__submit {
  width: 100%;
  min-height: 54px;
  margin-top: 6px;
  padding: 0 22px;
  background: var(--color-primary);
  border: none;
  border-radius: 41px;
  color: #562C00;
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
  transition: transform var(--transition-fast), opacity var(--transition-fast), box-shadow var(--transition-fast);
}

.one-click-form__submit:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(255, 170, 82, 0.38);
}

.one-click-form__submit:disabled {
  cursor: default;
  opacity: 0.72;
  transform: none;
  box-shadow: none;
}

.one-click-form__message {
  min-height: 22px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.45;
}

.one-click-form__message.is-success {
  color: #1f8a43;
}

.one-click-form__message.is-error {
  color: #c62828;
}

@media (max-width: 576px) {
  .one-click-modal {
    align-items: flex-end;
    padding: 12px;
  }

  .one-click-modal__dialog {
    width: 100%;
    max-height: calc(100vh - 24px);
    padding: 28px 18px 22px;
    border-radius: 22px;
  }

  .one-click-modal__close {
    top: 14px;
    right: 14px;
    width: 38px;
    height: 38px;
  }

  .one-click-modal__header {
    padding-right: 42px;
    margin-bottom: 20px;
  }

  .one-click-modal__header h2 {
    font-size: 24px;
  }

  .one-click-modal__header p:last-child {
    font-size: 14px;
  }

  .one-click-form__field input {
    height: 50px;
    border-radius: 12px;
  }
}

.product-main-row {
  display: flex;
  gap: 42px;
}

/* ============================================
   PRODUCT GALLERY
   ============================================ */

.product-gallery {
  flex: 0 0 655px;
  width: 655px;
  position: relative;
}

.gallery-swiper {
  height: 100%;
  border-radius: var(--radius-md);
  overflow: hidden;
  margin: 0;
}

.gallery-swiper .swiper-slide {
  width: 100%;
  height: 100%;
}

.product-image-main {
  width: 100%;
  max-width: 100%;
  height: 100%;
  border-radius: var(--radius-md);
  overflow: hidden;
}

.product-image-main img {
  /* width: 100%; */
  height: 100%;
  object-fit: cover;
}

.gallery-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 64px;
  height: 64px;
  background: none;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all var(--transition-fast);
  z-index: 10;
}

.gallery-nav:hover path:first-child {
  fill: var(--color-primary);
}

.gallery-nav.prev {
  left: 30px;
}

.gallery-nav.next {
  right: 30px;
}

.product-badges {
  position: absolute;
  top: 52px;
  left: 40px;
  display: flex;
  gap: 16px;
}

.badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 16px;
  border-radius: 58px;
  font-size: 14px;
  font-weight: 600;
}

.badge-new {
  background: var(--color-card);
  color: var(--color-text);
}

.badge-hit {
  background: var(--color-primary);
  color: var(--color-text);
}

/* ============================================
   PRODUCT INFO MAIN
   ============================================ */

.product-info-main {
  flex: 1;
}

.product-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 12px;
}

.product-title {
  font-size: 32px;
  font-weight: 600;
  color: var(--color-text);
  line-height: 1.2;
}

.product-actions-top {
  display: flex;
  gap: 8px;
}

.icon-btn-top {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity var(--transition-fast);
}

.icon-btn-top svg path {
  transition: stroke var(--transition-fast);
}

.icon-btn-top:hover svg path {
  stroke: var(--color-primary);
}

.js-favourite-toggle .heart-path {
  transition: fill var(--transition-fast), stroke var(--transition-fast);
}

.js-favourite-toggle.is-active .heart-path {
  fill: var(--color-primary);
  stroke: var(--color-primary);
}

.js-favourite-toggle.is-loading {
  pointer-events: none;
  opacity: 0.65;
}

.product-status-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}

.product-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 16px;
  background: var(--color-card);
  border: 1px solid #CCC;
  border-radius: 42px;
  font-size: 14px;
  color: var(--color-text);
}

.status-dot {
  width: 9px;
  height: 9px;
  background: var(--Accents-Green, #34C759);
  border-radius: 50%;
}

.status-dot-not {
  width: 9px;
  height: 9px;
  background: red;
  border-radius: 50%;
}

.product-sku {
  font-size: 14px;
  color: var(--color-text-muted);
}

.product-description {
  font-size: 14px;
  line-height: 1.7;
  color: var(--color-text);
  margin-bottom: 24px;
}

/* Price & Buttons */
.product-price-row {
  display: flex;
  align-items: center;
  gap: 24px;
  justify-content: space-between;
  margin-bottom: 40px;
}

.product-price-main {
  font-size: 24px;
  font-weight: 800;
  color: var(--color-text);
}

.product-buttons {
  display: flex;
  gap: 8px;
}

.btn-add-cart {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 49px;
  padding: 0 20px;
  background: #E3E3E3;
  border: none;
  border-radius: 41px;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text);
  cursor: pointer;
  transition: transform var(--transition-fast);
}

.btn-add-cart:hover {
  /* hover effect removed */
}

.btn-buy-now {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 49px;
  padding: 0 24px;
  background: var(--color-primary);
  border: none;
  border-radius: 41px;
  font-size: 12px;
  font-weight: 600;
  color: #562C00;
  cursor: pointer;
  transition: transform var(--transition-fast);
}

.btn-buy-now:hover {
  /* hover effect removed */
}

/* ============================================
   SPECIFICATIONS
   ============================================ */

.product-specs {
  position: relative;
}

.specs-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: 20px;
}

.specs-link {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 12px;
  color: var(--color-text-muted);
  text-decoration: underline;
  transition: color var(--transition-fast);
}

.specs-link:hover {
  color: var(--color-primary-dark);
}

.specs-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.spec-item {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.spec-label {
  font-size: 14px;
  color: var(--color-text-muted);
  line-height: 1.7;
}

.spec-value {
  font-size: 14px;
  color: var(--color-text);
  line-height: 1.7;
}

.specs-divider {
  height: 1px;
  background: #E5E5E5;
  margin: 14px 0;
}

/* ============================================
   PRODUCT HELP
   ============================================ */

.product-help {
  margin-top: 24px;
}

.help-title {
  font-size: 16px;
  color: var(--color-text-muted);
  margin-bottom: 4px;
}

.help-subtitle {
  font-size: 13px;
  color: var(--color-text);
  margin-bottom: 16px;
}

.help-buttons {
  display: flex;
  gap: 24px;
}

.help-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  font-size: 13px;
  color: var(--color-text);
  transition: opacity var(--transition-fast);
}

.help-btn:hover {
  opacity: 0.8;
}

/* ============================================
   FEATURES BAR
   ============================================ */

.features-bar {
  display: flex;
  justify-content: space-between;
  background: #F5F5F5;
  border-radius: var(--radius-md);
  padding: 24px 64px 24px 24px;
  margin-top: 40px;
}

.feature-item {
  display: flex;
  align-items: center;
  gap: 14px;
}

.feature-icon {
  width: 24px;
  height: 24px;
}

.feature-text {
  display: flex;
  flex-direction: column;
}

.feature-label {
  font-size: 16px;
  color: var(--color-text-muted);
}

.feature-value {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text);
}

/* ============================================
   PRODUCT TABS
   ============================================ */

.product-tabs {
  margin-top: 40px;
}

.tabs-header {
  display: flex;
  gap: 0;
  margin-bottom: 24px;
  position: relative;
  border-bottom: 1px solid #e5e5e5;
}

.tab-btn {
  font-size: 20px;
  font-weight: 600;
  color: var(--color-text-muted);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0 0 16px 0;
  position: relative;
  transition: color var(--transition-fast);
  padding-bottom: 16px;
  padding-inline: 16px;
  margin-right: 0;
  border-bottom: 2px solid transparent;
}

.tab-btn:hover,
.tab-btn.active {
  color: var(--color-text);
  border-bottom: 2px solid black;
}

.tab-panel {
  display: none;
}

.tab-panel.active {
  display: block;
}

.tab-text {
  font-size: 14px;
  line-height: 1.7;
  color: var(--color-text);
}

/* ============================================
   SIMILAR PRODUCTS
   ============================================ */

.similar-section {
  padding-bottom: 80px;
}

.similar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
}

.similar-title {
  font-size: 36px;
  font-weight: 600;
  color: var(--color-text);
  position: relative;
}

.similar-title::before {
  content: '';
  position: absolute;
  left: -30px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 2px;
  background: var(--color-primary);
}

.similar-nav {
  display: flex;
  gap: 8px;
}

.nav-arrow {
  width: 64px;
  height: 64px;
  background: transparent;
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all var(--transition-fast);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

.nav-arrow.carousel-prev {
  left: -96px;
}

.nav-arrow.carousel-next {
  right: -96px;
}

.nav-arrow:hover svg path {
  stroke: var(--color-primary);
}

.similar-carousel {
  position: relative;
  display: flex;
  align-items: center;
}

.similar-swiper {
  overflow: hidden;
}

.similar-swiper .swiper-slide {
  height: auto;
}

.similar-swiper .product-card {
  height: 100%;
  background: var(--color-card);
  border: 1px solid #CCC;
  border-radius: var(--radius-md);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.similar-swiper .product-image {
  height: 300px;
  border-radius: 0;
  flex-shrink: 0;
}

.similar-swiper .product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.similar-swiper .product-info {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.similar-swiper .product-name {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
  color: var(--color-text);
}

.similar-swiper .product-desc {
  font-size: 14px;
  color: #515151;
  line-height: 1.5;
  margin-bottom: 16px;
}

.similar-swiper .product-divider {
  height: 1px;
  background: #E5E5E5;
  margin-bottom: 16px;
}

.similar-swiper .product-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
}

.similar-swiper .product-prices {
  display: flex;
  align-items: center;
  gap: 16px;
}

.similar-swiper .product-price {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text);
}

.similar-swiper .product-price-old {
  font-size: 14px;
  color: #888;
  text-decoration: line-through;
}

/* ============================================
   RESPONSIVE - TABLET
   ============================================ */

@media (max-width: 1200px) {
  .product-main-row {
    flex-direction: column;
    gap: 30px;
  }

  .product-gallery {
    flex: none;
    width: calc(100% + 80px);
    margin-inline: -40px;
    margin-top: -40px;
  }

  .gallery-nav.prev {
    left: 16px;
  }

  .gallery-nav.next {
    right: 16px;
  }

  .features-bar {
    flex-wrap: wrap;
    gap: 16px;
    justify-content: normal;
    display: grid;
  }

  .similar-swiper .product-image {
    height: 250px;
  }
}

@media (max-width: 992px) {

  .tabs-header {
    margin-bottom: 14px;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: space-between;
    gap: 0;
    row-gap: 16px;
  }

  .tab-btn {
    font-size: 16px;
    flex-shrink: 0;
  }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */

@media (max-width: 768px) {
  .tabs-header {
    border-bottom: none;
  }

  .product-section .container {
    padding: 0 20px;
  }

  .product-card-main {
    padding: 20px;
    border-radius: 0;
    box-shadow: none;
    margin-inline: -20px;
  }

  .product-gallery {
    position: relative;
    margin: 0;
    width: 100%;
  }

  .product-image-main {
    border-radius: var(--radius-md);
  }

  .gallery-nav svg {
    width: 36px;
    height: 36px;
  }

  .gallery-nav.prev {
    left: 8px;
  }

  .gallery-nav.next {
    right: 8px;
  }

  .product-badges {
    top: 16px;
    left: 16px;
    gap: 8px;
  }

  .badge {
    font-size: 12px;
    padding: 4px 12px;
  }

  .product-header {
    gap: 12px;
  }

  .product-title {
    font-size: 24px;
  }

  .product-actions-top {
    align-self: flex-end;
  }

  .product-status-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .product-description {
    font-size: 13px;
  }

  .product-price-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  .product-buttons {
    width: 100%;
    flex-direction: column;
  }

  .btn-add-cart,
  .btn-buy-now {
    width: 100%;
    height: 44px;
    font-size: 14px;
  }

  .specs-link {
    position: static;
    display: block;
    margin-bottom: 16px;
    text-align: right;
  }

  .specs-grid {
    grid-template-columns: 1fr;
  }

  .help-buttons {
    flex-direction: column;
    gap: 12px;
  }

  .features-bar {
    flex-direction: column;
    gap: 16px;
    padding: 20px;
    margin: 40px -20px 0;
    border-radius: 0;
  }

  .feature-item {
    padding: 8px 0;
    border-bottom: 1px solid #E5E5E5;
  }

  .feature-item:last-child {
    border-bottom: none;
  }

  .product-tabs {
    margin-bottom: 40px;
  }

  .tab-btn {
    font-size: 14px;
    flex: 1;
    border-bottom: 2px solid black;
    border-bottom-color: #E5E5E5;
  }


  .tab-text {
    font-size: 13px;
  }

  .similar-section .container {
    padding: 0 20px;
  }

  .similar-header {
    margin-bottom: 24px;
  }

  .similar-title {
    font-size: 24px;
  }

  .similar-title::before {
    display: none;
  }

  .similar-carousel {
    position: relative;
    padding: 0 28px;
  }

  .similar-carousel .nav-arrow {
    width: 36px;
    height: 36px;
    display: flex;
  }

  .similar-carousel .nav-arrow svg {
    width: 36px;
    height: 36px;
  }

  .similar-carousel .carousel-prev {
    left: -16px;
  }

  .similar-carousel .carousel-next {
    right: -16px;
  }

  .similar-swiper .swiper-slide {
    width: 100% !important;
  }

  .similar-nav .nav-arrow {
    width: 40px;
    height: 40px;
  }

  .similar-nav .nav-arrow svg {
    width: 16px;
    height: 16px;
  }

  .similar-swiper .product-image {
    height: 220px;
  }

  .similar-swiper .product-info {
    padding: 16px;
  }

  .similar-swiper .product-name {
    font-size: 16px;
  }

  .similar-swiper .product-desc {
    font-size: 13px;
    margin-bottom: 12px;
  }

  .similar-swiper .product-footer {
    flex-wrap: wrap;
    gap: 12px;
  }

  .similar-swiper .product-prices {
    order: 1;
  }

  .similar-swiper .add-to-cart {
    order: 2;
  }
}

/* End */


/* Start:/local/templates/ajerramoto/src/styles/cart.css?177727119910289*/
/* ============================================
   CART PAGE
   ============================================ */

.cart-section {
  padding-top: 20px;
  padding-bottom: var(--space-4xl);
}

/* Breadcrumbs - page-specific adjustments */
.breadcrumbs {
  margin-bottom: 12px;
}

/* Cart Content Layout */
.cart-content {
  display: flex;
  gap: 35px;
  background: var(--color-card);
  border-radius: var(--radius-md);
  padding: var(--space-xl);
  min-height: 860px;
}

/* Cart Main */
.cart-main {
  flex: 1;
  max-width: 950px;
}

.cart-title {
  font-size: 20px;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: var(--space-xl);
}

/* Cart Items */
.cart-items {
  display: flex;
  flex-direction: column;
}

.cart-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: var(--space-lg) 0;
  border-bottom: 1px solid #E5E5E5;
  position: relative;
}

.cart-item:first-child {
  padding-top: 0;
}

.cart-item-image {
  width: 162px;
  height: 110px;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
}

.cart-item-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cart-item-info {
  flex: 1;
  max-width: 411px;
}

.cart-item-name {
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text);
  line-height: 1.5;
}

.cart-item-name-link {
  color: inherit;
  text-decoration: none;
  transition: color var(--transition-fast);
}

.cart-item-name-link:hover {
  color: var(--color-primary);
}

.cart-item-counter {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

.counter {
  display: flex;
  align-items: center;
  border: 1px solid #E6E6E6;
  border-radius: 59px;
  padding: 2px;
}

.counter-btn {
  width: 24px;
  height: 24px;
  background: #F8F8F8;
  border-radius: 59px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--transition-fast);
}

.counter-btn:hover {
  background: #EFEFEF;
}

.counter-btn.minus svg {
  width: 12px;
  height: 12px;
}

.counter-btn.plus svg {
  width: 12px;
  height: 12px;
}

.counter-value {
  min-width: 36px;
  width: 36px;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text);
  border: none;
  background: transparent;
  -moz-appearance: textfield;
}

.counter-value::-webkit-outer-spin-button,
.counter-value::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.cart-item-unit-price {
  font-size: 12px;
  color: var(--color-text-muted);
}

.cart-item-price {
  font-size: 18px;
  font-weight: 600;
  color: var(--color-text);
  min-width: 90px;
  text-align: right;
}

.cart-item-delete {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.5;
  transition: opacity var(--transition-fast);
  flex-shrink: 0;
}

.cart-item-delete:hover {
  opacity: 1;
}

.cart-item-divider {
  height: 1px;
  background: #E5E5E5;
}

/* Cart Item Restore State */
.cart-item-restore {
  position: relative;
}

.cart-item-notification {
  position: relative;
  min-height: 110px;
  display: flex;
  align-items: center;
}

.cart-item-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.7);
  z-index: 1;
}

/* Overlay в режиме восстановления не блокирует клики */
.cart-item-restore .cart-item-overlay {
  pointer-events: none;
}

.cart-item-removed {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: var(--space-md) 0;
  font-size: 14px;
  color: var(--color-text);
  position: relative;
  z-index: 2;
}

.cart-item-removed-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  position: relative;
  z-index: 3;
}

.cart-item-restore-link {
  color: var(--color-primary);
  font-weight: 500;
  transition: color var(--transition-fast);
  cursor: pointer;
  position: relative;
  z-index: 4;
}

.cart-item-restore-link:hover {
  color: var(--color-primary-dark);
}

.cart-item-close-restore {
  font-size: 20px;
  line-height: 1;
  color: var(--color-text-muted);
  cursor: pointer;
  transition: color var(--transition-fast);
  position: relative;
  z-index: 4;
}

.cart-item-close-restore:hover {
  color: var(--color-text);
}

/* Cart Item Loading State */
.cart-item .cart-item-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.7);
  z-index: 10;
}

/* Cart Item Warning */
.cart-item-warning {
  font-size: 12px;
  color: #dc3545;
  margin-top: 4px;
}

.cart-item-warning a {
  color: var(--color-primary);
  text-decoration: underline;
}

/* Cart Item Properties */
.cart-item-props {
  font-size: 12px;
  color: var(--color-text-muted);
  margin-top: 4px;
}

.cart-item-prop-name {
  font-weight: 500;
}

/* Alert styles */
.alert {
  padding: 12px 16px;
  border-radius: var(--radius-sm);
  margin-bottom: var(--space-md);
}

.alert-warning {
  background: #fff3cd;
  border: 1px solid #ffc107;
  color: #856404;
}

.alert-dismissable .close {
  float: right;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  opacity: 0.5;
}

.alert-dismissable .close:hover {
  opacity: 1;
}

/* Cart Summary */
.cart-summary {
  width: 345px;
  background: #F7F7F7;
  border-radius: var(--radius-md);
  padding: var(--space-lg);
  height: fit-content;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.cart-summary-inner {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.summary-value {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text);
}

.summary-discount .summary-value {
  color: #28a745;
}

.summary-weight .summary-value {
  color: var(--color-text-muted);
}

/* Coupon */
.summary-coupon {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 4px 0;
}

.summary-coupon-input {
  display: flex;
  gap: 8px;
}

.summary-coupon-input input {
  flex: 1;
  height: 40px;
  padding: 0 12px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  font-size: 14px;
  background: var(--color-card);
}

.summary-coupon-input input:focus {
  outline: none;
  border-color: var(--color-primary);
}

.summary-coupon-btn {
  width: 40px;
  height: 40px;
  background: var(--color-primary);
  border-radius: var(--radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #562C00;
  transition: background var(--transition-fast);
  flex-shrink: 0;
}

.summary-coupon-btn:hover {
  background: var(--color-primary-dark);
}

.summary-coupon-applied {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  background: #e8f5e9;
  border-radius: var(--radius-sm);
  font-size: 13px;
}

.summary-coupon-code {
  color: #28a745;
  font-weight: 500;
}

.summary-coupon-remove {
  font-size: 18px;
  color: var(--color-text-muted);
  cursor: pointer;
  line-height: 1;
}

.summary-coupon-remove:hover {
  color: #dc3545;
}

.btn-one-click {
  width: 100%;
  height: 49px;
  background: #E3E3E3;
  border-radius: 41px;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text);
  transition: background var(--transition-fast);
}

.btn-one-click:hover {
  background: #D5D5D5;
}

.btn-checkout {
  width: 100%;
  height: 49px;
  background: var(--color-primary);
  border-radius: 41px;
  font-size: 14px;
  font-weight: 600;
  color: #562C00;
  transition: background var(--transition-fast);
}

.btn-checkout:hover {
  background: var(--color-primary-dark);
}

.btn-checkout.disabled {
  background: #ccc;
  color: #888;
  cursor: not-allowed;
  pointer-events: none;
}

/* Empty Cart */
.cart-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-card);
  border-radius: var(--radius-md);
  min-height: 950px;
}

.cart-empty-content {
  text-align: center;
}

.cart-empty-title {
  font-size: 36px;
  font-weight: 700;
  color: var(--color-text);
  margin-bottom: var(--space-md);
}

.cart-empty-text {
  font-size: 20px;
  line-height: 1.5;
  color: var(--color-text);
  margin-bottom: var(--space-3xl);
}

.cart-empty-link {
  color: var(--color-primary);
  text-decoration: underline;
  transition: color var(--transition-fast);
}

.cart-empty-link:hover {
  color: var(--color-primary-dark);
}

.cart-empty-image {
  margin: 0 auto;
  width: 271px;
  height: 226px;
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 1200px) {
  .cart-content {
    flex-direction: column;
  }

  .cart-main {
    max-width: 100%;
  }

  .cart-summary {
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    position: sticky;
    bottom: 1rem;
  }

  .summary-row {
    flex: 1;
    justify-content: flex-start;
    gap: 16px;
  }

  .btn-one-click,
  .btn-checkout {
    width: auto;
    min-width: 200px;
  }
}

@media (max-width: 768px) {
  .cart-section {
    padding-bottom: var(--space-2xl);
  }

  .cart-content {
    padding: var(--space-lg);
    min-height: auto;
  }

  .cart-title {
    font-size: 18px;
    margin-bottom: var(--space-lg);
  }

  .cart-item {
    flex-wrap: wrap;
    gap: 12px;
  }

  .cart-item-image {
    width: 100px;
    height: 80px;
  }

  .cart-item-info {
    flex: 1;
    max-width: calc(100% - 120px);
  }

  .cart-item-name {
    font-size: 13px;
  }

  .cart-item-counter {
    width: 100%;
    flex-direction: row;
    align-items: center;
    margin-top: var(--space-sm);
  }

  .cart-item-price {
    font-size: 16px;
    min-width: auto;
  }

  .cart-item-delete {
    position: absolute;
    top: var(--space-lg);
    right: 0;
  }

  .cart-item {
    position: relative;
    padding-right: 30px;
  }

  .cart-summary {
    flex-direction: column;
    gap: 16px;
  }

  .summary-row {
    width: 100%;
    justify-content: space-between;
  }

  .btn-one-click,
  .btn-checkout {
    width: 100%;
    flex: 1 0 auto;
  }

  /* Empty Cart Mobile */
  .cart-empty {
    min-height: 500px;
    padding: var(--space-3xl) var(--space-lg);
  }

  .cart-empty-title {
    font-size: 24px;
  }

  .cart-empty-text {
    font-size: 16px;
  }

  .cart-empty-image {
    width: 200px;
    height: auto;
  }
}

/* End */


/* Start:/local/templates/ajerramoto/src/styles/order.css?17742821548596*/
/* ============================================
   ORDER PAGE
   ============================================ */

.order-section {
  padding-top: 20px;
  padding-bottom: var(--space-4xl);
}

/* Breadcrumbs - page-specific adjustments */
.breadcrumbs {
  margin-bottom: 12px;
}

/* Order Content Layout */
.order-content {
  display: flex;
  gap: 35px;
  background: var(--color-card);
  border-radius: var(--radius-md);
  padding: var(--space-xl);
  min-height: 860px;
}

/* Order Main */
.order-main {
  flex: 1;
  max-width: 920px;
}

.order-title {
  font-size: 20px;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: var(--space-xl);
}

/* Order Block */
.order-block {
  border: 1px solid #DDD;
  border-radius: var(--radius-sm);
  padding: 20px var(--space-lg);
  margin-bottom: var(--space-lg);
}

.order-block:last-child {
  margin-bottom: 0;
}

.order-block-title {
  font-size: 16px;
  font-weight: 500;
  color: var(--color-text);
  margin-bottom: var(--space-md);
}

/* Form Elements */
.order-form-row {
  display: flex;
  gap: var(--space-lg);
  margin-bottom: 12px;
}

.order-form-row:last-child {
  margin-bottom: 0;
}

.form-group {
  flex: 1;
}

.form-group-full {
  width: 100%;
}

.form-label {
  display: block;
  font-size: 14px;
  color: #565656;
  margin-bottom: 8px;
}

.required {
  color: red;
}

.form-input {
  width: 100%;
  height: 38px;
  padding: 0 var(--space-md);
  background: #F6F6F6;
  border: 1px solid #E5E5E5;
  border-radius: var(--radius-sm);
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--color-text);
  transition: border-color var(--transition-fast);
}

.form-input::placeholder {
  color: var(--color-text-muted);
}

.form-input:focus {
  outline: none;
  border-color: var(--color-primary);
}

.form-textarea {
  width: 100%;
  height: 86px;
  padding: var(--space-md);
  background: #F6F6F6;
  border: 1px solid #E5E5E5;
  border-radius: var(--radius-sm);
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--color-text);
  resize: none;
  transition: border-color var(--transition-fast);
}

.form-textarea::placeholder {
  color: var(--color-text-muted);
}

.form-textarea:focus {
  outline: none;
  border-color: var(--color-primary);
}

.form-note {
  font-size: 14px;
  color: var(--color-text-muted);
  margin-bottom: 0;
}

/* Radio Group */
.radio-group {
  display: flex;
  gap: 40px;
  margin-bottom: var(--space-lg);
}

.radio-label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}

.radio-label input[type="radio"] {
  display: none;
}

.radio-icon {
  display: none;
}

.radio-icon-unchecked {
  width: 16px;
  height: 16px;
  border: 1px solid #CECECE;
  border-radius: 4px;
  position: relative;
  flex-shrink: 0;
}

.radio-label input[type="radio"]:checked + .radio-icon-unchecked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 6px;
  height: 6px;
  background: #242424;
  border-radius: 50%;
}

.radio-text {
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text);
}

/* Delivery Form */
.delivery-form {
  margin-top: var(--space-lg);
  margin-bottom: var(--space-md);
}

.order-divider {
  height: 1px;
  background: #E5E5E5;
  margin-bottom: var(--space-lg);
}

/* Order Summary */
.order-summary {
  width: 345px;
  background: #F7F7F7;
  border-radius: var(--radius-md);
  padding: var(--space-lg);
  height: fit-content;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* summary-row, summary-label, summary-total - now in main.css */

.summary-details {
  display: flex;
  flex-direction: column;
  gap: 4px;
  text-align: right;
}

.summary-item {
  display: flex;
  gap: 60px;
  font-size: 14px;
  justify-content: space-between;
}

.summary-item-label {
  color: var(--color-text-muted);
  background: #F7F7F7;
  position: relative;
  z-index: 1;
}

.summary-item-value {
  color: var(--color-text);
  background: #F7F7F7;
  position: relative;
  z-index: 1;
  font-weight: 500;
}

/* summary-divider - now in main.css */

.summary-toggles {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.toggle-label {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: center;
  gap: var(--space-md);
}

.toggle-text {
  font-size: 12px;
  color: var(--color-text-muted);
  line-height: 1.4;
}

.toggle-btn {
  width: 36px;
  height: 20px;
  padding: 2px;
  background: #AAA;
  border-radius: 12px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  transition: background var(--transition-fast);
  cursor: pointer;
  flex-shrink: 0;
}

.toggle-btn.active {
  background: var(--color-primary);
  justify-content: flex-end;
}

.toggle-slider {
  width: 16px;
  height: 16px;
  background: #FCFCFD;
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(16, 24, 40, 0.1), 0 1px 2px rgba(16, 24, 40, 0.06);
}

.btn-submit {
  width: 100%;
  height: 49px;
  background: var(--color-primary);
  border-radius: 41px;
  font-size: 14px;
  font-weight: 600;
  color: #562C00;
  transition: background var(--transition-fast);
  margin-top: 8px;
}

.btn-submit:hover {
  background: var(--color-primary-dark);
}

/* ============================================
   ORDER SUCCESS PAGE
   ============================================ */

.order-success-section {
  padding-top: 20px;
  padding-bottom: var(--space-4xl);
}

.order-success-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: var(--color-card);
  border-radius: var(--radius-md);
  padding: var(--space-4xl) var(--space-xl);
  min-height: 600px;
}

.order-success-image {
  margin-bottom: var(--space-3xl);
}

.order-success-image img {
  width: 446px;
  height: auto;
}

.order-success-message {
  max-width: 888px;
  text-align: center;
}

.order-success-text {
  font-size: 14px;
  line-height: 27px;
  color: var(--color-text);
}

.order-success-text strong {
  font-weight: 700;
}

.order-success-link {
  color: var(--color-primary);
  text-decoration: underline;
  transition: color var(--transition-fast);
}

.order-success-link:hover {
  color: var(--color-primary-dark);
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 1200px) {
  
  .order-main {
    max-width: 100%;
  }

  .order-summary {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
  }

  .summary-row {
    flex: 1;
    width: 100%;
  }

  
  .summary-item {
    gap: 1rem;
    justify-content: space-between;
    width: 100%;
  }
  .summary-details {
    gap: 24px;
    width: 100%;
  }

  .summary-toggles {
    flex-direction: column;
    flex-wrap: wrap;
    gap: 16px;
    width: 100%;
  }

  .toggle-label {
    flex: 1;
    min-width: 200px;
  }

  .btn-submit {
    width: auto;
    flex: 1;
    min-width: 200px;
  }
      

  .order-form-row {
    flex-wrap: wrap;
    flex-direction: column;
  }
}

@media (max-width: 900px) {
  .order-content {
    flex-direction: column;
  }

  .order-summary {
      width: 100%;
  }

  
}

@media (max-width: 768px) {
  .order-section,
  .order-success-section {
    padding-top: 30px;
    padding-bottom: var(--space-3xl);
  }

  .order-content {
    padding: var(--space-lg);
    min-height: auto;
  }

  .order-title {
    font-size: 18px;
    margin-bottom: var(--space-lg);
  }

  .summary-details {
    align-items: flex-start;
  flex-direction: column;
  gap: 0;
  }

  .order-block {
    padding: var(--space-md);
  }

  .order-form-row {
    flex-direction: column;
    gap: var(--space-md);
  }

  .radio-group {
    flex-direction: column;
    gap: var(--space-md);
  }

  .order-summary {
    flex-direction: column;
    gap: 16px;
  }

  .summary-row {
    width: 100%;
    justify-content: space-between;
  }

  .summary-details {
    width: 100%;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 1rem;
  }

  .summary-toggles {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  .toggle-label {
    width: 100%;
    flex-direction: row-reverse;
  }

  .btn-submit {
    width: 100%;
    flex: 1 0 auto;
  }

  /* Success Page Mobile */
  .order-success-content {
    padding: var(--space-3xl) var(--space-lg);
    min-height: 500px;
  }

  .order-success-image img {
    width: 280px;
  }

  .order-success-message {
    max-width: 100%;
  }

  .order-success-text {
    font-size: 14px;
    line-height: 1.7;
  }
}

/* End */


/* Start:/local/templates/ajerramoto/src/styles/custom.css?1776756898547*/
:root {
    /* State Colors */

    --color-success: #10e13f;
    --color-success-dark: #218838;
}
span.cart-icon.in-basket {
    background: var(--color-success);
}
button.add-to-cart.small.in-basket-btn {
    border: 2px solid var(--color-success);
}
.main-section {
    padding-top: 100px;
    padding-bottom: var(--space-4xl);
}

.btn-filter-apply input {
    border: none;
    background: none;
    font-family: inherit;
}
.btn-filter-clear input {
    border: none;
    background: none;
    font-family: inherit;
}
/* End */


/* Start:/local/templates/ajerramoto/components/bitrix/menu/menu/style.min.css?1774591085490*/
ul.left-menu{list-style:none;margin:0;padding:0;margin-bottom:8px;position:relative}ul.left-menu li{padding:10px 16px;background:#f5f5f5 url(/local/templates/ajerramoto/components/bitrix/menu/menu/images/left_menu_bg.gif) top repeat-x}ul.left-menu li a{font-size:100%;color:#bc262c;font-weight:bold;text-decoration:none}ul.left-menu li a:visited{color:#bc262c}ul.left-menu li a:hover{color:#bc262c}ul.left-menu li a.selected:link,ul.left-menu li a.selected:visited,ul.left-menu li a.selected:active,ul.left-menu li a.selected:hover{color:#fc8d3d}
/* End */


/* Start:/local/templates/ajerramoto/template_styles.css?1788959155208*/
#bx-panel {
    z-index: 1001 !important;
}
.mobile-menu.is-admin {
    top: 118px !important;
}
.marginTop {
    margin-top: 80px;
}
.icon-btn-heart {
    display: flex;
    position: relative;
}
/* End */
/* /local/templates/ajerramoto/src/styles/main.css?178920494641100 */
/* /local/templates/ajerramoto/src/styles/category.css?177511638017801 */
/* /local/templates/ajerramoto/src/styles/product.css?178902781719368 */
/* /local/templates/ajerramoto/src/styles/cart.css?177727119910289 */
/* /local/templates/ajerramoto/src/styles/order.css?17742821548596 */
/* /local/templates/ajerramoto/src/styles/custom.css?1776756898547 */
/* /local/templates/ajerramoto/components/bitrix/menu/menu/style.min.css?1774591085490 */
/* /local/templates/ajerramoto/template_styles.css?1788959155208 */
