/*
 Theme Name:   Industrie Child
 Theme URI:    https://demo.rstheme.com/wordpress/industrie/
 Description:  Industrie Child
 Author:       RSTheme
 Author URI:   http://rstheme.com
 Template:     industrie
 Version:      1.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
 */

/* =====================================================================
   Distronix customizations
   ===================================================================== */

/* --- Header: remove the leftover demo "Get In Touch" button --- */
#rs-header .elementor-widget-rs-button { display: none !important; }

/* --- Header: bigger logo, single logo, always centered --- */
#rs-header .hfe-site-logo-container img {
	height: 54px !important;
	max-height: 54px !important;
	width: auto !important;
}
/* both default & sticky logo are the same Distronix mark – show one */
#rs-header .rs___sticky-logo { display: none !important; }
#rs-header .rs___default-logo { display: inline-block !important; }

/* the logo cell shipped on a grey (#F7F7F7) block; unify the whole
   header bar to the same white as the menu row */
#rs-header .elementor-element-d25acbf,
#rs-header .elementor-element-64a7697 { background-color: #ffffff !important; }

/* logo column: drop the 30px left/right padding baked into the Elementor
   container (--padding-left / --padding-right) so the lockup sits flush */
#rs-header .elementor-element-64a7697 {
	--padding-left: 0px !important;
	--padding-right: 0px !important;
}

/* logo column stays left of the menu; the lockup is centered in its brand block */
#rs-header .elementor-element-64a7697,
#rs-header .hfe-site-logo,
#rs-header .hfe-site-logo-container {
	/* justify-content: space-around !important; */
	text-align: center !important;
}

/* single-row header on desktop: logo block, centered nav, and centered actions
   (the demo ships the logo on its own centered row above the menu — we
   collapse those two rows into one and align the brand lockup cleanly) */
@media (min-width: 1025px) {
	#rs-header .header-inner { padding-top: 0 !important; }

	/* Three even sections — logo · nav · button — spread with space-around.
	   In the DOM the nav group and the button group are nested together
	   inside the f4d4185 wrapper, so we flatten that wrapper with
	   display:contents to promote them into direct flex children of the
	   header row, sitting alongside the logo. Result: three balanced,
	   evenly-spaced blocks across the full width. */
	#rs-header .elementor-element-d25acbf {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: space-around !important;
		column-gap: 20px;
	}
	#rs-header .elementor-element-f4d4185 {
		display: contents !important;
	}
	/* each of the three sections sizes to its own content */
	#rs-header .elementor-element-64a7697,
	#rs-header .elementor-element-9ad7d6e,
	#rs-header .elementor-element-6b4c2a3 {
		width: auto !important;
		flex: 0 0 auto !important;
		justify-content: center !important;
	}
	#rs-header .hfe-site-logo,
	#rs-header .hfe-site-logo-container {
		justify-content: center !important;
		text-align: center !important;
	}
}

/* --- Header: cleaner alignment + navy menu text --- */
#rs-header .hfe-nav-menu a.hfe-menu-item,
#rs-header .hfe-nav-menu a.hfe-sub-menu-item,
#rs-header .hfe-nav-menu .sub-arrow,
#rs-header .menu-area .navbar ul li a,
#rs-header .menu-sticky.sticky .menu-area .navbar ul li a {
	color: #123b5a !important;
}

#rs-header .hfe-nav-menu li.current-menu-item > a.hfe-menu-item,
#rs-header .hfe-nav-menu li.current-menu-ancestor > .hfe-has-submenu-container > a.hfe-menu-item,
#rs-header .hfe-nav-menu a.hfe-menu-item:hover,
#rs-header .hfe-nav-menu a.hfe-menu-item:focus,
#rs-header .hfe-nav-menu a.hfe-menu-item.highlighted,
#rs-header .hfe-nav-menu a.hfe-sub-menu-item:hover,
#rs-header .hfe-nav-menu a.hfe-sub-menu-item:focus,
#rs-header .hfe-nav-menu a.hfe-sub-menu-item.highlighted,
#rs-header .menu-area .navbar ul li.current-menu-ancestor > a,
#rs-header .menu-area .navbar ul li.current_page_item > a,
#rs-header .menu-area .navbar ul li.active > a,
#rs-header .menu-area .navbar ul li:hover > a {
	color: #54c1bf !important;
}

#rs-header .hfe-nav-menu nav.border-tops > ul > li.current-menu-ancestor > div > a::before,
#rs-header .hfe-nav-menu nav.border-tops > ul > li.current_page_item > div > a::before,
#rs-header .hfe-nav-menu nav.border-tops > ul > li.current_page_item > a::before,
#rs-header .hfe-nav-menu nav.border-tops > ul > li > div > a:hover::before,
#rs-header .hfe-nav-menu nav.border-tops > ul > li > a:hover::before {
	background-color: #54c1bf !important;
}

#rs-header .hfe-search-icon-toggle,
#rs-header .hfe-search-icon-toggle i,
#rs-header .hfe-search-icon-toggle i:before,
#rs-header .rs-offcanvas-area .nav-expander,
#rs-header .rs-offcanvas-area .nav-expander i,
#rs-header .rs-offcanvas-area .nav-expander svg,
#rs-header .rs-offcanvas-area .nav-expander svg path {
	color: #123b5a !important;
	fill: #123b5a !important;
	stroke: #123b5a !important;
}

#rs-header .hfe-search-icon-toggle:hover,
#rs-header .hfe-search-icon-toggle:hover i,
#rs-header .hfe-search-icon-toggle:hover i:before,
#rs-header .rs-offcanvas-area .nav-expander:hover,
#rs-header .rs-offcanvas-area .nav-expander:hover i,
#rs-header .rs-offcanvas-area .nav-expander:hover svg,
#rs-header .rs-offcanvas-area .nav-expander:hover svg path {
	color: #54c1bf !important;
	fill: #54c1bf !important;
	stroke: #54c1bf !important;
}

/* =====================================================================
   Header cleanup  —  drop the search icon + desktop hamburger, remove the
   nav divider line, and let the row align cleanly (logo · nav · button).
   The hamburger is kept ONLY on mobile/tablet: there the menu is
   hidden-mobile with dropdown "none", so the off-canvas panel is the sole
   route to navigation — removing it outright would strand mobile visitors.
   ===================================================================== */

/* Search: removed at every breakpoint. */
#rs-header .elementor-widget-hfe-search-button { display: none !important; }

/* Nav divider: Elementor paints the 1px left border on the widget's INNER
   .elementor-widget-container (not the outer .elementor-element-749b284),
   which is why the earlier border-left reset missed it. Clear it here.
   The same container also carries a 40px left margin (Elementor advanced-
   margin setting) that pushes the first "Home" item away from the logo —
   zero it out too so the nav sits flush. */
#rs-header .elementor-element-749b284 > .elementor-widget-container {
	margin-left: 0 !important;
	border: 0 !important;
	padding-left: 0 !important;
}

/* Off-canvas hamburger: hidden on desktop, preserved on mobile/tablet. */
@media (min-width: 1025px) {
	#rs-header .elementor-widget-rsoffcanvas { display: none !important; }
}

@media (min-width: 1025px) {
	#rs-header .elementor-element-d25acbf > .elementor-container {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		flex-wrap: nowrap !important;
		column-gap: 30px;
	}

	#rs-header .elementor-element-64a7697 > .elementor-widget-wrap,
	#rs-header .elementor-element-f4d4185 > .elementor-widget-wrap {
		display: flex !important;
		align-items: center !important;
		align-content: center !important;
		flex-wrap: nowrap !important;
	}

	#rs-header .elementor-element-f4d4185 > .elementor-widget-wrap {
		justify-content: space-between !important;
		gap: 28px;
	}

	#rs-header .elementor-element-f4d4185 > .elementor-widget-wrap > .elementor-element {
		width: auto !important;
		margin-bottom: 0 !important;
	}

	#rs-header .hfe-nav-menu,
	#rs-header .hfe-nav-menu nav,
	#rs-header .hfe-nav-menu nav > ul,
	#rs-header .hfe-nav-menu nav > ul > li,
	#rs-header .hfe-has-submenu-container,
	#rs-header .menu-area .navbar,
	#rs-header .menu-area .navbar .navbar-menu > ul,
	#rs-header .elementor-element-9ad7d6e,
	#rs-header .elementor-element-6b4c2a3,
	#rs-header .row-table,
	#rs-header .col-cell.header-logo,
	#rs-header .col-cell.menu-responsive,
	#rs-header .col-cell.header-quote {
		display: flex;
		align-items: center;
	}

	#rs-header .elementor-element-9ad7d6e {
		flex: 0 0 auto !important;
		width: auto !important;
		justify-content: center !important;
	}

	#rs-header .elementor-element-749b284 {
		margin-left: 0 !important;
		padding-left: 0 !important;
		border-left: 0 !important;
	}

	#rs-header .elementor-element-6b4c2a3 {
		flex: 0 0 auto !important;
		width: auto !important;
		justify-content: center !important;
		gap: 28px;
	}

	#rs-header .elementor-element-6b4c2a3 > .elementor-element,
	#rs-header .elementor-element-0ed5b9d,
	#rs-header .elementor-element-406cd36,
	#rs-header .elementor-element-56d3be4 {
		margin: 0 !important;
	}

	#rs-header .hfe-nav-menu nav > ul {
		column-gap: 2px;
	}

	#rs-header .hfe-nav-menu nav > ul > li > a,
	#rs-header .hfe-nav-menu nav > ul > li > .hfe-has-submenu-container > a,
	#rs-header .menu-area .navbar .navbar-menu > ul > li > a {
		display: inline-flex;
		align-items: center;
		line-height: 1.2;
	}

	#rs-header .col-cell.menu-responsive {
		justify-content: flex-end;
		flex: 1 1 auto;
	}

	#rs-header .distronix-demo-btn {
		margin: 0 0 0 4px;
	}
}

/* =====================================================================
   Header top bar  ("section before header")  — Swap Sheet §1
   Rendered by distronix_render_topbar() on the theme's `hfe_topbar` hook.
   ===================================================================== */
.distronix-topbar {
	background: #0d2436;
	color: #cdd8e3;
	font-size: 13px;
	line-height: 1.4;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.distronix-topbar .dx-topbar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 6px 22px;
	min-height: 42px;
	padding: 6px 0;
}
.distronix-topbar .dx-topbar-left,
.distronix-topbar .dx-topbar-right {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 20px;
}
.distronix-topbar .dx-tb-item,
.distronix-topbar .dx-tb-cities {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #cdd8e3;
	white-space: nowrap;
	transition: color .2s ease;
}
.distronix-topbar a.dx-tb-item:hover { color: #fff; }
.distronix-topbar .dx-tb-item i { color: #54c1bf; font-size: 15px; line-height: 1; }
.distronix-topbar .dx-tb-sep { color: rgba(205, 216, 227, 0.35); }
.distronix-topbar .dx-tb-cities { color: #9fb0c0; letter-spacing: .2px; }

.distronix-topbar .dx-tb-social {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding-left: 6px;
	border-left: 1px solid rgba(255, 255, 255, 0.12);
}
.distronix-topbar .dx-tb-social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	color: #cdd8e3;
	background: rgba(255, 255, 255, 0.06);
	transition: background .2s ease, color .2s ease;
}
.distronix-topbar .dx-tb-social a:hover { background: #54c1bf; color: #0d2436; }
.distronix-topbar .dx-tb-social i { font-size: 14px; line-height: 1; }

/* Social icons now live in the top bar → hide the ones in the menu row */
#rs-header .elementor-element-240f55d { display: none !important; }

/* Collapse the top bar down to the essentials on small screens */
@media (max-width: 991px) {
	.distronix-topbar { font-size: 12px; }
	/* drop the address block; keep phone, email + social centred */
	.distronix-topbar .dx-topbar-left { display: none; }
	.distronix-topbar .dx-tb-email span { display: none; }
	.distronix-topbar .dx-topbar-inner { justify-content: center; gap: 4px 16px; }
}

/* =====================================================================
   Sticky behaviour with the new top bar
   Make the whole header block — the dark contact bar AND the menu row —
   stick to the top of the viewport as a single unit. We promote #rs-header
   itself to position:sticky and keep the inner Elementor header in normal
   flow at all times, neutralising the theme's default behaviour (which, on
   scroll, fixes only the menu row and lets the contact bar scroll away).
   ===================================================================== */
/* position:sticky needs a root that is NOT itself a scroll container. The
   theme sets `overflow-x: hidden` on html/body, which (per spec) forces
   overflow-y to `auto` and establishes a scrollport — silently killing
   sticky. `overflow-x: clip` clips the same horizontal overflow WITHOUT
   creating a scroll container, so the header can stick. */
html,
body {
	overflow-x: clip !important;
}
#rs-header.single-header {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 999;
}
/* keep the inner menu row attached to the contact bar in every state (the
   theme fixes it to the viewport on scroll, which would detach it) */
#rs-header.single-header header.elementor-element {
	position: relative !important;
	top: 0 !important;
}
/* the theme's JS reserves space for its would-be fixed menu via an inline
   margin-top on the inner wrapper; with the header kept in flow that space
   is unwanted and would open a gap — zero it out in every state */
#rs-header.single-header .header-inner div.elementor {
	margin-top: 0 !important;
}

/* =====================================================================
   Header CTA  —  "Request a Demo" button  (Swap Sheet §1)
   A real Elementor button widget lives in the header's right-hand group;
   these rules give it the Distronix teal treatment and hide it on mobile
   where the off-canvas menu takes over.
   ===================================================================== */
#rs-header .distronix-demo-btn { margin: 0; }
#rs-header .distronix-demo-btn .elementor-button,
#rs-header .distronix-demo-btn a.elementor-button {
	display: inline-flex;
	align-items: center;
	font-family: var(--dx-font-secondary) !important; /* Inter, not the Oswald button face */
	background-color: #54c1bf;
	color: #ffffff;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .3px;
	padding: 14px 28px;
	border-radius: 8px;
	border: 0;
	box-shadow: 0 8px 20px rgba(84, 193, 191, 0.35);
	transition: background-color .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
}
#rs-header .distronix-demo-btn .elementor-button:hover {
	background-color: #123b5a;
	color: #ffffff;
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(18, 59, 90, 0.35);
}
#rs-header .distronix-demo-btn .elementor-button .elementor-button-text { color: inherit; }

@media (max-width: 1024px) {
	#rs-header .distronix-demo-btn { display: none !important; }
}

/* =====================================================================
   Hero slider  —  full-width dark banner  (Swap Sheet §2)
   The Revolution Slider import supplies the Section 2 slide copy; these
   rules pull its demo-orange controls into the Distronix brand palette.
   ===================================================================== */
.elementor-widget-slider_revolution .rs-button.btn-robotics .rs-btn {
	background: #54c1bf !important;
	background-color: #54c1bf !important;
	color: #123b5a !important;
}
/* Carousel (Revolution Slider) button text uses Inter, not the Oswald face */
.elementor-widget-slider_revolution .rs-button .rs-btn,
.elementor-widget-slider_revolution .rs-btn {
	font-family: var(--dx-font-secondary) !important;
}
.elementor-widget-slider_revolution .rs-button.btn-robotics .rs-btn:before {
	background: rgba(18, 59, 90, 0.14) !important;
	background-color: rgba(18, 59, 90, 0.14) !important;
}
.elementor-widget-slider_revolution .rs-button.btn-robotics .rs-btn:hover,
.elementor-widget-slider_revolution .rs-button.btn-robotics .rs-btn:focus {
	background: #123b5a !important;
	background-color: #123b5a !important;
	color: #ffffff !important;
}
.elementor-widget-slider_revolution .rs-slider-video-ani .rs-video .popup-videos i {
	background: #54c1bf !important;
	background-color: #54c1bf !important;
	color: #123b5a !important;
}
.elementor-widget-slider_revolution .rs-slider-video-ani .rs-video .popup-videos:hover i,
.elementor-widget-slider_revolution .rs-slider-video-ani .rs-video .popup-videos:focus i {
	background: #123b5a !important;
	background-color: #123b5a !important;
	color: #ffffff !important;
}
.elementor-widget-slider_revolution .rs-slider-video-ani .rs-video .popup-videos:before {
	background: rgba(84, 193, 191, 0.35) !important;
	background-color: rgba(84, 193, 191, 0.35) !important;
}
.elementor-widget-slider_revolution .metis_copy96_copy22.tparrows {
	background: #54c1bf !important;
}
.elementor-widget-slider_revolution .metis_copy96_copy22.tp-rightarrow,
.elementor-widget-slider_revolution .metis_copy96_copy22.tparrows.rs-touchhover {
	background: rgba(84, 193, 191, 0.4) !important;
}
.elementor-widget-slider_revolution .metis_copy96_copy22.tparrows.tp-rightarrow.rs-touchhover {
	background: #54c1bf !important;
}

/* --- Orange bg-image feature sections -> navy primary --- */
.elementor-element-a436b5a,   /* "Why Choose" section */
.elementor-element-d11db53 {  /* "Have any Question?" contact form */
	background-image: none !important;
	background-color: #123b5a !important;
}

#scrollUp i {
	background-color: #0d2436 !important;
}

/* =====================================================================
   Project typography  —  Oswald (primary) + Inter (secondary)
   ---------------------------------------------------------------------
   Oswald is the primary/display face: headings, section titles, nav,
   buttons, counters and other brand surfaces. Inter is the secondary
   face for readable body copy, lists, tables and form fields. Fonts are
   loaded from Google in functions.php (`distronix-fonts`).

   Rules use !important to win over the theme's hardcoded "Space Grotesk"
   (assets/css/default.css) and Elementor's per-widget font settings. They
   deliberately target TEXT elements only — never <i>, .fa*, .ri-*,
   remixicon, .eicon or SVG — so icon fonts keep their own family. (Icon
   glyphs set their own font-family, so a text parent set to Inter/Oswald
   never cascades onto the icon element itself.)
   ===================================================================== */
:root {
	--dx-font-primary: "Oswald", "Arial Narrow", sans-serif;               /* headings / display */
	--dx-font-secondary: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif; /* body / UI */
}

/* ---- Secondary (Inter): body copy, UI and form text ---- */
body,
button, input, select, optgroup, textarea,
p, ul, ol, li, dd, dt, blockquote, cite, q, caption, figcaption, label, small, address,
table, thead, tbody, th, td,
.entry-content, .entry-content p, .entry-content li,
.post-desc, .post-meta, .meta,
.widget, .widget p, .widget li, .widget a,
.elementor-widget-text-editor,
.elementor-widget-text-editor .elementor-widget-container,
.elementor-text-editor,
.elementor-widget-testimonial,
.elementor-testimonial__text,
.elementor-icon-list-text,
.elementor-tab-content,
.elementor-post__excerpt, .elementor-post__excerpt p,
.elementor-field-group input, .elementor-field-group textarea,
.wpcf7 input, .wpcf7 textarea,
.woocommerce, .woocommerce-page, .woocommerce p, .woocommerce li,
.distronix-topbar,
/* Header navigation now uses Inter (moved off the Oswald display face) */
#rs-header .hfe-nav-menu a.hfe-menu-item,
#rs-header .hfe-nav-menu a.hfe-sub-menu-item,
#rs-header .menu-area .navbar ul li a,
.rs-offcanvas-area nav.right_menu_togle ul.menu li a {
	font-family: var(--dx-font-secondary) !important;
}

/* ---- Primary (Oswald): headings, titles, actions, stats ---- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.elementor-heading-title,
.elementor-widget-heading .elementor-heading-title,
.sec-title, .section-title, .sub-title, .rs-subtitle, .subtitle,
.widget-title, .widget .widget-title, .widget-area .widget-title,
.rs-title, .title, .title-inner, .box-title,
.elementor-icon-box-title, .elementor-image-box-title,
.elementor-counter-number, .elementor-counter-title,
.elementor-accordion-title, .elementor-toggle-title,
.elementor-price-table__title, .elementor-price-list__title,
/* .elementor-button, .elementor-button .elementor-button-text, */
.rs-btn, .rs-button .rs-btn, .wp-block-button__link {
	font-family: var(--dx-font-primary) !important;
}


.elementor-29660 .elementor-element.elementor-element-4411ccf .hfe-site-logo .hfe-site-logo-container img {
	height: 50px !important;
}
