.top-notification {
	background-color: var(--clr-compassion);
	font-size: 1.25rem;
	font-weight: 500;
	text-transform: uppercase;
}
.top-notification .container {
	padding-inline: var(--pad-in-1);
	padding-block: var(--pad-bl-1);
	text-align: center;
}
.top-notification a {
	color: var(--clr-white);
	display: flex;
	justify-content: center;
	align-items:center;
}
.top-notification a::before {
	content: 'i';
	border: 4px solid var(--clr-white);
	font-size: 1.6rem;
	font-weight: 600;
	width: 1.6rem;
	height: 1.6rem;
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	text-transform: lowercase;
	border-radius: 50%;
	margin-right: 10px;
}
.topnav {
	background-color: var(--clr-soft-grey);
}
.topnav .container {
	padding-inline: var(--pad-in-1);
	padding-block: 9px 12px;
}
.topnav nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.topnav nav .btn {
	margin: 0 0 0 15px;
	height: 100%;
	display: flex;
	align-items: center;
}
.topnav-right {
	display: flex;
	align-items: center;
	justify-content: end;
	width: 100%;
}
.topnav-right-links {
	display: flex;
}
.topnav-right-btns {
	display: flex;
}
.search-btn::after {
	content: '\f002';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	margin-left: 15px;
}
header nav {
	font-size: 1.5rem;
	font-weight: 600;
}
header nav a {
	color: var(--clr-thrive);
	align-items:center;
	display: flex;
	padding-inline: 25px;
	position: relative;
}
header nav a:hover {
	color: var(--clr-thrive);
}
header nav a + a:not(.btn)::before {
	content: '|';
	position: relative;
	left: -25px;
	color: var(--clr-calm-light);
	font-size: 1.8rem;
}
nav a span {
	display: inline-block;
	position: relative;
}
nav a span::after {
	content: '';
	position: absolute;
	width: 100%;
	transform: scaleX(0);
	height: 2px;
	bottom: 0;
	left: 0;
	background-color: var(--clr-thrive);
	transform-origin: bottom right;
	transition: transform 0.25s ease-out;
}
nav a:hover span:after, nav li:hover > a span:after, nav li:focus-within > a span:after{
	transform: scaleX(1);
	transform-origin: bottom left;
}
.mainnav .container {
	padding-inline: var(--pad-in-1);
	padding-block: 23px 32px;
	display: flex;
	justify-content: space-between;
	align-items: end;
}
.mainnav nav {
	display: flex;
	align-items: end;
}
.mainnav .menu {
	display: flex;
}
.mainnav-logo img {
	height: 84px;
	width: auto;
}
.search-input {
	background-color: var(--clr-soft-grey);
	border: none;
	height: 42px;
	width: 240px;
	max-width: 100%;
	border-radius: 20px;
	color: var(--clr-onyx);
	font-size: 1.3rem;
	padding-inline: 20px;
	font-weight: 500;
	transition: all 0.6s;
}
.search-input::placeholder, .search-input::-webkit-input-placeholder {
	color: var(--clr-onyx);
	opacity: 1;
	text-align: right;
	width: 100%;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
}
.search-input::-webkit-search-cancel-button {
	display: none;
}
.search-input:focus-visible {
	outline: none;
	border: 2px solid var(--clr-onyx);
	width: 360px;
}
nav > ul {
	position: relative;
}
nav ul {
	padding: 0;
	margin: 0;
}
nav ul ul {
	position: absolute;
	left: 0;
	display: none;
	z-index: 100;
	background: var(--clr-white);
	width: 350px;
	padding-block: 20px;
	box-shadow: 2px 2px 5px var(--clr-grey);
}
nav > ul > li:last-child > ul {
	left: auto;
	right: 0;
}
nav li {
	list-style: none;
	padding: 0;
	position: relative;
}
nav li:focus-within ul, nav li:hover ul{
	display: block;
}
nav ul ul a {
	font-weight: normal;
	padding-block: 4px;
}
nav ul ul li:nth-child(n+3) a {
	border-top: 2px dashed var(--clr-soft-grey);
}
nav ul ul a:hover {
	background-color: var(--clr-soft-grey);
}
.mobile-menu-control {
	display: none;
}
.sub-open {
	display: none;
}
.sub-close {
	display: none;
}
@media (max-width: 1599px) {
	.topnav nav {
		font-size: 1.3rem;
	}
	header nav a {
		padding-inline: 20px;
	}
	header nav a + a:not(.btn)::before {
		left: -20px;
	}
}
@media (max-width: 1365px) {
	.search-input {
		width: 50px;
		margin-top: 20px;
		float: right;
		padding-inline: 0;
	}
	.search-input:focus-visible {
		width: 100%;
		text-align: left;
		padding-inline: 20px;
	}
	.search-input::placeholder {
		text-align: center;
	}
	.search-input:focus-visible::placeholder {
		text-align: right;
	}
	.mainnav .container {
		flex-wrap: wrap;
	}
	.topnav nav {
		flex-direction: column-reverse;
		align-items: end;
	}
	.mainnav nav {
		flex-direction: column;
		align-items: start;
		gap: 25px;
	}
	header nav a {
		padding-inline: 10px;
	}
}
@media (max-width: 1023px) {
	:root {
		--mob-nav-height: 58px;
	}
	/* Mobile nav */
	header .navarea {
		display: flex;
		flex-direction: column-reverse;
		z-index: 100;
	}
	header nav {
		color: var(--clr-white);
	}
	.mainnav nav {
		display: block;
	}
	.mainnav .container {
		display: block;
	}
	.mainnav .menu {
		display: none;
	}
	.search-input {
		display: none;
	}
	.topnav {
		display: none;
	}
	.mainnav .container {
		padding-block: 0;
		padding-inline: 0;
	}
	.mainnav-logo {
		padding: 10px 20px;
		height: calc( var(--mob-nav-height) * 2 );
	}
	.open .mainnav-logo {
		padding-block: 5px;
		height: var(--mob-nav-height);
	}
	.mainnav-logo img {
		height: 100%;
	}
	.mobile-menu-holder {
		display: flex;
		justify-content: space-between;
		background-color: var(--clr-white);
		width: 100%;/*width: 100vw;*/
	}
	.mobile-menu-control {
		display: flex;
	}
	.mobile-menu-control button {
		width: var(--mob-nav-height);
		height: var(--mob-nav-height);
		border: 0;
		background-color: var(--clr-calm);
		display: flex;
		justify-content: center;
		align-items: center;
		cursor: pointer;
	}
	.mobile-menu-control button::before {
		font-family: "Font Awesome 6 Free";
		font-weight: 900;
		color: var(--clr-white);
		font-size: calc(var(--mob-nav-height) * 0.6);
	}
	.mobile-menu-btn::before {
		content: '\f0c9';
	}
	.open .mobile-menu-btn::before {
		content: '\f00d';
	}
	.mobile-search-btn {
		opacity: 0.8;
	}
	.mobile-search-btn::before {
		content: '\f002';
	}
	.open .mainnav .menu {
		display: block;
	}
	.open .topnav {
		display: block;
	}
	.mobile-menu-holder.fixedontop {
		position: fixed;
		top: 0;
		z-index: 101;
		box-shadow: 0 4px 4px var(--clr-grey);
	}
	header .navarea.open {
		position: absolute;
		background-color: var(--clr-calm);
		box-shadow: 0 4px 4px var(--clr-grey);
	}
	.topnav-right-btns {
		display: block;
		background-color: var(--clr-thrive);
	}
	.topnav nav .btn {
		margin: 0;
		border: 0;
		border-radius: 0;
		border-top: 1px solid var(--clr-calm-light);
		background-color: transparent;
	}
	.btn-dark:hover .svg-icon-hearth .hearth-bg {
		stroke: var(--clr-calm);
	}
	.topnav {
		background-color: var(--clr-calm);
	}
	.topnav-right-links {
		flex-direction: column;
	}
	.topnav nav {
		display: block;
		font-size: 1.5rem;
	}
	.topnav-right {
		display: block;
	}
	.topnav .container {
		padding: 0;
	}
	header nav a {
		padding-block: 5px;
	}
	.topnav a, .mainnav li + li {
		border-top: 1px solid var(--clr-calm-light);
	}
	nav a span::after {
		display: none;
	}
	header nav li.has-sub {
		display: flex;
	}
	header nav li.has-sub > a {
		flex-grow: 1;
	}
	header nav .sub-open {
		width: 40px;
		background-color: rgba(255, 255, 255, 0.2);
		border: 0;
		display: block;
	}
	header nav .sub-open::after {
		content: '\f061';
		font-family: "Font Awesome 6 Free";
		font-weight: 900;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		color: var(--clr-white);
		font-size: 1.5rem;
	}
	nav ul ul,
	nav > ul > li:last-child > ul {
		background-color: var(--clr-calm);
		left: 100%;
		top: 0;
		width: 100%;
		padding-block: 0;
	}
	nav li {
		position: initial;
	}
	.navarea.submenuopened .topnav {
		display: none;
	}
	.navarea .menu {
		left: 0;
		transition: all 0.6s;
	}
	.navarea.submenuopened .menu {
		left: -100%; /*left: -100vw;*/
	}
	.submenuopened > ul {
		display: block;
	}
	nav ul ul li:nth-child(n+3) a {
		border: 0;
	}
	nav ul ul a:hover {
	  background-color: var(--clr-calm);
	}
	.sub-close {
		display: block;
	}
	.sub-close, .sub-close > a:hover {
		background-color: var(--clr-calm-light);
		color: var(--clr-grey);
	}
	.sub-close > a::before {
		content: '\f060';
		font-family: "Font Awesome 6 Free";
		font-weight: 900;
		font-size: 2rem;
	}

}
@media (max-width: 639px) {
	:root {
		--mob-nav-height: 48px;
	}
}