/*
Theme Name: Mäklarjouren Child
Theme URI: https://maklarjouren.com/
Author: Mäklarjouren
Author URI: https://maklarjouren.com/
Description: Anpassat barntema för Mäklarjourens Elementor- och Houzez-design.
Version: 1.1.1
Tags: white, right-sidebar, left-sidebar, custom-colors, custom-menu, featured-images, post-formats, theme-options, translation-ready
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: maklarjouren-child
Template: houzez
*/


/*
 * Mäklarjouren global design foundation.
 * Section-specific homepage styling will be added only after approval.
 */

@font-face {
	font-family: "Manrope";
	font-style: normal;
	font-weight: 400 800;
	font-display: swap;
	src: url("assets/fonts/manrope-variable.woff2") format("woff2-variations");
}

/* Homepage conversion cards. */
.elementor-element-0d2d50a {
	gap: 0.75rem !important;
}

.elementor-element-d35dd71 {
	justify-content: center !important;
}

/* Homepage valuation CTA. */
.elementor-element-573b585 .elementor-button {
	min-height: 48px;
	padding: 12px 20px;
	transition: background-color 0.2s ease;
}

.elementor-element-573b585 .elementor-button-content-wrapper {
	gap: 10px;
}

.elementor-element-573b585 .elementor-button:hover,
.elementor-element-573b585 .elementor-button:focus-visible {
	background-color: #c94f0c;
}

/* Homepage business-search actions. */
.elementor-element-5560817 .houzez-search-button,
.elementor-element-5560817 .reset-search-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 48px;
	min-height: 48px;
	padding: 0 20px;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.elementor-element-5560817 .houzez-search-button {
	border: 0;
	background-color: #e8661a;
	color: #ffffff;
}

.elementor-element-5560817 .houzez-search-button:hover,
.elementor-element-5560817 .houzez-search-button:focus-visible {
	background-color: #c94f0c;
	color: #ffffff;
}

.elementor-element-5560817 .reset-search-btn {
	border: 1px solid #e8661a !important;
	border-radius: 6px !important;
	background-color: #ffffff !important;
	color: #e8661a !important;
}

.elementor-element-5560817 .reset-search-btn:hover,
.elementor-element-5560817 .reset-search-btn:focus-visible {
	border-color: #c94f0c !important;
	background-color: #fff0e6 !important;
	color: #c94f0c !important;
}

/* Homepage sell/buy pathway cards. */
.elementor-element-0b78fc9 {
	flex-direction: row !important;
}

.elementor-element-0b78fc9 > .elementor-element-dfb5eef,
.elementor-element-0b78fc9 > .elementor-element-1d91b0b {
	flex: 1 1 0 !important;
	width: auto !important;
	min-width: 0 !important;
}

.elementor-element-dfb5eef,
.elementor-element-1d91b0b {
	flex-direction: row !important;
}

.elementor-element-54b3d72,
.elementor-element-4980862 {
	flex: 0 0 38% !important;
	width: 38% !important;
	min-width: 180px !important;
	min-height: 190px !important;
}

.elementor-element-15c900c,
.elementor-element-38e5865 {
	flex: 1 1 0 !important;
	width: auto !important;
	min-width: 0 !important;
	padding: 24px !important;
}

@media (max-width: 880px) {
	.elementor-element-0b78fc9 {
		flex-direction: column !important;
	}

	.elementor-element-0b78fc9 > .elementor-element-dfb5eef,
	.elementor-element-0b78fc9 > .elementor-element-1d91b0b {
		flex: 0 1 auto !important;
		width: 100% !important;
		min-height: 190px !important;
	}

	.elementor-element-dfb5eef,
	.elementor-element-1d91b0b {
		flex-direction: row !important;
		height: 190px !important;
		max-height: 190px !important;
		gap: 0 !important;
	}
}

@media (min-width: 881px) and (max-width: 1024px) and (orientation: portrait) {
	.elementor-element-0b78fc9 {
		flex-direction: column !important;
		height: auto !important;
	}

	.elementor-element-0b78fc9 > .elementor-element-dfb5eef,
	.elementor-element-0b78fc9 > .elementor-element-1d91b0b {
		flex: 0 1 auto !important;
		width: 100% !important;
		height: 190px !important;
		min-width: 0 !important;
		min-height: 190px !important;
		max-height: 190px !important;
		flex-direction: row !important;
		gap: 0 !important;
	}
}

@media (max-width: 600px) {
	.elementor-element-0b78fc9 {
		height: auto !important;
	}

	.elementor-element-0b78fc9 > .elementor-element-dfb5eef,
	.elementor-element-0b78fc9 > .elementor-element-1d91b0b {
		flex: 0 0 auto !important;
		flex-direction: column !important;
		height: auto !important;
		min-height: auto !important;
		max-height: none !important;
		gap: 0 !important;
	}

	.elementor-element-54b3d72,
	.elementor-element-4980862 {
		flex: 0 0 180px !important;
		width: 100% !important;
		height: 180px !important;
		min-width: 0 !important;
		min-height: 180px !important;
		max-height: 180px !important;
	}

	.elementor-element-54b3d72 img,
	.elementor-element-4980862 img {
		width: 100% !important;
		height: 180px !important;
		min-height: 180px !important;
		max-height: 180px !important;
		object-fit: cover !important;
	}

	.elementor-element-15c900c,
	.elementor-element-38e5865 {
		width: 100% !important;
		padding: 20px !important;
	}
}

:root {
	--mj-color-orange: #c45112;
	--mj-color-orange-hover: #a93f07;
	--mj-color-orange-light: #fff2e7;
	--mj-color-navy: #173b57;
	--mj-color-navy-hover: #102c42;
	--mj-color-text: #17212b;
	--mj-color-muted: #5c6b76;
	--mj-color-warm-white: #fffcf8;
	--mj-color-white: #ffffff;
	--mj-color-border: #e5e1dc;
	--mj-color-success: #207a4b;
	--mj-color-error: #b42318;

	--mj-font-family: "Manrope", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
	--mj-font-weight-regular: 400;
	--mj-font-weight-medium: 500;
	--mj-font-weight-semibold: 600;
	--mj-font-weight-bold: 700;

	--mj-space-1: 0.25rem;
	--mj-space-2: 0.5rem;
	--mj-space-3: 0.75rem;
	--mj-space-4: 1rem;
	--mj-space-5: 1.5rem;
	--mj-space-6: 2rem;
	--mj-space-7: 3rem;
	--mj-space-8: 4rem;
	--mj-section-space: clamp(3.5rem, 7vw, 7rem);
	--mj-container: 73.75rem;
	--mj-container-wide: 80rem;
	--mj-radius-small: 0.5rem;
	--mj-radius: 0.875rem;
	--mj-radius-large: 1.25rem;
	--mj-shadow-card: 0 0.75rem 2.5rem rgba(23, 59, 87, 0.08);
	--mj-transition: 180ms ease;
}

html {
	font-family: var(--mj-font-family);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body,
button,
input,
select,
textarea {
	font-family: var(--mj-font-family);
}

body {
	background: var(--mj-color-warm-white);
	color: var(--mj-color-text);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--mj-color-navy);
	font-family: var(--mj-font-family);
	font-weight: var(--mj-font-weight-bold);
	letter-spacing: -0.025em;
	text-wrap: balance;
}

p {
	text-wrap: pretty;
}

a {
	text-underline-offset: 0.18em;
}

:where(a, button, input, select, textarea):focus-visible {
	outline: 3px solid var(--mj-color-navy);
	outline-offset: 3px;
}

.mj-container {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: var(--mj-container);
	padding-inline: clamp(1rem, 3vw, 2rem);
	width: 100%;
}

.mj-section {
	padding-block: var(--mj-section-space);
}

.mj-button,
.elementor-button.mj-button {
	align-items: center;
	background: var(--mj-color-orange);
	border: 2px solid var(--mj-color-orange);
	border-radius: var(--mj-radius-small);
	color: var(--mj-color-white);
	cursor: pointer;
	display: inline-flex;
	font-weight: var(--mj-font-weight-bold);
	justify-content: center;
	min-height: 3rem;
	padding: 0.75rem 1.25rem;
	transition: background-color var(--mj-transition), border-color var(--mj-transition), color var(--mj-transition), transform var(--mj-transition);
}

.mj-button:hover,
.mj-button:focus-visible,
.elementor-button.mj-button:hover,
.elementor-button.mj-button:focus-visible {
	background: var(--mj-color-orange-hover);
	border-color: var(--mj-color-orange-hover);
	color: var(--mj-color-white);
}

.mj-button--light,
.elementor-button.mj-button--light {
	background: var(--mj-color-white);
	border-color: var(--mj-color-white);
	color: var(--mj-color-orange-hover);
}

.mj-button--outline,
.elementor-button.mj-button--outline {
	background: transparent;
	border-color: currentColor;
	color: inherit;
}

.mj-field :where(input, select, textarea),
:where(input, select, textarea).mj-field {
	background: var(--mj-color-white);
	border: 1px solid var(--mj-color-border);
	border-radius: var(--mj-radius-small);
	color: var(--mj-color-text);
	min-height: 3rem;
	padding: 0.75rem 0.875rem;
}

.mj-card {
	background: var(--mj-color-white);
	border: 1px solid var(--mj-color-border);
	border-radius: var(--mj-radius);
	box-shadow: var(--mj-shadow-card);
}

/*
 * Global header shell.
 * These rules deliberately live in the child theme so Elementor Atomic
 * cannot drop the layout when its generated CSS cache is rebuilt.
 */
.mj-global-header-root {
	box-sizing: border-box;
	margin: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	width: 100% !important;
}

.elementor-element-d8795b9 {
	min-height: 0 !important;
	padding: 0 !important;
}

.mj-utility-bar,
.mj-utility-inner,
.mj-utility-contact,
.mj-main-nav,
.mj-main-nav-inner {
	box-sizing: border-box;
}

.mj-utility-bar {
	background: var(--mj-color-navy);
	color: var(--mj-color-white);
	min-height: 2.25rem !important;
	padding: 0 !important;
	width: 100%;
}

.mj-utility-inner {
	align-items: center;
	display: flex;
	flex-direction: row;
	gap: 1rem;
	justify-content: space-between;
	margin-inline: auto;
	max-width: var(--mj-container);
	min-height: 2.25rem !important;
	padding: 0 1.5rem !important;
	width: 100%;
}

.mj-utility-message,
.mj-utility-location {
	color: var(--mj-color-white) !important;
	font-family: var(--mj-font-family);
	font-size: 0.6875rem;
	font-weight: var(--mj-font-weight-medium);
	line-height: 1.35;
	margin: 0;
}

.mj-utility-contact {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	flex-direction: row;
	gap: 0.875rem;
	justify-content: flex-end;
	padding: 0 !important;
}

.mj-utility-link {
	background: transparent !important;
	border: 0 !important;
	color: var(--mj-color-white) !important;
	font-family: var(--mj-font-family);
	font-size: 0.6875rem;
	font-weight: var(--mj-font-weight-medium);
	line-height: 1.35;
	min-height: 0;
	padding: 0 !important;
	text-decoration: none;
}

.mj-utility-link:hover,
.mj-utility-link:focus-visible {
	color: var(--mj-color-white) !important;
	text-decoration: underline;
}

.mj-main-nav {
	background: var(--mj-color-white);
	height: auto !important;
	min-height: 4.5rem !important;
	padding: 0 !important;
	width: 100%;
}

.mj-main-nav-inner {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin-inline: auto;
	max-width: var(--mj-container);
	min-height: 4.5rem !important;
	padding: 0 1.5rem !important;
	width: 100%;
}

.mj-header-logo {
	display: block;
	height: auto;
	max-width: 100%;
	object-fit: contain;
	width: 16.75rem;
}

@media (max-width: 1366px) {
	.mj-header-logo {
		width: 15.625rem;
	}
}

@media (max-width: 1200px) {
	.mj-header-logo {
		width: 14.75rem;
	}
}

@media (max-width: 1024px) {
	.mj-header-logo {
		width: 13.75rem;
	}

	.mj-utility-message {
		display: none;
	}

	.mj-utility-inner,
	.mj-utility-contact {
		justify-content: center;
	}
}

@media (max-width: 880px) {
	.mj-header-logo {
		width: 12.75rem;
	}
}

@media (min-width: 881px) and (max-width: 1024px) and (orientation: portrait) {
	#mj-home-property-cards .listing-view > .item-listing-wrap {
		flex: 0 0 auto;
		width: 50%;
	}
}

@media (min-width: 881px) and (max-width: 1200px) {
	.elementor-element-39b986e {
		align-items: center !important;
		display: grid !important;
		gap: 18px 14px !important;
		grid-template-columns: minmax(0, 1fr) 24px minmax(0, 1fr);
		grid-template-rows: auto 24px auto;
	}

	.elementor-element-01761f1 {
		grid-column: 1;
		grid-row: 1;
	}

	.elementor-element-18d52e1 {
		grid-column: 2;
		grid-row: 1;
	}

	.elementor-element-de29c5d {
		grid-column: 3;
		grid-row: 1;
	}

	.elementor-element-3230302 {
		grid-column: 2;
		grid-row: 2;
	}

	.elementor-element-abeae91 {
		grid-column: 1;
		grid-row: 3;
	}

	.elementor-element-90d8820 {
		grid-column: 2;
		grid-row: 3;
	}

	.elementor-element-310991e {
		grid-column: 3;
		grid-row: 3;
	}

	.elementor-element-01761f1,
	.elementor-element-de29c5d,
	.elementor-element-abeae91,
	.elementor-element-310991e {
		max-width: 100% !important;
		width: 100% !important;
	}

	.elementor-element-18d52e1,
	.elementor-element-3230302,
	.elementor-element-90d8820 {
		align-self: center;
		justify-self: center;
	}

	.elementor-element-3230302 .e-paragraph-base {
		display: inline-block;
		transform: rotate(90deg) !important;
	}
}

@media (max-width: 880px) {
	.elementor-element-f82f699,
	.elementor-element-39b986e {
		align-items: stretch !important;
		flex-direction: column !important;
	}

	.elementor-element-f82f699 {
		gap: 16px !important;
	}

	.elementor-element-72130bd,
	.elementor-element-efb360f,
	.elementor-element-01761f1,
	.elementor-element-de29c5d,
	.elementor-element-abeae91,
	.elementor-element-310991e {
		max-width: 100% !important;
		width: 100% !important;
	}

	.elementor-element-72130bd,
	.elementor-element-efb360f {
		align-items: flex-start !important;
		justify-content: flex-start !important;
	}

	.elementor-element-39b986e {
		gap: 14px !important;
	}

	.elementor-element-18d52e1,
	.elementor-element-3230302,
	.elementor-element-90d8820 {
		align-self: center;
		min-height: 24px;
	}

	.elementor-element-18d52e1 .e-paragraph-base,
	.elementor-element-3230302 .e-paragraph-base,
	.elementor-element-90d8820 .e-paragraph-base {
		display: inline-block;
		transform: rotate(90deg) !important;
	}

	.elementor-element-fb1eb29 {
		padding: 24px !important;
	}

	.elementor-element-c7ebd5b {
		padding-block: 48px !important;
	}
}

@media (max-width: 767px) {
	.mj-header-logo {
		width: 11.75rem;
	}

	.elementor-element-fb1eb29 {
		padding: 20px !important;
	}

	.elementor-element-c7ebd5b {
		padding: 40px 16px !important;
	}

	.mj-utility-inner,
	.mj-main-nav-inner {
		padding-inline: 1rem !important;
	}

	.mj-utility-location,
	.mj-utility-link[href^="mailto:"] {
		display: none;
	}
}

/* Homepage: compact property-card link matching the approved circular arrow. */
#mj-home-property-cards .btn-item.item-no-footer {
	align-items: center !important;
	align-self: flex-end;
	background: #e8661a !important;
	border: 0 !important;
	border-radius: 50% !important;
	box-shadow: none !important;
	color: #fff !important;
	display: flex !important;
	font-size: 0 !important;
	height: 40px !important;
	justify-content: center !important;
	line-height: 1 !important;
	margin: auto 0 0 auto !important;
	min-height: 40px !important;
	min-width: 40px !important;
	padding: 0 !important;
	transition: background-color 180ms ease, transform 180ms ease;
	width: 40px !important;
}

#mj-home-property-cards .item-body {
	display: flex !important;
	flex-direction: column;
}

#mj-home-property-cards .item-title {
	min-height: 4.125rem;
}

#mj-home-property-cards .btn-item.item-no-footer::before {
	content: "\2192";
	font-family: var(--mj-font-family);
	font-size: 1.125rem;
	font-weight: var(--mj-font-weight-semibold);
	line-height: 1;
}

#mj-home-property-cards .btn-item.item-no-footer:hover,
#mj-home-property-cards .btn-item.item-no-footer:focus-visible {
	background: #c94f0c !important;
	color: #fff !important;
	transform: translateX(2px);
}

#mj-home-property-cards .btn-item.item-no-footer:focus-visible {
	outline: 3px solid rgba(232, 102, 26, 0.28);
	outline-offset: 3px;
}

/* Houzez still renders these elements even when their Elementor hide toggles are enabled. */
#mj-home-property-cards .labels-wrap,
#mj-home-property-cards .item-tools,
#mj-home-property-cards .item-short-description,
#mj-home-property-cards .item-address:has(span:empty) {
	display: none !important;
}

/* Stable responsive media area; source files will be converted to optimized WebP later. */
#mj-home-property-cards .item-header,
#mj-home-property-cards .listing-image-wrap,
#mj-home-property-cards .listing-gallery-wrap,
#mj-home-property-cards .houzez-listing-carousel,
#mj-home-property-cards .slick-list,
#mj-home-property-cards .slick-track,
#mj-home-property-cards .slide-img,
#mj-home-property-cards .listing-thumb,
#mj-home-property-cards .image-wrap {
	height: 220px !important;
}

#mj-home-property-cards .listing-image-wrap img,
#mj-home-property-cards .slide-img img,
#mj-home-property-cards .listing-thumb img {
	display: block;
	height: 100% !important;
	object-fit: cover;
	width: 100% !important;
}

#mj-home-property-cards .item-header,
#mj-home-property-cards .listing-image-wrap {
	border-radius: 10px 10px 0 0 !important;
	overflow: hidden !important;
}

@media (max-width: 1200px) {
	#mj-home-property-cards .item-header,
	#mj-home-property-cards .listing-image-wrap,
	#mj-home-property-cards .listing-gallery-wrap,
	#mj-home-property-cards .houzez-listing-carousel,
	#mj-home-property-cards .slick-list,
	#mj-home-property-cards .slick-track,
	#mj-home-property-cards .slide-img,
	#mj-home-property-cards .listing-thumb,
	#mj-home-property-cards .image-wrap {
		height: 210px !important;
	}
}

@media (max-width: 880px) {
	#mj-home-property-cards .item-header,
	#mj-home-property-cards .listing-image-wrap,
	#mj-home-property-cards .listing-gallery-wrap,
	#mj-home-property-cards .houzez-listing-carousel,
	#mj-home-property-cards .slick-list,
	#mj-home-property-cards .slick-track,
	#mj-home-property-cards .slide-img,
	#mj-home-property-cards .listing-thumb,
	#mj-home-property-cards .image-wrap {
		height: 200px !important;
	}
}

@media (max-width: 767px) {
	#mj-home-property-cards .item-title {
		min-height: 0;
	}

	#mj-home-property-cards .item-header,
	#mj-home-property-cards .listing-image-wrap,
	#mj-home-property-cards .listing-gallery-wrap,
	#mj-home-property-cards .houzez-listing-carousel,
	#mj-home-property-cards .slick-list,
	#mj-home-property-cards .slick-track,
	#mj-home-property-cards .slide-img,
	#mj-home-property-cards .listing-thumb,
	#mj-home-property-cards .image-wrap {
		height: 190px !important;
	}
}

/* Homepage hero: approved Michel portrait treatment and handwritten message. */
.elementor-element-460a293 {
	isolation: isolate;
	position: relative;
}

.elementor-element-db7d63a {
	position: relative;
	z-index: 2;
}

.elementor-element-db7d63a img {
	filter: drop-shadow(0 1rem 1.375rem rgba(18, 52, 74, 0.24));
}

.elementor-element-460a293::after {
	aspect-ratio: 720 / 380;
	background: url("assets/images/foretagare-starkare-morgondag-dekor.webp") center / contain no-repeat;
	content: "";
	pointer-events: none;
	position: absolute;
	right: -4.0625rem;
	top: 3rem;
	width: clamp(9rem, 15vw, 12.5rem);
	z-index: 3;
}

@media (max-width: 1366px) {
	.elementor-element-460a293::after {
		right: 0.25rem;
		top: 2.5rem;
		width: 9.25rem;
	}
}

@media (max-width: 1200px) {
	.elementor-element-460a293::after {
		right: 0.25rem;
		top: 2.5rem;
		width: 9.25rem;
	}
}

@media (max-width: 1024px) {
	.elementor-element-78b2fcd {
		align-items: center;
		column-gap: 1rem !important;
		flex-wrap: nowrap !important;
		row-gap: 0 !important;
	}

	.elementor-element-f85111b {
		flex: 0 0 5.75rem !important;
	}

	.elementor-element-e692e9f,
	.elementor-element-5557b31 {
		flex: 0 0 8.875rem !important;
	}

	.elementor-element-6f78e33 {
		flex: 0 0 6.25rem !important;
	}

	.elementor-element-e692e9f .e-paragraph-base,
	.elementor-element-5557b31 .e-paragraph-base {
		line-height: 1.3;
		white-space: normal;
	}

	.elementor-element-db7d63a img {
		filter: drop-shadow(0 0.75rem 1rem rgba(18, 52, 74, 0.22));
	}

	.elementor-element-460a293::after {
		right: 0;
		top: 2rem;
		width: 9rem;
	}
}

@media (max-width: 880px) {
	.elementor-element-10dc500 .e-heading-base {
		font-size: 2.5rem !important;
		line-height: 1.1 !important;
	}

	.elementor-element-78b2fcd {
		column-gap: 0.5rem !important;
	}

	.elementor-element-f85111b {
		flex-basis: 5.375rem !important;
	}

	.elementor-element-e692e9f,
	.elementor-element-5557b31 {
		flex-basis: 7.8125rem !important;
	}

	.elementor-element-6f78e33 {
		flex-basis: 5.625rem !important;
	}

	.elementor-element-78b2fcd .e-paragraph-base {
		font-size: 0.6875rem !important;
		line-height: 1.3 !important;
	}

	.elementor-element-78b2fcd .elementor-icon {
		font-size: 1rem !important;
	}

	.elementor-element-460a293::after {
		right: 0.5rem;
		top: 1.5rem;
		width: 7.5rem;
	}
}

@media (max-width: 767px) {
	.elementor-element-2a89a38,
	.elementor-element-720f835 {
		height: auto !important;
		min-height: 0 !important;
	}

	.elementor-element-720f835 {
		align-items: stretch !important;
		flex-direction: column !important;
		gap: 1.25rem !important;
		padding: 1.5rem 1.125rem 0 !important;
	}

	.elementor-element-a909568 {
		gap: 1.125rem !important;
		height: auto !important;
		max-width: none !important;
		width: 100% !important;
	}

	.elementor-element-10dc500 .e-heading-base {
		font-size: 1.75rem !important;
		line-height: 1.1 !important;
	}

	.elementor-element-d7e479e {
		align-items: stretch !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		gap: 0.625rem !important;
		height: auto !important;
		padding: 0 !important;
		width: 100% !important;
	}

	.elementor-element-d7e479e .elementor-button,
	.elementor-element-d7e479e a {
		justify-content: center;
		width: 100% !important;
	}

	.elementor-element-78b2fcd {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.75rem !important;
		height: auto !important;
		padding-top: 0.5rem !important;
		width: 100% !important;
	}

	.elementor-element-f85111b,
	.elementor-element-e692e9f,
	.elementor-element-5557b31,
	.elementor-element-6f78e33 {
		flex: none !important;
		width: auto !important;
	}

	.elementor-element-78b2fcd .e-paragraph-base {
		font-size: 0.75rem !important;
	}

	.elementor-element-460a293 {
		align-items: center !important;
		height: 17.5rem !important;
		max-width: none !important;
		min-height: 17.5rem !important;
		width: 100% !important;
	}

	.elementor-element-db7d63a img {
		height: 17.5rem !important;
		margin: 0 auto !important;
		max-width: 100% !important;
		object-fit: contain;
		object-position: bottom center;
		width: auto !important;
	}

	.elementor-element-460a293::after {
		display: none;
	}
}

/* Prevent Elementor's 1200px nav breakpoint from showing both modes. */
@media (min-width: 1200.01px) {
	.elementor-element-d6efa9c .elementor-menu-toggle,
	.elementor-element-d6efa9c .elementor-nav-menu--dropdown {
		display: none !important;
	}

	.elementor-element-d6efa9c .elementor-nav-menu--main {
		display: flex !important;
	}
}

@media (max-width: 1200px) {
	.elementor-element-d6efa9c .elementor-nav-menu--main {
		display: none !important;
	}

	.elementor-element-d6efa9c .elementor-menu-toggle {
		align-items: center;
		background: var(--mj-color-white) !important;
		border: 1px solid var(--mj-color-navy) !important;
		border-radius: var(--mj-radius-small) !important;
		box-sizing: border-box;
		color: var(--mj-color-navy) !important;
		display: flex !important;
		height: 2.75rem;
		justify-content: center;
		padding: 0 !important;
		width: 2.75rem;
	}

	.elementor-element-d6efa9c .elementor-menu-toggle:hover,
	.elementor-element-d6efa9c .elementor-menu-toggle:focus-visible,
	.elementor-element-d6efa9c .elementor-menu-toggle.elementor-active {
		background: var(--mj-color-orange) !important;
		border-color: var(--mj-color-orange) !important;
		color: var(--mj-color-white) !important;
	}
}

@media (max-width: 767px) {
	:root {
		--mj-section-space: clamp(3rem, 12vw, 4.5rem);
	}

	.mj-button,
	.elementor-button.mj-button {
		min-height: 3.25rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/*
 * Elementor Atomic persists element IDs but may replace human-readable class
 * names when a draft is saved. These ID aliases keep the approved header
 * design attached after save, reload and JSON export/import.
 */
.elementor-element-d64e391 {
	background: var(--mj-color-navy);
	color: var(--mj-color-white);
	height: 2.25rem !important;
	min-height: 2.25rem !important;
	padding: 0 !important;
	width: 100%;
}

.elementor-element-2868523 {
	align-items: center;
	display: flex;
	flex-direction: row;
	gap: 1rem;
	justify-content: space-between;
	height: 2.25rem !important;
	margin-inline: auto;
	max-width: var(--mj-container);
	min-height: 2.25rem !important;
	padding: 0 1.5rem !important;
	width: 100%;
}

.elementor-element-9028182 .e-paragraph-base,
.elementor-element-3eb3fdf .e-paragraph-base {
	color: var(--mj-color-white) !important;
	font-family: var(--mj-font-family);
	font-size: 0.6875rem;
	font-weight: var(--mj-font-weight-medium);
	line-height: 1.35;
	margin: 0;
}

.elementor-element-9028182 .e-paragraph-base {
	flex: 1 1 auto;
	height: auto !important;
	white-space: nowrap;
	width: auto !important;
}

.elementor-element-d50a7fe {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	flex-direction: row;
	gap: 0.875rem;
	justify-content: flex-end;
	max-width: none !important;
	padding: 0 !important;
	width: auto !important;
}

.elementor-element-7bd3efd a,
.elementor-element-566247c a {
	background: transparent !important;
	border: 0 !important;
	color: var(--mj-color-white) !important;
	font-family: var(--mj-font-family);
	font-size: 0.6875rem;
	font-weight: var(--mj-font-weight-medium);
	line-height: 1.35;
	min-height: 0;
	padding: 0 !important;
	text-decoration: none;
}

.elementor-element-3a533d7 {
	background: var(--mj-color-white);
	height: 4.5rem !important;
	min-height: 4.5rem !important;
	padding: 0 !important;
	width: 100%;
}

.elementor-element-de51ffc {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	height: 4.5rem !important;
	margin-inline: auto;
	max-width: var(--mj-container);
	min-height: 4.5rem !important;
	padding: 0 1.5rem !important;
	width: 100%;
}

.elementor-element-97d725c img {
	display: block;
	height: auto;
	max-width: 100%;
	object-fit: contain;
	width: 16.75rem;
}

@media (max-width: 1366px) {
	.elementor-element-97d725c img {
		width: 15.625rem;
	}
}

@media (max-width: 1200px) {
	.elementor-element-97d725c img {
		width: 14.75rem;
	}
}

@media (max-width: 1024px) {
	.elementor-element-97d725c img {
		width: 13.75rem;
	}

	.elementor-element.elementor-element-9028182 {
		display: none !important;
	}

	.elementor-element-9028182 .e-paragraph-base {
		display: none !important;
	}

	.elementor-element-2868523,
	.elementor-element-d50a7fe {
		justify-content: center;
	}
}

@media (max-width: 880px) {
	.elementor-element-97d725c img {
		width: 12.75rem;
	}
}

@media (max-width: 767px) {
	.elementor-element-97d725c img {
		width: 11.75rem;
	}

	.elementor-element-2868523,
	.elementor-element-de51ffc {
		padding-inline: 1rem !important;
	}

	.elementor-element.elementor-element-3eb3fdf,
	.elementor-element.elementor-element-566247c {
		display: none !important;
	}

	.elementor-element-3eb3fdf .e-paragraph-base,
	.elementor-element-566247c a {
		display: none !important;
	}

	/* Keep the right conversion-card header consistent on mobile portrait. */
	.elementor-element-31045f5 {
		padding: 0 !important;
	}

	.elementor-element-817a61e {
		width: 100% !important;
		max-width: none !important;
		align-items: center !important;
	}

	.elementor-element-817a61e > .e-heading-base,
	.elementor-element-817a61e > .e-paragraph-base {
		width: 100% !important;
		text-align: center !important;
	}
}
