@import url("https://use.typekit.net/man4bok.css");

:root {
	--general: #0c1b2a;
	--additional-color: #BDAB7B;
	--green: #CBDBCF;
	--white: #ffffff;
	--swiper-preloader-color: var(--additional-color);
	--transition-prop: all 0.5s cubic-bezier(0.215, 0.610, 0.355, 1);
}

html,
body {
	position: relative;
	color: var(--general);
	font-size: 18px;
	line-height: 1.65;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	background: var(--white);
	font-family: "source-sans-pro", sans-serif;
	font-weight: 400;
	letter-spacing: 0.025em;
}

::selection {
	color: #fff;
	background: var(--additional-color);
}

input:focus,
select:focus,
textarea:focus,
button:focus {
	outline: none;
}

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

html {
	scroll-behavior: smooth;
}

body {
	overflow-x: hidden;
	margin: 0;
	opacity: 1;
	transition: var(--transition-prop);
}

body.effect {
	opacity: 0;
}

body.effect main {
	transform: scale(0.99);
}

input,
button {
	outline: none;
	box-shadow: none;
}

@media (min-width : 991px) {
	::-webkit-scrollbar {
		width: 7px;
		height: 5px;
		background-color: var(--white);
	}

	::-webkit-scrollbar-thumb {
		background: var(--additional-color);
		border-radius: 10px;
		box-shadow: 0 0 3px rgba(0, 0, 0, .1);
	}

	::-webkit-scrollbar-track {
		border-radius: 5px;
		background-color: rgb(243, 243, 243);
	}
}

input:-ms-input-placeholder {
	color: rgba(12, 27, 42, 0.4);
}

input::-moz-placeholder {
	color: rgba(12, 27, 42, 0.4);
}

input:-moz-placeholder {
	color: rgba(12, 27, 42, 0.4);
}

input::-webkit-input-placeholder {
	color: rgba(12, 27, 42, 0.4);
}

textarea::-webkit-input-placeholder {
	color: rgba(12, 27, 42, 0.4);
}

a {
	display: inline-block;
	color: inherit;
	text-decoration: none;
	transition: var(--transition-prop);
}

a:hover {
	text-decoration: none;
}

li {
	list-style-type: none;
}

p {
	margin-top: 0;
	margin-bottom: clamp(15px, 1.5vw, 30px);
	line-height: 2;
	opacity: 0.8;
}

p a {
	color: #25AE7A;
	font-weight: 700;
	text-decoration: underline;
}

p strong {
	font-weight: 700;
}

p a:hover {
	opacity: 0.8;
	text-decoration: underline;
}

small {
	display: block;
	font-size: 105%;
	color: var(--additional-color);
	font-weight: 500;
	margin-bottom: clamp(15px, 1vw, 20px);
}

img {
	display: block;
}

button,
input {
	overflow: visible;
}

.pt-0 {
	padding-top: 0 !important;
}

.mt-0 {
	margin-top: 0 !important;
}

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

.m-0 {
	margin: 0 !important;
}

.top-padding {
	padding-top: 157px;
}

.preloader-block.active {
	display: flex;
}

.preloader-block {
	position: fixed;
	justify-content: center;
	align-items: center;
	height: 100vh;
	width: 100vw;
	background: var(--white);
	display: flex;
	z-index: 100;
}

.preloader-block img {
	position: relative;
	width: clamp(100px, 13.42vw, 200px);
	animation: preloader-rotate 15s ease infinite;
}

@keyframes preloader-rotate {
	0% {
		transform: rotate(0);
	}

	100% {
		transform: rotate(360deg);
	}
}

.wc_payment_method.payment_method_takepayments img {
    max-width: 50%;
}

.parallax-img-box {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.parallax-img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
}

.parallax-img-box .simpleParallax,
.parallax-img-box .parallaxContainer {
	height: 100%;
}

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

.form-group {
	position: relative;
	margin-bottom: clamp(15px, 1.2vw, 20px);
}

.form-group label {
	display: block;
	font-size: 105%;
	font-weight: 500;
	padding: 0 clamp(15px, 1.3vw, 30px);
	margin-bottom: 11px;
}

.form-group.textarea {
	display: block;
}

.form-control {
	display: block;
	font-size: 100%;
	width: 100%;
	color: var(--general);
	padding: clamp(12px, 1.1vw, 18px) clamp(15px, 1.6vw, 30px);
	border: 1px solid var(--general);
	background-color: var(--white);
	filter: none;
	margin: 0;
	line-height: 1;
	transition: var(--transition-prop);
}

.form-control.form-control-mall {
	font-size: 14px;
}

textarea.form-control {
	line-height: 1.3;
}

.form-control.error {
	color: #D44545;
	border-color: #D44545;
}

.form-control.error::placeholder {
	color: #D44545;
}

.form-control:disabled {
	opacity: 0.25;
}

.form-control:focus {
	border-color: var(--additional-color);
}

select.form-control {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
	background: var(--white) right 1.4em top 50% / 0.7em auto no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19.315' height='11.072' viewBox='0 0 19.315 11.072'%3E%3Cpath d='M0,0,8.95,8.95,0,17.9' transform='translate(18.607 0.707) rotate(90)' fill='none' stroke='%23BDAB7B' stroke-width='2'/%3E%3C/svg%3E");
	padding-right: max(1.5vw, 40px);
	line-height: 1.46;
}

select option {
	color: var(--general);
}

dl,
ol,
ul {
	margin: 0;
	padding: 0;
}

button,
.btn {
	display: block;
	color: var(--general);
	background-color: transparent;
	border: 1px solid var(--general);
	position: relative;
	letter-spacing: 0.05em;
	font-size: 14px;
	line-height: 1.2;
	text-transform: uppercase;
	margin: 0;
	padding: 15px 44px;
	outline: none;
	overflow: hidden;
	cursor: pointer;
	text-decoration: none;
	text-align: center;
	transition: all 0.5s cubic-bezier(0.215, 0.610, 0.355, 1);
}

button:active,
.btn:active {
	transform: scale(0.98);
}

.btn:hover {
	color: var(--white);
	box-shadow: inset 0 0 0 2.5em var(--general);
}

.btn svg path {
	transition: var(--transition-prop);
}

.btn:hover svg path {
	stroke: var(--white);
}

/* btn-underline */
.btn.btn-underline {
	color: var(--additional-color);
	padding: 3px 5px;
	border-color: transparent;
	border-bottom-color: var(--additional-color);
}

.btn.btn-underline:hover {
	color: var(--white);
	border-color: var(--additional-color);
	box-shadow: inset 0 -3.25em 0 0 var(--additional-color);
}

/* btn-light */
.btn.btn-light {
	color: var(--white);
	border-color: var(--white);
}

.btn.btn-light:hover {
	border-color: var(--general);
}

/* btn-dark */
.btn.btn-dark {
	color: var(--white);
	border-color: var(--general);
	background-color: var(--general);
}

.btn.btn-dark:hover {
	color: var(--general);
	box-shadow: inset 0 0 0 2.5em var(--white);
}

/* btn-white */
.btn.btn-white {
	background-color: var(--white);
	color: var(--general);
	border-color: var(--white);
}

.btn.btn-white:hover {
	color: var(--white);
	background-color: var(--general);
	border-color: var(--general);
}

/* btn-simple */
.btn-simple {
	display: block;
	font-size: 100%;
	color: var(--white);
	padding: clamp(14px, 0.9vw, 20px) clamp(30px, 2.5vw, 50px);
	border-radius: 25px;
	line-height: 1;
	font-weight: 700;
	white-space: nowrap;
	border: 1px solid var(--white);
}

.btn-simple:hover {
	border-color: var(--additional-color);
	background-color: var(--additional-color);
}

/* btn-page-wrap */
.btn-page-wrap {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	text-align: center;
	width: 100%;
	margin-top: clamp(35px, 3.4vw, 65px);
}

.btn-page-wrap.center {
	text-align: center;
	justify-content: center;
}

.btn-page-wrap.right {
	text-align: right;
	justify-content: flex-end;
}

.btn-double-group {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 15px clamp(15px, 3vw, 30px);
	margin: clamp(20px, 3vw, 60px) 0 0;
}

.btn-double-group.right {
	justify-content: flex-end;
}

.button.added {
	pointer-events: none;
    opacity: 0.5;
}

.header .container {
	width: min(97.5%, 1850px);
}

.container {
	width: min(96%, 1640px);
	margin: 0 auto;
	padding: 0 15px;
}

.container.small {
	width: min(96%, 1430px);
}

.container.full {
	width: min(100%, 1920px);
	padding: 0;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 0;
	line-height: 1;
	margin-bottom: clamp(15px, 2.6vw, 45px);
	font-family: freight-big-pro, serif;
	font-weight: 400;
	letter-spacing: 0.025em;
}

h1,
.title-page {
	font-size: 444%;
}

h2,
.title-section {
	font-size: 333%;
}

h3,
.title-block {
	font-size: 277%;
}

.center {
	text-align: center;
}

strong {
	font-weight: bold;
}

.w-100 {
	width: 100%;
}

main {
	position: relative;
	min-height: 50vh;
	transition: var(--transition-prop);
}

.container-visible {
	overflow: visible;
}

.hidden {
	display: none !important;
}

section {
	position: relative;
	overflow: hidden;
}

.color-bg {
	background-color: rgba(189, 171, 123, 0.1);
}

.coll-2,
.coll-3,
.coll-4,
.coll-5,
.coll-6 {
	display: grid;
	grid-template-rows: repeat(auto-fill, minmax(0, 1fr));
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(20px, 7.8vw, 150px);
	width: 100%;
	margin: clamp(40px, 8vw, 155px) 0;
}

.coll-1 {
	display: grid !important;
	grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
}

.coll-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.coll-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.coll-5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.coll-6 {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.form-group-double {
	gap: clamp(20px, 1.1vw, 20px);
	margin: 0;
}

.item-with-icon {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: 15px;
}

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

/* header */
.header {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 12;
	background-color: var(--white);
	transition: var(--transition-prop);
}

.header.scroll {
	-webkit-box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25);
	box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25);
}

.header.scroll .navbar-brand img,
.header.scroll .navbar-brand svg {
	width: 150px;
}

.header.scroll .navbar-top {
	padding: 15px 0;
}

.navbar-top-wrap {
	transition: var(--transition-prop);
}

.navbar-top {
	display: grid;
	grid-template-columns: 250px 1fr 250px;
	gap: 20px;
	position: relative;
	color: var(--general);
	width: 100%;
	padding: 23px 0;
	transition: all 0.2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

/* navbar-brand */
.header .navbar-brand {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 12px;
	z-index: 14;
	transition: var(--transition-prop);
}

.navbar-brand img,
.navbar-brand svg {
	display: block;
	width: 207px;
	height: auto;
	transition: var(--transition-prop);
}

.header-right-side-wrap {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}


/* navbar-collapse */
.menu-open {
	overflow: hidden;
}

.navbar-collapse .header-location-block {
	display: none;
}

.navbar-collapse-inner-block {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	top: 0;
	left: 0;
	height: 100%;
	opacity: 1;
	transition: var(--transition-prop);
	z-index: 11;
}

.navbar-collapse-inner-block .btn-page-wrap {
	display: none;
}

.navbar-collapse.toggle {
	pointer-events: auto;
	background-color: rgba(0, 0, 0, 0.58);
}

.navbar-collapse.toggle .navbar-collapse-inner-block {
	transform: translateY(0);
}

.navbar-collapse.toggle .top-mnu {
	transition-delay: 0.8s;
}

.navbar-collapse nav {
	width: 100%;
	height: 100%;
}

.top-mnu {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	color: var(--general);
	margin: 0;
	padding: 0;
	max-height: 100vh;
	transition: var(--transition-prop);
	transition-delay: 0s;
}

.top-mnu>li {
	display: inline-block;
	width: auto;
	margin: 0;
	transition: all 300ms;
}

.navbar-collapse.toggle .top-mnu li {
	opacity: 1;
	transform: translateX(0);
	transition: all 300ms 100ms;
}

.navbar-collapse.toggle .top-mnu li:nth-of-type(2) {
	transition: all 300ms 200ms;
}

.navbar-collapse.toggle .top-mnu li:nth-of-type(3) {
	transition: all 300ms 300ms;
}

.navbar-collapse.toggle .top-mnu li:nth-of-type(4) {
	transition: all 300ms 400ms;
}

.navbar-collapse.toggle .top-mnu li:nth-of-type(5) {
	transition: all 300ms 500ms;
}

.navbar-collapse.toggle .top-mnu li:nth-of-type(6) {
	transition: all 300ms 600ms;
}

.navbar-collapse.toggle .top-mnu li:nth-of-type(7) {
	transition: all 300ms 700ms;
}

.top-mnu>li {
	position: relative;
	margin: 0 clamp(10px, 1.7vw, 30px);
}

.top-mnu>li>a {
	position: relative;
	display: inline-block;
	font-size: 14px;
	color: var(--general);
	padding: 5px 0;
	margin: 0;
	line-height: 1.2;
	text-align: center;
    text-transform: uppercase;
}

.top-mnu>li>a::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0%;
	height: 1px;
	background-color: var(--additional-color);
	transition: var(--transition-prop);
}

.top-mnu>li.current-menu-item>a,
.top-mnu>li:hover>a {
	color: var(--additional-color);
}

.top-mnu>li:hover>a::before,
.top-mnu>.current-menu-item>a::before {
	width: 100%;
}

.hamburger {
	display: none;
}

body::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 9;
	opacity: 0;
	background-color: var(--general);
	transition: var(--transition-prop);
	pointer-events: none;
	transition-delay: 0.2s;
}

.menu-item-has-children:hover .sub-menu {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
	transition-delay: 0s;
}

.sub-menu {
	display: grid;
	position: absolute;
	width: 275px;
	top: 100%;
	left: 0;
	font-size: 14px;
	transform: translateY(10px);
	background-color: #FAFCFD;
	z-index: 1;
	opacity: 0;
	visibility: hidden;
	text-transform: uppercase;
	transition: var(--transition-prop);
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.05);
	transition-delay: 0.2s;
}

.menu-item-has-children:hover .sub-menu {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
	transition-delay: 0s;
}

.top-mnu li.menu-item-has-children {
	position: relative;
	display: grid;
	grid-template-columns: max-content max-content;
	grid-gap: 7px;
}

.menu-item-has-children::after {
	content: "";
	position: relative;
	width: 11px;
	height: 11px;
	top: 0;
	right: 0;
	align-self: center;
	transition: var(--transition-prop);
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12.881' height='7.501' viewBox='0 0 12.881 7.501'%3E%3Cpath d='M11.82,5.91,5.91,0,0,5.91' transform='translate(12.35 6.44) rotate(180)' fill='none' stroke='%230c1b2a' stroke-width='1.5'/%3E%3C/svg%3E");
}

.menu-item-has-children.active::after {
	transform: rotate(180deg);
}

.sub-menu ul {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	width: 100%;
}

.sub-menu li {
	position: relative;
}

.sub-menu li a {
	width: 100%;
	padding: 8px 13px;
	text-align: left;
	border-bottom: 1px solid #EBF5F7;
}

.sub-menu li a>* {
	align-self: center;
}

.sub-menu li a .icon {
	display: inline-block;
	width: 18px;
	margin-left: 5px;
	opacity: 0;
	transition: var(--transition-prop);
}

.sub-menu li a .icon svg {
	width: 70%;
	height: auto;
}

.sub-menu li a svg path {
	fill: var(--general);
}

.sub-menu li.current-menu-item a,
.sub-menu li a:hover {
	color: var(--white);
	background-color: var(--additional-color);
}

.sub-menu li.current-menu-item a .icon,
.sub-menu li a:hover .icon {
	opacity: 1;
}

/* header-left-side */
.header-left-side {
	font-size: 14px;
	align-self: center;
}

.header-location-block-info {
	line-height: 1.2;
}

.header-location-block-info address {
	font-style: normal;
	margin-bottom: 7px;
}

/* header-right-side */
.head-icons ul {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 12px;
	padding: 15px 0;
	color: var(--white);
}

.head-icons ul a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: auto;
	height: 18px;
}

.head-icons ul a svg {
	display: block;
	width: auto;
	max-width: 100%;
	height: 100%;
}

.head-icons ul a:hover {
	transform: translateY(-5px);
}

.cart-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16.5px;
	background-color: var(--general);
	border-radius: 50%;
    position: absolute;
    left: 50%;
    top: -12px;
    color: var(--white);
    font-size: 10px;
    font-weight: 600;
}

/* main-foot */
.main-foot {
	position: relative;
	overflow: hidden;
	border-top: 1px solid rgba(12, 27, 42, 0.3);
}

.navbar-foot {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 100%;
	padding: clamp(75px, 5.2vw, 105px) 0 clamp(75px, 5.1vw, 105px);
	margin: 0;
}

.navbar-foot-line {
	grid-template-columns: 38% minmax(0, 1fr) max-content;
	gap: 20px;
}

.foot-logo {
	width: min(100%, 184px);
	align-self: center;
}

.foot-logo a,
.foot-logo img {
	width: 100%;
	margin: 0;
}

.foot-logo-block .foot-logo {
	margin-bottom: clamp(10px, 2.8vw, 56px);
}

.foot-logo-block .btn-page-wrap {
	margin-top: 25px;
}

.foot-book-appointment {
	width: min(100%, 330px);
}

.foot-book-appointment address {
	opacity: 0.8;
}

.foot-mnu-title {
	margin-bottom: clamp(20px, 1.8vw, 34px);
	text-transform: uppercase;
}

.navbar-foot-menu-wrap {
	grid-template-rows: auto;
	gap: 20px;
}

.navbar-foot-menu-wrap .foot-menu {
	font-size: 14px;
}

.foot-menu {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0 clamp(20px, 3.5vw, 70px);
	line-height: 1.2;
	padding: 0;
	margin: 0;
	opacity: 0.8;
}

.foot-menu li a {
	display: block;
	position: relative;
	font-size: 100%;
	padding: 7px 0;
	margin: 0;
	line-height: 1.3;
}

.foot-menu li a:hover {
	transform: translateX(5px);
	color: var(--additional-color);
}

.social-menu {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: var(--general);
	border: 1px solid var(--general);
}

.social-menu a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
}

.social-menu li:not(:last-of-type) a {
	border-bottom: 1px solid var(--general);
}

.social-menu a svg {
	display: block;
	width: auto;
	max-width: 50%;
	max-height: 50%;
}

.social-menu a:hover {
	color: var(--white);
	background-color: var(--general);
}
.social-menu a:hover img{
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(100%) contrast(103%);
}

.foot-bottom-line {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	gap: 20px;
	font-size: 14px;
	line-height: 1.2;
	margin-top: clamp(40px, 4vw, 77px);
}

.foot-bottom-line-logos {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: clamp(23px, 4.5vw, 90px);
	filter: grayscale(100%);
}

.foot-bottom-line-logo img {
	width: 100%;
}

.foot-caption {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: clamp(5px, 5.2vw, 100px);
	margin-top: clamp(44px, 2.5vw, 51px);
	opacity: 0.7;
}

.foot-caption a:hover {
	color: var(--additional-color);
}


/* Arrows */
.swiper-navigation-custom-wrap {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.swiper-navigation-custom-wrap.right {
	justify-content: flex-end;
}

.swiper-navigation-custom {
	display: grid;
	grid-template-columns: max-content max-content;
	gap: 1px;
	position: relative;
	color: var(--general);
	margin-top: 0;
	border: 1px solid var(--general);
	overflow: hidden;
}

.swiper-navigation-custom div {
	position: relative;
	top: 0;
	width: 65px;
	height: 50px;
	color: inherit;
	margin-top: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 0;
	outline: none;
	transition: var(--transition-prop);
}

.swiper-navigation-custom div:active {
	transform: scale(0.99);
}

.swiper-navigation-custom .swiper-button-next {
	right: 0;
	left: auto;
	border-left: 1px solid var(--general);
}

.swiper-navigation-custom .swiper-button-prev {
	left: 0;
	right: auto;
}

.swiper-navigation-custom .swiper-button-prev svg {
	transform: rotate(180deg);
}

.swiper-navigation-custom div.swiper-button-disabled {
	opacity: .35;
	cursor: auto;
	pointer-events: none;
}

.swiper-navigation-custom div::after {
	display: none;
}

.swiper-navigation-custom svg {
	transition: var(--transition-prop);
}

.swiper-navigation-custom div:hover {
	color: var(--white);
}

.swiper-navigation-custom div:hover {
	background-color: var(--general);
}

.swiper-navigation-custom.white-arrows {
	color: var(--white);
}

.swiper-navigation-custom.white-arrows,
.swiper-navigation-custom.white-arrows .swiper-button-next {
	border-color: var(--white);
}

.swiper-navigation-custom.white-arrows div:hover {
	color: var(--general);
	background-color: var(--white);
}


/* hero */
.s-home-hero {
	background-color: var(--green);
}

.home-hero-content {
	position: relative;
	grid-template-rows: auto;
	gap: 0;
	margin: 0;
	min-height: 90vh;
}

.hero-carousel-block .swiper-navigation-custom-wrap {
	position: absolute;
	bottom: clamp(30px, 4vw, 70px);
	right: clamp(30px, 7vw, 130px);
	z-index: 2;
}

.hero-carousel-item {
	min-height: 90vh;
}

.hero-carousel-item-img {
	overflow: hidden;
}

.hero-carousel-item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-carousel-item,
.hero-carousel,
.hero-carousel-item-img {
	height: 100%;
}

.hero-carousel-block .swiper-slide {
	height: auto;
}

.home-hero-content .hero-content-info {
	width: min(90%, 730px);
	padding: 76px clamp(15px, 1.5vw, 30px);
}

.home-hero-content .is-star-graphic::before {
	width: min(100%, 508px);
}

.animation-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.animation-bg video {
	height: 100%;
	width: 100%;
	object-fit: cover;
	right: 0;
	bottom: 0;
}

.is-star-graphic {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	opacity: 0.05;
	pointer-events: none;
}

.is-star-graphic::before {
	content: "";
	display: block;
	position: relative;
	width: min(100%, 630px);
	height: 508px;
	background: center / contain no-repeat url("../img/icons/star-graphic.svg");
}

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

.hero-content-info {
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: clamp(102px, 7.8vw, 150px) clamp(15px, 1.5vw, 30px);
	align-self: center;
	text-align: center;
}

.hero-content-info .title-page {
	margin-bottom: clamp(15px, 1.8vw, 35px);
}

.s-hero .hero-content-info p {
	width: min(100%, 630px);
	margin: 0 auto;
}

.s-hero .is-star-graphic {
	top: 14%;
}

.subtitle {
	font-size: 111%;
}

/* s-instagram-feed */
.instagram-feed-content {
	margin: clamp(56px, 5.2vw, 100px) 0 0;
}

.custom-margin {
	margin-bottom: clamp(31px, 3.2vw, 63px);
}

.brands-item {
	display: flex;
	justify-content: center;
	align-items: center;
	height: clamp(164px, 23vw, 440px);
}

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

/* s-newsletter */
.newsletter-content {
	width: min(100%, 424px);
	margin: clamp(65px, 5.2vw, 100px) auto;
	text-align: center;
}

.form-line {
	display: grid;
	grid-template-columns: minmax(0, 1fr) max-content;
	width: 100%;
	position: relative;
	margin: clamp(30px, 1.5vw, 30px) auto;
	overflow: hidden;
}

.newsletter-content .title-block {
	margin-bottom: 15px;
}

.styled-checkbox {
	display: block;
	width: min(100%, 252px);
	margin: auto;
	padding: 0;
}

.styled-checkbox input {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	position: absolute;
}

.styled-checkbox input+span {
	position: relative;
	display: block;
	font-size: 12px;
	padding-left: 30px;
	line-height: 1.2;
	cursor: pointer;
	align-self: center;
	text-align: left;
	opacity: 0.8;
}

.styled-checkbox input+span::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 1px solid var(--general);
	transition: var(--transition-prop);
}

.styled-checkbox input:checked+span::before {
	border-color: var(--general);
}

.styled-checkbox input+span::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 5px;
	left: 5px;
	width: 10px;
	height: 10px;
	background-color: var(--general);
	transform: scale(0);
	opacity: 0;
	transition: var(--transition-prop);
}

.styled-checkbox input:checked+span::after {
	transform: scale(1);
	opacity: 1;
}

/* s-general-bottom */
.s-general-bottom.is-color-bg::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 50%;
	background-color: rgba(189, 171, 123, 0.1);
}

.general-bottom-content {
	position: relative;
	gap: 0;
	margin: 0;
	margin-top: clamp(40px, 4vw, 80px);
}

.general-bottom-img {
	position: relative;
	top: clamp(-80px, -4vw, -40px);
	padding-left: 30px;
}

.general-bottom-img img {
	width: 100%;
	height: auto;
}

.general-bottom-content::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 80%;
	height: 100%;
	background-color: var(--green);
}

.general-bottom-info {
	position: relative;
	width: min(100%, 574px);
	margin: auto;
	padding: 80px 15px;
	align-self: center;
}

/* s-featured */
.featured-content {
	margin: clamp(56px, 5.2vw, 100px) 0 clamp(56px, 3.5vw, 68px);
}

.simple-colls {
	gap: 20px;
	margin: 0;
}

.simple-colls p {
	margin: 0;
}

.product-card {
	position: relative;
	width: 100%;
}

.product-card-img {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 100%;
	height: clamp(335px, 27.3vw, 523px);
	background-color: var(--white);
	overflow: hidden;
}

.product-card-img img {
	width: 80%;
	height: 100%;
	object-fit: contain;
	transition: var(--transition-prop);
}

.product-card:hover .product-card-img img {
	transform: scale(1.05);
}

.product-card-info {
	width: 80%;
	margin: auto;
	font-size: 111%;
	padding: clamp(18px, 1.7vw, 33px) 0;
	text-align: center;
	line-height: 1.2;
}

.product-card-subtitle {
	font-size: 90%;
}

.product-card-price {
	margin-top: 20px;
}

.product-card-info .stock {
	font-size: 14px;
}

.categories-colls {
	gap: 10px;
}

.category-card {
	position: relative;
	width: 100%;
	height: clamp(466px, 30.6vw, 551px);
}

.category-card-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--white);
	overflow: hidden;
}

.category-card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: var(--transition-prop);
}

.category-card-img::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 50%;
	background: linear-gradient(0deg, rgba(12, 27, 42, 0) 0%, rgba(12, 27, 42, 0.3) 100%);
	z-index: 1;
}

.category-card:hover .category-card-img img {
	transform: scale(1.05);
}

.category-card-info {
	position: relative;
	width: 100%;
	margin: auto;
	font-size: 111%;
	color: var(--white);
	padding: clamp(55px, 3.5vw, 70px) 15px;
	text-align: center;
	line-height: 1.2;
	text-transform: uppercase;
	z-index: 2;
}

.border-top {
	border-top: 1px solid rgba(12, 27, 42, 0.3);
}

.border-bottom {
	border-bottom: 1px solid rgba(12, 27, 42, 0.3);
}

/* testimonials */
.testimonials-content {
	position: relative;
	width: min(100%, 1132px);
	margin: clamp(106px, 7.55vw, 145px) auto clamp(102px, 6.52vw, 125px);
}

.s-accordion + .s-testimonials .testimonials-content {
	margin-top: clamp(30px, 3vw, 50px);
}

.quotes::before {
	content: "";
	position: absolute;
	top: 0;
	left: -5%;
	width: 213px;
	height: 175px;
	background: top center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='215.304' height='178.185' viewBox='0 0 215.304 178.185'%3E%3Cpath d='M-61.263,159.69v-14.3q33.471-11.049,51.831-34.283T8.929,61.877A17.827,17.827,0,0,0,6,51.478q-2.275-2.925-4.549-2.925-3.575,0-15.6,6.5a27.253,27.253,0,0,1-12.348,2.925q-15.923,0-25.347-9.424t-9.424-26q0-15.923,12.186-27.3t29.734-11.374Q2.1-16.113,18.84,2.572T35.575,52.128q0,33.471-23.235,62.23T-61.263,159.69Zm116.466,0v-14.3q33.471-11.049,51.831-34.283t18.36-49.231a17.827,17.827,0,0,0-2.925-10.4q-2.275-2.925-4.549-2.925-3.575,0-15.6,6.5a27.253,27.253,0,0,1-12.348,2.925q-15.923,0-25.347-9.424t-9.424-26q0-15.923,12.186-27.3T97.123-16.113q21.447,0,38.183,18.685t16.735,49.556q0,33.471-23.235,62.23T55.2,159.69Z' transform='translate(62.263 17.113)' fill='none' stroke='%23ecefee' stroke-width='2'/%3E%3C/svg%3E");
}

.testimonials-item-text {
	width: min(100%, 916px);
	font-style: italic;
	line-height: 1.5;
}

.testimonials-item-text p {
	line-height: 1.5;
}

.testimonials-item-caption {
	font-size: max(90%, 14px);
	color: var(--additional-color);
}

.testimonials-content .title-block {
	position: relative;
	margin-bottom: clamp(38px, 4vw, 81px);
	z-index: 1;
}

/* s-simple */
.s-simple .container {
	width: min(95.5%, 1850px);
	margin: 0 auto;
}

.simple-content-wrap {
	padding: 0 0 50px;
}

.simple-content-wrap .simple-content:nth-of-type(even) .simple-info {
	grid-row: 1;
	grid-column: 1;
}

.simple-content {
	gap: 0;
	margin: 0;
}

.simple-img img {
	width: 100%;
	min-height: 100%;
	max-height: 1000px;
	object-fit: cover;
}

.simple-info {
	width: min(80%, 534px);
	padding: 45px 15px;
	margin: 0 auto;
	align-self: center;
}

.simple-info p {
	line-height: 1.6;
}

.simple-img {
	width: 100%;
	position: relative;
}

.s-simple.revers .simple-info {
	grid-column: 1;
	grid-row: 1;
	margin: 0 auto;
}

.w-100 {
	width: 100% !important;
}

.custom-list-block {
	font-size: 100%;
	margin: clamp(20px, 2vw, 40px) 0 0;
}

.custom-list-block ul {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	gap: clamp(20px, 1.5vw, 30px) clamp(20px, 2.5vw, 50px);
	margin: 15px 0 0;
	opacity: 0.8;
}

.custom-list-block ul li {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	gap: clamp(20px, 1.5vw, 30px);
}

.custom-list-block ul li::before {
	content: "";
	display: block;
	position: relative;
	width: 11px;
	height: 11px;
	margin-top: 7px;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.705' height='10.705' viewBox='0 0 10.705 10.705'%3E%3Cg transform='translate(-1046.148 -1481.148)' opacity='0.85'%3E%3Cg transform='translate(1056.852 1481.148) rotate(90)' fill='none' stroke='%23003a6d' stroke-width='1.5'%3E%3Crect width='10.705' height='10.705' rx='3' stroke='none'/%3E%3Crect x='0.75' y='0.75' width='9.205' height='9.205' rx='2.25' fill='none'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* s-cards-carousel */
.cards-carousel-content {
	margin: clamp(65px, 5vw, 92px) 0;
}

.title-colls-wrap {
	grid-template-columns: minmax(0, 1fr) max-content;
	gap: 20px;
	margin: 0 0 63px;
}

.our-team-item {
	position: relative;
	width: 100%;
	height: clamp(466px, 30.6vw, 551px);
	overflow: hidden;
}

.our-team-item-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.our-team-item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.our-team-item-img::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50%;
	background: linear-gradient(180deg, rgba(12, 27, 42, 0) 0%, rgba(12, 27, 42, 0.3) 100%);
	transition: var(--transition-prop);
	z-index: 1;
}

.our-team-item:hover .our-team-item-img::before {
	opacity: 0;
}

.our-team-item-img::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--additional-color);
	transition: var(--transition-prop);
	opacity: 0;
	z-index: 1;
}

.our-team-item:hover .our-team-item-img::after {
	opacity: 0.8;
}

.our-team-item-info {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: relative;
	width: 100%;
	height: 100%;
	color: var(--white);
	padding: clamp(55px, 3.5vw, 70px) clamp(15px, 2.7vw, 54px);
	text-align: center;
	line-height: 1.2;
	transition: var(--transition-prop);
	z-index: 2;
}

.our-team-item-info-inner {
	transition: var(--transition-prop);
}

.our-team-item-info .our-team-item-name {
	font-size: 116%;
	text-transform: uppercase;
	transition: var(--transition-prop);
}

.our-team-item-details p {
	line-height: 1.38;
	margin-bottom: 0;
}

.our-team-item-details {
	position: relative;
	opacity: 0;
	margin-bottom: -100%;
	transform: translateY(100%);
	transition: var(--transition-prop);
}

.our-team-item:hover .our-team-item-details {
	opacity: 1;
	margin-top: clamp(20px, 1.5vw, 28px);
	margin-bottom: 0;
	transform: translateY(0);
}

/* accordion */
.accordion-content {
	position: relative;
	width: min(100%, 1430px);
	margin: clamp(65px, 10vw, 195px) auto clamp(50px, 6.52vw, 105px);
}

.accordion-item {
	width: 100%;
	position: relative;
	background-color: var(--white);
	padding: 0 max(4vw, 15px);
	margin-bottom: max(0.8vw, 10px);
}

.accordion-head {
	display: grid;
	position: relative;
	padding: max(2vw, 20px) 0;
	text-align: center;
	cursor: pointer;
}

.accordion-head .title-block {
	font-size: 166%;
	margin: 0;
}

.accordion-body {
	display: none;
	padding-bottom: max(3vw, 20px);
}

/* s-product */
.hero-product-content {
	margin: clamp(50px, 4vw, 80px) 0 clamp(65px, 8.6vw, 164px);
	gap: clamp(20px, 5.2vw, 100px);
}

.product-gallery-wrap,
.hero-product-video-wrap {
	grid-template-columns: max-content minmax(0, 1fr);
	grid-template-rows: auto;
	gap: 20px;
	margin: 0;
}

.hero-product-video-wrap {
	grid-template-columns: 110px minmax(0, 1fr);
	margin: 30px 0 0;
}

.product-slide-item-thumb {
	width: 110px;
	/*height: 100%;*/
	height: 100px;
	cursor: pointer;
	border: 1px solid transparent;
	background-color: var(--white);
}

.product-gallery-thumbs .swiper-slide-thumb-active .product-slide-item-thumb {
	border-color: var(--additional-color);
}

.product-slide-item-thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.product-gallery-thumbs-wrap,
.product-slide-item {
	width: 100%;
	height: clamp(350px, 37.5vw, 682px);
	overflow: hidden;
}

.product-gallery-thumbs {
	height: 100%;
}

.product-slide-item {
	background-color: var(--white);
}

.product-slide-item img {
	display: block;
	height: 100%;
	width: 100%;
	object-fit: contain;
}

.hero-product-content-info .title-section {
	margin-bottom: 26px;
}

.hero-product-subtitle {
	font-size: 133%;
}

.breadcrumbs-block {
	margin: 0 0 20px;
	text-align: left;
	font-size: max(88%, 14px);
	color: var(--additional-color);
}

.breadcrumbs-block > a:hover {
	color: var(--general);
}

.breadcrumbs-block > a:after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.561' height='11.708' viewBox='0 0 6.561 11.708'%3E%3Cpath d='M11,5.5,5.5,0,0,5.5' transform='translate(5.854 0.354) rotate(90)' fill='none' stroke='%23bdab7b' stroke-width='1'/%3E%3C/svg%3E");
	display: inline-block;
	margin: 0 15px;
	align-self: center;
}

.product-sku {
	font-size: max(88%, 14px);
	text-transform: uppercase;
}

.product-breadcrumbs-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	margin: 0 0 20px;
}

.hero-product-price-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	padding: clamp(30px, 2.3vw, 46px) 0;
	border-top: 1px solid var(--green);
	border-bottom: 1px solid var(--green);
}

.hero-product-price-wrap .btn-double-group {
	margin: 0;
	gap: 20px;
}

.hero-product-price {
	font-size: 222%;
	font-family: "Times New Roman", sans-serif;
}

.hero-product-short-description {
	padding: clamp(30px, 2.3vw, 46px) 0;
}

.hero-product-short-description p {
	opacity: 1;
	line-height: inherit;
	margin-bottom: 0;
}

.hero-product-short-description > *:not(:last-child) {
	margin-bottom: clamp(15px, 1.5vw, 30px);
}

.hero-product-property {
	display: grid;
	grid-template-columns: 170px minmax(0, 1fr);
	grid-gap: 26px;
	padding: 8px 0;
	line-height: 1.2;
}

.hero-product-property .is-link {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 30px;
}

.hero-product-property .is-link span {
	white-space: nowrap;
}

.hero-product-video-block {
	position: relative;
	width: 100%;
	height: clamp(320px, 23vw, 447px);
}

.video-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.video-bg video,
.video-bg iframe {
	height: 100%;
	width: 100%;
	object-fit: cover;
	right: 0;
	bottom: 0;
}

/* shop */
.content-with-sidebar {
	grid-template-columns: min-content minmax(0, 1fr);
	margin: clamp(65px, 4.4vw, 85px) 0;
	gap: clamp(20px, 5.2vw, 100px);
}

.sidebar-block-wrap .filter-mobile-btn {
	display: none;
}

.sidebar-block {
	width: 356px;
	padding-right: 1rem;
}

.icon-close {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: -25px;
	right: -24px;
	transform-origin: center;
	width: 51px;
	height: 51px;
	background-color: var(--general);
	border-radius: 50%;
	line-height: 0.4;
	cursor: pointer;
	font-weight: 100;
	z-index: 3;
	transition: all 0.5s cubic-bezier(0.215, 0.610, 0.355, 1);
}

.shop-content {
	position: relative;
}

.shop-content .category-card {
	height: 305px;
}

.shop-content-filter-result {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
}

.shop-content-filter-block {
	gap: 20px;
	margin: 41px 0;
}

.shop-content-filter-block .breadcrumbs-block {
	align-self: center;
}

.shop-content-filter-item {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

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

.shop-content-filter-result,
.filter-select label {
	font-size: max(88%, 14px);
	color: var(--additional-color);
	margin: 0;
	line-height: 1.2;
}

.filter-select select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
	background: right 0 top 50% / 0.8em auto no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12.881' height='7.501' viewBox='0 0 12.881 7.501'%3E%3Cpath d='M11.82,5.91,5.91,0,0,5.91' transform='translate(12.35 6.44) rotate(180)' fill='none' stroke='%230c1b2a' stroke-width='1.5'/%3E%3C/svg%3E");
	padding: 10px 0;
	padding-right: clamp(40px, 3vw, 60px);
	border: none;
	border-bottom: 1px solid var(--additional-color);
	text-transform: uppercase;
	line-height: 1.2;
}

.shop-products-grid {
	gap: 20px;
	margin: 0;
}

.shop-products-grid .product-card-img {
	height: clamp(300px, 21.3vw, 408px);
}

.shop-products-grid .product-card-info {
	width: 90%;
}

.shop-products-pagination {
	margin: clamp(45px, 3.5vw, 70px) 0 0;
	padding-top: clamp(35px, 2.5vw, 50px);
}

.shop-products-pagination-details {
	font-size: max(88%, 14px);
	color: var(--additional-color);
	text-align: center;
}

.shop-products-pagination .btn-page-wrap {
	margin-top: 27px;
}

.searchform-wrap {
	margin-bottom: clamp(35px, 2.6vw, 53px);
}

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

.searchform-wrap .searchform-button {
	display: none;
	width: 100%;
}

.searchform-input {
	display: block;
	font-size: 100%;
	width: 100%;
	color: var(--general);
	padding: clamp(12px, 1.1vw, 18px) 65px;
	border: 1px solid transparent;
	background-color: var(--white);
	filter: none;
	margin: 0;
	line-height: 1;
	transition: var(--transition-prop);
	background: var(--white) top 50% left 2em / 1em auto no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19.297' height='19.988' viewBox='0 0 19.297 19.988'%3E%3Cg transform='translate(-0.345)'%3E%3Cpath d='M18.246,19.988a1.046,1.046,0,0,1-.759-.323L12.694,14.68A8,8,0,0,1,8.07,16.141a8.08,8.08,0,1,1,6.177-2.883L19,18.206a1.053,1.053,0,0,1-.759,1.782ZM8.07,2.105A5.965,5.965,0,1,0,14.036,8.07,5.972,5.972,0,0,0,8.07,2.105Z' transform='translate(0.345)' fill='%23BDAB7B'/%3E%3C/g%3E%3C/svg%3E");
}

.sidebar-widget {
	position: relative;
}

.sidebar-title {
	padding: 26px 0;
    text-transform: uppercase;
}

.sidebar-menu {
	display: none;
	margin: 0;
	padding: 0;
	padding-bottom: clamp(35px, 4.2vw, 84px);
}

.sidebar-menu.with-badge a {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 10px 0;
	line-height: 1.2;
}

.sidebar-menu a:hover {
	color: var(--additional-color);
}

.sidebar-title.menu-item-has-children {
	display: grid;
	grid-template-columns: minmax(0, 1fr) max-content;
	cursor: pointer;
}

.styled-checkbox.checkbox-menu {
	width: 100%;
	padding: 10px 0;
}

.styled-checkbox.checkbox-menu input+span {
	font-size: 100%;
	padding-left: 40px;
	opacity: 1;
}

.btn-reset-filter {
	margin-top: clamp(25px, 2.5vw, 50px);
}

.contact-form-block {
	padding: clamp(25px, 8.5vw, 160px) clamp(15px, 5.3vw, 105px);
	background-color: var(--white);
}

.form-footer {
	grid-template-columns: minmax(0, 1fr) max-content;
	grid-template-rows: auto;
	margin: 50px 0 0;
}

.form-footer .styled-checkbox {
	width: 100%;
}

.map-block {
	position: relative;
	width: 100%;
	height: clamp(400px, 39vw, 748px);
	margin-top: 50px;
}

#map {
	width: 100%;
	height: 100%;
}

.contact-details-items {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	grid-template-rows: auto;
	gap: 30px;
	font-size: 111%;
}

.contact-details-items .item-with-icon .icon {
	min-width: 30px;
}

.contact-details-items a:hover {
	color: var(--additional-color);
}

.contact-details-items p {
	width: min(100%, 320px);
	margin-bottom: 10px;
}

.contact-details-items .btn {
	font-size: 88%;
}

.s-book-appointment-form {
	overflow: visible;
}

.s-book-appointment-form + section {
	overflow: visible;
	z-index: 0;
}

.s-book-appointment-form .simple-info {
	align-self: start;
}

.book-appointment-form-block {
	padding: 20px 40px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 2;
}

.s-book-appointment-form .container {
	position: relative;
	z-index: 1;
	margin-bottom: 100px;
}

.s-book-appointment-form .map-block {
	height: 64rem;
}

.s-book-appointment-form .form-footer {
	gap: 40px;
}

/* s-gemstone-guide */
.gemstone-guide-content {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	grid-gap: 30px 20px;
	width: min(100%, 1400px);
	margin: 0 auto;
	margin-bottom: clamp(80px, 13vw, 232px);
}

.gemstone-guide-card {
	position: relative;
	background-color: var(--white);
}

.gemstone-guide-card-front .gemstone-guide-card-name {
	padding: 25px clamp(15px, 2.5vw, 50px) clamp(20px, 2.5vw, 50px);
	text-align: center;
}

.gemstone-guide-card-img {
	padding: clamp(20px, 2.5vw, 30px);
}

.gemstone-guide-card-img img {
	width: 100%;
    height: 15rem;
	object-fit: contain;
}

.gemstone-guide-card-back {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-10%);
	transition: var(--transition-prop);
	z-index: 1;
}

.gemstone-guide-card:hover .gemstone-guide-card-back {
	opacity: 1;
	transform: translateY(0);
	pointer-events: all;
}

.gemstone-guide-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--additional-color);
	opacity: 0;
	z-index: 1;
	pointer-events: none;
	transition: var(--transition-prop);
}

.gemstone-guide-card:hover::before {
	opacity: 0.89;
	pointer-events: all;
}

.gemstone-guide-card-back-inner {
	position: relative;
	color: var(--white);
	padding: clamp(20px, 3.5vw, 75px) clamp(15px, 1.8vw, 36px);
	text-align: center;
	z-index: 2;
}

.gemstone-guide-card-name {
	position: relative;
	font-size: 111%;
	text-transform: uppercase;
}

.gemstone-guide-card-back-inner p {
	margin: 30px 0 48px;
	line-height: 1.2;
}

.gemstone-guide-card-back-inner .btn-page-wrap {
	margin: 0;
}

.gemstone-guide-card .card-pop-up-content {
	display: none !important;
}

/* pop-up */
.pop-up-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	top: 0;
	right: 0;
	position: fixed;
	padding: 20px 0;
	height: 100vh;
	overflow-x: hidden;
	overflow-y: auto;
	pointer-events: auto;
	opacity: 1;
	z-index: 1001;
	transition: all 0.4s cubic-bezier(0.215, 0.610, 0.355, 1);
}

.pop-up-wrap::before {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	background: var(--additional-color);
	opacity: 0.8;
	transition: opacity 0.4s cubic-bezier(0.215, 0.610, 0.355, 1);
}

.pop-up-wrap .pop-up {
    display: block;
}

.pop-up-wrap .pop-up .container {
    width: 80%;
    margin: 2% auto;
}


.pop-up-hidden {
	opacity: 0;
	pointer-events: none;
}

.pop-up {
	width: min(100%, 1610px);
	transition: all 0.8s cubic-bezier(0.215, 0.610, 0.355, 1);
}

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

.pop-up-hidden .pop-up {
	transform: scale(0.9);
}

.pop-up-hidden::before {
	opacity: 0;
	pointer-events: none;
}

.icon-close {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 25px;
	right: 24px;
	transform-origin: center;
	width: 51px;
	height: 51px;
	background-color: transparent;
	border-radius: 50%;
	line-height: 0.4;
	cursor: pointer;
	font-weight: 100;
	z-index: 3;
	transition: all 0.5s cubic-bezier(0.215, 0.610, 0.355, 1);
}

.icon-close:hover {
	transform: rotate(180deg);
}

.icon-close span {
	position: absolute;
	width: 20px;
	height: 2px;
	background: var(--additional-color);
	transform: rotate(45deg);
}

.icon-close.white span {
	background-color: var(--general);
}

.icon-close span:nth-last-of-type(2) {
	transform: rotate(-45deg);
}

.pop-up-content {
	position: relative;
	width: 100%;
	margin: 0 auto;
	z-index: 1;
}

.pop-up-content-inner {
	overflow: hidden;
	background-color: var(--white);
	box-shadow: 1px 1px 30px rgb(0 0 0 / 9%);
}

.pop-up-body {
	padding: clamp(50px, 6vw, 120px) clamp(15px, 5.2vw, 105px);
	margin: 0;
	gap: 20px;
}

.pop-up-body p {
	line-height: 1.5;
}

.pop-up-body-img {
	display: flex;
	justify-content: center;
	align-items: center;
}

.pop-up-body-img img {
	max-width: 90%;
	height: auto;
}

.pop-up-body-content {
	max-height: 70vh;
	overflow: auto;
}

/* s-size-guide */
.size-guide-panel-content {
	padding: clamp(25px, 3vw, 55px) clamp(15px, 3vw, 57px);
	margin-bottom: clamp(45px, 3vw, 61px);
	background-color: var(--white);
}

.size-guide-panel {
	grid-template-columns: 380px minmax(0, 1fr);
	margin: 0;
	gap: clamp(20px, 3vw, 60px);
}

.size-guide-panel .form-group {
	margin: 0;
}

.size-guide-panel-label {
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.size-guide-panel-dimensions {
	margin: 0;
	gap: 0;
	grid-template-rows: auto;
}

.dimensions-item input {
	display: block;
	color: var(--white);
	background-color: var(--additional-color);
	border-color: var(--additional-color);
	text-align: center;
}

.size-guide-panel-dimensions .dimensions-item:not(:last-of-type) input {
	border-right-color: rgba(112, 112, 112, 0.5);
}

.size-guide-content {
	margin: clamp(45px, 2.5vw, 50px) 0 clamp(85px, 7.8vw, 150px);
}

.size-guide-item {
	display: grid !important;
	grid-template-rows: auto;
	gap: 0;
	padding: clamp(20px, 1.5vw, 30px) 0;
	margin: 0;
	border-bottom: 1px solid rgba(13, 27, 41, 0.2);
	background-color: transparent;
	text-align: center;
	transition: var(--transition-prop);
}

.size-guide-item:hover {
	font-weight: 600;
	background-color: rgba(189, 171, 123, 0.1);
}

.size-guide-item-coll {
	font-size: max(90%, 14px);
	align-self: center;
}

.size-guide-item-head {
	color: rgba(12, 27, 42, 0.6);
	text-transform: uppercase;
	background-color: transparent !important;
	font-weight: normal !important;
}

.sizes-guide {
	display: block;
	color: var(--additional-color);
	opacity: 0.9;
	text-align: center;
	margin-top: 50px;
}

.sizes-guide:hover {
	opacity: 1;
}

/* s-content-404 */
.content-404 {
	margin: clamp(54px, 3.8vw, 74px) 0;
}

.content-404-info {
	position: relative;
	padding: clamp(70px, 6.3vw, 121px) 0;
	text-align: center;
}

.content-404-info .title-page {
	font-size: 1666%;
	font-weight: 500;
	margin: 0;
	line-height: 0.5;
}

.content-404-info .title-section {
	color: var(--additional-color);
	margin: 0;
}

.content-404-info .subtitle {
	position: relative;
	font-size: 211%;
	margin-top: 3%;
}

.content-404-info .is-star-graphic {
	transform: scale(2.2);
	top: 3%;
}

.single-page-content {
	width: min(100%, 900px);
	margin: clamp(54px, 7.5vw, 150px) auto clamp(54px, 9vw, 187px);
}

.single-page-content h2,
.single-page-content h3 {
	font-size: 166%;
	margin: clamp(30px, 4.3vw, 87px) 0 clamp(30px, 4vw, 80px);
	line-height: 1.3;
}

.single-page-content h3 {
	margin: clamp(30px, 4.3vw, 87px) 0 clamp(20px, 2.5vw, 47px);
}

.single-page-content img {
	max-width: 100%;
	margin: clamp(30px, 3.5vw, 70px) 0;
}

.single-page-content ul,
.single-page-content ol {
	margin: 1em 0;
	padding: 0 0 0 40px;
    opacity: 0.8;
    line-height: 2;
}

.single-page-content li {
    list-style-type: inherit;
	margin-bottom: clamp(15px, 1.5vw, 30px);
}

.s-hero-article .title-section {
	width: min(100%, 764px);
	margin: 0 auto;
}

.article-date {
	font-size: 111%;
	margin-bottom: 18px;
	line-height: 1.2;
}

.s-hero-article .hero-content-info {
	padding: 0 clamp(15px, 1.5vw, 30px) clamp(60px, 5.2vw, 100px);
	align-self: center;
	text-align: center;
}

.s-hero-article .breadcrumbs-block {
	margin: clamp(40px, 5vw, 95px) 0 clamp(30px, 5.5vw, 70px);
}

.featured-image {
	position: relative;
}

.featured-image img {
	position: relative;
	width: 100%;
	height: 100%;
    object-fit: cover;
    object-position: left;
	z-index: 1;
}

.featured-image::before {
	content: "";
	position: absolute;
	top: 0;
	left: -50%;
	width: 200%;
	height: 50%;
	background-color: rgba(189, 171, 123, 0.1);
}

.blog-content {
	margin-bottom: clamp(50px, 5.2vw, 100px);
}

.blog-content .btn-page-wrap {
	margin-top: clamp(30px, 5vw, 90px);
}

.blog-top-item {
	position: relative;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr);
	gap: 0;
	margin: 0 0 clamp(30px, 5.2vw, 100px);
	background-color: var(--green);
}

.blog-top-item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
    object-position: left;
}

.blog-top-item-info {
	padding: 55px clamp(20px, 5.3vw, 105px);
	align-self: center;
}

.blog-top-item-info p {
	margin: clamp(20px, 1.7vw, 33px) 0 clamp(20px, 2.5vw, 48px);
}

.blog-three-columns-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(390px, 1fr));
	grid-template-rows: auto;
	gap: 30px 20px;
}

.blog-simple-item {
	position: relative;
}

.blog-simple-item-img {
	background-color: var(--white);
	width: 100%;
	height: 380px;
	overflow: hidden;
}

.blog-simple-item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
    object-position: left;
	transition: var(--transition-prop);
}

.blog-simple-item-info {
	position: relative;
	padding: 32px 0;
	text-align: center;
	z-index: 2;
}

.blog-simple-item-info .title-block {
	font-size: 166%;
}

.blog-items .article-date {
	opacity: 0.8;
}

.blog-simple-item:hover .blog-simple-item-img img {
	transform: scale(1.05);
}

.blog-two-columns-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(550px, 1fr));
	grid-template-rows: auto;
	gap: 30px 20px;
	margin: 50px 0;
}

.blog-two-columns-grid .blog-simple-item {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	color: var(--white);
	height: 576px;
}

.blog-two-columns-grid .blog-simple-item-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


.blog-two-columns-grid .blog-simple-item-img::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 80%;
	background: linear-gradient(180deg, rgba(12, 27, 42, 0) 0%, rgba(12, 27, 42, 1) 100%);
	opacity: 0.4;
	z-index: 1;
}

.blog-two-columns-grid .blog-simple-item-info {
	padding: clamp(20px, 3vw, 63px) clamp(15px, 3vw, 60px);
	text-align: left;
}

.blog-two-columns-grid .title-block {
	font-size: 277%;
}

.relative-articles-content {
	margin: clamp(50px, 5.4vw, 106px) 0;
}

.glossary-panel {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 28px 15px;
}

.glossary-filter-item {
	font-size: 111%;
	padding: 20px 18px;
	cursor: pointer;
	transition: var(--transition-prop);
}

.glossary-filter-item.active,
.glossary-filter-item:hover {
	color: var(--white);
	background-color: var(--additional-color);
}

.glossary-result-block {
	margin: 0;
	background-color: var(--white);
}

.glossary-result-block {
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 0;
}

.glossary-result-letter {
	border-right: 1px solid rgba(12, 27, 42, 0.3);
}

.glossary-content {
	margin-bottom: clamp(74px, 10.8vw, 200px);
}

.glossary-result-letter {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	padding: clamp(20px, 2.5vw, 50px) clamp(15px, 2.5vw, 50px);
}

.glossary-result-content {
	padding: clamp(10px, 1.5vw, 30px) clamp(15px, 3.1vw, 60px);
}

.glossary-result-content-item {
	grid-template-rows: auto;
	grid-template-columns: minmax(0, 0.65fr) minmax(0, 1fr);
	gap: 20px;
	padding: clamp(20px, 3vw, 57px) 0;
	margin: 0;
	margin-top: -100px;
	padding-top: calc(100px + clamp(20px, 3vw, 57px));
}

.glossary-result-content .glossary-result-content-item:not(:last-of-type) {
	border-bottom: 1px solid rgba(12, 27, 42, 0.3);
}

.glossary-result-content-item-name {
	font-size: 222%;
}

.glossary-result-content-item p {
	line-height: 1.5;
	margin-bottom: 18px;
}

.glossary-result-content-item .btn-page-wrap {
	margin: 0;
}

.the-four-cs-content {
	margin-bottom: clamp(74px, 8.5vw, 170px);
}

.the-four-cs-filter-block {
	display: flex;
	justify-content: space-around;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px 5px;
	padding: 28px 15px;
}

.the-four-cs-filter-item {
	font-size: 111%;
	min-width: 210px;
	border: none;
	transition: var(--transition-prop);
}

.the-four-cs-filter-item.active,
.the-four-cs-filter-item:hover {
	color: var(--white);
	font-weight: 500;
	background-color: var(--additional-color);
}

.the-four-cs-result-block {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	gap: 30px;
}

.the-four-cs-result-item {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	gap: clamp(30px, 3.3vw, 66px);
	position: relative;
	padding: clamp(30px, 4.5vw, 90px) clamp(15px, 4.5vw, 90px);
	background-color: var(--white);
}

.the-four-cs-result-item-coll {
	grid-template-columns: minmax(0, 0.4fr) minmax(0, 1fr);
	grid-template-rows: auto;
	gap: clamp(20px, 6.8vw, 120px);
	margin: 0;
	padding: 0 0 clamp(20px, 2.8vw, 50px);
}

.the-four-cs-result-item-info {
	align-self: center;
	padding: 30px 0;
}

.the-four-cs-result-item-info .title-section {
	margin-bottom: 25px;
}

.the-four-cs-result-item-info p {
	font-size: 111%;
	line-height: 1.6;
	margin-bottom: 18px;
}

.the-four-cs-result-item-img {
	align-self: center;
}

.the-four-cs-result-item-img img {
	width: 100%;
}

.the-four-cs-result-item-details {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	gap: 20px;
}

.the-four-cs-result-item-detail-inner .title-block {
	font-size: 166%;
	margin-bottom: 20px;
}

.the-four-cs-result-item-detail-inner p {
	line-height: 1.5;
}






@media (max-width : 1440px) {

	html,
	body {
		font-size: 17px;
	}

	.navbar-brand img,
	.navbar-brand svg {
		width: 150px;
	}

	.header.scroll .navbar-brand img,
	.header.scroll .navbar-brand svg {
		width: 100px;
	}

	.navbar-top {
		padding: 10px 0;
	}

	.header.scroll .navbar-top {
		padding: 10px 0;
	}

	.top-padding {
		padding-top: 112px;
	}

	.arrow {
		width: 62px;
		height: 62px;
	}

	h1,
	.title-page {
		font-size: 354%;
	}

	h2,
	.title-section {
		font-size: 263%;
	}

	.glossary-panel {
		flex-wrap: wrap;
	}

}

@media (max-width : 1280px) {

	html,
	body {
		font-size: 16px;
	}

	.navbar-brand img,
	.navbar-brand svg {
		width: 145px;
	}

	h1,
	.title-page {
		font-size: 320%;
	}

	h2,
	.title-section {
		font-size: 283%;
	}

	.sidebar-block {
		width: 256px;
	}

	.content-404-info .subtitle {
		margin-top: 4%;
	}

}


@media (max-width : 1024px) {

	html,
	body {
		font-size: 15px;
	}

}

@media (max-width : 991px) {

	html,
	body {
		font-size: 15px;
	}

	.preloader-content-wrap {
		width: 100px;
		height: 100px;
	}

	.arrow {
		width: 52px;
		height: 52px;
	}

	h1,
	.title-page {
		font-size: 257%;
	}

	h2,
	.title-section {
		font-size: 214%;
	}

	h3,
	.title-block {
		font-size: 214%;
	}

	.coll-2,
	.coll-3,
	.coll-4,
	.coll-5,
	.coll-6 {
		display: block;
	}

	.top-padding {
		padding-top: 68px;
	}

	.navbar-brand img,
	.navbar-brand svg {
		width: 110px;
		margin-left: 0;
	}

	.header-left-side .header-location-block {
		display: none;
	}

	.navbar-collapse-inner-block .navbar-brand {
		display: block;
	}

	.header {
		-webkit-box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.05);
		box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.05);
	}

	.header .navbar-brand {
		position: relative;
		z-index: 15;
		margin: 0;
	}

	.header .header-center-block {
		align-self: center;
	}

	.navbar-top {
		grid-template-columns: 66px 1fr 66px;
		padding: 10px 0;
	}

	.navbar-top::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 150%;
		transform: translateX(-20%);
		height: 100%;
		background-color: var(--white);
		z-index: 15;
	}

	.head-icons ul {
		position: relative;
		gap: 10px;
		z-index: 15;
	}

	.head-icons ul a:hover {
		transform: none;
	}

	.hamburger {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		position: relative;
		width: 40px;
		height: 40px;
		cursor: pointer;
		box-sizing: border-box;
		transition: var(--transition-prop);
		z-index: 15;
	}

	.hamburger span {
		width: 34px;
		height: 2px;
		background-color: var(--general);
		display: block;
		margin: 5px auto;
		transition: all 0.4s cubic-bezier(0.77, 0.2, 0.05, 1.0);
	}

	.hamburger span:first-child {
		transform-origin: 0% 0%;
	}

	.hamburger span:nth-last-child(2) {
		transform-origin: 0% 100%;
	}

	.hamburger.active span:nth-child(1) {
		transform: translateY(0px) translateX(6px) rotate(45deg);
	}

	.hamburger.active span:nth-child(2) {
		transform: translateX(2px) rotate(90deg);
		opacity: 0;
	}

	.hamburger.active span:nth-child(3) {
		transform: translateY(-12px) rotate(-45deg);
	}

	.menu-open {
		overflow: hidden;
	}

	.navbar-collapse {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		pointer-events: none;
		overflow: hidden;
		transition: var(--transition-prop);
		z-index: 14;
	}

	.navbar-collapse-inner-block {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 10px 15px 20px;
		background: var(--white);
		overflow: auto;
		opacity: 0;
		transition: var(--transition-prop);
		z-index: 11;
	}

	.navbar-collapse-social {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		padding: 20px 20px;
	}

	.navbar-collapse-social nav {
		width: auto;
	}

	.navbar-collapse-inner-block::before {
		display: block;
		background-size: 90% auto;
	}

	.navbar-collapse.toggle {
		pointer-events: auto;
	}

	.navbar-collapse.toggle .navbar-collapse-inner-block {
		opacity: 1;
	}

	.navbar-collapse.toggle .top-mnu {
		transition-delay: 0.8s;
	}

	.top-mnu {
		height: 100%;
		flex-direction: column;
		justify-content: flex-start;
		flex-wrap: nowrap;
		padding: 68px 0 0;
	}

	.top-mnu>li {
		display: inline-block;
		width: 100%;
		margin: 0;
		opacity: 0;
		transform: translateY(15px);
		border-bottom: 1px solid rgba(12, 27, 42, 0.16);
	}

	.top-mnu>li:first-of-type {
		border-top: 1px solid rgba(12, 27, 42, 0.16);
	}

	.top-mnu>li>a {
		display: inline-block;
		width: 100%;
		font-size: 16px;
		padding: 20px 0;
		text-align: center;
	}

	.top-mnu li.menu-item-has-children {
		display: block;
	}

	.top-mnu li.menu-item-has-children::after {
		position: absolute;
		top: 23px;
	}

	.sub-menu {
		display: none;
		flex-direction: column-reverse;
		justify-content: center;
		align-items: flex-start;
		position: relative;
		width: 100%;
		padding-bottom: 20px;
		top: 0;
		opacity: 1 !important;
		background-color: transparent;
		transform: translateY(0) !important;
		visibility: visible;
	}

	.sub-menu li a {
		font-size: 14px;
		text-align: center;
		text-transform: capitalize;
		border: none;
	}

	.top-mnu>li:hover>a::before,
	.top-mnu>.current-menu-item>a::before {
		display: none;
	}

	.navbar-collapse .header-location-block {
		display: flex;
		flex-direction: column;
		width: 100%;
		padding: 30px 0 40px;
		text-align: center;
		opacity: 0;
		transform: scale(0);
	}

	.navbar-collapse .header-location-block address {
		width: min(100%, 244px);
		margin: 0 auto;
	}

	.navbar-collapse .header-location-block .btn-page-wrap {
		display: flex;
		margin-top: 16px !important;
	}

	.navbar-collapse.toggle .header-location-block {
		opacity: 1;
		transform: scale(1);
		transition: all 300ms 500ms;
	}

	.navbar-foot-inner {
		display: grid;
		width: 100%;
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: max(5vw, 35px);
	}

	.foot-menu-wrap {
		display: grid;
	}

	.foot-menu {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.foot-bottom-line {
		display: flex;
		flex-direction: column;
		text-align: center;
	}

	.foot-additional-menu {
		flex-direction: column;
		justify-content: center;
		text-align: center;
	}

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

	.foot-social {
		width: 40px;
		height: 40px;
	}

	.social-menu {
		flex-direction: row;
	}

	.social-menu li:not(:last-of-type) a {
		border-bottom: none;
		border-right: 1px solid var(--general);
	}

	.foot-logo {
		width: min(100%, 160px);
		margin: 0 auto;
	}

	.foot-book-appointment {
		width: 100%;
		text-align: center;
	}

	.foot-book-appointment .item-with-icon {
		display: flex;
		flex-direction: column-reverse;
		width: min(100%, 230px);
		margin: 0 auto;
	}

	.foot-book-appointment .btn-page-wrap {
		justify-content: center;
	}

	.navbar-foot-line {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	.foot-social {
		width: auto;
	}

	.foot-caption {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 10px;
	}

	.navbar-foot-menu-wrap .foot-menu {
		display: none;
	}

	.foot-menu-block {
		padding: 23px 0;
		border-top: 1px solid rgba(12, 27, 42, 0.16);
	}

	.foot-mnu-title {
		position: relative;
		text-align: center;
		margin: 0;
	}

	.foot-mnu-title.menu-item-has-children::after {
		position: absolute;
		top: 5px;
	}

	.foot-menu {
		padding-top: 20px;
	}

	.foot-menu a {
		text-align: center;
	}

	.is-star-graphic {
		top: 0;
		height: 100%;
	}

	.is-star-graphic::before {
		width: 100% !important;
		height: 100%;
		background-size: contain;
	}

	.subtitle {
		font-size: 100%;
	}
	
	.home-hero-content {
		min-height: auto;
	}

	.hero-carousel-item {
		height: 368px;
		min-height: auto;
	}

	.hero-carousel-block .swiper-navigation-custom-wrap {
		position: absolute;
		width: 100%;
		bottom: clamp(30px, 4vw, 70px);
		right: 0;
		justify-content: center;
	}

	.brands-item {
		min-height: 164px;
	}

	.general-bottom-content {
		display: flex;
		flex-direction: column-reverse;
		margin: 0;
	}

	.general-bottom-content::before {
		width: 100%;
	}

	.general-bottom-info {
		width: 100%;
		text-align: center;
	}

	.general-bottom-info .btn-page-wrap {
		justify-content: center;
	}

	.general-bottom-img {
		top: 0;
		padding-left: 0;
	}

	.product-card-info {
		width: 100%;
	}

	.simple-colls {
		display: grid;
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}

	.quotes::before {
		top: 0;
		left: 50%;
		width: 88px;
		height: 73px;
		transform: translateX(-50%) translateY(-50%);
	}

	.testimonials-item {
		text-align: center;
	}

	.testimonials-carousel-wrap .swiper-navigation-custom-wrap {
		justify-content: center;
		margin-top: 58px;
	}

	.simple-content-wrap,
	.simple-content {
		display: flex;
		flex-direction: column;
		gap: 70px;
	}

	.simple-info {
		width: 100%;
		padding: 0;
		text-align: center;
	}

	.s-simple.revers .simple-content {
		margin-bottom: 60px;
	}

	.s-simple .container {
		width: 100%;
		padding: 0 15px;
	}

	.title-colls-wrap {
		display: grid;
		grid-template-columns: repeat(1, minmax(0, 1fr));
		text-align: center;
		gap: 30px;
	}

	.title-colls-wrap .swiper-navigation-custom-wrap {
		justify-content: center;
	}

	.product-gallery-wrap {
		display: grid;
	}

	.product-gallery-thumbs-wrap,
	.product-slide-item {
		height: clamp(350px, 50vw, 624px);
	}

	.hero-product-content,
	.content-with-sidebar {
		display: grid;
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 50px;
	}

	.sidebar-block {
		width: 100%;
	}

	.searchform-wrap .searchform-button {
		display: block;
	}

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

	.shop-products-grid {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	}

	.contact-details-items {
		text-align: left;
		margin-top: 50px;
	}

	.form-footer {
		display: grid;
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 30px;
	}

	.book-appointment-form-block {
		position: relative;
	}

	.pop-up-wrap {
		align-items: flex-start;
	}

	.icon-close {
		top: 10px;
		right: 10px;
	}

	.pop-up-body-content {
		overflow: hidden;
		max-height: inherit;
	}

	.gemstone-guide-card-back-inner p {
		line-height: 1.6;
	}

	.size-guide-panel,
	.size-guide-panel>div {
		display: grid;
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 20px;
		grid-template-rows: auto;
	}

	.size-guide-panel-label {
		margin-bottom: 10px;
	}

	.content-404-info .title-page {
		font-size: 1066%;
	}

	.content-404-info .subtitle {
		margin-top: 50px;
	}

	.content-404-info .is-star-graphic {
		transform: scale(1.2);
	}

	.glossary-filter-item {
		padding: 15px 14px;
	}

	.glossary-result-letter {
		border-right: none;
		border-bottom: 1px solid rgba(12, 27, 42, 0.3);
	}

	.glossary-result-content-item-name {
		font-size: 170%;
	}

	.the-four-cs-result-item-info {
		padding-bottom: 0;
	}
	
	.the-four-cs-filter-block {
		flex-wrap: nowrap;
		justify-content: flex-start;
		overflow-x: auto;
		padding-left: 0;
		padding-right: 0;
	}

	.the-four-cs-filter-item {
		min-width: 110px;
		padding: 15px;
		border: 1px solid var(--general);
	}
	
	.the-four-cs-filter-item.active,
	.the-four-cs-filter-item:hover {
		border-color: var(--additional-color);
	}

	.shop-content .categories-colls {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.shop-content .category-card {
		height: 205px;
	}

	.sidebar-block-wrap .filter-mobile-btn {
		display: block;
	}

	.sidebar-block {
		display: none;
		margin-top: 30px;
	}
	
	.s-book-appointment-form .map-block {
		height: 400px;
	}
	
	.blog-top-item-img {
		height: 400px;
	}
	
	.featured-image {
		height: 280px;
	}
}

@media (max-width : 767px) {

	html,
	body {
		font-size: 14px;
	}

	.container {
		width: 100% !important;
	}

	.product-gallery-wrap {
		display: flex;
		flex-direction: column-reverse;
		gap: 0;
	}

	.product-gallery-thumbs-wrap {
		height: auto;
		margin-top: 15px;
	}

	.product-slide-item-thumb {
		width: 100%;
		height: 100%;
	}

	.product-slide-item img {
		object-fit: contain;
	}

	.blog-two-columns-grid,
	.blog-three-columns-grid {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}

	.blog-two-columns-grid .blog-simple-item {
		height: 376px;
	}
	
	.blog-top-item-img {
		height: 280px;
	}

	.blog-simple-item-img {
		height: 250px;
	}

	.blog-top-item-info {
		padding: 35px clamp(15px, 5.3vw, 105px);
	}

	.blog-simple-item-info {
		padding: 20px 0;
	}


}

@media (max-width : 480px) {

	html,
	body {
		font-size: 14px;
	}

	button,
	.btn {
		font-size: 14px;
	}

	.hero-product-property {
		grid-template-columns: 100px minmax(0, 1fr);
	}

	.size-guide-item-head {
		font-size: 12px;
	}

}

@media (max-width : 360px) {

	html,
	body {
		font-size: 13px;
	}

}

/* admin bar */

.admin-bar .header {
	top: 32px;
}
.admin-bar .pop-up-wrap {
	top: 32px;
	height: calc(100vh - 32px);
}

@media (max-width : 991px) {
	.admin-bar .navbar-collapse,
	.admin-bar .navbar-collapse-inner-block {
		top: 32px;
		height: calc(100% - 32px);
	}
}

@media (max-width : 782px) {
	.admin-bar .header {
		top: 46px;
	}
	.admin-bar .navbar-collapse,
	.admin-bar .navbar-collapse-inner-block {
		top: 46px;
		/*height: calc(100% - 46px);*/
		height: 100%;
	}
	.admin-bar .pop-up-wrap {
		top: 46px;
		height: calc(100vh - 46px);
	}
}

@media (max-width : 600px) {
	#wpadminbar {
		position: fixed;
	}
}

/* Tabs */

[data-tab-content]:not(.active) {
	display: none;
}

/* Size Table */

[data-region-size]:not(.active) {
	display: none;
}

/* Glossary */

[data-glossary-content]:not(.active) {
	display: none;
}

/* Gravity Form */

.form .gform_wrapper.gravity-theme .gform_fields {
    grid-column-gap: clamp(15px, 1.2vw, 20px);
    grid-row-gap: clamp(15px, 1.2vw, 20px);
}

.form .gform_wrapper.gravity-theme .gfield input, 
.form .gform_wrapper.gravity-theme .gfield textarea, 
.form .gform_wrapper.gravity-theme .gfield select {
    display: block;
    font-size: 100%;
    width: 100%;
    color: var(--general);
    padding: clamp(12px, 1.1vw, 18px) clamp(15px, 1.6vw, 30px);
    border: 1px solid var(--general);
    background-color: var(--white);
    filter: none;
    margin: 0;
    line-height: 1;
    transition: var(--transition-prop);
}

.form .gform_wrapper.gravity-theme .gfield input:focus, 
.form .gform_wrapper.gravity-theme .gfield textarea:focus, 
.form .gform_wrapper.gravity-theme .gfield select:focus {
	border-color: var(--additional-color);
}

.form .gform_wrapper.gravity-theme .gfield .ginput_container_textarea {
	margin-bottom: 30px;
}

.form .gform_wrapper.gravity-theme .gfield textarea.medium {
    height: 154.6px;
}

.form .gform_wrapper.gravity-theme .gfield textarea {
    line-height: 1.3;
}

.form .gform_wrapper.gravity-theme .gform_footer {
	margin: 0;
	padding: 0;
}

.form .gform_wrapper.gravity-theme #field_submit {
	align-items: flex-start;
}

.form .gform_wrapper.gravity-theme #field_submit button[type=submit] {
	margin-left: auto;
}

.form .gform_wrapper.gravity-theme .gform_footer button[type=submit] {
	margin-top: clamp(15px, 1.2vw, 20px);
}

.form .gform_wrapper.gravity-theme .gfield_checkbox .gchoice label {
    position: relative;
    display: block;
	min-height: 20px;
    font-size: 12px;
    padding-left: 30px;
    line-height: 1.2;
    cursor: pointer;
    align-self: center;
    text-align: left;
    opacity: 0.8;
}

.form .gform_wrapper.gravity-theme .gfield_checkbox .gchoice input,
#shipping_method li input {
    display: none;
}

.form .gform_wrapper.gravity-theme .gfield_checkbox .gchoice label:before,
#shipping_method li label:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 1px solid var(--general);
	transition: var(--transition-prop);
}

.form .gform_wrapper.gravity-theme .gfield_checkbox .gchoice label:after,
#shipping_method li label:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 5px;
	left: 5px;
	width: 10px;
	height: 10px;
	background-color: var(--general);
	transform: scale(0);
	opacity: 0;
	transition: var(--transition-prop);
}

.form .gform_wrapper.gravity-theme .gfield_checkbox .gchoice input:checked~label:after,
#shipping_method li input:checked~label:after {
    transform: scale(1);
    opacity: 1;
}

.woocommerce-shipping-methods#shipping_method label:after, .woocommerce-shipping-methods#shipping_method label:before {
    border-radius: 0;
}
#shipping_method li label {
    position: relative;
    display: block;
    padding-left: 30px;
    line-height: 1.2;
    cursor: pointer;
    align-self: center;
    text-align: left;
}

.form .gform_wrapper .gform_validation_errors {
	border-radius: 0;
}

.form .gform_wrapper .gform_ajax_spinner {
    width: 48px;
    min-height: 48px;
    object-fit: contain;
}

/* Newsletter Form */

.newsletter-form .gform_wrapper.gravity-theme .gform_fields {
    grid-column-gap: 0;
    grid-row-gap: clamp(30px, 1.5vw, 30px);
}

.newsletter-form .gform_wrapper.gravity-theme .gfield input {
	font-size: 14px;
}

.newsletter-form .gform_wrapper.gravity-theme #field_submit button[type=submit] {
	margin: 0;
    padding: clamp(12px, 1.1vw, 18px) 44px;
    line-height: 20px;
}

.newsletter-form .gform_wrapper.gravity-theme fieldset.gfield {
	order: 1;
}

.newsletter-form .gform_wrapper.gravity-theme .gfield_checkbox .gchoice label {
	width: min(100%, 252px);
	margin: auto;
	padding-right: 0;
}

@media (max-width: 640px) {
	.newsletter-form .gform_wrapper.gravity-theme .gform_fields {
		grid-template-columns: repeat(10,1fr);
	}

	.newsletter-form .gform_wrapper.gravity-theme .gfield:not(.gfield--width-full) {
		grid-column: span 6;
	}

	.newsletter-form .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
		line-height: 1;
	}

	.newsletter-form .gform_wrapper.gravity-theme #field_submit button[type=submit] {
		width: 100%;
		padding: clamp(12px, 1.1vw, 18px) 20px;
	}
}

/* Search */

.search-form {
	display: none;
    position: absolute;
    left: -10px;
    transform: translateX(-100%);
    width: 200px;
}

.search-form input {
	width: 100%;
	height: 40px;
	padding: 5px 10px;
    font-size: 100%;
    color: var(--general);
    border: 1px solid var(--general);
    background-color: var(--white);
    filter: none;
    line-height: 1;
    transition: var(--transition-prop);
}

.search-form input:focus {
	border-color: var(--additional-color);
}

/* Price Slider */

#price_range .noUi-connect {
	background: var(--additional-color);
}

.price_range {
	margin-top: 20px;
	text-align: center;
}

/* Loader */

.ajax-loader {
	display: block;
	width: 100px;
	height: 100px;
	margin: auto;
	background: url(../img/ajax-loader.gif) center no-repeat;
}

*.loading {
  position: relative;
  opacity: 0.5;
  pointer-events: none;
}

*.loading:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: url(../img/ajax-loader.gif) 50% no-repeat;
  background-size: 10%;
}