

/* Start:/local/templates/happy/css/owl.carousel.css?17754704103971*/
/* ==========================================================================
   OWL CAROUSEL
   ========================================================================== */
.owl-carousel {
	display: none;
	width: 100%;
	-webkit-tap-highlight-color: transparent;
	/* position relative and z-index fix webkit rendering fonts issue */
	position: relative;
	z-index: 1;
}

.owl-carousel .owl-stage {
	position: relative;
	-ms-touch-action: pan-Y;
}

.owl-carousel .owl-stage:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.owl-carousel .owl-stage-outer {
	position: relative;
	overflow: hidden;
	/* fix for flashing background */
	-webkit-transform: translate3d(0px, 0px, 0px);
}

.owl-carousel .owl-item {
	position: relative;
	min-height: 1px;
	float: left;
	-webkit-backface-visibility: hidden;
	-webkit-tap-highlight-color: transparent;
-webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
	-webkit-backface-visibility: hidden;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	backface-visibility: hidden;
}

.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
	display: none;
}

.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
	cursor: pointer;
	cursor: hand;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.owl-carousel.owl-loaded {
	display: block;
}

.owl-carousel.owl-loading {
	opacity: 0;
	display: block;
}

.owl-carousel.owl-hidden {
	opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
	display: none;
}

.owl-carousel.owl-drag .owl-item {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.owl-carousel.owl-grab {
	cursor: move;
	cursor: grab;
}

.owl-carousel.owl-rtl {
	direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
	float: right;
}

/* No Js */
.no-js .owl-carousel {
	display: block;
}

/*
*  Owl Carousel - Animate Plugin
*/
.owl-carousel .animated {
	-webkit-animation-duration: 1000ms;
	animation-duration: 1000ms;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
	z-index: 0;
}

.owl-carousel .owl-animated-out {
	z-index: 1;
}

.owl-carousel .fadeOut {
	-webkit-animation-name: fadeOut;
	animation-name: fadeOut;
}

@-webkit-keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

/*
* 	Owl Carousel - Auto Height Plugin
*/
.owl-height {
	transition: height 500ms ease-in-out;
}

/*
* 	Owl Carousel - Lazy Load Plugin
*/
.owl-carousel .owl-item .owl-lazy {
	opacity: 0;
	transition: opacity 400ms ease;
}

.owl-carousel .owl-item img.owl-lazy {
	-webkit-backface-visibility: hidden;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	backface-visibility: hidden;
}

/*
* 	Owl Carousel - Video Plugin
*/
.owl-carousel .owl-video-wrapper {
	position: relative;
	height: 100%;
	background: #000;
}

.owl-carousel .owl-video-play-icon {
	position: absolute;
	height: 80px;
	width: 80px;
	left: 50%;
	top: 50%;
	margin-left: -40px;
	margin-top: -40px;
	background: url("/local/templates/happy/css/owl.video.play.png") no-repeat;
	cursor: pointer;
	z-index: 1;
	-webkit-backface-visibility: hidden;
	transition: -webkit-transform 100ms ease;
	transition: transform 100ms ease;
}

.owl-carousel .owl-video-play-icon:hover {
	-webkit-transform: scale(1.3, 1.3);
	-ms-transform: scale(1.3, 1.3);
	transform: scale(1.3, 1.3);
}

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
	display: none;
}

.owl-carousel .owl-video-tn {
	opacity: 0;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	transition: opacity 400ms ease;
}

.owl-carousel .owl-video-frame {
	position: relative;
	z-index: 1;
	height: 100%;
	width: 100%;
}
/* End */


/* Start:/local/templates/happy/css/swiper-bundle.min.css?177547041018454*/
/**
 * Swiper 11.2.10
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 28, 2025
 */

@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,rgba(0,0,0,.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size,4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;background:var(--swiper-scrollbar-bg-color,rgba(0,0,0,.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset,1%);bottom:var(--swiper-scrollbar-bottom,4px);top:var(--swiper-scrollbar-top,auto);z-index:50;height:var(--swiper-scrollbar-size,4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left,auto);right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);z-index:50;width:var(--swiper-scrollbar-size,4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color,rgba(0,0,0,.5));border-radius:var(--swiper-scrollbar-border-radius,10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}
/* End */


/* Start:/local/templates/happy/css/magnific-popup.css?177547041011158*/
/* ==========================================================================
   MAGNIFIC POPUP
   ========================================================================== */
.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1042;
	overflow: hidden;
	position: fixed;
	background: #0b0b0b;
	opacity: 0.8;
	filter: alpha(opacity=80);
}

.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1043;
	position: fixed;
	outline: none !important;
	-webkit-backface-visibility: hidden;
}

.mfp-container {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.mfp-container:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
	text-align: left;
	z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}

.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	color: #CCC;
	position: absolute;
	top: 50%;
	width: auto;
	text-align: center;
	margin-top: -0.8em;
	left: 8px;
	right: 8px;
	z-index: 1044;
}

.mfp-preloader a {
	color: #CCC;
}

.mfp-preloader a:hover {
	color: #FFF;
}

.mfp-s-ready .mfp-preloader {
	display: none;
}

.mfp-s-error .mfp-content {
	display: none;
}

button.mfp-close,
button.mfp-arrow {
	overflow: visible;
	cursor: pointer;
	background: transparent;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 1046;
	-webkit-box-shadow: none;
	box-shadow: none;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

.mfp-close {
	width: 44px;
	height: 44px;
	line-height: 44px;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	text-align: center;
	opacity: 0.65;
	filter: alpha(opacity=65);
	padding: 0 0 18px 10px;
	color: #FFF;
	font-style: normal;
	font-size: 28px;
	font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
	opacity: 1;
	filter: alpha(opacity=100);
}

.mfp-close:active {
	top: 1px;
}

.mfp-close-btn-in .mfp-close {
	color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
	color: #FFF;
	right: -6px;
	text-align: right;
	padding-right: 6px;
	width: 100%;
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	color: #CCC;
	font-size: 12px;
	line-height: 18px;
	white-space: nowrap;
}

.mfp-arrow {
	position: absolute;
	opacity: 0.65;
	filter: alpha(opacity=65);
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
	margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
	opacity: 1;
	filter: alpha(opacity=100);
}

.mfp-arrow:before,
.mfp-arrow:after,
.mfp-arrow .mfp-b,
.mfp-arrow .mfp-a {
	content: '';
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent;
}

.mfp-arrow:after,
.mfp-arrow .mfp-a {
	border-top-width: 13px;
	border-bottom-width: 13px;
	top: 8px;
}

.mfp-arrow:before,
.mfp-arrow .mfp-b {
	border-top-width: 21px;
	border-bottom-width: 21px;
	opacity: 0.7;
}

.mfp-arrow-left {
	left: 0;
}

.mfp-arrow-left:after,
.mfp-arrow-left .mfp-a {
	border-right: 17px solid #FFF;
	margin-left: 31px;
}

.mfp-arrow-left:before,
.mfp-arrow-left .mfp-b {
	margin-left: 25px;
	border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
	right: 0;
}

.mfp-arrow-right:after,
.mfp-arrow-right .mfp-a {
	border-left: 17px solid #FFF;
	margin-left: 39px;
}

.mfp-arrow-right:before,
.mfp-arrow-right .mfp-b {
	border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
	line-height: 0;
	width: 100%;
	max-width: 900px;
}
.mfp-iframe-holder .mfp-close {
	top: -40px;
}

.mfp-iframe-scaler {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #000;
}

/* Main image in popup */
img.mfp-img {
	width: auto;
	max-width: 100%;
	height: auto;
	display: block;
	line-height: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 40px 0 40px;
	margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
	line-height: 0;
}

.mfp-figure:after {
	content: '';
	position: absolute;
	left: 0;
	top: 40px;
	bottom: 40px;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #444;
}

.mfp-figure small {
	color: #BDBDBD;
	display: block;
	font-size: 12px;
	line-height: 14px;
}

.mfp-figure figure {
	margin: 0;
}

.mfp-bottom-bar {
	margin-top: -36px;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	cursor: auto;
}

.mfp-title {
	text-align: left;
	line-height: 18px;
	color: #F3F3F3;
	word-wrap: break-word;
	padding-right: 36px;
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/**
	 * Remove all paddings around the image on small screen
	*/
	.mfp-img-mobile .mfp-image-holder {
		padding-left: 0;
		padding-right: 0;
	}
	.mfp-img-mobile img.mfp-img {
		padding: 0;
	}
	.mfp-img-mobile .mfp-figure:after {
		top: 0;
		bottom: 0;
	}
	.mfp-img-mobile .mfp-figure small {
		display: inline;
		margin-left: 5px;
	}
	.mfp-img-mobile .mfp-bottom-bar {
		background: rgba(0, 0, 0, 0.6);
		bottom: 0;
		margin: 0;
		top: auto;
		padding: 3px 5px;
		position: fixed;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box; }
		.mfp-img-mobile .mfp-bottom-bar:empty {
			padding: 0;
		}
	.mfp-img-mobile .mfp-counter {
		right: 5px;
		top: 3px;
	}
	.mfp-img-mobile .mfp-close {
		top: 0;
		right: 0;
		width: 35px;
		height: 35px;
		line-height: 35px;
		background: rgba(0, 0, 0, 0.6);
		position: fixed;
		text-align: center;
		padding: 0;
	}
}

@media all and (max-width: 900px) {
	.mfp-arrow {
		-webkit-transform: scale(0.75);
		transform: scale(0.75);
	}
	.mfp-arrow-left {
		-webkit-transform-origin: 0;
		transform-origin: 0;
	}
	.mfp-arrow-right {
		-webkit-transform-origin: 100%;
		transform-origin: 100%;
	}
	.mfp-container {
		padding-left: 6px;
		padding-right: 6px;
	}
}

.mfp-ie7 .mfp-img {
	padding: 0;
}

.mfp-ie7 .mfp-bottom-bar {
	width: 600px;
	left: 50%;
	margin-left: -300px;
	margin-top: 5px;
	padding-bottom: 5px;
}

.mfp-ie7 .mfp-container {
	padding: 0;
}

.mfp-ie7 .mfp-content {
	padding-top: 44px;
}

.mfp-ie7 .mfp-close {
	top: 0;
	right: 0;
	padding-top: 0;
}

/**
 * Fade-zoom animation for first dialog
 */

/* start state */
.my-mfp-zoom-in .zoom-anim-dialog {
	opacity: 0;

	-webkit-transition: all 0.2s ease-in-out; 
	-moz-transition: all 0.2s ease-in-out; 
	-o-transition: all 0.2s ease-in-out; 
	transition: all 0.2s ease-in-out; 



	-webkit-transform: scale(0.8); 
	-moz-transform: scale(0.8); 
	-ms-transform: scale(0.8); 
	-o-transform: scale(0.8); 
	transform: scale(0.8); 
}

/* animate in */
.my-mfp-zoom-in.mfp-ready .zoom-anim-dialog {
	opacity: 1;

	-webkit-transform: scale(1); 
	-moz-transform: scale(1); 
	-ms-transform: scale(1); 
	-o-transform: scale(1); 
	transform: scale(1); 
}

/* animate out */
.my-mfp-zoom-in.mfp-removing .zoom-anim-dialog {
	-webkit-transform: scale(0.8); 
	-moz-transform: scale(0.8); 
	-ms-transform: scale(0.8); 
	-o-transform: scale(0.8); 
	transform: scale(0.8); 

	opacity: 0;
}

/* Dark overlay, start state */
.my-mfp-zoom-in.mfp-bg {
	opacity: 0;
	-webkit-transition: opacity 0.3s ease-out; 
	-moz-transition: opacity 0.3s ease-out; 
	-o-transition: opacity 0.3s ease-out; 
	transition: opacity 0.3s ease-out;
}
/* animate in */
.my-mfp-zoom-in.mfp-ready.mfp-bg {
	opacity: 0.8;
}
/* animate out */
.my-mfp-zoom-in.mfp-removing.mfp-bg {
	opacity: 0;
}



/**
 * Fade-move animation for second dialog
 */

/* at start */
.my-mfp-slide-bottom .zoom-anim-dialog {
	opacity: 0;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;

	-webkit-transform: translateY(-20px) perspective( 600px ) rotateX( 10deg );
	-moz-transform: translateY(-20px) perspective( 600px ) rotateX( 10deg );
	-ms-transform: translateY(-20px) perspective( 600px ) rotateX( 10deg );
	-o-transform: translateY(-20px) perspective( 600px ) rotateX( 10deg );
	transform: translateY(-20px) perspective( 600px ) rotateX( 10deg );

}

/* animate in */
.my-mfp-slide-bottom.mfp-ready .zoom-anim-dialog {
	opacity: 1;
	-webkit-transform: translateY(0) perspective( 600px ) rotateX( 0 ); 
	-moz-transform: translateY(0) perspective( 600px ) rotateX( 0 ); 
	-ms-transform: translateY(0) perspective( 600px ) rotateX( 0 ); 
	-o-transform: translateY(0) perspective( 600px ) rotateX( 0 ); 
	transform: translateY(0) perspective( 600px ) rotateX( 0 ); 
}

/* animate out */
.my-mfp-slide-bottom.mfp-removing .zoom-anim-dialog {
	opacity: 0;

	-webkit-transform: translateY(-10px) perspective( 600px ) rotateX( 10deg ); 
	-moz-transform: translateY(-10px) perspective( 600px ) rotateX( 10deg ); 
	-ms-transform: translateY(-10px) perspective( 600px ) rotateX( 10deg ); 
	-o-transform: translateY(-10px) perspective( 600px ) rotateX( 10deg ); 
	transform: translateY(-10px) perspective( 600px ) rotateX( 10deg ); 
}

/* Dark overlay, start state */
.my-mfp-slide-bottom.mfp-bg {
	opacity: 0;

	-webkit-transition: opacity 0.3s ease-out; 
	-moz-transition: opacity 0.3s ease-out; 
	-o-transition: opacity 0.3s ease-out; 
	transition: opacity 0.3s ease-out;
}
/* animate in */
.my-mfp-slide-bottom.mfp-ready.mfp-bg {
	opacity: 0.8;
}
/* animate out */
.my-mfp-slide-bottom.mfp-removing.mfp-bg {
	opacity: 0;
}

.mfp-with-zoom .mfp-container,
.mfp-with-zoom.mfp-bg {
	opacity: 0;
	-webkit-backface-visibility: hidden;
	/* ideally, transition speed should match zoom duration */
	-webkit-transition: all 0.3s ease-out; 
	-moz-transition: all 0.3s ease-out; 
	-o-transition: all 0.3s ease-out; 
	transition: all 0.3s ease-out;
}

.mfp-with-zoom.mfp-ready .mfp-container {
		opacity: 1;
}
.mfp-with-zoom.mfp-ready.mfp-bg {
		opacity: 0.8;
}

.mfp-with-zoom.mfp-removing .mfp-container, 
.mfp-with-zoom.mfp-removing.mfp-bg {
	opacity: 0;
}
/* End */


/* Start:/local/templates/happy/css/ion.rangeSlider.css?17754704102556*/
/* ==========================================================================
   ION RANGE SLIDER
   ========================================================================== */
.irs {
	position: relative; display: block;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	 -khtml-user-select: none;
	   -moz-user-select: none;
		-ms-user-select: none;
			user-select: none;
}

.irs-line {
	position: relative; display: block;
	overflow: hidden;
	outline: none !important;
}

.irs-line-left, .irs-line-mid, .irs-line-right {
	position: absolute; display: block;
	top: 0;
}

.irs-line-left {
	left: 0; width: 11%;
}

.irs-line-mid {
	left: 9%; width: 82%;
}

.irs-line-right {
	right: 0; width: 11%;
}

.irs-bar {
	position: absolute; display: block;
	left: 0; width: 0;
}

.irs-bar-edge {
	position: absolute; display: block;
	top: 0; left: 0;
}

.irs-shadow {
	position: absolute; display: none;
	left: 0; width: 0;
}

.irs-slider {
	position: absolute; display: block;
	cursor: default;
	z-index: 1;
}

.irs-slider.single {

}

.irs-slider.from {

}

.irs-slider.to {

}

.irs-slider.type_last {
	z-index: 2;
}

.irs-min {
	position: absolute; display: block;
	left: 0;
	cursor: default;
}
.irs-max {
	position: absolute; display: block;
	right: 0;
	cursor: default;
}

.irs-from, .irs-to, .irs-single {
	position: absolute; display: block;
	top: 0; left: 0;
	cursor: default;
	white-space: nowrap;
}

.irs-grid {
	position: absolute; display: none;
	bottom: 0; left: 0;
	width: 100%; height: 20px;
}

.irs-with-grid .irs-grid {
	display: block;
}

.irs-grid-pol {
	position: absolute;
	top: 0; left: 0;
	width: 1px; height: 8px;
	background: #000;
}

.irs-grid-pol.small {
	height: 4px;
}

.irs-grid-text {
	position: absolute;
	bottom: 0; left: 0;
	white-space: nowrap;
	text-align: center;
	font-size: 9px; line-height: 9px;
	padding: 0 3px;
	color: #000;
}

.irs-disable-mask {
	position: absolute; display: block;
	top: 0; left: -1%;
	width: 102%; height: 100%;
	cursor: default;
	background: rgba(0,0,0,0.0);
	z-index: 2;
}

.irs-disabled {
	opacity: 0.4;
}

.lt-ie9 .irs-disabled {
	filter: alpha(opacity=40);
}

.irs-hidden-input {
	position: absolute !important;
	display: block !important;
	top: 0 !important;
	left: 0 !important;
	width: 0 !important;
	height: 0 !important;
	font-size: 0 !important;
	line-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	outline: none !important;
	z-index: -9999 !important;
	background: none !important;
	border-style: solid !important;
	border-color: transparent !important;
}
/* End */


/* Start:/local/templates/happy/css/ion.rangeSlider.skinHTML5.css?17754704102385*/
/* ==========================================================================
   ION RANGE SLIDER SKIN HTML5
   ========================================================================== */
.irs {
	height: 55px;
}

.irs-with-grid {
	height: 75px;
}

.irs-line {
	height: 10px; top: 33px;
	background: #EEE;
	background: linear-gradient(to bottom, #DDD -50%, #FFF 150%); /* W3C */
	border: 1px solid #CCC;
	border-radius: 16px;
	-moz-border-radius: 16px;
}

.irs-line-left {
	height: 8px;
}
.irs-line-mid {
	height: 8px;
}
.irs-line-right {
	height: 8px;
}

.irs-bar {
	height: 10px; top: 33px;
	border-top: 1px solid #428bca;
	border-bottom: 1px solid #428bca;
	background: #428bca;
	background: linear-gradient(to top, rgba(66,139,202,1) 0%,rgba(127,195,232,1) 100%); /* W3C */
}

.irs-bar-edge {
	height: 10px; top: 33px;
	width: 14px;
	border: 1px solid #428bca;
	border-right: 0;
	background: #428bca;
	background: linear-gradient(to top, rgba(66,139,202,1) 0%,rgba(127,195,232,1) 100%); /* W3C */
	border-radius: 16px 0 0 16px;
	-moz-border-radius: 16px 0 0 16px;
}

.irs-shadow {
	height: 2px; top: 38px;
	background: #000;
	opacity: 0.3;
	border-radius: 5px;
	-moz-border-radius: 5px;
}

.lt-ie9 .irs-shadow {
	filter: alpha(opacity=30);
}

.irs-slider {
	top: 25px;
	width: 27px; height: 27px;
	border: 1px solid #AAA;
	background: #DDD;
	background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(220,220,220,1) 20%,rgba(255,255,255,1) 100%); /* W3C */
	border-radius: 27px;
	-moz-border-radius: 27px;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.3);
	cursor: pointer;
}

.irs-slider.state_hover, .irs-slider:hover {
	background: #FFF;
}

.irs-min, .irs-max {
	color: #333;
	font-size: 12px; line-height: 1.333;
	text-shadow: none;
	top: 0;
	padding: 1px 5px;
	background: rgba(0,0,0,0.1);
	border-radius: 3px;
	-moz-border-radius: 3px;
}

.lt-ie9 .irs-min, .lt-ie9 .irs-max {
	background: #ccc;
}

.irs-from, .irs-to, .irs-single {
	color: #fff;
	font-size: 14px; line-height: 1.333;
	text-shadow: none;
	padding: 1px 5px;
	background: #428bca;
	border-radius: 3px;
	-moz-border-radius: 3px;
}

.lt-ie9 .irs-from, .lt-ie9 .irs-to, .lt-ie9 .irs-single {
	background: #999;
}

.irs-grid {
	height: 27px;
}

.irs-grid-pol {
	opacity: 0.5;
	background: #428bca;
}

.irs-grid-pol.small {
	background: #999;
}

.irs-grid-text {
	bottom: 5px;
	color: #99a4ac;
}

.irs-disabled {
}

/* End */


/* Start:/local/templates/happy/components/bitrix/search.title/header-search/style.css?1775470410111*/
.title-search-result__price-old{
    color: #666;
    font-size: 14px;
    text-decoration: line-through;
}
/* End */


/* Start:/local/templates/happy/components/bitrix/sale.basket.basket.line/header-link/style.css?17754704104804*/
.bx-basket { }

.bx-basket-block {
	margin: auto;
	position: relative;
	padding-bottom: 5px;
	padding-left: 20px;
	white-space: nowrap;
	font-size: 12px;
}

.bx-basket-block > .fa {
	position: absolute;
	top: 3px;
	left: 0;
	width: 12px;
	color: #97a1ab;
}

.bx-basket-block a { margin-right: 10px; }

/*FIXED BASKET*/

@media (min-width: 768px) {
	.bx-basket-fixed {
		position: fixed;
		z-index: 100;
		overflow: hidden;
		padding-top: 10px;
		width: 200px;
		border: 1px solid #f0f0f0;
		border-radius: 1px;
		background: #fff;
		box-shadow: 0 7px 10px rgba(0, 0, 0, 0.15);
	}

	.bx-basket-fixed.top { top: 10px }

	.bx-basket-fixed.right { right: 10px }

	.bx-basket-fixed.bottom { bottom: 10px }

	.bx-basket-fixed.left { left: 10px }

	.bx-basket-fixed.bx-max-height { top: 10px; bottom: 10px; }

	.block-store-catalog-list .bx-basket-fixed.bottom { bottom: 70px }
}

@media (min-width: 768px) and (width <= 992px) {
	.block-store-catalog-list .bx-basket-fixed.bottom { bottom: 90px }
}

@media (max-width: 767px) {
	.bx-basket-fixed {
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 100;
		overflow: hidden;
		padding-top: 10px;
		border: 1px solid #f0f0f0;
		border-radius: 1px;
		background: #fff;
		box-shadow: 0 7px 10px rgba(0, 0, 0, 0.15);
	}

	.bx-basket-item-list { display: none; }

	.block-wrapper .bx-basket-fixed {
		padding-top: 0;
	}

	.block-wrapper .bx-basket-fixed .bx-hdr-profile {
		display: flex;
		justify-content: space-between;
	}

	.block-wrapper .bx-basket-fixed .bx-hdr-profile .bx-basket-block {
		padding-bottom: 0;
	}

	/*.bx-basket-fixed */
}

.bx-basket-item-list {
	position: relative;
	overflow: hidden;
	padding-bottom: 20px;
	border-top: 1px solid #f7f7f7;
}

.bx-opener .bx-basket-item-list { padding-bottom: 75px; }

.bx-max-height .bx-basket-item-list {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
}

.bx-closed .bx-basket-item-list {
	overflow: hidden;
	height: 20px;
}

.bx-basket-item-list-action {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 120;
	padding: 3px 0;
	height: 20px;
	background: #f7f7f7;
	color: #4f4f4f;
	vertical-align: middle;
	text-align: center;
	font-size: 12px;
	line-height: 14px;
	cursor: pointer;
}

.bx-basket-item-list-button-container {
	position: absolute;
	right: 0;
	bottom: 20px;
	left: 0;
	padding: 10px 0;
	border-top: 1px solid #f7f7f7;
	background: #fff;
	text-align: center;
}

.bx-basket-item-list-container {
	overflow-y: auto;
	max-height: 100%
}

.bx-basket-item-list-item {
	position: relative;
	margin-bottom: 15px;
	padding-top: 15px;
	padding-right: 10px;
	padding-left: 10px;
	border-bottom: 1px solid #f7f7f7;
}

.bx-basket-item-list-container .bx-basket-item-list-item:last-child {
	margin-bottom: 0;
	border-bottom: none;
}

.bx-basket-item-list-item-status {
	margin: 0 10px 20px;
	padding: 3px;
	border-radius: 3px;
	background: #ebebeb;
	text-align: center;
	white-space: normal;
	font-weight: bold;
	font-size: 12px;
	line-height: 16px;
}

.bx-basket-item-list-item-img {
	position: relative;
	padding-bottom: 5px;
	text-align: center;
}

.bx-basket-item-list-item-img img {
	max-width: 90px;
	height: auto;
	border: 1px solid #e6e6e6;
}

.bx-basket-item-list-item-name { padding-bottom: 5px; }

.bx-basket-item-list-item-name a {
	font-size: 13px;
	line-height: 16px;
}

.bx-basket-item-list-item-remove {
	position: absolute;
	top: -7px;
	right: 10px;
	width: 20px;
	height: 20px;
	opacity: .5;
	cursor: pointer;
	transition: 250ms linear all;
}

.bx-basket-item-list-item-remove:after,
.bx-basket-item-list-item-remove:before {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 10px;
	height: 2px;
	border-radius: 1px;
	background-color: #333;
	content: '';
	transform: translate(-50%, -50%);
}

.bx-basket-item-list-item-remove:after {
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	-moz-transform: translate(-50%, -50%) rotate(45deg);
	-ms-transform: translate(-50%, -50%) rotate(45deg);
	-o-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}

.bx-basket-item-list-item-remove:before {
	-webkit-transform: translate(-50%, -50%) rotate(135deg);
	-moz-transform: translate(-50%, -50%) rotate(135deg);
	-ms-transform: translate(-50%, -50%) rotate(135deg);
	-o-transform: translate(-50%, -50%) rotate(135deg);
	transform: translate(-50%, -50%) rotate(135deg);
}

.bx-basket-item-list-item-remove:hover { opacity: .7; }

.bx-basket-item-list-item-price-block {
	padding-bottom: 5px;
	font-size: 12px;
}

.bx-basket-item-list-item-price {
	display: inline-block;
	margin-right: 5px;
}

.bx-basket-item-list-item-price-old {
	display: inline-block;
	margin-right: 5px;
	color: #b0b0b0;
	text-decoration: line-through
}

.bx_cart_login_top .bx-hdr-profile { line-height: 1.44em; }

/* End */


/* Start:/local/templates/happy/components/bitrix/catalog.section.list/header-catalog/style.css?1775470410565*/
.header__bottom.active .header__categories ul.active ul.ul-list-custom{
    display: flex;
    flex-direction: column;
}
div.child-group__title {
    font-size: 23px;
    font-weight: 600;
    margin-bottom: 20px;
}

.child-block-section {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.child-block-section ul.ul-list-custom {
    display: flex;
    flex-direction: column;
}

@media(max-width: 767px){
    div.child-group__title{
        margin-top: 20px;
        margin-bottom: 10px;
        font-size: 20px;
    }
}
/* End */


/* Start:/local/templates/happy/components/bitrix/search.title/header-mobile-search/style.css?1775470410111*/
.title-search-result__price-old{
    color: #666;
    font-size: 14px;
    text-decoration: line-through;
}
/* End */


/* Start:/local/templates/happy/components/bitrix/form.result.new/popup_catalog/style.css?17754704101535*/
 .popup-catalog .popup__input{
     text-align: left;
     padding-left: 14px;
 }
 .popup-catalog .popup{
     max-width: 546px;
     width: 100%;
     position: fixed;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     margin: 0;
     padding: 20px;
     z-index: 100;
     overflow: hidden;
     background: white;
 }
 .popup-catalog  .popup__img {
     position: absolute;
     bottom: 0;
     right: 0;
 }
 .popup-catalog .popup .title{
     width: 100%;
     max-width: 390px;
     margin: 0;
     font-size: 24px;
     text-align: left;
 }
 .popup-catalog  .popup .popup__text {
     text-align: left;
 }
 .popup-catalog  .popup form {
     width: 100%;
     max-width: 390px;
     display: flex;

 }
 .popup-catalog .popup__submit {
     margin-left: 6px;
     max-width: 143px;
 }
 .close-popup-order {
     position: absolute;
     top: 14px;
     right: 14px;
     cursor: pointer;
     z-index: 1;
 }

 .pone_catalog-popup {
     width: 100%;
     height: 100%;
     position: fixed;
     top: 0;
     left: 0;
     background: rgba(0, 0, 0, 0.4);
     z-index: 99;
 }
 @media(max-width: 767px){
     .popup-catalog .popup .popup__text{
         width: 80%;
     }
     .popup-catalog .popup{
         max-width: 95%;
     }
     .popup-catalog .popup .title{
         margin-bottom: 12px;
         font-size: 20px;
         max-width: 290px;
     }
     .popup-catalog .popup .popup__text{
         font-size: 16px;
     }
 }
/* End */


/* Start:/local/templates/happy/components/bitrix/form.result.new/popup_cart/style.css?17754704101306*/
 .popup-basket-order .popup__input{
     text-align: left;
     padding-left: 14px;
 }
 .popup-basket-order .popup{
     max-width: 546px;
     width: 100%;
     position: fixed;
     top: 50%;
     left: 50%;
     margin: 0;
     transform: translate(-50%, -50%);
     padding: 20px;
     z-index: 100;
     overflow: hidden;
 }
 .popup-basket-order .popup__img {
     position: absolute;
     bottom: 0;
     right: 0;
 }
 .popup-basket-order  .popup .title{
     width: 100%;
     max-width: 390px;
     margin: 0;
     font-size: 24px;
 }
 .popup-basket-order  .popup .popup__text {
     text-align: left;
 }
 .popup-basket-order  .popup form {
     width: 100%;
     max-width: 390px;
     display: flex;

 }
 .popup-basket-order  .popup__submit {
     margin-left: 6px;
 }
 .close-popup-order {
     position: absolute;
     top: 14px;
     right: 14px;
     cursor: pointer;
     z-index: 1;
 }
 @media(max-width: 767px){
     .popup-basket-order .popup {
         max-width: 95%;
     }
     .popup-basket-order .popup .title{
         font-size: 24px;
         margin-bottom: 12px;
     }
     .popup-basket-order .popup__text{
         font-size: 16px;
     }
     .popup-basket-order .popup .popup__text{
         width: 80%;
     }
 }
/* End */


/* Start:/local/templates/happy/styles.css?17754704104669*/
.basket-item-price-old {
    color: #a1a1a1;
    vertical-align: middle;
    line-height: 15px;
}

.basket-item-price-old-text {
    position: relative;
    display: inline-block;
    font: 400 13px/15px "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.basket-item-price-old-text:after {
    position: absolute;
    top: 3px;
    right: 3px;
    bottom: 3px;
    left: 3px;
    background: no-repeat center url(data:image/svg+xml;charset=US-ASCII,%0A%3Csvg%20width%3D%22491px%22%20height%3D%22125px%22%20viewBox%3D%220%200%20100%25%20100%25%22%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%3E%0A%20%20%20%20%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%0A%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M1.23046875%2C121.410156%20C122.764455%2C80.3998661%20212.227997%2C52.9779911%20269.621094%2C39.1445312%20C327.014191%2C25.3110714%20400.420441%2C13.476436%20489.839844%2C3.640625%22%20stroke%3D%22%23B80909%22%20stroke-width%3D%2216%22%20/%3E%0A%20%20%20%20%3C/g%3E%0A%3C/svg%3E);
    background-size: 100% 100%;
    content: '';
}
.cart__price {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-direction: row-reverse;
}

.popup_all-page .popup {
    max-width: 448px;
    width: 100%;
    position: fixed;
    max-height: 660px;
    height: 660px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 30px 20px;
    z-index: 100;
    overflow: hidden;
    background: rgba(255, 255, 255, 1);
}
.popup_all-page .popup .title{
    max-width: 100%;
    font-size: 30px;
}
.popup_all-page .popup .btn-container {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    z-index: 1;
}
.popup_all-page .popup .btn-container .btn-copy-txt {
    max-width: 224px;
    width: 100%;
    height: 50px;
    text-align: center;
    background: transparent;
    border: 1px solid rgba(34, 34, 34, 1);
    border-radius: 6px;
    font-weight: 600;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: 0;
    color: rgba(34, 34, 34, 1);
    cursor: pointer;
}
.popup_all-page .popup .btn-container a.open_buket-popup {
    max-width: 174px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: rgba(34, 34, 34, 1);
    border-radius: 6px;
    font-weight: 600;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: 0;
    color: white;
}
.popup_all-page .popup  .popup__img {
    max-width: 100%;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.popup_all-page .popup  .close-popup-order {
    position: absolute;
    top: 14px;
    right: 14px;
    cursor: pointer;
    z-index: 1;
}
.popup_all-page .popup  .popup__img img{
    width: 100%;
}
.pone_catalog-popup {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 99;
}
.delivery-block-header {
    margin-left: 13px;
    display: flex;
    gap: 8px;
    height: 48px;
    max-width: 175px;
    width: 175px;
    background: white;
    border: 1px solid rgba(34, 34, 34, 1);
    border-radius: 6px;
    align-items: center;
    padding: 9px 14px;
}
.delivery-block-header span{
    font-weight: 500;
    font-size: 14px;
    width: 109px;
    line-height: 110.00000000000001%;
    letter-spacing: 0;
    color: rgba(34, 34, 34, 1);
}
.delivery-block-header img{
    width: 30px;
    height: 30px;
}
.product-item-info-container[data-entity="buttons-block"]{
    order: 1;
    margin-top: auto;
}
.wrapper .maxma-basket-promocode {
    display: none;

}

@media(max-width: 767px){
    .basket-item-price-old{
        top: 0;
    }
    .popup-catalog .popup__img, .popup-basket-order .popup__img {
        z-index: -1;
    }
    .header__catalog .delivery-block-header {
        display: none;
    }
    .delivery-block-header span {
        width: 70px;
        font-size: 10px;
    }
    .delivery-block-header{
        max-width: 130px;
        margin-left: -2px;
        height: 34px;
        padding: 9px 9px;
    }
    .delivery-block-header img{
        width: 24px;
        height: 24px;
    }
    .popup_all-page .popup {
        max-width: 95%;
        max-height: 500px;
        padding: 20px;
        margin: 0;
    }
    .popup_all-page .popup .title{
        font-size: 24px;
    }
    .popup_all-page .popup__text{
        font-size: 16px;
    }
}
/* End */


/* Start:/local/templates/happy/template_styles.css?1775470410146682*/
/* ==========================================================================
   FONTS
   ========================================================================== */
@font-face {
  font-family: "Raleway";
  src: url("/local/templates/happy/fonts/Raleway-v4020-Regular.woff2") format("woff2"),
    url("/local/templates/happy/fonts/Raleway-v4020-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Raleway";
  src: url("/local/templates/happy/fonts/Raleway-v4020-Bold.woff2") format("woff2"),
    url("/local/templates/happy/fonts/Raleway-v4020-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Raleway-v4020";
  src: url("/local/templates/happy/fonts/Raleway-v4020-SemiBold.woff2") format("woff2"),
    url("/local/templates/happy/fonts/Raleway-v4020-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Raleway";
  src: url("/local/templates/happy/fonts/Raleway-v4020-Medium.woff2") format("woff2"),
    url("/local/templates/happy/fonts/Raleway-v4020-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

/* ==========================================================================
   NORMALIZE
   ========================================================================== */
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-family: Raleway, sans-serif;
  color: #222;
  font-size: 1em;
  line-height: 1.5;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

html * {
  max-height: 1000000px;
}

body {
  margin: 0;
  position: relative;
  background: #fff;
  min-width: 320px;
  font-variant-numeric: lining-nums proportional-nums;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
  border-radius: 0;
  -webkit-appearance: none;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
  border-radius: 0;
  -webkit-appearance: none;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #222;
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #222;
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

input:-moz-placeholder,
textarea:-moz-placeholder {
  color: #222;
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #222;
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  color: transparent;
}

input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
  color: transparent;
}

input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: transparent;
}

input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
  color: transparent;
}

/* ==========================================================================
   HELPER CLASSES
   ========================================================================== */
.container {
  margin: auto;
  width: 1244px;
  padding: 0 20px;
}

.hidden {
  display: none;
}

.unselectable {
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

/*body::after{
	position:absolute;
	width:0;
	height:0;
	overflow:hidden;
	z-index:-1;
	content:
		url(/local/templates/happy/img/youtube-hover.svg)
		url(/local/templates/happy/img/telegram-hover.svg)
		url(/local/templates/happy/img/whatsapp-hover.svg);
}*/

.ovh {
  overflow: hidden;
}

.section {
  margin: 80px 0;
}

.section.section_top {
  margin-top: 0;
}

.h1 {
  margin: 20px 0;
}

.title {
  color: #222;
  font-size: 36px;
  font-weight: 600;
  line-height: 130%;
  margin: 0;
}

.title h1 {
  font: inherit;
  margin: 0;
}

.more {
  display: inline-block;
  position: relative;
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: 130%;
  padding: 4px 20px 5px 10px;
  border-radius: 6px;
  background: #f6f6f6;
  text-decoration: none;
}

.more:after {
  content: "";
  position: absolute;
  right: 9px;
  top: 50%;
  margin-top: -5px;
  width: 6px;
  height: 10px;
  background: url(/local/templates/happy/img/more.svg) no-repeat;
}

/* ==========================================================================
   HEADER
   ========================================================================== */
.header {
  position: relative;
  background: #fff;
  height: 150px;
  transition: all 0.2s ease-out;
}

.header__top {
  background: #f4f4f4;
}

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

.header__top .header__row {
  height: 36px;
}

.header__middle {
  background: #fff;
  position: relative;
}

.header__middle .header__row {
  height: 70px;
}

.header__bottom {
  border-top: 1px solid #f4f4f4;
  border-radius: 0 0 10px 10px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.08);
}

.header__menu ul {
  display: flex;
  margin: 0;
  padding: 0;
  list-style-type: none;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 110%;
}

.header__menu ul li+li {
  margin-left: 30px;
}

.header__menu a {
  color: #222;
  text-decoration: none;
}

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

.header__phone {
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 110%;
}

.header__phone a {
  text-decoration: none;
  color: #222;
}

.header__ratings {
  display: flex;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 110%;
}

.header__rating {
  text-decoration: none;
  color: #222;
  padding-left: 26px;
  position: relative;
}

.header__ratings>*+* {
  margin-left: 30px;
}

.header__rating:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  width: 16px;
  height: 16px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.header__rating_2gis:before {
  background-image: url(/local/templates/happy/img/2gis.webp);
}

.header__rating_yandex:before {
  background-image: url(/local/templates/happy/img/yandex.webp);
}

.header__logo {
  width: 231px;
  flex-shrink: 0;
}

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

.header__catalog {
  display: flex;
}

.header__button {
  border: 1px solid #222;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 110%;
  padding: 14px 17px 14px 47px;
  border-radius: 6px;
  background: #222;
  position: relative;
  cursor: pointer;
  margin-right: 6px;
  user-select: none;
  transition: all 0.2s ease-out;
}

.header__button:before {
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translate(0, -50%);
  width: 20px;
  height: 20px;
  background: url(/local/templates/happy/img/button.svg) no-repeat center;
  transition: all 0.2s ease-out;
}

.header__search {
  display: flex;
  width: 390px;
  position: relative;
}

.header__search button {
  display: none;
}

.header__search-close {
  display: none;
  width: 44px;
  height: 40px;
  border-radius: 6px;
  background: #222 url(/local/templates/happy/img/search-close.svg) no-repeat center;
  flex-shrink: 0;
  margin-right: 6px;
  cursor: pointer;
}

.header__search input[type="text"] {
  display: block;
  height: 48px;
  width: 100%;
  border-radius: 6px;
  border: 1px solid #d6d7db;
  background: #fff url(/local/templates/happy/img/search.svg) no-repeat;
  background-position: 14px center;
  padding: 0 14px 0 40px;
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: 120%;
  outline: none;
}

.header__search input[type="submit"] {
  display: none;
}

.header__links {
  display: flex;
  align-items: center;
  transition: all 0.2s ease-out;
}

.header__links>*+* {
  margin-left: 10px;
}

.header__link {
  width: 66px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  height: 44px;
  color: rgba(34, 34, 34, 0.6);
  text-align: center;
  font-size: 12px;
  line-height: normal;
  text-decoration: none;
  justify-content: space-between;
}

.header__link_disable {
  display: none;
}

.header__link span {
  position: absolute;
  left: 35px;
  top: -3px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 110%;
  padding: 1px 4px;
  border-radius: 40px;
  background: #222;
}

.header__link_home {
  display: none;
}

.header__link_catalog {
  display: none;
}

.header__link_home:before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(/local/templates/happy/img/home.svg) no-repeat center;
  background-size: cover;
}

.header__link_catalog:before {
  content: "";
  width: 32px;
  height: 20px;
  background: url(/local/templates/happy/img/catalog.svg) no-repeat center;
  background-size: cover;
}

.header__link_favorite:before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(/local/templates/happy/img/favorite.svg) no-repeat center;
  background-size: cover;
}

.header__link_cart:before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(/local/templates/happy/img/cart.svg) no-repeat center;
  background-size: cover;
}

.header__link_bonus:before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(/local/templates/happy/img/bonus.svg) no-repeat center;
  background-size: cover;
  flex-shrink: 0;
}

.header__link_account:before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(/local/templates/happy/img/account.svg) no-repeat center;
  background-size: cover;
}

.header__nav {
  position: relative;
}

.header__nav ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 110%;
}

.header__nav.active ul {
  display: none;
}

.header__categories {
  display: none;
}

.header__categories ul {
  display: none;
}

.header__categories ul.active {
  display: block;
}

.header__nav.active .header__categories {
  display: block;
}

.header__nav a {
  color: #222;
  text-decoration: none;
  display: flex;
  align-items: center;
  height: 43px;
  line-height: 43px;
}

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

.header__nav li.parent>a:hover {
  text-decoration: none;
}

.header__btns {
  align-items: center;
  display: none;
}

.header__btn-search {
  cursor: pointer;
  width: 25px;
  height: 24px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/btn-search.svg) no-repeat;
}

.header__btn-close {
  cursor: pointer;
  width: 25px;
  height: 24px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/btn-close.svg) no-repeat;
  margin-left: 20px;
}

.header__back {
  display: none;
  align-items: center;
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 110%;
  padding: 14px 16px;
  margin: 0 -16px;
  background: #f2f2f2;
  cursor: pointer;
}

.header__back:before {
  content: "";
  width: 7px;
  height: 14px;
  background: url(/local/templates/happy/img/back.svg) no-repeat;
  flex-shrink: 0;
  margin-right: 10px;
}

.promotion {
  border-radius: 10px;
  background: #f2c9be;
  box-shadow: 0 1px 12px 0 rgba(85, 85, 85, 0.05);
  padding: 20px;
  text-decoration: none;
  display: block;
}

.promotion_orange {
  background: #facd91;
}

.promotion__caption {
  color: #222;
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  line-height: 120%;
  margin-bottom: 20px;
}

.promotion__description {
  color: #222;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
}

.promotion__img {
  margin: 0 -12px 20px;
}

.promotion_orange .promotion__img {
  margin-left: -20px;
  margin-right: -20px;
}

.promotion__img img {
  display: block;
  width: 100%;
  height: auto;
}

.promotion__more {
  display: flex;
  justify-content: center;
}

.promotion__more span {
  border-radius: 6px;
  background: #222;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 30px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  transition: all 0.2s ease-out;
}

.promotion:hover .promotion__more span {
  background: #2f2f2f;
}

.header__right {
  display: none;
}

/* ==========================================================================
   CITY
   ========================================================================== */
.city {
  position: relative;
}

.city__value {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 110%;
  padding-left: 24px;
  padding-right: 14px;
  position: relative;
  cursor: pointer;
}

.slider__city {
  display: inline-block;
}

.slider__city .city__value {
  font: inherit;
  color: inherit;
  padding: 0 36px 0 0;
  display: inline-block;
  position: relative;
}

.slider__city .city__value span {
  display: none;
}

.slider__city .city__value span+span {
  display: inline;
}

.slider__city .city__value span+span:after {
  content: attr(data-decline);
}

.city__value:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  width: 20px;
  height: 20px;
  background: url(/local/templates/happy/img/city.svg) no-repeat center;
}

.city__value:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 0;
  width: 10px;
  height: 5px;
  background: url(/local/templates/happy/img/down.svg) no-repeat center;
  margin-top: 1px;
}

.slider__city .city__value:before {
  display: none;
}

.slider__city .city__value:after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 20px;
  height: 10px;
  background: url(/local/templates/happy/img/slider-down.svg) no-repeat;
  margin-top: 0;
}

.city__popup {
  position: absolute;
  filter: drop-shadow(0px 1px 12px rgba(85, 85, 85, 0.05));
  border-radius: 15px;
  top: 25px;
  left: 0;
  background: #fff;
  white-space: nowrap;
  padding: 15px;
  width: 358px;
  z-index: 5;
  display: none;
}

.slider__city .city__popup {
  top: 65px;
}

.city__popup:before {
  content: "";
  position: absolute;
  left: 10px;
  top: -10px;
  width: 39px;
  height: 10px;
  background: url(/local/templates/happy/img/city-arrow.webp) no-repeat;
}

.city__caption {
  color: #222;
  font-size: 15px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 14px;
}

.city__list {
  white-space: nowrap;
  display: block;
  margin: 0;
  padding: 0;
  list-style-type: none;
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: 130%;
}

.city__list a {
  color: #222;
  text-decoration: none;
}

.city__list li+li {
  margin-top: 14px;
}

.city__close {
  position: absolute;
  background: url(/local/templates/happy/img/city-close.svg) no-repeat;
  width: 10px;
  height: 10px;
  right: 15px;
  top: 15px;
  cursor: pointer;
}

/* ==========================================================================
   TOP
   ========================================================================== */
.top {
  position: relative;
}

.top__link {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.top__bg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: 0 auto;
}

.top__bg:before {
  content: "";
  position: absolute;
  width: 282px;
  height: 60px;
  left: 0;
  bottom: 0;
  background: url(/local/templates/happy/img/top-left.svg) no-repeat;
}

.top__bg:after {
  content: "";
  position: absolute;
  width: 282px;
  height: 60px;
  right: 0;
  top: 0;
  background: url(/local/templates/happy/img/top-right.svg) no-repeat;
}

.top .container {
  position: relative;
}

.top__row {
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.top__title {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 110%;
}

@media screen and (max-width: 767px) {
  .top__title {
    font-size: 16px;
  }
}

/* ==========================================================================
   HEADER-MOBILE
   ========================================================================== */
.header-mobile {
  display: none;
  border-radius: 0 0 10px 10px;
  background: #fff;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.08);
  padding: 10px 0;
}

.header-mobile__bottom {
  margin-top: 10px;
}

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

.header-mobile__logo {
  width: 175px;
}

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

.header-mobile__button {
  width: 44px;
  height: 40px;
  border-radius: 6px;
  background: #222 url(/local/templates/happy/img/button.svg) no-repeat center;
  flex-shrink: 0;
  cursor: pointer;
  margin-right: 6px;
}

.header-mobile__search {
  position: relative;
  flex-grow: 1;
}

.header-mobile__search button {
  display: none;
}

.header-mobile__search input[type="text"] {
  display: block;
  width: 100%;
  height: 40px;
  border-radius: 6px;
  border: 1px solid #d6d7db;
  background: #fff url(/local/templates/happy/img/search.svg) no-repeat;
  background-position: 10px center;
  padding: 0 10px 0 36px;
  outline: none;
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: 120%;
}

.header-mobile__search input[type="submit"] {
  display: none;
}

.header-mobile__hamburger {
  flex-shrink: 0;
  width: 25px;
  height: 24px;
  background: url(/local/templates/happy/img/hamburger.svg) no-repeat;
  cursor: pointer;
}

/* ==========================================================================
   SLIDER
   ========================================================================== */
.slider {}

.slider__item {
  position: relative;
}

.slider__item .container {
  position: relative;
}

.slider__img {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.slider__img_mobile {
  display: none;
}

.slider__block {
  height: 560px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.slider__title {
  color: #222;
  font-size: 55px;
  font-weight: 600;
  line-height: 110%;
  max-width: 590px;
}

.slider__title>span {
  display: inline-block;
}

.slider__title a {
  color: #222;
  text-underline-offset: 6px;
  text-decoration-thickness: 3px;
}

.slider__text {
  color: #222;
  font-size: 20px;
  font-weight: 500;
  line-height: 130%;
  margin-top: 30px;
}

.slider__button {
  margin-top: 30px;
  display: flex;
}

.slider__button a {
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  padding: 14.5px 40px;
  border-radius: 6px;
  background: #222;
  text-decoration: none;
  transition: all 0.2s ease-out;
}

.slider__button a:hover {
  background: #2f2f2f;
}

.slider .owl-dots {
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
}

.slider .owl-dot {
  background: #e1e1e1;
}

.slider .owl-dot.active {
  background: #e1e1e1;
}

/* ==========================================================================
   OWL-DOTS
   ========================================================================== */
.owl-dots {
  display: flex;
  justify-content: center;
  align-items: center;
}

.owl-dot {
  border-radius: 40px;
}

.owl-dot {
  width: 4px;
  height: 4px;
  border: none;
  background: #d6d7db;
  transition: all 0.2s ease-out;
  padding: 0;
  margin: 0 2px;
}

.owl-dot.active {
  width: 22px;
  height: 8px;
  background: #222;
}

.owl-dot.active+.owl-dot,
.owl-dot.m {
  width: 10px;
  height: 8px;
}

.owl-dot.active+.owl-dot+.owl-dot,
.owl-dot.s {
  width: 6px;
  height: 6px;
}

.owl-prev {
  position: absolute;
  font-size: 0;
  border: none;
  width: 34px;
  height: 34px;
  background: url(/local/templates/happy/img/owl-prev.svg) no-repeat;
  left: -64px;
  top: 50%;
  transform: translate(0, -50%);
  margin-top: -38px;
}

.owl-next {
  position: absolute;
  font-size: 0;
  border: none;
  width: 34px;
  height: 34px;
  background: url(/local/templates/happy/img/owl-next.svg) no-repeat;
  right: -64px;
  top: 50%;
  transform: translate(0, -50%);
  margin-top: -38px;
}

/* ==========================================================================
   SWIPER
   ========================================================================== */
.swiper-boot {
  position: relative;
}

.swiper-pagination {
  display: flex;
  justify-content: center;
  position: static;
}

.swiper-pagination-bullet {
  border-radius: 40px;
  width: 10px;
  height: 8px;
  border: none;
  background: #d6d7db;
  transition: all 0.2s ease-out;
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
  opacity: 1;
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet+.swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet+.swiper-pagination-bullet {
  margin-left: 4px;
}

.swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 22px;
  background: #222;
}

.swiper-button-prev {
  position: absolute;
  font-size: 0;
  border: none;
  width: 34px;
  height: 34px;
  background: url(/local/templates/happy/img/owl-prev.svg) no-repeat;
  left: -64px;
  top: 50%;
  transform: translate(0, -50%);
  margin-top: -38px;
}

.swiper-button-next {
  position: absolute;
  font-size: 0;
  border: none;
  width: 34px;
  height: 34px;
  background: url(/local/templates/happy/img/owl-next.svg) no-repeat;
  right: -64px;
  top: 50%;
  transform: translate(0, -50%);
  margin-top: -38px;
}

.swiper-button-prev:after {
  display: none;
}

.swiper-button-next:after {
  display: none;
}

/* ==========================================================================
   PRODUCT-ITEM
   ========================================================================== */
.product-item {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.js-favorite {
  position: absolute;
  z-index: 2;
  top: 6px;
  right: 6px;
  width: 30px;
  height: 30px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(1.2px);
  border-radius: 50%;
  cursor: pointer;
}

.js-favorite:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 18px;
  height: 18px;
  background: url(/local/templates/happy/img/product-favorite.svg) no-repeat;
}

.js-favorite.active:after {
  background-image: url(/local/templates/happy/img/product-favorite-active.svg?v=1);
}

.product-item-image-wrapper {
  margin-bottom: 12px;
  position: relative;
  display: block;
  overflow: hidden;
}

.product-item-image-wrapper img {
  display: block;
  width: 100%;
  height: 370px;
  object-fit: cover;
  border-radius: 6px;
}

.columns__right .product-item-image-wrapper img {
  height: 280px;
}

.product-item-title {
  max-height: 37px;
  /* flex-grow: 1; */
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.product-item-title a {
  color: #222;
  text-decoration: none;
}

.product-item-price-container {
  flex-grow: 1;
  display: flex;
  flex-wrap: wrap;
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
}

.product-item-price-old {
  margin-left: 6px;
  display: inline-block;
  vertical-align: top;
  opacity: 1;
  color: #B22222;
  font-weight: 500;
  font-size: 12px;
  text-decoration-line: line-through;
}

.product-item-button-container {
  margin-top: 12px;
}

.product-item-add a {
  color: #222;
  font-size: 15px;
  font-weight: 600;
  line-height: 130%;
  border-radius: 6px;
  border: 1px solid #f2f2f2;
  background: #f2f2f2;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.2s ease-out;
}

.product-item-add a:not(.active):hover {
  background: #2f2f2f;
  color: #fff;
}

.product-item-add.no_order a:before {
  display: none;
}

.card__fixed .product-item-add.no_order a {
  padding: 0 10px;
}

.product-item-add a:before {
  content: "";
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  margin-right: 10px;
  background: url(/local/templates/happy/img/product-add.svg) no-repeat;
  transition: all 0.2s ease-out;
}

.product-item-add a:not(.active):hover:before {
  filter: grayscale(1) brightness(1000%);
}

.product-item-add a.active {
  border-color: #222;
  background-color: #fff;
}

.product-item-scu-container {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
}

.product-item-properties {
  display: block;
  margin: 12px 0 0;
  padding: 0;
  list-style-type: none;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
}

.product-item-properties li+li {
  margin-top: 3px;
}

.product-item-scu-item-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 5px 0 0;
  padding: 0;
  list-style-type: none;
}

.product-item [id$="sku_tree"] {
  padding-top: 10px;
}

.product-item-scu-item-text-container {
  white-space: nowrap;
  padding: 4px 8px;
  background: #f6f6f6;
  border: 1px solid #f6f6f6;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease-out;
}

.product-item-scu-item-text-container.selected {
  background: #fff;
  border-color: #222;
  cursor: default;
}

.product-item-image-alternative {
  display: none;
}

.product-item-container .product-item-info-container.product-item-hidden {
  display: none;
  opacity: 0;
  transition: opacity 300ms ease;
}

.bx-touch .product-item-info-container.product-item-touch-hidden {
  display: none !important;
}

/*.bx-touch .product-item-info-container.product-item-hidden,*/
/*.bx-no-touch .product-item-container.hover .product-item-info-container.product-item-hidden,*/
/*.product-item-line-card .product-item-container .product-item-info-container.product-item-hidden {*/
/*	display: block;*/
/*	opacity: 1;*/
/*}*/

.product-item-image-slider-slide-container {
  overflow: hidden;
  border-radius: 6px;
}

.product-item-image-slider-slide-container img {
  border-radius: 0;
}

.product-item-image-slide {
  position: relative;
  display: none;
  height: 100%;
  background-color: #fff;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.6s ease-in-out left;
}

@media all and (transform-3d),
(-webkit-transform-3d) {
  .product-item-image-slide {
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    perspective: 1000px;
  }

  .product-item-image-slide.next,
  .product-item-image-slide.active.right {
    left: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  .product-item-image-slide.prev,
  .product-item-image-slide.active.left {
    left: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  .product-item-image-slide.next.left,
  .product-item-image-slide.prev.right,
  .product-item-image-slide.active {
    left: 0;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.product-item-image-slider-slide-container>.active,
.product-item-image-slider-slide-container>.next,
.product-item-image-slider-slide-container>.prev {
  display: block;
}

.product-item-image-slider-slide-container>.active {
  left: 0;
}

.product-item-image-slider-slide-container>.next,
.product-item-image-slider-slide-container>.prev {
  position: absolute;
  top: 0;
  width: 100%;
}

.product-item-image-slider-slide-container>.next {
  left: 100%;
}

.product-item-image-slider-slide-container>.prev {
  left: -100%;
}

.product-item-image-slider-slide-container>.next.left,
.product-item-image-slider-slide-container>.prev.right {
  left: 0;
}

.product-item-image-slider-progress-bar-container {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
}

.product-item-image-slider-progress-bar {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background-color: #f42c2c;
  opacity: 0.8;
}

.product-item-image-slider-control-container {
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  z-index: 15;
  padding: 0;
  text-align: center;
  opacity: 0;
  transition: opacity 300ms ease;
}

.product-item-container.hover .product-item-image-slider-control-container,
.product-item-line-card:hover .product-item-image-slider-control-container {
  opacity: 1;
}

.product-item-image-slider-control,
.product-item-image-slider-control.active {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.8);
  opacity: 0.6;
  cursor: pointer;
  transition: all 300ms ease;
}

.product-item-image-slider-control.active {
  opacity: 1;
}

.product-item-image-slider-control:hover,
.product-item-image-slider-control.active:hover {
  cursor: pointer;
}

.hit-block {
  position: absolute;
  z-index: 2;
  top: 6px;
  left: 6px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: center;
}

.hit-block-container {
  margin-bottom: 40px;
}

.hit-block-container .products-control {
  max-width: 200px;
  margin-top: 40px;
}

.hit-block-container .products {
  padding-top: 20px;
}

.product-hit {
  width: max-content;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(1.2px);
  border-radius: 25px;
  padding: 0 10px;
  cursor: pointer;
  color: #222;
  font-size: 12px;
  font-weight: 500;
  line-height: 30px;
}

@media screen and (max-width: 767.98px) {
  .cart__item .product-hit {
    padding: 0 5px;
    font-size: 10px;
    line-height: 20px;
  }
}

.header__nav .parent ul.child-block-section {
  display: none;
  flex-wrap: wrap;
  position: absolute;
  width: 100%;
  background: white;
  padding: 20px;
  gap: 20px;
  z-index: 10;
  top: 100%;
  left: 0;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.08);
  border-radius: 10px;
  justify-content: flex-start;
}

.header:not(:has(.header__button.active)) .header__nav .parent:hover>ul.child-block-section {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  /* 3 колонки */
  gap: 5px;
}

.header__nav ul li.parent .child-block-section li a {
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
  padding: 10px 12px;
  border-radius: 6px;
  /*background: #f6f6f6;*/
  text-decoration: none;
  display: block;
  width: max-content;
}

/* ==========================================================================
   PRODUCT
   ========================================================================== */
.product {
  position: relative;
}

.product__hit {
  position: absolute;
  z-index: 1;
  top: 6px;
  left: 6px;
  width: 30px;
  height: 30px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(1.2px);
  border-radius: 50%;
  cursor: pointer;
  color: #222;
  font-size: 12px;
  font-weight: 500;
  line-height: 30px;
  text-align: center;
}

.product__favorite {
  position: absolute;
  z-index: 1;
  top: 6px;
  right: 6px;
  width: 30px;
  height: 30px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(1.2px);
  border-radius: 50%;
  cursor: pointer;
}

.product__favorite:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 18px;
  height: 18px;
  background: url(/local/templates/happy/img/product-favorite.svg) no-repeat;
}

.product__img {
  margin-bottom: 12px;
  position: relative;
}

.product__img img {
  display: none;
  width: 100%;
  height: auto;
  border-radius: 6px;
}

.product__img img.active {
  display: block;
}

.product__dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3px;
  top: 0;
  display: flex;
  gap: 5px;
  opacity: 0;
  transition: all 0.2s ease-out;
}

.product__img:hover .product__dots {
  opacity: 1;
}

.product__dot {
  flex-grow: 1;
  border-bottom: 1px solid #222;
  opacity: 0.4;
  transition: all 0.2s ease-out;
}

.product__dot.active {
  opacity: 1;
}

.product__name {
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 12px;
}

.product__name a {
  color: #222;
  text-decoration: none;
}

.product__price {
  display: flex;
  flex-wrap: wrap;
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
}

.product__price span {
  margin-left: 6px;
  display: inline-block;
  vertical-align: top;
  opacity: 0.6;
  color: #222;
  font-size: 10px;
  line-height: 13px;
  font-weight: 400;
  text-decoration-line: line-through;
}

.product__buttons {
  margin-top: 12px;
}

.product__add a {
  color: #222;
  font-size: 15px;
  font-weight: 600;
  line-height: 130%;
  border-radius: 6px;
  border: 1px solid #f2f2f2;
  background: #f2f2f2;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.2s ease-out;
}

.product__add a:hover {
  background: #2f2f2f;
  color: #fff;
}

.product__add a:before {
  content: "";
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  margin-right: 10px;
  background: url(/local/templates/happy/img/product-add.svg) no-repeat;
  transition: all 0.2s ease-out;
}

.product__add a:hover:before {
  filter: grayscale(1) brightness(1000%);
}

.product__add a.active {
  border-color: #222;
  background-color: #fff;
  pointer-events: none;
}

/* ==========================================================================
   CAROUSEL
   ========================================================================== */
.carousel__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
}

.carousel__row .more {
  margin: 10px 0;
}

.carousel .owl-dots {
  margin-top: 30px;
}

.carousel .swiper-pagination {
  margin-top: 30px;
}

.carousel .owl-stage {
  display: flex;
}

.product-item-container {
  height: 100% !important;
}

/*.carousel .owl-dots {*/
/*	margin-top: -70px;*/
/*}*/

/*.carousel .product-item-container {*/
/*	margin-bottom: 100px;*/
/*}*/

/* ==========================================================================
   SHOWCASE
   ========================================================================== */
.showcase .title {
  margin-bottom: 30px;
}

.showcase__text {
  color: #000;
  font-size: 16px;
  line-height: 140%;
}

.showcase__text a {
  color: inherit;
}

.showcase__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px 20px;
}

.showcase__all {
  display: flex;
  justify-content: center;
  margin-top: 40px;
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
}

.showcase__all a {
  color: #222;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
  padding-right: 15px;
  position: relative;
}

.showcase__all a:after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -5.5px;
  width: 6px;
  height: 13px;
  background: url(/local/templates/happy/img/showcase-all.svg) no-repeat;
}

/* ==========================================================================
   CATEGORIES
   ========================================================================== */
.categories .title {
  margin-bottom: 30px;
}

.categories__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px 20px;
}

.category {
  color: #222;
  font-size: 18px;
  font-weight: 600;
  line-height: 130%;
  text-decoration: none;
  padding: 15px;
  border-radius: 10px;
  background-color: #f6f6f6;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom right;
  height: 150px;
}

/* ==========================================================================
   GRAB
   ========================================================================== */
.grab__block {
  padding: 66px;
  border-radius: 10px;
  text-align: center;
  overflow: hidden;
  position: relative;
}

.grab .title {
  margin-bottom: 26px;
}

.grab__description {
  color: #222;
  font-size: 18px;
  font-weight: 500;
  line-height: 130%;
}

.grab__button {
  margin-top: 26px;
  display: flex;
  justify-content: center;
}

.grab__button a {
  display: inline-block;
  border-radius: 6px;
  background: #222;
  padding: 15.5px 30px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  text-decoration: none;
  transition: all 0.2s ease-out;
}

.grab__button a:hover {
  background: #2f2f2f;
}

.grab__img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 365px;
}

.grab__img img {
  display: block;
  width: 100%;
  height: auto;
}

.grab__img+.grab__img {
  left: auto;
  right: 0;
  transform: scale(-1, 1);
}

/* ==========================================================================
   ADVANTAGES
   ========================================================================== */
.advantages .title {
  margin-bottom: 20px;
}

.advantages__columns {
  display: flex;
}

.advantages__left {
  flex-grow: 1;
}

.advantages__right {
  width: 490px;
  flex-shrink: 0;
  margin-left: 20px;
}

.advantages__text {
  color: #222;
  font-size: 16px;
  line-height: 150%;
}

.advantages__text>*:first-child {
  margin-top: 0;
}

.advantages__text>*:last-child {
  margin-bottom: 0;
}

.advantages__text p {
  margin: 20px 0;
}

.advantages__text ul {
  margin: 20px 0;
  padding: 0;
  list-style-type: none;
}

.advantages__text ul li {
  padding-left: 25px;
  position: relative;
}

.advantages__text ul li+li {
  margin-top: 6px;
}

.advantages__text ul li:before {
  content: "";
  position: absolute;
  left: 10px;
  top: 10px;
  width: 3px;
  height: 3px;
  background: #222;
  border-radius: 50%;
}

.advantages__text b {
  font-weight: 600;
}

.advantages__cover img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.advantages__grid {
  margin-top: 50px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
}

.advantages__caption {
  color: #222;
  font-size: 32px;
  font-weight: 600;
  line-height: 120%;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid rgba(34, 34, 34, 0.4);
}

.advantages__description {
  color: #222;
  font-size: 16px;
  line-height: 150%;
  max-width: 200px;
}

/* ==========================================================================
   BUSINESS
   ========================================================================== */
.business__columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  align-items: center;
}

.business__cover img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.business .title {
  margin-bottom: 20px;
}

.business__right {
  order: 2;
}

.business__left {
  order: 1;
}

/* ==========================================================================
   STOCK
   ========================================================================== */
.stock__grid {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 1fr;
}

.stock__item {
  border-radius: 10px;
  overflow: hidden;
  padding: 30px;
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: cover;
  box-shadow: 0 1px 12px 0 rgba(85, 85, 85, 0.05);
  text-decoration: none;
}

.stock__item .title {
  margin-bottom: 20px;
  max-width: 340px;
  line-height: 120%;
}

.stock__text {
  color: #222;
  font-size: 18px;
  font-weight: 500;
  line-height: 130%;
  max-width: 340px;
}

.stock__more {
  margin-top: 20px;
}

.stock__more {
  display: flex;
}

.stock__more span {
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  padding: 14px 30px;
  border-radius: 6px;
  background: #222;
  transition: all 0.2s ease-out;
}

.stock__item:hover .stock__more span {
  background: #2f2f2f;
}

/* ==========================================================================
   MODE
   ========================================================================== */
.mode__columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  align-items: center;
}

.mode__cover img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.mode .title {
  margin-bottom: 20px;
  white-space: nowrap;
}

/* ==========================================================================
   GRIP
   ========================================================================== */
.grip__block {
  padding: 40px;
  overflow: hidden;
  background: #f6f6f6;
  border-radius: 10px;
  position: relative;
}

.grip .title {
  margin-bottom: 20px;
}

.grab__text {
  color: #222;
  font-size: 18px;
  font-weight: 500;
  line-height: 130%;
  margin-bottom: 20px;
}

.grip__row {
  display: flex;
}

.grip__input {
  height: 50px;
  border-radius: 6px;
  border: 1px solid #d6d7db;
  background: rgba(255, 255, 255, 0.7);
  width: 300px;
  padding: 0 20px;
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: normal;
  outline: none;
  transition: all 0.2s ease-out;
}

.grip__input.error {
  border-color: #f00;
}

.grip__submit {
  width: 230px;
  height: 50px;
  border-radius: 6px;
  background: #222;
  margin-left: 8px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  border: none;
  transition: all 0.2s ease-out;
}

.grip__submit:hover {
  background: #2f2f2f;
}

.grip__agree {
  margin-top: 9px;
  color: #222;
  font-size: 11px;
  font-weight: 500;
  line-height: 130%;
}

.grip__agree a {
  color: #222;
}

.grip__block:after {
  content: "";
  position: absolute;
  right: 40px;
  bottom: 0;
  width: 297px;
  height: 260px;
  background: url(/local/templates/happy/img/grip.webp) no-repeat;
  background-size: cover;
}

/* ==========================================================================
   TELEGRAM
   ========================================================================== */
.telegram__columns {
  display: flex;
  align-items: center;
}

.telegram .title {
  margin-bottom: 20px;
}

.telegram__left {
  width: 388px;
  flex-shrink: 0;
  margin-right: 20px;
}

.telegram__right {
  flex-grow: 1;
}

.telegram__text {
  color: #222;
  font-size: 18px;
  line-height: 150%;
}

.telegram__button {
  display: flex;
  margin-top: 20px;
}

.telegram__right .telegram__button {
  display: none;
}

.telegram__button a {
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  padding: 17.5px 30px 17.5px 64px;
  border-radius: 6px;
  background: #222;
  text-decoration: none;
  position: relative;
  transition: all 0.2s ease-out;
}

.telegram__button a:before {
  content: "";
  position: absolute;
  left: 30px;
  top: 50%;
  transform: translate(0, -50%);
  width: 22px;
  height: 22px;
  background: url(/local/templates/happy/img/telegram-button.svg) no-repeat;
}

.telegram__button a:hover {
  background: #2f2f2f;
}

.telegram__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.telegram__grid img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 6px;
}

.telegram__grid>*:first-child {
  grid-column: span 2;
  grid-row: span 2;
}

/* ==========================================================================
   CONTACTS
   ========================================================================== */
.contacts {}

.contacts .title {
  margin-bottom: 20px;
}

.contacts__description {
  color: #222;
  font-size: 18px;
  line-height: 150%;
  margin-bottom: 20px;
}

.contacts__columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.contacts__map {
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 1px 12px 0 rgba(85, 85, 85, 0.05);
}

.contacts__map iframe {
  display: block;
  width: 100%;
  height: 260px;
}

.contacts__map img {
  display: block;
  width: 100%;
  height: 260px;
  object-fit: cover;
}

.contacts__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.contacts__item {
  border-radius: 10px;
  background: #f6f6f6;
  padding: 16px 15px 18px;
}

.contacts__item_address:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url(/local/templates/happy/img/icon-address.svg) no-repeat;
  margin-bottom: 10px;
}

.contacts__item_time:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url(/local/templates/happy/img/icon-time.svg) no-repeat;
  margin-bottom: 10px;
}

.contacts__item_phone:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url(/local/templates/happy/img/icon-phone.svg) no-repeat;
  margin-bottom: 10px;
}

.contacts__item_socialize:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url(/local/templates/happy/img/icon-socialize.svg) no-repeat;
  margin-bottom: 10px;
}

.contacts__caption {
  color: #222;
  font-size: 13px;
  line-height: 130%;
  margin-bottom: 4px;
  opacity: 0.6;
}

.contacts__text {
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
}

.contacts__item_phone .contacts__text a {
  color: #222;
  text-decoration: none;
}

.contacts__text>*:first-child {
  margin-top: 0;
}

.contacts__text>*:last-child {
  margin-bottom: 0;
}

.contacts__text p {
  margin: 4px 0;
}

/* ==========================================================================
   BREADCRUMBS
   ========================================================================== */
.breadcrumbs {
  margin: 20px 0;
  color: #a7a7a7;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
}

.breadcrumbs ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.breadcrumbs ul li:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 3px;
  height: 3px;
  background: #a7a7a7;
  border-radius: 50%;
  margin: 0 6px;
}

.breadcrumbs ul li:last-child:after {
  display: none;
}

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

/* ==========================================================================
   PAGE
   ========================================================================== */
.page {
  color: #000;
  font-size: 16px;
  line-height: 140%;
  margin-bottom: 80px;
}

.page a {
  color: inherit;
}

.page p {
  margin: 1em 0;
}

.page__columns {
  display: flex;
}

.page__left {
  flex-grow: 1;
}

.page__left>*:first-child,
.page .container>*:first-child {
  margin-top: 0;
}

.page__left>*:last-child,
.page .container>*:last-child {
  margin-bottom: 0;
}

.page__right {
  width: 490px;
  flex-shrink: 0;
  margin-left: 20px;
}

.page__gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.page__gallery img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.page__gallery a {
  display: block;
}

.page__gallery *:last-child {
  grid-column: span 2;
}

.page_about ul {
  display: grid;
  gap: 14px;
  grid-template-columns: 1fr 1fr;
  margin: 20px 0;
  padding: 0;
  list-style-type: none;
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
}

.page_about ul li {
  border-radius: 10px;
  background: #f6f6f6;
  padding: 15px;
  display: flex;
}

.page_about ul li:before {
  content: "";
  flex-shrink: 0;
  width: 22px;
  height: 38px;
  background: url(/local/templates/happy/img/flower.svg) no-repeat;
  margin-right: 14px;
}

.page__edges {
  margin-top: 60px;
}

.edges__items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  text-align: center;
}

.edges .title {
  margin-bottom: 10px;
}

.edges__text {
  color: #222;
  font-size: 16px;
  line-height: 150%;
}

/* ==========================================================================
   MENTION
   ========================================================================== */
.mention .title {
  margin-bottom: 30px;
}

.mention__wrapper {
  max-width: 592px;
}

.mention__tabs {
  display: flex;
  max-width: 358px;
}

.mention__tab {
  max-width: 179px;
  flex-grow: 1;
  color: #222;
  font-size: 17px;
  line-height: 140%;
  padding: 0 4px 5px 4px;
  border-bottom: 2px solid #d9d9d9;
  opacity: 0.6;
  cursor: pointer;
  transition: all 0.2s ease-out;
}

.mention__tab.active {
  border-color: #222;
  opacity: 1;
  cursor: default;
}

.mention__tab_yandex:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 22px;
  height: 22px;
  background: url(/local/templates/happy/img/mention-yandex.webp) no-repeat;
  background-size: cover;
  margin-right: 6px;
}

.mention__tab_google:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 22px;
  height: 22px;
  background: url(/local/templates/happy/img/mention-google.webp) no-repeat;
  background-size: cover;
  margin-right: 6px;
}

.mention__blocks {
  margin-top: 20px;
}

.mention__block {
  display: none;
}

.mention__block>div {
  max-width: 560px;
  width: auto !important;
}

.mention__block img {
  display: block;
  width: 100%;
  height: auto;
}

.mention__block.active {
  display: block;
}

/* ==========================================================================
   COLUMNS
   ========================================================================== */
.categories+.columns {
  margin-top: 40px;
}

.columns__row {
  display: flex;
}

.columns__left {
  width: 250px;
  margin-right: 20px;
  position: relative;
  flex-shrink: 0;
}

.columns__left .menu {
  display: none;
}

.columns__right {
  width: 934px;
}

.filter-button {
  width: 36px;
  height: 36px;
  border-radius: 6px;
  background: #f3f3f3 url(/local/templates/happy/img/filter-button.svg) no-repeat center;
  display: none;
  cursor: pointer;
}

.sort {
  width: 224px;
  position: absolute;
  top: 0;
  left: 270px;
}

.select {
  position: relative;
  z-index: 3;
}

.select__value {
  border-radius: 6px;
  border: 1px solid #d6d7db;
  background: #fff;
  color: #5e5e5e;
  font-size: 14px;
  font-weight: 500;
  line-height: 120%;
  height: 37px;
  display: flex;
  width: 100%;
  align-items: center;
  padding: 0 32px 0 12px;
  cursor: pointer;
  user-select: none;
  position: relative;
  z-index: 1;
}

.select__value:after {
  content: "";
  position: absolute;
  right: 12px;
  top: 14px;
  width: 12px;
  height: 7px;
  background: url(/local/templates/happy/img/icon-select.svg) no-repeat;
  transition: all 0.2s ease-out;
}

.select.active .select__value:after {
  transform: rotate(-180deg);
}

.select__options {
  position: absolute;
  left: 0;
  right: 0;
  top: 6px;
  border: 1px solid #d6d7db;
  background: #fff;
  padding-top: 31px;
  border-radius: 6px;
  color: #5e5e5e;
  font-size: 14px;
  font-weight: 500;
  line-height: 120%;
  display: none;
  padding-bottom: 4px;
}

.select__option {
  padding: 8px 12px;
  cursor: pointer;
}

.select__option.active {
  background: #f6f6f6;
  cursor: default;
}

/* ==========================================================================
   PRODUCTS
   ========================================================================== */
.products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px 20px;
  padding-top: 57px;
}

.products-wrapper .products {
  padding-top: 0;
}

.pagination {
  margin-top: 40px;
}

.pagination__more {
  max-width: 358px;
  margin: auto;
}

.pagination__more a {
  display: block;
  width: 100%;
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  border-radius: 6px;
  background: #222;
  padding: 14px;
  text-decoration: none;
}

.pagination__more+.pagination__items {
  margin-top: 16px;
}

.pagination__items {
  display: flex;
  gap: 10px;
  justify-content: center;
  color: #222;
  text-align: center;
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 100%;
}

.pagination__items a,
.pagination__items b,
.pagination__items span {
  color: inherit;
  border-radius: 6px;
  border: 1px solid #f2f2f2;
  background: #fff;
  width: 40px;
  height: 40px;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pagination__items b {
  background: #222;
  color: #fff;
  font: inherit;
}

.pagination__items .pagination__dots {
  border-color: transparent;
}

.pagination .pagination__prev {
  background: url(/local/templates/happy/img/prev-pagination.svg) no-repeat center;
  font-size: 0;
}

.pagination .pagination__next {
  background: url(/local/templates/happy/img/next-pagination.svg) no-repeat center;
  font-size: 0;
}

.pagination .disabled {
  opacity: 0.6;
}

/* ==========================================================================
   MENU
   ========================================================================== */
.menu {
  border-radius: 6px;
  border: 1px solid #d6d7db;
  padding: 16px;
}

.menu__title {
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 16px;
}

.menu__list {
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 120%;
}

.menu__list a {
  color: #222;
  text-decoration: none;
}

.menu__list ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.menu__list li+li {
  margin-top: 14px;
}

.menu__list a {
  padding-left: 0;
  position: relative;
  text-decoration: underline;
  text-underline-offset: 1px;
  text-decoration-thickness: 1px;
  text-decoration-color: transparent;
  transition: all 0.2s ease-out;
}

.columns__left .menu__list a:before {
  display: none;
}

.menu__list a:hover {
  text-decoration-color: #222;
}

li.list-parent {
  position: relative;
}

.list-parent span.arrow_open {
  position: absolute;
  right: 0;
  top: 1px;
  cursor: pointer;
  transition: .5s;
}

.list-parent span.arrow_open.active {
  transform: rotate(90deg);
}

.menu__list a:before {
  content: "";
  position: absolute;
  left: 0;
  top: 1px;
  width: 10px;
  height: 13px;
  background: url(/local/templates/happy/img/icon-menu.svg) no-repeat;
}

.menu__list .children-sections a:before {
  display: none;
}

.menu__list .children-sections {
  margin-top: 15px;
  padding-left: 15px;
  overflow-y: auto;
  height: 300px;
}

.menu__list .children-sections.d-none {
  display: none;
}

/* ==========================================================================
       FILTER
       ========================================================================== */
.menu+.filter {
  margin-top: 16px;
}

.menu+.bx-filter {
  margin-top: 0;
}

.filter {
  border-radius: 6px;
  border: 1px solid #d6d7db;
  padding: 16px;
  transition: all 0.2s ease-out;
}

.bx-filter {
  border-radius: 6px;
  border: 1px solid #d6d7db;
  padding: 16px;
  transition: all 0.2s ease-out;
}

.filter__block+.filter__block {
  margin-top: 24px;
}

.filter__title {
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 16px;
}

.bx-filter-title {
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 16px;
}

.filter__caption {
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 120%;
  position: relative;
  padding-right: 20px;
  cursor: pointer;
}

.filter__caption:after {
  content: "";
  position: absolute;
  right: 0;
  top: 5px;
  width: 12px;
  height: 7px;
  background: url(/local/templates/happy/img/icon-filter.svg);
  transition: all 0.2s ease-out;
}

.bx-filter-parameters-box-title {
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 120%;
  position: relative;
  padding-right: 20px;
  cursor: pointer;
}

.bx-filter-parameters-box-title i {
  content: "";
  position: absolute;
  right: 0;
  top: 5px;
  width: 12px;
  height: 7px;
  background: url(/local/templates/happy/img/icon-filter.svg);
  transition: all 0.2s ease-out;
  transform: rotate(-90deg);
}

.filter__block.active .filter__caption:after {
  transform: rotate(0);
}

.bx-filter-parameters-box.bx-active .bx-filter-parameters-box-title i {
  transform: rotate(0);
}

.filter__content {
  padding-top: 14px;
  display: none;
}

.bx-filter-block {
  padding-top: 14px;
  display: none;
}

.bx-active .bx-filter-block {
  display: block;
}

.filter__content.active {
  display: block;
}

.range+.radio {
  margin-top: 18px;
}

.radio {
  display: flex;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
  cursor: pointer;
  user-select: none;
}

.radio+.radio {
  margin-top: 12px;
}

.radio i {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px solid #b1b1b1;
  background: #fff;
  margin-right: 10px;
  flex-shrink: 0;
  position: relative;
  transition: all 0.2s ease-out;
}

.radio input:checked+i {
  border-color: #222;
}

.radio input+i:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #222;
  opacity: 0;
  transition: all 0.2s ease-out;
}

.radio input:checked+i:after {
  opacity: 1;
}

.radio input {
  display: none;
}

.radio b {
  opacity: 0.4;
  font-weight: inherit;
  margin-left: 10px;
}

.checkbox {
  display: flex;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
  cursor: pointer;
  user-select: none;
}

.checkbox+.checkbox {
  margin-top: 12px;
}

.checkbox i {
  width: 20px;
  height: 20px;
  border-radius: 2px;
  border: 1px solid #b1b1b1;
  background: #fff;
  margin-right: 10px;
  flex-shrink: 0;
  position: relative;
  transition: all 0.2s ease-out;
}

.checkbox input:checked+i {
  border-color: #222;
  background: #222;
}

.checkbox input+i:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 14px;
  height: 11px;
  background: url(/local/templates/happy/img/icon-checkbox.svg) no-repeat;
  opacity: 0;
  transition: all 0.2s ease-out;
}

.checkbox input:checked+i:after {
  opacity: 1;
}

.checkbox input {
  display: none;
}

.checkbox b {
  opacity: 0.4;
  font-weight: inherit;
  margin-left: 10px;
}

.filter__buttons {
  margin-top: 16px;
}

.filter__apply {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: #fff;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  height: 38px;
  border-radius: 6px;
  background: #222;
  border: none;
  transition: all 0.2s ease-out;
}

.filter__apply:hover {
  background: #2f2f2f;
}

#set_filter {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: #fff;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  height: 38px;
  border-radius: 6px;
  background: #222;
  border: none;
  transition: all 0.2s ease-out;
}

#set_filter:hover {
  background: #2f2f2f;
}

.filter__reset {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 6px;
  color: #222;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  height: 38px;
  border-radius: 6px;
  border: 1px solid #222;
  background: #fff;
}

#del_filter {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 6px;
  color: #222;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  height: 38px;
  border-radius: 6px;
  border: 1px solid #222;
  background: #fff;
}

.filter__reset:before {
  content: "";
  flex-shrink: 0;
  margin-right: 10px;
  width: 10px;
  height: 10px;
  background: url(/local/templates/happy/img/icon-reset.svg) no-repeat;
}

#del_filter:before {
  content: "";
  flex-shrink: 0;
  margin-right: 10px;
  width: 10px;
  height: 10px;
  background: url(/local/templates/happy/img/icon-reset.svg) no-repeat;
}

.bx-filter-parameters-box-container_range {
  border-radius: 6px;
  border: 1px solid #dfe0e6;
  background: #fff;
  height: 40px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
  padding: 0 10px;
}

.bx-ui-slider-track-container {
  position: absolute;
  left: 6px;
  right: 6px;
  bottom: 0;
}

.bx-ui-slider-track {
  height: 2px;
  position: relative;
}

.bx-ui-slider-pricebar-vn {
  background: #a6a7ab;
  position: absolute;
  top: 0;
  bottom: 0;
}

.bx-ui-slider-pricebar-v {
  background: #222;
  position: absolute;
  top: 0;
  bottom: 0;
}

.bx-ui-slider-part {
  display: none;
}

.bx-ui-slider-handle {
  position: absolute;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.15);
  border: none;
  top: -7px;
}

.bx-ui-slider-handle.left {
  margin-left: -8px;
}

.bx-ui-slider-handle.right {
  margin-right: -8px;
}

.bx-ui-slider-handle:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #222;
}

.bx-filter-parameters-box-container-block .bx-ft-sub {
  display: none;
}

.bx-filter-parameters-box-container-block input {
  border: none;
  background: transparent;
  padding: 0;
}

.bx-filter-container-modef {
  display: none;
}

.bx-filter-parameters-box {
  position: relative;
}

.bx-filter-parameters-box+.bx-filter-parameters-box {
  margin-top: 24px;
}

.bx-filter-input-checkbox {
  display: flex;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
  cursor: pointer;
  user-select: none;
}

.bx-filter-input-checkbox input {
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 2px;
  border: 1px solid #b1b1b1;
  background: #fff;
  margin-right: 10px;
  flex-shrink: 0;
  position: relative;
  transition: background-color 0.2s ease-out, border-color 0.2s ease-out;
}

.bx-filter-input-checkbox input:checked {
  border-color: #222;
  background: #222 url(/local/templates/happy/img/icon-checkbox.svg) no-repeat center;
}

.bx-filter-input-checkbox span span {
  opacity: 0.4;
  font-weight: inherit;
  margin-left: 10px;
}

/* ==========================================================================
   RANGE
   ========================================================================== */
.range {
  border-radius: 6px;
  border: 1px solid #dfe0e6;
  background: #fff;
  height: 40px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
  padding: 0 10px;
}

.range__slider {
  position: absolute;
  left: 6px;
  right: 6px;
  bottom: 0;
}

.range .irs {
  height: 2px;
}

.range .irs-line {
  top: 0;
  height: 2px;
  background: #a6a7ab;
  border: none;
  border-radius: 0;
}

.range .irs-bar {
  top: 0;
  height: 2px;
  background: #222;
  border: none;
  border-radius: 0;
}

.range .irs-slider {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.15);
  border: none;
  top: -7px;
}

.range .irs-slider:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #222;
}

/* ==========================================================================
   TEXT
   ========================================================================== */
.text {
  color: #222;
  font-size: 16px;
  line-height: 150%;
}

.text .container>*:first-child {
  margin-top: 0;
}

.text .container>*:last-child {
  margin-bottom: 0;
}

.text h2 {
  font-size: 36px;
  font-weight: 600;
  line-height: 130%;
  margin: 30px 0;
}

/* ==========================================================================
   SUBCATEGORIES
   ========================================================================== */
.subcategories {
  margin-bottom: 30px;
  margin-top: 20px;
}

.categories+.subcategories {
  margin-top: 30px;
}

.subcategories__row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;

}

.subcategories__row.open-list {
  height: 84px;
  overflow: hidden;
}

.subcategories__row a {
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
  padding: 8px 12px;
  height: max-content;
  border-radius: 6px;
  background: #f6f6f6;
  text-decoration: none;
}

.subcategories__more {
  margin-top: 14px;
  color: #222;
  font-size: 13px;
  font-weight: 500;
  line-height: 130%;

}

.subcategories__more a {
  color: inherit;
  text-decoration: none;
  padding-right: 20px;
  position: relative;
}

.subcategories__more a:after {
  content: "";
  position: absolute;
  top: 6px;
  right: 0;
  width: 10px;
  height: 5px;
  background: url(/local/templates/happy/img/subcategories-down.svg) no-repeat;
}

/* ==========================================================================
   CARD
   ========================================================================== */
.card {}

.card__images-wrapper {
  display: none;
}

.card__images-wrapper.active {
  display: block;
  position: relative;
}

.card__columns {
  display: flex;
}

.card__left {
  width: 490px;
  flex-shrink: 0;
  margin-right: 20px;
}

.card__right {
  flex-grow: 1;
}

.card__slide img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.card__slider .owl-dots {
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
}

.card__slider .owl-dot.active,
.card__slider .owl-dot {
  background: #fff;
  opacity: 0.6;
}

.card__previews {
  margin-top: 10px;
  gap: 12px 10px;
  display: flex;
  flex-wrap: wrap;
}

.card__previews a {
  width: 80px;
  flex-shrink: 0;
  display: block;
  border-radius: 10px;
  overflow: hidden;
  opacity: 0.3;
  transition: all 0.2s ease-out;
}

.card__previews a:hover {
  opacity: 0.6;
}

.card__previews a.active {
  opacity: 1;
}

.card__previews img {
  display: block;
  width: 100%;
  height: auto;
}

.card__title {
  color: #222;
  font-size: 26px;
  font-weight: 600;
  line-height: 110%;
  margin-bottom: 20px;
}

.card__title h1 {
  font: inherit;
  color: inherit;
  margin: 0;
}

.card__compound {
  color: #222;
  font-size: 15px;
  line-height: 150%;
  margin-bottom: 20px;
  opacity: 0.6;
}

.card div[id$="skudiv"] {
  margin-bottom: 20px;
}

.card__attention {
  color: #222;
  font-size: 15px;
  line-height: 150%;
  margin-bottom: 20px;
  border-left: 1px solid #222;
  padding-left: 8px;
}

.card__description {
  color: #222;
  font-size: 15px;
  line-height: 150%;
  margin-bottom: 20px;
}

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

.card__fixed {
  display: flex;
}

.card__add {
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  border-radius: 6px;
  background: #222;
  display: inline-flex;
  height: 54px;
  align-items: center;
  padding: 0 30px;
  transition: all 0.2s ease-out;
  text-decoration: none;
  position: relative;
}

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

.card__link {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.card__add.active {
  cursor: default;
}

.card__add.active .card__link {
  display: none;
}

.card__add:not(.active):hover {
  background: #2f2f2f;
}

.card__add:before {
  content: "";
  margin-right: 8px;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/icon-cart.svg) no-repeat;
}

.card__add i {
  width: 1px;
  height: 18px;
  background: #fff;
  margin: 0 10px;
}

.card__favorite,
.card__favorite.js-favorite {
  position: static;
  margin-left: 10px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: #f3f3f3 url(/local/templates/happy/img/icon-favorite.svg) no-repeat center;
  cursor: pointer;
  transition: all 0.2s ease-out;
}

.card__favorite.active,
.card__favorite.active.js-favorite {
  background-image: url(/local/templates/happy/img/icon-favorite-active.svg);
}

.card__favorite.js-favorite:after {
  display: none;
}

.card__bonus {
  height: 54px;
  display: none;
  align-items: center;
  color: #222;
  font-size: 15px;
  line-height: 150%;
  padding: 0 20px;
  border-radius: 30px;
  border: 1px dashed rgba(132, 132, 132, 0.55);
}

.card__bonus:before {
  content: "";
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/icon-bonus.svg) no-repeat;
  margin-right: 9px;
  flex-shrink: 0;
}

.card__buttons {
  margin-bottom: 40px;
}

.card__caption {
  color: #222;
  font-size: 24px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 20px;
}

.card__gifts {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 14px;
  padding: 0 16px;
  margin-left: -16px;
  margin-right: -16px;
}

.card__gift {
  width: 112px;
  flex-shrink: 0;
  color: #222;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
}

.card__gift img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 10px;
}

.card__tabs {
  margin-top: 62px;
  margin-bottom: 30px;
  display: flex;
}

.card__tabs::-webkit-scrollbar {
  width: 0;
}

.card__tabs {
  -ms-overflow-style: none;
}

.card__tabs {
  overflow: -moz-scrollbars-none;
}

.card__tab {
  white-space: nowrap;
  padding: 5px 11px;
  background: #f6f6f6;
  border: 1px solid #f6f6f6;
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease-out;
}

.card__tab+.card__tab {
  margin-left: 10px;
}

.card__tab.active {
  background: #fff;
  border-color: #222;
  cursor: default;
}

.card__block {
  display: none;
}

.card__block.active {
  display: block;
}

.card__block .card__caption {
  margin-bottom: 10px;
}

.card__text {
  color: #222;
  font-size: 16px;
  line-height: 150%;
}

.card__text mark {
  display: block;
  padding-left: 8px;
  border-left: 1px solid #222;
  background: transparent;
}

.card__auth {
  font-size: 0;
  margin-top: 10px;
}

.card__auth_hidden {
  display: none;
}

.link-auth {
  display: inline-flex;
  align-items: center;
  padding: 0 20px;
  color: #222;
  font-size: 15px;
  line-height: 150%;
  height: 54px;
  border-radius: 30px;
  border: 1px dashed rgba(132, 132, 132, 0.55);
}

.link-auth a {
  color: inherit;
  text-underline-offset: 1px;
  text-decoration-thickness: 1px;
  transition: all 0.2s ease-out;
}

.link-auth a:hover {
  text-decoration-color: transparent;
}

.card-count {
  display: none;
  width: 138px;
  flex-shrink: 0;
  justify-content: space-between;
  user-select: none;
}

.card-count.active,
.card__add.active .card-count {
  display: flex;
}

.card-price {
  font: inherit !important;
}

.card__add.active .card-price {
  display: none;
}

.card-count__minus {
  display: flex;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/icon-minus.svg) no-repeat center;
  background-size: cover;
  cursor: pointer;
}

.card-count__plus {
  display: flex;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/icon-plus.svg) no-repeat center;
  background-size: cover;
  cursor: pointer;
}

.card-count .card-count__count {
  color: #fff;
  font-size: 10px;
  font-weight: 500;
  line-height: 130%;
  text-align: center;
  display: flex;
  justify-content: center;
  opacity: 0.5;
}

.card-count__value {
  margin-right: 3px;
}

.card-count .card-count__count input {
  width: 10px;
  display: inline;
  font-size: 10px;
  color: #fff;
  padding: 0;
  margin: 0;
  border: none;
  background: none;
}

.card-count .card-count__sum {
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 130%;
  text-align: center;
}

.card-count .card-count__sum strong {
  font-size: 13px;
  display: inline-block;
  line-height: 130%;
}

.card .bx_medium.bx_bt_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 30px !important;
  color: #222;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  line-height: normal !important;
  height: auto !important;
  border-radius: 6px;
  border: 1px solid #222;
  text-decoration: none;
  background: #fff;
}

.card .blog-comment-buttons input[type="button"] {
  border-radius: 6px;
  background: #222;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 30px !important;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  border: none;
  transition: all 0.2s ease-out;
}

.card .blog-comment-buttons input[type="button"]:hover {
  background: #2f2f2f;
}

.card .bx_soc_comments_div .bx-catalog-tab-body-container .bx-catalog-tab-container>div {
  padding: 0;
}

.card .blog-add-comment {
  padding: 0;
  text-align: left;
  margin-bottom: 20px;
}

.card div.blog-comment-fields {
  border-radius: 5px;
}

/* ==========================================================================
   CART
   ========================================================================== */
.cart {
  margin-bottom: 80px;
}

.cart__columns {
  display: flex;
}

.cart__left {
  flex-grow: 1;
}

.cart__right {
  width: 388px;
  margin-left: 20px;
  flex-shrink: 0;
}

.cart__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.cart__clear {
  color: #222;
  font-size: 13px;
  font-weight: 500;
  line-height: 130%;
  position: relative;
  display: inline-block;
  padding-right: 18px;
  text-decoration: none;
  opacity: 0.6;
  transition: all 0.2s ease-out;
}

.cart__clear:hover {
  opacity: 1;
}

.cart__clear:after {
  content: "";
  position: absolute;
  right: 0;
  top: 4px;
  width: 10px;
  height: 9px;
  background: url(/local/templates/happy/img/cart-clear.svg) no-repeat;
}

.cart__item {
  display: flex;
}

.cart__item_hidden {
  display: none;
}

.cart__item+.cart__item {
  margin-top: 20px;
}

.cart__img {
  width: 150px;
  flex-shrink: 0;
  margin-right: 20px;
  position: relative;
}

.cart__img img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 6px;
}

.cart__block {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

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

.cart__name {
  color: #222;
  font-family: Raleway;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
}

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

.cart__price {
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
}

.cart__count {
  width: 113px;
  height: 40px;
  border-radius: 4px;
  background: #f2f2f2;
  display: flex;
  align-items: center;
  user-select: none;
}

.cart__minus {
  width: 36px;
  height: 40px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/cart-minus.svg) no-repeat center;
  cursor: pointer;
}

.cart__plus {
  width: 36px;
  height: 40px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/cart-plus.svg) no-repeat center;
  cursor: pointer;
}

.cart__minus.disabled,
.cart__plus.disabled {
  opacity: 0.3;
  pointer-events: none;
}

.cart__value {
  width: 100%;
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  flex-grow: 1;
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  text-align: center;
}

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

.cart__delete {
  cursor: pointer;
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/cart-delete.svg) no-repeat;
}

.cart__favorite {
  width: 30px;
  height: 30px;
  flex-shrink: 0;
  background: url(/local/templates/happy/img/cart-favorite.svg) no-repeat;
}

.cart__description {
  margin-top: 9px;
  color: #222;
  font-size: 14px;
  line-height: 130%;
  max-width: 575px;
}

.cart__text {
  color: #222;
  font-size: 15px;
  line-height: 130%;
}

.cart__text a {
  color: #222;
}

.cart__quantity {
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
}

.cart__form-wrapper {
  position: relative;
}

.cart__form-wrapper .maxma {
  position: absolute;
  top: 76px;
  left: 15px;
  right: 15px;
  z-index: 1;
}

.cart__form {
  padding: 15px;
  border-radius: 10px;
  background: #f6f6f6;
  position: relative;
}

.cart__buttons {
  margin-top: 20px;
}

.cart__buttons>*+* {
  margin-top: 6px;
}

.cart__one-click {
  display: block;
  width: 100%;
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  padding: 15px 19px;
  border-radius: 6px;
  border: 1px solid #222;
  background: #fff;
  text-align: center;
  cursor: pointer;
  user-select: none;
  text-decoration: none;
  transition: all 0.2s ease-out;
}

.cart__one-click:hover {
  opacity: 0.8;
}

.cart__button {
  display: block;
  width: 100%;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  padding: 16px 20px;
  border-radius: 6px;
  background: #222;
  text-align: center;
  border: none;
  transition: all 0.2s ease-out;
}

.cart__button:hover {
  background: #2f2f2f;
}

.cart__promo-code {
  display: block;
  position: relative;
  margin-bottom: 15px;
}

.cart__form-wrapper_bonus .cart__promo-code {
  margin-bottom: 60px;
}

.cart__promo-code:after {
  content: "";
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translate(0, -50%);
  width: 24px;
  height: 14px;
  background: url(/local/templates/happy/img/cart-promo-code.svg) no-repeat;
}

.cart__promo-code input {
  display: block;
  width: 100%;
  border-radius: 6px;
  border: 1px solid #ececec;
  background: #fff;
  height: 46px;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  padding: 0 56px 0 15px;
  outline: none;
}

.cart__radio {
  display: flex;
  align-items: center;
  cursor: pointer;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
}

.cart__radio span {
  margin-top: 2px;
}

.cart__radio span+span {
  margin-left: auto;
  font-weight: 600;
}

.cart__radio input {
  display: none;
}

.cart__radio i {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1px solid #000;
  flex-shrink: 0;
  position: relative;
  margin-right: 6px;
}

.cart__radio i:before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  background: #000;
  border-radius: 50%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  opacity: 0;
  transition: all 0.2s ease-out;
}

.cart__radio input:checked+i:before {
  opacity: 1;
}

.cart__info {
  margin-top: 25px;
}

.cart__total {
  display: flex;
  justify-content: space-between;
  color: #222;
  font-size: 18px;
  font-weight: 600;
  line-height: 130%;
  position: relative;
}

.cart__total b {
  font-weight: 600;
}

.cart__saving {
  margin-top: 15px;
  display: flex;
  justify-content: space-between;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  position: relative;
}

.cart__saving span {
  background: #f6f6f6;
  position: relative;
  padding-right: 5px;
}

.cart__saving b {
  font-weight: 500;
  color: #17a32c;
  background: #f6f6f6;
  position: relative;
  padding-left: 5px;
}

.cart__saving:before {
  content: "";
  position: absolute;
  bottom: 2px;
  left: 0;
  right: 0;
  border: 1px dashed rgba(132, 132, 132, 0.55);
}

.cart .basket-item-scu-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 5px 0 0;
  padding: 0;
  list-style-type: none;
}

.cart .basket-item-scu-item {
  white-space: nowrap;
  padding: 4px 8px;
  background: #f6f6f6;
  border: 1px solid #f6f6f6;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease-out;
}

.cart .basket-item-scu-item.selected {
  background: #fff;
  border-color: #222;
  cursor: default;
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.footer {
  background: #333;
  padding: 30px 0;
  border-radius: 10px 10px 0 0;
}

.footer__logo {
  width: 126px;
  margin-bottom: 40px;
}

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

.footer__row {
  display: flex;
}

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

.footer__caption {
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  line-height: 130%;
  opacity: 0.6;
  margin-bottom: 10px;
}

.footer__nav {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  line-height: 130%;
}

.footer__nav ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.footer__nav a {
  color: #fff;
  text-decoration: none;
}

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

.footer__nav li+li {
  margin-top: 10px;
}

.footer__left {
  width: 185px;
  margin-right: 40px;
}

.footer__right {
  flex-grow: 1;
}

.footer__phone {
  margin-top: 40px;
}

.phone__caption {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 110%;
  opacity: 0.4;
  margin-bottom: 6px;
}

.phone__number {
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  line-height: 110%;
}

.phone__number>*:first-child {
  margin-top: 0;
}

.phone__number>*:last-child {
  margin-bottom: 0;
}

.phone__number a {
  color: #fff;
  text-decoration: none;
}

.footer__socialize {
  margin-top: 40px;
}

.socialize {
  display: flex;
}

.socialize a {
  width: 36px;
  height: 36px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.socialize_decreased a {
  width: 34px;
  height: 34px;
}

.socialize a+a {
  margin-left: 8px;
}

.socialize_decreased a+a {
  margin-left: 10px;
}

.vk {
  background-image: url(/local/templates/happy/img/vk.svg);
}

.tg {
  background-image: url(/local/templates/happy/img/tg.svg);
}

.yt {
  background-image: url(/local/templates/happy/img/yt.svg);
}

.wa {
  background-image: url(/local/templates/happy/img/wa.svg);
}

.footer__rating {
  margin-top: 40px;
}

.rating {
  width: 166px;
  /*	padding: 4px 8px;
	border-radius: 6px;
	border: 1px solid rgba(214, 215, 219, 0.20);
	background: #FFF;*/
}

.rating iframe {
  display: block;
}

.rating img {
  display: block;
  width: 100%;
  height: auto;
}

.footer__bottom {
  margin-top: 50px;
  display: flex;
  align-items: flex-end;
}

.footer__copyright {
  color: #fff;
  font-size: 13px;
  line-height: 130%;
  opacity: 0.6;
}

.footer__policy {
  margin-left: auto;
  padding-left: 200px;
  flex-shrink: 0;
  color: #fff;
  font-size: 13px;
  line-height: 130%;
  opacity: 0.6;
}

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

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

/* ==========================================================================
   AGREEMENT
   ========================================================================== */
.agreement {
  display: none;
  position: fixed;
  left: 50%;
  transform: translate(-50%, 0);
  bottom: 20px;
  z-index: 100;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 12px 0 rgba(85, 85, 85, 0.05);
  padding: 20px;
  width: 410px;
}

.agreement.active {
  display: block;
}

.agreement__text {
  color: #222;
  font-size: 16px;
  line-height: 140%;
}

.agreement__button {
  margin-top: 15px;
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
}

.agreement__button a {
  display: block;
  color: #222;
  width: 100%;
  text-decoration: none;
  border-radius: 6px;
  border: 1px solid #222;
  padding: 15px;
  text-align: center;
}

/* ==========================================================================
   ORDER
   ========================================================================== */
.order {
  margin: 20px 0 80px;
}

.order__info-line {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
}

.order__info-line strong {
  font-weight: 600;
}

.order__info-line+.order__info-line {
  margin-top: 10px;
}

.bx-step-completed .order__item+.order__item {
  margin-top: 10px;
}

.order__back {
  color: #a7a7a7;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  margin-bottom: 20px;
}

.order__back a {
  color: inherit;
  padding-left: 20px;
  position: relative;
  text-decoration: none;
}

.order__back a:before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 14px;
  height: 10px;
  background: url(/local/templates/happy/img/order-back.svg) no-repeat;
}

.order__columns {
  display: flex;
}

.order__left {
  flex-grow: 1;
}

.order__right {
  margin-left: 20px;
  flex-shrink: 0;
  width: 388px;
}

.order .title {
  margin-bottom: 20px;
}

.order__required {
  color: rgba(34, 34, 34, 0.6);
  font-size: 13px;
  font-weight: 500;
  line-height: 130%;
  margin-bottom: 20px;
}

.order__required span {
  color: #f00;
}

.order__caption {
  color: #222;
  font-size: 24px;
  font-weight: 600;
  line-height: 130%;
}

.order__caption-wrapper {
  margin-bottom: 20px;
  order: 1;
}

.order__content {
  order: 2;
}

.order__subcaption {
  color: #222;
  font-size: 20px;
  font-weight: 600;
  line-height: 130%;
  order: 1;
  width: 100%;
}

.order .form-group {
  width: 100%;
}

.bx-step-completed .order__subcaption {
  display: none;
}

.order__check {
  display: flex;
  color: #111;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
  user-select: none;
  margin-bottom: 18px;
}

.order__check label {
  display: flex;
  cursor: pointer;
}

.order__check input {
  display: none;
}

.order__check i {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  border: 1px solid rgba(34, 34, 34, 0.6);
  margin-right: 7px;
  margin-top: 2px;
  position: relative;
  transition: all 0.2s ease-out;
}

.order__check i:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 12px;
  height: 12px;
  border-radius: 3px;
  background: #222;
  opacity: 0;
  transition: all 0.2s ease-out;
}

.order__check input:checked+i {
  border-color: rgba(34, 34, 34, 1);
}

.order__check input:checked+i:after {
  opacity: 1;
}

.order__label {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  margin-bottom: 3px;
  opacity: 0.6;
}

.order__label span {
  color: #f00;
}

.order__input {
  display: block;
  width: 100%;
  height: 45px;
  border-radius: 6px;
  border: 1px solid #ececec;
  background: #fff;
  padding: 0 20px;
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: 130%;
  outline: none;
}

.order__items {
  display: grid;
  gap: 18px;
  grid-template-columns: 1fr 1fr;
  align-items: flex-start;
}

.order__item {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}

.bx-step-completed .order__item {
  display: block;
}

.order__items_radio {
  gap: 10px;
}

.order__field+.order__field {
  margin-top: 20px;
}

.order__row {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 1fr 1fr;
}

.order__textarea {
  display: block;
  width: 100%;
  height: 140px;
  border-radius: 6px;
  border: 1px solid #ececec;
  background: #fff;
  padding: 10px 20px;
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: 130%;
  outline: none;
  resize: none;
}

.order__item_full {
  grid-column: span 2;
}

.order__step {
  display: none;
  flex-direction: column;
}

.order__step.bx-selected,
.order__step.bx-step-completed {
  display: flex;
}

.order__step+.order__step {
  margin-top: 50px;
}

.order__next {
  margin-top: 18px;
  display: flex;
  gap: 10px;
  order: 3;
}

.order__btn {
  display: inline-block;
  padding: 14px 25px;
  border-radius: 6px;
  background: #222;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  text-decoration: none;
  transition: all 0.2s ease-out;
  min-width: 151px;
  text-align: center;
}

.order__btn_outline {
  padding: 13px 24px;
  background: #fff;
  color: #222;
  border: 1px solid #222;
}

.order__btn:hover {
  background: #2f2f2f;
  color: #fff;
}

.bx-selected .order__editstep {
  display: none;
}

.order__radio-wrapper {
  padding: 14px;
  border-radius: 6px;
  border: 1px solid #ececec;
  background: #fff;
}

.order__radio {
  display: flex;
  color: #111;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
  user-select: none;
  margin-bottom: 18px;
}

.order__radio label {
  display: flex;
  cursor: pointer;
}

.order__radio input {
  display: none;
}

.order_opacity {
  opacity: 0.6;
}

.order__radio i {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid #222;
  margin-right: 10px;
  position: relative;
}

.order__radio i:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #222;
  opacity: 0;
  transition: all 0.2s ease-out;
}

.order__radio input:checked+i:after {
  opacity: 1;
}

.order__radio b {
  font-weight: 600;
  display: block;
}

.order__radio-description {
  margin-top: 15px;
  color: #111;
  font-size: 14px;
  line-height: 140%;
}

.order__checks .order__check {
  margin-bottom: 0;
  font-weight: 400;
  flex-direction: column;
}

.order__checks .order__check+.order__check {
  margin-top: 15px;
}

.order__checks .order__check i {
  background: #f8f8f8;
  border-color: rgba(132, 132, 132, 0.55);
}

.order__check div {
  margin-top: 6px;
  color: #111;
  font-size: 14px;
  line-height: 140%;
  opacity: 0.6;
}

.order__form {
  padding: 15px;
  border-radius: 10px;
  background: #f6f6f6;
}

.order__wrapper-button {
  margin-top: 20px;
}

.order__button {
  display: block;
  width: 100%;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  padding: 16px 20px;
  border-radius: 6px;
  background: #222;
  text-align: center;
  border: none;
  text-decoration: none;
  transition: all 0.2s ease-out;
}

.order__button:hover {
  background: #2f2f2f;
}

.order__button_disabled {
  background: #c0c0c0;
  pointer-events: none;
}

.order__param {
  display: flex;
  justify-content: space-between;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  position: relative;
}

.order__param_total {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 15px;
}

.order__param+.order__param {
  margin-top: 8px;
}

.order__param span {
  background: #f6f6f6;
  position: relative;
  padding-right: 5px;
}

.order__param b {
  font-weight: 500;
  background: #f6f6f6;
  position: relative;
  padding-left: 5px;
}

.order__param_total b {
  font-weight: 600;
}

.order__param_green b {
  color: #17a32c;
}

.order__param:before {
  content: "";
  position: absolute;
  bottom: 2px;
  left: 0;
  right: 0;
  border: 1px dashed rgba(132, 132, 132, 0.55);
}

.order__param_total:before {
  display: none;
}

.order__agree {
  color: #222;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  line-height: 130%;
  margin-top: 10px;
}

.order__agree a {
  color: inherit;
  text-underline-offset: 1px;
  text-decoration-thickness: 1px;
  transition: all 0.2s ease-out;
}

.order__agree a:hover {
  text-decoration-color: transparent;
}

.order__info {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
}

.order__info ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.order__info ul li+li {
  margin-top: 10px;
}

.order #bx-soa-basket {
  display: none;
}

.order [data-group-id="7"] {
  display: none;
}

.order [data-group-id="6"] .bx-soa-custom-label {
  display: none;
}

.order #bx-soa-orderSave {
  display: none;
}

.order #bx-soa-total-mobile {
  display: none;
}

.order #bx-soa-region {
  display: none;
}

.order div[data-property-id-row="6"] {
  display: none;
}

.order div[data-property-id-row="5"] {
  display: none;
}

.bx-step-completed .order__item {
  margin-bottom: 0;
}

.order div[data-property-id-row="8"] {
  order: 2;
}

.order div[data-property-id-row="1"] {
  order: 3;
}

.order div[data-property-id-row="2"] {
  order: 4;
}

.order div[data-property-id-row="3"] {
  order: 5;
}

.order div[data-property-id-row="27"] {
  order: 2;
}

.order div[data-property-id-row="10"] {
  order: 3;
}

.order div[data-property-id-row="12"] {
  order: 4;
}

.order div[data-property-id-row="11"] {
  order: 2;
}

.order div[data-property-id-row="14"] {
  order: 3;
}

.order div[data-property-id-row="9"] {
  order: 2;
}

.order div[data-property-id-row="7"] {
  order: 3;
}

.order div[data-property-id-row="13"] {
  order: 2;
}

.order div[data-property-id-row="31"] {
  order: 2;
}

.order div[data-property-id-row="28"] {
  order: 4;
  width: calc(33.333% - 15px);
}

.order div[data-property-id-row="29"] {
  order: 5;
  width: calc(33.333% - 15px);
}

.order div[data-property-id-row="30"] {
  order: 6;
  width: calc(33.333% - 15px);
}

.bx-soa-customer-field[data-property-id-row="9"],
.bx-soa-customer-field[data-property-id-row="8"],
.bx-soa-customer-field[data-property-id-row="27"] {
  display: flex;
}

.bx-soa-customer-field[data-property-id-row="9"] .soa-property-container,
.bx-soa-customer-field[data-property-id-row="8"] .soa-property-container,
.bx-soa-customer-field[data-property-id-row="27"] .soa-property-container {
  order: 1;
  margin-right: 7px;
}

.bx-soa-customer-field[data-property-id-row="9"] .bx-soa-custom-label,
.bx-soa-customer-field[data-property-id-row="8"] .bx-soa-custom-label,
.bx-soa-customer-field[data-property-id-row="27"] .bx-soa-custom-label {
  order: 2;
}

.bx-soa-customer-field[data-property-id-row="9"] input[type="checkbox"],
.bx-soa-customer-field[data-property-id-row="8"] input[type="checkbox"],
.bx-soa-customer-field[data-property-id-row="CUSTOM_CHECKBOX"] input[type="checkbox"],
.bx-soa-customer-field[data-property-id-row="27"] input[type="checkbox"] {
  display: block;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  border: 1px solid rgba(34, 34, 34, 0.6);
  position: relative;
  transition: all 0.2s ease-out;
}

.bx-soa-customer-field[data-property-id-row="9"] input[type="checkbox"]:checked,
.bx-soa-customer-field[data-property-id-row="8"] input[type="checkbox"]:checked,
.bx-soa-customer-field[data-property-id-row="CUSTOM_CHECKBOX"] input[type="checkbox"]:checked,
.bx-soa-customer-field[data-property-id-row="27"] input[type="checkbox"]:checked {
  border-color: #222;
  background: #222 url(/local/templates/happy/img/icon-checkbox.svg) no-repeat center;
  background-size: 10px 10px;
}

.order__item .bx-soa-customer-field[data-property-id-row="CUSTOM_CHECKBOX"] label {
  margin-bottom: 0;
}

.bx-soa-customer-field[data-property-id-row="CUSTOM_CHECKBOX"] {
  order: 2;
  display: flex;
  align-items: center;
  gap: 5px;
  flex-direction: row-reverse;
  justify-content: flex-end;
}

.order div[data-property-id-row="14"] select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}

.order__selected-item {
  display: none;
}

.order .bx-soa-pp-company-block .checkbox input {
  margin-right: 7px;
  display: block;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  border: 1px solid rgba(34, 34, 34, 0.6);
  position: relative;
  transition: all 0.2s ease-out;
}

.order .bx-soa-pp-company-block .checkbox input:checked {
  border-color: #222;
  background: #222 url(/local/templates/happy/img/icon-checkbox.svg) no-repeat center;
  background-size: 10px 10px;
}

.order .bx-soa-pp-company-block .checkbox label {
  display: flex;
  flex-wrap: wrap;
}

.order .bx-soa-service-small {
  width: 100%;
  margin-top: 6px;
  color: #111;
  font-size: 14px;
  line-height: 140%;
  opacity: 0.6;
}

.order .bx-soa-pp-company-block .checkbox+.checkbox {
  margin-top: 15px;
}

.order .bx-soa-pp-company>*:last-child {
  margin-bottom: 0;
}

/* ==========================================================================
   SUCCESS
   ========================================================================== */
.success {
  text-align: center;
  margin: 40px 0 30px;
}

.success .title {
  margin-bottom: 20px;
}

.success__text {
  color: #222;
  font-size: 20px;
  font-weight: 500;
  line-height: 130%;
}

/* ==========================================================================
   ORD
   ========================================================================== */
.ord {
  margin: 30px 0 80px;
}

.ord__columns {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 1fr;
}

.ord__title {
  color: #222;
  font-size: 24px;
  font-weight: 600;
  line-height: 130%;
  margin-bottom: 30px;
}

.ord__text {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
}

.ord__text ul {
  display: block;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.ord__text ul li+li {
  margin-top: 10px;
}

.ord__items {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 1fr 1fr;
}

.ord__img {
  margin-bottom: 10px;
}

.ord__img img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 6px;
}

.ord__name {
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
}

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

.ord__sum {
  margin-top: 10px;
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
}

.ord__quantity {
  color: #333;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  opacity: 0.3;
}

.ord__links {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ord__link {
  text-align: center;
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  text-decoration: none;
  padding: 14px 20px;
  border-radius: 6px;
  background: #222;
  transition: all 0.2s ease-out;
}

.ord__link_outline {
  padding: 13px 19px;
  background: #fff;
  border: 1px solid #222;
  color: #222;
}

.ord__link:hover {
  background: #2f2f2f;
  color: #fff;
}

/* ==========================================================================
   POPUPS
   ========================================================================== */
.popups {
  display: none;
}

.popup {
  max-width: 455px;
  margin: 54px auto;
  border-radius: 10px;
  background: #f6f6f6;
  padding: 30px 48px;
  position: relative;
}

.popup_thanks {
  max-width: 465px;
}

.global-ajax-wrapper {
  position: relative;
  max-width: 580px;
  margin: 30px auto;
  background: #fff;
  padding: 30px;
}

.popup__close,
.global-ajax-wrapper button.mfp-close,
.popup button.mfp-close {
  cursor: pointer;
  position: absolute;
  top: -34px;
  right: -34px;
  width: 18px;
  height: 18px;
  background: url(/local/templates/happy/img/popup-close.svg) no-repeat;
  font-size: 0;
  opacity: 1;
  transition: all 0.2s ease-out;
}

.popup__close:hover,
.global-ajax-wrapper button.mfp-close:hover,
.popup button.mfp-close:hover {
  opacity: 0.8;
}

.popup .title {
  max-width: 310px;
  margin: 0 auto 20px;
  text-align: center;
}

.popup__text {
  text-align: center;
  color: #222;
  font-size: 18px;
  font-weight: 500;
  line-height: 130%;
  margin-bottom: 20px;
}

.popup__input {
  display: block;
  width: 100%;
  height: 50px;
  border-radius: 6px;
  border: 1px solid #d6d7db;
  background: rgba(255, 255, 255, 0.7);
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: normal;
  text-align: center;
  margin-bottom: 8px;
  outline: none;
  transition: all 0.2s ease-out;
}

.popup__input.error {
  border-color: #f00;
}

.popup__submit {
  display: block;
  width: 100%;
  height: 50px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  text-align: center;
  border-radius: 6px;
  background: #222;
  border: none;
  transition: all 0.2s ease-out;
}

.popup__submit:hover {
  background: #2f2f2f;
}

.popup__agree {
  margin-top: 8px;
  color: #222;
  text-align: center;
  font-size: 11px;
  font-weight: 500;
  line-height: 130%;
}

.popup__agree a {
  color: #222;
}

.popup__img {
  margin: 14px auto 0;
  max-width: 304px;
}

.popup__img img {
  display: block;
  width: 100%;
  height: auto;
}

.popup .checkout-basket-list-items.checkout-table {
  display: none;
}

.popup .checkout-container .form-group:nth-child(2),
.popup .checkout-container .form-group:nth-child(3),
.popup .checkout-container .form-group:nth-child(4),
.popup .checkout-container .form-group:nth-child(5),
.popup .checkout-container .form-group:nth-child(7),
.popup .checkout-container .form-group:nth-child(8),
.popup .checkout-container .form-group:nth-child(10),
.popup .checkout-container .form-group:nth-child(11),
.popup .checkout-container .form-group:nth-child(12),
.popup .checkout-container .form-group:nth-child(13) {
  display: none;
}

.popup .checkout-basket-title {
  font-size: 0;
  color: #222;
  font-weight: 600;
  line-height: 130%;
  margin: 0 auto 40px;
  text-align: center;
  padding-top: 20px;
}

.popup .checkout-basket-title:before {
  content: "Купить в один клик";
  font-size: 36px;
  display: block;
}

.popup .asterisk-item {
  display: none;
}

.popup .form-control {
  display: block;
  width: 100%;
  height: 50px;
  border-radius: 6px;
  border: 1px solid #d6d7db;
  background: rgba(255, 255, 255, 0.7);
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: normal;
  text-align: center;
  margin-bottom: 8px;
  outline: none;
  transition: all 0.2s ease-out;
}

.popup .checkout-btn-container {
  padding: 0;
}

.popup .checkout-btn-container .btn {
  display: block;
  width: 100%;
  height: 50px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  text-align: center;
  border-radius: 6px;
  background: #222;
  border: none;
  transition: all 0.2s ease-out;
}

.popup .checkout-order-status-successful svg {
  display: none;
}

.popup .checkout-order-status-btn-container {
  display: none;
}

/* ==========================================================================
   LIST
   ========================================================================== */
.title-search-result__popup {
  background: #fff;
  box-sizing: border-box;
  border-radius: 5px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
  overflow: hidden;
  padding: 13px 0;
  position: relative;
  z-index: 5;
}

.title-search-result__item {
  display: flex;
  align-items: center;
  padding: 5px 10px;
  text-decoration: none;
}

.title-search-result__image {
  width: 30px;
  flex-shrink: 0;
  margin-right: 10px;
}

.title-search-result__image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 5px;
}

.title-search-result__name {
  color: #222;
  font-size: 14px;
  line-height: 130%;
}

.title-search-result__category {
  color: #222;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  margin-top: 12px;
}

.title-search-result__price {
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  margin-top: 12px;
}

/* ==========================================================================
   ARTICLES
   ========================================================================== */
.articles__grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px 20px;
}

.articles__item {
  display: block;
  text-decoration: none;
  transition: all 0.2s ease-out;
}

.articles__item:hover {
  opacity: 0.9;
}

.articles__img {
  margin-bottom: 12px;
}

.articles__img img {
  display: block;
  width: 100%;
  height: 210px;
  object-fit: cover;
  border-radius: 6px;
}

.articles__name {
  color: #222;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
}

.articles__date {
  color: #222;
  font-size: 14px;
  line-height: 130%;
  margin-top: 12px;
}

/* ==========================================================================
   PERSONAL
   ========================================================================== */
.personal__grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px 20px;
}

.personal__icon {
  margin-bottom: 12px;
}

.personal__name {
  font-size: 17px;
  color: #222;
  line-height: 130%;
  text-transform: none;
}

.personal__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 150px;
  border: 1px solid #f2f2f2;
  background: #fff;
  text-decoration: none;
}

.personal__item .maxma {
  margin: 0;
}

.personal__item .svg.colored:not(.svg-inline-icon) * {
  fill: #222;
}

.personal__item .maxma-basket-bonus__bonus-amount-container {
  color: #222;
}

.personal__item .maxma-basket-bonus__bonus-logo circle {
  fill: #222;
}

/* ==========================================================================
   PROFILE
   ========================================================================== */
.profile {}

.profile .border_block {
  padding: 30px;
  border: 1px solid #f2f2f2;
  position: relative;
}

.profile .form-control+.form-control {
  margin-top: 20px;
}

.profile .line-block.form_footer__bottom {
  display: flex;
  align-items: center;
}

.profile .line-block__item+.line-block__item {
  margin-left: 20px;
}

.profile .required-fields-note {}

.profile .but-r {
  margin-top: 20px;
}

.profile .but-r button {
  display: inline-block;
  padding: 14px 25px;
  border-radius: 6px;
  background: #222;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 130%;
  text-decoration: none;
  transition: all 0.2s ease-out;
  min-width: 151px;
  text-align: center;
  border: none;
}

.profile .but-r button:hover {
  background: #2f2f2f;
  color: #fff;
}

.profile .wrap_md {
  display: flex;
  align-items: center;
}

.profile .iblock.label_block {
  display: flex;
  flex-direction: column;
  width: 40%;
  flex-shrink: 0;
  margin-right: 20px;
}

.profile .iblock.text_block {
  color: #111;
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
}

.profile .iblock.label_block label {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  margin-bottom: 3px;
  opacity: 0.6;
}

.profile input[type="tel"],
.profile input[type="password"],
.profile input[type="text"] {
  display: block;
  width: 100%;
  height: 45px;
  border-radius: 6px;
  border: 1px solid #d6d7db;
  background: rgba(255, 255, 255, 0.7);
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: normal;
  padding: 0 20px;
  outline: none;
}

.profile .soc-avt.bottom-form {
  margin-top: 30px;
}

.profile .star {
  color: #f00;
}

/* ==========================================================================
   AUTH
   ========================================================================== */
.auth {}

.form .tabs.tabs--compact .nav {
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px 20px;
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-size: 13px;
  color: #222;
  line-height: 130%;
  margin-bottom: 20px;
}

.form .tabs.tabs--compact .nav a {
  color: inherit;
  text-decoration: none;
  border-bottom: 2px solid transparent;
  padding-bottom: 2px;
}

.form .tabs.tabs--compact .nav li.active a {
  border-color: #222;
}

.form .form_body .alert.alert-danger.compact {
  display: none;
}

.form .phone_or_login+.form-control {
  display: none;
}

.form .tab-content>.tab-pane {
  display: none;
}

.form .tab-content>.active {
  display: block;
}

.form .form_footer .block {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.form {
  max-width: 560px;
}

.form .form-control {
  display: flex;
  flex-direction: column;
}

.form .form-control+.form-control {
  margin-top: 20px;
}

.form .form-control label {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  margin-bottom: 3px;
  opacity: 0.6;
}

.form .star {
  color: #f00;
}

.form .form-control input[type="text"],
.form .form-control input[type="tel"],
.form .form-control input[type="email"],
.form .form-control input[type="password"] {
  display: block;
  width: 100%;
  height: 45px;
  border-radius: 6px;
  border: 1px solid #ececec;
  background: #fff;
  padding: 0 20px;
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: 130%;
  outline: none;
}

.top-text {
  margin-bottom: 20px;
}

.form .form_footer {
  margin-top: 20px;
}

.form .line-block__item+.line-block__item {
  margin-top: 20px;
}

.form .buttons {
  margin-top: 20px;
}

.form .line-block__item.width100 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.form .btn.btn-default.btn-lg {
  border-radius: 6px;
  background: #222;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 30px;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  transition: all 0.2s ease-out;
  border: none;
}

.form .btn.btn-default.btn-lg.hidden {
  display: none;
}

.form .btn.btn-transparent-border-color.btn-lg.pull-right.register {
  border-radius: 6px;
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 13px 29px;
  color: #222;
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  transition: all 0.2s ease-out;
  border: 1px solid #222;
  text-decoration: none;
}

.form .btn.btn-default.btn-lg:hover,
.form .btn.btn-transparent-border-color.btn-lg.pull-right.register:hover {
  color: #fff;
  background: #2f2f2f;
}

.form .prompt.remember.onoff {
  display: flex;
}

.form .prompt.remember.onoff input[type="checkbox"] {
  display: inline-block;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  border: 1px solid rgba(34, 34, 34, 0.6);
  position: relative;
  transition: all 0.2s ease-out;
  margin-right: 10px;
}

.form .prompt.remember.onoff input[type="checkbox"]:checked {
  border-color: #222;
  background: #222 url(/local/templates/happy/img/icon-checkbox.svg) no-repeat center;
  background-size: 10px 10px;
}

.form .prompt.remember.onoff label {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  opacity: 0.6;
}

.form .forgot {
  color: #222;
  font-size: 13px;
}

.form .text-block {
  font-size: 13px;
  color: #222;
  line-height: 130%;
  margin-top: 4px;
}

.form .form-control.captcha-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: 20px;
}

.form .form-control.captcha-row label {
  width: 100%;
}

.form .form-control.captcha-row .captcha_input {
  order: 1;
  width: 50%;
  padding-right: 30px;
}

.form .form-control.captcha-row .captcha_image {
  order: 2;
  display: flex;
  justify-content: flex-end;
  width: 50%;
  align-items: center;
}

.form .captcha_reload {
  width: 25px;
  height: 25px;
  background: #222;
  border-radius: 50%;
  font-size: 0;
  margin-left: 10px;
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
}

.form .captcha_reload:after {
  content: "";
  position: absolute;
  background: rgba(0, 0, 0, 0) url(/local/templates/happy/img/icons_wish.png) repeat scroll -67px -82px;
  height: 13px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 15px;
}

.form .form_footer__bottom {
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.form .form_footer__bottom .line-block__item+.line-block__item {
  margin-top: 0;
}

.form .licence_block.label_block.onoff {
  display: flex;
}

.form .licence_block.label_block.onoff input[type="checkbox"] {
  display: inline-block;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  border: 1px solid rgba(34, 34, 34, 0.6);
  position: relative;
  transition: all 0.2s ease-out;
  margin-right: 10px;
}

.form .licence_block.label_block.onoff input[type="checkbox"]:checked {
  border-color: #222;
  background: #222 url(/local/templates/happy/img/icon-checkbox.svg) no-repeat center;
  background-size: 10px 10px;
}

.form .licence_block.label_block.onoff label {
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 130%;
  opacity: 0.6;
}

.form .licence_block.label_block.onoff label a {
  color: inherit;
}

#wrap_ajax_auth.form .form_head h2 {
  margin-top: 0;
}

.form .form-control {
  position: relative;
}

.form .form-control label.error {
  color: #f00;
  position: absolute;
  right: 0;
  top: 0;
  font-size: 12px;
  top: 2px;
}

/* ==========================================================================
   SEARCH
   ========================================================================== */
.search {}

.search__row {
  display: flex;
}

.search__row .input.input_without-placeholder {
  flex-grow: 1;
}

.search__row .input input {
  display: block;
  width: 100%;
  height: 43px;
  border-radius: 6px 0 0 6px;
  border: 1px solid #ececec;
  background: #fff;
  padding: 0 15px;
  color: #222;
  font-size: 15px;
  font-weight: 500;
  line-height: 130%;
  outline: none;
}

.search__row .button {
  display: inline-block;
  padding: 10px 30px;
  border-radius: 0 6px 6px 0;
  background: #222;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  text-decoration: none;
  transition: all 0.2s ease-out;
  text-align: center;
  border: none;
  height: 43px;
}

.arrow_mobile {
  display: none;
}

/* ==========================================================================
   MEDIA
   ========================================================================== */
@media only screen and (max-width: 1339.98px) {
  .owl-prev {
    left: -34px;
  }

  .owl-next {
    right: -34px;
  }
}

@media only screen and (max-width: 1279.98px) {
  .container {
    width: 960px;
  }

  .header__search {
    width: 240px;
  }

  .header__button {
    font-size: 0;
    padding: 0;
    height: 48px;
    width: 48px;
  }

  .header__button:before {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }

  .header__ratings {
    display: none;
  }

  .footer__left {
    margin-right: 20px;
  }

  .promotion_orange .promotion__img {
    margin-left: 0;
    margin-right: 0;
  }

  .promotion__caption {
    margin-bottom: 13px;
  }

  .promotion__img {
    margin-bottom: 15px;
  }

  .grab__img {
    width: 250px;
  }

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

  .advantages__right {
    width: 440px;
  }

  .stock__item {
    padding-left: 15px;
    padding-right: 15px;
  }

  .grip__block:after {
    right: 0;
  }

  .grip__block {
    padding: 20px;
  }

  .telegram__left {
    width: 330px;
  }

  .contacts__map img {
    height: 299px;
  }

  .contacts__map iframe {
    height: 299px;
  }

  .mode .title {
    white-space: normal;
  }

  .page__right {
    width: 400px;
  }

  .page_about ul {
    grid-template-columns: 1fr;
  }

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

  .card__left {
    width: 380px;
  }

  .card__previews {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
  }

  .card__previews a {
    width: auto;
  }

  .card__gifts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
  }

  .card__gift {
    width: auto;
  }

  .card__bonus {
    margin-top: 10px;
  }

  .cart__right {
    width: 320px;
  }

  .order__right {
    width: 320px;
  }

  .columns__right {
    width: 650px;
  }

  .product-item-image-wrapper img {
    height: 280px;
  }
}

@media only screen and (max-width: 991.98px) {
  * {
    -webkit-tap-highlight-color: transparent;
  }

  .arrow_mobile {
    display: block;
  }

  .container {
    width: 720px;
  }

  .arrow_open {
    display: none;
  }

  .top {
    display: none;
  }

  .header {
    position: fixed;
    left: -100%;
    width: 100%;
    top: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    z-index: 10;
    overflow-y: auto;
    border-radius: 0;
  }

  .header.active {
    left: 0;
  }

  .header__top .header__row {
    flex-direction: column;
    align-items: flex-start;
  }

  .header__middle .header__row {
    flex-wrap: wrap;
  }

  .header {
    height: auto;
  }

  .header__catalog {
    width: 100%;
  }

  .header__button {
    margin-right: 0;
    width: 100%;
    font-size: 16px;
    display: flex;
    align-items: center;
    height: auto;
    padding: 13px 17px;
    order: 2;
    margin-top: 20px;
  }

  .header__button:before {
    position: static;
    flex-shrink: 0;
    transform: translate(0, 0);
    margin-right: 10px;
  }

  .header .header__row {
    height: auto;
  }

  .header__middle {
    order: 1;
    padding-top: 10px;
  }

  .header__top {
    order: 2;
    background: none;
    margin-top: 4px;
  }

  .header_catalog .header__top {
    display: none;
  }

  .header_catalog .header__bottom {
    border-top: none;
    border-radius: 0;
    box-shadow: none;
  }

  .header_catalog .header__catalog {
    display: none;
  }

  .header__menu {
    order: 1;
    width: 100%;
    padding-bottom: 14px;
    position: relative;
  }

  .header__menu:after {
    content: "";
    position: absolute;
    left: -16px;
    bottom: 0;
    right: -16px;
    height: 1px;
    background: #ebebeb;
  }

  .header__phone {
    order: 2;
    margin-top: 30px;
  }

  .header__city {
    order: 3;
    margin-top: 19px;
  }

  .header__ratings {
    order: 4;
    flex-direction: column;
    display: flex;
    margin-top: 20px;
  }

  .header__ratings>*+* {
    margin-left: 0;
    margin-top: 16px;
  }

  .header__bottom {
    order: 3;
    display: none;
    margin-top: 20px;
  }

  .header_catalog .header__bottom {
    display: block;
  }

  .header__nav ul {
    display: block;
    font-weight: 500;
  }

  .header__nav ul li {
    border-bottom: 1px solid #ebebeb;
  }

  .header__nav a {
    height: auto;
    padding: 16px 0;
    line-height: 110%;
  }

  .header__nav ul li.parent>a {
    padding-right: 20px;
    position: relative;
  }

  .header__nav ul li.parent>a:after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0, -50%);
    background: url(/local/templates/happy/img/parent.svg) no-repeat;
    width: 7px;
    height: 17px;
    display: none;
  }

  .header__nav ul li.parent {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .header__logo {
    width: 175px;
  }

  .header__btns {
    display: flex;
  }

  .header__back {
    display: flex;
  }

  .header__search {
    display: none;
    order: 1;
    margin-bottom: -2px;
  }

  .header__search input[type="text"] {
    height: 40px;
    font-size: 13px;
    background-position: 10px center;
  }

  .header__search-close {
    display: block;
  }

  .header__catalog {
    flex-direction: column;
  }

  .header_search .header__logo {
    display: none;
  }

  .header_search .header__search {
    display: flex;
  }

  .header_search .header__btns {
    display: none;
  }

  .header__links {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    opacity: 1;
    visibility: visible;
    height: 71px;
    padding: 0 16px;
    justify-content: space-between;
    border-radius: 10px 10px 0 0;
    box-shadow: 0 0 26px 0 rgba(0, 0, 0, 0.11);
  }

  .header__link {
    height: 39px;
  }

  .header.active .header__links {
    opacity: 0;
    visibility: hidden;
  }

  .header-mobile {
    display: block;
  }

  .header__menu ul {
    display: block;
    font-size: 16px;
  }

  .header__menu ul li+li {
    margin-left: 0;
    border-top: 1px solid #ebebeb;
  }

  .header__menu ul a {
    display: block;
    padding: 16px 0;
  }

  .header__link_favorite:before {
    width: 20px;
    height: 20px;
  }

  .header__link_cart:before {
    width: 20px;
    height: 20px;
  }

  .header__link_bonus:before {
    width: 20px;
    height: 20px;
  }

  .header__link_account:before {
    width: 20px;
    height: 20px;
  }

  .header__link span {
    font-size: 10px;
  }

  .header__link {
    color: rgba(34, 34, 34, 1);
    width: 63px;
    font-size: 11px;
    opacity: 0.5;
  }

  .header__link.active {
    opacity: 1;
  }

  .header__links>*+* {
    margin: 0;
  }

  .header__link_home {
    display: flex;
  }

  .header__link_catalog {
    display: flex;
  }

  .top__bg:before,
  .top__bg:after {
    display: none;
  }

  .footer__row {
    display: block;
  }

  .footer__left {
    width: auto;
    margin-right: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 40px;
  }

  .footer__logo {
    margin: 0;
  }

  .footer__phone {
    margin: 0;
  }

  .footer__socialize {
    margin: 0;
  }

  .footer__rating {
    margin: 0;
  }

  .footer__nav {
    font-size: 15px;
  }

  .footer__caption {
    font-size: 15px;
  }

  .footer__bottom {
    margin-top: 40px;
    display: block;
  }

  .footer__policy {
    padding-left: 0;
    margin-top: 10px;
  }

  .advantages__columns {
    display: block;
  }

  .advantages__right {
    width: auto;
    margin-left: 0;
    margin-top: 20px;
  }

  .showcase__grid {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px 10px;
  }

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

  .grab__img {
    width: 170px;
  }

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

  .business__columns {
    display: block;
  }

  .business__left {
    margin-top: 20px;
  }

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

  .mode__columns {
    display: block;
  }

  .mode__left {
    margin-top: 20px;
  }

  .grip {
    text-align: center;
  }

  .grip__block:after {
    display: block;
    position: static;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
  }

  .grip__block {
    padding: 40px 80px 0;
  }

  .grip .title {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }

  .stock__item {
    padding: 30px;
  }

  .contacts__columns {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .contacts__map iframe,
  .contacts__map img {
    height: 283px;
  }

  .footer {
    padding-bottom: 100px;
  }

  .telegram__columns {
    display: block;
  }

  .telegram__right {
    margin-top: 16px;
  }

  .telegram__left {
    width: auto;
    margin-right: 0;
  }

  .telegram__left .telegram__button {
    display: none;
  }

  .telegram__right .telegram__button {
    margin-top: 16px;
    display: flex;
    justify-content: center;
  }

  .page__columns {
    display: block;
  }

  .page__right {
    width: auto;
    margin-top: 16px;
    margin-left: 0;
  }

  .edges__items {
    grid-template-columns: 1fr 1fr;
    gap: 40px 30px;
  }

  .menu+.filter {
    margin-top: 0;
  }

  .menu+.bx-filter {
    margin-top: 0;
  }

  .filter {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    z-index: 10;
    border: none;
    padding: 16px;
    overflow-y: auto;
    opacity: 0;
    visibility: hidden;
  }

  .filter.active {
    opacity: 1;
    visibility: visible;
  }

  .bx-filter {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    z-index: 10;
    border: none;
    padding: 16px;
    overflow-y: auto;
    opacity: 0;
    visibility: hidden;
  }

  .bx-filter.active {
    opacity: 1;
    visibility: visible;
  }

  .filter__close {
    position: absolute;
    top: 20px;
    right: 16px;
    width: 14px;
    height: 14px;
    background: url(/local/templates/happy/img/close-filter.svg) no-repeat;
  }

  .bx-filter-close {
    position: absolute;
    top: 20px;
    right: 16px;
    width: 14px;
    height: 14px;
    background: url(/local/templates/happy/img/close-filter.svg) no-repeat;
  }

  .filter__title {
    text-align: center;
    margin-bottom: 30px;
  }

  .columns__row {
    display: block;
  }

  .columns__left {
    width: auto;
    margin-right: 0;
  }

  .sort {
    position: static;
  }

  .products-control {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
  }

  .menu__title {
    display: none;
  }

  .menu {
    border: none;
    padding: 0;
    border-radius: 0;
    overflow-y: auto;
  }

  .menu::-webkit-scrollbar {
    width: 0;
  }

  .menu {
    -ms-overflow-style: none;
  }

  .menu {
    overflow: -moz-scrollbars-none;
  }

  .menu__list ul {
    display: flex;
    gap: 5px;
  }

  .menu__list li+li {
    margin-top: 0;
  }

  .menu__list a {
    padding: 6px 12px;
    display: block;
    border-radius: 6px;
    background: #f6f6f6;
    white-space: nowrap;
  }

  .menu__list a:hover {
    text-decoration-color: transparent;
  }

  .menu__list a:hover:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border: 1px solid #222;
    border-radius: 6px;
  }

  .menu__list a:before {
    display: none;
  }

  .products {
    padding-top: 0;
  }

  .columns__right {
    margin-top: 15px;
    width: auto;
  }

  .categories+.subcategories {
    margin-top: 15px;
  }

  .subcategories {
    margin-bottom: 15px;
  }

  .subcategories__row a {
    font-size: 13px;
  }

  .subcategories__row {
    gap: 6px;
  }

  .menu__list {
    font-size: 13px;
    font-weight: 500;
  }

  .select__value {
    font-size: 13px;
    height: 36px;
  }

  .filter-button {
    display: block;
  }

  .subcategories__row {
    height: 72px;
    overflow: hidden;
  }

  .subcategories__more {
    display: block;
  }

  .card__columns {
    display: block;
  }

  .card__left {
    width: auto;
    margin-right: 0;
  }

  .card__right {
    margin-top: 20px;
  }

  .card__bonus {
    margin-top: 0;
  }

  .card__previews {
    display: none;
  }

  .cart__columns {
    display: block;
  }

  .cart__right {
    width: auto;
    margin-left: 0;
    margin-top: 20px;
  }

  .order__columns {
    display: block;
  }

  .order__right {
    width: auto;
    margin-left: 0;
    margin-top: 50px;
  }

  .ord__columns {
    display: block;
  }

  .ord__right {
    margin-top: 20px;
  }

  .success {
    text-align: left;
  }

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

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

  .socialize {
    order: 3;
    margin-top: 10px;
  }
}

@media only screen and (max-width: 767.98px) {
  .container {
    width: 540px;
    padding: 0 16px;
  }

  .footer__columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px 10px;
  }

  .footer__left {
    flex-wrap: wrap;
  }

  .footer__logo {
    order: 1;
  }

  .footer__socialize {
    order: 2;
  }

  .footer__phone {
    order: 3;
    width: 50%;
    margin-top: 20px;
  }

  .footer__rating {
    order: 4;
    width: 50%;
    margin-top: 20px;
    display: flex;
    justify-content: flex-end;
  }

  .slider__block {
    height: 286px;
    width: 60%;

  }

  div.slider {
    width: 90%;
    border-radius: 10px;
    margin: 0 auto;
    overflow: hidden;
  }

  .slider__title {
    font-size: 26px;
    max-width: 320px;
    color: rgba(34, 34, 34, 1);
  }

  .slider__title a {
    color: rgba(34, 34, 34, 1);
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
  }

  .slider__title .preview-text-block p {
    color: rgba(34, 34, 34, 1);
  }

  .slider__city .city__value:after {
    width: 14px;
    height: 6px;
    background-size: cover;
    filter: grayscale(1) brightness(1000%);
  }

  .slider__city .city__value {
    padding-right: 20px;
  }

  .slider__city .city__popup {
    top: auto;
    left: -8px;
    bottom: 29px;
    width: 300px;
  }

  .slider__city .city__popup:before {
    display: none;
  }

  .slider__city .city__popup a {
    color: #222;
  }

  .slider .owl-dots {
    bottom: 10px;
  }

  .slider__text {
    font-size: 15px;
    margin-top: 10px;
    max-width: 310px;
    color: black;
  }

  .slider__button {
    margin-top: 10px;
  }

  .slider__button a {
    padding: 10px 20px;
    font-size: 13px;
  }

  .slider__img:before {
    content: "";
    background: #372626;
    position: absolute;
    opacity: 0.2;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }

  .slider__img {
    display: none;
  }

  .slider__img_mobile {
    display: block;
  }

  .owl-prev,
  .owl-next {
    display: none;
  }

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

  .title {
    font-size: 22px;
    line-height: 130%;
  }

  .popup .checkout-basket-title {
    padding-top: 5px;
    margin-bottom: 30px;
  }

  .popup .checkout-basket-title:before {
    font-size: 22px;
  }

  .promotion__caption {
    font-size: 22px;
    margin-bottom: 10px;
  }

  .promotion__description {
    font-size: 13px;
  }

  .promotion__more span {
    font-size: 13px;
    padding: 10px 20px;
  }

  .promotion {
    padding: 10px;
  }

  .promotion_orange .promotion__img {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 0;
  }

  .carousel__row {
    margin-bottom: 14px;
  }

  .more {
    font-size: 13px;
    padding: 4px 18px 5px 10px;
  }

  .more:after {
    width: 5px;
    height: 8px;
    background-size: cover;
    margin-top: -4px;
  }

  .product__name {
    font-size: 13px;
    margin-bottom: 10px;
  }

  .product-item-title {
    font-size: 13px;
    margin-bottom: 10px;
  }

  .product__img {
    margin-bottom: 10px;
  }

  .product-item-image-wrapper {
    margin-bottom: 10px;
  }

  .product__buttons {
    margin-top: 10px;
  }

  .product__price {
    font-size: 15px;
  }

  .product-item-price-container {
    font-size: 15px;
  }

  .product-item-add a {
    font-size: 13px;
    height: 37px;
  }

  .product__add a {
    font-size: 13px;
    height: 37px;
  }

  .product__add a:before {
    width: 15px;
    height: 15px;
    background-size: cover;
  }

  .product-item-add a:before {
    width: 15px;
    height: 15px;
    background-size: cover;
  }

  .product-item-scu-container {
    font-size: 13px;
  }

  .product-item-scu-item-text-container {
    font-size: 13px;
  }

  .carousel .owl-dots {
    display: none;
  }

  .carousel {
    overflow: hidden;
  }

  .carousel .owl-carousel .owl-stage-outer {
    overflow: visible;
  }

  .showcase__all {
    margin-top: 20px;
    font-size: 15px;
  }

  .category {
    height: 125px;
    font-size: 13px;
    background-size: auto 90px;
    padding: 8px;
  }

  .categories {
    margin-bottom: -16px;
  }

  .categories__grid {
    overflow-y: auto;
    display: flex;
    gap: 6px;
    margin-right: -16px;
    margin-left: -16px;
    margin-bottom: -16px;
    padding: 0 16px;
    flex-direction: column;
    flex-wrap: wrap;
    height: 272px;
  }

  .categories__grid::-webkit-scrollbar {
    width: 0;
  }

  .categories__grid {
    -ms-overflow-style: none;
  }

  .categories__grid {
    overflow: -moz-scrollbars-none;
  }

  .categories__grid .category {
    width: calc(33% - 6px);
    flex-shrink: 0;
    min-width: 115px;
  }

  .categories .title {
    margin-bottom: 14px;
  }

  .grab__block {
    padding: 15px 176px 15px 15px;
    text-align: left;
  }

  .grab__button {
    justify-content: flex-start;
  }

  .grab__img {
    left: auto;
    right: 0;
    width: 200px;
  }

  .grab__img+.grab__img {
    display: none;
  }

  .grab__description {
    font-size: 13px;
  }

  .grab .title {
    margin-bottom: 14px;
  }

  .grab__button {
    margin-top: 20px;
  }

  .grab__button a {
    font-size: 13px;
    padding: 10px 20px;
  }

  .advantages__text {
    font-size: 15px;
  }

  .advantages__text ul {
    margin: 10px 0;
  }

  .advantages__caption {
    margin-bottom: 6px;
    padding-bottom: 6px;
  }

  .advantages__description {
    font-size: 13px;
  }

  .advantages__grid {
    gap: 30px 20px;
  }

  .business .title {
    margin-bottom: 16px;
  }

  .business__left {
    margin-top: 16px;
  }

  .business__cover img {
    height: 320px;
    object-fit: cover;
  }

  .stock__item {
    padding: 15px;
  }

  .stock__item .title {
    margin-bottom: 16px;
    max-width: 167px;
  }

  .stock__text {
    font-size: 13px;
    max-width: 167px;
  }

  .stock__more span {
    font-size: 13px;
    padding: 10px 20px;
  }

  .mode .title {
    margin-bottom: 16px;
  }

  .mode__left {
    margin-top: 16px;
  }

  .mode__cover img {
    height: 320px;
    object-fit: cover;
  }

  .grip__block {
    padding: 25px 15px 0;
  }

  .grip__row {
    display: block;
  }

  .grip__input {
    display: block;
    width: 100%;
    text-align: center;
    height: 47px;
    font-size: 13px;
  }

  .grip__submit {
    display: block;
    width: 100%;
    margin: 6px 0 0;
    height: 47px;
    font-size: 13px;
  }

  .grip__agree {
    margin-top: 10px;
  }

  .grip .title {
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
  }

  .grab__text {
    font-size: 15px;
  }

  .telegram .title {
    margin-bottom: 16px;
  }

  .telegram__text {
    font-size: 15px;
  }

  .telegram__grid {
    grid-template-columns: 1fr 1fr;
    grid-row: inherit;
  }

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

  .contacts__item {
    padding: 15px 15px 15px 45px;
    position: relative;
  }

  .contacts__text {
    font-size: 15px;
  }

  .contacts__item:before {
    position: absolute;
    left: 15px;
    top: 15px;
  }

  .breadcrumbs {
    margin: 16px 0;
  }

  .h1 {
    margin: 16px 0;
  }

  .page {
    font-size: 15px;
  }

  .page_about ul {
    gap: 6px;
    font-size: 15px;
  }

  .edges .title {
    font-size: 36px;
  }

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

  .mention .title {
    margin-bottom: 20px;
  }

  .pagination__more a {
    font-size: 13px;
  }

  .card__buttons {
    position: fixed;
    z-index: 9;
    bottom: 61px;
    left: 0;
    right: 0;
    padding: 12px 16px 22px;
    border-radius: 10px 10px 0 0;
    background: #fff;
    box-shadow: 0 -4px 14px 0 rgba(118, 118, 118, 0.15);
    justify-content: space-between;
    flex-direction: column;
    margin-bottom: 0;
  }

  .card__fixed {
    order: 3;
  }

  .card__auth {
    order: 1;
    margin-bottom: 10px;
    margin-top: 0;
  }

  .card__bonus {
    order: 2;
    margin-bottom: 10px;
    justify-content: center;
  }

  .card__favorite,
  .card__favorite.js-favorite {
    order: 1;
    margin-left: 0;
    margin-right: 8px;
    flex-shrink: 0;
    height: 50px;
    width: 50px;
  }

  .card__add {
    font-size: 14px;
    padding: 0 15px;
    order: 2;
    flex-grow: 1;
    height: 50px;
  }

  .card__fixed div[data-entity="main-button-container"] {
    order: 2;
    flex-grow: 1;
  }

  .card__fixed div[data-entity="main-button-container"] .card__add {
    width: 100%;
  }

  .card__add i {
    margin: 0 auto;
  }

  .link-auth {
    font-size: 13px;
    padding: 0 15px;
    height: 41px;
  }

  .card__bonus {
    font-size: 14px;
    height: 41px;
  }

  .card__bonus:before {
    width: 18px;
    height: 18px;
    background-size: cover;
    margin-right: 9px;
    position: relative;
    top: -1px;
  }

  .card__title {
    font-size: 22px;
    margin-bottom: 16px;
  }

  .card__compound {
    margin-bottom: 16px;
  }

  .card div[id$="skudiv"] {
    margin-bottom: 16px;
  }

  .card__attention {
    margin-bottom: 16px;
  }

  .card__description {
    margin-bottom: 20px;
  }

  .card__caption {
    font-size: 22px;
    margin-bottom: 10px;
  }

  .card__gifts {
    overflow-y: auto;
  }

  .card__gifts::-webkit-scrollbar {
    width: 0;
  }

  .card__gifts {
    -ms-overflow-style: none;
  }

  .card__gifts {
    overflow: -moz-scrollbars-none;
  }

  .card__gift {
    width: 108px;
  }

  .card__tabs {
    overflow-y: auto;
    padding: 0 16px;
    margin-left: -16px;
    margin-right: -16px;
    margin-bottom: 5px;
    margin-top: 31px;
  }

  .card__tab {
    font-size: 13px;
  }

  .card__text {
    font-size: 15px;
  }

  .cart__img {
    width: 110px;
    margin-right: 10px;
  }

  .cart__top .cart__flex {
    display: block;
  }

  .cart__name {
    font-size: 13px;
  }

  .cart__price {
    margin-top: 19px;
    font-size: 15px;
  }

  .cart__block {
    display: block;
  }

  .cart__bottom {
    margin-top: 19px;
  }

  .cart__count {
    width: 85px;
    height: 28px;
    padding: 2px;
  }

  .cart__minus {
    width: 24px;
    height: 24px;
    background-color: #fff;
  }

  .cart__plus {
    width: 24px;
    height: 24px;
    background-color: #fff;
  }

  .cart__value {
    font-size: 12px;
  }

  .cart__delete {
    width: 26px;
    height: 26px;
  }

  .cart__favorite {
    width: 26px;
    height: 26px;
  }

  .cart__description {
    font-size: 10px;
    margin-top: 5px;
  }

  .cart__quantity {
    font-size: 12px;
    font-weight: 500;
  }

  .cart__item+.cart__item {
    margin-top: 10px;
  }

  .cart__form {
    background: none;
    padding: 0;
  }

  .cart__form-wrapper .maxma {
    left: 0;
    right: 0;
    top: 60px;
  }

  .cart__saving span,
  .cart__saving b {
    background: #fff;
  }

  .cart__promo-code input {
    font-size: 13px;
    height: 45px;
  }

  .cart__radio {
    font-size: 13px;
  }

  .cart__total {
    font-size: 17px;
  }

  .cart__saving {
    font-size: 13px;
  }

  .cart__info {
    margin-top: 20px;
  }

  .cart__buttons {
    margin-top: 15px;
  }

  .cart__one-click {
    font-size: 15px;
  }

  .cart__button {
    font-size: 15px;
  }

  .order__items {
    display: block;
  }

  .order__item+.order__item {
    margin-top: 30px;
  }

  .order__items_radio .order__item+.order__item {
    margin-top: 10px;
  }

  .order__form {
    padding: 0;
    background: none;
  }

  .order__param span {
    background: #fff;
  }

  .order__param b {
    background: #fff;
  }

  .order__total {
    font-size: 17px;
    margin-bottom: 15px;
  }

  .order__param {
    font-size: 13px;
  }

  .order__button {
    font-size: 15px;
  }

  .order__agree {
    font-size: 11px;
  }

  .order__btn {
    font-size: 15px;
    padding: 14px 30px;
  }

  .success {
    margin-top: 26px;
  }

  .ord {
    margin-top: 26px;
  }

  .ord__title {
    font-size: 22px;
    margin-bottom: 18px;
  }

  .ord__text {
    font-size: 13px;
  }

  .ord__items {
    gap: 20px 10px;
  }

  .ord__name {
    font-size: 13px;
  }

  .ord__quantity {
    font-size: 12px;
  }

  .ord__sum {
    font-size: 15px;
  }

  .ord__links {
    margin-top: 20px;
    flex-direction: column;
  }

  .ord__link {
    font-size: 15px;
  }

  .success__text {
    font-size: 16px;
  }

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

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

  .product-item-title {
    max-height: 34px;
  }

  .product-item-image-wrapper img {
    height: 226px;
  }

  .columns__right .product-item-image-wrapper img {
    height: 226px;
  }
}

@media only screen and (max-width: 575.98px) {
  .container {
    width: 100%;
  }

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

  .products {
    grid-template-columns: 1fr 1fr;
    gap: 20px 10px;
  }

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

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

  .profile .wrap_md {
    display: block;
  }

  .profile .iblock.label_block {
    margin-right: 0;
    width: auto;
  }

  .profile .iblock.text_block {
    margin-top: 5px;
  }

  .profile .border_block {
    border: none;
    padding: 0;
  }

  .profile input[type="tel"],
  .profile input[type="password"],
  .profile input[type="text"] {
    padding: 0 10px;
  }

  .profile .line-block.form_footer__bottom {
    display: block;
  }

  .profile .line-block__item+.line-block__item {
    margin-left: 0;
    margin-top: 5px;
  }

  .global-ajax-wrapper {
    padding-left: 15px;
    padding-right: 15px;
  }

  .form .btn.btn-default.btn-lg {
    padding-left: 16px;
    padding-right: 16px;
  }

  .form .btn.btn-transparent-border-color.btn-lg.pull-right.register {
    padding-left: 16px;
    padding-right: 16px;
  }

  .promotion__img {
    margin-bottom: -3px;
  }

  .popup__close,
  .global-ajax-wrapper button.mfp-close,
  .popup button.mfp-close {
    right: 0;
  }

  .agreement {
    left: 10px;
    bottom: 10px;
    transform: translate(0, 0);
    width: 280px;
    padding: 10px;
  }

  .agreement__text {
    font-size: 12px;
  }

  .agreement__button {
    font-size: 12px;
    margin-top: 10px;
  }

  .agreement__button a {
    padding: 10px;
  }
}

@media only screen and (max-width: 374.98px) {
  .phone__number {
    font-size: 16px;
  }

  .phone__caption {
    font-size: 12px;
    margin-bottom: 3px;
  }

  .socialize a {
    width: 30px;
    height: 30px;
    background-size: cover;
    border-radius: 50%;
  }

  .footer__bottom {
    margin-top: 30px;
  }

  .footer__copyright {
    font-size: 12px;
  }

  .footer__policy {
    font-size: 12px;
  }

  .footer__caption {
    font-size: 14px;
  }

  .footer__nav {
    font-size: 14px;
  }

  .footer__columns {
    gap: 30px 10px;
  }

  .footer__logo {
    width: 110px;
  }

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

  .categories__grid .category {
    width: calc(40% - 6px);
    flex-shrink: 0;
    background-size: auto 80px;
  }

  .grab__block {
    padding-right: 127px;
  }

  .grab__img {
    width: 140px;
  }

  .contacts__text {
    font-size: 14px;
  }

  .grip__block:after {
    width: 257px;
    height: 229px;
  }

  .card__add {
    font-size: 13px;
    padding: 0 8px;
    height: 41px;
  }

  .card__favorite,
  .card__favorite.js-favorite {
    width: 41px;
    height: 41px;
    margin-right: 5px;
  }

  .card__add:before {
    width: 17px;
    height: 17px;
    background-size: cover;
    margin-right: 5px;
  }

  .card__add i {
    height: 16px;
  }

  .link-auth {
    display: inline-block;
    line-height: 130%;
    height: auto;
    padding: 10px 20px;
  }

  .card-count {
    width: 120px;
  }

  .popup {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/*==========  Mobile First Method  ==========*/
@media only screen and (min-width: 576px) {}

@media only screen and (min-width: 768px) {}

@media only screen and (min-width: 992px) {
  .header__bottom.active {
    position: absolute;
    left: 0;
    right: 0;
    top: 107px;
    background: #fff;
    box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.08);
    z-index: 5;
    padding: 20px 0 55px;
  }

  .header__bottom.active:before {
    content: "";
    position: absolute;
    height: 11px;
    top: -11px;
    left: 0;
    right: 0;
  }

  .header__bottom.active .header__nav {
    display: flex;
  }

  .header__bottom.active .header__columns {
    display: flex;
  }

  .header__bottom.active .header__left {
    flex-grow: 1;
  }

  .header__bottom.active .header__right {
    width: 286px;
    flex-shrink: 0;
    margin-left: 20px;
    display: block;
  }

  .header__bottom.active .header__nav>ul {
    display: block;
    width: 204px;
  }

  .header__bottom.active .header__nav>ul a {
    height: 48px;
    line-height: 48px;
    padding: 0 30px 0 10px;
    transition: background-color 0.2s ease-out;
  }

  .header__bottom.active .header__nav>ul li.parent a {
    padding-right: 20px;
    position: relative;
  }

  .header__bottom.active .header__nav>ul li.parent a:after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translate(0, -50%);
    background: url(/local/templates/happy/img/parent-desktop.svg) no-repeat;
    width: 7px;
    height: 12px;
  }

  .header__bottom.active .header__nav>ul li a:hover,
  .header__bottom.active .header__nav>ul li a.active {
    background: #f2f2f2;
  }

  .header__bottom.active .header__categories {
    border-left: 1px solid #d6d7db;
    padding-left: 20px;
    display: block;
    flex-grow: 1;
  }

  .header__bottom.active .header__categories ul.active {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
  }

  .header__bottom.active .header__categories ul {
    font-weight: 500;
    line-height: 110%;
  }

  .header__bottom.active .header__categories ul a {
    display: inline;
    height: auto;
    line-height: 110%;
  }

  .header__button.active {
    background: #fff;
    color: #222;
  }

  .header__button.active:before {
    background-image: url(/local/templates/happy/img/btn-close-desktop.svg);
  }
}

@media only screen and (max-width: 767px) {
  .header:not(:has(.header__button.active)) .header__nav .parent:hover>ul.child-block-section {
    display: none;
  }

  .slider__item .container {
    background: linear-gradient(90.18deg, #F8F8FA 28.62%, rgba(248, 248, 250, 0) 75.85%);
  }

  .slider__block {
    width: 60%;
  }
}

.articles__empty {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  flex-direction: column;
  gap: 20px;
}

.articles__empty p {
  font-size: 20px;
  font-weight: 600;
  color: #222;
  text-align: center;
  margin: 0;
}

.articles__empty-btn {
  display: inline-block;
  padding: 10px 20px;
  font-weight: 500;
  background-color: #222;
  color: #fff;
  border-radius: 5px;
  text-decoration: none;
  font-size: 16px;
}

.articles__empty-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  align-items: center;
}

.popup-container {
  position: fixed;
  bottom: 20px;
  left: 20px;
  z-index: 9999;
  display: none;
  width: 320px;
  background: white;
  border-radius: 10px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.popup-content {
  padding: 16px;
}

.popup-header h3 {
  margin: 0 0 12px 0;
  font-size: 18px;
  color: #333;
}

.popup-body p {
  margin: 0;
  color: #555;
  font-size: 14px;
  line-height: 1.5;
}

.popup-body a {
  color: #222;
  font-weight: 600;
  text-decoration: underline;
}

.popup-footer {
  margin-top: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.btn-telegram {
  background-color: #222;
  color: white;
  padding: 10px 20px;
  border: none;
  border-radius: 25px;
  font-size: 14px;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  display: inline-block;
  position: relative;
  overflow: hidden;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: background-color 0.3s ease;
  z-index: 1;
}

.btn-telegram::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.3) 50%,
      rgba(255, 255, 255, 0) 100%);
  transform: skewX(-25deg);
  transition: none;
  pointer-events: none;
  z-index: 2;
}

.btn-telegram:hover::before {
  left: 150%;
  transition: left 0.7s ease;
}

.close-btn {
  font-size: 20px;
  cursor: pointer;
  color: #999;
  transition: color 0.3s;
}

.close-btn:hover {
  color: #333;
}

.d-none {
  display: none !important;
}

#telegramPopup .close-btn {
  position: absolute;
  z-index: 10000;
  top: 5px;
  right: 15px;
}
/* End */
/* /local/templates/happy/css/owl.carousel.css?17754704103971 */
/* /local/templates/happy/css/swiper-bundle.min.css?177547041018454 */
/* /local/templates/happy/css/magnific-popup.css?177547041011158 */
/* /local/templates/happy/css/ion.rangeSlider.css?17754704102556 */
/* /local/templates/happy/css/ion.rangeSlider.skinHTML5.css?17754704102385 */
/* /local/templates/happy/components/bitrix/search.title/header-search/style.css?1775470410111 */
/* /local/templates/happy/components/bitrix/sale.basket.basket.line/header-link/style.css?17754704104804 */
/* /local/templates/happy/components/bitrix/catalog.section.list/header-catalog/style.css?1775470410565 */
/* /local/templates/happy/components/bitrix/search.title/header-mobile-search/style.css?1775470410111 */
/* /local/templates/happy/components/bitrix/form.result.new/popup_catalog/style.css?17754704101535 */
/* /local/templates/happy/components/bitrix/form.result.new/popup_cart/style.css?17754704101306 */
/* /local/templates/happy/styles.css?17754704104669 */
/* /local/templates/happy/template_styles.css?1775470410146682 */
