@charset "utf-8";
/* Website developed by Symelo LTD — https://symelo.com */

/* --------------------
		Reset Styles
-------------------- */

html, body, div, span, h1, h2, h3, h4, h5, h6, p, blockquote, a, em, img, q, strong, sub, sup, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
}

html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

input, textarea, button {
	font-family: Raleway, 'Raleway',sans-serif;
}

button object, a object {
	pointer-events: none;
}

/* --------------------
		Standard Styles
-------------------- */

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;	
}

ol, ul {
	list-style-position: inside;
}

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

a:hover {
	text-decoration: underline;
}

strong {
	font-weight: bold;	
}

em {
	font-style: italic;	
}

p {
	padding-bottom: 1em;	
}

svg {
	transition: all 0.2s;
}

.swiper-pagination {
	--swiper-pagination-offset: -5px;
}

img.alignleft {
	float: left;
	margin: 5px 0.5rem 0.5rem 0;
}

img.alignright {
	float: right;
	margin: 0 0 0.5rem 0.5rem;
}

.aligncenter {
	text-align: center;
}

.clear {
	display: block;
	clear: both;
}

/* --------------------
		Main Styles
-------------------- */

@font-face {
	font-family: 'Raleway';
	src: url('Raleway-Regular.woff2') format('woff2'),
		 url('Raleway-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

html, body {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	font-family: Raleway, 'Raleway',sans-serif;
	--swiper-theme-color: #FF324D;
	--swiper-pagination-color: #000;
}

.wrapper {
	margin: 0 auto;
	max-width: 1140px;
	padding: 0 20px;
}

header .topbar {
	background-color: #eee;
	color: #000;
	font-size: 13px;
	padding: 5px 0;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}

header .topbar.floating {
	text-align: center;
	background-color: #F9DEE2;
	color: #000;
}

header .topbar.floating a {
	font-weight: bold;
	text-decoration: none;
	display: inline-block;
	position: relative;
}

header .topbar.floating a:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 100%;
	height: 2px;
	background-color: #000;
}

header .topbar span + span {
	display: inline-block;
	border-left: 1px solid #000;
	margin-left: 10px;
	padding-left: 10px;
}

.promobar {
	background-color: #ff324d;
	color: #fff;
	text-align: center;
	padding-top: 5px;
	padding-bottom: 5px;
	font-size: 14px;
}

header .content {
	padding: 15px 0;
}

header .content .wrapper {
	display: flex;
	justify-content: space-between;
}

header .logo img {
	width: 182px;
	height: 50px;
}

header .callus {
	display: flex;
	align-items: center;
	font-size: 17px;
	font-size: 16px;
	color: #000;
}

header .callus svg {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
	margin-top: -3px;
	width: 40px;
	height: 40px;
	object-fit: contain;
	color: #FF324D;
	transition: color 0.2s;
}

header .callus:hover {
	text-decoration: none;
	color: #FF324D;
}

header .callus:hover svg {
	animation: shake 0.9s;
}

header .search {
	display: flex;
	gap: -1px;
}

header .search input, header .search select, header .search button {
	outline: none;
	border: 1px solid #ddd;
	box-shadow: none;
	padding: 10px;
	font-size: 16px;
	background: none;
	color: #000;
	transition: none;
}

header .search select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url(images/down.svg);
	background-position: right 7px center;
	background-repeat: no-repeat;
	padding-right: 35px;
	max-width: 150px;
}

header .search input {
	border-left: none;
	border-right: none;
	width: 400px;
	max-width: 100%;
}

header .search button {
	border-left: none;
	font-size: 25px;
	cursor: pointer;
	width: 50px;
}

header .search button svg {
	width: 100%;
	height: 100%;
}

header .search button:hover {
	background-color: transparent;
	transform: none;
	border-color: #ddd;
}

header .search button:hover svg {
	color: #FF324D;
}

header .search select, header .search select option {
	text-transform: capitalize;
}

header .navigation {
	background-color: #000;
	color: #000;
	position: relative;
	z-index: 5000;
}

header .navigation .wrapper {
	display: flex;
	justify-content: space-between;
}

header .navigation .menus {
	display: grid;
	grid-template-columns: 200px auto;
}

header .navigation .categories {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	position: relative;
}

header .navigation .categories .toggle {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background-color: #FF324D;
	color: #fff;
	padding: 0 20px;
	width: 100%;
	height: 100%;
	text-transform: uppercase;
	cursor: pointer;
}

header .navigation .categories .toggle svg {
	width: 26px;
	height: 26px;
	object-fit: contain;
	object-position: center center;
	display: inline-block;
	margin-right: 8px;
}

header .navigation .categories > ul {
	display: none;
	list-style: none;
	position: absolute;
	top: 60px;
	left: 0;
	background-color: #fff;
	width: 100%;
	padding-top: 4px;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

header .navigation .categories ul ul {
	position: static;
}

header .navigation .categories ul ul.hideOnDesktop {
	display: none;
}

header .navigation .categories ul li {
	display: block;
	border-bottom: 1px solid #eee;
}

header .navigation .categories ul li.hideOnDesktop {
	display: none;
}

header .navigation .categories ul li a {
	display: block;
	padding: 6px 15px;
	font-size: 14px;
	text-transform: uppercase;
	color: #000;
	transition: none;
}

header .navigation .categories ul li.hasSubmenus > a {
	font-weight: bold;
}

header .navigation .categories ul li a:hover, header .navigation .categories ul li.selected a {
	font-weight: bold;
	text-decoration: none;
	color: #000;
	background-color: #ddd;
}

header .navigation .categories:hover ul, header .navigation .categories.opened ul {
	display: block;
}

header .navigation .categories ul li.lastItems {
	margin-top: 15px;
}

header .navigation .menu {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	padding-left: 20px;
}

header .navigation .menu ul {
	display: flex;
	list-style: none;
	gap: 15px;
}

header .navigation .menu a {
	display: inline-block;
	align-items: center;
	line-height: 60px;
	color: #fff;
	text-transform: uppercase;
	font-size: 14px;
}

header .navigation .menu .selected a, header .navigation .menu a:hover {
	text-decoration: none;
	color: #FF324D;
}

header .navigation .side {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

header .navigation .side ul {
	display: flex;
	list-style: none;
	align-items: center;
	gap: 14px;
}

header .navigation .side a {
	color: #fff;
	font-size: 30px;
}

header .navigation .side a svg {
	width: 25px;
	height: 25px;
	object-fit: contain;
	object-position: center center;
	color: #fff;
}

header .navigation .side a:hover svg {
	color: #FF324D;
	animation: pop 0.2s;
}

@keyframes pop {
	0% { transform: scale(1); }
	100% { transform: scale(1.4); }
}

header sup, .bottomnavbar sup {
	position: relative;
	top: 0px;
	left: 0;
	font-size: 11px;
	background-color: #e40f2b;
	border-radius: 50px;
	height: 16px;
	line-height: 14px;
	color: #fff;
	min-width: 16px;
	text-align: center;
	padding: 0 5px;
	display: inline-block;
	vertical-align: top;
	margin-left: -5px;
	margin-right: -5px;
}

.bottomnavbar sup {
	position: absolute;
	top: -3px !important;
	left: auto;
	right: 0;
	margin: 0;
	width: auto;
}

header a:hover sup {
	animation: shake 0.9s;
}

@keyframes shake {
	0% { transform: rotate(0deg); }
	10% { transform: rotate(-10deg); }
	20% { transform: rotate(10deg); }
	30% { transform: rotate(-10deg); }
	40% { transform: rotate(10deg); }
	50% { transform: rotate(-10deg); }
	60% { transform: rotate(10deg); }
	70% { transform: rotate(-10deg); }
	80% { transform: rotate(10deg); }
	90% { transform: rotate(-10deg); }
	100% { transform: rotate(0deg); }
}

header .menu sup { top: 12px; }

header .navigation .side a:hover {
	text-decoration: none;
	color: #FF324D;
}

footer {
	clear: both;
	background-color: #f7f8fb;
	padding: 40px 0 15px 0;
	margin-top: 30px;
	font-size: 14px;
	color: #687188;
	line-height: 19px;
}

footer .logo {
	display: inline-block;
	margin-bottom: 20px;
}

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

footer a:hover {
	text-decoration: none;
	color: #FF324D;
}

footer li {
	list-style: none;
	padding: 5px 0;
}

footer h3 {
	font-size: 18px;
	font-weight: bold;
	padding-bottom: 20px;
}

.iconlist li, .iconlist li a {
	display: flex;
	gap: 10px;
	align-items: center;
}

.iconlist svg {
	width: 20px;
	color: #FF324D;
}

.columns {
	display: flex;
	gap: 15px;
	justify-content: space-between;
}

.icon-boxes {
	display: flex;
	gap: 50px;
	justify-content: center;
	padding: 30px 0;
	margin: 30px 0 15px 0;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

.icon-boxes .item {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 350px;
	max-width: 100%;
}

.icon-boxes .item .icon {
	background-color: #fff;
	max-width: 78px;
	text-align: center;
	height: 78px;
	border-radius: 100%;
	line-height: 78px;
	position: relative;
	margin: 0px 20px 0px 0px;
	box-shadow: 0 2px 0 rgb(0 0 0 / 5%);
	-ms-flex: 0 0 78px;
	flex: 0 0 78px;
}

.icon-boxes .item .icon img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 40px;
	height: 40px;
	object-fit: contain;
	object-position: center center;
}

.icon-boxes .item .icon:hover {
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-name: swing;
	animation-name: swing;
}

@keyframes swing {
	20% { transform:rotate(15deg) }
	40% { transform:rotate(-10deg) }
	60% { transform:rotate(5deg) }
	80% { transform:rotate(-5deg) }
	100% { transform:rotate(0deg) }
}

.icon-boxes .item h3 {
	font-weight: normal;
	color: #000;
	padding-bottom: 10px;
}

.store-badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 30px;
	margin-bottom: 30px;
}

.store-badges img {
	display: block;
	width: auto;
	height: 60px;
}

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

.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(250px, 1fr));
	gap: 30px;
}

.filter-groups {
	text-align: right;
	margin-bottom: 15px;
	grid-column: 1 / span 4;
}

.filters .filter-groups {
	text-align: left;
}

.filter-groups > div {
	display: inline-block;
	padding: 0 0 3px 5px;
	border-bottom: 2px solid #ccc;
}

.filter-groups a {
	text-transform: uppercase;
	position: relative;
	display: inline-block;
}

.filter-groups a.selected {
	font-weight: bold;
}

.filter-groups a + a {
	margin-left: 15px;
}

.filter-groups a + a:before {
	content: "";
	width: 2px;
	height: calc(100% + 6px);
	position: absolute;
	background-color: #ccc;
	top: -2px;
	left: -9px;
	transform: rotate(15deg);
}

.filters .colors {
	justify-content: flex-start;
	gap: 7px;
}

.page-home .filters .colors {
	justify-content: flex-start;
	gap: 12px;
}

.filters .colors .color {
	box-shadow: 0 0 0 1px #666 !important;
}

.filters .colors .color {
	width: 25px;
	height: 25px;
	transition: transform 0.3s;
}

.filters .colors .color.colors-all {
	width: 57px;
	transform: none;
	text-decoration: none;
	border-radius: 4px;
	font-size: 12px;
	align-items: center;
	justify-content: center;
	background-color: #fff;
}

.filters.home-filters .colors .color {
	width: 33px;
	height: 33px;
}

.filters .colors .color:hover, .filters .colors .color.selected {
	transform: scale(1.8) rotate(-45deg);
	z-index: 100;
}


.filters .colors .color.colors-all:hover, .filters .colors .color.colors-all.selected {
	transform: scale(1.3);
}

.sidebarfilters .filters .colors .selected { background-color: #eee; }
.sidebarfilters .filters .colors .color.selected { transform: scale(1); }
.colors .color-item { display: flex; gap: 7px; align-items: center; width: 100%; padding: 3px; }

.product-preview.leather:after {
	content: '';
	width: 30px;
	height: 30px;
	background-image: url(images/icon-leather.png);
	background-position: top right;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 20;
	position: absolute;
	top: 0;
	right: 10px;
}

.product-preview .colors, .filters .colors {
	display: flex;
	gap: 5px;
	justify-content: center;
	padding-bottom: 5px;
	flex-wrap: wrap;
	min-height: 19px;
}

.product-preview .colors .color, .filters .colors .color {
	display: inline-block;
	width: 12px;
	height: 12px;
	border-radius: 100%;
	display: flex;
	box-shadow: 0 0 0 1px #fff;
	overflow: hidden;
	flex-direction: column;
	transform: rotate(-45deg);
	z-index: 5;
	position: relative;
}

.product-preview .colors .color span, .filters .colors .color span {
	display: block;
	height: 100%;
	width: 100%;
	transform: scale(1.2);
}

.product-preview .colors .color.bordered {
	border: 1px solid #999;
}

.product-preview .title {
	display: block;
}

.products {
	padding: 50px 0;
}

.breadcrumbs {
	padding: 20px 0;
	background-color: #f7f8fb;
}

.breadcrumbs .wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.breadcrumbs h1 {
	font-size: 30px;
	font-weight: bold;
	color: rgb(41, 43, 44);
}

.breadcrumbs h1 small {
	font-size: 14px;
}

.breadcrumbs h1 a {
	color: #FF324D !important;
}

.breadcrumbs div {
	display: inline-block;
	font-size: 15px;
	color: #687188;
}

.breadcrumbs div a {
	color: #000;
	text-decoration: none;
}

.breadcrumbs a:hover {
	text-decoration: underline;
}

.mobile-filters-trigger {
	display: none;
}

.pager {
	grid-column: 1/-1;
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-bottom: 15px;
}

.pager > * {
	width: 24px;
	height: 24px;
	border: 1px solid #ccc;
	line-height: 22px;
	text-align: center;
	font-size: 14px;
	color: #000;
}

.pager > span {
	border: none;
	line-height: 24px;
}

.pager > label {
	width: auto;
	line-height: 24px;
	border: none;
}

.pager > .selected, .pager > a:hover {
	background-color: #FF324D;
	color: #fff;
	border-color: #FF324D;
	text-decoration: none;
}

.filters {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
	gap: 20px;
	padding: 30px 0 20px 0;
}

.filters .group {
	display: grid;
	grid-template-columns: 200px auto;
	align-items: center;
	justify-content: flex-start;
	gap: 30px;
}

.filters h5 {
	font-weight: bold;
	font-size: 17px;
}

.filters .items {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.filters .items > * {
	display: inline-block;
	border: 1px solid #ccc;
	min-width: 40px;
	width: auto !important;
	height: 40px;
	text-align: center;
	line-height: 38px;
	padding: 0 5px;
	font-size: 15px;
	white-space: nowrap;
	color: #000;
	text-decoration: none !important;
}

.filters .items > *:hover, .filters .items > *.selected {
	background-color: #FF324D;
	color: #fff;
}

.filters + .products {
	padding-top: 0;
}

form.product {
	display: flex;
	gap: 20px;
	padding: 20px 0;
}

form.product .product_details {
	width: 100%;
    background-size: 25% auto;
    background-repeat: no-repeat;
    background-position: right top 40px;
	
	/* background-image: url(/images/december_sale.jpg); */
}

.special-offers {
	
}

form.product .images {
	width: 100%;
	position: relative;
}

form.product .images img {
	width: 100%;
	height: auto;
	transition: all 0.2s ease-in-out;
	vertical-align: top;
	object-fit: contain;
}

form.product .swiper-wrapper {
	height: auto;
}

form.product .images .swiper {
	width: 100%;
	padding-bottom: 30px;
}

form.product .swiper-slide {
	align-items: flex-start;
	width: 100% !important;
}

form.product .swiper-slide a {
	width: 100%;
}

form.product {
	--swiper-pagination-bullet-width: 15px;
	--swiper-pagination-bullet-hight: 15px;
	--swiper-pagination-bullet-size: 15px;
}

form.product h1 {
	font-size: 30px;
	padding-bottom: .5em;
	text-wrap: balance;
}

.product-model, .current-variant, .mobile-colon, .mobile-size-label, .size-chart-trigger {
	display: none;
}

.size-chart-modal {
	width: calc(100% - 20px);
	max-width: 520px;
	max-height: calc(100dvh - 32px);
	margin: auto;
	padding: 10px;
	border: 0;
	border-radius: 12px;
	color: #000;
	background: #fff;
	overflow: auto;
}

.size-chart-modal::backdrop { background: rgba(0, 0, 0, .45); }
html.size-chart-open { overflow: hidden; }
.size-chart-header { display: flex; justify-content: flex-end; }
.size-chart-close { padding: 8px 0 8px 8px; border: 0; background: none; color: #000; font-size: 13px; text-decoration: underline; cursor: pointer; }

form.product .price {
	padding-bottom: 1em;
}

form.product .price big {
	font-weight: bold;
	color: #FF324D;
	display: inline-block;
	margin-right: 5px;
	font-size: 25px;
}

form.product .price del {
	color: #000;
	font-size: 15px;
}

form.product .price .discount {
	color: #388e3c;
	font-size: 15px;
	display: inline-block;
	margin-right: 5px;
}

form.product h2, .size-chart-modal .insoles-table h2 {
	font-size: 15px;
	font-weight: bold;
	color: #000;
	padding-bottom: .5em;
}

.sizes .items {
	display: flex;
	gap: 7px;
}

.sizes .items select {
	height: 36px;
	font-size: 16px;
	padding-left: 5px;
	color: #000 !important;
	border-color: #000 !important;
}

.custom-radio {
	cursor: pointer;
	text-transform: uppercase;
	min-width: 38px;
	padding: 0 3px;
	display: inline-block;
	border: 1px solid #ddd;
	background-color: #eee;
	text-align: center;
	height: 38px;
	line-height: 36px;
	font-size: 14px;
	margin-bottom: 3px;
}

.custom-radio input {
	display: none;
}

.custom-radio.selected {
	background-color: #000;
	border-color: #000;
	color: #fff;
}

.items.shake {
	animation-iteration-count: 1;
	animation: shake-items 0.5s;
}

@keyframes shake-items {
	0% { -webkit-transform: translate(2px, 1px) rotate(0deg); }
	10% { -webkit-transform: translate(-1px, -2px) rotate(-1deg); }
	20% { -webkit-transform: translate(-3px, 0px) rotate(1deg); }
	30% { -webkit-transform: translate(0px, 2px) rotate(0deg); }
	40% { -webkit-transform: translate(1px, -1px) rotate(1deg); }
	50% { -webkit-transform: translate(-1px, 2px) rotate(-1deg); }
	60% { -webkit-transform: translate(-3px, 1px) rotate(0deg); }
	70% { -webkit-transform: translate(2px, 1px) rotate(-1deg); }
	80% { -webkit-transform: translate(-1px, -1px) rotate(1deg); }
	90% { -webkit-transform: translate(2px, 2px) rotate(0deg); }
	100% { -webkit-transform: translate(1px, -2px) rotate(-1deg); }
}

.order-product {
	display: flex;
	gap: 20px;
	padding: 5px 0;
	font-size: 14px;
	align-items: center;
}

.order-product select {
	padding: 3px 10px;
}

.centered {
	text-align: center;
	align-items: center;
}

.button {
	padding: 12px 35px;
	background-color: #000;
	color: #fff;
	border: none;
	border-radius: 10px;
	cursor: pointer;
	font-size: 14px;
	font-weight: bold;
	display: flex;
	gap: 7px;
	align-items: center;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease-in-out;
	white-space: nowrap;
}

.button:hover {
	text-decoration: none;
	transform: scale(1.1);
}

.button.button-auto {
	display: inline-block;
}

.submit, [type="submit"] {
	padding: 12px 30px;
	background-color: #000;
	color: #fff;
	border: none;
	border-radius: 5px;
	cursor: pointer;
	font-size: 14px;
	font-weight: bold;
	display: flex;
	gap: 7px;
	align-items: center;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease-in-out;
	white-space: nowrap;
}

.submit.big, [type="submit"].big {
	padding: 18px 35px;
}

.order-product [type="submit"] {
	
}

.order-product [type="submit"] svg {
	width: 17px;
	height: auto;
}

[type="submit"]:hover {
	color: #fff;
	opacity: 0.9;
}

.add_wishlist {
	display: flex;
	gap: 7px;
	align-items: center;
	color: #000;
	font-size: 12px;
}

.add_wishlist svg {
	width: 25px;
	height: auto;
}

.add_wishlist svg path {
	fill-rule: evenodd;
	clip-rule: evenodd;
}

.add_wishlist:hover {
	color: #FF324D;
	text-decoration: none;
}

.add_wishlist:hover svg {
	transform: scale(1.3);
}

.add_wishlist.selected {
	color: #FF324D;
	fill: #FF324D;
}

.add_wishlist path {
	fill: none;
	stroke: #000;
}

.add_wishlist.selected svg path {
	fill: #FF324D;
	stroke: #FF324D;
	color: #FF324D;
}

.variants {
	display: block;
	padding-top: 0px;
	z-index: 111;
	width: 100%;
}

.variants:after {
	content: '';
	clear: both;
	display: block;
}

.variants > * {
	display: inline-block;
	height: 100px;
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
	transition: all 0.2s ease-in-out;
	max-width: 100px;
}

.variants > .current-variant { display: none; }

.variants > * img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center center;
	vertical-align: top;
}

.variants > *:hover {
	transform: scale(1.5);
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
	z-index: 1;
}

.insoles-table {
	padding: 10px 15px 15px;
	background-color: #eee;
	margin-top: 10px;
}

.insoles-table .insoles {
	display: flex;
	justify-content: space-between;
}

.insoles-table .insole {
	padding: 5px;
	text-align: center;
	font-size: 13px;
	max-width: calc(100%/6);
}

.insoles-table .insole:nth-child(odd) {
	background-color: #fff;
}

.insoles-table .insole div {
	/* invert color */
	border-bottom: 1px solid #000;
	padding: 2px 0;
	margin-bottom: 2px;
}

form.product .details {
	padding: 10px 0;
}

form.product .details label {
	font-weight: bold;
}

hr {
	margin-top: 1rem;
	margin-bottom: 1rem;
	border: 0;
	border-top: 1px solid rgba(0,0,0,.1);
}


.swiper-slide {
	text-align: center;
	font-size: 18px;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
	bottom: calc(0px + var(--swiper-pagination-offset));
}

h2 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
}

.profile h2 { font-size: 17px; }

h3 {
	font-size: 15px;
	font-weight: bold;
}

.deliveryMethod {
	border: 1px solid #ccc;
	clear: both;
}

.deliveryMethod:after {
	content: '';
	clear: both;
	display: block;
}

.deliveryMethod + .deliveryMethod {
	border-top: none;
}

.deliveryMethod .title {
	padding: 5px 0 5px 40px;
	min-height: 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	font-weight: bold;
	position: relative;
	background-color: rgba(0, 0, 0, 0.1);
	margin: 0;
	cursor: pointer;
}

.deliveryMethod .title:hover, .deliveryMethod.selected .title {
	background-color: rgba(0, 0, 0, 0.2);
}

.deliveryMethod .title:before {
	content: '';
	position: absolute;
	left: 12px;
	top: 50%;
	margin-top: -7px;
	width: 14px;
	height: 14px;
	border-radius: 100%;
	border: 1px solid #000;
}

.deliveryMethod.selected .title:before {
	background-color: #000;
	box-shadow: inset 0 0 0 1px #fff;
}

.deliveryMethod .content {
	display: none;
	padding: 20px;
}

.deliveryMethod.selected .content {
	display: block;
}

.deliveryMethod.selected .content:after {
	content: '';
	clear: both;
	display: block;
}

.deliveryMethod input, .deliveryMethod select {
	width: 100%;
    /*height: 34px;*/
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
}

.boxnow-locker-picker {
	margin-top: 12px;
}

.boxnow-locker-picker label {
	display: block;
	margin-bottom: 6px;
}

.boxnow-locker-picker .boxnow-locker-select {
	width: 100%;
}

.boxnow-locker-picker .selectize-control {
	width: 100%;
}

.boxnow-map-widget-button {
	margin-top: 10px;
}

.boxnow-locker-status {
	display: block;
	margin-top: 8px;
}

.boxnow-locker-status[hidden] {
	display: none;
}

.boxnow-locker-status {
	color: #666;
	font-size: 12px;
}

.boxnow-locker-status-error {
	color: #b00020;
}

.boxnow-map-modal[hidden] {
	display: none;
}

.boxnow-map-modal {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	background: rgba(0, 0, 0, .65);
}

.boxnow-map-dialog {
	position: relative;
	width: 100%;
	max-width: 1000px;
	height: calc(100vh - 32px);
	max-height: 720px;
	padding: 45px 10px 10px;
	box-sizing: border-box;
	background: #fff;
	box-shadow: 0 8px 35px rgba(0, 0, 0, .35);
	display: flex;
	flex-direction: column;
}

.boxnow-map-close {
	position: absolute;
	top: 8px;
	right: 12px;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 28px;
	line-height: 32px;
	cursor: pointer;
}

.boxnow-map-container {
	width: 100%;
	height: auto;
	min-height: 0;
	flex: 1;
}

body.boxnow-map-open {
	overflow: hidden;
}

.half {
	float: left;
	width: 50%;
	padding-right: 20px;
}

.half + .half {
	width: calc((100% - 20px) / 2);
	padding: 0;
}

.hasQuantityControls {
	width: 64px;
	display: inline-block;
}


.anyTownHolder {
	float: left;
	width: calc(70% - 10px);
	margin: 0 10px 15px 0;
}

.anyTownPostCodeHolder {
	float: left;
	width: calc(30% - 10px);
	margin: 0 0 15px 0;
}

.addressHolder {
	float: left;
	width: calc(60% - 110px);
	margin: 0 10px 0 0;
}

.addressNumHolder {
	float: left;
	width: 120px;
	margin: 0 10px 0 0;
}

.addressMoreHolder {
	float: left;
	width: calc(40% - 110px);
	margin: 0 0 0 0;
}

/* Compact Speedy home-address fields in checkout. */
.checkout-speedy-address {
	grid-template-columns: minmax(120px, 1fr) minmax(180px, 2fr) repeat(6, minmax(48px, .42fr));
	gap: 10px;
	align-items: start;
}

.deliveryMethod.selected .checkout-speedy-address {
	display: grid;
}

.deliveryMethod.selected .checkout-speedy-address:after {
	display: none;
}

.checkout-speedy-address > div {
	float: none;
	width: auto;
	min-width: 0;
	margin: 0;
}

.checkout-speedy-address input,
.checkout-speedy-address .selectize-control,
.checkout-speedy-address .selectize-input {
	width: 100%;
	box-sizing: border-box;
}

.checkout-speedy-town { grid-column: 1 / 7; grid-row: 1; }
.checkout-speedy-postcode { grid-column: 7 / 9; grid-row: 1; }
.checkout-speedy-complex { grid-column: 1; grid-row: 2; }
.checkout-speedy-street { grid-column: 2; grid-row: 2; }
.checkout-speedy-number { grid-column: 3; grid-row: 2; }
.checkout-speedy-apartment { grid-column: 4; grid-row: 2; }
.checkout-speedy-entrance { grid-column: 5; grid-row: 2; }
.checkout-speedy-block { grid-column: 6; grid-row: 2; }
.checkout-speedy-floor { grid-column: 7 / 9; grid-row: 2; }

.checkout-speedy-note {
	grid-column: 1 / -1;
	grid-row: 3;
}

.selectize-dropdown div {
	padding: 3px 5px;
}

@media (max-width: 767px) {
	.labelOffset .half { width: 100%; padding: 7px 0 7px 0; clear: both; float: none; }
	.anyTownHolder, .anyTownPostCodeHolder, .addressHolder { width: 100%; margin: 0 0 10px 0; clear: both; }
	.addressNumHolder { width: 120px; margin: 0 10px 0 0; }
	.addressMoreHolder { width: calc(100% - 110px); }

	.checkout-speedy-address {
		grid-template-columns: repeat(6, minmax(0, 1fr));
		gap: 10px 8px;
		padding: 12px;
	}

	.checkout-speedy-address .checkout-speedy-town,
	.checkout-speedy-address .checkout-speedy-postcode,
	.checkout-speedy-address .checkout-speedy-complex,
	.checkout-speedy-address .checkout-speedy-street,
	.checkout-speedy-address .checkout-speedy-note {
		grid-column: 1 / -1;
		grid-row: auto;
	}

	.checkout-speedy-address .checkout-speedy-number,
	.checkout-speedy-address .checkout-speedy-apartment,
	.checkout-speedy-address .checkout-speedy-entrance,
	.checkout-speedy-address .checkout-speedy-block,
	.checkout-speedy-address .checkout-speedy-floor {
		grid-column: span 2;
		grid-row: auto;
		width: auto;
		margin: 0;
	}
}

@media (max-width: 420px) {
	.checkout-speedy-address .checkout-speedy-number,
	.checkout-speedy-address .checkout-speedy-apartment,
	.checkout-speedy-address .checkout-speedy-entrance,
	.checkout-speedy-address .checkout-speedy-block,
	.checkout-speedy-address .checkout-speedy-floor {
		grid-column: span 3;
	}
}

.selectionMethod {
	border: 1px solid #ccc;
	clear: both;
}

.selectionMethod:after {
	content: '';
	clear: both;
	display: block;
}

.selectionMethod + .selectionMethod {
	border-top: none;
}

.selectionMethod .title {
	padding: 5px 0 5px 50px;
	min-height: 40px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
	position: relative;
	background-color: rgba(0, 0, 0, 0.1);
	margin: 0;
	cursor: pointer;
	font-weight: bold;
	font-size: 14px;
}

.title .small {
	font-size: 10px;
	font-weight: normal;
	padding-top: 3px;
	opacity: 0.9;
	padding-right: 150px;
}

.selectionMethod .title:hover, .selectionMethod.selected .title {
	background-color: rgba(0, 0, 0, 0.2);
}

.selectionMethod .title:before {
	content: '';
	position: absolute;
	left: 20px;
	top: 50%;
	margin-top: -7px;
	width: 14px;
	height: 14px;
	border-radius: 100%;
	border: 1px solid #000;
}

.selectionMethod.selected .title:before {
	background-color: #000;
	box-shadow: inset 0 0 0 1px #fff;
}

.selectionMethod .content {
	display: none;
	padding: 20px;
}

.selectionMethod.selected .content {
	display: block;
}

.selectionMethod.selected .content:after {
	content: '';
	clear: both;
	display: block;
}

.selectionMethod input, .selectionMethod select {
	width: 100%;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
}

.selectionMethod input[type="radio"] {
	display: none !important;
}

.card h3 {
	margin: -15px -15px 1em -15px;
	background-color: #ccc;
	padding: 7px 15px;
	font-size: 23px;
	font-weight: normal;
}

.card .success + h3 {
	margin-top: 0;
}

main input, .hasCheckbox select {
	display: block;
	width: 100%;
	font-weight: 400;
	line-height: 1.5;
	color: #000;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #ced4da;
	border-radius: 0.25rem;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	height: 32px;
	padding: 6px 12px;
	font-size: 14px;
}

.hasCheckbox select { width: auto; }

main textarea {
	display: block;
	width: 100%;
	font-weight: 400;
	line-height: 1.5;
	color: #000;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #ced4da;
	border-radius: 0.25rem;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	min-height: 150px;
	padding: 6px 12px;
	font-size: 14px;
}

.row {
	clear: both;
	padding-bottom: 1em;
}

.row:after {
	content: '';
	clear: both;
	display: block;
}

.row.columns:after {
	display: none;
}

.totals_table {
	float: right;
	background-color: #ddd;
}

.totals_table .row {
	display: flex;
	gap: 20px;
	justify-content: space-between;
	padding: 10px;
}

.totals_table .row:after {
	display: none !important;
}

.totals_table .row .cell {
}

.totals_table .msg {
	text-align: right;
	width: 100%;
}

.button.applyCoupon {
	padding: 0;
	display: block;
	width: 100%;
	background-color: #ccc;
	color: #000;
	height: 30px;
	line-height: 30px;
	text-align: center;
	font-weight: bold;
	font-size: 13px;
	cursor: pointer;
	border-radius: 0;
}

.hasCouponFields .fields {
	display: grid;
	grid-template-columns: 3fr 2fr;
}

.hasCouponFields input {
	border-radius: 0;
	height: 30px;
}

span.red, small.red {
	color: #FF324D;
}

.orderReceived {
	text-align: center;
	padding: 50px 0;
}

.orderReceived h3 {
	padding-top: 15px;
}

.orderReceived table {
	width: 500px;
	max-width: 100%;
	display: block;
	margin: 0 auto;
}

.orderReceived table td {
	width: 50%;
	padding: 10px;
	text-align: center;
	vertical-align: top;
	color: #000;
	line-height: 24px;
}

.orderReceived table img {
	width: 130px;
	max-width: 100%;
}

div.success {
	margin: 1em 0;
	border: 1px solid green;
	color: green;
	padding: 15px;
	font-weight: bold;
}

.success a, .errors a {
	text-decoration: underline;
}

.orderReceived h1 {
	font-size: 40px;
	color: #292b2c;
}

.orderReceived h2 {
	color: #292b2c;
	font-size: 32px
}

.orderReceived h3 {
	font-size: 28px;
	color: #292b2c;
}

.page {
	padding-top: 50px;
	padding-bottom: 50px;
}

.column {
	width: 100%;
}

.card {
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 15px;
}

.card .heading {
	background-color: #eee;
	padding: 10px;
	margin: -15px -15px 15px -15px;
}

.mobile-nav-trigger {
	display: none;
}

.mobile-nav-trigger span {
	display: block;
	width: 100%;
	height: 4.5px;
	background-color: #000;
	border-radius: 2px;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.2s;
}

.mobile-nav-trigger span.line1 {
	transform: translateY(-11px);
}

.mobile-nav-trigger span.line2 {
	transform: translateY(6.5px);
}

.openedNav .mobile-nav-trigger span {
	height: 0;
}

.openedNav .mobile-nav-trigger span.line1 {
	transform: translateY(-50%) rotate(45deg);
	height: 4.5px;
}

.openedNav .mobile-nav-trigger span.line3 {
	transform: translateY(-50%) rotate(-45deg);
	height: 4.5px;
}

.hasCouponFields {
	display: grid !important;
	grid-template-columns: 3fr 2fr !important;
	gap: 3px !important;
}

input[name="coupon"] {
    width: 100%;
    height: 30px;
    border: 1px solid #ccc;
    padding: 0 10px;
    line-height: 28px;
}

.applyCoupon {
	display: block;
	width: 100%;
	background-color: #000;
	color: #fff;
	height: 30px;
	line-height: 30px;
	text-align: center;
	font-weight: bold;
	font-size: 13px;
	cursor: pointer;
	border-radius: 15px;
}

span.red, del.red {
	color: #FF324D !important;
}

span.green, del.green {
	color: #090 !important;
}

.discount.green {
	background-color: #090 !important;
	color: #fff !important;
}

.hasPhoneInput {
	display: flex;
}

.hasCards {
	display: grid;
	gap: 30px;
	grid-template-columns: 2fr 1fr;
	margin-top: 2em;
}

.contactform .line, .profile .line, .login .line, .register .line {
	clear: both;
	padding-bottom: 1em;
}

.line label {
	display: block;
	font-weight: bold;
	font-size: 13px;
	padding-bottom: 3px;
}

.contactform .line label, .login .line label, .register .line label {
	display: block;
	font-weight: bold;
	font-size: 13px;
	padding-bottom: 7px;
}

.required.line label:after {
	content: '*';
	color: #FF324D;
	margin-left: 4px;
	font-size: 24px;
    line-height: 14px;
}

.banners {
	display: grid;
	grid-template-columns: auto 700px;
	height: 700px;
	gap: 15px;
}

.big-banners {
	width: 100%;
	--swiper-pagination-bullet-width: 25px;
	--swiper-pagination-bullet-hight: 25px;
	--swiper-pagination-bullet-size: 25px;
	--swiper-pagination-offset: 15px;
}

.big-banners .swiper-slide {
	background-position: bottom right;
	background-size: cover;
}

.big-banners .banner-content {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: 35px;
	overflow: hidden;
}

.big-banners h5 {
	font-weight: 300;
	font-size: 1.25rem;
	margin-bottom: 1rem;
	text-shadow: 0 0 2px rgba(255, 255, 255, 0.6);
	/*animation: slidein 0.3s normal forwards ease-in-out;
	animation-delay: 0.1s;
	transform: translateX(calc(-100% - 50px));*/
}

.big-banners h2 {
	font-size: 45px;
	margin-bottom: 10px;
	font-weight: 600;
	text-shadow: 0 0 2px rgba(255, 255, 255, 0.6);
	/*animation: slidein 0.3s normal forwards ease-in-out;
	animation-delay: 0.4s;
	transform: translateX(calc(-100% - 50px));*/
}

.big-banners .button, .small-banners .button {
	background-color: #000;
	/*animation: slidein 0.3s normal forwards ease-in-out;
	animation-delay: 0.8s;
	transform: translateX(calc(-100% - 50px));*/
}

.small-banners .button {
	transform: none;
	animation: none;
	transition-duration: 0s !important;
}

.small-banners .button {
	background-color: #FEEcc8;
	color: #000 !important;
}

.small-banners .banner:hover .button {
	color: #fff !important;
}

@keyframes slidein {
	0% {  }
	100% { transform: translateX(0); }
}

.small-banners {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 20px;
	padding: 30px 0 0 0;
}

.small-banners a {
	width: 100%;
	display: block;
	position: relative;
	overflow: hidden;
}

.small-banners a img {
	width: 100%;
	aspect-ratio: 1/1;
	vertical-align: top;
}

.small-banners .banner_content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.small-banners h2 {
	text-transform: uppercase;
	font-size: 45px;
	margin-bottom: 10px;
	font-weight: 600;
	text-shadow: -2px -2px 1px rgb(0 0 0 / 50%);
}

.small-banners h5 {
	font-size: 17px;
	font-weight: bold !important;
	opacity: 0.9;
	display: inline-block;
	padding: 3px 10px;
	border: 1px solid #fff;
	transition: all 0.9s ease 0s;
}

.small-banners a:hover h5 {
	background-color: rgb(0 0 0 / 50%);
}

.small-banners a::before, .small-banners a::after {
	background-color: rgba(255, 255, 255, 0.6);
	content: "";
	height: 100%;
	left: 0;
	opacity: 1;
	position: absolute;
	top: 0;
	transition: all 0.9s ease 0s;
	width: 100%;
	z-index: 1;
}

.small-banners a::before {
	border-top: 1px solid rgba(255, 255, 255, 0.4);
	-moz-transform: translate(105%, 0%);
	-webkit-transform: translate(105%, 0%);
	transform: translate(105%, 0%);
}

.small-banners a::after {
	border-bottom: 1px solid rgba(255, 255, 255, 0.4);
	-moz-transform: translate(-105%, 0%);
	-webkit-transform: translate(-105%, 0%);
	transform: translate(-105%, 0%);
}

.small-banners a:hover:before, .small-banners a:hover:after {
	opacity: 0;
	-moz-transform: translate(0px, 0px);
	-webkit-transform: translate(0px, 0px);
	transform: translate(0px, 0px);
}

.home-filters.filters {
	padding: 20px 0;
	display: block;
}

.home-filters.filters .title {
	font-size: 18px;
	font-weight: bold;
	padding-bottom: 0.5em;
}

.home-filters.filters .items {
	gap: 10px;
	margin-bottom: 2em;
}

.home-filters.filters .items a {
	width: 39px;
	height: 39px;
}

.sidebarfilters {
	display: grid;
	grid-template-columns: 220px auto;
	gap: 20px;
	align-items: flex-start;
}

.sidebarfilters .filters .group {
	flex-direction: column;
	display: flex;
	gap: 15px;
	justify-content: flex-start;
	align-items: flex-start;
	padding-bottom: 30px;
}

.sidebarfilters .products {
	padding-top: 30px;
	gap: 15px 9px;
	grid-template-columns: repeat(4, minmax(216px, 1fr));
}

.sidebarfilters .filters .items > * {
	width: 36px;
	height: 36px;
}

.filters-close-trigger {
	display: none;
}

.images .swiper-horizontal>.swiper-pagination-bullets { 
	bottom: 0;
}

.small-banners h5.button { border: none; padding: 8px 10px; text-transform: uppercase; font-size: 16px; }
.small-banners h5.button:hover { color: #fff; }

.title.cardsAccepted {
	background-image: url(images/payment-cards.png); 
	background-position: right 5px center;
	background-repeat: no-repeat;
	background-size: auto 30px;
}

.title.cashAccepted {
	background-image: url(images/cash.svg); 
	background-position: right 5px center;
	background-repeat: no-repeat;
	background-size: auto 30px;
}

.newsletter, .wrapper.newsletter {
	background-color: #555;
	padding: 30px;
	color: #fff;
	margin-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.wrapper.newsletter {
	width: 100%;
	max-width: 100%;
}

.newsletter h3 {
	font-size: 30px;
}

.newsletter .line {
	display: grid;
	gap: 10px;
	grid-template-columns: auto 150px;
	max-width: 550px;
}

.newsletter input[type="submit"] {
	padding: 10px 5px;
	text-align: center;
	justify-content: center;
}

.newsletter .success {
	color: #46d95f;
	border-color: #46d95f;
	font-size: 16px;
}

div.error {
	border: 1px solid #f00;
	color: #f00;
	padding: 15px;
	margin: 0.2em 0 1em 0;
}

.btn.btn-smaller {
	padding: 10px 10px;
}

main input[type="checkbox"], main input[type="radio"] {
    width: 32px;
}

.forinvoice, .foraccount {
	display: none;
}

.line.yellow {
	background-color: #f8fabe;
	outline: 1px solid #dee096;
	padding-top: 10px;
	margin-bottom: 20px;
}

form .line.yellow label {
	padding-top: 11px;
	padding-left: 5px;
}

.big-banners .swiper-slide {
	
}

.big-banners .swiper-slide img.bg {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center bottom;
}

.profile {
	display: grid;
	grid-template-columns: 1fr;
	padding-top: 30px;
	gap: 50px;
	max-width: 600px;
	margin: 0 auto;
}

.profile .line label {
	display: block;
	padding-bottom: 5px;
	font-size: 14px;
}

.userorders {
	border-collapse: collapse;
	border-spacing: 5px;
	width: 100%;
}

.userorders th {
	background-color: #666;
	color: #fff;
	text-align: center;
}

.userorders th, .userorders td {
	padding: 10px;
}

.userorders tr:nth-child(even) td {
	background-color: #ccc;
}

.valign {
	display: flex;
	align-items: center;
}

.profile table .price {
	padding-top: 7px;
	text-align: right;
	font-weight: bold;
}

form.login {
	max-width: 350px;
	margin: 30px auto;
}

.user-orders {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.user-order-preview {
	display: flex;
	gap: 10px;
}

.user-order-items {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 2px;
}

.errors {
	border: 1px solid red;
	color: red;
	padding: 10px;
	font-weight: bold;
	margin-bottom: 1em;
}

.success {
	border: 1px solid #237839;
	color: #237839;
	padding: 10px;
	font-weight: bold;
	margin-bottom: 1em;
}

.ask_for_login {
	position: absolute;
	top: -25px;
	left: 15px;
	color: #666;
}

.justified {
	display: flex;
	justify-content: space-between;
}

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

.align-right {
	display: flex;
	justify-content: flex-end;
}

.w-50 { width: 50%; }
.w-100 { width: 100%; }
.fs-1 { font-size: 0.7rem; }
.fs-2 { font-size: 0.8rem; }
.fs-3 { font-size: 0.9rem; }
.fs-4 { font-size: 1rem; }

ul.social {
	display: flex;
	list-item: none;
	gap: 10px;
}

.products-preview, .swiper.products-preview {
	width: 100%;
	padding: 10px 0 30px 0;
}

table.tracking {
	border-collapse: collapse;
	border-spacing: 5px;
	width: 100%;
	border: 1px solid #ddd;
	font-size: 14px;
}

table.tracking th {
	background-color: #666;
	color: #fff;
	text-align: center;
}

table.tracking th, table.tracking td {
	padding: 10px;
}

table.tracking tr:nth-child(even) td {
	background-color: #ddd;
}

#error-message {
	margin: 1em auto;
	border: 1px solid red;
	color: red;
}

body .hidden {
	display: none !important;
}

.alert {
	text-align: center;
	font-size: 16px;
	padding: 1em;
	color: red;
	font-weight: bold;
	background-color: yellow;
	border: 1px solid red;
	margin-bottom: 0.5rem;
}

.displayOnMobile { display: none !important; }

.title.logo-econt {
	background-image: url(images/logo-econt.png);
	background-position: right 20px center;
	background-repeat: no-repeat;
	background-size: auto 50%;
}

.title.logo-speedy {
	background-image: url(images/logo-speedy.png);
	background-position: right 20px center;
	background-repeat: no-repeat;
	background-size: auto 80%;
}

.title.logo-boxnow {
	background-image: url(images/boxnow-logo.svg);
	background-position: right 20px center;
	background-repeat: no-repeat;
	background-size: auto 70%;
}

.products .newsletter {
	grid-column: 5 / -5;
	margin-top: 0;
	background-color: #999;
}

.products .newsletter input[type="submit"] {
	line-height: 12px;
}

.page-article h1 {
	text-wrap: balance;
}

.page-article .breadcrumbs div {
	white-space: nowrap;
}

.articles {
	display: flex;
	flex-direction: column;
	gap: 30px;
	padding: 50px 0;
}

.article-preview {
	display: grid;
	grid-template-columns: 200px auto;
	gap: 20px;
	min-height: 150px;
	line-height: 23px;
}

.previews .article-preview {
	display: flex;
	flex-direction: column;
}

.article-preview img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	overflow: hidden;
	aspect-ratio: 5 / 3;
}

.article-preview h2 {
	font-size: 20px;
}

.articles .meta {
	margin: -20px 0 10px 0;
	font-size: 13px;
	color: #999;
}

.articles .preview-content .meta {
	margin-top: -13px;
}

.blog-wrapper {
	display: grid;
	grid-template-columns: auto 350px;
	gap: 30px;
}

.blog-wrapper.previews {
	grid-template-columns: auto;
}

.blog-wrapper.previews .articles {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}

.articles .banner {
	width: 100%;
}

.sidebar {
	padding: 50px 0;
	text-align: right;
	position: relative;
}

.sidebar .sidebar-content {
	position: sticky;
	top: 30px;
}

.sidebar h4 {
	font-size: 20px;
	padding: 0 0 15px 0;
	font-weight: bold;
}

.sidebar ul {
	list-style: none;
}

.sidebar ul li {
	padding-bottom: 21px;
	position: relative;
}

.sidebar ul li + li:before {
	content: '';
	display: block;
	position: absolute;
	top: -11px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #ddd;
}

.sidebar ul li a {
	display: grid;
	grid-template-columns: 120px auto;
	gap: 10px;
	font-size: 12px;
	line-height: 15px;
	text-wrap: balance;
	padding-bottom: 15px;
}

.sidebar ul li a img {
	margin-bottom: -15px;
}

.sidebar ul li time {
	margin-top: -15px;
}

.sidebar .meta {
	font-size: 11px;
	color: #999;
	display: block;
}

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

.quick_desc {
	background-color: #eee;
	padding: 15px;
	border-radius: 10px;
	margin: 10px 0;
	color: #000;
	line-height: 27px;
}

.empty {
	grid-column: 1 / -1;
}

.blog-previews {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 10px;
}
.blog-previews h3 { grid-column: 1 / -1; }
.blog-preview a { width: 100%; display: inline-block; text-wrap: balance; text-decoration: none !important; }
.blog-preview .thumb { width: 100%; display: inline-block; aspect-ratio: 2/1; overflow: hidden; margin-bottom: 5px; } 
.blog-preview img { width: 100%; height: 100%; object-fit: cover; object-position: center center; transition: all 0.3s; }
.blog-preview:hover img { transform: scale(1.1); object-fit: center bottom; }
.blog-preview time { font-size: 11px; }

.capitalize { text-transform: lowercase; }
.capitalize::first-letter { text-transform: uppercase; }

div.important {
	padding: 10px 10px 10px 80px;
	position: relative;
	border: 1px solid #ccc;
	background-color: #ffffc7;
	font-size: 14px;
	line-height: 19px;
}

div.important svg {
	width: 60px;
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
}

div.important a {
	text-decoration: underline;
}

.form-buttons {
	display: flex;
	flex-direction: column;
	gap: 15px;
	justify-content: flex-end;
	text-align: right;
	padding-top: 10px;
}

.catdesc {
	font-size: 13px !important;
	line-height: 16px !important;
	max-width: 800px;
	overflow: hidden;
	max-height: 76px;
	transition: max-height .5s;
	grid-column: span 2;
	position: relative;
}

.catdesc:before {
	content: 'Покажи още...';
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 111;
	cursor: pointer;
}

.catdesc:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	top: 0;
	height: 100;
	background-image: linear-gradient(to bottom, transparent 0%, white 70%);
	z-index: 100;
}

.catdesc.opened {
    max-height: 5000px;
}

.catdesc.opened:before, .catdesc.opened:after { display: none; }

.catdesc ul {
	list-style-position: outside;
	margin-left: 16px;
}

.catdesc li {
	padding-bottom: 5px;
}

.catdesc * {
    font-size: 13px !important;
    line-height: 16px !important;
}

.about {
	margin-top: 30px;
	padding: 1rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
	align-items: flex-start;
	font-size: 15px;
	line-height: 21px;
}

.about h1 { padding: 0 0 1rem 0 !important; margin: 0 !important; }
.about h2 { font-size: 21px; font-weight: bold; }
.about ul { list-style-position: outside; margin-left: 19px; list-style-type: square; }
.about li { padding-bottom: 5px; }

.cart_reviews_table, .cart_reviews_table table { width: 592px; max-width: 100% !important; }


.deliveryinfo {
	margin: 0 0 15px 0;
	clear: both;
}
.deliveryinfo ul {
	margin-left: 0;
	padding-left: 0;
}
.deliveryinfo li {
	font-size: 13px;
	color: #292B2C;
	padding-bottom: 10px;
	list-style: none;
	padding-left: 22px;
	position: relative;
	font-style: italic;
}
.deliveryinfo li:before {
	content: '-';
	color: #FF324D;
	position: absolute;
	font-weight: bold;
	font-size: 22px;
	left: 4px;
	top: -7px;
}

.estimated-delivery {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 15px;
	margin: 5px 0;
	font-size: 13px;
	color: #292B2C;
}

.estimated-delivery__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 30px;
	color: #111;
	flex: 0 0 84px;
}

.estimated-delivery__icon img {
	height: 30px;
	width: 100%;
	object-fit: contain;
}

.estimated-delivery strong {
	font-weight: 700;
}

.ordercomplete {
	background-color: #e4fccc;
	padding: 20px 20px 20px 50px;
	font-size: 16px;
	color: #000;
	text-align: left;
	line-height: 20px;
	margin-bottom: 20px;
	position: relative;
}

.ordercomplete:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background-image: url(/images/icon-checked.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
	position: absolute;
	top: 21px;
	left: 20px;
}

.orderinfo {
	background-color: #adcede;
	padding: 20px 20px 20px 50px;
	font-size: 16px;
	color: #000;
	text-align: left;
	line-height: 20px;
	margin-bottom: 20px;
	position: relative;
}

.orderinfo:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 21px;
	left: 20px;
	vertical-align: middle;
	width: 20px;
	height: 20px;
	background-image: url(/images/icon-info.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}

.alert.quickorder {
	background-color: #fbe1e1;
	border: none;
	font-size: 15px;
}

.alert.quickorder.green {
	background-color: #d0ffeb85; 
	color: #000;
}

.alert.quickorder a {
	color: #000;
	font-weight: bold;
}

.cell_cart_delivery.loading, .cell_cart_total.loading {
	animation: pulse 1.5s infinite;
}

@keyframes pulse {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.5;
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

form.v3, .v3 form {
	border: none;
	padding: 0;
	color: #666;
}

.v3 input, .v3 textarea {
	border-radius: 0;
	color: #666;
	border-color: #666;
}

.v3 h2 {
	text-align: left;
	padding-bottom: 20px;
	text-transform: uppercase;
}

.v3 .line {
	position: relative;
	padding-bottom: 30px;
}

.v3 .line.narrow {
	padding-bottom: 15px;
}

.v3 label {
	display: inline-block;
	position: absolute;
	top: -7px;
	left: 8px;
	padding: 0px 5px !important;
	background-color: #fff;
	font-size: 10px !important;
}

.radio-item {
	display: inline-block;
	padding-right: 20px;
	font-size: 12px;
	cursor: pointer;
}

.radio-item input {
	display: none !important;
}

.radio-item:before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	background-color: #fff;
	border: 1px solid #ccc;
	margin: -2px 7px 0 0;
	vertical-align: middle;
}

.radio-item.checked:before {
	background-color: #000;
	box-shadow: inset 0 0 0 2px #fff;
}

.v3 input[type="radio"] {
	border-radius: 0;
	width: 16px;
	height: 16px;
	padding: 0;
	display: inline-block;
	margin: -2px 5px 0 0;
	vertical-align: middle;
}

form.v2 {
	border: none;
}

.v2 .hideOnV2 { display: none !important; }

form.v2 .line {
	margin-bottom: 0.5rem;
	position: relative;
}

form.v2 h2 {
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 1rem;
}

form.v2 input {
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #000;
	padding-left: 5px;
}

form.v2 ::placeholder {
	opacity: 1 !important;
	text-transform: uppercase !important;
}

form.v2 button {
	width: 100%;
	border-radius: 0;
	text-transform: uppercase;
	justify-content: center;
}

.v2 .togglePassword {
	position: absolute;
	cursor: pointer;
	width: 20px;
	height: 20px;
	right: 10px;
	bottom: calc(1rem + 6px);
	background-image: url(/images/icon-visible.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.v2 .togglePassword.toggled {
	background-image: url(/images/icon-not-visible.svg);
}

.or {
	text-align: center;
	padding: 10px;
	position: relative;
	margin-bottom: 10px;
}

.or > * {
	background-color: #fff;
	padding: 0 10px;
	position: relative;
	display: inline-block;
	z-index: 10;
	text-transform: uppercase;
}

.or:after {
	content: "";
	display: block;
	height: 1px;
	width: 30%;
	background-color: #999;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
}

.subnav {
	background-color: #000;
	padding: 5px 0;
	color: #fff;
	font-size: 11px;
	text-transform: uppercase;
}

.subnav ul {
	display: flex;
}

.subnav li {
	list-style: none;
	padding: 5px 10px;
}

.subnav li a img {
	margin: -3px 0;
	vertical-align: middle;
}

.subnav li + li {
	border-left: 1px solid #ccc;
}

.subnav li.selected a, .subnav li a:hover {
	text-decoration: underline;
}

.order-products-preview {
	display: grid;
	grid-template-columns: 100px auto;
	align-items: start;
	gap: 10px;
}

.user-order-preview-v2 {
	margin: 15px 0 0 0;
	border: 1px solid #ccc;
	padding: 10px 15px;
	line-height: 30px;
}

.user-order-preview-v2 h5 {
	margin: 0;
	padding-bottom: 10px;
	font-size: 24px;
}

.user-order-preview-v2 a:not(.more a) {
	text-decoration: underline;
}

.user-order-preview-v2 .more {
	padding-top: 10px;
}

h3.grayed {
	clear: both;
	margin: 30px 0 10px 0;
	background-color: #ddd;
	padding: 3px 10px;
	color: #000;
}

ul.navlist {
	list-style: none;
}

ul.navlist li {
	display: block;
	border-bottom: 1px solid #ddd;
}

ul.navlist li a {
	display: flex;
	justify-content: space-between;
	padding: 10px 10px;
	text-transform: uppercase;
	color: #666;
	font-size: 14px;
}

ul.navlist li a:hover {
	background-color: #eee;
	text-decoration: none;
}

ul.navlist li a:after {
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	transform: rotate(45deg);
}

.profilegenderfilter {
	position: relative;
	overflow: hidden;
	border-top: 1px solid #fff;
}

.profilegenderfilter .filters {
	background-color: #000;
	height: 140px;
	position: relative;
}

.profilegenderfilter .filters > * {
	width: 115px;
	height: 150px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-position: center bottom;
	background-size: cover;
	transition: all 0.3s;
	cursor: pointer;
}

.profilegenderfilter .filters > .active { top: 20px; }
.profilegenderfilter .filters > .prev { transform: translateX(calc(-50% - 135px)); }
.profilegenderfilter .filters > .next { transform: translateX(calc(-50% + 135px)); }

.profilegenderfilter .labels {
	text-align: center;
	text-transform: uppercase;
	display: flex;
	gap: 25px;
	align-items: flex-start;
	justify-content: center;
	padding-top: 40px;
	font-size: 13px;
}

.profilegenderfilter .labels div { text-decoration: none; cursor: pointer; }
.profilegenderfilter .labels div:hover, .profilegenderfilter .labels div.active { border-bottom: 1px solid #000; }

table.return-available {
	border-spacing: 0;
	width: 100%;
	max-width: 600px;
}

table.return-available th {
	font-weight: bold;
	text-align: left;
}

table.return-available th, table.return-available td {
	padding: 5px 10px 5px 0;
}

ol.returns-steps li {
	list-style: none;
	counter-increment: item;
	background-color: #ddd;
	padding: 5px 5px 5px 25px;
	margin-bottom: 5px;
	font-size: 16px;
	position: relative;
}

ol.returns-steps li::before {
	content: counter(item) ".";
	position: absolute;
	top: 2px;
	left: 5px;
	font-weight: bold;
	font-size: 20px;
}

.hasCheckbox {
	display: grid;
	grid-template-columns: 120px auto;
	gap: 20px;
}

.hasCheckboxInput {
	background-color: #ddd;
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
}

main .profile input[type="select"] { height: auto; }

.buttons {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	justify-content: space-between;
	margin: 10px auto 30px auto;
	max-width: 400px;
	text-align: center;
}

.buttons .button {
	text-align: center;
	border-radius: 3px;
	border: 1px solid #000;
	justify-content: center;
}

.bg-white { background-color: #fff; color: #000; }

.deleteaccount {
	border: 1px solid #f00;
	border-radius: 10px;
	padding: 25px;
}

.deleteaccount .button {
	width: max-content;
	background-color: #f00;
}

.bottomnavbar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	background-color: #fff;
	z-index: 10000;
	padding: 5px 15px 35px 15px;
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);
}

.bottomnavbar:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 30px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.5));
}

.bottomnavbar ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 10px;
}

.bottomnavbar li {
	list-style: none;
	color: #000;
	font-size: 11px;
}

.bottomnavbar li a {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	gap: 5px;
	height: 45px;
	width: 100%;
	position: relative;
}

.bottomnavbar li .thumb {
	display: block;
	width: 35px;
	height: 30px;
	overflow: hidden;
}

.bottomnavbar li img, .bottomnavbar li svg {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center bottom;
}

body.page-base {
	padding-top: 0;
	padding-bottom: 60px;
}
body.appmode main { padding-bottom: 50px; }
body.page-base main { padding-top: 0 !important; }
body.page-base.page-home main { padding-top: 50px !important; }
body.page-base .navigation { border: none; }
body.page-base header .navigation .menu { display: none; }
body.page-base header .navigation .categories .toggle { display: none; }
body.page-base.openedNav .menus, body.page-base .sidebarfilters .filters { top: 0; height: calc(100vh - 55px); }

.app-backbar {
	position: sticky;
	top: 0;
	z-index: 9000;
	height: 40px;
	display: flex;
	align-items: center;
	background-color: #fff;
	border-bottom: 1px solid #eee;
}

.app-backbar-button {
	display: flex;
	align-items: center;
	gap: 4px;
	height: 100%;
	padding: 0 12px;
	color: #000;
	font-size: 14px;
	text-decoration: none;
}

.app-backbar-button svg {
	flex: 0 0 auto;
}




.selectize-control.loading .selectize-input:before {
    display: none;
}

.selectize-control.loading .selectize-input {
    padding-right: initial;
}

.selectize-control.loading .selectize-dropdown-content {
    position: relative;
    min-height: 60px;
    background: white;
}

.selectize-control.loading .selectize-dropdown-content > * {
    display: none !important;
}

.selectize-control.loading .selectize-dropdown-content:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 24px;
    height: 24px;
    border: 3px solid #f3f3f3;
    border-top: 3px solid #3498db;
    border-radius: 50%;
    animation: selectize-spin 1s linear infinite;
    z-index: 1000;
    display: block !important;
}

.selectize-control.loading .selectize-dropdown-content:after {
    content: 'зареждане...';
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #666;
    font-size: 14px;
    z-index: 1000;
    display: block !important;
}

@keyframes selectize-spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

.cell_cart_delivery { position: relative; padding-bottom: 5px; }
.cell_cart_delivery:before {
	content: "(ориентировъчна цена)";
	position: absolute;
	bottom: 0;
	left: auto;
	right: 0;
	width: min-content;
	font-size: 9px;
	transform: translateY(50%);
	white-space: nowrap;
	text-align: right;
}

.label_estimated_delivery {
	padding-top: 25px;
	clear: both;
	font-weight: bold;
}

.label_estimated_delivery:empty:before {
	content: "Доставката се изчислява след избиране на град/офис";
}

.required .hideOnRequired, .showOnRequired {
	display: none !important;
}

.required .showOnRequired {
	display: block !important;
}

@media (min-width: 1071px) {
	.hideOnDesktop { display: none !important; }
	.page-home h1 { font-size: 27px; padding: 30px 0 0 0; margin-bottom: -20px; }

	header .navigation .categories > ul { width: auto; }
	header .navigation .categories > ul > li { white-space: nowrap; }
	header .navigation .categories > ul > li:nth-child(1) { grid-column: 1; grid-row: 1 / 7; }
	header .navigation .categories > ul > li:nth-child(2) { grid-column: 2; grid-row: 1 / 7; }
	header .navigation .categories > ul > li:nth-child(3) { grid-column: 3; grid-row: 1; }
	header .navigation .categories > ul > li:nth-child(4) { grid-column: 3; grid-row: 2; }
	header .navigation .categories > ul > li:nth-child(5) { grid-column: 3; grid-row: 3; margin-top: 20px; }
	header .navigation .categories > ul > li:nth-child(6) { grid-column: 3; grid-row: 4; }
	header .navigation .categories > ul > li:nth-child(7) { grid-column: 3; grid-row: 5; }
	header .navigation .categories > ul > li:nth-child(8) { grid-column: 3; grid-row: 6; }
	header .navigation .categories > ul > li:nth-child(9) { grid-column: 3; grid-row: 7; }
	header .navigation .categories:hover > ul, header .navigation .categories.opened > ul { display: grid; column-gap: 40px; grid-template-columns: 1fr 1fr 1fr; grid-auto-rows: min-content; }
	header .navigation .categories sup { margin-left: 6px; }
}

@media (max-width: 1070px) {
	header .search { display: none; }
	.topbar { display: none; }
	.topbar.floating { display: block; height: 25px; line-height: 25px; padding: 0; font-size: 13px; font-weight: bold; }
	header .topbar.floating a:after { bottom: 2px; }
	header .navigation .categories > ul { padding-top: 0 !important; }

	.hideOnDesktop, header .navigation .categories ul li.hideOnDesktop, header .navigation .categories ul ul.hideOnDesktop { display: block; }
	.hideOnMobile { display: none !important; }
	.displayOnMobile { display: block !important; }
	body { padding-top: 36px; }
	body.hasFloatingTop { padding-top: 72px; }
	body.filters-opened, body.openedNav { overflow: hidden; height: 100vh; }
	body.filters-opened main, body.openedNav main { overflow: hidden; max-height: 100vh; }
	.wrapper { padding: 0 10px; }
	header { position: fixed; top: 0; left: 0; width: 100%; z-index: 9003; }
	header .callus { position: absolute; display: none; }
	header .logo { position: absolute; top: 1px; left: 0; background: url(/images/logo-black-mobile.webp) no-repeat left center; background-size: 100% auto; height: 36px; width: 100px; }
	header .logo img { display: none; }
	header .content { padding: 0; z-index: 100; position: relative; }
	header .navigation { z-index: 50; padding-left: 100px; background-color: #fff; border-bottom: 1px solid #000; }
	header .navigation .wrapper { display: flex; justify-content: space-between; align-items: flex-end; }
	header .navigation .menus { display: flex; font-weight: 700; }
	header .navigation .menus .hasSubmenus ul { display: none; padding-bottom: 0; }
	header .navigation .menus .hasSubmenus > a { padding: 10px 15px; background-color: #000; position: relative; color: #fff; }
	header .navigation .menus .blacked > a { padding: 10px 15px; background-color: #000; position: relative; color: #fff; }
	header .navigation .menus .hasSubmenus > a:after { content: ''; position: absolute; right: 10px; top: 12px; transition: all 0.2s; border: solid #fff; border-width: 0 3px 3px 0; display: inline-block; padding: 3px; transform: rotate(-45deg); }
	header .navigation .menus .hasSubmenus ul a { text-transform: capitalize; padding-left: 15px; }
	header .navigation .menus .hasSubmenus.opened > a:after { transform: rotate(45deg); }
	header .navigation .menus .lastItems { margin-top: 7px; margin-bottom: 5px; border: none; }
	header .navigation .menus .lastItems sup { top: -8px; left: 4px; }
	header .navigation .side a svg { height: 22px; color: #000; }
	header sup { top: 2px; }
	.mobile-nav-trigger { display: block; width: 36px; height: 36px; position: relative; }
	header .navigation .menus { transform: translateX(120%); transition: transform 0.3s, opacity 0s; opacity: 0; gap: 40px; box-shadow: -2px 0 10px rgba(0, 0, 0, 0.2); position: fixed; top: 0; right: 0; width: 70vw; height: calc(100vh - 0px); overflow: hidden; background: #fff; z-index: 9999; flex-direction: column; }
	body.openedNav .menus { transform: translateX(0); flex-direction: column-reverse; padding-top: 0; justify-content: flex-end; opacity: 1; }
	header .navigation .menu ul { flex-direction: column; }
	header .navigation .categories { overflow: auto; }
	header .navigation .categories .toggle { display: none; }
	header .navigation .categories ul { display: block; position: static; padding-bottom: 0; }
	header .navigation .menu a { color: #000; line-height: 20px; }
	header .navigation .menu { padding: 0 15px; }
	header .menu sup { top: -7px; }

	body .products { padding: 25px 0; display: flex; gap: 4px; flex-wrap: wrap; margin: 0 -6px; }
	body .products > * { width: calc(50% - 2px); margin-bottom: 5px; }
	.icon-boxes, .columns { flex-direction: column; }
	.layer { z-index: 5000; background-color: rgba(0, 0, 0, 0.5); position: fixed; top: 0; left: 0; width: 100%; height: 100%; }
	.breadcrumbs { padding: 10px 0 ; }
	.breadcrumbs .wrapper .links { display: none; }
	.filters { flex-direction: column; gap: 10px; }
	.filters .items { gap: 0; width: 100%; justify-content: space-between; }
	.filters .items > * { width: 30px; height: 30px; line-height: 30px; }
	.icon-boxes { gap: 25px; }
	.bottombar { flex-direction: column; gap: 15px; }

	.orderReceived table td { display: block; width: 100%; }
	.orderReceived h2 { font-size: 23px; }
	.orderReceived h1 { font-size: 20px; padding-bottom: 4px; }
	.orderReceived h3 { font-size: 22px; }
	.orderReceived table img { width: 50px; }
	.page.wrapper { padding: 25px 10px; }
	.card h3 { font-size: 19px; }
	.title.cardsAccepted { background-image: url(images/payment-cards-mobile.png); }
	.title .small { padding-right: 90px; }
	.deliveryMethod .title { font-size: 12px; }
	.deliveryMethod .title .small { padding-right: 0; }
	.totals_table { width: 100%; }
	.totals_table .row { padding: 7px; }
	.hasCouponFields { width: 100%; }

	form.product { flex-direction: column; margin: -20px -10px 0 -10px; gap: 10px; }
	form.product .images { --swiper-navigation-color: #999; }
	form.product .product_details { padding: 0 17px; background-position: right 5px top 40px; background-size: 25% auto; }
	form.product h1 { font-size: 17px; line-height: 1.18; font-weight: bold; text-shadow: .3px 0 0 currentColor; text-wrap: initial; padding: 0.25em 0; }
	form.product .product-model { display: block; color: #999; font-size: 12px; line-height: 1.4; margin-bottom: 6px; }
	form.product .price { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 0 14px; padding: 0 0 17px; color: #aaa; }
	form.product .current-price { display: contents; }
	form.product .price big { order: 0; font-family: Arial, sans-serif; font-size: 26px; line-height: 1.35; font-weight: bold; color: #f03; margin: 0; }
	form.product .previous-price { order: 1; display: flex; align-items: center; gap: 10px; white-space: nowrap; }
	form.product .price del { color: #888; font-size: 16px; }
	form.product .price .discount { margin: 0; border-radius: 20px; background: #f03; color: #fff; padding: 4px 11px; font-family: Arial, sans-serif; font-size: 14px; line-height: 1.1; }
	form.product .price-tax { order: 2; flex-basis: 100%; font-size: 12px; line-height: 1.5; }
	form.product .price-tax:empty { display: none; }
	form.product .discount-bracket, form.product .discount-label { display: none; }
	.order-product { flex-wrap: wrap; flex-direction: column; gap: 10px; padding-top: 14px; }
	.order-product button { width: 100%; justify-content: center; border-radius: 28px; font-weight: 400; font-size: 17px; padding: 12px 16px; }
	.order-product .add_wishlist { order: 2; flex-basis: 100%; }
	form.product .images .swiper { padding-bottom: 0; }
	form.product .add_wishlist.selected { color: #000; }
	.images .swiper-horizontal>.swiper-pagination-bullets { bottom: -3px; }
	form.product hr { margin-top: 0.5em; margin-bottom: 0.5em; }
	form.product h2, .size-chart-modal .insoles-table h2 { font-size: 13px; font-weight: bold; }
	form.product .mobile-colon, form.product .mobile-size-label { display: inline; }
	form.product .desktop-size-label, form.product .sizes .selectedSize { display: none; }
	form.product .variants { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 16px; }
	form.product .variants::after { display: none; }
	form.product .variants > * { display: block; float: none; flex: 0 0 55px; height: 53px; width: 55px; margin: 0; border: 1px solid #eee; border-radius: 6px; overflow: hidden; }
	form.product .variants > .current-variant { border-color: #111; }
	form.product .variants > *:hover { transform: none; box-shadow: none; }
	form.product .variants-divider, form.product .sizes > hr { display: none; }
	form.product .sizes-heading { display: flex; align-items: center; justify-content: space-between; gap: 6px; margin-bottom: 10px; }
	form.product .sizes-heading h2 { padding: 0; }
	form.product .size-chart-trigger { display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0; padding: 0; border: 0; background: none; font-size: 12px; color: #222; text-decoration: underline; cursor: pointer; }
	form.product .sizes .items { flex-wrap: wrap; gap: 6px; }
	form.product .sizes .custom-radio { min-width: 45px; height: 38px; line-height: 36px; margin: 0; border-radius: 5px; }
	form.product .sizes .custom-radio:not(.size-unavailable) { background: #fff; color: #000; border-color: #ddd; }
	form.product .sizes .custom-radio.selected:not(.size-unavailable) { background: #ffe5eb; color: #f03; border-color: #f03; }
	form.product .insoles-table { display: none; }

	.hasCards { display: flex; flex-direction: column; }

	.sidebarfilters { display: block; }
	.sidebarfilters .products { gap: 4px; }
	.home-filters.filters { display: none; }
	.sidebarfilters .filters { transform: translateX(120%); transition: transform 0.3s; gap: 40px; box-shadow: -2px 0 10px rgba(0, 0, 0, 0.2); position: fixed; top: 0; right: 0; width: 70vw; height: calc(100vh - 1px); overflow: auto; background: #fff; z-index: 9999; flex-direction: column; justify-content: flex-start; align-items: flex-end; padding: 20px 10px; }
	.filters-opened .sidebarfilters .filters { transform: translateX(0); }
	.sidebarfilters .filters .items { gap: 5px; }
	.sidebarfilters .filters .colors { gap: 10px; }
	.sidebarfilters .filters .colors .color { width: 40px; height: 40px; }
	.sidebarfilters .filters .colors .color.colors-all { width: 90px; }

	.banners { display: flex; margin: 0 -10px; height: 100vw; border-top: 1px solid #fff; }
	.banners .swiper-slide { background-position: right bottom; background-size: auto 100%; }
	.big-banners { --swiper-pagination-bullet-width: 10px; --swiper-pagination-bullet-hight: 10px; --swiper-pagination-bullet-size: 10px; --swiper-pagination-offset: 3px; }
	.big-banners h5 { font-size: 14px; }
	.big-banners h2 { font-size: 30px; }
	.big-banners .button { padding: 7px 14px; }
	.big-banners .banner-content { padding: 15px; }
	.small-banners { grid-template-columns: 1fr 1fr; gap: 1px; padding: 1px; }
	.small-banners h2 { font-size: 16px; text-transform: uppercase; }
	.small-banners h5 { font-size: 14px; padding: 3px 6px; }
	.page-home h1 { padding: 15px 0 0 0; margin-bottom: -10px; font-size: 26px; }
	.small-banners .banner_content { justify-content: flex-start; align-items: flex-start; padding: 10px; }

	.breadcrumbs h1 { font-size: 18px; }
	.mobile-filters-trigger { margin: 10px 5px 0 auto; font-size: 14px; width: max-content; display: flex; gap: 7px; padding: 5px; border: 1px solid #ccc; border-radius: 5px; align-items: center; }
	.mobile-filters-trigger svg { width: 15px; height: auto; }

	.filters-close-trigger { display: inline-block; width: auto; height: 30px; position: relative; padding: 0 40px 0 0; line-height: 30px; }
	.filters-close-trigger:before { content: ''; display: block; width: 30px; height: 4.5px; background-color: #000; border-radius: 2px; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(45deg); transition: all 0.2s; }
	.filters-close-trigger:after { content: ''; display: block; width: 30px; height: 4.5px; background-color: #000; border-radius: 2px; position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(-45deg); transition: all 0.2s; }

	.pager.hideOnDesktop { display: flex; margin: 20px 0 -10px 0; }
	
	.wrapper.newsletter { padding: 30px 10px; }
	header.showSearch .search { display: grid; grid-template-columns: 100px calc(100% - 150px) 30px; position: fixed; top: 35px; left: 0; width: 100%; }
	header.showSearch .floating + .content .search { top: 60px; }
	header.showSearch .navigation { padding-bottom: 40px; }
	header .search input, header .search select, header .search button { height: 40px; }
	.newsletter input[type="submit"] { line-height: 1.1; }
	
	.forinvoice label, .foraccount label { display: none !important; }
	
	.profile { display: flex; flex-direction: column; gap: 30px; }
	
	table.userorders { display: block; }
	table.userorders thead { display: none; }
	.userorders tr:nth-child(odd) td { background-color: #eee; }
	table.userorders tbody { display: block; }
	table.userorders tbody tr { display: flex; flex-direction: column; gap: 0px; }
	table.userorders tbody td { width: 100%; }
	
	.cards-accepted { width: auto !important; height: 70px !important; }
	
	.menus .filters { padding: 0 15px; }
	.menus .filters .colors { justify-content: flex-start; padding-top: 5px; gap: 8px; }
	.menus .filters .colors .color { width: 32px; height: 32px; }
	
	.title.logo-econt {
		background-image: url(images/logo-econt-small.png);
		background-position: right 5px center;
		background-size: auto 50%;
	}

	.title.logo-speedy {
		background-image: url(images/logo-speedy-small.png);
		background-position: right 5px center;
		background-size: auto 50%;
	}

	.title.logo-boxnow {
		background-position: right 5px center;
		background-size: auto 50%;
	}
	
	.deliveryPriceTable tr { display: flex; flex-direction: column; }
	.deliveryPriceTable td + td { padding-top: 25px; }
	.deliveryPriceTable td small { display: block; padding-top: 5px; }

	.about { padding: 10px 10px; grid-template-columns: 1fr; gap: 30px; font-size: 15px; line-height: 21px; }
	.about h1 { font-size: 22px; line-height: 30px; font-weight: 900; }
	
	.alert.quickorder { margin-left: -11px; margin-right: -11px; width: calc(100% + 22px); }

	.hasCheckbox { grid-template-columns: 80px auto; }
	.hasCheckbox .hasCheckboxInput { display: flex; flex-direction: column; }
	.hasCheckbox .order-products-preview { display: flex; flex-direction: column; }
	.hasCheckbox .order-products-preview img { width: auto; height: 60px; }
}

@media (width: 600px) {
	body .products > * { width: calc(33% - 4px); }
	.big-banners.swiper { padding: 50px; }
	.small-banners { grid-template-columns: 1fr 1fr 1fr 1fr; }
	footer .columns { display: grid; grid-template-columns: 1fr 1fr; }
}


.big-banners .banner-content {
	width: 100%;
	height: 100%;
	padding: 35px;
	overflow: hidden;
	position: relative;
	display: block;
}
.big-banners .banner-desc {
	text-align: right;
	padding-top: 35px;
}

.big-banners .button {
	position: absolute;
	bottom: 70px;
	left: 35px;
}

.single-article {
	line-height: 24px;
}

.single-article ul {
	margin-bottom: 1em;
	margin-left: 19px;
}

.single-article ul li {
	list-style-position: outside;
	padding-bottom: 5px;
}

/* more mobile above */

.card {
	margin-bottom: 1.5rem;
}

div.important {
	background-color: rgba(255, 251, 160, 0.7);
	padding: 15px 10px;
	font-size: 13px;
}

div.important h4 {
	font-size: 18px;
}

div.important h5 {
	font-size: 15px;
}

div.important ul {
	margin-bottom: 1rem;
}

.subcats {
	width: 100% !important;
	grid-column: 1 / span 4;
}

.subcats .wrapper {
	padding: 10px 0 15px 0;
	overflow: auto;
	white-space: nowrap;
}

.subcats a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	white-space: normal;
	padding: 6px;
	border: 1px solid #000;
	background-color: none;
	color: #000;
	text-decoration: none !important;
	text-transform: uppercase;
	font-size: 13px;
	line-height: 15px;
	vertical-align: top;
	font-weight: bold;
}

.subcats a + a {
	margin-left: 6px;
}

.subcats a.selected, .subcats a:hover {
	background-color: #fff;
	color: #000;
}

.subcats a:hover, .subcats a.selected {
	background-color: #000;
	border-color: #000;
	color: #fff;
}

.fabrics select {
	max-width: 200px;
}

.sms-form {
    display: flex;
    flex-direction: column;
    gap: 24px;
    max-width: 400px;
    margin: 0 auto;
}

.sms-input-container {
    display: flex;
    gap: 12px;
    justify-content: center;
}

.sms-digit {
    width: 50px;
    height: 60px;
    font-size: 24px;
    font-weight: 600;
    text-align: center;
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    background-color: #fafafa;
    transition: all 0.2s ease;
    padding: 0;
}

.sms-digit:focus {
    outline: none;
    border-color: #4a90e2;
    background-color: #f0f6ff;
    box-shadow: 0 0 0 3px rgba(74, 144, 226, 0.1);
}

.sms-digit:disabled {
    background-color: #f5f5f5;
    color: #999;
    cursor: not-allowed;
}

.sms-submit {
	padding: 14px 28px;
	font-size: 16px;
	font-weight: 600;
	color: white;
	background-color: #4a90e2;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: all 0.3s ease;
	height: auto;
}

.sms-submit:hover {
    background-color: #357abd;
    box-shadow: 0 4px 12px rgba(74, 144, 226, 0.3);
}

.sms-submit:disabled {
	opacity: 0.5;
}

.sms-submit:active {
    transform: translateY(0);
}


body.page-base {
	--app-swipe-progress: 0;
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
}

html.app-swipe-root {
	overflow-x: hidden;
}

body.page-base.app-swipe-active,
body.page-base.app-swipe-reset,
body.page-base.app-swipe-back {
	overflow-x: hidden;
}

body.page-base.app-swipe-loading {
	pointer-events: none;
}

.app-swipe-gesture-layer {
	position: fixed;
	z-index: 9999;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	pointer-events: auto;
	background-color: rgba(0, 0, 0, calc(var(--app-swipe-progress) * 0.6));
	transition: background-color 180ms ease-out;
}

.app-swipe-arrow {
	width: 54px;
	height: 54px;
	margin-left: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	padding: 0;
	background: rgba(255, 255, 255, 0.95);
	color: #111;
	font-size: 34px;
	font-weight: 700;
	line-height: 30px;
	opacity: var(--app-swipe-progress);
	transform: translateX(calc(-18px + (var(--app-swipe-progress) * 26px))) scale(calc(0.86 + (var(--app-swipe-progress) * 0.14)));
	transition: opacity 180ms ease-out, transform 180ms ease-out;
}

.app-swipe-spinner {
	display: none;
	position: absolute;
	left: 50%;
	top: 50%;
	width: 42px;
	height: 42px;
	margin: -21px 0 0 -21px;
	border: 4px solid rgba(255, 255, 255, 0.45);
	border-top-color: #fff;
	border-radius: 50%;
	animation: app-swipe-spinner 0.8s linear infinite;
}

.app-swipe-gesture-layer.is-loading {
	background-color: rgba(0, 0, 0, 0.6);
}

.app-swipe-gesture-layer.is-loading .app-swipe-arrow {
	opacity: 1;
	transform: translateX(8px) scale(1);
}

.app-swipe-gesture-layer.is-loading .app-swipe-spinner {
	display: block;
}

@keyframes app-swipe-spinner {
	to { transform: rotate(360deg); }
}



.speedy-free-delivery-banner {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 25px 0 50px;
	padding: 10px 14px;
	border: 2px solid #b9dfc0;
	border-radius: 12px;
	background: linear-gradient(110deg, #f4fff6 0%, #fafffb 100%);
	box-sizing: border-box;
}

.speedy-free-delivery-banner__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #ddf8e2;
	color: #00952f;
	flex: 0 0 40px;
}

.speedy-free-delivery-banner__icon svg {
	width: 24px;
	height: 24px;
	fill: none;
	stroke: currentColor;
	stroke-width: 3;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.speedy-free-delivery-banner__text {
	color: #111;
	font-size: 15px;
	line-height: 1.35;
}

.speedy-free-delivery-banner__text strong,
.speedy-free-delivery-banner__text span {
	color: #00952f;
}

@media (max-width: 1070px) {
	.big-banners h5 { font-size: 14px; margin-bottom: 0.5em; }
	.big-banners h2 { font-size: 24px; }
	.big-banners .banner-content { padding-left: 15px; padding-right: 15px; }
	.big-banners .banner-desc { padding-top: 20px; text-align: left; }
	.big-banners .button { padding: 6px 9px; left: auto; right: 15px; bottom: 50px; font-size: 12px; }
	.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction { left: 50% !important; width: auto !important; transform: translateX(-50%); }
	.small-banners h5.button { font-size: 12px; padding: 5px 7px; }
	.small-banners a::before, .small-banners a::after { display: none !important; }
	.products .newsletter h3 { font-size: 21px; padding-bottom: 4px; }
	
	.blog-wrapper { grid-template-columns: 1fr; }
	.sidebar { text-align: left; }
	.sidebar ul li a { font-size: 14px; }
	.sidebar ul li time { text-align: right; }
	.articles { gap: 15px; }
	.articles .meta { margin: -10px 0 0 0; font-size: 12px; }
	.article-preview { grid-template-columns: 1fr; gap: 10px; margin-bottom: 20px; }
	.article-preview .meta { margin-bottom: 5px; }
	.articles.single-article { padding-top: 0; }
	.articles.single-article .banner { margin-left: -10px; margin-right: -10px; width: calc(100% + 20px); }
	.blog-wrapper.previews .articles { grid-template-columns: 1fr; }
	form.cart label:empty { display: none; }
	.filter-groups { width: 100% !important; margin-bottom: 20px; }
	.filter-groups > div { width: 100%; }
	.blog-previews { grid-template-columns: 1fr; }
	.blog-previews .blog-preview + .blog-preview { border-top: 1px solid #ccc; padding-top: 10px; }
	footer .columns .column { text-align: center; }
	footer .column h3 { padding-bottom: 5px; }
	footer .iconlist, footer .social { display: flex; justify-content: center; }
	footer .logo img { object-fit: contain; }
	
	.quick_desc { display: none !important; }
	
	.cart_reviews_table, .cart_reviews_table table { width: 340px; }
	.cart_reviews_table table tr { display: flex; flex-direction: column; gap: 40px; justify-content: center; align-items: center; }
	
	header .navigation .menu { display: none; }
	.subcats { overflow: hidden; max-width: 100vw; }
	.subcats .wrapper { padding-left: 6px; padding-right: 6px; overflow: scroll; scrollbar-width: none; }
	.product-preview .info .title { display: -webkit-box; line-clamp: 2; -webkit-line-clamp: 2; box-orient: vertical; -webkit-box-orient: vertical; overflow: hidden !important; text-overflow: ellipsis; padding: 0 !important; margin: 5px 0; }

	.breadcrumbs { background-color: #fff; }
	.breadcrumbs .wrapper { justify-content: center; }
	.breadcrumbs h1 { font-size: 24px; font-family: "Raleway", sans-serif; font-weight: 500; text-transform: uppercase; }

	 .sms-form { max-width: 100%; padding: 20px; }
	.sms-input-container { gap: 8px; }
	.sms-digit { width: 45px; height: 55px; font-size: 22px; }
	.sms-submit { padding: 12px 24px; font-size: 15px; }
}

.blog-previews { display: none !important; }



.google-reviews-widget {
	max-width: 1200px;
	margin: 24px auto;
	padding: 24px;
	border-radius: 18px;
	background: #f7f8fa;
	font-family: Arial, sans-serif;
	box-sizing: border-box;
}
.google-reviews-widget * { box-sizing: border-box; }
.google-reviews-widget .reviews-header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 6px 20px;
	align-items: center;
	margin-bottom: 20px;
	padding-left: 56px;
	background: url(/images/icon-google.png) no-repeat left center / 40px;
}
.google-reviews-widget .google-logo { font-size: 23px; line-height: 1.25; font-weight: 700; }
.google-reviews-widget .rating-summary { display: flex; flex-wrap: wrap; gap: 4px 6px; align-items: center; font-size: 14px; line-height: 1.4; }
.google-reviews-widget .rating-stars { color: #f5b400; letter-spacing: 1px; font-size: 21px; line-height: 1; }
.google-reviews-widget .rating-number { font-weight: 700; }
.google-reviews-widget .rate-button {
	grid-column: 2; grid-row: 1 / 3;
	display: block; max-width: 160px;
	padding: 10px 14px; border: 1px solid #333; border-radius: 14px;
	font-size: 14px; font-weight: 600; line-height: 1.3; color: #171717; background: transparent;
}
.google-reviews-widget .reviews-carousel-container { min-width: 0; }
.google-reviews-widget .reviews-carousel {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
	cursor: grab;
	user-select: none;
	-webkit-user-select: none;
}
.google-reviews-widget .reviews-carousel::-webkit-scrollbar { display: none; }
.google-reviews-widget .reviews-carousel.is-dragging { scroll-snap-type: none; cursor: grabbing; }
.google-reviews-widget .review-item {
	flex: 0 0 calc((100% - 32px) / 3);
	min-width: 0;
	padding: 18px;
	border: 1px solid #e0e3e8;
	border-radius: 16px;
	background: #fff;
	scroll-snap-align: start;
}
.google-reviews-widget .review-header { display: flex; align-items: center; gap: 12px; color: inherit; text-decoration: none; }
.google-reviews-widget .reviewer-avatar { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex: 0 0 44px; border-radius: 50%; overflow: hidden; background: #008b9d; color: #fff; font-size: 25px; }
.google-reviews-widget .reviewer-avatar img { width: 100%; height: 100%; object-fit: cover; }
.google-reviews-widget .reviewer-info { min-width: 0; }
.google-reviews-widget .reviewer-name { font-size: 15px; line-height: 1.3; font-weight: 700; overflow-wrap: anywhere; }
.google-reviews-widget .review-time { margin-top: 3px; font-size: 12px; line-height: 1.4; color: #757575; }
.google-reviews-widget .review-rating { margin: 8px 0 6px 56px; display: flex; gap: 1px; color: #f5b400; font-size: 21px; line-height: 1; }
.google-reviews-widget .review-text { margin-left: 56px; font-size: 14px; line-height: 1.5; color: #34383d; overflow-wrap: anywhere; white-space: pre-line; }
.google-reviews-widget .review-text--clamped { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 5; overflow: hidden; }
.google-reviews-widget .review-more { display: block; margin: 10px 0 0 56px; padding: 0; border: 0; background: none; color: #444; font: inherit; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.google-reviews-widget .review-more[hidden] { display: none; }
.google-reviews-widget .review-controls { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 12px; }
.google-reviews-widget .review-controls[hidden] { display: none; }
.google-reviews-widget .carousel-dots { display: flex; min-width: 0; gap: 2px; justify-content: center; }
.google-reviews-widget .carousel-dots button { display: grid; place-items: center; flex: 0 1 24px; min-width: 12px; width: 24px; height: 32px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.google-reviews-widget .carousel-dots button::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: #d4d7db; }
.google-reviews-widget .carousel-dots button[aria-current="true"]::before { background: #333; }
.google-reviews-widget .review-nav { flex: 0 0 36px; width: 36px; height: 36px; padding: 0; border: 1px solid #d9dde2; border-radius: 50%; background: #fff; color: #222; font-size: 24px; line-height: 1; cursor: pointer; }
.google-reviews-widget .review-nav:disabled { opacity: .3; cursor: default; }
.google-reviews-widget :focus-visible { outline: 2px solid #555; outline-offset: 3px; }
@media (min-width: 1071px) {
	.google-reviews-widget { max-width: none; margin: 0; padding: 28px 0 20px; border-radius: 0; background: transparent; }
	.google-reviews-widget .reviews-header { margin-bottom: 24px; }
	.google-reviews-widget .google-logo { font-size: 22px; font-weight: 600; }
	.google-reviews-widget .rate-button { max-width: none; padding: 10px 16px; border-color: #d9d9d9; border-radius: 6px; font-weight: 500; }
	.google-reviews-widget .rate-button:hover { border-color: #222; text-decoration: none; }
	.google-reviews-widget .review-item { padding: 22px; border-color: #e8e8e8; border-radius: 8px; }
	.google-reviews-widget .reviewer-avatar { width: 36px; height: 36px; flex-basis: 36px; font-size: 20px; }
	.google-reviews-widget .reviewer-name { font-size: 14px; }
	.google-reviews-widget .review-rating { margin: 18px 0 10px; font-size: 18px; }
	.google-reviews-widget .review-text { margin-left: 0; line-height: 1.65; }
	.google-reviews-widget .review-more { margin-left: 0; }
	.google-reviews-widget .review-controls { margin-top: 18px; }
	.google-reviews-widget .review-nav { border-radius: 6px; border-color: #e8e8e8; }
}
@media (max-width: 1070px) {
	.google-reviews-widget { padding: 18px; }
	.google-reviews-widget .review-item { flex-basis: calc((100% - 16px) / 2); }
}
@media (max-width: 700px) {
	.google-reviews-widget { margin: 20px 0; padding: 14px 10px 8px; border-radius: 16px; }
	.google-reviews-widget .reviews-header { padding-left: 38px; gap: 5px 10px; margin-bottom: 14px; background-size: 28px; }
	.google-reviews-widget .google-logo { font-size: 17px; }
	.google-reviews-widget .rating-summary { font-size: 12px; gap: 3px 5px; }
	.google-reviews-widget .rating-stars { font-size: 17px; }
	.google-reviews-widget .rate-button { max-width: 96px; font-size: 12px; padding: 8px; border-radius: 12px; }
	.google-reviews-widget .review-item { flex-basis: 100%; padding: 14px; }
	.google-reviews-widget .review-text { margin-left: 0; margin-top: 10px; }
	.google-reviews-widget .review-more { margin-left: 0; }
	.google-reviews-widget .review-controls { gap: 6px; }
}


/* Returns form and voucher confirmation */
.return-page { padding: 36px 16px; }
.return-page .return-card { max-width: 640px; margin: 0 auto; padding: 36px; background: #fff; border: 1px solid #edf0f4; border-radius: 14px; box-shadow: 0 6px 28px #18263e0a; color: #101828; font-family: Arial, sans-serif; line-height: 1.45; }
.return-card *, .return-card *::before, .return-card *::after { box-sizing: border-box; }
.return-card [hidden] { display: none !important; }
.return-card fieldset { min-width: 0; border: 0; margin: 0; padding: 0; }
.return-card h1, .return-card h2 { font-family: inherit; font-weight: 700; line-height: 1.25; margin: 0 0 24px; text-transform: none; }
.return-card h1 { font-size: 28px; }
.return-card h2 { font-size: 23px; }
.return-card .return-progress { list-style: none; display: flex; margin: 0 0 36px; padding: 0; }
.return-progress li { position: relative; flex: 1; text-align: center; font-size: 12px; color: #737b88; }
.return-progress li::before { content: ''; position: absolute; height: 2px; top: 13px; left: -50%; width: 100%; background: #e5e7eb; }
.return-progress li:first-child::before { display: none; }
.return-progress li span { position: relative; z-index: 1; display: block; width: 28px; height: 28px; margin: 0 auto 8px; background: #e5e7eb; border-radius: 50%; line-height: 28px; color: #475467; font-weight: 700; }
.return-progress li.is-complete::before, .return-progress li.is-complete span { background: #006fed; color: #fff; }
.return-progress li[aria-current] { color: #101828; font-weight: 700; }
.return-card .return-policy { display: grid; gap: 16px; background: #f3f6fa; border-radius: 10px; padding: 20px; margin-bottom: 26px; font-size: 14px; }
.return-card .return-options { display: grid; gap: 12px; }
.return-card label { float: none; width: auto; margin: 0; font-size: 15px; color: inherit; }
.return-card label::after { content: none; }
.return-card .return-option { display: flex; align-items: center; gap: 14px; padding: 16px; border: 1px solid #d5dae2; border-radius: 8px; cursor: pointer; font-weight: 400; }
.return-card .return-option:has(input:checked) { background: #f3f3f3; border-color: #222; }
.return-card .return-option:hover { border-color: #222; }
.return-card input[type=radio], .return-card input[type=checkbox] { display: inline-block; position: static; appearance: auto; -webkit-appearance: auto; width: 20px; height: 20px; min-width: 20px; flex: 0 0 20px; padding: 0; margin: 0; accent-color: #111; cursor: pointer; }
.return-card input[type=radio]:focus-visible, .return-card input[type=checkbox]:focus-visible { outline-color: #555; }
.return-card .return-option-unavailable, .return-card .return-option-unavailable input { cursor: default; }
.return-card .return-option-unavailable { color: #667085; background: #f9fafb; }
.return-card .return-option-unavailable:hover { border-color: #d5dae2; }
.return-option > span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.return-option strong, .return-option small { display: block; }
.return-option small { font-size: 14px; margin-top: 3px; }
.return-option small strong { display: inline; }
.return-card .return-order-total { display: flex; align-items: end; justify-content: space-between; gap: 12px; }
.return-card .return-product-option { gap: 12px; }
.return-product-option img { width: 100px; height: 100px; flex: 0 0 100px; object-fit: contain; border-radius: 4px; }
.return-product-option input { order: 3; }
.return-card .return-field { display: block; margin-bottom: 22px; font-weight: 500; }
.return-card .return-field input, .return-card .return-field select { display: block; width: 100%; max-width: none; height: 48px; margin: 8px 0 0; padding: 10px 12px; background: #fff; color: #101828; border: 1px solid #cdd2da; border-radius: 6px; font: 16px Arial, sans-serif; box-shadow: none; }
.return-card .return-field select { appearance: auto; -webkit-appearance: auto; padding-right: 24px; }
.return-card .return-reason { font-size: 23px; font-weight: 700; margin-bottom: 32px; }
.return-card .return-terms { display: flex; align-items: flex-start; gap: 12px; margin: 26px 0; font-size: 14px; }
.return-card .return-terms label { font: inherit; cursor: pointer; }
.return-card .return-open-terms { display: inline; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: inherit; font: inherit; text-align: left; text-decoration: underline; }
.return-card .return-actions { display: flex; gap: 12px; margin-top: 28px; }
.return-card button, .return-card a.return-primary { font: 600 16px Arial, sans-serif; border-radius: 8px; min-height: 48px; padding: 14px 20px; cursor: pointer; text-align: center; text-transform: none; letter-spacing: normal; }
.return-card .return-primary { flex: 1; display: block; color: #fff; background: #000; border: 1px solid #000; text-decoration: none; }
.return-card .return-primary:hover { background: #242424; border-color: #242424; }
.return-card .return-secondary { color: #344054; background: #f3f4f6; border: 1px solid #f3f4f6; }
.return-card :focus-visible { outline: 3px solid #75b4ff; outline-offset: 3px; }
.return-card button:disabled { opacity: .55; cursor: wait; }
.return-card .return-error { background: #fff0f0; color: #a31919; border-radius: 8px; padding: 14px; margin-bottom: 20px; }
.return-card .return-duplicate-notice p { margin: 0 0 10px; }
.return-card .return-duplicate-notice p:last-child { margin-bottom: 0; }
/* Return confirmation */
.return-card-success .return-progress li.is-complete span { background: #218739; }
.return-card-success .return-progress li.is-complete span img { display: inline-block; width: 18px; height: 18px; vertical-align: middle; }
.return-card-success .return-progress li.is-complete::before { background: #218739; }
.return-card-success .return-progress li[aria-current] span,
.return-card-success .return-progress li[aria-current]::before { background: #006fed; }
.return-success-icon { display: block; width: 64px; height: 64px; margin: 0 auto 16px; }
.return-card .return-success-message h1 { max-width: 440px; margin: 0 auto 12px; color: #176731; text-align: center; }
.return-card .return-success-intro { padding: 0; margin: 0 auto 16px; max-width: 400px; text-align: center; font-size: 16px; line-height: 1.45; }
.return-card .return-voucher { text-align: center; background: #fff1f3; padding: 16px 12px; border-radius: 10px; margin: 0 0 20px; }
.return-card .return-voucher-label { padding: 0; margin: 0; font-size: 15px; font-weight: 700; color: #ad252b; }
.return-voucher-number { color: #101d3a; font-size: clamp(24px, 7.4vw, 36px); font-weight: 700; line-height: 1.2; padding: 8px 0 12px; overflow-wrap: anywhere; }
.return-card #return-copy-voucher { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 9px 14px; font-size: 14px; color: #0064d8; border-color: #006fed; background: #f0f8ff; }
.return-card #return-copy-voucher:hover { background: #e1efff; }
.return-card #return-copy-status { display: block; margin-top: 8px; font-size: 14px; }
.return-card #return-copy-status:empty { display: none; }
.return-card .return-instructions { display: grid; gap: 14px; padding: 0; margin: 0 0 28px; list-style: none; }
.return-instructions li { display: flex; align-items: flex-start; gap: 16px; margin: 0; padding: 0; font-size: 16px; line-height: 1.4; }
.return-instruction-icon, .return-instruction-number { flex: 0 0 24px; width: 24px; height: 24px; }
.return-instruction-number { border-radius: 50%; background: #66798b; color: #fff; text-align: center; font-size: 14px; line-height: 24px; }
html.return-terms-open { overflow: hidden; }
.return-terms-dialog { box-sizing: border-box; width: min(720px, calc(100% - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 0; border: 0; border-radius: 12px; background: #fff; color: #101828; font: 16px/1.6 Arial, sans-serif; box-shadow: 0 16px 64px #10182833; }
.return-terms-dialog::backdrop { background: #10182880; }
.return-terms-dialog-header { position: sticky; top: 0; display: flex; align-items: flex-start; gap: 16px; padding: 20px 24px; border-bottom: 1px solid #e5e7eb; background: #fff; }
.return-terms-dialog-header h2 { flex: 1; margin: 0; font-size: 22px; font-weight: 700; line-height: 1.3; }
.return-terms-dialog #return-close-terms { flex-shrink: 0; min-height: 44px; padding: 10px 14px; border: 1px solid #d5dae2; border-radius: 6px; background: #f3f4f6; color: #344054; font: 600 14px Arial, sans-serif; text-transform: none; cursor: pointer; }
.return-terms-dialog-content { padding: 24px; overflow-wrap: anywhere; }
.return-terms-dialog-content img { max-width: 100%; height: auto; }
.return-terms-dialog-content a { color: #0064d8; text-decoration: underline; }
.return-terms-dialog :focus-visible { outline: 3px solid #75b4ff; outline-offset: 2px; }
@media (max-width: 600px) {
    .return-page { padding: 16px 8px; }
    .return-page .return-card { padding: 24px 16px; border-radius: 10px; }
    .return-card h1 { font-size: 26px; }
    .return-card h2, .return-card .return-reason { font-size: 22px; }
    .return-card .return-option { padding: 12px; gap: 10px; }
    .return-product-option img { width: 82px; height: 90px; flex-basis: 82px; }
    .return-card .return-progress { margin-bottom: 30px; }
    .return-card button { padding: 14px 16px; }
    .return-terms-dialog-header, .return-terms-dialog-content { padding: 16px; }
    .return-terms-dialog-header h2 { font-size: 20px; }
}

/* Size exchanges */
.return-card .return-exchange-product { display: flex; align-items: center; gap: 16px; padding: 16px; margin-bottom: 24px; border: 1px solid #e5e7eb; border-radius: 8px; font-size: 14px; }
.return-exchange-product img { flex: 0 0 100px; width: 100px; height: 100px; object-fit: contain; }
.return-exchange-product strong { display: inline; }
.return-card [data-return-pane] h3 { margin: 0 0 12px; font: 600 16px/1.4 Arial, sans-serif; text-transform: none; }
.return-card .return-size-options { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.return-card .return-size-option { gap: 8px; padding: 10px; min-height: 48px; }
.return-card .return-exchange-price { margin: 16px 0; padding: 16px; border-radius: 8px; background: #eef7ef; color: #176731; font-weight: 700; }
@media (max-width: 600px) {
    .return-card .return-exchange-product { gap: 12px; padding: 12px; }
    .return-exchange-product img { width: 82px; height: 90px; flex-basis: 82px; }
}

/* Shared compact navigation and mobile footer. */
footer .footer-mobile-only { display: none; }
@media (max-width: 1070px) {
    header .logo { width: 115px; }
    header .navigation { padding-left: 115px; }
    footer { padding: 12px 0 0; background: #f3f7fa; font-family: Arial, sans-serif; }
    footer .footer-mobile-only { display: block; }
    footer .footer-desktop-only,
    footer .columns > .column:first-child,
    footer.footer-enhanced .footer-extra-links,
    footer .icon-boxes, footer .store-badges,
    footer .cards-accepted { display: none; }
    footer .columns { display: block; }
    footer .columns .column { text-align: left; }
    footer.footer-enhanced .footer-section > h3 { display: none; }
    footer .footer-section { border-bottom: 1px solid #dfe5eb; }
    footer .footer-toggle { display: flex; align-items: center; gap: 17px; width: 100%; padding: 17px 10px; border: 0; border-radius: 0; background: none; color: #303c50; font: inherit; font-size: 18px; font-weight: 700; text-align: left; cursor: pointer; }
    footer .footer-toggle svg, footer .footer-return svg { width: 25px; height: 25px; flex: 0 0 25px; color: #697588; }
    footer .footer-toggle:after { content: '+'; margin-left: auto; font-size: 29px; font-weight: 400; color: #697588; }
    footer .footer-toggle[aria-expanded="true"]:after { content: '−'; }
    footer.footer-enhanced .footer-section > ul { display: none; margin: 0; padding: 0 12px 13px 52px; }
    footer.footer-enhanced .footer-expanded > ul { display: block; }
    footer .footer-section li { padding: 0; }
    footer .footer-section li a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 0; font-size: 15px; }
    footer .footer-section li a:after { content: '›'; font-size: 23px; }
    footer .footer-section a[href="/page/returns"] { display: none; }
    footer .footer-return { display: flex; align-items: center; gap: 17px; margin: 10px 0 13px; padding: 13px 10px; border-radius: 9px; background: #ffe7ee; color: #303c50; font-size: 18px; font-weight: 700; }
    footer .footer-return svg { color: #ff4567; }
    footer .footer-return > span:last-child { margin-left: auto; font-size: 25px; font-weight: 400; }
    footer .wrapper.newsletter { margin: 0; padding: 22px 16px 15px; background: #383d42; text-align: left; gap: 16px; }
    footer .newsletter form { width: 100%; max-width: 550px; }
    footer .newsletter h3 { font-size: 21px; font-weight: 500; padding-bottom: 10px; }
    footer .newsletter h3:before { content: '✉'; margin-right: 13px; font-size: 27px; }
    footer .newsletter p { color: #bcc2ca; font-size: 13px; line-height: 1.4; margin: 0 0 15px; }
    footer .newsletter .line { display: flex; gap: 0; background: #fff; border-radius: 30px; padding: 3px; width: 100%; }
    footer .newsletter input[type="email"] { flex: 1; width: 0; min-width: 0; padding: 10px 13px; border: 0; border-radius: 30px; font-size: 12px; }
    footer .newsletter input[type="submit"] { background: var(--footer-accent, #ff324d); color: #fff; width: auto; flex: 0 0 auto; margin: 0; padding: 10px 14px; border: 0; border-radius: 30px; font-size: 12px; }
    footer .newsletter .social { display: flex; justify-content: center; gap: 16px; padding: 0; margin: 0; }
    footer .newsletter .social a { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; background: #50565c; }
    footer .newsletter .social img { width: 23px; height: 23px; filter: grayscale(1) brightness(0) invert(1); }
    footer .wrapper.bottombar { width: 100%; max-width: none; display: flex; flex-direction: column; align-items: center; gap: 10px; margin: 0; padding: 18px 10px; background: #292d31; color: #b7bbc2; font-size: 12px; }
    footer .bottombar .footer-mobile-only { display: inline; }
    footer .footer-bottom-links { display: flex !important; gap: 0; }
    footer .footer-bottom-links a { padding: 0 18px; }
    footer .footer-bottom-links a + a { border-left: 1px solid #747a83; }
    footer .bottombar > div:last-child { display: none; }
}

@media (max-width: 360px) {
    header .navigation .side ul { gap: 8px; }
    header .navigation .side a { white-space: nowrap; }
}

/* Product service features */
form.product .deliveryinfo ul { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px 12px; margin: 0; padding: 0; }
form.product .deliveryinfo li { display: flex; align-items: center; gap: 10px; grid-column: span 2; margin: 0; padding: 0; font-size: 13px; line-height: 1.4; font-style: normal; }
form.product .deliveryinfo li:nth-child(n+4) { grid-column: span 3; }
form.product .deliveryinfo li::before { content: none; }
form.product .deliveryinfo svg { flex: 0 0 30px; width: 30px; height: 30px; fill: none; stroke: var(--product-feature-color, #e40f2b); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.product-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 22px 0 16px; }
.product-section-heading h2 { margin: 0; }
.product-section-heading > a { color: var(--product-feature-color, #e40f2b); font-size: 15px; text-decoration: underline; white-space: nowrap; }
@media (max-width: 1070px) {
	form.product .speedy-free-delivery-banner { margin: 16px 0 14px; }
	form.product .details { padding: 4px 0; line-height: 1.45; }
	form.product .deliveryinfo { margin: 18px 0; }
}
@media (max-width: 600px) {
	form.product .deliveryinfo ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 14px; }
	form.product .deliveryinfo li, form.product .deliveryinfo li:nth-child(n+4) { grid-column: auto; }
	form.product .deliveryinfo li:last-child { grid-column: 1 / -1; }
	form.product .deliveryinfo svg { flex-basis: 28px; width: 28px; height: 28px; }
	.product-section-heading { gap: 10px; margin: 20px 0 14px; }
	.product-section-heading h2 { font-size: clamp(16px, 4.6vw, 21px); line-height: 1.2; }
	.product-section-heading > a { font-size: 13px; }
}
