/* Comfy kit header — matches header.json + header.jpg */

.comfy-site-header {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 100;
	background: transparent;
}

.comfy-site-header .elementor,
.comfy-site-header .elementor-94,
.comfy-site-header .elementor-section,
.comfy-site-header .elementor-container,
.comfy-site-header .elementor-column,
.comfy-site-header .elementor-widget-wrap {
	overflow: visible !important;
}

.admin-bar .comfy-site-header {
	top: 32px;
}

.comfy-header-top {
	background-color: transparent;
	border-bottom: 1px solid #ffffff33;
}

.comfy-header-inner {
	max-width: 1140px;
	margin: 0 auto;
	padding: 20px 0 16px;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 16px;
}

.comfy-header-contact,
.comfy-header-contact span {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: Manrope, sans-serif;
	font-weight: 800;
	font-size: 13px;
	letter-spacing: 2px;
	text-transform: uppercase;
	line-height: 1.692em;
}

.comfy-header-contact--phone {
	justify-content: flex-end;
}

.comfy-header-icon {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #ffffff;
	color: #4f6d56;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 24px;
}

.comfy-header-brand {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
}

.comfy-site-header .elementor-element-7a9e82bb .elementor-widget-wrap {
	justify-content: center !important;
	align-items: center !important;
	text-align: center;
}

.comfy-site-header .elementor-element-49d043cd,
.comfy-site-header .elementor-element-49d043cd .elementor-shortcode,
.comfy-site-header .elementor-element-49d043cd .elementor-widget-container {
	width: 100%;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}

.comfy-logo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	line-height: 1;
	margin: 0 auto;
}

.comfy-logo img,
.comfy-logo svg {
	display: block;
	height: auto;
	width: auto;
	max-width: 260px;
}

.comfy-header-nav {
	background: transparent;
	padding: 16px 0 0;
}

.comfy-nav,
.comfy-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.comfy-nav-desktop {
	--comfy-dropdown-gap: 16px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	gap: 32px;
}

.comfy-nav-desktop > li {
	position: relative;
	flex: 0 0 auto;
}

.comfy-nav-desktop > li.menu-item-has-children {
	padding-bottom: var(--comfy-dropdown-gap);
	margin-bottom: calc(var(--comfy-dropdown-gap) * -1);
}

.comfy-nav-desktop > li > a {
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
	color: var(--e-global-color-a96a74d, #ffffff);
}

.comfy-nav-desktop > li > a:hover,
.comfy-nav-desktop > li.current-menu-item > a,
.comfy-nav-desktop > li.current-menu-ancestor > a,
.comfy-nav-desktop > li.current_page_item > a {
	color: #7eabd4;
}

.comfy-nav-desktop .sub-menu {
	display: none;
	position: absolute;
	top: calc(100% + var(--comfy-dropdown-gap));
	left: 50%;
	transform: translateX(-50%);
	min-width: 220px;
	padding: 8px;
	z-index: 30;
}

.comfy-nav-desktop .sub-menu::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: calc(var(--comfy-dropdown-gap) * -1);
	height: var(--comfy-dropdown-gap);
}

.comfy-nav-desktop > li:hover > .sub-menu,
.comfy-nav-desktop > li:focus-within > .sub-menu {
	display: block;
}

.comfy-nav-desktop .sub-menu a {
	display: block;
	padding: 8px;
	color: var(--e-global-color-text, #6f7470);
}

.comfy-nav-desktop .menu-item-has-children > a::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid currentColor;
}

.comfy-nav-mobile {
	position: relative;
}

.comfy-nav-mobile.is-open .comfy-nav-mobile-panel {
	display: block;
}

.comfy-nav-mobile-toggle {
	display: inline-flex;
	width: 36px;
	height: 36px;
	border: 0;
	background-color: var(--e-global-color-accent, #0d1b2e);
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	cursor: pointer;
}

.comfy-nav-mobile-toggle span {
	display: block;
	width: 16px;
	height: 2px;
	background-color: var(--e-global-color-a96a74d, #ffffff);
}

.comfy-nav-mobile-panel {
	display: none;
	padding: 16px 24px;
	background-color: var(--e-global-color-a96a74d, #ffffff);
}

.comfy-site-header.is-open .comfy-nav-mobile-panel {
	display: block;
}

.comfy-nav-mobile-panel a {
	display: block;
	padding: 8px 0;
	text-decoration: none;
	color: var(--e-global-color-text, #6f7470);
}

.comfy-nav-mobile-panel .sub-menu {
	padding-left: 16px;
}

body .elementor-95 .comfy-nav-footer a,
body .elementor-95 .comfy-nav-footer a:visited,
body .comfy-nav-footer a,
body .comfy-nav-footer a:visited {
	display: block;
	padding: 3px 0;
	font-family: Raleway, sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.571em;
	color: #f3f3f3 !important;
	text-decoration: none;
	opacity: 1;
}

body .elementor-95 .comfy-nav-footer a:hover,
body .elementor-95 .comfy-nav-footer .current-menu-item > a,
body .elementor-95 .comfy-nav-footer .current_page_item > a,
body .comfy-nav-footer a:hover,
body .comfy-nav-footer .current-menu-item > a,
body .comfy-nav-footer .current_page_item > a {
	color: #ffffff !important;
}

.comfy-form {
	display: grid;
	gap: 16px;
}

.comfy-form input,
.comfy-form textarea {
	width: 100%;
	border: 1px solid #6f7470;
	border-radius: 0;
	background: #ffffff;
	color: #6f7470;
	font-family: Raleway, sans-serif;
	font-size: 14px;
	font-weight: 500;
	padding: 12px 16px;
	box-sizing: border-box;
}

.comfy-form button,
.comfy-form .comfy-form__submit {
	display: inline-block;
	border: 0;
	background: #e3d27d;
	color: #ffffff;
	font-family: Manrope, sans-serif;
	font-weight: 800;
	font-size: 13px;
	letter-spacing: 2px;
	text-transform: uppercase;
	line-height: 1.692em;
	padding: 12px 32px;
	cursor: pointer;
}

.comfy-form--newsletter {
	display: flex;
	gap: 0;
}

.comfy-form--newsletter input {
	flex: 1;
}

.comfy-posts {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.comfy-posts--list {
	grid-template-columns: 1fr;
}

.comfy-post-card {
	display: block;
	text-decoration: none;
	color: inherit;
}

.comfy-post-card__image {
	display: block;
	width: 100%;
	aspect-ratio: 10 / 7;
	object-fit: cover;
	margin-bottom: 16px;
}

.comfy-post-card__title {
	font-family: Manrope, sans-serif;
	font-weight: 800;
	font-size: 22px;
	line-height: 1.455em;
	color: #131714;
	margin: 0 0 8px;
}

.comfy-post-card__meta {
	font-family: Raleway, sans-serif;
	font-size: 11px;
	font-weight: 500;
	color: #6f7470;
}

.comfy-countdown {
	display: flex;
	gap: 24px;
	justify-content: center;
	color: #ffffff;
}

.comfy-countdown__item {
	text-align: center;
}

.comfy-countdown__num {
	font-family: Manrope, sans-serif;
	font-weight: 800;
	font-size: 48px;
	line-height: 1.2;
}

.comfy-countdown__label {
	font-family: Manrope, sans-serif;
	font-weight: 800;
	font-size: 13px;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.comfy-post-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	font-family: Raleway, sans-serif;
	font-size: 14px;
	color: #6f7470;
}

@media (max-width: 1024px) {
	.comfy-header-inner {
		padding-left: 32px;
		padding-right: 32px;
	}

	.comfy-nav-desktop {
		gap: 24px;
	}

	.comfy-posts {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 782px) {
	.admin-bar .comfy-site-header {
		top: 46px;
	}
}

@media (max-width: 767px) {
	.comfy-header-inner {
		padding: 20px 16px 16px;
		grid-template-columns: auto 1fr auto;
	}

	.comfy-header-contact--email {
		display: none;
	}

	.comfy-header-brand {
		justify-content: flex-start;
	}

	.comfy-header-nav {
		display: none;
	}

	.comfy-posts {
		grid-template-columns: 1fr;
	}
}

/* 02 Penthouse row — homepage + our projects */
@media (min-width: 1025px) {
	.elementor-element-a2d5347 > .elementor-container,
	.elementor-element-1a51cc23 > .elementor-container {
		display: flex;
		align-items: flex-end;
	}

	.elementor-element-3aed1234,
	.elementor-element-d5d4b4e {
		width: 36% !important;
	}

	.elementor-element-3aed1234 > .elementor-element-populated,
	.elementor-element-d5d4b4e > .elementor-element-populated {
		padding: 0 24px 0 80px !important;
		align-content: flex-end !important;
		align-items: flex-end !important;
		justify-content: flex-end !important;
	}

	.elementor-element-1df3376c,
	.elementor-element-3d1f2173 {
		width: 64% !important;
	}

	.elementor-element-1df3376c > .elementor-widget-wrap,
	.elementor-element-3d1f2173 > .elementor-widget-wrap {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: stretch;
		justify-content: flex-end;
		gap: 20px;
	}

	.elementor-element-3bc3e9e1,
	.elementor-element-67b2ef3e,
	.elementor-element-453e1288,
	.elementor-element-5c882d0f {
		margin: 0 !important;
		padding: 0 !important;
		min-width: 0 !important;
		align-self: stretch;
	}

	.elementor-element-3bc3e9e1,
	.elementor-element-453e1288 {
		--container-widget-width: 40%;
		flex: 0 0 40% !important;
		width: 40% !important;
		max-width: 40% !important;
	}

	.elementor-element-67b2ef3e,
	.elementor-element-5c882d0f {
		--container-widget-width: calc(60% - 20px);
		flex: 0 0 calc(60% - 20px) !important;
		width: calc(60% - 20px) !important;
		max-width: calc(60% - 20px) !important;
	}

	.elementor-element-3bc3e9e1 img,
	.elementor-element-67b2ef3e img,
	.elementor-element-453e1288 img,
	.elementor-element-5c882d0f img {
		width: 100% !important;
		max-width: 100% !important;
		height: 350px !important;
		object-fit: cover;
		display: block;
	}

	.elementor-element-382ccaf7,
	.elementor-element-53d8a110 {
		--container-widget-width: 100%;
		width: 100% !important;
		max-width: 100% !important;
	}
}

@media (min-width: 1440px) {
	.elementor-element-3aed1234 > .elementor-element-populated,
	.elementor-element-d5d4b4e > .elementor-element-populated {
		padding: 0 0 0 150px !important;
	}
}

/* Filled buttons stay white on navy/accent */
body .elementor-button,
body .elementor-button .elementor-button-text,
body .elementor-button:hover,
body .elementor-button:hover .elementor-button-text,
body .elementor-button:focus,
body .comfy-form button {
	color: #ffffff !important;
}

/* Outlined buttons on light backgrounds: secondary text + outline */
body .comfy-btn-outline-wrap .elementor-button,
body .comfy-btn-outline-wrap .elementor-button .elementor-button-text,
body .comfy-btn-outline-wrap .elementor-button:hover,
body .comfy-btn-outline-wrap .elementor-button:hover .elementor-button-text,
body .comfy-btn-outline-wrap .elementor-button:focus,
body .elementor-element-4db77e59 .elementor-button,
body .elementor-element-4db77e59 .elementor-button .elementor-button-text,
body .elementor-element-156cdab6 .elementor-button,
body .elementor-element-156cdab6 .elementor-button .elementor-button-text,
body .elementor-element-23a9b612 .elementor-button,
body .elementor-element-23a9b612 .elementor-button .elementor-button-text,
body .elementor-element-66f85ade .elementor-button,
body .elementor-element-66f85ade .elementor-button .elementor-button-text,
body .elementor-element-59f14471 .elementor-button,
body .elementor-element-59f14471 .elementor-button .elementor-button-text,
body .elementor-element-2a616712 .elementor-button,
body .elementor-element-2a616712 .elementor-button .elementor-button-text,
body .elementor-element-bb07690 .elementor-button,
body .elementor-element-bb07690 .elementor-button .elementor-button-text,
body .elementor-element-621a5d7b .elementor-button,
body .elementor-element-621a5d7b .elementor-button .elementor-button-text,
body .elementor-element-7da73b18 .elementor-button,
body .elementor-element-7da73b18 .elementor-button .elementor-button-text,
body .elementor-element-7a9169d4 .elementor-button,
body .elementor-element-7a9169d4 .elementor-button .elementor-button-text,
body .elementor-element-75fdb6bc .elementor-button,
body .elementor-element-75fdb6bc .elementor-button .elementor-button-text,
body .elementor-element-267a89a3 .elementor-button,
body .elementor-element-267a89a3 .elementor-button .elementor-button-text,
body .elementor-element-6e941ea3 .elementor-button,
body .elementor-element-6e941ea3 .elementor-button .elementor-button-text,
body .elementor-element-633a0e14 .elementor-button,
body .elementor-element-633a0e14 .elementor-button .elementor-button-text,
body .elementor-element-2582a0d7 .elementor-button,
body .elementor-element-2582a0d7 .elementor-button .elementor-button-text,
body .elementor-element-10ef385a .elementor-button,
body .elementor-element-10ef385a .elementor-button .elementor-button-text,
body .elementor-element-19b70f8b .elementor-button,
body .elementor-element-19b70f8b .elementor-button .elementor-button-text,
body .elementor-element-28269e0d .elementor-button,
body .elementor-element-28269e0d .elementor-button .elementor-button-text,
body .elementor-element-19714397 .elementor-button,
body .elementor-element-19714397 .elementor-button .elementor-button-text,
body .elementor-element-61886a46 .elementor-button,
body .elementor-element-61886a46 .elementor-button .elementor-button-text,
body .elementor-element-477d71d6 .elementor-button,
body .elementor-element-477d71d6 .elementor-button .elementor-button-text,
body .elementor-element-50089fef .elementor-button,
body .elementor-element-50089fef .elementor-button .elementor-button-text,
body .elementor-element-627f27b .elementor-button,
body .elementor-element-627f27b .elementor-button .elementor-button-text,
body .elementor-element-63ef900c .elementor-button,
body .elementor-element-63ef900c .elementor-button .elementor-button-text,
body .elementor-element-7216cec1 .elementor-button,
body .elementor-element-7216cec1 .elementor-button .elementor-button-text,
body .elementor-element-5d6df37f .elementor-button,
body .elementor-element-5d6df37f .elementor-button .elementor-button-text,
body .elementor-element-7c68c651 .elementor-button,
body .elementor-element-7c68c651 .elementor-button .elementor-button-text,
body .elementor-element-271c443e .elementor-button,
body .elementor-element-271c443e .elementor-button .elementor-button-text {
	color: var(--e-global-color-secondary) !important;
	border-color: var(--e-global-color-secondary) !important;
	background-color: transparent !important;
}

/* Hero outlined Contact us stays white */
body .elementor-element-45c27a76 .elementor-button,
body .elementor-element-45c27a76 .elementor-button .elementor-button-text,
body .elementor-element-29103042 .elementor-button,
body .elementor-element-29103042 .elementor-button .elementor-button-text,
body .elementor-element-29103042 .elementor-button:hover,
body .elementor-element-29103042 .elementor-button:hover .elementor-button-text {
	color: #ffffff !important;
}

body .elementor-element-29103042 .elementor-button,
body .elementor-element-29103042 .elementor-button:hover {
	border-color: #ffffff !important;
	background-color: transparent !important;
}

/* Footer copyright bar — use Secondary (accent navy), not kit green */
.elementor-95 .elementor-element-67317a37,
.elementor-95 .elementor-element-67317a37:not(.elementor-motion-effects-element-type-background),
.elementor-95 .elementor-element-67317a37 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: var(--e-global-color-accent) !important;
}

/* Footer column titles — extra bold */
body .elementor-95 .elementor-element-38bd4a44 .elementor-heading-title,
body .elementor-95 .elementor-element-15b5e8bf .elementor-heading-title,
body .elementor-95 .elementor-element-29b0e607 .elementor-heading-title {
	color: #ffffff !important;
	font-family: Manrope, sans-serif !important;
	font-weight: 800 !important;
	font-size: 13px !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
}

.elementor-95 .comfy-logo img,
.elementor-95 .comfy-logo svg {
	height: 100px;
	max-width: 420px;
}

@media (max-width: 1024px) {
	.elementor-95 .comfy-logo img,
	.elementor-95 .comfy-logo svg {
		height: 72px;
		max-width: 280px;
	}
}

@media (max-width: 767px) {
	.elementor-95 .comfy-logo img,
	.elementor-95 .comfy-logo svg {
		height: 52px;
		max-width: 200px;
	}
}
