/*
 * Membership Deluxe Elements — styles for every custom WPBakery element.
 * Mirrors the original Claude Design mockup pixel values, driven by the
 * CSS custom properties the theme outputs from the Customizer.
 */

.mdlx-container {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 32px;
}

.mdlx-container--narrow {
	max-width: 760px;
}

.mdlx-container--medium {
	max-width: 1000px;
}

/*
 * Button base styles are duplicated from the theme's assets/css/theme.css
 * on purpose: these elements should render correctly even if a different
 * theme is active, the same way Total Theme Core's elements don't depend
 * on the Total theme's stylesheet being loaded.
 */

.mdlx-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	padding: 15px 28px;
	border-radius: 10px;
	background: var(--mdlx-accent, #A78BFA);
	border: none;
	cursor: pointer;
	line-height: 1.2;
	text-decoration: none;
}

.mdlx-btn--ghost {
	background: transparent;
	font-weight: 600;
	border: 1.5px solid #D7DBE3;
}

.mdlx-btn--ghost-light {
	background: transparent;
	color: #fff;
	font-weight: 600;
	border: 1.5px solid rgba(255, 255, 255, 0.25);
}

.mdlx-eyebrow,
.mdlx-eyebrow-badge {
	font-size: 13px;
	font-weight: 700;
	color: var(--mdlx-accent-dark, #6D28D9);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-bottom: 12px;
}

.mdlx-section-intro {
	max-width: 640px;
	margin: 0 auto 56px;
	text-align: center;
}

.mdlx-section-title {
	font-family: 'Poppins', sans-serif;
	font-size: 32px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	margin: 0 0 14px;
	letter-spacing: -0.015em;
}

.mdlx-section-title--center {
	text-align: center;
}

.mdlx-section-desc {
	font-size: 16px;
	color: var(--mdlx-muted, #5B6478);
	line-height: 1.6;
	margin: 0;
}

.mdlx-section-desc--wide {
	max-width: none;
	line-height: 1.65;
	margin-bottom: 24px;
}

.mdlx-section-footer-link {
	text-align: center;
	margin-top: 40px;
}

.mdlx-section-footer-link a {
	font-size: 15px;
	font-weight: 700;
	color: var(--mdlx-accent-dark, #6D28D9);
}

.mdlx-bullet-dot {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--mdlx-accent-light, #DCEAFE);
	flex-shrink: 0;
	margin-top: 1px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.mdlx-bullet-dot__inner {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--mdlx-accent-dark, #1D4ED8);
}

.mdlx-checklist {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.mdlx-checklist li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 14px;
	color: var(--mdlx-body, #333B4D);
	line-height: 1.45;
}

.mdlx-checklist--loose li {
	font-size: 15px;
	line-height: 1.5;
	gap: 12px;
}

.mdlx-checklist--loose .mdlx-bullet-dot {
	width: 20px;
	height: 20px;
	margin-top: 2px;
}

.mdlx-badge {
	display: inline-flex;
	font-size: 11px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 999px;
}

.mdlx-badge--success { background: var(--mdlx-success-bg, #DCFCE7); color: var(--mdlx-success, #15803D); }
.mdlx-badge--warning { background: var(--mdlx-warning-bg, #FEF3C7); color: var(--mdlx-warning, #B45309); }
.mdlx-badge--danger  { background: var(--mdlx-danger-bg, #FEE2E2); color: var(--mdlx-danger, #B91C1C); }
.mdlx-badge--accent  { background: var(--mdlx-accent-light, #DCEAFE); color: var(--mdlx-accent-dark, #1D4ED8); }

.mdlx-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	flex-shrink: 0;
}

.mdlx-dot--success { background: var(--mdlx-success, #15803D); }
.mdlx-dot--accent  { background: var(--mdlx-accent-dark, #1D4ED8); }
.mdlx-dot--muted   { background: var(--mdlx-faint, #8891A0); }

/* ---------- Hero ---------- */

.mdlx-hero {
	background: linear-gradient(160deg, var(--mdlx-navy, #0F1D33) 0%, var(--mdlx-navy-deep, #0B1526) 100%);
	padding: 88px 32px 100px;
	position: relative;
}

.mdlx-hero__inner {
	max-width: 1240px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	gap: 56px;
	align-items: center;
}

.mdlx-hero__inner--single {
	grid-template-columns: 1fr;
	max-width: 760px;
	text-align: center;
}

.mdlx-eyebrow-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	padding: 7px 14px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 600;
	color: var(--mdlx-accent-light, #DCEAFE);
	margin-bottom: 24px;
	text-transform: none;
	letter-spacing: normal;
}

.mdlx-hero__inner--single .mdlx-eyebrow-badge {
	margin-left: auto;
	margin-right: auto;
}

.mdlx-eyebrow-badge__dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--mdlx-accent, #A78BFA);
	flex-shrink: 0;
}

.mdlx-hero__heading {
	font-family: 'Poppins', sans-serif;
	font-size: 48px;
	line-height: 1.12;
	font-weight: 700;
	color: #fff;
	margin: 0 0 20px;
	letter-spacing: -0.02em;
}

.mdlx-hero__desc {
	font-size: 18px;
	line-height: 1.6;
	color: #AEB7C7;
	margin: 0 0 32px;
	max-width: 540px;
}

.mdlx-hero__inner--single .mdlx-hero__desc {
	max-width: none;
	margin-left: auto;
	margin-right: auto;
}

.mdlx-hero__ctas {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}

.mdlx-hero__inner--single .mdlx-hero__ctas {
	justify-content: center;
}

.mdlx-hero__stats {
	display: flex;
	gap: 28px;
	margin-top: 40px;
	flex-wrap: wrap;
}

.mdlx-hero__inner--single .mdlx-hero__stats {
	justify-content: center;
}

.mdlx-hero__stat {
	font-size: 13px;
	color: #7C8699;
}

.mdlx-hero__stat strong {
	color: #fff;
	display: block;
	font-size: 15px;
	font-family: 'Poppins', sans-serif;
}

/* ---------- Dashboard mockup ---------- */

.mdlx-mockup {
	background: linear-gradient(150deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	padding: 16px;
}

.mdlx-mockup__frame {
	background: #12192B;
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	overflow: hidden;
	display: flex;
}

.mdlx-mockup__sidebar {
	width: 56px;
	background: #0D1424;
	border-right: 1px solid rgba(255, 255, 255, 0.06);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 18px;
	padding: 18px 0;
	flex-shrink: 0;
}

.mdlx-mockup__sidebar-logo {
	width: 26px;
	height: 26px;
	border-radius: 7px;
	background: var(--mdlx-accent, #A78BFA);
}

.mdlx-mockup__sidebar-icon {
	width: 20px;
	height: 20px;
	border-radius: 5px;
	background: rgba(255, 255, 255, 0.08);
}

.mdlx-mockup__sidebar-icon.is-active {
	background: var(--mdlx-accent-light, #DCEAFE);
}

.mdlx-mockup__body {
	flex: 1;
	padding: 20px 22px;
	min-width: 0;
}

.mdlx-mockup__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 18px;
}

.mdlx-mockup__head-title {
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: #fff;
}

.mdlx-mockup__avatar {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--mdlx-accent-light, #DCEAFE);
	flex-shrink: 0;
}

.mdlx-mockup__stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-bottom: 18px;
}

.mdlx-mockup__stat {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.07);
	border-radius: 9px;
	padding: 11px;
}

.mdlx-mockup__stat-label {
	font-size: 10.5px;
	color: #7C8699;
	margin-bottom: 6px;
}

.mdlx-mockup__stat-value {
	font-family: 'Poppins', sans-serif;
	font-size: 17px;
	font-weight: 700;
	color: #fff;
}

.mdlx-mockup__table {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.07);
	border-radius: 9px;
	overflow: hidden;
}

.mdlx-mockup__table-head,
.mdlx-mockup__table-row {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 0.9fr;
	align-items: center;
}

.mdlx-mockup__table-head {
	padding: 9px 14px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	font-size: 10px;
	color: #5B6478;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.mdlx-mockup__table-row {
	padding: 10px 14px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.mdlx-mockup__table-name {
	font-size: 12px;
	color: #E4E7EE;
}

.mdlx-mockup__table-muted {
	font-size: 12px;
	color: #9AA3B2;
}

@media (max-width: 980px) {
	.mdlx-hero__inner {
		grid-template-columns: 1fr;
	}

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

/* ---------- Trust bar ---------- */

.mdlx-trust-bar {
	background: #fff;
	border-bottom: 1px solid var(--mdlx-border, #E3E6EC);
	padding: 36px 32px;
}

.mdlx-trust-bar__heading {
	text-align: center;
	font-size: 13px;
	font-weight: 600;
	color: var(--mdlx-faint, #8891A0);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-bottom: 22px;
}

.mdlx-trust-bar__row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
}

.mdlx-trust-bar__tile {
	width: 150px;
	height: 44px;
	border-radius: 8px;
	background: var(--mdlx-surface, #F1F2F5);
	border: 1px solid var(--mdlx-border, #E3E6EC);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Courier New', monospace;
	font-size: 11px;
	color: #9AA3B2;
	letter-spacing: 0.04em;
}

/* ---------- Pillars ---------- */

.mdlx-pillars {
	padding: 96px 32px;
	background: var(--mdlx-surface, #F5F6F8);
}

.mdlx-pillars__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.mdlx-pillars__grid.mdlx-cols-2 { grid-template-columns: repeat(2, 1fr); }
.mdlx-pillars__grid.mdlx-cols-4 { grid-template-columns: repeat(4, 1fr); }

.mdlx-pillar {
	background: #fff;
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 14px;
	padding: 28px 26px;
}

.mdlx-pillar__num {
	width: 42px;
	height: 42px;
	border-radius: 10px;
	background: var(--mdlx-accent-light, #DCEAFE);
	color: var(--mdlx-accent-dark, #1D4ED8);
	font-family: 'Poppins', sans-serif;
	font-weight: 800;
	font-size: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px;
}

.mdlx-pillar__title {
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 600;
	color: var(--mdlx-navy, #0F1D33);
	margin: 0 0 8px;
}

.mdlx-pillar__desc {
	font-size: 14.5px;
	color: var(--mdlx-muted, #5B6478);
	line-height: 1.55;
	margin: 0;
}

@media (max-width: 980px) {
	.mdlx-pillars__grid,
	.mdlx-pillars__grid.mdlx-cols-4 {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 640px) {
	.mdlx-pillars__grid,
	.mdlx-pillars__grid.mdlx-cols-2,
	.mdlx-pillars__grid.mdlx-cols-4 {
		grid-template-columns: 1fr;
	}
}

/* ---------- Record showcase ---------- */

.mdlx-record {
	padding: 96px 32px;
	background: #fff;
	border-top: 1px solid var(--mdlx-border, #E3E6EC);
	border-bottom: 1px solid var(--mdlx-border, #E3E6EC);
}

.mdlx-record__grid {
	display: grid;
	grid-template-columns: 0.95fr 1.05fr;
	gap: 60px;
	align-items: center;
}

.mdlx-record__panel {
	background: #fff;
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 16px;
	padding: 20px;
	min-height: 380px;
	display: flex;
	flex-direction: column;
}

.mdlx-record__head {
	display: flex;
	align-items: center;
	gap: 14px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--mdlx-border, #E3E6EC);
	margin-bottom: 16px;
}

.mdlx-record__avatar {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--mdlx-accent-light, #DCEAFE);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Poppins', sans-serif;
	font-weight: 700;
	color: var(--mdlx-accent-dark, #1D4ED8);
	font-size: 16px;
	flex-shrink: 0;
}

.mdlx-record__who {
	flex: 1;
}

.mdlx-record__name {
	font-family: 'Poppins', sans-serif;
	font-size: 15px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
}

.mdlx-record__meta {
	font-size: 12.5px;
	color: var(--mdlx-faint, #8891A0);
}

.mdlx-record__tabs {
	display: flex;
	gap: 18px;
	margin-bottom: 16px;
}

.mdlx-record__tab {
	font-size: 13px;
	font-weight: 600;
	color: var(--mdlx-faint, #8891A0);
	padding-bottom: 8px;
	border-bottom: 2px solid transparent;
}

.mdlx-record__tab.is-active {
	color: var(--mdlx-accent-dark, #1D4ED8);
	border-bottom-color: var(--mdlx-accent, #3B82F6);
}

.mdlx-record__activity {
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}

.mdlx-record__activity-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 12px;
	background: var(--mdlx-surface, #F5F6F8);
	border-radius: 8px;
}

.mdlx-record__activity-left {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	color: var(--mdlx-body, #333B4D);
}

.mdlx-record__activity-date {
	font-size: 12px;
	color: var(--mdlx-faint, #8891A0);
}

@media (max-width: 980px) {
	.mdlx-record__grid {
		grid-template-columns: 1fr;
	}
}

/* ---------- Stats ---------- */

.mdlx-stats {
	background: var(--mdlx-navy, #0F1D33);
	padding: 64px 32px;
}

.mdlx-stats__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	text-align: center;
}

.mdlx-stat__value {
	font-family: 'Poppins', sans-serif;
	font-size: 38px;
	font-weight: 700;
	color: var(--mdlx-accent, #A78BFA);
}

.mdlx-stat__label {
	font-size: 14px;
	color: #AEB7C7;
	margin-top: 8px;
}

@media (max-width: 780px) {
	.mdlx-stats__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ---------- Testimonials ---------- */

.mdlx-testimonials {
	padding: 96px 32px;
	background: var(--mdlx-surface, #F5F6F8);
}

.mdlx-testimonials .mdlx-section-title {
	margin-bottom: 48px;
}

.mdlx-testimonials__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.mdlx-testimonial {
	background: #fff;
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 14px;
	padding: 28px;
}

.mdlx-testimonial__quote {
	font-size: 15px;
	line-height: 1.6;
	color: var(--mdlx-body, #333B4D);
	margin: 0 0 20px;
}

.mdlx-testimonial__author {
	display: flex;
	align-items: center;
	gap: 12px;
}

.mdlx-testimonial__avatar {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--mdlx-accent-light, #DCEAFE);
	color: var(--mdlx-accent-dark, #1D4ED8);
	font-family: 'Poppins', sans-serif;
	font-weight: 700;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.mdlx-testimonial__name {
	font-size: 14px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
}

.mdlx-testimonial__role {
	font-size: 13px;
	color: var(--mdlx-faint, #8891A0);
}

@media (max-width: 980px) {
	.mdlx-testimonials__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 640px) {
	.mdlx-testimonials__grid {
		grid-template-columns: 1fr;
	}
}

/* ---------- Modules ---------- */

.mdlx-modules {
	padding: 96px 32px;
	background: #fff;
	border-top: 1px solid var(--mdlx-border, #E3E6EC);
}

.mdlx-modules__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	align-items: center;
}

.mdlx-modules__list {
	background: var(--mdlx-surface, #F5F6F8);
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 14px;
	padding: 10px;
}

.mdlx-module-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 18px;
	border-bottom: 1px solid var(--mdlx-border, #E3E6EC);
}

.mdlx-module-row:last-child {
	border-bottom: none;
}

.mdlx-module-row__name {
	font-size: 14.5px;
	font-weight: 600;
	color: var(--mdlx-body, #333B4D);
}

.mdlx-toggle {
	width: 42px;
	height: 24px;
	border-radius: 999px;
	background: #D7DBE3;
	position: relative;
	flex-shrink: 0;
	display: inline-block;
}

.mdlx-toggle.is-on {
	background: var(--mdlx-accent, #A78BFA);
}

.mdlx-toggle__knob {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #fff;
	position: absolute;
	top: 3px;
	left: 3px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
	transition: left 0.15s ease;
}

.mdlx-toggle.is-on .mdlx-toggle__knob {
	left: 21px;
}

@media (max-width: 900px) {
	.mdlx-modules__grid {
		grid-template-columns: 1fr;
	}
}

/* ---------- CTA banner ---------- */

.mdlx-cta-banner {
	background: linear-gradient(160deg, var(--mdlx-navy, #0F1D33) 0%, var(--mdlx-navy-deep, #0B1526) 100%);
	padding: 80px 32px;
}

.mdlx-cta-banner--light {
	background: #fff;
	padding: 72px 32px;
	border-top: 1px solid var(--mdlx-border, #E3E6EC);
}

.mdlx-cta-banner--light .mdlx-cta-banner__title {
	color: var(--mdlx-navy, #0F1D33);
}

.mdlx-cta-banner--light .mdlx-cta-banner__desc {
	color: var(--mdlx-muted, #5B6478);
}

.mdlx-cta-banner__inner {
	max-width: 860px;
	margin: 0 auto;
	text-align: center;
}

.mdlx-cta-banner__title {
	font-family: 'Poppins', sans-serif;
	font-size: 32px;
	font-weight: 700;
	color: #fff;
	margin: 0 0 16px;
	letter-spacing: -0.015em;
}

.mdlx-cta-banner__desc {
	font-size: 16px;
	color: #AEB7C7;
	margin: 0 0 32px;
	line-height: 1.6;
}

.mdlx-cta-banner__ctas {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	flex-wrap: wrap;
}

/* ---------- Jump nav ---------- */

.mdlx-jump-nav {
	background: #fff;
	border-bottom: 1px solid var(--mdlx-border, #E3E6EC);
	z-index: 40;
}

.mdlx-jump-nav--sticky {
	position: sticky;
	top: 71px;
}

.mdlx-jump-nav__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 14px 32px;
	display: flex;
	gap: 8px;
	overflow-x: auto;
}

.mdlx-jump-nav__pill {
	flex-shrink: 0;
	font-size: 13px;
	font-weight: 600;
	color: var(--mdlx-muted, #5B6478);
	padding: 7px 14px;
	border-radius: 999px;
	border: 1px solid var(--mdlx-border, #E3E6EC);
	white-space: nowrap;
}

.mdlx-jump-nav__pill:hover {
	color: var(--mdlx-navy, #0F1D33);
	border-color: var(--mdlx-accent, #A78BFA);
}

/* ---------- Pricing teaser ---------- */

.mdlx-pricing-teaser {
	padding: 96px 32px;
	background: var(--mdlx-surface, #F5F6F8);
}

.mdlx-pricing-teaser .mdlx-section-title {
	margin-bottom: 12px;
}

.mdlx-pricing-teaser .mdlx-section-intro {
	margin-bottom: 48px;
}

.mdlx-pricing-teaser__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
	max-width: 1000px;
	margin: 0 auto;
}

.mdlx-pricing-teaser-card {
	background: #fff;
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 16px;
	padding: 30px 26px;
	text-align: center;
}

.mdlx-pricing-teaser-card.is-featured {
	border: 2px solid var(--mdlx-accent, #A78BFA);
}

.mdlx-pricing-teaser-card__name {
	font-family: 'Poppins', sans-serif;
	font-size: 17px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	margin-bottom: 8px;
}

.mdlx-pricing-teaser-card__price {
	font-family: 'Poppins', sans-serif;
	font-size: 30px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	margin-bottom: 4px;
}

.mdlx-pricing-teaser-card__period {
	font-size: 13px;
	color: var(--mdlx-faint, #8891A0);
	margin-bottom: 20px;
}

.mdlx-pricing-teaser-card__btn {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	padding: 11px;
	border-radius: 8px;
	background: var(--mdlx-accent-light, #DCEAFE);
}

@media (max-width: 780px) {
	.mdlx-pricing-teaser__grid {
		grid-template-columns: 1fr;
	}
}

/* ---------- Pricing table ---------- */

.mdlx-pricing-table {
	padding: 64px 32px 16px;
}

.mdlx-pricing-table__grid {
	max-width: 1120px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	align-items: stretch;
}

.mdlx-pricing-card {
	background: #fff;
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 18px;
	padding: 34px 30px;
	display: flex;
	flex-direction: column;
	position: relative;
}

.mdlx-pricing-card.is-featured {
	border: 2px solid var(--mdlx-accent, #A78BFA);
}

.mdlx-pricing-card__ribbon {
	position: absolute;
	top: -13px;
	left: 30px;
	background: var(--mdlx-accent, #A78BFA);
	color: var(--mdlx-navy, #0F1D33);
	font-size: 12px;
	font-weight: 700;
	padding: 5px 12px;
	border-radius: 999px;
}

.mdlx-pricing-card__name {
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	margin-bottom: 6px;
}

.mdlx-pricing-card__tagline {
	font-size: 14px;
	color: var(--mdlx-muted, #5B6478);
	margin-bottom: 22px;
	min-height: 40px;
}

.mdlx-pricing-card__price {
	font-family: 'Poppins', sans-serif;
	font-size: 38px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	margin-bottom: 4px;
}

.mdlx-pricing-card__period {
	font-size: 13px;
	color: var(--mdlx-faint, #8891A0);
	margin-bottom: 26px;
}

.mdlx-pricing-card__cta {
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	padding: 13px;
	border-radius: 10px;
	background: var(--mdlx-accent-light, #DCEAFE);
	margin-bottom: 28px;
}

.mdlx-pricing-card__cta.is-accent {
	background: var(--mdlx-accent, #A78BFA);
}

.mdlx-pricing-card .mdlx-checklist {
	flex: 1;
}

.mdlx-pricing-table__footnote {
	text-align: center;
	margin-top: 28px;
	font-size: 14px;
	color: var(--mdlx-muted, #5B6478);
}

.mdlx-pricing-table__footnote a {
	font-weight: 700;
	color: var(--mdlx-accent-dark, #6D28D9);
	margin-left: 6px;
}

@media (max-width: 900px) {
	.mdlx-pricing-table__grid {
		grid-template-columns: 1fr;
		max-width: 480px;
	}
}

/* ---------- Comparison table ---------- */

.mdlx-comparison {
	padding: 72px 32px;
	background: #fff;
	border-top: 1px solid var(--mdlx-border, #E3E6EC);
	border-bottom: 1px solid var(--mdlx-border, #E3E6EC);
}

.mdlx-comparison .mdlx-section-title {
	margin-bottom: 40px;
}

.mdlx-comparison__table {
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 14px;
	overflow: hidden;
	overflow-x: auto;
}

.mdlx-comparison__head-row,
.mdlx-comparison__row {
	display: grid;
	grid-template-columns: 1.6fr repeat(3, 1fr);
	min-width: 560px;
}

.mdlx-comparison__head-cell {
	padding: 16px 20px;
	background: var(--mdlx-surface, #F5F6F8);
	font-size: 13px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	text-align: center;
}

.mdlx-comparison__head-cell--label {
	color: var(--mdlx-faint, #8891A0);
	text-align: left;
}

.mdlx-comparison__row {
	border-top: 1px solid var(--mdlx-border, #E3E6EC);
}

.mdlx-comparison__cell {
	padding: 14px 20px;
	text-align: center;
	font-size: 14px;
	color: var(--mdlx-body, #333B4D);
}

.mdlx-comparison__cell--label {
	text-align: left;
}

.mdlx-comparison__cell--positive {
	color: var(--mdlx-accent-dark, #1D4ED8);
	font-weight: 700;
}

.mdlx-comparison__cell--muted {
	color: #C3C9D4;
}

/* ---------- FAQ ---------- */

.mdlx-faq {
	padding: 72px 32px;
}

.mdlx-faq .mdlx-section-title {
	margin-bottom: 36px;
}

.mdlx-faq__list {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.mdlx-faq-item {
	background: #fff;
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 12px;
	overflow: hidden;
}

.mdlx-faq-item__question {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	text-align: left;
	background: none;
	border: none;
	cursor: pointer;
	padding: 22px 24px;
	font-family: inherit;
	font-size: 15.5px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
}

.mdlx-faq-item__chevron {
	flex-shrink: 0;
	width: 10px;
	height: 10px;
	border-right: 2px solid var(--mdlx-faint, #8891A0);
	border-bottom: 2px solid var(--mdlx-faint, #8891A0);
	transform: rotate(45deg);
	transition: transform 0.15s ease;
}

.mdlx-faq-item.is-open .mdlx-faq-item__chevron {
	transform: rotate(-135deg);
}

.mdlx-faq-item__answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.2s ease;
}

.mdlx-faq-item.is-open .mdlx-faq-item__answer {
	max-height: 400px;
}

.mdlx-faq-item__answer p {
	margin: 0;
	padding: 0 24px 22px;
	font-size: 14.5px;
	color: var(--mdlx-muted, #5B6478);
	line-height: 1.6;
}

/* ---------- Feature block (Features page) ---------- */

.mdlx-feature-block {
	padding: 56px 0;
	border-bottom: 1px solid var(--mdlx-border, #E3E6EC);
}

.mdlx-feature-block__grid {
	display: grid;
	grid-template-columns: 320px 1fr;
	gap: 48px;
}

.mdlx-feature-block__num {
	width: 46px;
	height: 46px;
	border-radius: 11px;
	background: var(--mdlx-accent-light, #DCEAFE);
	color: var(--mdlx-accent-dark, #1D4ED8);
	font-family: 'Poppins', sans-serif;
	font-weight: 800;
	font-size: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px;
}

.mdlx-feature-block__title {
	font-family: 'Poppins', sans-serif;
	font-size: 26px;
	font-weight: 700;
	color: var(--mdlx-navy, #0F1D33);
	margin: 0 0 12px;
	letter-spacing: -0.01em;
}

.mdlx-feature-block__desc {
	font-size: 15px;
	color: var(--mdlx-muted, #5B6478);
	line-height: 1.6;
	margin: 0;
}

.mdlx-feature-block__items {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
	align-content: start;
}

.mdlx-feature-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	background: #fff;
	border: 1px solid var(--mdlx-border, #E3E6EC);
	border-radius: 10px;
	padding: 14px 16px;
	font-size: 14px;
	color: var(--mdlx-body, #333B4D);
	line-height: 1.45;
}

@media (max-width: 900px) {
	.mdlx-feature-block__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 560px) {
	.mdlx-feature-block__items {
		grid-template-columns: 1fr;
	}
}
