/*
	Theme Name: Hello Elementor
	Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
	Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
	Author: Elementor Team
	Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
	Version: 3.4.9
	Stable tag: 3.4.9
	Requires at least: 6.0
	Tested up to: 6.8
	Requires PHP: 7.4
	License: GNU General Public License v3 or later.
	License URI: https://www.gnu.org/licenses/gpl-3.0.html
	Text Domain: hello-elementor
	Tags: accessibility-ready, flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready,
*/

:root {
	--lbc-navy: #1a142e;
	--lbc-camel: #cc9f6f;
	--lbc-cream: #ffefd8;
	--lbc-black: #1d1d1b;
}

.lbc-header {
	position: sticky;
	top: 0;
	z-index: 999;
	background: rgba(255, 239, 216, .97);
	border-bottom: 1px solid rgba(26, 20, 46, .10);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

.lbc-header__inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 14px 28px;
	display: flex;
	align-items: center;
	gap: 28px;
	min-height: 78px;
}

.lbc-header__brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.lbc-header__logo {
	display: block;
	width: 230px;
	height: auto;
	max-height: 52px;
	object-fit: contain;
}

.lbc-header__nav {
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: 27px;
}

.lbc-header__nav a {
	color: var(--lbc-navy);
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: .86rem;
	font-weight: 600;
	letter-spacing: .02em;
	transition: color .2s ease, opacity .2s ease;
}

.lbc-header__nav a:hover {
	color: #8f6842;
}

.lbc-header__cta {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 22px;
	border-radius: 6px;
	background: var(--lbc-camel);
	color: var(--lbc-navy);
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .045em;
	text-transform: uppercase;
	transition: transform .2s ease, background .2s ease;
}

.lbc-header__cta:hover {
	background: #dfbd97;
	transform: translateY(-1px);
}

.lbc-header__mobile {
	display: none;
	margin-left: auto;
	position: relative;
}

.lbc-header__mobile summary {
	width: 44px;
	height: 44px;
	cursor: pointer;
	list-style: none;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
	border: 1px solid rgba(26, 20, 46, .18);
	border-radius: 6px;
	background: transparent;
}

.lbc-header__mobile summary::-webkit-details-marker { display: none; }
.lbc-header__mobile summary span { width: 20px; height: 2px; background: var(--lbc-navy); display: block; }

.lbc-header__mobile nav {
	position: absolute;
	right: 0;
	top: calc(100% + 12px);
	width: min(300px, calc(100vw - 32px));
	padding: 18px;
	background: var(--lbc-cream);
	border: 1px solid rgba(26, 20, 46, .12);
	box-shadow: 0 16px 45px rgba(26, 20, 46, .12);
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.lbc-header__mobile nav a {
	padding: 11px 8px;
	color: var(--lbc-navy);
	text-decoration: none;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-weight: 650;
}

.lbc-header__mobile-cta {
	margin-top: 8px;
	background: var(--lbc-camel);
	text-align: center;
	border-radius: 5px;
}

@media (max-width: 980px) {
	.lbc-header__nav, .lbc-header__cta { display: none; }
	.lbc-header__mobile { display: block; }
	.lbc-header__inner { padding: 12px 18px; min-height: 70px; }
	.lbc-header__logo { width: 205px; max-height: 46px; }
}

@media (max-width: 520px) {
	.lbc-header__logo { width: 175px; }
	.lbc-header__inner { gap: 14px; }
}
