:root {
	--font-family: "Montserrat", sans-serif;
	--fw-normal: 400;
	--fs-normal: 15px;
	--fs-h1: 40px;
	--fs-h2: 32px;
	--fs-h3: 27.6px;
	--fs-h4: 20px;
	--fs-h5: 19.4px;
	--fs-h6: 18px;
	--fs-h7: 16px;
	--fs-h8: 14px;
	--fs-h9: 12px;
	--fs-h10: 10px;
	--fs-main-banner-lead-text: 57px;
	--fs-main-banner-sublead-text: 16px;
	
	--lh-normal: 1.625;
	--color-text: #000;
	--color-text-1: #0B090A;
	--color-text-2: #2B2B2B;
	--color-text-3: #808080;
	--color-text-4:#AAAAAA;
	
	--color-white:#fff;
	
	--color-bg-1: rgba(255, 122, 0, 0.1);
	--color-bg-2: #EAEAEA;
	--color-bg-3: #f4f4f4;
	--color-fun-orange: #FF7A00;
	
	--default-border-radius: 24px;
;

}

.color-text {
	color: var(--color-text);
}
.color-text-1 {
	color: var(--color-text-1);
}
.color-text-2 {
	color: var(--color-text-2);
}
.color-text-3 {
	color: var(--color-text-3);
}
.color-text-4 {
	color: var(--color-text-4);
}

.color-fun {
	color: var(--color-fun-orange);
}

.active-bg {
	background-color: var(--color-fun-orange) !important;
}

.fs-normal {
	font-size: var(--fs-normal);
}
.fs-h1 {
	font-size: var(--fs-h1);
}
.fs-h2 {
	font-size: var(--fs-h2);
}
.fs-h3 {
	font-size: var(--fs-h3);
}
.fs-h4 {
	font-size: var(--fs-h4);
}
.fs-h5 {
	font-size: var(--fs-h5);
}
.fs-h6 {
	font-size: var(--fs-h6);
}
.fs-h7 {
	font-size: var(--fs-h7);
}
.fs-h8 {
	font-size: var(--fs-h8);
}
.fs-h9 {
	font-size: var(--fs-h9);
}
.fs-h10 {
	font-size: var(--fs-h10);
}
.mw-25 {
	max-width: 25%;
}
.mw-30 {
	max-width: 30%;
}
.mw-35 {
	max-width: 35%;
}
.mw-40 {
	max-width: 40%;
}
.mw-45 {
	max-width: 45%;
}
.mw-50 {
	max-width: 50%;
}
.mw-55 {
	max-width: 55%;
}
.mw-60 {
	max-width: 60%;
}
.mw-65 {
	max-width: 65%;
}
.mw-70 {
	max-width: 70%;
}
.mw-75 {
	max-width: 75%;
}
.mw-80 {
	max-width: 80%;
}
.mw-85 {
	max-width: 85%;
}
.mw-90 {
	max-width: 90%;
}
.mw-95 {
	max-width: 95%;
}
.w-25 {
	width: 25%;
}
.w-30 {
	width: 30%;
}
.w-35 {
	width: 35%;
}
.w-40 {
	width: 40%;
}
.w-45 {
	width: 45%;
}
.w-50 {
	width: 50%;
}
.w-55 {
	width: 55%;
}
.w-60 {
	width: 60%;
}
.w-65 {
	width: 65%;
}
.w-70 {
	width: 70%;
}
.w-75 {
	width: 75%;
}
.w-80 {
	width: 80%;
}
.w-85 {
	width: 85%;
}
.w-90 {
	width: 90%;
}
.w-95 {
	width: 95%;
}

html,body {
	min-height: 100vh;
}

html,body,div,p {
	font-family: var(--font-family);
	font-size: var(--fs-normal);
	font-weight: var(--fw-normal);
	line-height: var(--lh-normal);
	color: var(--color-text);
}

main {
	min-height: 100vh;
}

a, a:hover, a:visited, a:active {
	color: var(--color-text);
}

a, a:visited, a:active {
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}


.frame-fun {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	position: relative;
	min-height: 100vh;
}

.container-fun {
	width: 100%;
	position: relative;
}

.fun-main-ellipse {
	/* Gradient */
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	padding-top: 50%;
	border-bottom-left-radius: 50% 90%;
	border-bottom-right-radius: 50% 90%;
	
	background: linear-gradient(180.00deg, rgba(255, 122, 0, 0),rgba(255, 122, 0, 0.3) 100%);
	z-index: -1;
}

.fun-header {
	padding: 20px 100px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

@media (max-width:768px) {
	.fun-header {
		padding: 10px;
	}
	.fun-main-ellipse {
		padding-top: 100%;
		border-bottom-left-radius: 50%;
		border-bottom-right-radius: 50%;
	}
}

.fun-header-logo {
	width: auto;
	height: auto;
}
.fun-header-logo a {
	display: block;
}
.fun-header-logo img {
	width: 118px;
}

.fun-footer-nav {
	padding: 100px 160px;
	background-color: var(--color-bg-1);
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

@media (max-width:768px) {
	.fun-footer-nav {
		flex-direction: column;
		padding: 20px;
	}
}

.fun-footer-nav .col1 {
	width: 200px;
}
.fun-footer-nav .col2 {
	width: 180px;
}
.fun-footer-nav .col3 {
	width: 240px;
}
.fun-footer-nav .col4 {
	width: 200px;
}

.fun-footer-disclaimer {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	background-color: var(--color-text-1);
	color: var(--color-text-4);
	padding: 19px 160px;
}
.fun-footer-disclaimer p, .fun-footer-disclaimer a {
	color: inherit;
	margin: 0;
}

.fun-link-with-icon {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 10px;
	align-items: center;
}

/* bootstrap redefine */
.mb-10px {
	margin-bottom: 10px !important;
}
.mb-20px {
	margin-bottom: 20px !important;
}
.mb-30px {
	margin-bottom: 30px !important;
}
.mb-40px {
	margin-bottom: 40px !important;
}
.mb-50px {
	margin-bottom:50px !important;
}
.mb-60px {
	margin-bottom: 60px !important;
}
.mb-70px {
	margin-bottom: 70px !important;
}
.mb-80px {
	margin-bottom: 80px !important;
}
.mb-90px {
	margin-bottom: 90px !important;
}
.mb-100px {
	margin-bottom: 100px !important;
}
.px-10px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-20px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-30px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-40px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-50px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-60px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-70px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-80px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-90px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.px-100px {
	padding-left: 10px !important;
	padding-right: 10px !important;
}




.btn, a.btn, button.btn {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 50px;
	transition: all 0.2s linear;
	gap:10px;
	padding: 0px 24px;
	border-radius: 50px;
	text-decoration: none;
}

.btn:hover {
	text-decoration: none;
}

.btn-fixed {
	width: 225px;
}

.btn.btn-sm {
	height: 30px;
	padding: 0px 12px;
	border-radius: 30px;
}

.btn-primary, .btn-primary:visited {
	color: #fff;
	background-color: #FF7A00;
	border-color: #fff;
	--bs-btn-focus-shadow-rgb: 49,132,253;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-primary:hover, .btn-primary:active {
	color: #fff;
	background-color: #ffa451;
	border-color: #ffa451;
}
.btn-primary:disabled {
	color: #fff;
	background-color: #FF7A00;
	border-color: #FF7A00;
}

.btn-secondary,  .btn-secondary:visited {
	color: #FF7A00;
	background-color: #fff;
	border-color: #FF7A00;
	--bs-btn-focus-shadow-rgb: 49,132,253;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-secondary:hover,.btn-secondary:active {
	color: #fff;
	background-color: #ffa451;
	border-color: #ffa451;
}
.btn-secondary:disabled {
	color: #FF7A00;
	background-color: #fff;
	border-color: #FF7A00;
}

.btn-outline-transparent,  .btn-outline-transparent:visited {
	color: #FF7A00;
	background-color: transparent;
	border-color: transparent;
	--bs-btn-focus-shadow-rgb: 49,132,253;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-outline-transparent:hover,.btn-outline-transparent:active {
	color: #ffa451;
	background-color: transparent;
	border-color: transparent;
}
.btn-outline-transparent:disabled {
	color: #FF7A00;
	background-color: transparent;
	border-color: transparent;
}

.btn-outline-transparent * {
	fill: #FF7A00
}

.nav {
	--bs-nav-link-padding-x: 16px;
	--bs-nav-link-padding-y: 8px;
	--bs-nav-link-font-weight: ;
	--bs-nav-link-color: var(--color-text-2);
	--bs-nav-link-hover-color: var(--color-text-2);
	--bs-nav-link-disabled-color: var(--bs-secondary-color);
	display: flex;
	flex-wrap: wrap;
	padding-left: 0;
	margin-bottom: 0;
	list-style: none;
	gap: 10px;
}

.nav-link {
	border-radius: 30px;
	text-decoration: none;
}

.nav-link:focus, .nav-link:hover, .nav-link.active {
	color: var(--bs-nav-link-hover-color);
	background: rgba(67, 97, 238, 0.3);
	text-decoration: none;
}

.offcanvas-menu {
	--bs-offcanvas-width: 300px;
}
.offcanvas-menu-title {
	color: var(--color-fun-orange);
	margin-bottom: 0;
}
.offcanvas-body .nav {
	flex-direction: column;
}
.offcanvas-body .nav-link:focus,.offcanvas-body  .nav-link:hover,.offcanvas-body  .nav-link.active {
	background: transparent;
	color: var(--color-fun-orange);
	font-weight: 500;
}

.table {
	--bs-table-bg: transparent;
	font-size: 1em;
}

tfoot {
	font-weight: bold;
}



section.fn-home-section-banner {
	position: relative;
	display: block;
	width: 100%;
	height: 420px;
	margin-top: 150px;
	margin-bottom: 220px;
}

section.fn-home-section-banner .fn-home-section-banner-inner {
	width: 100%;
	padding: 0px 70px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
}

@media (max-width: 768px) {
	.fun-footer-disclaimer {
		padding: 19px 20px;
	}
	section.fn-home-section-banner {
		margin-top: 10px;
		margin-bottom: 100px;
		height: auto;
	}
	section.fn-home-section-banner .fn-home-section-banner-inner {
		flex-direction: column;
		padding: 0px;
	}
}

section.fn-home-section-banner .fn-home-section-banner-inner-message {
	padding: 0 0 0 50px;
}

section.fn-home-section-banner .fn-home-section-banner-inner-message .fun-main-banner-lead-text,
section.fn-home-section-banner .fn-home-section-banner-inner-message .fun-main-banner-lead-text p {
	font-size: var(--fs-main-banner-lead-text);
	line-height: 125%;
	color: var(--color-text-1);
	font-weight: 600;
	margin: 0px 0px 0.5em 0px;
}

section.fn-home-section-banner .fn-home-section-banner-inner-message .fun-main-banner-lead-text a {
	text-decoration: none;
}

section.fn-home-section-banner .fn-home-section-banner-inner-message .fun-main-banner-sublead-text,
section.fn-home-section-banner .fn-home-section-banner-inner-message .fun-main-banner-sublead-text p {
	font-size: var(--fs-main-banner-sublead-text);
	line-height: 150%;
	color: var(--color-text-3);
	margin: 0px;
}

section.fn-home-section-banner .fn-home-section-banner-inner-message .fun-main-banner-sublead-text a {
	text-decoration: none;
}

.fn-home-section-banner-slider-container {
	width: 705px;
	/* height: 424px; */
	flex-shrink: 0;
	position: relative;
	padding-top:32%;
}

@media (max-width:768px) {
	section.fn-home-section-banner .fn-home-section-banner-inner-message {
		padding: 10px;
	}
	section.fn-home-section-banner .fn-home-section-banner-inner-message .fun-main-banner-lead-text,
	section.fn-home-section-banner .fn-home-section-banner-inner-message .fun-main-banner-lead-text p {
		font-size: var(--fs-normal);
		line-height: 125%;
		color: var(--color-text-1);
		font-weight: 600;
	}
	.fn-home-section-banner-slider-container {
		width: 100%;
		padding-top:60.1%;
	}
}

fun-slider {
	display: block;
	position: absolute;
	top:0;
	bottom: 0;
	left: 0;
	right: 0;
}

fun-slider .fun-slider-slides {
	display: block;
	position: absolute;
	top:0;
	bottom: 14px;
	left: 25px;
	right: 25px;
	box-sizing: border-box;
	overflow: hidden;
	border-radius: 20px;
	box-shadow: 10px 10px 40px 0px rgba(0, 0, 0, 0.2);
}

fun-slider .fun-slider-slides .fun-slider-slide {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	transition: opacity 0.5s linear;
}

fun-slider .fun-slider-slides .fun-slider-slide img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

fun-slider .fun-slider-nav {
	display: none;
}

fun-slider.fn-slider-nav .fun-slider-nav {
	display: flex;
	justify-content: flex-start;
	position: absolute;
	width: 100%;
	bottom: 0;
	height: 4px;
	padding: 0 50px;
	gap: 46px;
	z-index: 10;
}

fun-slider.fn-slider-nav .fun-slider-nav .fun-slider-nav-item {
	background-color: #fff;
	border-radius: 2px;
	height: 4px;
	flex-grow: 1;
}

fun-slider .fun-slider-prev,
fun-slider .fun-slider-next {
	display: none;
}

fun-slider.fn-slider-buttons .fun-slider-prev,
fun-slider.fn-slider-buttons .fun-slider-next {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 43%;
	width: 48px;
	height: 48px;
	background-color: #fff;
	border-radius: 24px;
	color: var(--color-text-4);
	box-shadow: 10px 10px 40px 0px rgba(0, 0, 0, 0.2);
	z-index: 10;
	cursor: pointer;
}

@media (max-width:768px) {
	fun-slider.fn-slider-buttons .fun-slider-prev,
	fun-slider.fn-slider-buttons .fun-slider-next {
		width: 40px;
		height: 40px;
	}
}

fun-slider.fn-slider-buttons .fun-slider-prev:hover,
fun-slider.fn-slider-buttons .fun-slider-next:hover {
	box-shadow: 10px 10px 40px 0px rgba(0, 0, 0, 0.5);
}

fun-slider.fn-slider-buttons .fun-slider-prev {
	left: 0px;
}
fun-slider.fn-slider-buttons .fun-slider-next {
	right: 0px;
}

.fun-slider-slide-active {
	z-index: 1;
	opacity: 1;
}
.fun-slider-slide-hide {
	z-index: 0;
	opacity: 0;
}

section.fn-home-section-catalog {
	display: block;
	position: relative;
	width: 100%;
	padding: 0px 152px 82px 152px;
}

.fn-home-section-catalog-inner {
	position: relative;
	display: flex;
	justify-content: space-between;
	gap: 63px 10px;
	flex-wrap: wrap;
	width: 100%;
}

.fn-home-section-catalog-item {
	max-height: 320px;
	border-radius: 30px;
	display: block;
	overflow: hidden;
	position: relative;
	transition: all ease 0.3s;
}

.fn-home-section-catalog-item:hover {
	box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.5);
}

.fn-home-section-catalog-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fn-home-section-catalog-item-title {
	position: absolute;
	bottom: 52px;
	left: 22px;
	right: 22px;
	font-size: var(--fs-h1);
	color: var(--color-white);
	opacity: 0.6;
	font-weight: 600;
	line-height: 100%;
}

.fn-home-section-catalog-item-width-1 {
	/* width: 300px; */
	width: 26.5%;
	aspect-ratio: 300/320;
}

.fn-home-section-catalog-item-width-2 {
	/* width: 420px; */
	width: 37%;
	aspect-ratio: 420/320;
}

.fn-home-section-catalog-item-width-3 {
	/* width: 658px; */
	width: 58%;
	aspect-ratio: 658/320;
}

@media (max-width:768px) {
	section.fn-home-section-catalog {
		padding: 0px 10px 82px 10px;
	}
	.fn-home-section-catalog-item-width-1 {
		width: 100%;
	}
	
	.fn-home-section-catalog-item-width-2 {
		width: 100%;
	}
	
	.fn-home-section-catalog-item-width-3 {
		width: 100%;
	}
}

.fn-home-section-service {
	background-color: var(--color-bg-2);
	padding-top: 100px;
	padding-bottom: 137px;
	display: flex;
	justify-content: center;
	width: 100%;
}
.fn-home-section-service-inner {
	width: 100%;
}

.fn-home-section-service-subtitle {
	font-size: var(--fs-h4);
	text-align: center;
}
.fn-home-section-service-title {
	font-size: var(--fs-h1);
	font-weight: 600;
	text-align: center;
}

.fn-home-section-service-cards {
	width: 100%;
	overflow-y: hidden;
	overflow-x: scroll;
}

.fn-home-section-service-cards-inner {
	display: flex;
	justify-content: center;
	gap: 25px;
	margin-top: 70px;
}

.fn-home-section-service-item {
	width: 250px;
	height: 363px;
	display: block;
	background-color: var(--color-white);
	border-radius: 30px;
	box-shadow: 4px 10px 30px 0px rgba(0, 0, 0, 0.03);
	padding-top: 60px;
	padding-left: 20px;
	padding-right: 20px;
	text-align: center;
	text-decoration: none;
}
.fn-home-section-service-item * {
	text-decoration: none;
}

.fn-home-section-service-item-icon {
	background-color: var(--color-fun-orange);
	color: var(--color-white);
	width: 90px;
	height: 90px;
	border-radius: 50%;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	font-size: 36px;
}

.fn-home-section-service-item-title {
	margin-top: 30px;
	font-size: var(--fs-h4);
	color: var(--color-text-2);
	font-weight: 500;
}

.fn-home-section-service-item-desc {
	font-size: var(--fs-main-banner-sublead-text);
	color: var(--color-text-3);
	margin-top: 10px;
}

@media (max-width:768px) {
	.fn-home-section-service {
		padding-left: 20px;
		padding-right: 20px;
	}
	.fn-home-section-service-cards-inner {
		justify-content: flex-start;
	}
}

.fn-home-section-text {
	padding: 50px 120px 72px 120px;
}

.fn-home-section-text, .fn-home-section-text p, .fn-home-section-text ul {
	font-size: var(--fs-h4);
	font-weight: 400;
	line-height: 125%;
}

.fn-home-section-text h1, .fn-home-section-text p {
	margin-bottom: 24px;
}

.fn-home-section-text ul {
	margin-bottom: 24px;
}

.fn-home-section-article {
	background-color: var(--color-fun-orange);
	padding: 100px 158px 137px 158px;
	display: flex;
	justify-content: center;
	color: var(--color-white);
}

.fn-home-section-article-inner {
	width: 100%;
}

.fn-home-section-article-subtitle {
	font-size: var(--fs-h4);
	text-align: center;
	color: var(--color-white);
}
.fn-home-section-article-title {
	font-size: var(--fs-h1);
	font-weight: 600;
	text-align: center;
	color: var(--color-white);
	margin-bottom: 80px;
}

.fn-home-section-article-slider-container {
	width: 100%;
	height: 537px;
}

@media (max-width:768px) {
	
	.fn-home-section-text {
		padding: 40px 20px;
	}
	.fn-home-section-article-slider-container {
		height: auto;
	}
	.fn-home-section-article {
		padding: 30px 10px 137px 10px;
	}
	.fn-home-section-article-subtitle {
		font-size: var(--fs-normal);
	}
	.fn-home-section-article-title {
		font-size: var(--fs-h3);
		margin-bottom: 40px;
	}
}

fun-slider-cards {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	
}

fun-slider-cards .fun-slider-slides {
	display: flex;
	gap: 42px;
	position: absolute;
	top:0;
	bottom: 14px;
	left: 0px;
	width: 1040px;
	box-sizing: border-box;
	padding: 12px;
	/*box-shadow: 10px 10px 40px 0px rgba(0, 0, 0, 0.2);*/
	transition: left 0.5s ease;
}

fun-slider-cards .fun-slider-slides .fun-slider-slide {
	display: block;
	width: 332px;
	height: 100%;
	flex-shrink: 0;
}

fun-slider-cards .fun-slider-slides .fun-slider-slide img,
.fun-slider-cards .fun-slider-slides .fun-slider-slide img {
	display: block;
	width: 100%;
	height: 240px;
	border-radius: 30px;
	object-fit: cover;
	object-position: center center;
	box-shadow: 10px 10px 10px 0px rgba(0, 0, 0, 0.2);
	margin-bottom: 30px;
}

fun-slider-cards .fun-slider-slides .fun-slider-slide a,
.fun-slider-cards .fun-slider-slides .fun-slider-slide a {
	text-decoration: none;
	display: block;
	width: 100%;
	height: 100%;
}

fun-slider-cards .fun-slider-slides .fun-slider-slide p,
.fun-slider-cards .fun-slider-slides .fun-slider-slide p {
	color: var(--color-white);
	
} 

fun-slider-cards .fun-slider-slides .fun-slider-slide p.fun-slider-slide-title,
.fun-slider-cards .fun-slider-slides .fun-slider-slide p.fun-slider-slide-title {
	font-size: var(--fs-h3);
	font-weight: 500;
	line-height: 110%;
}

fun-slider-cards .fun-slider-nav {
	display: none;
}

fun-slider-cards.fn-slider-nav .fun-slider-nav {
	display: flex;
	justify-content: center;
	position: absolute;
	width: 100%;
	bottom: 0;
	height: 4px;
	padding: 0 50px;
	gap: 40px;
	z-index: 10;
}

fun-slider-cards.fn-slider-nav .fun-slider-nav .fun-slider-nav-item {
	background-color: #fff;
	border-radius: 2px;
	height: 4px;
	width: 100px;
	opacity: 0.3;
}

fun-slider-cards.fn-slider-nav .fun-slider-nav .active-bg {
	opacity: 1;
	background-color: #fff !important;
}

fun-slider-cards .fun-slider-prev,
fun-slider-cards .fun-slider-next {
	display: none;
}

fun-slider-cards.fn-slider-buttons .fun-slider-prev,
fun-slider-cards.fn-slider-buttons .fun-slider-next {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 190px;
	width: 48px;
	height: 48px;
	background-color: #fff;
	border-radius: 24px;
	color: var(--color-text-4);
	box-shadow: 10px 10px 40px 0px rgba(0, 0, 0, 0.2);
	z-index: 10;
}

fun-slider.fn-slider-buttons .fun-slider-prev:hover,
fun-slider.fn-slider-buttons .fun-slider-next:hover {
	box-shadow: 10px 10px 40px 0px rgba(0, 0, 0, 0.5);
}

fun-slider-cards.fn-slider-buttons .fun-slider-prev {
	left: 0px;
}
fun-slider-cards.fn-slider-buttons .fun-slider-next {
	right: 0px;
}

.fun-slider-cards .fun-slider-slides {
	display: flex;
	flex-direction: column;
	gap: 50px;
	width: 100%;
	padding: 10px;
	/*box-shadow: 10px 10px 40px 0px rgba(0, 0, 0, 0.2);*/
	transition: left 0.5s ease;
}

.fun-slider-cards .fun-slider-slides .fun-slider-slide {
	width: 100%;
	height: auto;
}


.fn-home-section-child-inner {
	padding: 130px 120px 0px 120px;
}

.fn-home-section-child-block {
	background-color: var(--color-fun-orange);
	position: relative;
	border-radius: 40px;
	overflow: visible;
	height: 270px;
	color: var(--color-white);
	padding-left: 382px;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}

.fn-home-section-child-text * {
	color: var(--color-white);
	max-width: 460px;
}

.fn-home-section-child-text-title {
	font-size: var(--fs-h2);
	font-weight: 600;
	margin-bottom: 20px;
	line-height: 40px;
}

.fn-home-section-child-block .fn-home-section-child-image {
	position: absolute;
	display: block;
	bottom:0;
	left:78px;
	z-index: 1;
}

.fn-home-section-child-image-xs {
	text-align: center;
}


*/
.fn-home-section-child-circle-1 {
	position: absolute;
	background: linear-gradient(180.00deg, rgb(255, 255, 255),rgba(255, 255, 255, 0) 100%);
	opacity: 0.5;
	transform: rotate(-60.00deg);
	left: 300px;
	top:122px;
	width: 100px;
	height: 100px;
	border-radius: 50%;
}

.fn-home-section-child-circle-2 {
	position: absolute;
	background: linear-gradient(180.00deg, rgb(255, 255, 255),rgba(255, 255, 255, 0) 100%);
	opacity: 0.5;
	transform: rotate(30.00deg);
	left: 1015px;
	top:-50px;
	width: 100px;
	height: 100px;
	border-radius: 50%;
}

@media (max-width: 768px) {
	.fn-home-section-child-block {
		padding: 40px 20px;
		flex-direction: column;
		height: auto;
		border-radius: 0;
		gap: 40px;
	}
	.fn-home-section-child-inner {
		padding: 0px;
	}
	.fn-home-section-child-circle-1, .fn-home-section-child-circle-2 {
		display: none;
	}
	.fn-home-section-child-block .fn-home-section-child-image {
		display: none;
	}
}

.fn-home-section-map {
	height: 840px;
	position: relative;
}
.fn-home-section-map-inner {
	position: relative;
}
.fn-home-section-map .fun-map {
	height: 840px;
	width: 100%;
}
.fn-home-section-map-popup {
	position: absolute;
	top:64px;
	left: 30px;
	bottom: 64px;
	overflow-x: hidden;
	overflow-y: scroll;
}

@media (max-width:768px) {
	.fn-home-section-map-popup {
		top:24px;
		max-height: 220px; 
	}
}

.fn-home-section-map-popup-inner {
	position: relative;
	width: 100%;
	display: flex;
	flex-direction: column;
	padding-right: 16px;
	gap:12px;
}

.fn-home-section-map-popup-item {
	display: flex;
	padding: 8px 30px 8px 8px;
	justify-content: flex-start;
	align-items: center;
	background-color: var(--color-white);
	border-radius: 33px;
	gap: 10px;
	cursor: pointer;
}
.fn-home-section-map-popup-item * {
	cursor: pointer;
}
.fn-home-section-map-popup-item img {
	width: 50px;
	height: 50px;
	border-radius: 50%;
}
.fun-map-overlay {
	position: absolute;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
	background-color: #000;
	opacity: 0.1;
}

.fn-section-breadcrumbs {
	background-color: var(--color-bg-3);
	padding: 100px 0px 50px 0px;
}

.fn-section-breadcrumbs {
	text-align: center;
	font-size: var(--fs-h4);
	color: var(--color-fun-orange);
}

.fn-section-breadcrumbs-inner {
	text-align: center;
	font-size: var(--fs-h4);
	color: var(--color-fun-orange);
	padding-left: 40px;
	padding-right: 40px;
}

.fn-section-breadcrumbs-inner a {
	color: var(--color-text-2);
}

.fn-section-breadcrumbs-inner span {
	color: var(--color-text-2);
	display: inline-block;
	margin-left: 1rem;
	margin-right: 1rem;
}

.fn-section {
	padding: 50px 50px 50px 50px;
}

.fn-inner-pages {
	background-color: var(--color-bg-3);
	padding: 0px 50px 50px 50px;
}

@media (max-width:768px) {
	.fn-inner-pages {
		padding: 0px 10px 50px 10px;
	}
}

.fn-inner-pages h1 {
	font-size: var(--fs-h1);
	color:  var(--color-text-2);
	font-weight: 600;
	text-align: center;
	margin-bottom: 3rem;
}

.fn-section-articles-inner {
	width: 100%;
}

.fn-article-cards {
	display: flex;
	gap: 42px 42px;
	box-sizing: border-box;
	padding: 12px;
	/*box-shadow: 10px 10px 40px 0px rgba(0, 0, 0, 0.2);*/
	transition: left 0.5s ease;
	flex-wrap: wrap;
	justify-content: space-between;
}

.fn-article-cards .fn-section-articles-item {
	display: block;
	width: 390px;
	flex-shrink: 0;
}

.fn-article-cards .fn-section-articles-item img {
	display: block;
	width: 100%;
	height: 240px;
	border-radius: 30px;
	object-fit: cover;
	object-position: center center;
	box-shadow: 10px 10px 10px 0px rgba(0, 0, 0, 0.2);
	margin-bottom: 30px;
}

.fn-article-cards .fn-section-articles-item a {
	text-decoration: none;
	display: block;
	width: 100%;
	height: 100%;
}

.fn-article-cards .fn-section-articles-item p {
	color: var(--color-text-2);
	
} 

.fn-article-cards .fn-section-articles-item p.fn-section-articles-item-title {
	font-size: var(--fs-h3);
	font-weight: 500;
	line-height: 110%;
}

/* Shop styles */
.fn-shop-groups-grid {
	display: flex;
	width: 100%;
	position: relative;
	gap: 20px;
	margin-bottom: 40px;
}

.fn-shop-group_catalog-selector {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 10px 16px;
	background-color: var(--color-white);
	height: 90px;
	border-radius: var(--default-border-radius);
	/* width:calc(33% - 14px); */
	gap: 10px;
	outline: 1px solid transparent;
	outline-offset: 1px; 
	position: relative;
	transition: all ease 0.5s;
}

.fn-shop-group_catalog-selector:hover {
	outline-color: var(--color-fun-orange);
}

.fn-shop-group_catalog-selector img {
	height: 70px;
	width: 70px;
	object-fit: cover;
	object-position: center center;
	border-radius: var(--default-border-radius);
}

.fn-shop-group_catalog-selector a {
	text-decoration: none;
}

.fn-shop-items-grid {
	/*
	display: flex;
	
	gap: 60px 30px;
	justify-content: space-between;
	*/
	width: 100%;
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: auto;
	grid-column-gap: 30px;
	grid-row-gap: 60px;
}

@media (max-width:1024px) {
	.fn-shop-items-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width:500px) {
	.fn-shop-items-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}

.fn-shop-item {
	display: block;
	position: relative;
	background-color: var(--color-white);
	border-radius: var(--default-border-radius);
	outline: 1px solid transparent;
	outline-offset: 1px;
	transition: all ease 0.5s;
	width: 100%;
	height: 450px;
	padding: 26px 16px 160px 16px;
}

.fn-shop-item_inner {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	gap:20px;
}

.fn-shop-item img {
	width: 100%;
	height: 155px;
	border-radius: var(--default-border-radius);
	object-fit: cover;
	object-position: center center;
}

.fn-shop-item:hover {
	outline-color: var(--color-fun-orange);
}

.fn-shop-item_title {
	display: block;
	color: var(--color-text-2);
	text-decoration: none;
	text-align: center;
	font-size: var(--fs-h6);
	line-height: 120%;
}

.fn-shop-item_title:hover {
	text-decoration: none;
}

.fn-shop-item_actions {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 26px;
	gap: 12px;
}

.fn-shop-item_actions .btn {
	width: 225px;
	z-index: 9;
}

.fn-pagination-container {
	padding-top:64px;
}

.page-link {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0px;
	width: 50px;
	height: 50px;
	border-radius: 25px !important;
	margin: 0px 20px;
	color: var(--color-text);
}

.page-link:visited {
	color: var(--color-text);
}

.page-link:hover {
	border-color: var(--color-fun-orange);
	color: var(--color-fun-orange);
	text-decoration: none;
}

.active>.page-link, .page-link.active {
	z-index: 3;
	color: var(--color-white);
	background-color: var(--color-fun-orange);
	border-color: var(--color-fun-orange);
}

.fn-item_card-price {
	font-size: var(--fs-h4);
	font-weight: 600;
}

.fn-image {
	width: 100%;
	background-color: var(--color-white);
	border-radius: var(--default-border-radius);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.fn-image a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}

.fn-image img {
	width: 100%;
	object-fit: cover;
	object-position: center center;
}

.fn-single-image {
	border-radius: var(--default-border-radius);
	overflow: hidden;
	object-fit: cover;
	object-position: center center;
}

/* shop item page */
.fn-shop_item_image {
	width: 100%;
	background-color: var(--color-white);
	border-radius: var(--default-border-radius);
	overflow: hidden;
}

.fn-shop_item_image a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}

.fn-shop_item_image img {
	max-width: 90%;
}

.fn-item_page-price {
	font-size: var(--fs-h1);
	font-weight: 600;
	color: var(--color-fun-orange);
	text-align: end;
}

/* fast filter */
.filter .popup-filter {
	position: absolute;
	top: 0;
	min-width: 150px;
	height: 100px;
	background: #fff;
	border: 1px solid var(--color-fun-orange);
	border-radius:10px;
	right: -40%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	z-index: 10;
	padding: 10px;
}
.filter .popup-filter > div:first-child {
	margin-bottom: 5px;
	/* color: var(--color-fun-orange); */
}
.filter .popup-filter > div:last-child {
	width: 100%;
}
.filter .property-inline-wrapper > div:first-child {
	display: inline-table;
	width: 50%;
}
.filter .property-inline-wrapper .filter-label {
display: inline-table;
width: 50%;
text-align: right;
}
.filter .property-inline-wrapper .filter-label .label {
margin: 5px 0;
}
.filter .property-inline-wrapper {
white-space: nowrap;
}
.filter .filter-color {
width: 40px;
height: 40px;
display: inline-block;
cursor: pointer;
}
.filter .filter-color.active {
outline-offset: -5px;
outline: 1px solid #fff;
}

.noUi-handle {
	width: 24px !important;
	height: 24px !important;
	top: -8px !important;
	right: -12px !important;
	border-radius: 12px !important;
	background-color: var(--color-fun-orange) !important;
	
	border: 1px solid #D9D9D9 !important;
	cursor: default !important;
	outline-color: var(--color-fun-orange) !important;
	outline-offset: 1px !important;
	outline-style: solid !important;
	outline-width: 1px !important;
	box-shadow: none !important;
}

.noUi-handle:before,
.noUi-handle:after {
  display: none !important;
}

.noUi-connect {
  background-color: var(--color-fun-orange) !important;
  opacity: 0.7 !important;
}

.noUi-horizontal {
  height: 10px !important;
}

.fn-price_form_block {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}

.fn-price_form_block .form-label {
	display: flex;
	gap: 6px;
	width: auto;
	white-space: nowrap;
	align-items: center;
}

fieldset {
	display: block;
	margin-top: 2rem;
}

legend {
	font-size: var(--fs-h6);
}

.form-check {
	padding-left: 1.9em;
}

.form-check .form-check-input {
	margin-left: -1.9em;
}

.form-check-input {
	width: 1.4em;
	height: 1.4em;
	margin-top: 0.1em;
	border-color: var(--color-fun-orange) !important;
}

.form-check-input:checked {
	background-color: transparent !important;
	border-color: var(--color-fun-orange) !important;
}
.form-check-input:checked[type=checkbox] {
	--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='%23FF7A00' stroke='%23FF7A00' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
	--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23FF7A00'/%3e%3c/svg%3e");
}
.form-check-input:focus {
	border-color: var(--color-fun-orange) !important;
	outline: 0;
	box-shadow: 0 0 0 .25rem rgba(255,122,0,.25);
}

.fn-loader {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(0,0,0,0.65);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;	
}

.fn-loader-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap:1rem;
}

.fn-little-cart-button {
	position: relative;
}
.fn-little-cart-button-badge {
	position: absolute;
	right: -8px;
	top: -8px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--color-white);
	color: var(--color-fun-orange);
	border: 1px solid var(--color-fun-orange);
	outline: var(--color-white) 1px 1px;
}

.fn-cart-table-action {
	padding-top: 1.3rem !important;
	font-size: 150%;
	line-height: 100%;
}

.fn-cart-table-action a {
	color: var(--color-fun-orange);
}
.fn-cart-table-image {
	display: inline-block;
	padding: 1rem;
	border-radius: 1rem;
	background-color: var(--color-white);
}
.fn-cart-table-image img {
	width: 100%;
}

.fn-cart-table-item-price,
.fn-cart-table-item-amount {
	text-align: center;
	font-size: 1.5rem;
	padding-top: 0.8rem !important;
}

.table-group-divider {
	border-color: var(--color-text-4);
}

.fn_clickbuy_item_image {
	display: block;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	border-radius: var(--default-border-radius);
}
.fn-clickbuy-total {
	text-align: center;
	color: var(--color-fun-orange);
}

/* Modals */
.modal-title {
	color: var(--color-fun-orange);
}

/* Usual grid */
.fn-usual-grid {
	width: 100%;
}
.fn-usual-grid-inner {
	width: 100%;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 60px 30px;
}
.fn-usual-grid-item-inner {
	display: block;
	position: relative;
	background-color: var(--color-white);
	border-radius: var(--default-border-radius);
	outline: 1px solid transparent;
	outline-offset: 1px;
	transition: all ease 0.5s;
	height: 480px;
	padding: 26px 16px 26px 16px;
}

.fn-usual-grid-item-inner img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	object-position: center center;
	border-radius: var(--default-border-radius);
}
.fn-usual-grid-item-title {
	font-weight: 500;
	text-align: center;
	font-size: var(--fs-h5);
}
.fn-usual-grid-item-description,
.fn-usual-grid-item-description p {
	text-align: center;
	line-height: 150%;
	font-size: var(--fs-h6);
	color: var(--color-text-3);
}

.fn-usual-grid-item-description-2,
.fn-usual-grid-item-description-2 p {
	text-align: center;
	line-height: 150%;
	font-size: var(--fs-h6);
	color: var(--color-text-2);
}
.fn-usual-grid-item-footer {
	display: block;
	position: absolute;
	bottom: 26px;
	left: 16px;
	right: 16px;
}

.fn-text-block h2 {
	margin-top: 80px;
	margin-bottom: 30px;
}

.fn-text-block p {
	line-height: var(--lh-normal);
	text-align: justify;
	font-size: var(--fs-h7);
}
.fn-text-block p img {
	display: block;
	max-width: 80%;
	margin: 0 auto;
	border-radius: var(--default-border-radius);
}

.pagination {
	gap:20px 0px;
}

.fun-scroll-top {
	position: fixed;
	bottom: 30px;
	right: 30px;
	padding: 10px 10px;
	font-size: 16px;
	background-color: transparent;
	border: 0px;
	border-radius: 50%;
	color: #343a40;
	cursor: pointer;
	transition: background-color 0.3s;
}

.fun-scroll-top:hover {
	background-color: #343a40;
	color: #fff;
}

.fun-accordion-1 {
	--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(255, 122, 0, 0.15);
	/* --bs-accordion-active-color: var(--color-white); */
	--bs-accordion-active-bg: rgba(255, 122, 0, 0.15);
}
.fun-accordion-2 {
	--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(255, 122, 0, 0.10);
	/* --bs-accordion-active-color: var(--color-white); */
	--bs-accordion-active-bg: rgba(255, 122, 0, 0.10);
}
.fun-accordion-3 {
	--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(255, 122, 0, 0.05);
	/* --bs-accordion-active-color: var(--color-white); */
	--bs-accordion-active-bg: rgba(255, 122, 0, 0.05);
}

.small-button-round {
	background-color: var(--color-fun-orange) !important;
}
.small-button-round::before {
	border-color: var(--color-fun-orange) !important;
}

.fn-item-slider {
	position: relative;
	width: 80%;
	max-width: 600px;
	overflow: hidden;
}
.fn-item-slider_slides {
	display: flex;
	transition: transform 0.5s ease-in-out;
}

.fn-item-slider_slide {
	min-width: 100%;
	box-sizing: border-box;
}

.fn-item-slider_slide img {
	width: 100%;
	display: block;
}

.fn-item-slider_prev,
.fn-item-slider_next {
	display: block;
	position: absolute;
	bottom: 10px;
	width: 50px;
	height: 50px;
	background-color: white;
	border: 1px solid var(--color-fun-orange);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	font-size: 18px;
	color: var(--color-fun-orange);
	cursor: pointer;
	outline: none;
	transition: background-color 0.3s, transform 0.2s;
	box-shadow: 0 0 0 0.25rem rgba(255, 122, 0, 0.10);
}

.fn-item-slider_prev {
	right: calc(50% + 12px);
}
.fn-item-slider_next {
	left: calc(50% + 12px);
}

.fn-item-slider_prev:hover,.fn-item-slider_next:hover {
  background-color: #ffe5b4; /* Светло‑оранжевый фон при наведении */
}

.fn-item-slider_prev:active,.fn-item-slider_next:active {
  transform: scale(0.95); /* Лёгкое сжатие при нажатии */
}
.fn-inner-pages section.fn-home-section-catalog{
	padding: 0px 122px 82px 122px;
}
@media (max-width: 768px) {
    
	.fn-inner-pages section.fn-home-section-catalog {
        padding: 0px 10px 82px 10px;
    }
}
.fn-home-section-catalog-item-title {
	text-shadow: 0 2px 6px rgba(0,0,0,.75), 0 0 4px rgba(0,0,0,.5);
	font-weight: 700;
	white-space: normal;
	word-break: break-word;
	font-size: var(--fs-h2) !important;
}			
@media (max-width: 768px) {
	 .fn-home-section-catalog-item-title {
		font-size: var(--fs-h3) !important;
		line-height: normal;
	}
}
.widgets-container{
	display: grid !important;
}
.otzyv-wrapper{
	display: grid;
    margin: 50px auto 0 auto;
	min-width: auto !important; 
	width: 40rem;
}
/* @media (max-width: 768px) {
	.otzyv-wrapper{
		width: 88% !important;
        margin: 50px 20px;
	}
	      
} */
.fn-usual-grid-item-inner{
	height: 500px;
}@media (max-width: 768px){
	.fn-usual-grid-item-inner{
	    height: 510px;
	}
}

/* ============================================
   ПОЛНАЯ МОБИЛЬНАЯ АДАПТАЦИЯ ДЛЯ ВСЕХ ЭКРАНОВ
   ============================================ */

/* Планшеты (768px - 1024px) */
@media (max-width: 1024px) {
    .fun-header {
        padding: 15px 30px;
    }
    
    .fun-footer-nav {
        padding: 50px 60px;
        flex-wrap: wrap;
        gap: 40px;
    }
    
    .fun-footer-nav .col1,
    .fun-footer-nav .col2,
    .fun-footer-nav .col3,
    .fun-footer-nav .col4 {
        width: auto;
        min-width: 160px;
    }
    
    .fn-home-section-catalog {
        padding: 0px 40px 60px 40px !important;
    }
    
    .fn-home-section-text {
        padding: 40px 60px;
    }
    
    .fn-home-section-article {
        padding: 60px 60px 100px 60px;
    }
}

/* Мобильные телефоны (до 768px) */
@media (max-width: 768px) {
    /* === Общие элементы === */
    body {
        overflow-x: hidden;
    }
    
    .frame-fun {
        max-width: 100%;
        overflow-x: hidden;
    }
    
    /* === Шапка === */
    .fun-header {
        padding: 12px 15px;
        flex-wrap: wrap;
        gap: 10px;
    }
    
    .fun-header-logo img {
        width: 90px;
    }
    
    /* === Главный баннер === */
    section.fn-home-section-banner {
        margin-top: 20px;
        margin-bottom: 60px;
        height: auto;
    }
    
    section.fn-home-section-banner .fn-home-section-banner-inner {
        flex-direction: column;
        padding: 0 15px;
    }
    
    section.fn-home-section-banner .fn-home-section-banner-inner-message {
        padding: 0;
        text-align: center;
        order: 2;
        margin-top: 20px;
    }
    
    .fn-home-section-banner-slider-container {
        width: 100%;
        padding-top: 60%;
        order: 1;
    }
    
    .fun-main-banner-lead-text,
    .fun-main-banner-lead-text p {
        font-size: 28px !important;
        text-align: center;
    }
    
    .fun-main-banner-sublead-text,
    .fun-main-banner-sublead-text p {
        font-size: 14px !important;
        text-align: center;
    }
    
    /* === Каталог на главной === */
    section.fn-home-section-catalog {
        padding: 0px 15px 50px 15px !important;
    }
    
    .fn-home-section-catalog-inner {
        flex-direction: column;
        gap: 20px;
    }
    
    .fn-home-section-catalog-item {
        width: 100% !important;
        height: 200px;
    }
    
    .fn-home-section-catalog-item-title {
        font-size: 24px !important;
        bottom: 20px;
        left: 15px;
        right: 15px;
    }
    
    /* === Блок "Наши услуги" === */
    .fn-home-section-service {
        padding: 50px 15px 60px 15px;
    }
    
    .fn-home-section-service-title {
        font-size: 28px;
    }
    
    .fn-home-section-service-subtitle {
        font-size: 16px;
    }
    
    .fn-home-section-service-cards {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }
    
    .fn-home-section-service-cards::-webkit-scrollbar {
        height: 4px;
    }
    
    .fn-home-section-service-cards::-webkit-scrollbar-track {
        background: #e0e0e0;
        border-radius: 4px;
    }
    
    .fn-home-section-service-cards::-webkit-scrollbar-thumb {
        background: #FF7A00;
        border-radius: 4px;
    }
    
    .fn-home-section-service-cards-inner {
        gap: 15px;
        margin-top: 30px;
        justify-content: flex-start;
        padding-bottom: 15px;
    }
    
    .fn-home-section-service-item {
        width: 200px;
        height: 300px;
        padding-top: 30px;
        flex-shrink: 0;
    }
    
    .fn-home-section-service-item-icon {
        width: 60px;
        height: 60px;
        font-size: 24px;
    }
    
    .fn-home-section-service-item-title {
        font-size: 15px;
        margin-top: 15px;
    }
    
    .fn-home-section-service-item-desc {
        font-size: 12px;
    }
    
    /* === Кнопка "Смотреть все услуги" === */
    .fn-home-section-service-btn {
        text-align: center;
        margin-top: 30px;
    }
    
    .fn-home-section-service-btn .btn-primary,
    .fn-home-section-service-btn .btn-all-services,
    .btn-all-services {
        display: inline-flex !important;
        justify-content: center;
        align-items: center;
        height: 44px;
        padding: 0 20px;
        font-size: 14px;
        background-color: #FF7A00;
        color: #fff !important;
        border-radius: 50px;
        text-decoration: none;
        white-space: nowrap;
    }
    
    /* === Текстовый блок === */
    .fn-home-section-text {
        padding: 30px 15px;
    }
    
    .fn-home-section-text,
    .fn-home-section-text p,
    .fn-home-section-text ul {
        font-size: 16px;
    }
    
    .fn-home-section-text h1 {
        font-size: 24px;
    }
    
    /* === Блок статей === */
    .fn-home-section-article {
        padding: 40px 15px 80px 15px;
    }
    
    .fn-home-section-article-title {
        font-size: 24px;
        margin-bottom: 30px;
    }
    
    .fn-home-section-article-subtitle {
        font-size: 14px;
    }
    
    .fn-home-section-article-slider-container {
        height: auto;
    }
    
    /* === Карточки статей === */
    .fn-article-cards {
        flex-direction: column;
        gap: 30px;
        align-items: center;
    }
    
    .fn-article-cards .fn-section-articles-item {
        width: 100%;
        max-width: 350px;
    }
    
    /* === Детский блок === */
    .fn-home-section-child-inner {
        padding: 0;
    }
    
    .fn-home-section-child-block {
        padding: 30px 20px;
        flex-direction: column;
        height: auto;
        border-radius: 0;
        text-align: center;
    }
    
    .fn-home-section-child-block .fn-home-section-child-image {
        display: none;
    }
    
    .fn-home-section-child-text-title {
        font-size: 22px;
        line-height: 1.3;
    }
    
    .fn-home-section-child-image-xs {
        display: block;
        margin-top: 20px;
    }
    
    .fn-home-section-child-image-xs img {
        max-width: 200px;
        height: auto;
    }
    
    /* === Карта === */
    .fn-home-section-map {
        height: 500px;
    }
    
    .fn-home-section-map .fun-map {
        height: 500px;
    }
    
    .fn-home-section-map-popup {
        top: auto;
        bottom: 20px;
        left: 20px;
        right: 20px;
        max-height: 200px;
        overflow-y: auto;
    }
    
    .fn-home-section-map-popup-inner {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 10px;
    }
    
    .fn-home-section-map-popup-item {
        padding: 5px 15px 5px 5px;
        font-size: 12px;
    }
    
    .fn-home-section-map-popup-item img {
        width: 35px;
        height: 35px;
    }
    
    /* === Подвал === */
    .fun-footer-nav {
        padding: 40px 20px;
        flex-direction: column;
        gap: 30px;
    }
    
    .fun-footer-nav .col1,
    .fun-footer-nav .col2,
    .fun-footer-nav .col3,
    .fun-footer-nav .col4 {
        width: 100%;
        text-align: center;
    }
    
    .fun-footer-nav ul.nav {
        align-items: center;
    }
    
    .fun-footer-disclaimer {
        padding: 15px 20px;
        text-align: center;
    }
    
    .fun-footer-disclaimer p {
        font-size: 11px;
    }
    
    /* === Навигация === */
    .nav {
        justify-content: center;
        flex-wrap: wrap;
    }
    
    /* === Хлебные крошки === */
    .fn-section-breadcrumbs {
        padding: 60px 0 30px 0;
    }
    
    .fn-section-breadcrumbs-inner {
        padding-left: 15px;
        padding-right: 15px;
        font-size: 13px;
    }
    
    .fn-section-breadcrumbs-inner span {
        margin-left: 8px;
        margin-right: 8px;
    }
    
    /* === Внутренние страницы === */
    .fn-inner-pages {
        padding: 0px 15px 40px 15px;
    }
    
    .fn-inner-pages h1 {
        font-size: 28px;
        margin-bottom: 20px;
    }
    
    .fn-section {
        padding: 30px 15px;
    }
    
    /* === Товары (сетка) === */
    .fn-shop-items-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 15px;
        grid-row-gap: 30px;
    }
    
    .fn-shop-item {
        height: auto;
        min-height: 380px;
        padding: 15px 10px 140px 10px;
    }
    
    .fn-shop-item img {
        height: 120px;
    }
    
    .fn-shop-item_title {
        font-size: 14px;
    }
    
    .fn-shop-item_actions .btn {
        width: 100%;
        padding: 0 10px;
        font-size: 12px;
        height: 40px;
    }
    
    .fn-item_card-price {
        font-size: 16px;
    }
    
    /* === Группы товаров === */
    .fn-shop-groups-grid {
        flex-direction: column;
        gap: 10px;
    }
    
    .fn-shop-group_catalog-selector {
        width: 100%;
        height: 70px;
    }
    
    .fn-shop-group_catalog-selector img {
        height: 50px;
        width: 50px;
    }
    
    /* === Пагинация === */
    .pagination {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }
    
    .page-link {
        width: 40px;
        height: 40px;
        margin: 0 5px;
        font-size: 14px;
    }
    
    /* === Формы === */
    .form-control,
    .form-select {
        font-size: 16px;
    }
    
    .btn, a.btn, button.btn {
        height: 44px;
        padding: 0 16px;
        font-size: 14px;
    }
    
    /* === Корзина === */
    .fn-cart-table-image {
        width: 60px;
        padding: 5px;
    }
    
    .fn-cart-table-item-price,
    .fn-cart-table-item-amount {
        font-size: 14px;
    }
    
    .table td, .table th {
        padding: 8px;
    }
    
    /* === Страница товара === */
    .fn-item_page-price {
        font-size: 28px;
        text-align: center;
        margin-top: 20px;
    }
    
    .fn-shop_item_image {
        max-width: 100%;
    }
    
    /* === Кнопка "Наверх" === */
    .fun-scroll-top {
        bottom: 15px;
        right: 15px;
        width: 40px;
        height: 40px;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    /* === Отзывы === */
    .otzyv-wrapper {
        width: 100% !important;
        max-width: 29rem !important;
        min-width: 10rem !important;
    }
}




/* Стили для кнопки "Смотреть все услуги" */
.btn-all-services {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    height: 50px !important;
    transition: all 0.2s linear !important;
    gap: 10px !important;
    padding: 0px 24px !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    color: #fff !important;
    background-color: #FF7A00 !important;
    border: 1px solid #fff !important;
    font-family: var(--font-family) !important;
    font-weight: normal !important;
    font-size: var(--fs-normal) !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

.btn-all-services:hover {
    color: #fff !important;
    background-color: #ffa451 !important;
    border-color: #ffa451 !important;
    text-decoration: none !important;
}


/* Центрирование кнопки "Смотреть все услуги" */
.fn-home-section-service-btn {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin-top: 40px !important;
}

.fn-home-section-service-btn .btn-all-services {
    margin: 0 auto !important;
}





/* ========== ЭКСТРЕННЫЙ ФИКС МОБИЛЬНОЙ ВЕРСИИ ========== */
@media (max-width: 768px) {
    
    /* Заставляем все блоки быть шириной 100% */
    .fn-section,
    .fn-inner-pages,
    .container,
    .container-fluid,
    .row > [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }
    
    /* Исправляем таблицу характеристик */
    .table,
    table:not(.table-bordered) {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important;
        white-space: normal !important;
    }
    
    .table td,
    .table th,
    table td,
    table th {
        display: block !important;
        width: 100% !important;
        padding: 8px 0 !important;
        text-align: left !important;
        border: none !important;
    }
    
    .table tr,
    table tr {
        display: block !important;
        width: 100% !important;
        margin-bottom: 15px !important;
        border-bottom: 1px solid #eee !important;
        padding: 10px 0 !important;
    }
    
    /* Делаем красивый список характеристик */
    .table td:first-child,
    table td:first-child {
        font-weight: 700 !important;
        color: #333 !important;
        padding-bottom: 4px !important;
    }
    
    .table td:last-child,
    table td:last-child {
        color: #666 !important;
        padding-top: 0 !important;
    }
    
    /* Цена */
    .fn-item_page-price,
    .price,
    .product-price {
        font-size: 26px !important;
        font-weight: 700 !important;
        color: #FF7A00 !important;
        display: block !important;
        margin: 15px 0 !important;
        text-align: left !important;
    }
    
    /* Кнопка */
    .btn,
    .btn-primary {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        max-width: 280px !important;
        margin: 10px auto !important;
        height: 46px !important;
        font-size: 14px !important;
    }
    
    /* Карточки просмотренных товаров */
    .row .col-md-4,
    .related-products .col-md-4,
    .viewed-products .col-md-4 {
        width: 100% !important;
        margin-bottom: 15px !important;
    }
    
    .related-products .row,
    .viewed-products .row {
        display: flex !important;
        flex-direction: column !important;
    }
    
    /* Текст примечания */
    .price-note,
    .note,
    .disclaimer {
        font-size: 11px !important;
        color: #999 !important;
        background: #f5f5f5 !important;
        padding: 10px !important;
        border-radius: 12px !important;
        margin: 15px 0 !important;
        text-align: center !important;
    }
    
    /* Изображение */
    .fn-shop_item_image img {
        width: 100% !important;
        height: auto !important;
        max-height: 300px !important;
        object-fit: contain !important;
    }
    
    /* Текст - принудительный перенос */
    p, span, div, h1, h2, h3, h4, h5, h6, a, li, td, th {
        word-break: break-word !important;
        overflow-wrap: break-word !important;
        white-space: normal !important;
    }
}



/* ГОРИЗОНТАЛЬНАЯ ГАЛЕРЕЯ ДЛЯ ПРОСМОТРЕННЫХ ТОВАРОВ */

.viewed-gallery .shop_block {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.viewed-gallery .shop_table {
    display: grid !important;
    /* flex-direction: row !important;
    gap: 15px !important;
    width: max-content !important; */
    min-width: 100% !important;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: auto;
    grid-column-gap: 30px;
    grid-row-gap: 60px;
}

.viewed-gallery .shop_item {
    flex: 0 0 auto !important;
    text-align: center !important;
	background-color: var(--color-white) !important;
    border-radius: var(--default-border-radius) !important;
    outline: 1px solid transparent;
    outline-offset: 1px;
    transition: all ease 0.5s;
    width: 100% !important;
    height: 280px !important;
    padding: 26px 16px 160px 16px !important;
}
.row + .red {
	margin: 1.8rem 0 2.5rem;
}
.viewed-gallery .shop_item:hover {
    outline-color: var(--color-fun-orange);
}

.viewed-gallery .image_row {
    /* display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 120px !important; */
}

.viewed-gallery img {
    width: 100%;
    height: 135px;
    border-radius: var(--default-border-radius);
    object-fit: cover;
    object-position: center center;
}

.viewed-gallery .description_sell p {
    margin: 20px 0 !important;
    font-size: var(--fs-h8) !important;
    line-height: 120% !important;
    height: 32px !important;
    overflow: hidden !important;
	color: var(--color-text-2);
}

.viewed-gallery .description_sell a {
    text-decoration: none !important;
}

.viewed-gallery .price {
    font-weight: bold !important;
	color: var(--color-fun-orange) !important;
    font-size: var(--fs-h8) !important;
    margin-top: 5px !important;
	text-align: center !important;
}

/* Скрываем лишние элементы */
.viewed-gallery .price a,
.viewed-gallery .compare,
.viewed-gallery .favorite {
    display: none !important;
}

/* Стилизация скроллбара */
.viewed-gallery .shop_block::-webkit-scrollbar {
    height: 6px;
}

.viewed-gallery .shop_block::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.viewed-gallery .shop_block::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

.viewed-gallery .shop_block::-webkit-scrollbar-thumb:hover {
    background: #e31e24;
}

/* Для мобильных */
/* @media (max-width: 768px) {
    .viewed-gallery .shop_item {
        width: 120px !important;
    }
    .viewed-gallery .image_row {
        height: 100px !important;
    }
    .viewed-gallery img {
        max-height: 90px !important;
    }
} */
@media (max-width: 768px) {
    .viewed-gallery .shop_item  {
        height: auto;
        min-height: auto;
        padding: 15px 10px 140px 10px !important;
    }
	.viewed-gallery img{
		height: 90px;
	}
	.viewed-gallery .price{
		margin-bottom: 0 !important;
	}
}
@media (max-width: 768px) {
    .viewed-gallery .shop_item  {
        height: auto !important;
        padding-bottom: 20px !important;
    }
}
@media (max-width: 768px) {
    .viewed-gallery .shop_table {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 15px;
        grid-row-gap: 30px;
    }
}

/* ===== ДОПОЛНИТЕЛЬНЫЕ ФИКСЫ ДЛЯ МОБИЛЬНОЙ ВЕРСИИ ===== */

@media (max-width: 768px) {
    /* Уменьшаем расстояние между строками в характеристиках */
    .table tr,
    table tr {
        margin-bottom: 5px !important;
        padding: 5px 0 !important;
    }
    
    .table td,
    table td {
        padding: 2px 0 !important;
        line-height: 1.3 !important;
    }
    
    /* Фикс кнопки "Купить в 1 клик" в каталоге */
    .fn-shop-item_actions {
        position: static !important;
        margin-top: 15px !important;
        width: 100% !important;
    }
    
    .fn-shop-item {
        height: auto !important;
        padding-bottom: 20px !important;
    }
    
    .fn-shop-item_actions .btn {
        width: 100% !important;
        max-width: 100% !important;
        margin: 5px 0 !important;
    }
}

.footer-cookie-policy {
	display: flex;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: #fff;
	padding: 32px 32px 32px 200px;
	box-shadow: 0 -3px 3px 0 #ddd;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	z-index: 1000000;
}
.footer-cookie-actions {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.footer-cookie-actions button {
	width: 250px;
}

@media (max-width: 768px) {
	.footer-cookie-policy {
		flex-direction: column;
		padding: 32px;
	}
	.footer-cookie-actions {
		width: 50%;
	}
}



