:root {
	--hmkc-accent: #176b62;
	--hmkc-accent-strong: #0f524b;
	--hmkc-text: #17211f;
	--hmkc-muted: #52615e;
	--hmkc-line: #d7e2df;
	--hmkc-surface: #f3f8f7;
	--hmkc-urgent: #fff5f3;
	--hmkc-urgent-line: #b94335;
	--hmkc-radius: 14px;
}

/* 3.1 editorial exemplar */
.hmkc-exemplar{--hm-ink:#18312d;--hm-muted:#536b66;--hm-line:#d8e5e0;--hm-wash:#edf5f2;--hm-accent:#176b5d;--hm-warm:#f5f1e8;color:var(--hm-ink);font-size:1.08rem;line-height:1.72}.hmkc-exemplar h2{font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.15;letter-spacing:-.025em;text-wrap:balance;margin:0 0 1rem}.hmkc-exemplar h3{font-size:1.08rem;line-height:1.35;margin:.2rem 0 .55rem}.hmkc-exemplar__answer{margin:1.5rem 0 2.5rem;padding:clamp(1.4rem,4vw,2.8rem);background:var(--hm-ink);color:#f7fbf9;border-radius:1.2rem}.hmkc-exemplar__answer h2{color:#fff;max-width:18ch}.hmkc-exemplar__answer p{max-width:66ch;color:#e1ece8}.hmkc-exemplar__kicker{margin:0 0 .7rem!important;color:#80c4b2!important;font-size:.78rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.hmkc-exemplar__jump{display:flex;flex-wrap:wrap;gap:.7rem;margin:0 0 3rem}.hmkc-exemplar__jump a{padding:.6rem .85rem;border-bottom:2px solid var(--hm-line);color:var(--hm-ink);font-weight:650;text-decoration:none}.hmkc-exemplar__jump a:hover,.hmkc-exemplar__jump a:focus-visible{border-color:var(--hm-accent);color:var(--hm-accent)}.hmkc-exemplar__section{margin:0 0 4.5rem}.hmkc-exemplar__intro{max-width:65ch;color:var(--hm-muted);font-size:1.12rem}.hmkc-compare{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.hmkc-compare__column{padding:1.5rem;border-radius:1rem}.hmkc-compare__column--usual{background:#f1f3f2}.hmkc-compare__column--check{background:#e2f1ec}.hmkc-compare ul,.hmkc-doctor-plan ul{margin:.8rem 0 0;padding-left:1.2rem}.hmkc-compare li,.hmkc-doctor-plan li{margin:.55rem 0}.hmkc-signs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.hmkc-signs article{padding:1.4rem 0;border-top:3px solid var(--hm-line)}.hmkc-signs span{color:var(--hm-accent);font-size:.84rem;font-weight:750}.hmkc-signs p{color:var(--hm-muted);margin:0}.hmkc-observer{display:grid;grid-template-columns:.8fr 1.2fr;gap:2rem;padding:clamp(1.4rem,4vw,2.6rem);background:var(--hm-warm);border-radius:1.2rem}.hmkc-observer fieldset{border:0;margin:0;padding:0}.hmkc-observer legend{font-weight:750;margin-bottom:.8rem}.hmkc-observer label{display:flex;gap:.75rem;align-items:flex-start;padding:.65rem 0;border-bottom:1px solid #ded8cc;cursor:pointer}.hmkc-observer input{inline-size:1.2rem;block-size:1.2rem;margin-top:.2rem;accent-color:var(--hm-accent)}.hmkc-observer__status{grid-column:2;margin:0;color:var(--hm-muted)}.hmkc-steps{list-style:none;counter-reset:hmsteps;display:grid;gap:1rem;padding:0}.hmkc-steps li{counter-increment:hmsteps;display:grid;grid-template-columns:2.5rem 1fr;column-gap:1rem;padding:1.2rem 0;border-bottom:1px solid var(--hm-line)}.hmkc-steps li:before{content:counter(hmsteps);grid-row:1/3;display:grid;place-items:center;width:2.3rem;height:2.3rem;border-radius:50%;background:var(--hm-accent);color:#fff;font-weight:750}.hmkc-steps strong,.hmkc-steps span{grid-column:2}.hmkc-steps span{color:var(--hm-muted)}.hmkc-urgent--precise{margin:0 0 4.5rem;padding:clamp(1.4rem,4vw,2.5rem);background:#fff1ed;border:1px solid #e9b4a7;border-left:5px solid #ad4e3c;border-radius:.8rem}.hmkc-urgent--precise h2{color:#6d2f24}.hmkc-doctor-plan{padding-top:2rem;border-top:1px solid var(--hm-line)}.hmkc-doctor-plan__grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.hmkc-next-route{padding:2rem;background:var(--hm-wash);border-radius:1rem}.hmkc-next-route>div{display:grid;gap:.7rem}.hmkc-next-route a{color:var(--hm-accent);font-weight:700}.hmkc-exemplar__actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin:0 0 3rem}.hmkc-exemplar__actions button{border:1px solid var(--hm-accent);border-radius:.65rem;background:#fff;color:var(--hm-accent);padding:.8rem 1rem;font:inherit;font-weight:700;cursor:pointer}.hmkc-exemplar__actions button:first-child{background:var(--hm-accent);color:#fff}.hmkc-exemplar__actions button:hover{transform:translateY(-1px)}.hmkc-exemplar__actions button:active{transform:translateY(1px)}.hmkc-exemplar__actions button:focus-visible{outline:3px solid #8bc8b8;outline-offset:3px}.hmkc-exemplar__actions p{flex-basis:100%;margin:0;color:var(--hm-muted)}
@media(max-width:720px){.hmkc-compare,.hmkc-signs,.hmkc-observer,.hmkc-doctor-plan__grid{grid-template-columns:1fr}.hmkc-observer__status{grid-column:1}.hmkc-exemplar__section{margin-bottom:3.4rem}.hmkc-exemplar__jump{display:grid}.hmkc-exemplar__actions button{width:100%}}
@media print{.hmkc-exemplar__jump,.hmkc-exemplar__actions,.hmkc-related{display:none!important}.hmkc-exemplar{font-size:11pt}.hmkc-exemplar__answer{background:#fff;color:#000;border:2px solid #222}.hmkc-exemplar__answer h2,.hmkc-exemplar__answer p{color:#000}.hmkc-exemplar__section{break-inside:avoid;margin-bottom:18pt}}

.hmkc-route-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.25rem;align-items:center;margin:0 auto 2rem;padding:1rem 1.15rem;border:1px solid var(--hmkc-line,#d8e5e0);border-radius:14px;background:var(--hmkc-wash,#edf5f2);max-width:760px}.hmkc-route-bar__copy{display:grid;gap:.25rem}.hmkc-route-bar__copy strong{font-size:.98rem;color:var(--hmkc-ink,#18312d)}.hmkc-route-bar__copy span{font-size:.9rem;line-height:1.45;color:var(--hmkc-muted,#536b66)}.hmkc-route-bar__links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}.hmkc-route-bar__links a{display:inline-flex;align-items:center;padding:.5rem .7rem;border:1px solid var(--hmkc-line,#d8e5e0);border-radius:999px;background:#fff;color:var(--hmkc-ink,#18312d);font-size:.82rem;font-weight:700;text-decoration:none;white-space:nowrap}.hmkc-route-bar__links a:hover,.hmkc-route-bar__links a:focus-visible{border-color:var(--hmkc-accent,#176b5d);color:var(--hmkc-accent,#176b5d)}
.hmkc-system-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin:0 auto 2rem;padding:.8rem 0;border-bottom:1px solid var(--hmkc-line,#d8e5e0);max-width:960px}.hmkc-system-nav__title{color:var(--hmkc-ink,#18312d);font-size:.9rem;font-weight:800}.hmkc-system-nav__links{display:flex;flex-wrap:wrap;gap:.8rem}.hmkc-system-nav__links a{color:var(--hmkc-accent,#176b5d);font-size:.86rem;font-weight:700;text-decoration:none}.hmkc-system-nav__links a:hover,.hmkc-system-nav__links a:focus-visible{text-decoration:underline;text-underline-offset:3px}.hmkc-comment-actions{display:inline-flex;gap:.5rem;margin-left:.45rem;vertical-align:middle;font-size:.78rem;font-weight:600}.hmkc-comment-actions a{color:var(--hmkc-accent,#176b5d);text-decoration:none}.hmkc-comment-actions a:hover,.hmkc-comment-actions a:focus-visible{text-decoration:underline;text-underline-offset:2px}

@media print{.hmkc-route-bar,.hmkc-system-nav,.hmkc-comment-actions{display:none!important}}
@media (max-width:680px){.hmkc-route-bar{grid-template-columns:1fr;gap:.8rem}.hmkc-route-bar__links{justify-content:flex-start}.hmkc-route-bar__links a{flex:1 1 auto;justify-content:center}.hmkc-system-nav{align-items:flex-start;flex-direction:column}.hmkc-system-nav__links{gap:.55rem .8rem}.hmkc-comment-actions{display:flex;margin:.35rem 0 0}}

.hmkc-article {
	box-sizing: border-box;
	color: var(--hmkc-text);
	font-size: clamp(1.0625rem, 1rem + .18vw, 1.1875rem);
	line-height: 1.72;
	margin-inline: auto;
	max-width: 760px;
	padding: clamp(1.5rem, 1rem + 2vw, 3rem) clamp(1rem, .6rem + 1.6vw, 2rem) 4rem;
}

.hmkc-article > * {
	margin-block: 0 1.35em;
}

.hmkc-article h2 {
	color: var(--hmkc-text);
	font-family: Montserrat, Arial, sans-serif;
	font-size: clamp(1.55rem, 1.35rem + .75vw, 2.15rem);
	font-weight: 700;
	letter-spacing: -.025em;
	line-height: 1.22;
	margin-block: 2.2em .7em;
}

.hmkc-article p,
.hmkc-article li {
	max-width: 68ch;
}

.hmkc-article a {
	color: var(--hmkc-accent-strong);
	text-decoration-thickness: .09em;
	text-underline-offset: .18em;
}

.hmkc-article a:hover {
	text-decoration-thickness: .14em;
}

.hmkc-context {
	color: var(--hmkc-accent-strong);
	font-size: .88rem;
	font-weight: 700;
	letter-spacing: .035em;
}

.hmkc-lead {
	color: var(--hmkc-text);
	font-size: clamp(1.25rem, 1.12rem + .5vw, 1.55rem);
	font-weight: 500;
	letter-spacing: -.015em;
	line-height: 1.55;
	margin-bottom: 2rem;
}

.hmkc-summary,
.hmkc-urgent {
	border-radius: var(--hmkc-radius);
	box-sizing: border-box;
	margin-block: 2rem 2.5rem;
	padding: clamp(1.25rem, 1rem + 1vw, 2rem);
}

.hmkc-summary {
	background: var(--hmkc-surface);
	border-left: 4px solid var(--hmkc-accent);
}

.hmkc-urgent {
	background: var(--hmkc-urgent);
	border-left: 4px solid var(--hmkc-urgent-line);
}

.hmkc-summary h2,
.hmkc-urgent h2 {
	font-size: clamp(1.3rem, 1.2rem + .35vw, 1.6rem);
	margin-top: 0;
}

.hmkc-summary > :last-child,
.hmkc-urgent > :last-child {
	margin-bottom: 0;
}

.hmkc-article ul,
.hmkc-article ol {
	padding-inline-start: 1.4em;
}

.hmkc-article li {
	margin-block: .55em;
	padding-inline-start: .25em;
}

.hmkc-article li::marker {
	color: var(--hmkc-accent-strong);
	font-weight: 700;
}

.hmkc-divider {
	border-color: var(--hmkc-line);
	margin-block: 3rem 1.25rem;
}

.hmkc-editor-note {
	color: var(--hmkc-muted);
	font-size: .9rem;
}

.hmkc-passport {
	max-width: 760px;
	margin: 3rem auto 1.5rem;
	padding: 1.5rem;
	border: 1px solid var(--hmkc-line);
	border-radius: 14px;
	background: #f7faf9;
}

.hmkc-passport h2 { margin: 0 0 1rem; font-size: 1.35rem; }
.hmkc-passport h3 { margin: 1.25rem 0 .5rem; font-size: 1.05rem; }
.hmkc-passport dl { display: grid; gap: .7rem; margin: 0; }
.hmkc-passport dl div { display: grid; grid-template-columns: minmax(150px, .8fr) 1.5fr; gap: 1rem; }
.hmkc-passport dt { color: var(--hmkc-muted); font-weight: 600; }
.hmkc-passport dd { margin: 0; }
.hmkc-passport__note { margin: 1rem 0 0; color: var(--hmkc-muted); font-size: .9rem; }

.hmkc-related { max-width: 760px; margin: 2rem auto 3rem; }
.hmkc-related h2 { margin: 0 0 1rem; font-size: 1.35rem; }
.hmkc-related__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.hmkc-related__card { display: grid; gap: .35rem; padding: 1rem; border: 1px solid var(--hmkc-line); border-radius: 12px; color: var(--hmkc-ink); text-decoration: none; background: #fff; }
.hmkc-related__card:hover { border-color: var(--hmkc-accent-strong); transform: translateY(-1px); }
.hmkc-related__card span { color: var(--hmkc-muted); font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }

.hmkc-article :focus-visible {
	border-radius: 4px;
	outline: 3px solid color-mix(in srgb, var(--hmkc-accent) 55%, white);
	outline-offset: 3px;
}

@media (max-width: 767px) {
	.hmkc-article {
		font-size: 1.0625rem;
		line-height: 1.68;
		padding-inline: 1rem;
	}

	.hmkc-article h2 {
		margin-top: 1.8em;
	}

	.hmkc-summary,
	.hmkc-urgent {
		border-radius: 12px;
		padding: 1.2rem;
	}

	.hmkc-passport dl div { grid-template-columns: 1fr; gap: .15rem; }
	.hmkc-related__grid { grid-template-columns: 1fr; }
}

@media print {
	.hmkc-article {
		color: #111;
		font-size: 11pt;
		max-width: none;
		padding: 0;
	}

	.hmkc-summary,
	.hmkc-urgent {
		background: transparent;
		break-inside: avoid;
	}
}

.hmkc-observer__choices {
	display: grid;
	gap: .45rem;
}

.hmkc-observer__choices > p {
	margin: 0 0 .35rem;
}

.hmkc-observer__choices button {
	position: relative;
	width: 100%;
	border: 1px solid #d7d0c3;
	border-radius: .65rem;
	background: #fffaf1;
	color: var(--hm-ink);
	padding: .72rem .85rem .72rem 2.7rem;
	text-align: left;
	font: inherit;
	line-height: 1.35;
	cursor: pointer;
}

.hmkc-observer__choices button::before {
	content: '✓';
	position: absolute;
	left: .8rem;
	top: .72rem;
	display: grid;
	place-items: center;
	width: 1.2rem;
	height: 1.2rem;
	border: 1px solid #9ba9a4;
	border-radius: .3rem;
	color: transparent;
	font-size: .8rem;
	font-weight: 800;
}

.hmkc-observer__choices button[aria-pressed="true"] {
	border-color: var(--hm-accent);
	background: #e2f1ec;
}

.hmkc-observer__choices button[aria-pressed="true"]::before {
	border-color: var(--hm-accent);
	background: var(--hm-accent);
	color: #fff;
}

.hmkc-observer__choices button:focus-visible {
	outline: 3px solid #8bc8b8;
	outline-offset: 2px;
}

.hmkc-key-points {
	display: grid;
	gap: .75rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.hmkc-key-points li {
	padding: 1rem 1.1rem 1rem 2.8rem;
	border: 1px solid var(--hm-line);
	border-radius: .75rem;
	background: #fff;
	position: relative;
}

.hmkc-key-points li::before {
	content: '✓';
	position: absolute;
	left: 1rem;
	color: var(--hm-accent);
	font-weight: 800;
}

.hmkc-faq details {
	border-top: 1px solid var(--hm-line);
	padding: 1rem 0;
}

.hmkc-faq summary {
	font-weight: 750;
	cursor: pointer;
}

.hmkc-faq details p {
	max-width: 68ch;
	color: var(--hm-muted);
}

.hmkc-navigator {
	max-width: 1080px;
	margin: 0 auto;
	padding: clamp(1.5rem, 3vw, 3rem) clamp(1rem, 2vw, 2rem) 4rem;
	color: var(--hmkc-text);
}

.hmkc-navigator__intro {
	max-width: 720px;
	margin-bottom: 2rem;
}

.hmkc-navigator__eyebrow {
	margin: 0 0 .55rem;
	color: var(--hmkc-accent);
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.hmkc-navigator__intro h2 {
	margin: 0 0 .7rem;
	font-size: clamp(2rem, 4vw, 3.3rem);
	line-height: 1.08;
	letter-spacing: -.035em;
}

.hmkc-navigator__intro p:last-child {
	margin: 0;
	color: var(--hmkc-muted);
	font-size: 1.12rem;
}

.hmkc-navigator__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
	gap: 1rem;
}

.hmkc-navigator__card {
	display: flex;
	flex-direction: column;
	min-height: 220px;
	padding: 1.3rem;
	border: 1px solid var(--hmkc-line);
	border-radius: var(--hmkc-radius);
	background: #fff;
	box-shadow: 0 8px 24px rgb(23 107 98 / 6%);
}

.hmkc-navigator__card h3 {
	margin: 0 0 .55rem;
	font-size: 1.18rem;
	line-height: 1.25;
}

.hmkc-navigator__card p {
	margin: 0 0 .9rem;
	color: var(--hmkc-muted);
	font-size: .96rem;
	line-height: 1.5;
}

.hmkc-navigator__card ul {
	margin: auto 0 0;
	padding: .75rem 0 0 1.1rem;
	border-top: 1px solid var(--hmkc-line);
}

.hmkc-navigator__card li { margin: .35rem 0; }

.hmkc-navigator__card a {
	color: var(--hmkc-accent-strong);
	font-weight: 700;
	text-decoration-thickness: .08em;
	text-underline-offset: .16em;
}

.hmkc-navigator__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .8rem;
	margin-top: 1.5rem;
	padding: 1.2rem 1.3rem;
	border-radius: var(--hmkc-radius);
	background: var(--hmkc-surface);
}

.hmkc-navigator__footer strong { margin-right: auto; }

.hmkc-navigator__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: .7rem 1rem;
	border-radius: .65rem;
	background: var(--hmkc-accent);
	color: #fff !important;
	font-weight: 750;
	text-decoration: none !important;
}

.hmkc-navigator__button--quiet {
	border: 1px solid var(--hmkc-accent);
	background: transparent;
	color: var(--hmkc-accent) !important;
}

@media (max-width: 680px) {
	.hmkc-navigator__footer { align-items: stretch; }
	.hmkc-navigator__footer strong { flex-basis: 100%; }
	.hmkc-navigator__button { flex: 1 1 100%; }
}
