/*
Theme Name: Exam Prep
Description: RTL block theme for מוכן, the licensing-exam practice site.
Version: 0.2.0
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: exam-prep-theme
*/

/* ---------- Tokens ---------- */
:root {
	--mk-navy: var(--wp--preset--color--navy, #0a1d57);
	--mk-navy-deep: var(--wp--preset--color--navy-deep, #071443);
	--mk-yellow: var(--wp--preset--color--yellow, #f8d536);
	--mk-yellow-soft: var(--wp--preset--color--yellow-soft, #fcf4cf);
	--mk-ink: var(--wp--preset--color--ink, #0c1a46);
	--mk-muted: var(--wp--preset--color--muted, #4b5878);
	--mk-line: var(--wp--preset--color--line, #d8deea);
	--mk-soft: var(--wp--preset--color--soft, #f1f3f7);
	--mk-ok: var(--wp--preset--color--ok, #16794a);
	--mk-error: var(--wp--preset--color--error, #b8322a);
	--mk-num: var(--wp--preset--font-family--numeric, Barlow, sans-serif);
	--mk-radius: 14px;
	--mk-shadow: 0 12px 32px -14px rgb(10 29 87 / 0.28), 0 2px 6px rgb(10 29 87 / 0.06);
	--mk-ease: cubic-bezier(0.16, 1, 0.3, 1);
	--mk-gutter: clamp(16px, 3.3vw, 62px);
}

::selection { background: var(--mk-yellow); color: var(--mk-navy); }
html { scrollbar-color: #b9c1d4 transparent; }
body { -webkit-font-smoothing: antialiased; }

:where(.wp-site-blocks) :focus-visible {
	outline: 3px solid var(--mk-yellow);
	outline-offset: 2px;
	box-shadow: 0 0 0 5px var(--mk-navy);
	border-radius: 6px;
}

.mk-num { font-family: var(--mk-num); font-variant-numeric: tabular-nums lining-nums; }

/* ---------- Icons (Phosphor, MIT) ---------- */
.mk-icon {
	display: inline-block;
	width: 1em;
	height: 1em;
	background: currentColor;
	-webkit-mask: var(--mk-i) center / contain no-repeat;
	mask: var(--mk-i) center / contain no-repeat;
	flex: none;
}
.mk-icon--clock { --mk-i: url(assets/icons/clock.svg); }
.mk-icon--book { --mk-i: url(assets/icons/book-open-text.svg); }
.mk-icon--target { --mk-i: url(assets/icons/target.svg); }
.mk-icon--cycle { --mk-i: url(assets/icons/arrows-clockwise.svg); }
.mk-icon--doc { --mk-i: url(assets/icons/file-text.svg); }
.mk-icon--user { --mk-i: url(assets/icons/user.svg); }
.mk-icon--arrow { --mk-i: url(assets/icons/arrow-left.svg); }
.mk-icon--check { --mk-i: url(assets/icons/check-circle.svg); }
.mk-icon--x { --mk-i: url(assets/icons/x-circle.svg); }

/* ---------- Header ---------- */
.mk-header {
	background: #fff;
	border-bottom: 1px solid #e7eaf1;
	position: relative;
	z-index: 20;
}
.mk-header__inner {
	display: flex;
	align-items: center;
	gap: clamp(24px, 11.5vw, 155px);
	height: clamp(55px, 4.39vw, 70px);
	padding-inline: clamp(16px, 3.1vw, 42px) clamp(16px, 3.3vw, 44px);
	max-width: none;
}
.mk-header__inner > * { margin-block: 0 !important; }
.mk-wordmark { margin: 0; }
.mk-wordmark a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 2.25rem;
	font-weight: 900;
	font-stretch: 85%;
	letter-spacing: -0.02em;
	text-decoration: none;
	color: var(--mk-navy);
}
.mk-wordmark a::before {
	content: "";
	width: 0.92em;
	height: 0.92em;
	background: var(--mk-yellow);
	-webkit-mask: url(assets/icons/check-bold.svg) center / contain no-repeat;
	mask: url(assets/icons/check-bold.svg) center / contain no-repeat;
	order: 0;
	width: 0.95em;
	height: 0.95em;
	transform: translateY(-0.12em);
}
.mk-nav .wp-block-navigation__container { gap: clamp(20px, 3vw, 44px); }
.mk-nav .wp-block-navigation-item__content {
	position: relative;
	display: flex;
	align-items: center;
	height: clamp(55px, 4.39vw, 70px);
	color: var(--mk-navy);
	font-weight: 600;
	padding-block: 0;
	text-decoration: none;
}
.mk-nav .wp-block-navigation-item__content:hover { color: var(--mk-navy); }
.mk-nav .current-menu-item > .wp-block-navigation-item__content,
.mk-nav .wp-block-navigation-item__content[aria-current="page"] { color: var(--mk-navy); font-weight: 700; }
.mk-nav .current-menu-item > .wp-block-navigation-item__content::after,
.mk-nav .wp-block-navigation-item__content[aria-current="page"]::after {
	content: "";
	position: absolute;
	inset-inline: -2px;
	bottom: 0;
	height: clamp(4px, 0.4vw, 6px);
	background: var(--mk-yellow);
	border-radius: 3px 3px 0 0;
}
.mk-login { margin-inline-start: auto !important; }
.mk-login .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 0 12px;
	width: 116px;
	height: 32px;
	justify-content: center;
	line-height: 1;
	border: 1.5px solid var(--mk-navy);
	background: transparent;
	color: var(--mk-navy);
	font-size: 0.875rem;
	font-weight: 600;
}
.mk-login .wp-block-button__link::before {
	content: "";
	width: 15px;
	height: 15px;
	background: currentColor;
	-webkit-mask: url(assets/icons/user-fill.svg) center / contain no-repeat;
	mask: url(assets/icons/user-fill.svg) center / contain no-repeat;
}
.mk-login .wp-block-button__link:hover { background: var(--mk-navy); color: #fff; }

/* ---------- Landing shell ---------- */
.mk-landing { margin-block-start: 0 !important; }
.mk-landing > .wp-block-post-content > * { margin-block: 0; }
.mk-landing .wp-block-post-content { padding: 0; }

/* ---------- Hero ---------- */
.mk-hero {
	display: grid;
	grid-template-columns: 1fr 1fr;
	min-height: 35.05vw;
	margin: 0 !important;
	padding: 0 !important;
}
.mk-hero__offer {
	background: var(--mk-navy);
	color: #fff;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 3.4vw 2vw 2.4vw;
	gap: 0;
}
.mk-hero > * { margin: 0 !important; }
.mk-hero__offer > * { margin-block: 0 !important; }
.mk-hero__title {
	color: #fff;
	font-size: clamp(30px, 3.5vw, 58px);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.01em;
	text-wrap: balance;
}
.mk-hero__accent {
	display: block;
	color: var(--mk-yellow);
	font-size: 1.42em;
	font-weight: 800;
	font-stretch: 88%;
	line-height: 1.02;
	letter-spacing: -0.02em;
}
.mk-hero__lead {
	margin-top: 1.05vw !important;
	color: #eef1f7;
	font-size: clamp(16px, 1.64vw, 27px);
	line-height: 1.4;
}
.mk-hero__actions { margin-top: 1.75vw !important; justify-content: center; }
.mk-hero__note { margin-top: 0.55vw !important; color: #c9d2ea; font-size: clamp(13px, 0.98vw, 15px); }
.mk-cta .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.6em;
	min-width: 22.2vw;
	min-height: 4.15vw;
	padding: 0.5em 1.6em;
	font-size: clamp(16px, 1.38vw, 22px);
	font-weight: 600;
	transition: transform 0.25s var(--mk-ease), box-shadow 0.25s var(--mk-ease), background-color 0.2s;
}
.mk-cta .wp-block-button__link::after {
	content: "";
	width: 1.1em;
	height: 1.1em;
	background: currentColor;
	-webkit-mask: url(assets/icons/arrow-left-bold.svg) center / contain no-repeat;
	mask: url(assets/icons/arrow-left-bold.svg) center / contain no-repeat;
	transition: transform 0.25s var(--mk-ease);
}
.mk-cta .wp-block-button__link:hover { transform: translateY(-2px); }
.mk-cta .wp-block-button__link:hover::after { transform: translateX(-4px); }
.mk-cta .wp-block-button__link:active { transform: translateY(0) scale(0.98); }

.mk-facts {
	display: grid;
	grid-template-columns: repeat(3, auto);
	align-items: start;
	margin: 2.4vw 0 0 !important;
	padding: 0;
}
.mk-facts__item {
	display: flex;
	flex-direction: column-reverse;
	align-items: center;
	padding-inline: 4.2vw;
}
.mk-facts__item + .mk-facts__item { border-inline-start: 1px solid rgb(255 255 255 / 0.28); }
.mk-facts dd {
	margin: 0;
	color: var(--mk-yellow);
	font-size: clamp(22px, 2.1vw, 34px);
	font-weight: 800;
	line-height: 1.25;
}
.mk-facts dd.mk-num { font-size: clamp(30px, 3vw, 48px); line-height: 1; padding-top: 0.04em; }
.mk-facts dt { white-space: nowrap; color: #fff; font-size: clamp(13px, 1.1vw, 17px); font-weight: 600; margin-top: 0.15em; }

.mk-hero__work {
	background: var(--mk-soft);
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding: 2.5vw 4.6vw 2vw;
}
.mk-hero__work > * { margin: 0 !important; width: 100%; }

/* ---------- Simulation card ---------- */
.mk-sim {
	background: #fff;
	border-radius: var(--mk-radius);
	box-shadow: var(--mk-shadow);
	padding: 0.75vw 1.2vw 1.25vw 1.35vw;
	color: var(--mk-ink);
	font-size: clamp(13px, 1.12vw, 17px);
}
.mk-sim__head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-weight: 600;
	font-size: clamp(13px, 1.12vw, 17px);
	line-height: 1.6;
}
.mk-sim__count b { font-weight: 800; }
.mk-sim__timer { display: inline-flex; align-items: center; gap: 6px; font-family: var(--mk-num); font-weight: 700; font-size: 1.08em; direction: ltr; }
.mk-sim__timer .mk-icon { width: 1.05em; height: 1.05em; }
.mk-sim__progress { height: 8px; margin-top: 0.15vw; background: #e5e8f0; border-radius: 99px; overflow: hidden; }
.mk-sim__progress span { display: block; height: 100%; background: var(--mk-navy); border-radius: inherit; margin-inline-start: auto; }
.mk-sim__q { margin: 1.35vw 0 0.8vw; letter-spacing: -0.01em; font-weight: 700; font-size: clamp(15px, 1.38vw, 22px); line-height: 1.4; }
.mk-sim__answers { display: grid; gap: 0.52vw; }
.mk-sim__answer {
	display: flex;
	align-items: center;
	gap: 0.85em;
	width: 100%;
	min-height: 2.75vw;
	padding: 0 1em;
	border: 1px solid var(--mk-line);
	border-radius: 8px;
	background: #fff;
	color: var(--mk-ink);
	font: inherit;
	font-size: clamp(13px, 1.12vw, 17px);
	letter-spacing: -0.01em;
	text-align: start;
	cursor: pointer;
	transition: border-color 0.18s, background-color 0.18s, transform 0.18s var(--mk-ease);
}
@media (pointer: coarse) { .mk-sim__answer { min-height: 44px; } }
.mk-sim__answer::before {
	content: "";
	width: 1.1em;
	height: 1.1em;
	flex: none;
	border: 1.5px solid #6c7896;
	border-radius: 50%;
	transition: box-shadow 0.2s var(--mk-ease), border-color 0.2s;
}
.mk-sim__answer:hover { border-color: #9aa6c4; }
.mk-sim__answer:active { transform: scale(0.99); }
.mk-sim__answer.is-selected { background: #f1f3f8; border-color: #c7cfe0; font-weight: 700; }
.mk-sim__answer.is-selected::before { border-color: var(--mk-navy); box-shadow: inset 0 0 0 0.2em #fff, inset 0 0 0 1em var(--mk-navy); }
.mk-sim__answer.is-right { background: #eaf6ef; border-color: #8cc9a7; }
.mk-sim__answer.is-right::before { border-color: var(--mk-ok); box-shadow: inset 0 0 0 0.2em #fff, inset 0 0 0 1em var(--mk-ok); }
.mk-sim__answer.is-wrong { background: #fbeceb; border-color: #e3a19c; }
.mk-sim__answer.is-wrong::before { border-color: var(--mk-error); box-shadow: inset 0 0 0 0.2em #fff, inset 0 0 0 1em var(--mk-error); }
.mk-sim__feedback {
	display: flex;
	align-items: flex-start;
	gap: 0.5em;
	margin: 0.75vw 0 0;
	padding: 0.5em 0.9em;
	border-radius: 8px;
	background: var(--mk-yellow-soft);
	font-size: 0.95em;
	line-height: 1.5;
	animation: mk-rise 0.4s var(--mk-ease);
}
.mk-sim__feedback[hidden] { display: none; }
.mk-sim__feedback--hint { background: var(--mk-soft); color: var(--mk-muted); animation: none; }
.mk-sim__feedback--hint .mk-icon { color: var(--mk-navy); }
.mk-sim__feedback .mk-icon { width: 1.25em; height: 1.25em; margin-top: 0.12em; }
.mk-sim__feedback.is-right .mk-icon { color: var(--mk-ok); }
.mk-sim__feedback.is-wrong .mk-icon { color: var(--mk-error); }
.mk-sim__grid {
	display: grid;
	grid-template-columns: repeat(var(--cols, 13), 1fr);
	gap: 0.6vw 0.55vw;
	list-style: none;
	direction: ltr;
	margin: 1.1vw 0 0;
	padding: 0;
}
.mk-sim__grid li {
	display: grid;
	place-items: center;
	height: max(22px, 1.95vw);
	border: 1px solid var(--mk-line);
	border-radius: 5px;
	font-family: var(--mk-num);
	font-weight: 700;
	font-size: clamp(11px, 0.9vw, 14px);
	color: var(--mk-ink);
	background: #fff;
}
.mk-sim__grid li.is-done { background: var(--mk-navy); border-color: var(--mk-navy); color: #fff; }
.mk-sim__grid li.is-current { background: var(--mk-yellow); border-color: var(--mk-yellow); color: var(--mk-navy); }

@media (prefers-reduced-motion: no-preference) {
	.mk-sim__grid li.is-done, .mk-sim__grid li.is-current { animation: mk-fill 0.5s var(--mk-ease) both; animation-delay: calc(var(--i, 0) * 70ms + 250ms); }
}
@keyframes mk-fill { from { background: #fff; border-color: var(--mk-line); color: var(--mk-ink); transform: scale(0.9); } }
@keyframes mk-rise { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* ---------- Plan: what's included + price ---------- */
.mk-plan { margin: 0 !important; padding: 2.75vw 4.4vw 3.5vw 4.6vw !important; background: #fff; }
.mk-plan__inner {
	display: grid;
	grid-template-columns: 1fr 31.6vw;
	gap: 4vw;
	align-items: start;
	max-width: 1600px;
	margin-inline: auto;
}
.mk-plan__inner > * { margin: 0 !important; }
.mk-plan__title { font-size: clamp(20px, 1.85vw, 30px); font-weight: 700; margin: 0 0 1vw !important; }
.mk-features {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	list-style: none;
	margin: 0;
	padding: 0;
}
.mk-features li {
	display: grid;
	justify-items: center;
	align-content: start;
	text-align: center;
	gap: 0.3em;
	padding-inline: 1.1vw;
	font-size: clamp(12px, 0.98vw, 15px);
	letter-spacing: -0.01em;
	color: var(--mk-muted);
	line-height: 1.45;
}
.mk-features li + li { border-inline-start: 1px solid #e2e6ef; }
.mk-feat-ico {
	position: relative;
	display: grid;
	place-items: center;
	width: 2.9vw;
	height: 2.9vw;
	min-width: 36px;
	min-height: 36px;
	margin-bottom: 0.35em;
}
.mk-feat-ico::before {
	content: "";
	position: absolute;
	width: 62%;
	height: 62%;
	inset-inline-start: 46%;
	top: 8%;
	border-radius: 50%;
	background: var(--mk-yellow);
	opacity: 0.85;
}
.mk-feat-ico .mk-icon { position: relative; width: 82%; height: 82%; color: var(--mk-navy); }
.mk-features strong { color: var(--mk-ink); font-size: 1.12em; font-weight: 700; }
.mk-price {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5vw;
	min-height: 8.55vw;
	padding: 0.4vw 2.6vw;
	border-radius: var(--mk-radius);
	background: var(--mk-yellow-soft);
	color: var(--mk-navy);
	margin-top: 1.5vw !important;
}
.mk-price p { margin: 0; }
.mk-price__label { font-size: clamp(16px, 1.65vw, 26px); font-weight: 600; padding-inline-end: 1.6vw; border-inline-end: 1px solid rgb(10 29 87 / 0.25); line-height: 1.4; padding-block: 0.7vw; }
.mk-price__amount { display: inline-flex; align-items: baseline; gap: 0.12em; font-size: clamp(36px, 4.84vw, 78px); font-weight: 700; line-height: 1; }
.mk-price__amount .mk-num { font-weight: 700; }
.mk-price__cur { font-size: 0.72em; font-weight: 800; }

/* ---------- Shared section type ---------- */
.mk-h2 { font-size: clamp(26px, 2.5vw, 40px); font-weight: 800; line-height: 1.15; letter-spacing: -0.015em; color: var(--mk-ink); margin: 0 !important; text-wrap: balance; }
.mk-h3 { font-size: clamp(19px, 1.5vw, 24px); font-weight: 700; color: var(--mk-ink); margin: 3.2vw 0 1vw !important; }
.mk-lead { font-size: clamp(16px, 1.25vw, 20px); color: var(--mk-muted); line-height: 1.6; margin: 0.9em 0 0 !important; max-width: 58ch; }
.mk-proof, .mk-topics, .mk-exam, .mk-faq, .mk-final { margin: 0 !important; }
.mk-proof__inner, .mk-topics__inner, .mk-exam__inner, .mk-faq__inner { max-width: 1220px; margin-inline: auto; }
.mk-proof__inner > *, .mk-topics__inner > *, .mk-exam__inner > *, .mk-faq__inner > * { margin-block-start: 0; }

/* ---------- Proof: one answer, down to the section ---------- */
.mk-proof { background: var(--mk-soft); padding: clamp(56px, 6.5vw, 104px) var(--mk-gutter) !important; }
.mk-proof__inner { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 80px); align-items: start; }
.mk-method { list-style: none; margin: clamp(24px, 2.6vw, 40px) 0 0; padding: 0; display: grid; gap: clamp(18px, 1.7vw, 26px); }
.mk-method li { display: grid; gap: 2px; padding-inline-start: 34px; position: relative; font-size: clamp(15px, 1.12vw, 17px); color: var(--mk-muted); line-height: 1.55; }
.mk-method li::before { content: ""; position: absolute; inset-inline-start: 0; top: 0.2em; width: 22px; height: 22px; background: var(--mk-navy); -webkit-mask: url(assets/icons/check-circle.svg) center / contain no-repeat; mask: url(assets/icons/check-circle.svg) center / contain no-repeat; }
.mk-method strong { color: var(--mk-ink); font-size: 1.08em; font-weight: 700; }
.mk-answer { margin: 0; background: #fff; border-radius: var(--mk-radius); box-shadow: var(--mk-shadow); padding: clamp(20px, 2vw, 32px); font-size: clamp(14px, 1.08vw, 17px); color: var(--mk-ink); }
.mk-answer__q { font-weight: 700; font-size: 1.1em; line-height: 1.5; margin: 0 0 1em; }
.mk-answer__opts { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.mk-answer__opts li { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 0.5em; padding: 0.65em 0.9em; border: 1px solid var(--mk-line); border-radius: 8px; line-height: 1.45; }
.mk-answer__opts li .mk-icon { width: 1.2em; height: 1.2em; margin-top: 0.12em; }
.mk-answer__opts em { font-style: normal; font-size: 0.82em; font-weight: 700; margin-inline-start: auto; padding: 0.1em 0.6em; border-radius: 99px; }
.mk-answer__opts .is-wrong { background: #fbeceb; border-color: #e3a19c; }
.mk-answer__opts .is-wrong .mk-icon, .mk-answer__opts .is-wrong em { color: var(--mk-error); }
.mk-answer__opts .is-right { background: #eaf6ef; border-color: #8cc9a7; font-weight: 600; }
.mk-answer__opts .is-right .mk-icon, .mk-answer__opts .is-right em { color: var(--mk-ok); }
.mk-answer__why { margin: 1.1em 0 0; line-height: 1.6; color: var(--mk-muted); }
.mk-quote { margin: 1em 0 0; padding: 1em 1.2em; background: var(--mk-yellow-soft); border-radius: 10px; }
.mk-quote p { margin: 0; line-height: 1.7; font-size: 1.02em; }
.mk-quote mark { background: linear-gradient(transparent 55%, rgb(248 213 54 / 0.85) 55%); color: inherit; padding: 0 0.1em; }
.mk-quote cite { display: block; margin-top: 0.6em; font-style: normal; font-weight: 700; font-size: 0.88em; color: var(--mk-navy); }

/* ---------- Topics ranked by expected exam weight ---------- */
.mk-topics { background: #fff; padding: clamp(56px, 6.5vw, 104px) var(--mk-gutter) !important; }
.mk-rank { list-style: none; counter-reset: none; margin: clamp(28px, 3vw, 44px) 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(32px, 4vw, 64px); }
.mk-rank li { display: grid; grid-template-columns: 7.2em 1fr auto; align-items: baseline; gap: 1em; padding: 1em 0; border-bottom: 1px solid #e6e9f1; font-size: clamp(15px, 1.12vw, 17px); }
.mk-rank strong { color: var(--mk-ink); font-weight: 700; }
.mk-rank__exp { color: var(--mk-muted); font-size: 0.86em; white-space: nowrap; }
.mk-rank__exp b { display: inline-block; min-width: 1.9em; color: var(--mk-navy); font-size: 1.55em; font-weight: 800; }
.mk-rank__bank { color: var(--mk-muted); font-size: 0.86em; white-space: nowrap; }
.mk-rank__bank .mk-num { color: var(--mk-ink); font-weight: 700; }
.mk-more { margin-top: clamp(18px, 1.8vw, 28px); }
.mk-more summary { display: inline-flex; align-items: center; gap: 0.5em; min-height: 44px; cursor: pointer; font-weight: 700; color: var(--mk-navy); list-style: none; }
.mk-more summary::-webkit-details-marker { display: none; }
.mk-more summary::after { content: ""; width: 0.6em; height: 0.6em; border-inline-end: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-0.15em); transition: transform 0.25s var(--mk-ease); }
.mk-more[open] summary::after { transform: rotate(225deg) translateY(-0.1em); }
.mk-more__list { list-style: none; margin: 0.8em 0 0; padding: 0; columns: 3; column-gap: clamp(24px, 3vw, 48px); }
.mk-more__list li { display: flex; justify-content: space-between; gap: 1em; padding: 0.45em 0; break-inside: avoid; font-size: clamp(14px, 1.02vw, 16px); color: var(--mk-muted); }
.mk-more__list strong { font-weight: 600; color: var(--mk-ink); }
.mk-more__note { margin: 1em 0 0; font-size: 0.9em; color: var(--mk-muted); }

/* ---------- Exam structure (dark band) ---------- */
.mk-exam { background: var(--mk-navy-deep); color: #fff; padding: clamp(56px, 6vw, 96px) var(--mk-gutter) !important; }
.mk-exam .mk-h2 { color: #fff; }
.mk-spec { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: clamp(28px, 3vw, 44px) 0 0; padding: 0; border-top: 1px solid rgb(255 255 255 / 0.18); }
.mk-spec > div { padding: clamp(18px, 1.8vw, 28px) clamp(16px, 1.6vw, 26px) clamp(18px, 1.8vw, 28px) 0; border-bottom: 1px solid rgb(255 255 255 / 0.18); }
.mk-spec > div + div:not(.mk-spec__wide) { border-inline-start: 1px solid rgb(255 255 255 / 0.18); padding-inline-start: clamp(16px, 1.6vw, 26px); }
.mk-spec .mk-spec__wide { grid-column: 1 / -1; }
.mk-spec dt { font-size: clamp(13px, 1vw, 15px); font-weight: 600; color: #c9d2ea; }
.mk-spec dd { margin: 0.35em 0 0; display: grid; gap: 0.25em; }
.mk-spec dd b { color: var(--mk-yellow); font-size: clamp(26px, 2.4vw, 38px); font-weight: 800; line-height: 1.1; }
.mk-spec dd b.mk-num { font-size: clamp(32px, 3vw, 48px); }
.mk-spec dd b .mk-num { font-size: 1.2em; }
.mk-spec dd b span { color: inherit; }
.mk-spec dd span { color: #e3e8f4; font-size: clamp(14px, 1.05vw, 16px); line-height: 1.55; }
.mk-exam__date { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5em; margin: clamp(24px, 2.4vw, 36px) 0 0; font-size: clamp(15px, 1.15vw, 18px); color: #fff; }
.mk-exam__date .mk-icon { color: var(--mk-yellow); width: 1.2em; height: 1.2em; }
.mk-exam__date a { color: var(--mk-yellow); font-weight: 700; text-underline-offset: 0.2em; }
.mk-exam__source { margin: 1.2em 0 0; font-size: 0.8125rem; color: #aab5d2; max-width: 90ch; }

/* ---------- FAQ and reading ---------- */
.mk-faq { background: #fff; padding: clamp(56px, 6.5vw, 104px) var(--mk-gutter) !important; }
.mk-faq__inner { max-width: 860px; }
.mk-faq__list { margin-top: clamp(20px, 2.2vw, 32px); border-top: 1px solid #e6e9f1; }
.mk-faq__list details { border-bottom: 1px solid #e6e9f1; }
.mk-faq__list summary { display: flex; align-items: center; justify-content: space-between; gap: 1em; min-height: 56px; padding: 0.7em 0; cursor: pointer; font-weight: 700; font-size: clamp(16px, 1.2vw, 19px); color: var(--mk-ink); list-style: none; }
.mk-faq__list summary::-webkit-details-marker { display: none; }
.mk-faq__list summary::after { content: ""; flex: none; width: 22px; height: 22px; border-radius: 50%;  transition: transform 0.3s var(--mk-ease); }
.mk-faq__list summary::after { background: linear-gradient(var(--mk-navy), var(--mk-navy)) center / 10px 2px no-repeat, linear-gradient(var(--mk-navy), var(--mk-navy)) center / 2px 10px no-repeat, var(--mk-soft); }
.mk-faq__list details[open] summary::after { transform: rotate(45deg); }
.mk-faq__list p { margin: 0 0 1.1em; color: var(--mk-muted); line-height: 1.7; max-width: 68ch; }
.mk-reading { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(24px, 3vw, 48px); }
.mk-reading a { display: flex; align-items: center; justify-content: space-between; gap: 1em; min-height: 48px; padding: 0.4em 0; border-bottom: 1px solid #e6e9f1; color: var(--mk-ink); font-weight: 600; text-decoration: none; }
.mk-reading a::after { content: ""; flex: none; width: 1em; height: 1em; background: var(--mk-navy); -webkit-mask: url(assets/icons/arrow-left.svg) center / contain no-repeat; mask: url(assets/icons/arrow-left.svg) center / contain no-repeat; transition: transform 0.25s var(--mk-ease); }
.mk-reading a:hover { color: var(--mk-navy); }
.mk-reading a:hover::after { transform: translateX(-4px); }

/* ---------- Final call ---------- */
.mk-final { background: var(--mk-navy); color: #fff; text-align: center; padding: clamp(56px, 6vw, 96px) var(--mk-gutter) !important; }
.mk-final > * { margin-block: 0 !important; }
.mk-final__title { color: #fff; font-size: clamp(28px, 3vw, 48px); font-weight: 800; letter-spacing: -0.015em; }
.mk-final__lead { margin-top: 0.7em !important; color: #e3e8f4; font-size: clamp(16px, 1.3vw, 21px); }
.mk-final__actions { margin-top: clamp(24px, 2.2vw, 34px) !important; justify-content: center; }

/* ---------- Licence table ---------- */
.mk-licence { margin: 0 !important; background: var(--mk-soft); padding: clamp(56px, 6vw, 96px) var(--mk-gutter) !important; }
.mk-licence__inner { max-width: 1220px; margin-inline: auto; }
.mk-licence__inner > * { margin-block-start: 0; }
.mk-table-wrap { margin-top: clamp(24px, 2.6vw, 40px); overflow-x: auto; border-radius: var(--mk-radius); background: #fff; box-shadow: var(--mk-shadow); }
.mk-table { width: 100%; border-collapse: collapse; font-size: clamp(14px, 1.05vw, 16px); }
.mk-table th, .mk-table td { padding: 0.95em 1.1em; text-align: start; border-bottom: 1px solid #e6e9f1; }
.mk-table thead th { background: var(--mk-navy); color: #fff; font-weight: 700; font-size: 0.92em; }
.mk-table tbody th { color: var(--mk-ink); font-weight: 700; white-space: nowrap; }
.mk-table tbody td { color: var(--mk-muted); }
.mk-table tbody tr:last-child > * { border-bottom: 0; }

/* ---------- Next-step card ---------- */
.mk-next { margin: 0 !important; background: var(--mk-soft); padding: 0 var(--mk-gutter) clamp(56px, 6vw, 96px) !important; }
.mk-next > * { max-width: 1220px; margin-inline: auto !important; }
.mk-next__card { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: clamp(22px, 2.4vw, 36px) clamp(22px, 2.6vw, 40px); border-radius: var(--mk-radius); background: var(--mk-navy); color: #fff; text-decoration: none; transition: transform 0.3s var(--mk-ease); }
.mk-next__card:hover { transform: translateY(-2px); }
.mk-next__text { display: grid; gap: 0.3em; }
.mk-next__text strong { font-size: clamp(20px, 1.8vw, 28px); font-weight: 800; color: #fff; }
.mk-next__text span { color: #d6dcef; font-size: clamp(15px, 1.12vw, 18px); }
.mk-next__go { display: inline-flex; align-items: center; gap: 0.5em; flex: none; padding: 0.7em 1.4em; border-radius: 999px; background: var(--mk-yellow); color: var(--mk-navy); font-weight: 700; }
.mk-next__go .mk-icon { width: 1.1em; height: 1.1em; }

/* ---------- Home: method hero ---------- */
.mk-icon--question { --mk-i: url(assets/icons/question.svg); }
.mk-icon--house { --mk-i: url(assets/icons/house-line.svg); }
.mk-icon--shield { --mk-i: url(assets/icons/shield-check.svg); }
.mk-icon--coins { --mk-i: url(assets/icons/coins.svg); }
.mk-icon--link { --mk-i: url(assets/icons/link-simple.svg); }
.mk-home-hero { margin: 0 !important; background: var(--mk-navy); color: #fff; text-align: center; padding: 1.3vw 3.94vw 2.2vw !important; }
.mk-home-hero > * { margin-block: 0 !important; }
.mk-home-hero__title { color: #fff; font-size: clamp(30px, 3.5vw, 58px); font-weight: 700; line-height: 1.02; letter-spacing: -0.01em; }
.mk-home-hero__accent { display: block; color: var(--mk-yellow); font-size: 1.24em; font-weight: 900; font-stretch: 90%; line-height: 0.98; }
.mk-home-hero__lead { margin-top: 0 !important; color: #eef1f7; font-size: clamp(16px, 1.64vw, 26px); }
.mk-flow { list-style: none; margin: 0.9vw 0 0 !important; padding: 0; display: grid; grid-template-columns: 1fr 0 1fr 0 1fr; column-gap: 1.64vw; align-items: stretch; text-align: start; }
.mk-flow__step { box-sizing: border-box; background: #fff; color: var(--mk-ink); border-radius: var(--mk-radius); padding: 0.95vw 1.5vw 1.45vw; min-height: 17.9vw; display: flex; flex-direction: column; gap: 0.9vw; box-shadow: 0 18px 40px -24px rgb(0 0 0 / 0.5); }
.mk-flow__head { display: flex; align-items: center; gap: 0.9vw; min-height: 3.57vw; }
.mk-flow__head p { margin: 0; }
.mk-flow__ico { display: grid; place-items: center; width: 2.9vw; height: 2.9vw; min-width: 36px; min-height: 36px; flex: none; color: var(--mk-navy); position: relative; }
.mk-flow__ico::before { content: ""; position: absolute; width: 60%; height: 60%; inset-inline-start: 48%; top: 6%; border-radius: 50%; background: var(--mk-yellow); opacity: 0.85; }
.mk-flow__ico .mk-icon { position: relative; width: 82%; height: 82%; }
.mk-flow__ico--ok { color: var(--mk-ok); }
.mk-flow__title { font-size: clamp(16px, 1.42vw, 22px); font-weight: 800; line-height: 1.2; display: flex; align-items: center; gap: 0.4em; }
.mk-flow__n { display: inline-grid; place-items: center; width: 1.25em; height: 1.25em; border-radius: 50%; background: var(--mk-yellow); color: var(--mk-navy); font-family: var(--mk-num); font-size: 0.68em; font-weight: 800; }
.mk-flow__sub { font-size: clamp(12px, 0.98vw, 15px); color: var(--mk-muted); margin-top: 0.15em !important; }
.mk-flow__body { flex: 1; margin: 0; border-radius: 10px; padding: 0.7vw 1.1vw; font-size: clamp(13px, 0.98vw, 15px); line-height: 1.55; }
.mk-flow__body p { margin: 0; }
.mk-flow__law { background: var(--mk-soft); }
.mk-flow__law mark { background: linear-gradient(transparent 52%, rgb(248 213 54 / 0.9) 52%); color: inherit; font-weight: 700; }
.mk-flow__q { background: var(--mk-soft); }
.mk-flow__q p { font-weight: 700; margin-bottom: 0.35em; line-height: 1.45; }
.mk-flow__q ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.1em; }
.mk-flow__q li { display: flex; align-items: center; gap: 0.6em; padding: 0 0.6em; border-radius: 6px; line-height: 1.4; }
.mk-flow__q li::before { content: ""; width: 0.95em; height: 0.95em; flex: none; border: 1.5px solid #7b86a3; border-radius: 50%; }
.mk-flow__q li.is-right { background: #cfeedb; font-weight: 700; }
.mk-flow__q li.is-right::before { border-color: var(--mk-ok); background: var(--mk-ok); box-shadow: inset 0 0 0 0.18em #cfeedb; }
.mk-flow__answer { background: #eaf6ef; display: flex; flex-direction: column; gap: 0.5em; }
.mk-flow__ok { color: var(--mk-ok); font-weight: 800; font-size: 1.25em; }
.mk-flow__ref { align-self: flex-start; margin-top: auto; display: inline-flex; align-items: center; gap: 0.4em; padding: 0.25em 0.8em; border-radius: 99px; background: #e2e6ef; color: var(--mk-ink); font-size: 0.88em; font-weight: 600; text-decoration: none; }
.mk-flow__ref:hover { background: #d5dbe8; }
.mk-flow__arrow { position: relative; z-index: 1; align-self: center; display: grid; place-items: center; width: 3.4vw; height: 3.4vw; min-width: 38px; min-height: 38px; margin-inline: calc(-1.7vw - 0.82vw); border-radius: 50%; background: var(--mk-yellow); color: var(--mk-navy); }
.mk-flow__arrow .mk-icon { width: 50%; height: 50%; -webkit-mask-image: url(assets/icons/caret-left-bold.svg); mask-image: url(assets/icons/caret-left-bold.svg); }
@media (prefers-reduced-motion: no-preference) {
	.mk-flow__step { animation: mk-rise 0.6s var(--mk-ease) both; }
	.mk-flow__step:nth-child(3) { animation-delay: 0.15s; }
	.mk-flow__step:nth-child(5) { animation-delay: 0.3s; }
}

/* ---------- Home: exam cards ---------- */
.mk-exams { margin: 0 !important; background: #f6f7fa; padding: 2.2vw 3.94vw 2.6vw !important; }
.mk-exams > * { max-width: 1600px; margin-inline: auto; }
.mk-exams__title { font-size: clamp(22px, 1.95vw, 32px); font-weight: 800; color: var(--mk-ink); margin: 0 0 1.1vw !important; }
.mk-exam-cards { list-style: none; margin: 0 !important; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.64vw; }
.mk-exam-card { box-sizing: border-box; background: #fff; border-radius: var(--mk-radius); box-shadow: var(--mk-shadow); padding: 1.1vw 1.5vw 1.4vw; display: grid; justify-items: center; gap: 1.1vw; }
.mk-exam-card__head { display: flex; align-items: center; justify-content: center; gap: 0.8vw; text-decoration: none; color: var(--mk-ink); }
.mk-exam-card__head .mk-feat-ico { width: 3.1vw; height: 3.1vw; }
.mk-exam-card__head > span:last-child { display: grid; text-align: center; line-height: 1.25; }
.mk-exam-card__head strong { font-size: clamp(18px, 1.64vw, 26px); font-weight: 800; }
.mk-exam-card__head > span:last-child > span { color: var(--mk-muted); font-size: clamp(13px, 1.04vw, 16px); font-weight: 600; }
.mk-exam-card__head:hover strong { color: var(--mk-navy); text-decoration: underline; text-underline-offset: 0.2em; }
.mk-exam-card__cta { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; gap: 0.5em; min-width: 18.2vw; min-height: max(44px, 3.1vw); padding: 0 1.4em; border-radius: 999px; background: var(--mk-yellow); color: var(--mk-navy); font-weight: 700; font-size: clamp(15px, 1.12vw, 18px); text-decoration: none; transition: transform 0.25s var(--mk-ease); }
.mk-exam-card__cta::after { content: ""; width: 1em; height: 1em; background: currentColor; -webkit-mask: url(assets/icons/arrow-left-bold.svg) center / contain no-repeat; mask: url(assets/icons/arrow-left-bold.svg) center / contain no-repeat; }
.mk-exam-card__cta:hover { transform: translateY(-2px); }
.mk-home-method__inner { max-width: 1220px; margin-inline: auto; }
.mk-method--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(32px, 4vw, 64px); }
.mk-reading--top { margin-top: clamp(20px, 2.2vw, 32px) !important; }

/* ---------- Articles: single ---------- */
.mk-article { margin: 0 !important; }
.mk-article > * { margin-block: 0 !important; }
.mk-article__hero { background: var(--mk-navy); color: #fff; padding: clamp(36px, 4.4vw, 72px) var(--mk-gutter) clamp(32px, 3.6vw, 56px) !important; margin: 0 !important; }
.mk-article__hero > * { max-width: 760px; margin-inline: auto !important; margin-block: 0; }
.mk-article__crumbs { gap: 0.5em; font-size: 0.9375rem; color: #c9d2ea; }
.mk-article__crumbs p, .mk-article__crumbs .wp-block-post-terms { margin: 0; }
.mk-article__crumbs a { color: #c9d2ea; text-decoration: none; }
.mk-article__crumbs a:hover { color: var(--mk-yellow); }
.mk-article__crumbs > p:first-child::after { content: "›"; margin-inline-start: 0.5em; color: #8f9bc0; }
.mk-article__title { color: #fff !important; font-size: clamp(30px, 3.2vw, 50px) !important; font-weight: 800; line-height: 1.15; letter-spacing: -0.015em; margin-top: 0.4em !important; text-wrap: balance; }
.mk-article__meta { gap: 0.4em; margin-top: 1em !important; font-size: 0.9375rem; color: #c9d2ea; }
.mk-article__meta p, .mk-article__meta .wp-block-post-date { margin: 0; }
/* WordPress prints the modified date only after an edit; until then show the publish date. */
.mk-article__meta:has(.mk-date-mod) .mk-date-pub { display: none; }
.mk-article__body { padding: clamp(32px, 3.6vw, 56px) var(--mk-gutter) clamp(24px, 3vw, 48px) !important; font-size: clamp(16px, 1.15vw, 18px); line-height: 1.8; color: #1f2a4d; }
.mk-article__body > * { max-width: 760px; }
.mk-article__body h2 { font-size: clamp(24px, 2vw, 32px); margin-top: 1.8em !important; margin-bottom: 0.5em !important; }
.mk-article__body h3 { font-size: clamp(19px, 1.45vw, 23px); margin-top: 1.5em !important; }
.mk-article__body a { color: var(--mk-navy); text-decoration-color: rgb(10 29 87 / 0.35); text-underline-offset: 0.2em; }
.mk-article__body a:hover { text-decoration-color: var(--mk-yellow); }
.mk-article__body .wp-block-table { margin-block: 1.6em !important; overflow-x: auto; }
.mk-article__body table { border-collapse: collapse; width: 100%; font-size: 0.92em; border-radius: 10px; overflow: hidden; box-shadow: 0 0 0 1px var(--mk-line); }
.mk-article__body :where(th, td) { border: 0 !important; border-bottom: 1px solid #e6e9f1 !important; padding: 0.75em 1em !important; text-align: start; vertical-align: top; }
.mk-article__body thead th { background: var(--mk-navy) !important; color: #fff; font-weight: 700; }
.mk-article__body tbody th { background: var(--mk-soft) !important; color: var(--mk-ink); }
.mk-article__body .wp-block-table thead { border-bottom: 0; }
.mk-article__body .ep-toc { background: var(--mk-soft); border-radius: var(--mk-radius); padding: 18px 22px; }
.mk-article__cta { max-width: 760px; margin: 0 auto clamp(48px, 5vw, 80px) !important; padding: clamp(22px, 2.4vw, 34px) clamp(22px, 2.6vw, 36px) !important; border-radius: var(--mk-radius); background: var(--mk-yellow-soft); box-sizing: border-box; width: calc(100% - 2 * var(--mk-gutter)); }
.mk-article__cta > * { margin-block: 0 !important; }
.mk-article__cta-title { font-size: clamp(22px, 1.9vw, 30px) !important; }
.mk-article__cta p { margin-top: 0.4em !important; color: var(--mk-muted); }
.mk-article__exams { list-style: none; margin: 1.1em 0 0 !important; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.mk-article__exams a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1.2em; border-radius: 999px; background: var(--mk-navy); color: #fff; font-weight: 700; text-decoration: none; }
.mk-article__exams a:hover { background: var(--mk-navy-deep); }

/* ---------- Articles: index ---------- */
.mk-articles__hero > * { max-width: 1220px; }
.mk-articles__lead { margin-top: 0.6em !important; color: #e3e8f4; font-size: clamp(16px, 1.3vw, 21px); }
.mk-articles { margin: 0 !important; padding: clamp(40px, 4.4vw, 72px) var(--mk-gutter) clamp(56px, 6vw, 96px) !important; background: var(--mk-soft); }
.mk-articles > * { max-width: 1220px; margin-inline: auto !important; }
.mk-articles__cat { font-size: clamp(22px, 1.95vw, 32px); font-weight: 800; color: var(--mk-ink); margin: clamp(32px, 3.4vw, 52px) auto 0.8em !important; }
.mk-articles__cat:first-child { margin-top: 0 !important; }
.mk-articles__list .wp-block-post-template { gap: clamp(14px, 1.5vw, 22px) !important; margin: 0; padding: 0; }
.mk-articles__list .wp-block-post { background: #fff; border-radius: var(--mk-radius); box-shadow: var(--mk-shadow); padding: clamp(18px, 1.7vw, 26px); display: flex; flex-direction: column; gap: 0.5em; transition: transform 0.3s var(--mk-ease); }
.mk-articles__list .wp-block-post:hover { transform: translateY(-2px); }
.mk-articles__list .wp-block-post > * { margin: 0 !important; }
.mk-articles__title { font-size: clamp(17px, 1.3vw, 21px) !important; font-weight: 800; line-height: 1.35; }
.mk-articles__title a { color: var(--mk-ink); text-decoration: none; }
.mk-articles__title a:hover { color: var(--mk-navy); text-decoration: underline; text-decoration-color: var(--mk-yellow); text-underline-offset: 0.2em; }
.mk-articles__excerpt { color: var(--mk-muted); font-size: clamp(14px, 1.02vw, 16px); line-height: 1.6; }
.mk-articles__excerpt p { margin: 0; }
.mk-articles__excerpt .wp-block-post-excerpt__more-text { display: none; }

/* ---------- Footer ---------- */
.mk-footer { background: var(--mk-navy-deep); color: #c9d2ea; padding: clamp(40px, 4.5vw, 72px) var(--mk-gutter) clamp(32px, 3vw, 48px); }
footer.wp-block-template-part { margin-top: 0 !important; }
.mk-footer__inner { max-width: 1220px; margin-inline: auto; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr); gap: clamp(32px, 5vw, 80px); }
.mk-footer__inner > * { margin: 0 !important; }
.mk-footer .mk-wordmark a { color: #fff; font-size: 2rem; }
.mk-footer__brand p { margin: 1em 0 0; font-size: 0.9375rem; line-height: 1.7; max-width: 46ch; }
.mk-footer__nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.mk-footer__head { margin: 0 0 0.8em; color: #fff; font-weight: 700; font-size: 1rem; }
.mk-footer__nav ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.2em; }
.mk-footer__nav a { display: inline-block; padding: 0.35em 0; color: #c9d2ea; text-decoration: none; font-size: 0.9375rem; }
.mk-footer__nav a:hover { color: var(--mk-yellow); }
.mk-footer__legal { grid-column: 1 / -1; border-top: 1px solid rgb(255 255 255 / 0.14); padding-top: 20px; }
.mk-footer__legal ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 28px; }
.mk-footer__legal a { display: inline-block; padding: 0.35em 0; color: #c9d2ea; text-decoration: none; font-size: 0.875rem; }
.mk-footer__legal a:hover { color: var(--mk-yellow); }

/* ---------- Sticky mobile action ---------- */
.mk-sticky { display: none; }
@media (max-width: 960px) {
	.mk-sticky { position: fixed; inset-inline: 0; bottom: 0; z-index: 30; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: rgb(255 255 255 / 0.97); border-top: 1px solid var(--mk-line); box-shadow: 0 -8px 24px -16px rgb(10 29 87 / 0.35); transform: translateY(110%); transition: transform 0.35s var(--mk-ease); }
	.mk-sticky[hidden] { display: flex; visibility: hidden; }
	.mk-sticky.is-on { transform: none; visibility: visible; }
	.mk-sticky span { font-size: 13px; color: var(--mk-muted); }
	.mk-sticky__btn { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 22px; border-radius: 999px; background: var(--mk-yellow); color: var(--mk-navy); font-weight: 700; text-decoration: none; }
	.mk-footer { padding-bottom: 168px; } /* clears the sticky bar and the accessibility button */
}

/* ---------- Responsive ---------- */
@media (max-width: 960px) {
	.mk-header__inner { gap: 16px; }
	.mk-hero { grid-template-columns: 1fr; min-height: 0; }
	.mk-hero__offer { padding: 40px 20px 36px; }
	.mk-hero__title { font-size: clamp(30px, 7.2vw, 46px); }
	.mk-hero__lead { margin-top: 12px !important; font-size: clamp(16px, 4.2vw, 20px); }
	.mk-hero__actions { margin-top: 22px !important; }
	.mk-cta .wp-block-button__link { min-width: min(100%, 320px); min-height: 54px; font-size: 18px; }
	.mk-facts { margin-top: 30px !important; }
	.mk-facts__item { padding-inline: clamp(14px, 5vw, 40px); }
	.mk-facts dd { font-size: 24px; }
	.mk-facts dd.mk-num { font-size: 36px; }
	.mk-facts dt { font-size: 14px; }
	.mk-hero__work { padding: 24px 16px 32px; }
	.mk-sim { padding: 14px 16px 18px; font-size: 15px; }
	.mk-sim__head { font-size: 14px; }
	.mk-sim__q { margin: 18px 0 12px; font-size: 17px; }
	.mk-sim__answers { gap: 8px; }
	.mk-sim__answer { font-size: 15px; min-height: 48px; }
	.mk-sim__feedback { margin-top: 12px; }
	.mk-sim__grid { margin-top: 18px; gap: 6px; grid-template-columns: repeat(var(--cols-m, 9), 1fr); }
	.mk-sim__grid li { height: 30px; font-size: 13px; }
	.mk-plan { padding: 36px 16px 44px !important; }
	.mk-plan__inner { grid-template-columns: 1fr; gap: 24px; }
	.mk-plan__title { font-size: 24px; margin-bottom: 18px !important; }
	.mk-features { grid-template-columns: 1fr 1fr; row-gap: 26px; }
	.mk-features li { font-size: 14px; padding-inline: 12px; }
	.mk-features li:nth-child(3) { border-inline-start: 0; }
	.mk-price { min-height: 0; padding: 18px 22px; margin-top: 0 !important; }
	.mk-price__label { font-size: 18px; }
	.mk-price__amount { font-size: 52px; }
	.mk-proof__inner { grid-template-columns: 1fr; }
	.mk-rank { grid-template-columns: 1fr; }
	.mk-rank li { grid-template-columns: 4.2em 1fr; align-items: center; row-gap: 0.15em; }
	.mk-rank__exp { grid-row: span 2; display: grid; justify-items: center; white-space: normal; text-align: center; line-height: 1.2; font-size: 0.78em; }
	.mk-rank__exp b { min-width: 0; }
	.mk-rank__bank { grid-column: 2; }
	.mk-more__list { columns: 1; }
	.mk-spec { grid-template-columns: 1fr 1fr; }
	.mk-spec > div:nth-child(3) { border-inline-start: 0 !important; padding-inline-start: 0 !important; }
	.mk-reading { grid-template-columns: 1fr; }
	.mk-footer__inner { grid-template-columns: 1fr; }
	.mk-next__card { flex-direction: column; align-items: flex-start; }
	.mk-home-hero { padding: 36px 16px 40px !important; }
	.mk-home-hero__title { font-size: clamp(30px, 7.4vw, 44px); }
	.mk-home-hero__lead { margin-top: 10px !important; font-size: 17px; }
	.mk-flow { grid-template-columns: 1fr; row-gap: 0; margin-top: 26px !important; }
	.mk-flow__step { min-height: 0; padding: 16px 16px 18px; gap: 12px; }
	.mk-flow__body { padding: 12px 14px; font-size: 15px; }
	.mk-flow__ico { width: 40px; height: 40px; }
	.mk-flow__arrow { margin: -10px auto; width: 40px; height: 40px; transform: rotate(-90deg); }
	.mk-exams { padding: 32px 16px 40px !important; }
	.mk-exams__title { margin-bottom: 16px !important; }
	.mk-exam-cards { grid-template-columns: 1fr; gap: 14px; }
	.mk-exam-card { padding: 16px; gap: 14px; }
	.mk-exam-card__head .mk-feat-ico { width: 40px; height: 40px; }
	.mk-exam-card__cta { min-width: min(100%, 300px); }
	.mk-method--grid { grid-template-columns: 1fr; }
	.mk-articles__list .wp-block-post-template { grid-template-columns: 1fr !important; }
	.mk-hero__note { margin-top: 10px !important; font-size: 14px; }
}
@media (max-width: 600px) {
	.mk-footer__nav { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
	.mk-nav .wp-block-navigation__responsive-container-open { color: var(--mk-navy); }
	.mk-login .wp-block-button__link { padding: 5px 12px; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

/* ---------- Articles and legacy content ---------- */
.mk-legacy { padding-block: var(--wp--preset--spacing--50); }
.ep-card { transition: border-color 0.15s ease; }
.ep-card:hover { border-color: var(--mk-navy) !important; }
.wp-block-post-content :where(h2, h3) { scroll-margin-top: 24px; }
.wp-block-post-content table { border-collapse: collapse; width: 100%; }
.wp-block-post-content :where(th, td) { border: 1px solid var(--wp--preset--color--line); padding: 0.5em 0.75em; text-align: start; }
.wp-block-post-content th { background: var(--wp--preset--color--soft); }
.ep-toc { background: var(--wp--preset--color--soft); border-radius: 10px; padding: 16px 20px; }
.ep-toc ol { margin: 0; padding-inline-start: 1.25em; }

/* ---------- Cancellation (muchan-cancel plugin) ---------- */
.mk-cancel-band { max-width: 1220px; margin: 0 auto clamp(28px, 3vw, 44px); padding: 18px 22px; border: 1px solid rgb(248 213 54 / 0.55); border-radius: var(--mk-radius); background: rgb(255 255 255 / 0.06); }
.mk-cancel-band__inner { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 24px; }
.mk-cancel-band__title { margin: 0; color: var(--mk-yellow); font-weight: 800; font-size: 1.0625rem; }
.mk-cancel-band__text { margin: 0; flex: 1 1 420px; color: #e3e8f4; font-size: 0.9375rem; line-height: 1.65; }
.mk-cancel-band__text a { color: #fff; }
.mk-cancel-band__link { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1.3em; border-radius: 999px; background: var(--mk-yellow); color: var(--mk-navy-deep); font-weight: 800; text-decoration: none; white-space: nowrap; }
.mk-cancel-band__link:hover { background: #fff; }
.mk-cancel { margin-block: 1.4em 1.8em !important; padding: clamp(20px, 2.2vw, 30px); border-radius: var(--mk-radius); background: var(--mk-soft); }
.mk-cancel__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; align-items: end; }
.mk-cancel__field { margin-bottom: 16px; }
.mk-cancel__field label { display: block; margin-bottom: 4px; font-weight: 700; color: var(--mk-ink); font-size: 0.95em; }
.mk-cancel__req, .mk-cancel__hint { color: var(--mk-muted); font-weight: 400; }
.mk-cancel__hint, .mk-cancel__err { margin: 0 0 6px !important; font-size: 0.85em; line-height: 1.5; }
.mk-cancel__err { color: var(--mk-error); font-weight: 700; }
.mk-cancel input, .mk-cancel textarea { box-sizing: border-box; width: 100%; min-height: 48px; padding: 10px 14px; border: 1px solid #b9c2d6; border-radius: 10px; background: #fff; font: inherit; color: var(--mk-ink); }
.mk-cancel input:focus-visible, .mk-cancel textarea:focus-visible { outline: 3px solid var(--mk-navy); outline-offset: 1px; border-color: var(--mk-navy); }
.mk-cancel .is-invalid input, .mk-cancel .is-invalid textarea { border-color: var(--mk-error); }
.mk-cancel__submit { min-height: 48px; padding: 0 1.6em; border: 0; border-radius: 999px; background: var(--mk-navy); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.mk-cancel__submit:hover { background: var(--mk-navy-deep); }
.mk-cancel__submit:focus-visible { outline: 3px solid var(--mk-yellow); outline-offset: 2px; }
.mk-cancel__alt { margin: 12px 0 0 !important; font-size: 0.9em; color: var(--mk-muted); }
.mk-cancel__hp { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.mk-cancel__errors, .mk-cancel__done { margin-bottom: 18px; padding: 14px 18px; border-radius: 10px; background: #fff; border-inline-start: 4px solid var(--mk-error); }
.mk-cancel__done { border-inline-start-color: var(--mk-ok); }
.mk-cancel__errors p, .mk-cancel__done h3 { margin: 0 0 6px !important; font-weight: 800; }
.mk-cancel__errors ul { margin: 0; padding-inline-start: 1.2em; }
.mk-cancel__errors a { color: var(--mk-error); }
@media (max-width: 600px) {
	.mk-cancel__grid { grid-template-columns: 1fr; }
	.mk-cancel__submit { width: 100%; }
}
