/*
 Theme Name:   MedAlert.ai
 Theme URI:    https://jthemes.com/themes/wp/martex/
 Description:  Martex child theme
 Author:       JThemes
 Author URI:   http://themeforest.net/user/jthemes
 Template:     martex
 Version:      1.0.0
License:       GNU General Public License version 3.0
License URI:   http://www.gnu.org/licenses/gpl-3.0.html
 Tags:         one-column, two-columns, three-columns, right-sidebar, flexible-header, custom-colors,  custom-background, custom-header, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready 
 Text Domain:  martex-child
*/


/* Add your custom css below */

.modal-backdrop.show {
	background: rgba(15, 23, 42, 0.58);
	opacity: 1;
}

#citikidRegisterModal .medalert-signup-dialog,
.medalert-signup-dialog {
	max-width: 560px !important;
}

.medalert-signup-dialog .modal-content {
	position: relative;
	border: 1px solid var(--ma-border, rgba(26, 29, 41, 0.1));
	border-radius: 24px;
	background: var(--ma-surface, #ffffff);
	box-shadow: 0 28px 90px rgba(15, 23, 42, 0.26);
	overflow: visible;
}

.medalert-signup-shell {
	position: relative;
	padding: 20px 20px 22px;
	color: var(--ma-text, #1a1d29);
}

.medalert-signup-close {
	position: absolute;
	top: -14px;
	right: -14px;
	width: 42px;
	height: 42px;
	border: 1px solid var(--ma-border, rgba(26, 29, 41, 0.12));
	border-radius: 999px;
	background: var(--ma-surface, #ffffff);
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.14);
	color: var(--ma-text, #1a1d29);
	font-size: 1.7rem;
	line-height: 1;
	padding: 0;
	cursor: pointer;
	z-index: 2;
}

.medalert-signup-close:hover {
	transform: translateY(-1px);
}

.medalert-signup-progress {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin-bottom: 16px;
	padding: 10px 10px 8px;
	border: 1px solid var(--ma-border, rgba(26, 29, 41, 0.1));
	border-radius: 18px;
	background: color-mix(in srgb, var(--ma-surface, #ffffff) 76%, var(--ma-bg, #f4f4f9));
}

.medalert-signup-progress__item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	text-align: center;
}

.medalert-signup-progress__item:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 16px;
	left: calc(50% + 22px);
	right: calc(-50% + 22px);
	height: 2px;
	background: color-mix(in srgb, var(--ma-border, rgba(26, 29, 41, 0.1)) 80%, transparent);
}

.medalert-signup-progress__item.is-done:not(:last-child)::after,
.medalert-signup-progress__item.is-active:not(:last-child)::after {
	background: var(--ma-accent, #0c6ffd);
}

.medalert-signup-progress__dot {
	width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	border: 1.5px solid color-mix(in srgb, var(--ma-border, rgba(26, 29, 41, 0.1)) 95%, transparent);
	background: color-mix(in srgb, var(--ma-surface, #ffffff) 86%, var(--ma-bg, #f4f4f9));
	color: var(--ma-muted, #57596c);
	font-size: 0.82rem;
	font-weight: 700;
}

.medalert-signup-progress__item.is-active .medalert-signup-progress__dot,
.medalert-signup-progress__item.is-done .medalert-signup-progress__dot {
	border-color: var(--ma-accent, #0c6ffd);
	background: var(--ma-accent, #0c6ffd);
	color: #ffffff;
}

.medalert-signup-progress__label {
	font-size: 0.72rem;
	font-weight: 700;
	color: var(--ma-muted, #57596c);
}

.medalert-signup-progress__item.is-active .medalert-signup-progress__label,
.medalert-signup-progress__item.is-done .medalert-signup-progress__label {
	color: var(--ma-text, #1a1d29);
}

.medalert-signup-header {
	margin-bottom: 14px;
}

.medalert-signup-eyebrow {
	display: none;
}

#page .medalert-signup-title,
.medalert-signup-title {
	margin: 0 0 20px;
	font-size: clamp(1.38rem, 1.12rem + 0.48vw, 1.72rem);
	line-height: 1.08;
	letter-spacing: -0.035em;
	color: var(--ma-text, #1a1d29) !important;
	font-weight: 800 !important;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.medalert-signup-title-logo {
	display: block;
	height: 34px;
	width: auto;
	flex: 0 0 auto;
}

.medalert-signup-subtitle {
	margin: 0;
	max-width: 30rem;
	font-size: 0.88rem;
	line-height: 1.46;
	color: var(--ma-muted, #57596c);
}

.medalert-signup-subtitle-email {
	color: var(--ma-text, #1a1d29);
}

.medalert-signup-plan-card {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-bottom: 14px;
	padding: 9px 11px;
	border: 1px solid var(--ma-border, rgba(26, 29, 41, 0.1));
	border-radius: 14px;
	background: color-mix(in srgb, var(--ma-surface, #ffffff) 82%, var(--ma-bg, #f4f4f9));
}

.medalert-signup-plan-card__label {
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--ma-muted, #57596c);
}

.medalert-signup-plan-card__value {
	font-size: 0.96rem;
	color: var(--ma-text, #1a1d29);
}

.medalert-signup-form {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.medalert-signup-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.medalert-signup-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.medalert-signup-field span,
.medalert-signup-checkbox span {
	font-size: 0.86rem;
	font-weight: 700;
	color: var(--ma-text, #1a1d29);
}

.medalert-signup-field span {
	display: block;
	line-height: 1.3;
}

.medalert-signup-field input,
.medalert-signup-field select {
	width: 100%;
	min-height: 44px;
	padding: 10px 13px;
	border: 1px solid var(--ma-border, rgba(26, 29, 41, 0.1));
	border-radius: 12px;
	background: color-mix(in srgb, var(--ma-surface, #ffffff) 84%, transparent);
	color: var(--ma-text, #1a1d29);
	font-size: 0.9rem;
	box-shadow: none;
}

.medalert-signup-field input::placeholder {
	color: color-mix(in srgb, var(--ma-muted, #57596c) 72%, transparent);
}

.medalert-signup-field input:focus,
.medalert-signup-field select:focus {
	border-color: var(--ma-accent, #0c6ffd);
	outline: none;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--ma-accent, #0c6ffd) 16%, transparent);
}

.medalert-signup-helper {
	margin: -2px 0 0;
	font-size: 0.78rem;
	line-height: 1.45;
	color: var(--ma-muted, #57596c);
}

.medalert-signup-helper a {
	color: var(--ma-accent, #0c6ffd);
	font-weight: 700;
}

.medalert-signup-checkbox {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.medalert-signup-checkbox input {
	width: 18px;
	height: 18px;
	margin: 0;
}

.medalert-signup-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.medalert-signup-button {
	border: 0;
	border-radius: 12px;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
}

.medalert-signup-button:hover {
	transform: translateY(-1px);
}

.medalert-signup-button--primary {
	flex: 1 1 auto;
	min-height: 44px;
	padding: 0 18px;
	background: var(--ma-accent, #0c6ffd);
	box-shadow: 0 10px 24px color-mix(in srgb, var(--ma-accent, #0c6ffd) 26%, transparent);
	color: #ffffff;
}

.medalert-signup-actions .medalert-signup-button--primary {
	flex: 0 1 320px;
	min-width: 220px;
}

.medalert-signup-button--ghost {
	padding: 0;
	background: transparent;
	color: var(--ma-text, #1a1d29);
	box-shadow: none;
}

.medalert-signup-error {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 14px;
	padding: 14px 15px;
	border: 1px solid color-mix(in srgb, #ef4444 28%, var(--ma-border, rgba(26, 29, 41, 0.1)));
	border-radius: 16px;
	background: color-mix(in srgb, #ef4444 10%, var(--ma-surface, #ffffff));
	color: var(--ma-text, #1a1d29);
}

.medalert-signup-error__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 999px;
	background: #dc2626;
	color: #ffffff;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1;
}

.medalert-signup-error__content {
	min-width: 0;
}

.medalert-signup-error__title {
	display: block;
	margin: 0 0 4px;
	font-size: 0.9rem;
	font-weight: 800;
	color: var(--ma-text, #1a1d29);
}

.medalert-signup-error__message,
.medalert-signup-error__hint {
	margin: 0;
	font-size: 0.84rem;
	line-height: 1.45;
}

.medalert-signup-error__message {
	color: color-mix(in srgb, var(--ma-text, #1a1d29) 82%, transparent);
}

.medalert-signup-error__hint {
	margin-top: 5px;
	color: var(--ma-muted, #57596c);
}

.medalert-signup-processing {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 14px;
	padding: 20px 0 8px;
	text-align: center;
}

.medalert-signup-processing__pulse {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--ma-accent, #0c6ffd) 12%, transparent);
}

.medalert-signup-processing__card {
	width: 100%;
	max-width: 28rem;
	padding: 16px 16px 14px;
	border: 1px solid var(--ma-border, rgba(26, 29, 41, 0.1));
	border-radius: 16px;
	background: color-mix(in srgb, var(--ma-surface, #ffffff) 84%, var(--ma-bg, #f4f4f9));
	text-align: left;
}

.medalert-signup-processing p {
	margin: 0;
	color: var(--ma-muted, #57596c);
	font-size: 0.9rem;
	line-height: 1.45;
}

.medalert-signup-processing__steps {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 14px;
}

.medalert-signup-processing__step {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--ma-muted, #57596c);
	font-size: 0.84rem;
	font-weight: 700;
}

.medalert-signup-processing__step-dot {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--ma-accent, #0c6ffd) 18%, transparent);
	color: var(--ma-accent, #0c6ffd);
	font-size: 0.82rem;
	line-height: 1;
}

.medalert-signup-processing__step.is-active {
	color: var(--ma-text, #1a1d29);
}

.medalert-signup-processing__step.is-active .medalert-signup-processing__step-dot {
	background: var(--ma-accent, #0c6ffd);
	color: #ffffff;
}

.medalert-signup-spinner {
	width: 34px;
	height: 34px;
	border: 3px solid color-mix(in srgb, var(--ma-accent, #0c6ffd) 20%, transparent);
	border-top-color: var(--ma-accent, #0c6ffd);
	border-radius: 999px;
	animation: medalert-signup-spin 0.9s linear infinite;
}

body.theme--dark .modal-backdrop.show {
	background: rgba(3, 8, 20, 0.8);
}

body.theme--dark .medalert-signup-dialog .modal-content {
	box-shadow: 0 28px 90px rgba(0, 0, 0, 0.42);
}

@keyframes medalert-signup-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (max-width: 767.98px) {
	.medalert-signup-dialog {
		margin: 1.5rem auto;
	}

	.medalert-signup-shell {
		padding: 18px 18px 20px;
	}

	.medalert-signup-close {
		top: -12px;
		right: -8px;
		width: 40px;
		height: 40px;
	}

	.medalert-signup-progress {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.medalert-signup-grid,
	.medalert-signup-actions {
		grid-template-columns: 1fr;
		flex-direction: column;
		align-items: stretch;
	}

	.medalert-signup-button--ghost {
		align-self: flex-start;
	}
}

/* Buttons: bolder type + softer secondary outline (black border reads harsh) */
.btn {
	font-size: 0.875rem;
	font-weight: 700;
}

.btn--tra-black {
	color: #1a1d29 !important;
	background-color: #fff !important;
	border-color: #c5ccd8 !important;
}

.btn--tra-black:focus {
	color: #1a1d29;
}

.pricing-1-wrapper {
	max-width: 900px;
    margin: 0 auto;	
}

.wsmenu>.wsmenu-list>li {
	position: relative;
}

.wsmenu > .wsmenu-list > li > ul.sub-menu {
	max-width: 300px;
	left: -3px;
}

li.mg_link.column-4 .martex-menu {
	grid-template-columns: repeat(1, auto);
}

.elementor-section.elementor-section-boxed > .elementor-container:first-child {
/* 	margin-top: -50px; */
}

@media (min-width: 390px) and (max-width: 413.98px) {
    .txt-block .btn {
        margin: 0 auto!important;
    }
}

.display-none {
	display: none!important;
}

/* Homepage wow pillars: platform pluses under the hero (not fake KPI counters) */
#statistic-1.statistic-section,
#statistic-1 {
	padding-top: 40px !important;
	padding-bottom: 36px !important;
}

#statistic-1 > .container {
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}

#statistic-1 .statistic-1-wrapper > .row {
	--bs-gutter-x: 2rem;
	--bs-gutter-y: 1.5rem;
	justify-content: center;
}

#statistic-1 .statistic-1-wrapper .statistic-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	clear: both;
	max-width: 17.5rem;
	margin-inline: auto;
	text-align: center;
}

#statistic-1 .statistic-1-wrapper .statistic-block-digit,
#statistic-1 .wow-pillar-ico {
	width: auto !important;
	float: none !important;
	flex: 0 0 auto;
}

#statistic-1 .wow-pillar-ico {
	line-height: 1;
}

#statistic-1 .wow-pillar-ico [class*="flaticon-"] {
	font-size: 1.65rem;
}

#statistic-1 .statistic-1-wrapper .statistic-block-txt {
	width: auto !important;
	float: none !important;
	padding-left: 0 !important;
	min-width: 0;
	text-align: center;
}

#statistic-1 .wow-pillar-title {
	margin: 0 0 6px;
	letter-spacing: -0.02em;
	line-height: 1.25;
	color: #1a1d29;
	font-size: 1.25rem; /* s-20 — source of truth for pillar/step titles */
	text-align: center;
}

/* “1. Opera la clínica” etc. → same size as “IA de riesgo clínico” pillars */
.elementor-element-a2c8874 .cbox-4 h5.feature-title {
	font-size: 1.25rem !important;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

#statistic-1 .statistic-1-wrapper .statistic-block-txt p.p-md {
	font-size: 0.95rem;
	line-height: 1.4;
	margin: 0;
	max-width: none;
}

@media (max-width: 767.98px) {
	#statistic-1 > .container {
		max-width: 26rem;
	}

	#statistic-1 .statistic-1-wrapper .statistic-block {
		max-width: none;
		margin-inline: auto;
		align-items: center;
		text-align: center;
	}
}

#reviews-1 {
	padding-top: 50px;
}

.wsmenu>.wsmenu-list>li.current-menu-item {
/* 	border-bottom: solid 2px rgba(0,0,0,0.3); */
}

.google-calendar button {
	color: rgb(255, 255, 255);
    background-color: rgb(12 111 253);
    padding: 13px 36px;
    font-size: 17px;
    font-family: var(--martex-headings-font-family, "Plus Jakarta Sans", sans-serif);
    border-radius: 8px;
    font-weight: 600;	
	transition: all 0.3s;
}

.google-calendar button:hover {
	opacity: 0.7;
}

/* ---- Title hierarchy -------------------------------------------------
   Theme shouts with s-40 / s-46 / s-50 / s-52 on page + section titles.
   Calm all of them; only the home hero stays slightly larger.
   Scoped to #page so Elementor pages (no .main) get the same treatment.
-------------------------------------------------------------------- */
#page h1:not(.modal-title),
#page h2.title-element,
#page h2.s-36,
#page h2.s-40,
#page h2.s-46,
#page h2.s-48,
#page h2.s-50,
#page h2.s-52,
#page h2.s-54,
#page h2.s-56,
#page h2.s-58,
#page h2.s-60,
#page h2.s-62,
#page h2.s-64,
#page h1.s-40,
#page h1.s-46,
#page h1.s-52,
#page h1.s-58,
#page .section-title h2,
#page .inner-page-title h1,
#page .inner-page-title h2 {
	font-size: clamp(1.625rem, 1.1vw + 1.15rem, 2rem) !important; /* ~26–32px */
	line-height: 1.25;
	letter-spacing: -0.025em;
	font-weight: 700;
}

#page .hero-section h2.title-element.s-46,
#page .hero-section h2.s-46,
.elementor-1291 .elementor-element.elementor-element-b6a8f7e .title-element {
	font-size: clamp(1.75rem, 1.15vw + 1.2rem, 2.125rem) !important; /* ~28–34px */
	line-height: 1.2;
	letter-spacing: -0.03em;
}

#page .section-title {
	margin-bottom: 2rem !important; /* was often mb-70 / very airy */
}

#page .section-title p.s-21,
#page .section-title .description-element,
#page .description-element.s-21,
#page .inner-page-title p,
#page .inner-page-title .p-lg,
#lnk-3 .section-title p,
.bc-5-wrapper .section-title p {
	font-size: clamp(1.05rem, 0.25vw + 0.95rem, 1.15rem) !important;
	line-height: 1.45;
}

#page .hero-section .subtitle-element.s-21 {
	font-size: clamp(1.1rem, 0.35vw + 0.95rem, 1.25rem);
}

/* Language switcher — flag next to CTA */
.wsmenu-list > li.menu-lang {
	display: flex !important;
	align-items: center !important;
	visibility: visible !important;
	list-style: none !important;
}

.wsmenu-list > li.menu-lang::before,
.wsmenu-list > li.menu-lang::after {
	content: none !important;
	display: none !important;
}

.wsmenu > .wsmenu-list > li.menu-lang > a.menu-lang-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.4rem;
	width: auto !important;
	min-width: 0 !important;
	height: 2.25rem !important;
	padding: 0 0.35rem !important;
	margin: 0 !important;
	line-height: 1 !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em;
	opacity: 1;
}

.wsmenu > .wsmenu-list > li.menu-lang > a.menu-lang-link:hover {
	color: var(--ma-accent, #0c6ffd) !important;
	opacity: 1;
	transform: none;
}

.lang-flag {
	display: inline-flex;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	border-radius: 999px;
	overflow: hidden;
	box-shadow: inset 0 0 0 1px rgba(26, 29, 41, 0.12);
	line-height: 0;
}

.lang-flag svg {
	display: block;
	width: 18px;
	height: 18px;
}

.lang-code {
	display: inline-block;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1;
	text-transform: uppercase;
}

body.theme--dark .lang-flag,
body.theme--dark .lang-flag {
	box-shadow: inset 0 0 0 1px rgba(232, 235, 242, 0.2);
}

/* Contact page — channels match home wow pillars density */
.contact-page > .container {
	max-width: 960px;
}

.contact-page .contact-channels {
	--bs-gutter-x: 2rem;
	--bs-gutter-y: 1.5rem;
	justify-content: center;
	margin-bottom: 2.5rem !important;
}

.contact-page .contact-channel {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	max-width: 17.5rem;
	margin-inline: auto;
	text-align: center;
	padding: 0;
}

.contact-page .contact-channel [class*="flaticon-"] {
	font-size: 1.65rem;
	line-height: 1;
}

.contact-page .contact-channel h3 {
	margin: 0 0 6px;
	font-size: 1.25rem !important;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.contact-page .contact-channel p {
	font-size: 0.95rem;
	line-height: 1.4;
	margin: 0;
}

.contact-page .contact-channel .h-link {
	font-weight: 600;
	font-size: 0.95rem;
}

.contact-form-panel {
	max-width: 40rem;
	margin: 0 auto;
}

.contact-form .form-label {
	display: block;
	margin-bottom: 6px;
	color: #1a1d29;
}

.contact-form .form-control,
.contact-form .form-select {
	width: 100%;
	border: 1px solid #d8dde6;
	border-radius: 8px;
	padding: 12px 14px;
	font-size: 1rem;
	line-height: 1.4;
	background: #fff;
	box-shadow: none;
}

.contact-form .form-control:focus,
.contact-form .form-select:focus {
	outline: none;
	border-color: #0c6ffd;
	box-shadow: 0 0 0 3px rgba(12, 111, 253, 0.12);
}

.contact-form textarea.form-control {
	resize: vertical;
	min-height: 8rem;
}

.contact-hero,
.help-hero,
.careers-hero,
.career-role-hero,
.pricing-hero,
.legal-hero,
.blog-listing-hero {
	/* Theme adds margin-top that leaves plain white under the transparent nav */
	margin-top: 0 !important;
	padding-bottom: 1.75rem !important;
	background: transparent !important;
}

@media (min-width: 992px) {
	.inner-page-hero {
		padding-top: 110px !important;
	}
}

.help-hero {
	padding-bottom: 1.4rem !important;
}

.contact-hero .inner-page-title,
.help-hero .inner-page-title,
.careers-hero .inner-page-title,
.pricing-hero .inner-page-title,
.legal-hero .inner-page-title,
.blog-listing-hero .inner-page-title {
	padding-top: 0.8rem;
}

.contact-hero .inner-page-title p,
.help-hero .inner-page-title p,
.careers-hero .inner-page-title p,
.pricing-hero .inner-page-title p,
.legal-hero .inner-page-title p,
.blog-listing-hero .inner-page-title p {
	margin-top: 0.45rem !important;
}

/* Contact + Help + About — one continuous soft bg (no white bands) */
.contact-us-page,
.contact-us-page .main,
.contact-us-page .entry,
.contact-us-page .contact-hero,
.contact-us-page .contact-page,
.help-center-page,
.help-center-page .main,
.help-center-page .entry,
.help-center-page .help-hero,
.help-center-page #faqs-4,
.help-center-page .help-cta-section,
.careers-page,
.careers-page .main,
.careers-page .entry,
.careers-page .careers-hero,
.careers-page .careers-body,
.career-role-page,
.career-role-page .main,
.career-role-page .entry,
.career-role-page .career-role-hero,
.career-role-page .career-role-body,
.pricing-page,
.pricing-page .main,
.pricing-page .entry,
.pricing-page .pricing-hero,
.pricing-page .pricing-body,
.legal-page,
.legal-page .main,
.legal-page .entry,
.legal-page .legal-hero,
.legal-page .legal-body,
.blog-post-page,
.blog-post-page .main,
.blog-post-page .entry,
.blog-post-page .post-content,
.blog-post-page .single-post-title,
.blog-post-page .entry-content,
.blog-post-page .comments-area,
body.single-post #page,
body.single-post .main,
body.single-post .entry,
body.single-post .post-content,
.blog-listing-page,
.blog-listing-page .main,
.blog-listing-page .entry,
.blog-listing-page .blog-listing-hero,
.blog-listing-page .blog-page-section,
.blog-listing-page .elementor,
.blog-listing-page .elementor-section,
.blog-listing-page .elementor-widget-wrap,
.blog-listing-page .elementor-widget-container,
.about-us-page,
.about-us-page .main,
.about-us-page .entry,
.about-us-page .elementor,
.about-us-page .elementor-section,
.about-us-page .elementor-widget-wrap,
.about-us-page .elementor-widget-container {
	background-color: var(--ma-bg, #f4f4f9) !important;
	background-image: none !important;
}

/* About page — same hero clearance + quieter rhythm as Contact/Help */
body:has(.about-us-page),
body:has(.contact-us-page),
body:has(.help-center-page),
body:has(.careers-page),
body:has(.career-role-page),
body:has(.pricing-page),
body:has(.legal-page),
body:has(.blog-listing-page),
body:has(.blog-post-page),
body.single-post {
	background-color: var(--ma-bg, #f4f4f9);
}

/* Career role detail */
.career-role-hero__inner {
	max-width: 40rem;
	margin: 0 auto;
	padding-top: 0.15rem;
	text-align: left;
}

.career-role-back {
	display: inline-block;
	margin-bottom: 1.25rem;
	font-size: 0.9rem;
	font-weight: 600;
	color: #57596c;
	text-decoration: none;
}

.career-role-back:hover {
	color: #0c6ffd;
}

.career-role-tag {
	display: inline-block;
	margin-bottom: 0.65rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #0c6ffd;
}

.career-role-hero h1 {
	margin-bottom: 0.5rem !important;
}

.career-role-meta {
	margin: 0 0 1.25rem !important;
	font-size: 1rem;
}

.career-role-body > .container {
	max-width: 40rem;
}

.career-role-prose h2 {
	margin: 2rem 0 0.65rem !important;
	font-size: clamp(1.25rem, 0.5vw + 1.05rem, 1.4rem) !important;
	line-height: 1.3;
	letter-spacing: -0.02em;
}

.career-role-prose h2:first-child {
	margin-top: 0 !important;
}

.career-role-prose p,
.career-role-prose li {
	font-size: 1rem;
	line-height: 1.55;
	color: #3a3d4a;
}

.career-role-prose ul,
.career-role-prose ol {
	margin: 0 0 0.5rem;
	padding-left: 1.2rem;
}

.career-role-prose li + li {
	margin-top: 0.4rem;
}

.career-role-pillars {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
	margin: 1.5rem 0 0.5rem;
}

.career-role-pillar {
	padding: 1rem 0;
}

.career-role-pillar h3 {
	margin: 0 0 0.35rem !important;
	font-size: 1.05rem !important;
	line-height: 1.3;
}

.career-role-pillar p {
	margin: 0 !important;
	font-size: 0.925rem !important;
	line-height: 1.4;
}

.career-role-steps {
	margin-top: 0.75rem;
}

.career-role-apply {
	margin-top: 2.5rem;
	padding-top: 1.75rem;
	border-top: 1px solid #e2e2ea;
}

.career-role-apply h2 {
	margin-top: 0 !important;
}

.career-role-apply .btn {
	margin-top: 0.5rem;
}

@media (max-width: 767.98px) {
	.career-role-pillars {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}
}

/* Careers — pillars + quiet role list */
.careers-body > .container {
	max-width: 800px;
}

.careers-pillars {
	--bs-gutter-x: 2rem;
	--bs-gutter-y: 1.5rem;
	justify-content: center;
	margin-bottom: 3rem !important;
}

.careers-pillar {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	max-width: 17.5rem;
	margin-inline: auto;
	text-align: center;
}

.careers-pillar [class*="flaticon-"] {
	font-size: 1.65rem;
	line-height: 1;
}

.careers-pillar h3 {
	margin: 0;
	font-size: 1.25rem !important;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.careers-pillar p {
	margin: 0;
	font-size: 0.95rem;
	line-height: 1.4;
}

.careers-roles__intro {
	margin-bottom: 1.5rem;
}

.careers-roles__intro h2 {
	margin-bottom: 0.5rem !important;
}

.careers-roles__list {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.careers-role {
	display: grid;
	grid-template-columns: 6.5rem 1fr auto;
	gap: 0.75rem 1rem;
	align-items: center;
	padding: 1rem 1.15rem;
	border: 1px solid #e2e2ea;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.55);
	text-decoration: none;
	color: inherit;
	transition: border-color 0.2s ease, background-color 0.2s ease;
}

.careers-role:hover {
	border-color: #0c6ffd;
	background: #fff;
	color: inherit;
}

.careers-role__tag {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #0c6ffd;
}

.careers-role__title {
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.3;
}

.careers-role__meta {
	font-size: 0.875rem;
	color: #757575;
	text-align: right;
	white-space: nowrap;
}

.careers-cta {
	margin-top: 3rem;
	padding-bottom: 1rem;
}

.careers-cta h2 {
	margin-bottom: 0.5rem !important;
}

.careers-cta p {
	margin-bottom: 1.25rem;
}

@media (max-width: 767.98px) {
	.careers-role {
		grid-template-columns: 1fr;
		gap: 0.35rem;
	}

	.careers-role__meta {
		text-align: left;
		white-space: normal;
	}
}

/* Pricing — soft bg, monthly/yearly toggle, Basic + Advanced */
.pricing-body > .container {
	max-width: 960px;
}

.pricing-billing {
	margin: 0 auto 1.75rem;
}

.pricing-billing .toggle-btn {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.65rem 0.85rem;
	margin-bottom: 0.55rem;
}

.pricing-billing__save {
	font-size: 0.84rem;
	font-weight: 600;
}

.pricing-plans {
	--bs-gutter-x: 1.25rem;
	--bs-gutter-y: 1.25rem;
	margin-bottom: 2.75rem !important;
}

.pricing-offer {
	height: 100%;
	margin: 0;
	padding: 1.45rem 1.15rem 1.25rem;
	border: 1px solid #e2e2ea;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.55);
	text-align: center;
}

.pricing-offer--featured {
	border-color: rgba(12, 111, 253, 0.35);
	box-shadow: 0 0 0 1px rgba(12, 111, 253, 0.08);
}

.pricing-offer .price1 {
	display: none;
}

.pricing-offer .price2 {
	display: block;
}

.pricing-offer__features li.is-muted {
	color: #9a9aab;
}

.pricing-offer__features li.is-muted .flaticon-cancel {
	color: #b0b0bd;
}

.pricing-offer__label {
	margin-bottom: 0.7rem;
	font-size: 0.76rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #57596c;
}

.pricing-offer__price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	gap: 0.32rem 0.5rem;
	margin-bottom: 0.35rem;
}

/* Theme sets `.price span` to 3rem — keep amount large, period half size */
.pricing-page .pricing-offer .price span.pricing-offer__amount {
	font-size: 2.05rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.03em;
	color: #1a1d29;
}

.pricing-page .pricing-offer .price span.pricing-offer__period {
	font-size: 1.15rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0;
	color: #57596c;
}

.pricing-offer__setup {
	margin: 0 0 0.75rem;
	font-size: 0.86rem;
}

.pricing-offer__desc {
	margin: 0 auto 1rem;
	max-width: 22rem;
	font-size: 0.9rem;
	line-height: 1.42;
}

.pricing-offer__features {
	list-style: none;
	margin: 0 0 1.2rem;
	padding: 0;
	text-align: left;
}

.pricing-offer__features li {
	display: flex;
	align-items: flex-start;
	gap: 0.48rem;
	margin: 0 0 0.46rem;
	font-size: 0.92rem;
	line-height: 1.33;
	color: #1a1d29;
}

.pricing-offer__features .flaticon-check {
	flex-shrink: 0;
	margin-top: 0.15rem;
	color: #0c6ffd;
}

.pricing-offer__actions .btn {
	margin-bottom: 0.5rem;
	font-size: 0.84rem;
	padding: 0.85rem 1.35rem;
}

.pricing-pillars {
	--bs-gutter-x: 2rem;
	--bs-gutter-y: 1.5rem;
	justify-content: center;
	margin-bottom: 2.5rem !important;
}

.pricing-pillar {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	max-width: 17.5rem;
	margin-inline: auto;
	text-align: center;
}

.pricing-pillar [class*="flaticon-"] {
	font-size: 1.65rem;
	line-height: 1;
}

.pricing-pillar h3 {
	margin: 0;
	font-size: 1.25rem !important;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.pricing-pillar p {
	margin: 0;
	font-size: 0.95rem;
	line-height: 1.4;
}

.pricing-note {
	max-width: 36rem;
	margin: 0 auto 3rem;
	text-align: center;
}

.pricing-note h2 {
	margin-bottom: 0.5rem !important;
}

.pricing-faq {
	margin-bottom: 2.5rem;
}

.pricing-faq__intro {
	margin-bottom: 1.5rem;
}

.pricing-faq__intro h2 {
	margin-bottom: 0.5rem !important;
}

.pricing-faq__list {
	list-style: none;
	margin: 0;
	padding: 0;
	max-width: 40rem;
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	gap: 1.15rem;
}

.pricing-faq__list h3 {
	margin: 0 0 0.35rem;
	font-size: 1.1rem !important;
	letter-spacing: -0.02em;
}

.pricing-faq__list p {
	margin: 0;
	font-size: 0.98rem;
	line-height: 1.45;
	color: #57596c;
}

.pricing-cta {
	margin-top: 1rem;
	padding-bottom: 1rem;
}

.pricing-cta h2 {
	margin-bottom: 0.5rem !important;
}

.pricing-cta p {
	margin-bottom: 1.25rem;
}

/* Legal docs (terms, reusable prose shell) */
.legal-body > .container {
	max-width: 42rem;
}

.legal-prose .legal-lead {
	font-size: 1.05rem;
	line-height: 1.55;
	color: #3a3d4a;
	margin-bottom: 1rem;
}

.legal-prose h2 {
	margin: 2rem 0 0.65rem !important;
	font-size: clamp(1.2rem, 0.45vw + 1.05rem, 1.35rem) !important;
	line-height: 1.3;
	letter-spacing: -0.02em;
	color: #1a1d29;
}

.legal-prose h2:first-of-type {
	margin-top: 1.25rem !important;
}

.legal-prose h3 {
	margin: 1.25rem 0 0.45rem !important;
	font-size: 1.05rem !important;
	line-height: 1.35;
	letter-spacing: -0.01em;
	color: #1a1d29;
}

.legal-prose p,
.legal-prose li {
	font-size: 1rem;
	line-height: 1.55;
	color: #3a3d4a;
}

.legal-prose p {
	margin-bottom: 0.85rem;
}

.legal-prose ul,
.legal-prose ol {
	margin: 0 0 0.85rem;
	padding-left: 1.2rem;
}

.legal-prose li + li {
	margin-top: 0.4rem;
}

.legal-prose a {
	color: #0c6ffd;
	font-weight: 600;
	text-decoration: none;
}

.legal-prose a:hover {
	text-decoration: underline;
}

.legal-prose code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-size: 0.9em;
	padding: 0.12em 0.4em;
	border-radius: 6px;
	background: rgba(26, 29, 41, 0.06);
	color: #1a1d29;
	word-break: break-word;
}

body.theme--dark .legal-prose code {
	background: var(--ma-surface-2);
	color: var(--ma-text);
}

.legal-footnote {
	margin-top: 2rem !important;
	padding-top: 1.25rem;
	border-top: 1px solid #e2e2ea;
	font-size: 0.92rem !important;
	color: #57596c !important;
}

/* Blog listing — quiet polish over existing Elementor posts */
.blog-listing-page .blog-page-section {
	margin-top: 0 !important;
	padding-top: 0.5rem !important;
}

.blog-listing-page .wide-post {
	margin-bottom: 2rem;
}

.blog-listing-page .wide-post .blog-post-img img {
	border-radius: 12px;
}

/* Featured/first post title — quieter than theme .s-34 */
.blog-listing-page .wide-post .post-title,
.blog-listing-page .wide-post .post-title a {
	font-size: clamp(1.2rem, 0.45vw + 1.05rem, 1.4rem) !important;
	line-height: 1.28 !important;
	letter-spacing: -0.02em;
}

.blog-listing-page .post-categories a {
	display: inline-block;
	margin-bottom: 0.5rem;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #57596c !important;
	text-decoration: none;
}

.blog-listing-page .post-categories a:hover {
	color: #0c6ffd !important;
}

.blog-listing-page .post-title,
.blog-listing-page .post-title a {
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.blog-listing-page .blog-post-txt > p {
	color: #57596c;
	font-size: 0.98rem;
	line-height: 1.45;
}

.blog-listing-page .blog-post-meta,
.blog-listing-page .blog-post-meta .p-sm,
.blog-listing-page .blog-post-meta time {
	color: #8a8b99 !important;
	font-size: 0.88rem !important;
}

.blog-listing-page .posts-category-title h4,
.blog-listing-page h4.s-28 {
	margin-bottom: 1.25rem !important;
	letter-spacing: -0.02em;
}

.blog-listing-page .blog-post-img img {
	border-radius: 10px;
}

.blog-listing-page .page-numbers {
	border-radius: 8px;
}

.blog-listing-page .about-newsletter .elementor-divider {
	display: none;
}

.blog-listing-page .nav-alignment {
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}

/* Video promo — soft-bg override was bleaching the dark card (white text invisible) */
.blog-listing-page .square-post {
	padding: 0.25rem 0 1.75rem !important;
	margin-top: 0 !important;
}

.blog-listing-page .square-post-wrapper,
.blog-listing-page .square-post-wrapper.bg--black-400,
.blog-listing-page .square-post-wrapper > .elementor-container,
.blog-listing-page .square-post-wrapper .elementor-widget-wrap,
.blog-listing-page .square-post-wrapper .elementor-widget-container,
.blog-listing-page .square-post-wrapper .blog-post-txt {
	background-color: #2e3648 !important;
	background-image: none !important;
}

.blog-listing-page .square-post-wrapper .bg--04,
.blog-listing-page .square-post-wrapper .content-section,
.blog-listing-page .square-post-wrapper .section-overlay,
.blog-listing-page .square-post-wrapper .video-preview {
	background: transparent !important;
	padding: 0 !important;
}

.blog-listing-page .square-post-wrapper {
	visibility: visible !important;
	overflow: hidden;
	border-radius: 16px !important;
	box-shadow: 0 12px 32px rgba(30, 36, 52, 0.12) !important;
}

.blog-listing-page .square-post-wrapper .section-id,
.blog-listing-page .square-post-wrapper .name-element {
	display: inline-block;
	margin-bottom: 0.65rem !important;
	font-size: 0.78rem !important;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.72) !important;
}

.blog-listing-page .square-post-wrapper .title-element,
.blog-listing-page .square-post-wrapper h2 {
	margin: 0 0 0.75rem !important;
	font-size: clamp(1.25rem, 0.6vw + 1.1rem, 1.55rem) !important;
	line-height: 1.3 !important;
	letter-spacing: -0.02em;
	color: #fff !important;
}

.blog-listing-page .square-post-wrapper .subtitle-element,
.blog-listing-page .square-post-wrapper p {
	margin: 0 !important;
	font-size: 0.98rem !important;
	line-height: 1.5 !important;
	color: rgba(255, 255, 255, 0.82) !important;
}

.blog-listing-page .square-post-wrapper .blog-post-txt {
	padding: 1.75rem 1.5rem !important;
}

@media (min-width: 768px) {
	.blog-listing-page .square-post-wrapper .blog-post-txt {
		padding: 2.25rem 2rem !important;
	}
}

.blog-listing-page .square-post-wrapper .video-preview {
	position: relative;
	min-height: 100%;
}

.blog-listing-page .square-post-wrapper .video-preview img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 220px;
	object-fit: cover;
	border-radius: 0 !important;
}

.blog-listing-page .square-post-wrapper .video-btn {
	z-index: 2;
}

.blog-listing-page .posts-category {
	margin-bottom: 0.25rem;
}

.blog-listing-page .blog-post.mb-40 {
	margin-bottom: 2rem !important;
}

/* Single blog post — soft reading surface */
.blog-post-page .blog-post-main,
body.single-post .main.inner-page-hero {
	/* Theme uses 180px; keep clearance under tra-menu without the old huge band */
	margin-top: 0 !important;
	padding-top: 6rem !important;
	padding-bottom: 2.25rem !important;
}

@media (min-width: 992px) {
	.blog-post-page .blog-post-main,
	body.single-post .main.inner-page-hero {
		padding-top: 6.75rem !important;
	}
}

.blog-post-page .single-post-title {
	margin: 0 auto 0.5rem;
	max-width: 42rem;
	text-align: left;
}

.blog-post-page .single-post-title .post-tag {
	display: block;
	position: static !important;
	margin: 0 0 0.85rem !important;
	padding: 0 !important;
	float: none !important;
}

.blog-post-page .single-post-title .post-tag,
.blog-post-page .single-post-title .post-categories a {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #57596c !important;
	text-decoration: none;
	background: transparent !important;
}

.blog-post-page .single-post-title .post-categories a:hover {
	color: #0c6ffd !important;
}

.blog-post-page .single-post-title h2,
.blog-post-page .single-post-title .s-40,
.blog-post-page .single-post-title .s-46 {
	margin: 0 0 0.85rem !important;
	padding: 0 !important;
	font-size: clamp(1.65rem, 1vw + 1.25rem, 2.1rem) !important;
	line-height: 1.22 !important;
	letter-spacing: -0.03em;
	color: #1a1d29;
}

.blog-post-page .blog-post-meta {
	margin-top: 0.35rem !important;
}

.blog-post-page .blog-post-meta .p-sm,
.blog-post-page .blog-post-meta time,
.blog-post-page .blog-post-meta a {
	color: #8a8b99 !important;
	font-size: 0.9rem !important;
	font-weight: 500;
}

.blog-post-page .blog-post-img {
	padding-top: 1.5rem !important;
	padding-bottom: 1.25rem !important;
}

.blog-post-page .blog-post-img img {
	border-radius: 14px;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
}

.blog-post-page .entry-content {
	max-width: 42rem;
	margin-left: auto;
	margin-right: auto;
}

.blog-post-page .entry-content > p,
.blog-post-page .entry-content li {
	font-size: 1.02rem;
	line-height: 1.65;
	color: #3a3d4a;
}

.blog-post-page .entry-content > p {
	margin-bottom: 1rem;
}

.blog-post-page .entry-content h4,
.blog-post-page .entry-content h5 {
	margin: 1.75rem 0 0.65rem !important;
	letter-spacing: -0.02em;
	color: #1a1d29;
	line-height: 1.3;
}

.blog-post-page .entry-content h4 {
	font-size: clamp(1.2rem, 0.4vw + 1.05rem, 1.35rem) !important;
}

.blog-post-page .entry-content h5 {
	font-size: 1.08rem !important;
}

.blog-post-page .entry-content ul,
.blog-post-page .entry-content ol {
	margin: 0 0 1rem;
	padding-left: 1.2rem;
}

.blog-post-page .entry-content li + li {
	margin-top: 0.45rem;
}

.blog-post-page .entry-content blockquote {
	margin: 1.5rem 0;
	padding: 1rem 1.25rem;
	border-left: 3px solid #0c6ffd;
	background: rgba(255, 255, 255, 0.55);
	border-radius: 0 12px 12px 0;
	color: #3a3d4a;
}

.blog-post-page .entry-content pre,
.blog-post-page .entry-content code {
	font-size: 0.9rem;
}

.blog-post-page .entry-content pre {
	margin: 1.25rem 0;
	padding: 1rem 1.15rem;
	border-radius: 12px;
	background: #1a1d29;
	color: #f4f4f9;
	overflow-x: auto;
}

.blog-post-page .essb_links {
	margin: 1rem 0 1.25rem !important;
}

.blog-post-page .essb_links li a {
	border-radius: 8px !important;
	box-shadow: none !important;
}

.blog-post-page .post-tags a,
.blog-post-page .tagcloud a,
.blog-post-page a[rel='tag'] {
	display: inline-block;
	margin: 0.2rem 0.35rem 0.2rem 0;
	padding: 0.35rem 0.7rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid #e2e2ea;
	color: #57596c !important;
	font-size: 0.82rem;
	font-weight: 600;
	text-decoration: none;
}

.blog-post-page .comments-area {
	margin-top: 2.5rem;
	padding-top: 1.75rem;
	border-top: 1px solid #e2e2ea;
	max-width: 42rem;
	margin-left: auto;
	margin-right: auto;
}

.blog-post-page .comments-area h5,
.blog-post-page #reply-title {
	font-size: 1.25rem !important;
	letter-spacing: -0.02em;
	color: #1a1d29 !important;
	margin-bottom: 0.5rem !important;
}

.blog-post-page .comment-notes,
.blog-post-page .required-field-message {
	color: #757575 !important;
	font-size: 0.92rem;
}

.blog-post-page .comment-form .form-control,
.blog-post-page .comment-form textarea,
.blog-post-page .comment-form input[type='text'],
.blog-post-page .comment-form input[type='email'],
.blog-post-page .comment-form input[type='url'] {
	background: #fff !important;
	border: 1px solid #e2e2ea !important;
	border-radius: 12px !important;
	color: #1a1d29 !important;
	box-shadow: none !important;
}

.blog-post-page .comment-form .form-control:focus,
.blog-post-page .comment-form textarea:focus,
.blog-post-page .comment-form input:focus {
	border-color: #0c6ffd !important;
	outline: none;
}

.blog-post-page .comment-form .btn,
.blog-post-page .comment-form input[type='submit'] {
	border-radius: 10px !important;
	font-weight: 600;
}

.blog-listing-page .theme-pagination .page-numbers {
	min-width: 2.25rem;
	height: 2.25rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	border: 1px solid #e2e2ea;
	background: rgba(255, 255, 255, 0.65);
	color: #3a3d4a;
	text-decoration: none;
	font-weight: 600;
}

.blog-listing-page .theme-pagination .page-numbers.current,
.blog-listing-page .theme-pagination .page-numbers:hover {
	border-color: rgba(12, 111, 253, 0.35);
	color: #0c6ffd;
	background: #fff;
}

.blog-listing-page .theme-pagination .prev.page-numbers,
.blog-listing-page .theme-pagination .next.page-numbers {
	border: none;
	background: transparent;
}

.about-us-page .inner-page-hero.about-section {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.about-us-page .inner-page-hero.about-section .elementor-widget-wrap {
	padding-bottom: 0 !important;
}

.about-us-page .inner-page-hero.about-section .elementor-widget-container {
	margin-bottom: 20px;
}

.about-us-page .about-section .txt-block {
	padding-top: 0.85rem;
}

.about-us-page .about-section .title-element {
	margin-bottom: 0.75rem !important;
}

.about-us-page .about-section .subtitle-element {
	font-size: clamp(1.05rem, 0.25vw + 0.95rem, 1.15rem) !important;
	line-height: 1.45;
	max-width: 40rem;
	margin-bottom: 0 !important;
}

.about-us-page .about-section .subtitle-element.p-lg {
	color: #757575;
}


.about-us-page .elementor-section.py-100,
.about-us-page .content-section.py-100 {
	padding-top: 2.5rem !important;
	padding-bottom: 3.5rem !important;
}

.about-us-page .team-member {
	margin-bottom: 1.25rem !important;
}

.about-us-page #team-2 .team-member-name {
	font-size: 1rem !important;
	line-height: 1.3;
}

.about-us-page #team-2 .team-member-designation {
	font-size: 0.875rem;
	line-height: 1.35;
}

.about-us-page .mb-60 {
	margin-bottom: 2rem !important;
}

/* Space between About gallery images and the copy under them */
.about-us-page .about-2-img {
	margin-bottom: 1.25rem;
}

.about-us-page .elementor-element-8d8f3f0 {
	padding-top: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0.5rem !important;
}

.about-us-page .elementor-element-3d32830 {
	padding-top: 0.65rem !important;
}

.about-us-page .elementor-element-3d32830 .title-element {
	margin-top: 0.25rem !important;
	margin-bottom: 0.75rem !important;
}

/* Newsletter strip — compact centered (About + Blog) */
.about-us-page .about-newsletter,
.blog-listing-page .about-newsletter {
	padding: 2.5rem 0 3rem !important;
	background: transparent !important;
}

.about-newsletter__inner {
	max-width: 36rem;
	margin: 0 auto;
	text-align: center;
}

.about-newsletter__title {
	margin: 0 0 0.5rem !important;
	font-size: clamp(1.375rem, 0.8vw + 1.1rem, 1.625rem) !important;
	line-height: 1.25 !important;
	letter-spacing: -0.02em;
	font-weight: 700;
}

.about-newsletter__subtitle {
	margin: 0 0 1.25rem !important;
	font-size: clamp(1rem, 0.2vw + 0.9rem, 1.05rem);
	line-height: 1.45;
	color: #757575;
}

.about-newsletter__form .newsletter-form {
	margin-top: 0 !important;
}

.about-newsletter__form .input-group {
	flex-wrap: nowrap;
	gap: 0.5rem;
	background: transparent;
	border: none;
	padding: 0;
}

.about-newsletter__form .form-control {
	height: 48px !important;
	border-radius: 8px !important;
	border: 1px solid #d8d8e2 !important;
	background: #fff !important;
	font-size: 0.95rem !important;
}

.about-newsletter__form .btn {
	height: 48px !important;
	padding: 0 1.15rem !important;
	font-size: 0.9rem !important;
	border-radius: 8px !important;
	white-space: nowrap;
}

@media (max-width: 575.98px) {
	.about-newsletter__form .input-group {
		flex-wrap: wrap;
	}

	.about-newsletter__form .form-control,
	.about-newsletter__form .btn,
	.about-newsletter__form .input-group-btn {
		width: 100%;
	}
}

@media (max-width: 767.98px) {
	.contact-page > .container {
		max-width: 26rem;
	}

	.contact-page .contact-channel {
		max-width: none;
	}
}

/* Help center — pillar nav + tidy FAQ (aligned with contact / home) */
#faqs-4.faqs-section {
	padding-top: 2rem !important;
	padding-bottom: 3.5rem !important;
}

#faqs-4.faqs-section > .container {
	max-width: 720px;
}

#faqs-4 .tabs-nav {
	margin-bottom: 0;
}

#faqs-4 .tabs-1 {
	display: flex !important;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
	gap: 1.75rem;
	width: auto;
	max-width: 100%;
	margin: 0 auto 2.25rem !important;
	padding: 0.5rem 0 0;
	list-style: none;
}

#faqs-4 .tabs-1 li,
#faqs-4 .tabs-1 li.current,
#faqs-4 .tabs-1 li.current:hover,
#faqs-4 .tabs--theme .tabs-1 li.current,
#faqs-4 .tabs--theme .tabs-1 li.current:hover {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	flex: 0 0 auto;
	width: 8.25rem;
	min-width: 0 !important;
	max-width: 8.25rem;
	padding: 0.25rem 0.15rem 0.7rem !important;
	margin: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	cursor: pointer;
	position: relative;
	transition: color 180ms ease, opacity 180ms ease;
}

#faqs-4 .tabs-1 li::after {
	content: "";
	position: absolute;
	left: 20%;
	right: 20%;
	bottom: 0;
	height: 2px;
	border-radius: 2px;
	background: transparent;
	transition: background 180ms ease;
}

#faqs-4 .tabs-1 li.current::after {
	background: var(--bs-primary, #0c6ffd);
}

#faqs-4 .tabs-1 li .tab-link-ico {
	line-height: 1;
}

#faqs-4 .tabs-1 li [class*="flaticon-"],
#faqs-4 .tabs-1 li [class*="flaticon-"]:before,
#faqs-4 .tabs-1 li [class*="flaticon-"]:after,
#faqs-4 .tabs-1 li span {
	font-size: 1.65rem !important;
	line-height: 1 !important;
	color: #0c6ffd !important;
}

#faqs-4 .tabs-1 li:not(.current) [class*="flaticon-"],
#faqs-4 .tabs-1 li:not(.current) [class*="flaticon-"]:before,
#faqs-4 .tabs-1 li:not(.current) [class*="flaticon-"]:after,
#faqs-4 .tabs-1 li:not(.current) span {
	color: #0c6ffd !important;
	opacity: 0.85;
}

#faqs-4 .tabs-1 li p.tab-title,
#faqs-4 .tabs-1 li.current p.tab-title {
	margin: 0 !important;
	font-size: 0.95rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: #1a1d29 !important;
	text-align: center;
}

#faqs-4 .tabs-1 li:not(.current) p.tab-title {
	font-weight: 600 !important;
	color: #5c6578 !important;
}

#faqs-4 .tabs-content {
	max-width: 40rem;
	margin: 0 auto;
}

#faqs-4 .tabs-content > .row > [class*="col-"] {
	max-width: 100%;
	flex: 0 0 100%;
}

#faqs-4 .accordion {
	margin: 0;
	padding: 0;
	list-style: none;
}

#faqs-4 .accordion-item {
	border-top: 1px solid #e6e9ef;
}

#faqs-4 .accordion-item:last-child {
	border-bottom: 1px solid #e6e9ef;
}

#faqs-4 .accordion-thumb {
	padding: 1.05rem 2rem 1.05rem 0 !important;
}

#faqs-4 .question.s-22 {
	font-size: 1.05rem !important;
	line-height: 1.4 !important;
	letter-spacing: -0.01em;
}

#faqs-4 .accordion-panel {
	padding-bottom: 1rem !important;
	padding-right: 1.5rem;
	font-size: 0.95rem;
	line-height: 1.5;
}

/* Bottom CTA */
.help-cta-section {
	padding: 3.5rem 0 4rem;
}

.help-cta-inner {
	max-width: 960px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2.5rem;
	align-items: center;
}

.help-cta-copy h2 {
	margin: 0 0 0.6rem;
}

.help-cta-copy .p-lg {
	margin: 0 0 1.25rem;
	font-size: 1.05rem !important;
	line-height: 1.45;
}

.help-cta-media img {
	display: block;
	width: 100%;
	max-width: 28rem;
	height: auto;
	margin-inline: auto;
}

@media (max-width: 767.98px) {
	.help-hero {
		padding-bottom: 0.25rem !important;
	}

	.help-hero .inner-page-title {
		padding-top: 0.55rem;
	}

	.help-hero .inner-page-title h1 {
		font-size: clamp(1.65rem, 6.5vw, 2rem) !important;
		line-height: 1.2 !important;
	}

	.help-hero .inner-page-title p {
		margin-top: 0.35rem !important;
		font-size: 0.98rem !important;
	}

	#faqs-4.faqs-section {
		padding-top: 0.9rem !important;
		padding-bottom: 2.75rem !important;
	}

	#faqs-4.faqs-section > .container {
		max-width: none;
		padding-left: 0;
		padding-right: 0;
	}

	#faqs-4 .tabs-nav {
		position: relative;
		margin: 0 0 1.35rem;
	}

	#faqs-4 .tabs-nav::after {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0.35rem;
		width: 2rem;
		pointer-events: none;
		background: linear-gradient(
			to right,
			transparent,
			var(--ma-bg, #f4f4f9) 85%
		);
		z-index: 1;
	}

	/* Mobile: horizontal chip strip instead of cramped 2×2 icon grid */
	#faqs-4 .tabs-1 {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: flex-start !important;
		align-items: stretch;
		gap: 0.5rem;
		width: 100%;
		max-width: none;
		margin: 0 !important;
		padding: 0.15rem 1.15rem 0.35rem !important;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		scroll-snap-type: x proximity;
	}

	#faqs-4 .tabs-1::-webkit-scrollbar {
		display: none;
	}

	#faqs-4 .tabs-1 li,
	#faqs-4 .tabs-1 li.current,
	#faqs-4 .tabs-1 li.current:hover,
	#faqs-4 .tabs--theme .tabs-1 li.current,
	#faqs-4 .tabs--theme .tabs-1 li.current:hover {
		flex: 0 0 auto;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		gap: 0.45rem;
		width: auto;
		min-width: 0 !important;
		max-width: none;
		padding: 0.55rem 0.9rem !important;
		border: 1px solid var(--ma-border, #e2e2ea) !important;
		border-radius: 999px !important;
		background: var(--ma-surface, rgba(255, 255, 255, 0.72)) !important;
		box-shadow: none !important;
		scroll-snap-align: start;
	}

	#faqs-4 .tabs-1 li::after {
		display: none;
	}

	#faqs-4 .tabs-1 li.current {
		border-color: transparent !important;
		background: var(--ma-accent-soft, rgba(12, 111, 253, 0.14)) !important;
	}

	#faqs-4 .tabs-1 li .tab-link-ico {
		display: flex;
		align-items: center;
		line-height: 1;
	}

	#faqs-4 .tabs-1 li [class*="flaticon-"],
	#faqs-4 .tabs-1 li [class*="flaticon-"]:before,
	#faqs-4 .tabs-1 li [class*="flaticon-"]:after,
	#faqs-4 .tabs-1 li span {
		font-size: 1.05rem !important;
		opacity: 1;
	}

	#faqs-4 .tabs-1 li p.tab-title,
	#faqs-4 .tabs-1 li.current p.tab-title,
	#faqs-4 .tabs-1 li:not(.current) p.tab-title {
		font-size: 0.875rem !important;
		font-weight: 600 !important;
		line-height: 1.2 !important;
		white-space: nowrap;
		text-align: left;
	}

	#faqs-4 .tabs-1 li.current p.tab-title {
		color: var(--ma-accent, #0c6ffd) !important;
		font-weight: 700 !important;
	}

	#faqs-4 .tabs-1 li:not(.current) p.tab-title {
		color: var(--ma-muted, #57596c) !important;
	}

	#faqs-4 .tabs-content {
		max-width: none;
		padding: 0 1.15rem;
	}

	#faqs-4 .accordion-thumb {
		padding: 0.95rem 1.65rem 0.95rem 0 !important;
	}

	#faqs-4 .question.s-22 {
		font-size: 1rem !important;
	}

	#faqs-4 .accordion-panel {
		padding-right: 0.25rem;
		font-size: 0.92rem;
	}

	.help-cta-section {
		padding: 2.5rem 0 3rem;
	}

	.help-cta-inner {
		grid-template-columns: 1fr;
		gap: 1.75rem;
		text-align: center;
		padding: 0 1.15rem;
	}

	.help-cta-copy .btn {
		margin-inline: auto;
	}
}

/* -------------------------------------------------------------------------- */
/* Home dark mode — tweak these CSS variables to try palettes                  */
/* -------------------------------------------------------------------------- */

body {
	--ma-bg: #f4f4f9;
	--ma-surface: #ffffff;
	--ma-surface-2: #eef0f6;
	--ma-text: #1a1d29;
	--ma-muted: #57596c;
	--ma-border: rgba(26, 29, 41, 0.1);
	--ma-accent: #0c6ffd;
	--ma-accent-soft: rgba(12, 111, 253, 0.12);
	--ma-header-ink: #1a1d29;
}

body.theme--dark,
html.theme--dark-pending body {
	--ma-bg: #12161d;
	--ma-surface: #1a2030;
	--ma-surface-2: #232b3d;
	--ma-text: #e8ebf2;
	--ma-muted: #9aa3b5;
	--ma-border: rgba(232, 235, 242, 0.12);
	--ma-accent: #4d9fff;
	--ma-accent-soft: rgba(77, 159, 255, 0.18);
	--ma-header-ink: #e8ebf2;
	color-scheme: dark;
	background-color: var(--ma-bg) !important;
	color: var(--ma-muted);
}

html.theme--dark-pending {
	background-color: #12161d;
	color-scheme: dark;
}

/* Page loader — brand + smaller spinner (70% of theme default 100px) */
#loading.loading--theme {
	background-color: #f4f4f9;
}

body.theme--light #loading.loading--theme {
	background-color: var(--ma-bg, #f4f4f9);
}

html.theme--dark-pending #loading.loading--theme,
body.theme--dark #loading.loading--theme {
	background-color: #12161d !important;
}

#loading #loading-center {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1.15rem;
	width: auto;
	height: auto;
	margin: 0;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	animation: none;
}

#loading .loading-brand {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

#loading .loading-logo {
	display: block;
	width: auto;
	height: 36px;
	max-width: 168px;
}

#loading .loading-logo--for-dark {
	display: none;
}

html.theme--dark-pending #loading .loading-logo--for-light,
body.theme--dark #loading .loading-logo--for-light {
	display: none;
}

html.theme--dark-pending #loading .loading-logo--for-dark,
body.theme--dark #loading .loading-logo--for-dark {
	display: block;
}

#loading .loader,
#loading.loading--theme .loader {
	width: 70px;
	height: 70px;
	flex: 0 0 auto;
	border-width: 2px;
	border-color: transparent var(--ma-accent, #0c6ffd);
}

#loading .loader::after,
#loading.loading--theme .loader::after {
	border-width: 35px;
	border-color: transparent rgba(12, 111, 253, 0.16);
}

html.theme--dark-pending #loading.loading--theme .loader,
body.theme--dark #loading.loading--theme .loader {
	border-color: transparent #4d9fff;
}

html.theme--dark-pending #loading.loading--theme .loader::after,
body.theme--dark #loading.loading--theme .loader::after {
	border-color: transparent rgba(77, 159, 255, 0.22);
}

/* Header logo helpers (all breakpoints) */
.header-section .desktoplogo .brand-logo-link,
.wsmobileheader .brand-logo-link {
	display: flex;
	align-items: center;
	line-height: 0;
}

.brand-logo,
.desktoplogo img.brand-logo,
.wsmobileheader img.brand-logo {
	display: block;
	width: auto;
	height: 34px;
	max-width: 170px;
}

.wsmobileheader img.brand-logo {
	height: 28px;
	max-width: 132px;
}

/* Desktop nav — flex row only above mobile/drawer breakpoint */
@media (min-width: 992px) {
	.header-section .wsmainwp {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;
		min-height: 50px;
	}

	.header-section .desktoplogo {
		float: none;
		display: flex;
		align-items: center;
		line-height: 0;
		min-height: 0;
		padding: 0;
		margin: 0;
	}

	.header-section .desktoplogo img.brand-logo {
		height: 42px;
		max-width: 198px;
	}

	.header-section .wsmenu {
		float: none;
		margin-left: auto;
		display: flex;
		align-items: center;
	}

	.header-section .wsmenu > .wsmenu-list {
		display: flex !important;
		align-items: center;
		float: none;
		width: auto;
		margin: 0;
		padding: 0;
		gap: 0.1rem;
	}

	.header-section .wsmenu > .wsmenu-list > li {
		float: none !important;
		display: flex !important;
		align-items: center;
		height: auto;
	}

	.header-section .wsmenu > .wsmenu-list > li > a.h-link,
	.header-section .wsmenu > .wsmenu-list > li > a:not(.btn) {
		padding-left: 0.55rem !important;
		padding-right: 0.55rem !important;
		letter-spacing: 0.01em;
		white-space: nowrap;
	}

	.header-section .wsmenu > .wsmenu-list > li.menu-theme > .theme-toggle,
	.header-section .wsmenu > .wsmenu-list > li.menu-lang > a.menu-lang-link {
		padding-left: 0.35rem !important;
		padding-right: 0.35rem !important;
	}

	.header-section .wsmenu > .wsmenu-list > li.menu-cta {
		margin-left: 0.35rem;
		align-items: center;
	}

	/* Drawer-only brand mark — never in desktop nav */
	.header-section .wsmenu > .wsmenu-list > li.menu-drawer-brand,
	.wsmenu > .wsmenu-list > li.menu-drawer-brand {
		display: none !important;
	}

	.header-section .wsmenu > .wsmenu-list > li.menu-cta > a.btn,
	.header-section .wsmenu > .wsmenu-list > li.nl-simple > a.btn,
	.wsmenu > .wsmenu-list > li a.btn {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		align-self: center;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		line-height: 1.15 !important;
		height: 2.25rem !important;
		min-height: 2.25rem !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		font-size: 0.875rem !important;
		font-weight: 700 !important;
	}
}

/* Theme toggle */
.menu-theme,
.theme-toggle--mobile {
	display: none !important;
}

@media (min-width: 992px) {
	body .menu-theme {
		display: flex !important;
		align-items: center !important;
		list-style: none !important;
		height: auto;
	}
}

body .menu-theme::before,
body .menu-theme::after,
body .wsmenu-list > li.menu-theme::marker {
	content: none !important;
	display: none !important;
}

body .theme-toggle--mobile {
	display: inline-flex !important;
}

.wsmenu > .wsmenu-list > li.menu-theme > .theme-toggle {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 2.25rem !important;
	height: 2.25rem !important;
	min-width: 2.25rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	line-height: 1 !important;
	font-size: 0 !important;
	text-indent: 0 !important;
	color: var(--ma-header-ink, #1a1d29) !important;
}

.theme-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	margin: 0;
	padding: 0;
	border: none;
	background: transparent;
	color: var(--ma-header-ink, #1a1d29);
	cursor: pointer;
	transition: color 0.15s ease;
}

.theme-toggle:hover {
	color: var(--ma-accent, #0c6ffd) !important;
	background: transparent !important;
}

.theme-toggle:focus-visible {
	outline: 2px solid var(--ma-accent, #0c6ffd);
	outline-offset: 2px;
}

.theme-toggle svg {
	display: block;
	width: 18px;
	height: 18px;
}

.theme-toggle__moon,
.theme-toggle__sun {
	display: none;
	line-height: 0;
}

body:not(.theme--dark) .theme-toggle__moon {
	display: inline-flex;
}

body.theme--dark .theme-toggle__sun {
	display: inline-flex;
}

.mobile-header-tools {
	display: none;
	position: absolute;
	right: 3.35rem;
	top: env(safe-area-inset-top, 0px);
	height: 60px;
	align-items: center;
	gap: 0.25rem;
	z-index: 5;
}

@media (max-width: 991.98px) {
	.mobile-header-tools {
		display: flex;
	}

	/* Sticky bar with safe-area + breathing room for logo */
	.wsmobileheader {
		display: flex !important;
		align-items: center;
		justify-content: flex-start;
		box-sizing: border-box !important;
		padding: calc(0.45rem + env(safe-area-inset-top, 0px)) 0.65rem 0.45rem 1rem !important;
		height: auto !important;
		min-height: calc(64px + env(safe-area-inset-top, 0px)) !important;
		line-height: normal !important;
	}

	.wsmobileheader .brand-logo-link {
		position: relative;
		left: auto;
		top: auto;
		display: flex !important;
		align-items: center;
		padding: 0;
		margin: 0;
		z-index: 2;
		height: auto;
		min-height: 2.5rem;
	}

	.wsmobileheader img.brand-logo {
		height: 32px !important;
		max-width: 148px !important;
	}

	.mobile-header-tools {
		top: calc(0.45rem + env(safe-area-inset-top, 0px));
		height: calc(100% - 0.9rem - env(safe-area-inset-top, 0px));
		min-height: 2.5rem;
		right: 3.5rem;
	}

	/* Keep theme’s hamburger geometry — our old padding crushed it to ~8px */
	.wsanimated-arrow {
		position: absolute !important;
		right: 0.15rem !important;
		top: calc(50% + env(safe-area-inset-top, 0px) / 2) !important;
		transform: translateY(-50%) !important;
		margin: 0 !important;
		padding: 1.15rem 1.75rem 1.15rem 0.75rem !important;
		width: auto !important;
		height: auto !important;
		z-index: 102;
	}

	.wsanimated-arrow span {
		top: 50% !important;
		margin-top: -1.5px;
	}

	.menu-lang-link--mobile {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.3rem;
		width: auto;
		min-width: 2.35rem;
		height: 2.35rem;
		padding: 0 0.3rem;
		line-height: 1;
		font-size: 0.75rem;
		font-weight: 700;
		letter-spacing: 0.04em;
		color: inherit;
		text-decoration: none;
	}

	.theme-toggle--mobile {
		position: static;
		transform: none;
		width: 2.35rem !important;
		height: 2.35rem !important;
	}

	/*
	 * Mobile drawer
	 * Theme expects a right panel + left dim strip. Forcing list width:100%
	 * put the overlay on top of links — keep a real panel width.
	 * Also skip the theme’s header/page shove (margin-right) so the bar
	 * stays put and the close X remains usable.
	 */
	:root {
		--ma-drawer-w: min(86vw, 320px);
	}

	.wsmenu {
		z-index: 10005 !important;
	}

	.wsmenu > .wsmenu-list {
		display: block !important;
		float: right !important;
		width: var(--ma-drawer-w) !important;
		max-width: 100%;
		height: 100vh !important;
		min-height: 100vh !important;
		margin-right: calc(-1 * var(--ma-drawer-w)) !important;
		padding: calc(4.25rem + env(safe-area-inset-top, 0px)) 0
			calc(1.75rem + env(safe-area-inset-bottom, 0px)) !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;
		background: #fbfbfd !important;
		box-shadow: -12px 0 36px rgba(15, 23, 42, 0.18);
		text-align: left !important;
		position: relative;
		z-index: 2;
		font-family: var(--martex-headings-font-family, "Plus Jakarta Sans", sans-serif);
	}

	.wsactive .wsmenu > .wsmenu-list {
		margin-right: 0 !important;
	}

	.wsactive .wsmenu > .wsmenu-list > li,
	.header-section .wsmenu > .wsmenu-list > li {
		display: block !important;
		float: none !important;
		width: 100% !important;
		height: auto !important;
		clear: both !important;
	}

	/* Full-bleed dim behind the panel */
	.overlapblackbg {
		width: 100% !important;
		background-color: rgba(8, 12, 20, 0.55) !important;
		backdrop-filter: blur(2px);
		-webkit-backdrop-filter: blur(2px);
		z-index: 1 !important;
	}

	.wsactive .wsmenu .overlapblackbg {
		z-index: 1 !important;
	}

	/* Do not shove the sticky bar / page when drawer opens */
	.wsactive .wsmobileheader,
	.wsactive .wsmenucontainer {
		margin-right: 0 !important;
	}

	.wsactive .wsmobileheader {
		z-index: 10020 !important;
		/* Solid bar so logo + X sit together on top of the drawer */
		background-color: #fbfbfd !important;
		box-shadow: none !important;
	}

	body.theme--dark .wsactive .wsmobileheader {
		background-color: #0f141c !important;
	}

	/* Keep MedAlert logo beside the close X; only hide theme/lang tools */
	.wsactive .wsmobileheader .mobile-header-tools {
		opacity: 0;
		pointer-events: none;
	}

	.wsactive .wsmobileheader .brand-logo-link {
		opacity: 1 !important;
		pointer-events: auto !important;
		z-index: 10022 !important;
		position: relative;
	}

	.wsactive .wsmobileheader img.brand-logo {
		height: 30px !important;
		max-width: 148px !important;
	}

	.wsactive .wsanimated-arrow {
		right: 0.35rem !important;
		top: calc(0.85rem + env(safe-area-inset-top, 0px)) !important;
		transform: none !important;
		z-index: 10021 !important;
		padding: 0.85rem !important;
		margin: 0 !important;
		width: 2.75rem !important;
		height: 2.75rem !important;
		box-sizing: border-box !important;
	}

	/* Real X — theme/responsive offsets otherwise make a star */
	.wsactive .wsanimated-arrow span {
		top: 50% !important;
		left: 50% !important;
		margin: 0 !important;
		width: 0 !important;
		height: 0 !important;
		background: transparent !important;
		transform: translate(-50%, -50%);
	}

	.wsactive .wsanimated-arrow span:before,
	.wsactive .wsanimated-arrow span:after {
		top: 50% !important;
		bottom: auto !important;
		left: 50% !important;
		margin-top: -1.5px !important;
		margin-left: -11px !important;
		width: 22px !important;
		height: 3px !important;
	}

	.wsactive .wsanimated-arrow span:before {
		transform: rotate(45deg) !important;
	}

	.wsactive .wsanimated-arrow span:after {
		transform: rotate(-45deg) !important;
	}

	/* Brand lives in the sticky bar next to X — hide duplicate inside the list */
	.wsmenu > .wsmenu-list > li.menu-drawer-brand {
		display: none !important;
	}

	/* Tools already live in the top bar — hide duplicates in drawer */
	.wsmenu > .wsmenu-list > li.menu-theme,
	.wsmenu > .wsmenu-list > li.menu-lang {
		display: none !important;
	}

	body.home .wsmenu > .wsmenu-list > li.menu-theme {
		display: none !important;
	}

	.wsmenu > .wsmenu-list > li:not(.menu-cta):not(.menu-theme):not(.menu-lang):not(.menu-drawer-brand) {
		border-bottom: 1px solid rgba(15, 23, 42, 0.08);
	}

	.wsmenu > .wsmenu-list > li > a.h-link {
		display: block !important;
		white-space: normal !important;
		padding: 0.95rem 1.35rem !important;
		font-family: var(--martex-headings-font-family, "Plus Jakarta Sans", sans-serif) !important;
		font-size: 1.125rem !important;
		line-height: 1.3 !important;
		font-weight: 600 !important;
		letter-spacing: -0.02em !important;
		color: #1a1d29 !important;
		border-bottom: 0 !important;
	}

	.wsmenu > .wsmenu-list > li > a.h-link:hover,
	.wsmenu > .wsmenu-list > li > a.h-link:focus {
		background: rgba(15, 23, 42, 0.04) !important;
		color: var(--ma-accent, #0c6ffd) !important;
	}

	.wsmenu > .wsmenu-list > li.current-menu-item > a.h-link,
	.wsmenu > .wsmenu-list > li.current_page_item > a.h-link {
		color: var(--ma-accent, #0c6ffd) !important;
	}

	.wsmenu > .wsmenu-list > li > .wsmenu-click {
		height: 100% !important;
		min-height: 3.25rem;
	}

	.wsmenu > .wsmenu-list > li > .wsmenu-click > i {
		margin: 1.15rem 1.25rem 0 0 !important;
	}

	/* Submenu: full-bleed list, no inset card */
	.wsmenu > .wsmenu-list > li > ul.sub-menu,
	.wsmenu > .wsmenu-list > li > ul.sub-menu.martex-menu {
		display: none;
		position: relative !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0.15rem 0 0.45rem !important;
		background: transparent !important;
		border: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		text-align: left !important;
		grid-template-columns: none !important;
	}

	.wsmenu > .wsmenu-list > li > ul.sub-menu > li,
	.wsmenu > .wsmenu-list > li > ul.sub-menu.martex-menu > li {
		width: 100% !important;
		border: 0 !important;
	}

	.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a,
	.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a.h-link {
		display: block !important;
		padding: 0.7rem 1.35rem 0.7rem 1.85rem !important;
		font-family: var(--martex-headings-font-family, "Plus Jakarta Sans", sans-serif) !important;
		font-size: 0.98rem !important;
		font-weight: 500 !important;
		letter-spacing: -0.015em !important;
		line-height: 1.35 !important;
		color: #57596c !important;
		background: transparent !important;
		border: 0 !important;
		border-left: 2px solid transparent !important;
		text-decoration: none !important;
	}

	.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a:hover,
	.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a:focus,
	.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a.h-link:hover,
	.wsmenu > .wsmenu-list > li > ul.sub-menu > li > a.h-link:focus {
		color: var(--ma-accent, #0c6ffd) !important;
		background: rgba(12, 111, 253, 0.06) !important;
		border-left-color: var(--ma-accent, #0c6ffd) !important;
		text-decoration: none !important;
	}

	.wsmenu > .wsmenu-list > li.menu-cta {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 1.5rem 0 0.75rem !important;
		padding: 0 1.25rem !important;
		border: 0 !important;
		box-sizing: border-box !important;
	}

	.wsmenu > .wsmenu-list > li.menu-cta > a.btn,
	.wsmenu > .wsmenu-list > li a.btn {
		display: flex !important;
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 2.75rem !important;
		margin: 0 !important;
		padding: 0.8rem 1.2rem !important;
		justify-content: center;
		align-items: center;
		border-radius: 0.45rem !important;
		font-family: var(--martex-headings-font-family, "Plus Jakarta Sans", sans-serif) !important;
		font-size: 0.92rem !important;
		font-weight: 650 !important;
		letter-spacing: -0.015em !important;
		box-shadow: none !important;
		border-bottom: 0 !important;
		background: transparent !important;
		color: #1a1d29 !important;
		border: 1.5px solid rgba(26, 29, 41, 0.22) !important;
		float: none !important;
	}

	.wsmenu > .wsmenu-list > li.menu-cta > a.btn:hover,
	.wsmenu > .wsmenu-list > li.menu-cta > a.btn:focus {
		background: var(--ma-accent, #0c6ffd) !important;
		border-color: var(--ma-accent, #0c6ffd) !important;
		color: #fff !important;
	}

	/* Dark sticky bar + dark drawer */
	body.theme--dark .tra-menu .wsmobileheader,
	body.theme--dark .wsmobileheader {
		background-color: #0e1218 !important;
		box-shadow: 0 1px 0 rgba(232, 235, 242, 0.08);
	}

	body.theme--dark .wsanimated-arrow span,
	body.theme--dark .wsanimated-arrow span:before,
	body.theme--dark .wsanimated-arrow span:after {
		background: #e8ebf2 !important;
	}

	body.theme--dark .menu-lang-link--mobile {
		color: var(--ma-header-ink) !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list {
		background: #0f141c !important;
		box-shadow: -12px 0 40px rgba(0, 0, 0, 0.45);
	}

	body.theme--dark .wsmenu > .wsmenu-list > li.menu-drawer-brand {
		border-bottom-color: rgba(232, 235, 242, 0.1);
	}

	body.theme--dark .wsmenu > .wsmenu-list > li:not(.menu-cta):not(.menu-theme):not(.menu-lang):not(.menu-drawer-brand) {
		border-bottom-color: rgba(232, 235, 242, 0.1);
	}

	body.theme--dark .wsmenu > .wsmenu-list > li > a.h-link {
		color: #e8ebf2 !important;
		border-bottom: 0 !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list > li > a.h-link:hover,
	body.theme--dark .wsmenu > .wsmenu-list > li > a.h-link:focus {
		background: rgba(232, 235, 242, 0.05) !important;
		color: var(--ma-accent, #4d9fff) !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list > li.current-menu-item > a.h-link,
	body.theme--dark .wsmenu > .wsmenu-list > li.current_page_item > a.h-link {
		color: var(--ma-accent, #4d9fff) !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list > li > ul.sub-menu,
	body.theme--dark .wsmenu > .wsmenu-list > li > ul.sub-menu.martex-menu {
		background: transparent !important;
		border: 0 !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a,
	body.theme--dark .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a.h-link {
		color: #9aa3b5 !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a:hover,
	body.theme--dark .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a:focus,
	body.theme--dark .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a.h-link:hover,
	body.theme--dark .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a.h-link:focus {
		color: #e8ebf2 !important;
		background: rgba(77, 159, 255, 0.1) !important;
		border-left-color: var(--ma-accent, #4d9fff) !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list > li > .wsmenu-click > i:before {
		border-color: rgba(232, 235, 242, 0.7) !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list > li.menu-cta > a.btn,
	body.theme--dark .wsmenu > .wsmenu-list > li a.btn {
		background: transparent !important;
		color: #e8ebf2 !important;
		border: 1.5px solid rgba(232, 235, 242, 0.28) !important;
	}

	body.theme--dark .wsmenu > .wsmenu-list > li.menu-cta > a.btn:hover,
	body.theme--dark .wsmenu > .wsmenu-list > li.menu-cta > a.btn:focus {
		background: var(--ma-accent, #4d9fff) !important;
		border-color: var(--ma-accent, #4d9fff) !important;
		color: #0b1020 !important;
	}

	/* Hero: clear sticky bar + denser, thumb-friendly copy
	   Chrome (esp. iOS) was letting Elementor's -50px column margin pull the
	   title flush under the navbar while Safari looked fine — kill it hard and
	   keep clearance on padding (not margin) so it can't collapse. */
	body.home .hero-section.hero-5,
	body.home .hero-section.hero-5.elementor-top-section,
	body.home .elementor-element-d70cf83.hero-section.hero-5 {
		padding: calc(64px + 0.85rem + env(safe-area-inset-top, 0px)) 0 0 !important;
	}

	body.home .hero-section.hero-5 > .elementor-container > .elementor-column > .elementor-widget-wrap,
	body.home .elementor-element-3938db4 > .elementor-element-populated,
	body.home .elementor-element-3938db4 > .elementor-widget-wrap {
		margin-top: 0 !important;
		margin-block-start: 0 !important;
		padding-top: 0.15rem !important;
	}

	body.home .hero-section .elementor-container.elementor-column-gap-extended {
		--e-column-margin: 0;
	}

	body.home .hero-section .elementor-inner-section .elementor-container {
		padding-left: 1.15rem !important;
		padding-right: 1.15rem !important;
	}

	body.home .hero-section h2.title-element {
		font-size: clamp(1.45rem, 5.5vw, 1.75rem) !important;
		line-height: 1.2 !important;
		margin-top: 0 !important;
		margin-bottom: 0.6rem !important;
		padding-top: 0;
	}

	body.home .hero-section .subtitle-element,
	body.home .hero-section .hero-lede {
		font-size: 0.92rem !important;
		line-height: 1.45 !important;
		margin-bottom: 1rem !important;
	}

	body.home .hero-section .btn-trait-group {
		display: flex !important;
		flex-direction: column;
		align-items: stretch;
		width: 100%;
		gap: 0.75rem !important;
		margin-top: 0 !important;
		margin-bottom: 0.15rem !important;
	}

	/* Spacing to CTAs lives in progress padding-bottom (avoids margin collapse) */
	body.home .hero-section .hero-lede-carousel {
		margin-bottom: 0 !important;
	}

	body.home .hero-section .btn-trait-group .btn {
		width: 100%;
		justify-content: center;
		min-height: 2.85rem;
		padding: 0.85rem 1.25rem;
	}

	body.home .hero-section .elementor-inner-section .elementor-col-50 {
		margin: 0 !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	body.home .hero-section .elementor-inner-section .elementor-col-50 + .elementor-col-50 {
		margin-top: -0.85rem !important;
	}

	body.home .hero-section .img-block {
		margin-top: -0.55rem !important;
		margin-bottom: -2rem !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		text-align: center;
		position: relative;
		z-index: 2;
	}

	body.home .hero-section .img-block .elementor-image,
	body.home .hero-section .img-block .elementor-widget-container {
		margin: 0 !important;
		padding: 0 !important;
	}

	body.home .hero-section .img-block img {
		width: min(100%, 300px) !important;
		max-width: 100% !important;
		height: auto !important;
		margin: 0 auto -0.5rem !important;
		display: block;
		border-radius: 0;
	}

	/* Flush wave to next section — no hero bottom padding / gap */
	body.home .hero-section.hero-5,
	body.home .hero-section.hero-5.elementor-top-section {
		padding-bottom: 0 !important;
		margin-bottom: 0 !important;
		overflow: hidden;
	}

	body.home .hero-section .wave-shape-bottom {
		bottom: -1px !important;
		line-height: 0;
		z-index: 1;
	}

	body.home .hero-section .wave-shape-bottom svg {
		display: block;
		width: 100%;
		height: auto;
		margin: 0;
		vertical-align: bottom;
	}

	body.home .hero-section.hero-5 + .elementor-section,
	body.home .hero-section.hero-5 + section {
		margin-top: 0 !important;
		padding-top: 1.5rem !important;
	}

	/* Sections breathe less on small screens */
	body.home #statistic-1.statistic-section,
	body.home #statistic-1 {
		padding-top: 28px !important;
		padding-bottom: 28px !important;
	}

	body.home .section-title {
		margin-bottom: 1.5rem !important;
	}

	body.home .footer-section .footer-widgets {
		padding-top: 3.25rem !important;
		padding-bottom: 1.5rem !important;
	}

	body.home .footer-section .copyright-section {
		padding-bottom: 1.75rem !important;
	}

	body.home .footer-section .footer-nav {
		flex-wrap: wrap;
		gap: 0.35rem 0.85rem;
		justify-content: flex-start !important;
		margin-top: 0.75rem;
	}
}

@media (max-width: 575.98px) {
	.mobile-header-tools {
		right: 2.85rem;
		gap: 0.1rem;
	}

	.menu-lang-link--mobile .lang-code {
		display: none;
	}

	body.home .hero-section.hero-5 {
		padding: calc(64px + 0.85rem + env(safe-area-inset-top, 0px)) 0 0 !important;
	}
}

body.home .hero-section .hero-lede {
	max-width: 36rem;
}

/* Desktop: one compact combined lede (no carousel) */
.hero-lede--desktop {
	display: none;
}

@media (min-width: 992px) {
	/* Desktop: clearance under sticky nav. Soften Elementor's -50px pull-up so
	   the hero photo isn't flush with the bar (nav is taller with tools/CTA). */
	body.home .hero-section.hero-5,
	body.home .hero-section.hero-5.elementor-top-section,
	body.home .elementor-element-d70cf83.hero-section.hero-5 {
		padding: 150px 0 0 !important;
	}

	body.home .hero-section.hero-5 > .elementor-container > .elementor-column > .elementor-widget-wrap,
	body.home .elementor-element-3938db4 > .elementor-element-populated,
	body.home .elementor-element-3938db4 > .elementor-widget-wrap {
		margin-top: -25px !important;
		padding-top: 0 !important;
	}

	body.home .hero-section h2.title-element {
		font-size: clamp(1.7rem, 1vw + 1.15rem, 2rem) !important;
		line-height: 1.2 !important;
	}

	body.home .hero-section .hero-lede--desktop {
		display: block;
		max-width: 38rem;
		margin: 0 0 1.15rem !important;
		font-size: 0.95rem !important;
		line-height: 1.55 !important;
	}

	body.home .hero-section .hero-lede-carousel--mobile {
		display: none !important;
	}
}

@media (max-width: 991.98px) {
	body.home .hero-section .hero-lede--desktop {
		display: none !important;
	}
}

/* Hero lede carousel — mobile: two strategic messages */
.hero-lede-carousel {
	position: relative;
	max-width: 36rem;
	margin-bottom: 1.1rem;
}

/* Stack both copies so the viewport matches the tallest — no layout jump */
.hero-lede-viewport {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
	touch-action: pan-y;
	cursor: grab;
}

.hero-lede-viewport:active {
	cursor: grabbing;
}

.hero-lede-carousel .hero-lede {
	grid-area: 1 / 1;
	margin: 0 !important;
	max-width: none;
	width: 100%;
}

.hero-lede-carousel .hero-lede[hidden] {
	display: block !important;
	visibility: hidden;
	pointer-events: none;
	user: hover 0;
	z-index: 0;
}

.hero-lede-carousel .hero-lede.is-active {
	display: block !important;
	visibility: visible;
	pointer-events: auto;
	z-index: 1;
	animation: hero-lede-in 420ms ease;
}

/* Single thin progress bar — time until next slide.
 * Vertical space uses padding (not margin) so Blink/WebKit don’t collapse it. */
.hero-lede-progress {
	position: relative;
	box-sizing: content-box;
	width: 3.25rem;
	height: 2px;
	margin: 0;
	padding: 0.45rem 0 0.5rem;
	border-radius: 0;
	background-color: rgba(26, 29, 41, 0.14);
	background-clip: content-box;
	overflow: hidden;
	cursor: pointer;
}

.hero-lede-progress__fill {
	display: block;
	width: 0%;
	height: 2px;
	border-radius: 999px;
	background: var(--ma-accent, #0c6ffd);
}

body.theme--dark .hero-lede-progress {
	background-color: rgba(232, 235, 242, 0.18);
	background-clip: content-box;
}

body.theme--dark .hero-lede-progress__fill {
	background: var(--ma-accent, #4d9fff);
}

/* Slide pickers stay keyboard/AT accessible, not a second visual control */
.hero-lede-dots {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.hero-lede-dot {
	display: none;
}

@keyframes hero-lede-in {
	from {
		opacity: 0;
		transform: translateY(4px);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hero-lede-carousel .hero-lede.is-active {
		animation: none;
	}
}

/* -------------------------------------------------------------------------- */
/* Mobile density — kill phantom empty space + tighten section rhythm          */
/* -------------------------------------------------------------------------- */

/* WOW/animate leaves huge invisible blocks (visibility:hidden) until scroll —
   on mobile that reads as blank sections. Always show content. */
@media (max-width: 991.98px) {
	.wow,
	.wow.fadeInUp,
	.wow.fadeInDown,
	.wow.fadeInLeft,
	.wow.fadeInRight,
	.animated {
		visibility: visible !important;
		opacity: 1 !important;
		animation: none !important;
		transform: none !important;
	}

	body.home .section-title.mb-70,
	body.home .section-title {
		margin-bottom: 1.25rem !important;
	}

	body.home .elementor-top-section:not(.hero-section),
	body.home .features-section,
	body.home .content-section,
	body.home .py-100 {
		padding-top: 2.25rem !important;
		padding-bottom: 2.25rem !important;
	}

	/* Final mobile hero clearance — must beat later generic section paddings */
	body.home .hero-section.hero-5.elementor-top-section,
	body.home .elementor-element-d70cf83.hero-section.hero-5 {
		padding: calc(64px + 0.85rem + env(safe-area-inset-top, 0px)) 0 0 !important;
	}

	/* Elementor pulls content up with -50px; that parks the title under the sticky bar (Chrome especially) */
	body.home .hero-section.hero-5 > .elementor-container > .elementor-column > .elementor-widget-wrap,
	body.home .elementor-element-3938db4 > .elementor-element-populated,
	body.home .elementor-element-3938db4 > .elementor-widget-wrap {
		margin-top: 0 !important;
		margin-block-start: 0 !important;
	}

	body.home .hero-section h2.title-element {
		margin-top: 0 !important;
		padding-top: 0.1rem;
	}

	body.home #statistic-1.statistic-section,
	body.home #statistic-1 {
		padding-top: 1.5rem !important;
		padding-bottom: 1.5rem !important;
	}

	/* Title spacer columns in Elementor — no min height when empty */
	body.home .elementor-inner-section .elementor-column .elementor-widget-wrap:empty {
		display: none !important;
		min-height: 0 !important;
		padding: 0 !important;
	}

	body.home .elementor-widget-divider {
		margin: 0.5rem 0 !important;
	}

	body.home .elementor-widget-divider .elementor-divider {
		padding: 0 !important;
	}

	body.home .fbox-2 .fbox-img,
	body.home .fbox-2 .fbox-img.h-175,
	body.home .fbox-2 .fbox-img.h-170,
	body.home .fbox-2 .fbox-img.h-165,
	body.home .fbox-2 .fbox-img.h-180 {
		margin: 0 auto 1rem !important;
		padding-top: 0.75rem !important;
		max-width: 16rem;
	}

	body.home .fbox-2 {
		margin-bottom: 1.75rem !important;
	}

	body.home .fbox-wrapper .col:last-child .fbox-2 {
		margin-bottom: 0 !important;
	}

	body.home .fbox-txt p {
		margin-bottom: 0;
	}

	body.home .img-block,
	body.home .txt-block {
		margin-bottom: 1rem !important;
	}

	body.home .hero-section .img-block {
		margin-top: -0.55rem !important;
		margin-bottom: -1.75rem !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.wow,
	.animated {
		visibility: visible !important;
		opacity: 1 !important;
		animation: none !important;
		transform: none !important;
	}
}

/* Site surfaces in dark */
body.theme--dark #page,
body.theme--dark .main,
body.theme--dark .entry,
body.theme--dark .elementor,
body.theme--dark .elementor-section,
body.theme--dark .elementor-widget-wrap,
body.theme--dark .elementor-widget-container,
body.theme--dark #statistic-1,
body.theme--dark .statistic-section {
	background-color: var(--ma-bg) !important;
	background-image: none !important;
}

/* Keep the light-mode atmospheric hero treatment (image + wave), dark variant */
body.theme--dark .hero-section.hero-5,
html.theme--dark-pending body .hero-section.hero-5 {
	background-color: transparent !important;
	background-image: url("../theme/images/hero-5-dark.jpg") !important;
	background-position: center center !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
}

body.theme--dark .hero-section.hero-5 .elementor-container,
body.theme--dark .hero-section.hero-5 .elementor-column,
body.theme--dark .hero-section.hero-5 .elementor-widget-wrap,
body.theme--dark .hero-section.hero-5 .elementor-widget-container,
body.theme--dark .hero-section.hero-5 .elementor-section,
html.theme--dark-pending body .hero-section.hero-5 .elementor-container,
html.theme--dark-pending body .hero-section.hero-5 .elementor-column,
html.theme--dark-pending body .hero-section.hero-5 .elementor-widget-wrap,
html.theme--dark-pending body .hero-section.hero-5 .elementor-widget-container,
html.theme--dark-pending body .hero-section.hero-5 .elementor-section {
	background-color: transparent !important;
	background-image: none !important;
}

body.theme--dark .hero-5 .wave-shape-bottom path,
html.theme--dark-pending body .hero-5 .wave-shape-bottom path {
	fill: var(--ma-bg) !important;
}

body.theme--dark .title-element,
body.theme--dark h1,
body.theme--dark h2,
body.theme--dark h3,
body.theme--dark h4,
body.theme--dark h5,
body.theme--dark .wow-pillar-title,
body.theme--dark .feature-title,
body.theme--dark .section-title h2,
body.theme--dark .section-title h3 {
	color: var(--ma-text) !important;
}

body.theme--dark .subtitle-element,
body.theme--dark .hero-section p,
body.theme--dark .statistic-block-txt p,
body.theme--dark .txt-block p,
body.theme--dark .fbox-5 p,
body.theme--dark .review-2 p,
body.theme--dark .color--grey {
	color: var(--ma-muted) !important;
}

body.theme--dark .bg--white-100,
body.theme--dark .bg--white-400,
body.theme--dark .fbox-5,
body.theme--dark .review-2 {
	background-color: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
	box-shadow: none !important;
}

body.theme--dark .btn--tra-black {
	color: var(--ma-text) !important;
	border-color: var(--ma-border) !important;
	background: transparent !important;
}

body.theme--dark .btn--tra-black:hover {
	color: #fff !important;
	background: var(--ma-accent) !important;
	border-color: var(--ma-accent) !important;
}

body.theme--dark .header-section .h-link,
body.theme--dark .wsmenu > .wsmenu-list > li > a.h-link {
	color: var(--ma-header-ink) !important;
}

body.theme--dark .header-section.tra-menu .wsmainfull {
	background: transparent;
}

body.theme--dark #statistic-1 .wow-pillar-ico [class*="flaticon-"]:before {
	color: var(--ma-accent);
}

body.theme--dark .shape--whitesmoke:before,
body.theme--dark .shape--whitesmoke:after,
body.theme--dark .reviews-2-wrapper.shape--02:before,
body.theme--dark .reviews-2-wrapper.shape--02:after {
	opacity: 0.18;
	filter: brightness(0.45);
}

/* Footer — full dark treatment (bg alone left links unreadable) */
body.theme--dark .footer-section,
body.theme--dark .footer-section.bg-white,
body.theme--dark .footer-section.text-dark {
	background-color: #0e1218 !important;
	color: var(--ma-muted) !important;
}

body.theme--dark .footer-section .parallax {
	opacity: 0.25;
	filter: brightness(0.35);
}

body.theme--dark .footer-section h6,
body.theme--dark .footer-section .footer-widget-title,
body.theme--dark .footer-section .wp-block-heading {
	color: var(--ma-text) !important;
}

body.theme--dark .footer-section p,
body.theme--dark .footer-section li,
body.theme--dark .footer-section .footer-links,
body.theme--dark .footer-section .footer-copyright p {
	color: var(--ma-muted) !important;
}

body.theme--dark .footer-section a,
body.theme--dark .footer-section a:not(.btn),
body.theme--dark .footer-section .menu a,
body.theme--dark .footer-section .footer-nav a,
body.theme--dark .footer-section .h-link,
body.theme--dark .footer-section.text-dark a:not(.btn) {
	color: var(--ma-muted) !important;
}

body.theme--dark .footer-section a:hover,
body.theme--dark .footer-section .menu a:hover,
body.theme--dark .footer-section .footer-nav a:hover,
body.theme--dark .footer-section .h-link:hover {
	color: var(--ma-accent) !important;
}

body.theme--dark .footer-section .wp-block-social-link a,
body.theme--dark .footer-section .wp-social-link svg,
body.theme--dark .footer-section .wp-social-link path {
	color: var(--ma-muted) !important;
	fill: var(--ma-muted) !important;
}

body.theme--dark .footer-section .wp-block-social-link a:hover svg,
body.theme--dark .footer-section .wp-social-link a:hover path {
	color: var(--ma-accent) !important;
	fill: var(--ma-accent) !important;
}

body.theme--dark .footer-section .bottom-footer,
body.theme--dark .footer-section .copyright-section,
body.theme--dark .footer-section .copyright-section.bg-secondary {
	background-color: #0a0d12 !important;
	border-top: 1px solid var(--ma-border);
	color: var(--ma-muted) !important;
}

body.theme--dark .footer-section .footer-logo-img,
body.theme--dark .footer-section img[data-brand-logo] {
	max-width: 175px;
	height: auto;
}

/* -------------------------------------------------------------------------- */
/* Inner pages — dark mode (contact, pricing, help, legal, blog, careers)     */
/* -------------------------------------------------------------------------- */

body.theme--dark .inner-page-title h1,
body.theme--dark .inner-page-title h2,
body.theme--dark .inner-page-title .title-element {
	color: var(--ma-text) !important;
}

body.theme--dark .inner-page-title p,
body.theme--dark .inner-page-title .p-lg,
body.theme--dark .color--grey,
body.theme--dark .p-lg {
	color: var(--ma-muted) !important;
}

/* Contact */
body.theme--dark .contact-page .contact-channel [class*="flaticon-"]:before,
body.theme--dark .contact-page .contact-channel .h-link {
	color: var(--ma-accent) !important;
}

body.theme--dark .contact-form .form-label {
	color: var(--ma-text);
}

body.theme--dark .contact-form .form-control,
body.theme--dark .contact-form .form-select,
body.theme--dark .wpcf7 input[type="text"],
body.theme--dark .wpcf7 input[type="email"],
body.theme--dark .wpcf7 input[type="tel"],
body.theme--dark .wpcf7 input[type="url"],
body.theme--dark .wpcf7 textarea,
body.theme--dark .wpcf7 select {
	background: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
	color: var(--ma-text) !important;
}

body.theme--dark .contact-form .form-control:focus,
body.theme--dark .contact-form .form-select:focus,
body.theme--dark .wpcf7 input:focus,
body.theme--dark .wpcf7 textarea:focus,
body.theme--dark .wpcf7 select:focus {
	border-color: var(--ma-accent) !important;
	box-shadow: 0 0 0 3px var(--ma-accent-soft) !important;
}

body.theme--dark .contact-form .form-control::placeholder,
body.theme--dark .wpcf7 input::placeholder,
body.theme--dark .wpcf7 textarea::placeholder {
	color: var(--ma-muted);
	opacity: 0.75;
}

/* Pricing */
body.theme--dark .pricing-offer {
	background: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
}

body.theme--dark .pricing-offer--featured {
	border-color: rgba(77, 159, 255, 0.45) !important;
	box-shadow: 0 0 0 1px rgba(77, 159, 255, 0.12) !important;
}

body.theme--dark .pricing-offer__label,
body.theme--dark .pricing-page .pricing-offer .price span.pricing-offer__period,
body.theme--dark .pricing-faq__list p,
body.theme--dark .pricing-offer__setup,
body.theme--dark .pricing-offer__desc {
	color: var(--ma-muted) !important;
}

body.theme--dark .pricing-page .pricing-offer .price span.pricing-offer__amount,
body.theme--dark .pricing-offer__features li {
	color: var(--ma-text) !important;
}

body.theme--dark .pricing-offer__features .flaticon-check {
	color: var(--ma-accent) !important;
}

body.theme--dark .pricing-offer__features li.is-muted {
	color: rgba(154, 163, 181, 0.65) !important;
}

body.theme--dark .pricing-billing .toggler--goggle,
body.theme--dark .pricing-billing .switch-wrap,
body.theme--dark .toggle-btn .toggler {
	filter: none;
}

body.theme--dark .pricing-billing__save,
body.theme--dark .pricing-billing .toggle-btn span {
	color: var(--ma-muted) !important;
}

body.theme--dark .pricing-pillar [class*="flaticon-"]:before {
	color: var(--ma-accent);
}

/* Help / FAQ */
body.theme--dark #faqs-4 .tabs-1 li p.tab-title {
	color: var(--ma-text) !important;
}

body.theme--dark #faqs-4 .tabs-1 li.current p.tab-title {
	color: var(--ma-accent) !important;
}

body.theme--dark #faqs-4 .tabs-1 li:not(.current) p.tab-title {
	color: var(--ma-muted) !important;
}

@media (max-width: 767.98px) {
	body.theme--dark #faqs-4 .tabs-1 li,
	body.theme--dark #faqs-4 .tabs-1 li.current,
	body.theme--dark #faqs-4 .tabs-1 li.current:hover {
		background: var(--ma-surface) !important;
		border-color: var(--ma-border) !important;
	}

	body.theme--dark #faqs-4 .tabs-1 li.current {
		background: var(--ma-accent-soft) !important;
		border-color: transparent !important;
	}
}

body.theme--dark #faqs-4 .tabs-1 li [class*="flaticon-"],
body.theme--dark #faqs-4 .tabs-1 li [class*="flaticon-"]:before,
body.theme--dark #faqs-4 .tabs-1 li span {
	color: var(--ma-accent) !important;
}

body.theme--dark #faqs-4 .tabs-1 li.current::after {
	background: var(--ma-accent);
}

body.theme--dark #faqs-4 .accordion-item,
body.theme--dark #faqs-4 .accordion-item:last-child {
	border-color: var(--ma-border) !important;
}

body.theme--dark #faqs-4 .question,
body.theme--dark #faqs-4 .question.s-22 {
	color: var(--ma-text) !important;
}

body.theme--dark #faqs-4 .accordion-panel,
body.theme--dark #faqs-4 .accordion-panel p {
	color: var(--ma-muted) !important;
}

body.theme--dark .help-cta-copy .p-lg {
	color: var(--ma-muted) !important;
}

/* Legal */
body.theme--dark .legal-prose .legal-lead,
body.theme--dark .legal-prose p,
body.theme--dark .legal-prose li {
	color: var(--ma-muted) !important;
}

body.theme--dark .legal-prose h2,
body.theme--dark .legal-prose h3 {
	color: var(--ma-text) !important;
}

body.theme--dark .legal-prose a {
	color: var(--ma-accent) !important;
}

body.theme--dark .legal-footnote {
	border-top-color: var(--ma-border) !important;
	color: var(--ma-muted) !important;
}

/* Careers */
body.theme--dark .careers-role {
	background: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
	color: var(--ma-text);
}

body.theme--dark .careers-role:hover {
	border-color: var(--ma-accent) !important;
	background: var(--ma-surface-2) !important;
}

body.theme--dark .careers-role__tag,
body.theme--dark .career-role-tag {
	color: var(--ma-accent) !important;
}

body.theme--dark .careers-role__title,
body.theme--dark .career-role-pillar h3 {
	color: var(--ma-text) !important;
}

body.theme--dark .careers-role__meta,
body.theme--dark .career-role-back,
body.theme--dark .career-role-prose p,
body.theme--dark .career-role-prose li,
body.theme--dark .career-role-pillar p {
	color: var(--ma-muted) !important;
}

body.theme--dark .career-role-back:hover {
	color: var(--ma-accent) !important;
}

body.theme--dark .career-role-apply {
	border-top-color: var(--ma-border) !important;
}

body.theme--dark .careers-pillar [class*="flaticon-"]:before {
	color: var(--ma-accent);
}

/* Blog listing + post */
body.theme--dark .blog-listing-page .post-categories a,
body.theme--dark .blog-listing-page .blog-post-txt > p,
body.theme--dark .blog-listing-page .blog-post-meta,
body.theme--dark .blog-listing-page .blog-post-meta .p-sm,
body.theme--dark .blog-listing-page .blog-post-meta time {
	color: var(--ma-muted) !important;
}

body.theme--dark .blog-listing-page .post-categories a:hover,
body.theme--dark .blog-listing-page .post-title a:hover {
	color: var(--ma-accent) !important;
}

body.theme--dark .blog-listing-page .post-title,
body.theme--dark .blog-listing-page .post-title a {
	color: var(--ma-text) !important;
}

body.theme--dark .blog-listing-page .theme-pagination .page-numbers {
	background: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
	color: var(--ma-muted) !important;
}

body.theme--dark .blog-listing-page .theme-pagination .page-numbers.current,
body.theme--dark .blog-listing-page .theme-pagination .page-numbers:hover {
	border-color: rgba(77, 159, 255, 0.45) !important;
	color: var(--ma-accent) !important;
	background: var(--ma-surface-2) !important;
}

body.theme--dark .blog-post-page .single-post-title h2,
body.theme--dark .blog-post-page .single-post-title .s-40,
body.theme--dark .blog-post-page .single-post-title .s-46,
body.theme--dark .blog-post-page .entry-content h4,
body.theme--dark .blog-post-page .entry-content h5,
body.theme--dark .blog-post-page .comments-area h5,
body.theme--dark .blog-post-page #reply-title {
	color: var(--ma-text) !important;
}

body.theme--dark .blog-post-page .single-post-title .post-tag,
body.theme--dark .blog-post-page .single-post-title .post-categories a,
body.theme--dark .blog-post-page .blog-post-meta .p-sm,
body.theme--dark .blog-post-page .blog-post-meta time,
body.theme--dark .blog-post-page .blog-post-meta a,
body.theme--dark .blog-post-page .entry-content > p,
body.theme--dark .blog-post-page .entry-content li,
body.theme--dark .blog-post-page .comment-notes,
body.theme--dark .blog-post-page .required-field-message {
	color: var(--ma-muted) !important;
}

body.theme--dark .blog-post-page .single-post-title .post-categories a:hover {
	color: var(--ma-accent) !important;
}

body.theme--dark .blog-post-page .entry-content blockquote {
	background: var(--ma-surface) !important;
	border-left-color: var(--ma-accent) !important;
	color: var(--ma-muted) !important;
}

body.theme--dark .blog-post-page .post-tags a,
body.theme--dark .blog-post-page .tagcloud a,
body.theme--dark .blog-post-page a[rel='tag'] {
	background: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
	color: var(--ma-muted) !important;
}

body.theme--dark .blog-post-page .comments-area {
	border-top-color: var(--ma-border) !important;
}

body.theme--dark .blog-post-page .comment-form .form-control,
body.theme--dark .blog-post-page .comment-form textarea,
body.theme--dark .blog-post-page .comment-form input[type='text'],
body.theme--dark .blog-post-page .comment-form input[type='email'],
body.theme--dark .blog-post-page .comment-form input[type='url'] {
	background: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
	color: var(--ma-text) !important;
}

body.theme--dark .blog-post-page .comment-form .form-control:focus,
body.theme--dark .blog-post-page .comment-form textarea:focus,
body.theme--dark .blog-post-page .comment-form input:focus {
	border-color: var(--ma-accent) !important;
}

/* Newsletter (About + Blog) */
body.theme--dark .about-newsletter__subtitle,
body.theme--dark .about-us-page .about-section .subtitle-element.p-lg {
	color: var(--ma-muted) !important;
}

body.theme--dark .about-newsletter__form .form-control {
	background: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
	color: var(--ma-text) !important;
}

/* Team / generic cards Martex may leave light */
body.theme--dark .team-member,
body.theme--dark .cbox-1,
body.theme--dark .cbox-2,
body.theme--dark .cbox-4,
body.theme--dark .fbox-2,
body.theme--dark .fbox-4,
body.theme--dark .fbox-7,
body.theme--dark .fbox-11,
body.theme--dark .pricing-1-table,
body.theme--dark .pricing-2-table,
body.theme--dark .white-card,
body.theme--dark .bg--white,
body.theme--dark .bg--snow {
	background-color: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
	color: var(--ma-muted);
}

body.theme--dark .team-member-name,
body.theme--dark .cbox-1 h5,
body.theme--dark .cbox-2 h5,
body.theme--dark .fbox-2 h5,
body.theme--dark .fbox-4 h5 {
	color: var(--ma-text) !important;
}

body.theme--dark .team-member-designation {
	color: var(--ma-muted) !important;
}

/* Desktop header chrome on non-home (scroll / opaque states) */
body.theme--dark .header-section .wsmainfull,
body.theme--dark .header-section.tra-menu .wsmainfull.scroll {
	background-color: rgba(18, 22, 29, 0.92) !important;
	border-bottom-color: var(--ma-border);
}

body.theme--dark .header-section .wsmenu > .wsmenu-list > li > .sub-menu,
body.theme--dark .header-section .wsmenu > .wsmenu-list > li > ul.sub-menu {
	background-color: var(--ma-surface) !important;
	border-color: var(--ma-border) !important;
}

body.theme--dark .header-section .wsmenu > .wsmenu-list > li > .sub-menu > li > a,
body.theme--dark .header-section .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a {
	color: var(--ma-muted) !important;
}

body.theme--dark .header-section .wsmenu > .wsmenu-list > li > .sub-menu > li > a:hover,
body.theme--dark .header-section .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a:hover {
	color: var(--ma-text) !important;
	background-color: var(--ma-surface-2) !important;
}