*{
	font-family: "Inter", Sans-serif;
}


/* Header */

header.main-header {
	position: sticky;
	top: 0px;
	z-index: 999;
	max-width: 100%;
	width: 100%;
	background: linear-gradient(270deg, #fff 0%, #fff 100%);
	padding: 10px 0;
	border-radius: 0 0 20px 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 16px 0 rgb(0 0 0 / 5%);
	min-height: 80px;
}

header.main-header.active {
	border-radius: 20px 20px 0 0;
}

.main-header-container {
	width: 90%;
	max-width: 1400px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.logo {
	width: 150px;
}

.header-logo.logo a{
	max-width: 150px;
	position: absolute;
	top: 10px;
	transition: width 1s ease-in-out;
}

header.main-header.scrolled .logo a {
	width: 100px;
}

.logo a {
	display: flex;
}

.header-menu {
	width: 768px;
}

ul.navbar-nav {
	list-style: none;
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
}

.header-right {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
}

.toggle-bars {
	display: none;
}

ul.navbar-nav .menu-item-has-children {
	position: relative;
}

/* default: click-based (mobile) */
ul.navbar-nav .sub-menu { display: none; }
ul.navbar-nav .menu-item-has-children.is-open > .sub-menu { display: block; }

ul.navbar-nav .menu-item-has-children > a{
	display: flex;
	gap: 10px;
	justify-content: space-between;
	padding: 10px;
	align-items: center;
}

ul.navbar-nav .menu-item-has-children > a:after {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: "";
}

.mobile-button a,
.header-button a {
	font-weight: 700;
	background-color: #9774AD;
	border-radius: 4px 4px 4px 4px;
	padding: 10px 24px 10px 24px;
	color: #fff !important;
}

.mobile-button a:hover,
.header-button a:hover {
	background-color: #8bc34a;
}

ul.navbar-nav a:hover {
    color: #9774AD;
}

ul.sub-menu .current-menu-item a {
    color: #9673ac !important;
}

.header-button a font {
	font-size: 12px;
}

ul.navbar-nav a font {
	font-size: 10px;
}

.rsmc-hero__wrap {
	max-width: 90%;
	margin: auto;
	padding: 80px 0;
	display: flex;
	gap: 40px;
	justify-content: center;
	align-items: center;
}

.rsmc-hero__left {
	width: 55%;
	padding-right: 50px;
}

.rsmc-hero__right {
	width: 45%;
}

.rsmc-hero__tag {
	display: inline-flex;
	padding: 5px 10px;
	gap: 5px;
	align-items: center;
	background: #f0edf3;
	border-radius: 50px;
	margin-bottom: 20px;
}

.rsmc-hero__tag:before {
	content: "";
	width: 10px;
	height: 10px;
	background: #8db94a;
	border-radius: 10px;
}

h1.rsmc-hero__title {
	font-weight: 600;
	line-height: 1.4em;
	color: #333333;
}

a.rsmc-hero__btn {
	font-size: 24px;
	font-weight: 700;
	background-color: #9774AD;
	border-radius: 4px 4px 4px 4px;
	padding: 10px 24px 10px 24px;
	color: #fff !important;
	display: inline-flex;
}

a.rsmc-hero__btn:hover{
	background-color: #8dc63f;
}

p.rsmc-hero__subtitle {
	margin: 40px 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.6em;
	color: #333333;
}

img.rsmc-hero__img {
	border-radius: 24px 24px 24px 24px;
	box-shadow: 0px 3px 8px 2px rgba(0, 0, 0, 0.15);
	width: 100%;
}

@media only screen and (min-width: 1500px) {
	#main > div > div > div, .rsmc-hero__wrap, #footer > div > div > div, footer > div > div > div.rsmc-textimonials {
		max-width: 1400px !important;
		margin-left: auto;
		margin-right: auto;
	}

}

@media screen and (min-width: 1025px) {
	ul.navbar-nav .sub-menu {
		display: none;
		position: absolute;
		left: 0;
		top: calc(100%);
		z-index: 9999;
		min-width: 275px;
		padding: 0px;
		background: #fff;
		list-style: none;
		box-shadow: 0 4px 10px -2px rgba(0, 0, 0, 0.1);
	}
	ul.navbar-nav .menu-item-has-children:hover > .sub-menu,
	ul.navbar-nav .menu-item-has-children:focus-within > .sub-menu {
		display: block;
	}
	ul.navbar-nav .sub-menu a {
		padding: 10px;
		display: flex;
		border-bottom: 1px solid #c4c4c4;
	}

	ul.navbar-nav .sub-menu li:last-child a {
		border: 0;
	}

	.mobile-button {
		display: none;
	}
}


@media screen and (max-width:1024px) {
	/* Header */

	.header-menu {
		width: 100%;
		position: absolute;
		top: 70px;
		left: 0;
		background: #fff;
		padding: 30px 0px 20px;
		box-shadow: 0 8px 16px 0 rgb(0 0 0 / 5%);
		border-radius: 0 0 20px 20px;
		display: none;
		max-height: calc(100dvh - 80px);
		overflow: auto;
	}

	ul.navbar-nav {
		flex-direction: column;
		align-items: flex-start;
		max-width: 90%;
		margin: auto;
		gap: 20px;
	}

	.header-button {
		display: none;
	}

	.toggle-bars {
		display: flex;
		position: relative;
		flex-direction: column;
		gap: 5px;
		justify-content: space-between;
		width: 30px;
		height: 28px;
		cursor: pointer;
	}

	span.toggle-bar {
		display: block;
		width: 100%;
		height: 5px;
		border-radius: 5px;
		background: #9774AD;
	}

	.toggle-bars span.toggle-bar:nth-child(1) {
		transform-origin: 100% 100%;
		transition: transform 0.3s ease-in-out;
	}

	.toggle-bars span.toggle-bar:nth-child(2) {
		transition: transform 0.2s ease-in-out;
	}

	.toggle-bars span.toggle-bar:nth-child(3) {
		transform-origin: 100% 0%;
		transition: transform 0.3s ease-in-out;
	}

	.toggle-bars.active {
		border-radius: 50px;
	}

	.toggle-bars.active span.toggle-bar:nth-child(1) {
		transform: rotate(-45deg);
	}

	.toggle-bars.active span.toggle-bar:nth-child(2) {
		transform: scaleY(0);
	}

	.toggle-bars.active span.toggle-bar:nth-child(3) {
		transform: rotate(45deg);
	}

	ul.navbar-nav .menu-item-has-children {
		width: 100%;
	}

	ul.navbar-nav .sub-menu {
		background: #fff;
		list-style: none;
		padding: 0;
	}

	ul.navbar-nav .sub-menu a {
		padding: 10px;
		display: flex;
		border-bottom: 1px solid #c4c4c4;
	}

	ul.navbar-nav .menu-item-has-children > a{
		padding: 0px;
	}

	.rsmc-hero__wrap {
		padding: 50px 0;
		gap: 20px;
	}

	.rsmc-hero__left {
		padding: 0;
	}

	h1.rsmc-hero__title {
		font-size: 2rem;
	}

	p.rsmc-hero__subtitle {
		margin-top: 20px;
	}

	.rsmc-hero__tag {
		margin-bottom: 10px;
	}

	.mobile-button {
		width: 100%;
	}

	.mobile-button a {
		width: 100%;
		display: block;
		text-align: center;
	}

	.header-logo.logo a img {
		height: 64px;
		width: 60px;
		object-fit: cover;
		object-position: top left;
	}

}

@media screen and (max-width:768px) {
	.rsmc-hero__wrap {
		flex-direction: column;
		gap: 40px;
	}

	.rsmc-hero__left, .rsmc-hero__right {
		width: 100%;
	}

}

@media screen and (max-width:767px) {
	.main-header-container {
		width: 100%;
		padding: 10px;
	}
	.logo {
		width: 70px;
	}
	.rsmc-hero__wrap {
		max-width: 100%;
		padding: 40px 10px;
		gap: 10px;
	}
	h1.rsmc-hero__title {
		font-size: 1.6rem;
	}

	p.rsmc-hero__subtitle {
		font-size: 16px;
		margin: 20px 0;
	}

	a.rsmc-hero__btn {
		font-size: 16px;
		padding: 6px 24px;
	}

	.rsmc-hero__tag {
		font-size: 14px;
	}
}