/*
Theme Name: StepOne Child
Theme URI: https://stepone.com/
Description: Child theme for StepOne (luxus). Holds Ras El Hekma landing CSS/assets so the parent theme stays clean.
Author: StepOne
Template: luxus
Version: 1.0.7
Text Domain: luxus-child
*/

/* Parent styles load via functions.php. Landing styles live in /stepone-landing/landing.css */

/* -------------------------------------------------------------------------
   Brand — Step One Elite
   Main #373737 · Secondary #f7f6f2
   ------------------------------------------------------------------------- */
:root {
	--ste-brand: #373737;
	--ste-brand-soft: #f7f6f2;
	--theme-color: #373737;
	--secondary-color: #f7f6f2;
	--light-color: #f7f6f2;
	--dark-color: #373737;
	--text-color: #373737;
	--btn-color: #373737;
	--btn-hcolor: #1f1f1f;
}

body {
	background-color: #f7f6f2;
	color: #373737;
}

a {
	color: #373737;
}

a:hover {
	color: #1f1f1f;
}

.theme-header .classic-header,
.theme-header.desktop .classic-header,
.theme-header.mobile .classic-header,
.theme-header.desktop.sticky-top .classic-header,
.theme-header.mobile.sticky-top .classic-header {
	background: #f7f6f2 !important;
}

/* Desktop: never show mobile hamburger / close / call buttons */
html body .theme-header.desktop .stellarnav .menu-toggle,
html body .theme-header.desktop .stellarnav .close-menu,
html body .theme-header.desktop .stellarnav a.close-menu,
html body .theme-header.desktop .stellarnav a.menu-toggle,
html body .theme-header.desktop .stellarnav .call-btn-mobile,
html body .theme-header.desktop .stellarnav .location-btn-mobile,
html body .theme-header.desktop .stellarnav .dd-toggle,
html body .theme-header.desktop .stellarnav.desktop > ul > a.close-menu,
html body .theme-header.desktop .stellarnav.desktop li a.close-menu {
	display: none !important;
	visibility: hidden !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	margin: 0 !important;
}

html body .theme-header.desktop .classic-header-inner {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between;
	min-height: 80px;
	height: auto !important;
	line-height: normal !important;
	padding: 6px 0;
	overflow: visible !important;
}

.theme-header.desktop .classic-header-inner .brand {
	width: auto !important;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	line-height: 0 !important;
}

.theme-header.desktop .classic-header-inner .brand a {
	display: flex;
	align-items: center;
	line-height: 0;
}

.theme-header.desktop .classic-header-inner .menu-area {
	width: auto !important;
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-width: 0;
}

.theme-header.desktop .classic-header-inner .main-menu {
	width: auto !important;
	flex: 1 1 auto;
	min-width: 0;
}

.theme-header.desktop .classic-header-inner .menu-right {
	width: auto !important;
	flex: 0 0 auto;
}

.theme-header.desktop .stellarnav.desktop {
	overflow: visible !important;
}

.theme-header.desktop .stellarnav.desktop > ul {
	display: block !important;
	text-align: right;
	margin: 0;
	padding: 0;
	float: none !important;
}

.theme-header.desktop .stellarnav.desktop > ul > li {
	float: none !important;
	display: inline-block !important;
	vertical-align: middle;
	line-height: normal !important;
}

html body .theme-header.desktop .stellarnav.desktop > ul > li > a {
	display: inline-block !important;
	height: auto !important;
	line-height: 68px !important;
	padding: 0 12px !important;
	white-space: nowrap;
}

html body .theme-header.desktop .classic-header-inner .brand img,
html body .theme-header.desktop .classic-header-inner .brand .brand-logo,
html body .theme-header.desktop .classic-header-inner .brand .custom-logo,
html body .theme-header .classic-header-inner .brand img {
	background: transparent !important;
	width: 168px !important;
	max-width: 168px !important;
	height: auto !important;
	max-height: 50px !important;
	object-fit: contain;
	display: block;
}

.theme-header.mobile .classic-header-inner {
	min-height: 64px !important;
	height: auto !important;
	line-height: normal !important;
	display: flex;
	align-items: center;
	padding: 8px 0;
}

.theme-header.mobile .classic-header-inner .brand img,
.theme-header.mobile .classic-header-inner .brand .brand-logo,
.theme-header.mobile .classic-header-inner .brand .custom-logo {
	width: 140px !important;
	max-height: 44px !important;
	height: auto !important;
}

.theme-header .wpml-ls-menu-item > a,
.theme-header li.wpml-ls-item > a {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px;
}

.theme-header .wpml-ls-flag {
	width: 16px;
	height: auto;
	display: inline-block;
	vertical-align: middle;
}

.theme-header.desktop .stellarnav ul li a,
.theme-header.desktop .stellarnav.dark a,
.theme-header.desktop .stellarnav.dark li a,
.theme-header.desktop .main-menu ul li a {
	color: #373737 !important;
}

.theme-header.desktop .stellarnav ul li a:hover,
.theme-header.desktop .stellarnav .current-menu-item > a,
.theme-header.desktop .stellarnav .current-menu-ancestor > a {
	color: #1f1f1f !important;
}

/* Mobile: black hamburger on cream bar, black drawer */
html body .theme-header.mobile .stellarnav.mobile .menu-toggle,
html body .theme-header.mobile .stellarnav.dark .menu-toggle {
	display: inline-block !important;
	color: #373737 !important;
}

html body .theme-header.mobile .stellarnav.mobile .menu-toggle span.bars span,
html body .theme-header.mobile .stellarnav.dark .menu-toggle span.bars span,
html body .theme-header.mobile .stellarnav.mobile .menu-toggle span.bars:hover span {
	background-color: #373737 !important;
}

html body .theme-header.mobile .stellarnav.mobile.dark ul,
html body .theme-header.mobile .stellarnav.mobile ul,
html body .stellarnav.mobile.dark ul,
html body .stellarnav.mobile.dark ul ul {
	background: #373737 !important;
	background-color: #373737 !important;
}

html body .theme-header.mobile .stellarnav.mobile li a,
html body .theme-header.mobile .stellarnav.mobile a,
html body .theme-header.mobile .stellarnav.dark a,
html body .theme-header.mobile .stellarnav.dark li a {
	color: #f7f6f2 !important;
}

html body .theme-header.mobile .stellarnav.mobile li a:hover,
html body .theme-header.mobile .stellarnav.mobile .current-menu-item > a {
	color: #ffffff !important;
}

html body .theme-header.mobile .stellarnav.mobile .icon-close:before,
html body .theme-header.mobile .stellarnav.mobile .icon-close:after,
html body .theme-header.mobile .stellarnav.mobile a.dd-toggle .icon-plus:before,
html body .theme-header.mobile .stellarnav.mobile a.dd-toggle .icon-plus:after {
	border-color: #f7f6f2 !important;
}

.sl-btn,
.btn-primary,
button[type="submit"],
input[type="submit"],
.wp-block-button__link {
	background-color: #373737;
	border-color: #373737;
	color: #f7f6f2;
}

.sl-btn:hover,
.btn-primary:hover,
button[type="submit"]:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover {
	background-color: #1f1f1f;
	border-color: #1f1f1f;
	color: #f7f6f2;
}

/* First-load screen — same charcoal logo as header */
#sl-preloader {
	background: #f7f6f2 !important;
}

#sl-preloader-inner img.brand-logo,
#sl-preloader-inner img {
	width: 220px;
	max-width: 80vw;
	height: auto;
	max-height: 90px;
	object-fit: contain;
	filter: none !important;
}

/* Footer logo — same file as header, rendered white */
.custom-footer img.brand-logo,
.classic-footer img.brand-logo,
.custom-footer .elementor-element-f7c89f3 img,
.custom-footer .footer-logo img,
footer.custom-footer img[src*="step-one-elite-logo"] {
	filter: brightness(0) invert(1);
	background: transparent !important;
	width: 190px !important;
	max-width: 100%;
	height: auto !important;
	max-height: none !important;
	object-fit: contain;
}

@media (min-width: 768px) {
	.custom-footer img.brand-logo,
	.classic-footer img.brand-logo,
	.custom-footer .elementor-element-f7c89f3 img,
	.custom-footer .footer-logo img,
	footer.custom-footer img[src*="step-one-elite-logo"] {
		width: 340px !important;
		max-height: 130px !important;
	}
}
