/* Public marketing site. System fonts only, no external assets. All selectors are prefixed .mk- (or body.mk). */
body.mk { margin:0; background:#fff; color:#1f2937; font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
.mk *, .mk *::before, .mk *::after { box-sizing:border-box; }
.mk a { color:#1d3557; }
.mk a:focus-visible, .mk summary:focus-visible { outline:3px solid #e63946; outline-offset:2px; border-radius:3px; }
.mk-skip { position:absolute; left:-999px; top:0; background:#fff; padding:.5rem 1rem; z-index:10; }
.mk-skip:focus { left:0; }
.mk-wrap { max-width:1060px; margin:0 auto; padding:0 1.25rem; }
.mk-narrow { max-width:760px; }
.mk-header { border-bottom:1px solid #e5e7eb; background:#fff; position:sticky; top:0; z-index:5; }
.mk-bar { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; padding-top:.6rem; padding-bottom:.6rem; }
.mk-logo, .mk .wordmark { display:inline-flex; align-items:center; gap:.45rem; line-height:1; text-decoration:none; }
.mk-logo img, .mk .wordmark img { display:block; height:2.6rem; width:auto; }
.mk .wordmark-name { font-family: Georgia, "Times New Roman", serif; font-style:italic; font-weight:700; color:#1e88e6; font-size:1.85rem; letter-spacing:-0.03em; }
@media (max-width:560px) { .mk-logo img { height:44px; } .mk-bar { padding-top:.5rem; padding-bottom:.5rem; } }
html { scroll-padding-top:6.5rem; } /* in-page anchors (#features…) clear the taller sticky header */
@media (max-width:560px) { html { scroll-padding-top:10.5rem; } }
.mk-nav { display:flex; align-items:center; gap:1rem; flex-wrap:wrap; }
.mk-nav a { text-decoration:none; color:#374151; font-size:.95rem; }
.mk-btn, .mk .mk-btn { display:inline-block; background:#1d3557; color:#fff; padding:.75rem 1.4rem; border-radius:8px; font-weight:600; text-decoration:none; border:2px solid #1d3557; }
.mk .mk-btn:hover { background:#14263f; }
.mk .mk-btn-sm { padding:.4rem .9rem; font-size:.9rem; color:#fff; }
.mk .mk-btn-ghost { background:transparent; color:#1d3557; }
.mk .mk-btn-ghost:hover { background:#eef2f7; }
.mk-hero { background:linear-gradient(180deg,#eef3fa,#fff); padding:4rem 0 3rem; }
.mk-hero h1 { font-size:clamp(1.9rem,4.5vw,3rem); line-height:1.15; margin:.3rem 0 1rem; max-width:20em; color:#1d3557; }
.mk-eyebrow { text-transform:uppercase; letter-spacing:.08em; font-size:.8rem; font-weight:700; color:#b4232d; margin:0; }
.mk-lead { font-size:1.2rem; max-width:40em; color:#374151; }
.mk-cta { display:flex; gap:.75rem; flex-wrap:wrap; margin:1.5rem 0 .5rem; }
.mk-fine { color:#4b5563; font-size:.9rem; margin:.25rem 0; }
.mk-final { text-align:center; padding:3rem 0; }
.mk-final .mk-cta { justify-content:center; }
.mk-section { padding:3.5rem 0; }
.mk-alt { background:#f6f7f9; }
.mk h2 { font-size:clamp(1.5rem,3vw,2rem); margin:0 0 1.5rem; color:#1d3557; }
.mk h3 { margin:.2rem 0 .4rem; font-size:1.15rem; }
.mk-grid { display:grid; gap:1.25rem; list-style:none; padding:0; margin:0; }
.mk-grid-3 { grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.mk-grid-2 { grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); }
.mk-card { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:1.4rem; }
.mk-features { display:grid; gap:1.25rem; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); }
.mk-feature { background:#fff; border:1px solid #e5e7eb; border-left:4px solid #e63946; border-radius:8px; padding:1.2rem 1.4rem; }
.mk-feature p { margin:0; }
.mk-sub { margin-top:2.5rem !important; }
.mk-soon { list-style:none; padding:0; display:grid; gap:.5rem; }
.mk-badge { display:inline-block; background:#fff3cd; color:#664d03; border:1px solid #f1d98a; border-radius:999px; padding:.05rem .6rem; font-size:.75rem; font-weight:700; vertical-align:middle; margin-right:.4rem; }
.mk-amount { margin:.2rem 0 .6rem; color:#4b5563; }
.mk-amount span { font-size:2.6rem; font-weight:800; color:#1d3557; }
.mk-price-soon { background:#fafafa; border-style:dashed; }
.mk-check { padding-left:1.2rem; margin:1rem 0 1.4rem; }
details { background:#fff; border:1px solid #e5e7eb; border-radius:8px; padding:.8rem 1.1rem; margin:.6rem 0; }
summary { cursor:pointer; font-weight:600; }
details p { margin:.6rem 0 0; }
.mk-legal { padding-top:2.5rem; padding-bottom:3rem; }
.mk-legal h1 { color:#1d3557; margin-bottom:.2rem; }
.mk-legal h2 { font-size:1.25rem; margin:2rem 0 .5rem; }
.mk-draft { background:#fff3cd; border:1px solid #f1d98a; padding:.7rem 1rem; border-radius:6px; }
.mk-footer { background:#1d3557; color:#e5e9f0; padding:2rem 0; margin-top:0; font-size:.95rem; }
.mk-foot { display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.mk-footer a { color:#fff; margin-left:1rem; }
.mk-footer p { margin:0; }
@media (max-width:560px) { .mk-nav a.mk-link, .mk-nav a[href$="#faq"] { display:none; } .mk-footer a { margin:0 1rem 0 0; } }
@media (prefers-reduced-motion:no-preference) { html { scroll-behavior:smooth; } }
