/* ============================================================
   Clave — homepage (first draft). Built on the Clave design tokens.
   ============================================================ */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { margin: 0; font-family: var(--font-sans); color: var(--text-body); background: var(--surface-page); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, p, ul, figure, blockquote { margin: 0; }
a { text-decoration: none; color: inherit; }
button { font-family: inherit; }
img, svg { display: block; }

.mk-site { overflow-x: hidden; }
.mk-eyebrow { font-size: var(--text-xs); font-weight: var(--fw-semibold); letter-spacing: var(--tracking-wider); text-transform: uppercase; color: var(--brand-primary); }
.mk-h2 { font-size: clamp(28px, 4vw, 44px); font-weight: var(--fw-semibold); color: var(--text-strong); letter-spacing: var(--tracking-tight); line-height: var(--leading-tight); margin-top: 12px; text-wrap: balance; }

/* WhatsApp link affordance */
.mk-wa { display: inline-flex; align-items: center; gap: 7px; color: var(--success-600); font-weight: var(--fw-medium); font-size: var(--text-base); transition: color var(--duration-fast) var(--ease-standard); }
.mk-wa:hover { color: var(--success-500); }

/* ---------- Nav ---------- */
.mk-nav-wrap { position: sticky; top: 0; z-index: 60; }
.mk-announce { display: block; background: var(--surface-inverse); color: #fff; text-align: center; font-size: var(--text-sm); padding: 9px 20px; line-height: 1.4; text-decoration: none; transition: background var(--duration-fast) var(--ease-standard); }
.mk-announce:hover { background: var(--navy-800); }
.mk-announce:focus-visible { outline: 3px solid rgba(195, 255, 104, 0.65); outline-offset: -3px; }
.mk-announce strong { color: var(--clave-lime); font-weight: var(--fw-semibold); }
.mk-announce a { color: #fff; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(255,255,255,0.4); }
.mk-nav { background: rgba(255,255,255,0.85); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-bottom: 1px solid var(--border-subtle); }
.mk-nav__inner { max-width: var(--container-max); margin: 0 auto; padding: 11px var(--container-pad); display: flex; align-items: center; gap: 28px; }
.mk-nav__brand img { height: 48px; width: auto; }
.mk-nav__links { display: flex; gap: 26px; flex: 1; }
.mk-nav__links a { font-size: var(--text-base); font-weight: var(--fw-medium); color: var(--text-body); transition: color var(--duration-fast) var(--ease-standard); }
.mk-nav__links a:hover { color: var(--brand-primary); }
.mk-nav__links a[aria-current="page"] { color: var(--brand-primary); font-weight: var(--fw-semibold); }
.mk-nav__actions { display: flex; align-items: center; gap: 12px; }
.mk-nav__login { font-size: var(--text-base); font-weight: var(--fw-medium); color: var(--text-strong); }
.mk-nav__login:hover { color: var(--brand-primary); }
.mk-nav__burger { display: none; border: 1px solid var(--border-default); background: var(--surface-card); width: 42px; height: 42px; border-radius: var(--radius-md); align-items: center; justify-content: center; color: var(--text-strong); cursor: pointer; }
.mk-nav__mobile { display: none; }

/* ---------- Hero ---------- */
.mk-hero { max-width: var(--container-max); margin: 0 auto; padding: clamp(40px, 6vw, 88px) var(--container-pad) 0; }
.mk-hero__inner { display: grid; grid-template-columns: 1.02fr 1fr; gap: 56px; align-items: center; }
.mk-hero__h1 { font-size: clamp(36px, 5.2vw, 60px); font-weight: var(--fw-semibold); color: var(--text-strong); letter-spacing: var(--tracking-tight); line-height: 1.04; margin-top: 16px; text-wrap: balance; }
.mk-hero__sub { font-size: var(--text-lg); line-height: var(--leading-relaxed); color: var(--text-muted); margin-top: 18px; max-width: 520px; }
.mk-hero__cta { display: flex; align-items: center; gap: 14px; margin-top: 28px; flex-wrap: wrap; }

/* Dual-track toggle */
.mk-track { display: inline-flex; gap: 6px; margin-top: 24px; background: var(--surface-muted); padding: 5px; border-radius: var(--radius-full); border: 1px solid var(--border-subtle); }
.mk-track--center { margin: 22px auto 0; display: flex; justify-content: center; }
.mk-track__chip { display: inline-flex; align-items: center; gap: 7px; border: none; background: none; cursor: pointer; font-size: var(--text-base); font-weight: var(--fw-medium); color: var(--text-muted); padding: 9px 18px; border-radius: var(--radius-full); transition: all var(--duration-fast) var(--ease-standard); }
.mk-track__chip:hover { color: var(--text-strong); }
.mk-track__chip.is-active { background: var(--surface-card); color: var(--brand-primary); box-shadow: var(--shadow-sm); }

/* Hero art / product mock float */
.mk-hero__art { perspective: 1800px; position: relative; }
.mk-hero__glow { position: absolute; inset: -8% -4% -8% -4%; background: radial-gradient(60% 60% at 70% 30%, rgba(184,208,0,0.10), transparent 70%); z-index: 0; pointer-events: none; }

/* ---------- Product browser mock (shared) ---------- */
.mk-mock { position: relative; z-index: 1; background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-xl); box-shadow: var(--shadow-xl); overflow: hidden; }
.mk-mock--tilt { transform: rotateY(-7deg) rotateX(2deg); }
.mk-mock__bar { display: flex; align-items: center; gap: 7px; padding: 12px 16px; background: var(--surface-muted); border-bottom: 1px solid var(--border-subtle); }
.mk-mock__dot { width: 10px; height: 10px; border-radius: 50%; background: var(--ink-300); }
.mk-mock__url { margin-left: 12px; font-size: var(--text-xs); color: var(--text-muted); font-family: var(--font-mono); }
.mk-mock__body { padding: 18px; display: flex; flex-direction: column; gap: 14px; }
/* Product screenshot filling a mock frame edge-to-edge under the bar */
.mk-shot { display: block; width: 100%; height: auto; }
.mk-mock__patient { display: flex; align-items: center; gap: 12px; }
.mk-mock__pmeta { flex: 1; min-width: 0; }
.mk-mock__pname { display: flex; align-items: center; gap: 8px; font-size: var(--text-md); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-mock__pfacts { font-size: var(--text-sm); color: var(--text-muted); margin-top: 2px; }
.mk-mock__timer { display: inline-flex; align-items: center; gap: 5px; font-size: var(--text-sm); color: var(--text-muted); white-space: nowrap; }
.mk-mock__section { background: var(--surface-muted); border-radius: var(--radius-md); padding: 13px 15px; }
.mk-mock__label { font-size: var(--text-xs); font-weight: var(--fw-semibold); color: var(--text-muted); text-transform: uppercase; letter-spacing: var(--tracking-wide); }
.mk-mock__text { font-size: var(--text-base); color: var(--text-body); margin-top: 6px; line-height: var(--leading-normal); }
.mk-mock__row { display: flex; flex-wrap: wrap; gap: 8px; }
.mk-mock__chip { display: inline-flex; align-items: center; gap: 6px; font-size: var(--text-sm); font-weight: var(--fw-medium); color: var(--navy-700); background: var(--navy-100); padding: 7px 11px; border-radius: var(--radius-sm); }
.mk-mock__chip--dx { background: var(--lime-100); color: var(--lime-800); }
.mk-mock__close { display: flex; align-items: center; justify-content: space-between; gap: 12px; background: var(--surface-inverse); border-radius: var(--radius-md); padding: 14px 16px; }
.mk-mock__close strong { display: block; color: #fff; font-size: var(--text-base); font-weight: var(--fw-semibold); }
.mk-mock__close span { color: var(--navy-200); font-size: var(--text-sm); }
.mk-mock__btn { display: inline-flex; align-items: center; gap: 7px; background: var(--clave-lime); color: var(--navy-900); font-weight: var(--fw-semibold); font-size: var(--text-sm); padding: 9px 14px; border-radius: var(--radius-sm); white-space: nowrap; }

/* ---------- Social proof ---------- */
.mk-proof { max-width: var(--container-max); margin: 0 auto; padding: clamp(40px,5vw,60px) var(--container-pad) 0; display: flex; flex-direction: column; align-items: center; gap: 18px; text-align: center; }
.mk-proof__lead { font-size: var(--text-md); font-weight: var(--fw-medium); color: var(--text-strong); }
.mk-proof__lead b { color: var(--brand-primary); font-weight: var(--fw-semibold); }
.mk-proof__logos { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 18px 36px; }
.mk-proof__logo { display: inline-flex; align-items: center; gap: 9px; font-size: var(--text-lg); font-weight: var(--fw-semibold); color: var(--ink-400); letter-spacing: -0.01em; }
.mk-proof__logo svg { color: var(--ink-300); }
.mk-proof__made { font-size: var(--text-sm); color: var(--text-muted); }

/* ---------- Section primitive ---------- */
.mk-section { max-width: var(--container-max); margin: 0 auto; padding: var(--section-pad-y) var(--container-pad); }
.mk-section--muted { max-width: none; background: var(--surface-muted); }
.mk-section--muted > * { max-width: var(--container-max); margin-left: auto; margin-right: auto; }
.mk-section--dark { max-width: none; background: var(--surface-inverse); }
.mk-section--dark > * { max-width: var(--container-max); margin-left: auto; margin-right: auto; }
.mk-section--dark .mk-eyebrow { color: var(--clave-lime); }
.mk-section--dark .mk-h2 { color: #fff; }
.mk-section--dark .mk-section__lead { color: var(--navy-200); }
.mk-section__head { text-align: center; max-width: 760px; margin: 0 auto 48px; }
.mk-section__lead { font-size: var(--text-lg); color: var(--text-muted); margin-top: 14px; line-height: var(--leading-relaxed); }

/* ---------- Product tour (real screen mocks) ---------- */
.mk-tour { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: stretch; }
.mk-tourcard { display: flex; flex-direction: column; background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-sm); transition: box-shadow var(--duration-base) var(--ease-standard), transform var(--duration-base) var(--ease-standard); }
.mk-tourcard:hover { box-shadow: var(--shadow-lg); transform: translateY(-4px); }
.mk-tourcard__screen { background: var(--surface-muted); border-bottom: 1px solid var(--border-subtle); padding: 16px; min-height: 196px; display: flex; flex-direction: column; gap: 10px; }
.mk-tourcard__caption { padding: 22px 24px 26px; }
.mk-tourcard__step { display: inline-flex; align-items: center; gap: 7px; font-size: var(--text-xs); font-weight: var(--fw-semibold); letter-spacing: var(--tracking-wide); text-transform: uppercase; color: var(--brand-primary); }
.mk-tourcard__step svg { color: var(--clave-lime); }
.mk-tourcard__title { font-size: var(--text-xl); font-weight: var(--fw-semibold); color: var(--text-strong); margin-top: 10px; letter-spacing: var(--tracking-snug); }
.mk-tourcard__body { font-size: var(--text-base); line-height: var(--leading-relaxed); color: var(--text-muted); margin-top: 7px; }

/* mini screen elements */
.mk-mini { background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); padding: 11px 13px; display: flex; flex-direction: column; gap: 7px; }
.mk-mini__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.mk-mini__h { font-size: var(--text-sm); font-weight: var(--fw-semibold); color: var(--text-strong); display: flex; align-items: center; gap: 7px; }
.mk-mini__h svg { color: var(--navy-600); }
.mk-mini__line { height: 7px; border-radius: var(--radius-full); background: var(--ink-100); }
.mk-mini__row { display: flex; align-items: center; gap: 8px; }
.mk-mini__pill { font-size: var(--text-2xs); font-weight: var(--fw-medium); padding: 4px 9px; border-radius: var(--radius-full); }
.mk-pill--navy { background: var(--navy-100); color: var(--navy-700); }
.mk-pill--lime { background: var(--lime-100); color: var(--lime-800); }
.mk-pill--ok { background: var(--success-50); color: var(--success-600); display: inline-flex; align-items: center; gap: 5px; }
.mk-pill--warn { background: var(--warning-50); color: var(--warning-600); }
.mk-mini__appt { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: var(--radius-sm); background: var(--surface-muted); }
.mk-mini__time { font-size: var(--text-2xs); font-weight: var(--fw-semibold); color: var(--text-muted); width: 40px; flex: none; }
.mk-mini__appt-name { font-size: var(--text-sm); color: var(--text-body); font-weight: var(--fw-medium); flex: 1; }
.mk-mini__wa { width: 24px; height: 24px; border-radius: 50%; background: var(--success-50); color: var(--success-600); display: inline-flex; align-items: center; justify-content: center; flex: none; }
.mk-mini__total { display: flex; align-items: center; justify-content: space-between; padding-top: 4px; }
.mk-mini__total b { font-size: var(--text-md); color: var(--text-strong); font-weight: var(--fw-semibold); }

/* ---------- Dual value ---------- */
.mk-value { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px 32px; max-width: 1040px; margin: 0 auto; }
.mk-value__item { display: flex; gap: 14px; align-items: flex-start; }
.mk-value__check { width: 36px; height: 36px; flex: none; border-radius: var(--radius-md); background: var(--lime-100); color: var(--lime-800); display: inline-flex; align-items: center; justify-content: center; }
.mk-value__t { font-size: var(--text-lg); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-value__b { font-size: var(--text-base); color: var(--text-muted); margin-top: 5px; line-height: var(--leading-normal); }
.mk-value__cta { text-align: center; margin-top: 44px; }

/* ---------- How it works ---------- */
.mk-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; position: relative; }
.mk-step { background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-xl); padding: 30px 28px; position: relative; }
.mk-step__num { width: 44px; height: 44px; border-radius: var(--radius-md); background: var(--brand-primary); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: var(--text-lg); font-weight: var(--fw-semibold); }
.mk-step__t { font-size: var(--text-xl); font-weight: var(--fw-semibold); color: var(--text-strong); margin-top: 18px; letter-spacing: var(--tracking-snug); }
.mk-step__b { font-size: var(--text-base); color: var(--text-muted); margin-top: 8px; line-height: var(--leading-relaxed); }
.mk-step__arrow { position: absolute; top: 46px; right: -26px; color: var(--ink-300); z-index: 2; }
.mk-steps__foot { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 34px; font-size: var(--text-base); color: var(--text-muted); }
.mk-steps__foot svg { color: var(--success-500); }

/* ---------- Platform (puzzle) ---------- */
.mk-platform { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 48px; align-items: center; }
.mk-platform__art { background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-2xl); box-shadow: var(--shadow-md); padding: 14px; }
.mk-platform__art img { width: 100%; height: auto; }
.mk-platform__copy .mk-h2 { margin-top: 12px; }
.mk-platform__lead { font-size: var(--text-lg); color: var(--text-muted); margin-top: 16px; line-height: var(--leading-relaxed); max-width: 460px; }
.mk-pieces { display: flex; flex-direction: column; gap: 4px; margin-top: 26px; }
.mk-piece { display: flex; align-items: center; gap: 14px; padding: 13px 4px; border-bottom: 1px solid var(--border-subtle); }
.mk-piece:last-child { border-bottom: none; }
.mk-piece__icon { width: 40px; height: 40px; flex: none; border-radius: var(--radius-md); background: var(--navy-100); color: var(--navy-700); display: inline-flex; align-items: center; justify-content: center; }
.mk-piece__t { font-size: var(--text-md); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-piece__b { font-size: var(--text-sm); color: var(--text-muted); margin-top: 2px; }
.mk-piece__tier { margin-left: auto; font-size: var(--text-2xs); font-weight: var(--fw-semibold); letter-spacing: var(--tracking-wide); text-transform: uppercase; color: var(--text-muted); background: var(--surface-muted); padding: 5px 10px; border-radius: var(--radius-full); white-space: nowrap; }

/* ---------- Testimonios ---------- */
.mk-testi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.mk-testi__card { display: flex; flex-direction: column; gap: 18px; background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-xl); padding: 28px; box-shadow: var(--shadow-sm); }
.mk-testi__quoteicon { color: var(--lime-400); }
.mk-testi__quote { font-size: var(--text-lg); line-height: var(--leading-relaxed); color: var(--text-strong); font-weight: var(--fw-medium); flex: 1; }
.mk-testi__quote b { color: var(--brand-primary); font-weight: var(--fw-semibold); }
.mk-testi__person { display: flex; align-items: center; gap: 13px; padding-top: 4px; border-top: 1px solid var(--border-subtle); margin-top: 4px; padding-top: 18px; }
.mk-testi__pmeta { display: flex; flex-direction: column; }
.mk-testi__pname { font-size: var(--text-base); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-testi__prole { font-size: var(--text-sm); color: var(--text-muted); }

/* ---------- Pricing ---------- */
.mk-pricing { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; align-items: start; }
.mk-tier { display: flex; flex-direction: column; gap: 8px; background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-xl); padding: 30px 28px; position: relative; }
.mk-tier.is-featured { border: 1.5px solid var(--brand-primary); box-shadow: var(--shadow-lg); transform: translateY(-10px); }
.mk-tier__flag { position: absolute; top: -13px; left: 28px; background: var(--clave-lime); color: var(--navy-900); font-size: var(--text-xs); font-weight: var(--fw-semibold); padding: 5px 13px; border-radius: var(--radius-full); }
.mk-tier__name { font-size: var(--text-xl); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-tier__who { font-size: var(--text-sm); color: var(--text-muted); }
.mk-tier__price { display: flex; align-items: baseline; gap: 6px; margin: 14px 0 4px; flex-wrap: wrap; }
.mk-tier__amount { font-size: var(--text-3xl); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-tier__from { font-size: var(--text-sm); font-weight: var(--fw-regular); color: var(--text-muted); }
.mk-tier__per { font-size: var(--text-base); font-weight: var(--fw-regular); color: var(--text-muted); }
.mk-tier__feats { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 11px; margin: 14px 0 24px; flex: 1; }
.mk-tier__feats li { display: flex; align-items: flex-start; gap: 9px; font-size: var(--text-base); color: var(--text-body); line-height: var(--leading-snug); }
.mk-tier__feats li svg { color: var(--success-500); flex: none; margin-top: 2px; }
.mk-pricing__foot { text-align: center; margin-top: 30px; font-size: var(--text-base); color: var(--text-muted); }
.mk-pricing__foot a { color: var(--text-link); font-weight: var(--fw-medium); }

/* Compact pricing preview (home) — the full cards + comparison live on /precios */
.mk-priceview { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; align-items: stretch; }
.mk-priceview__tier { position: relative; display: flex; flex-direction: column; gap: 3px; padding: 20px 22px; background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); text-decoration: none; transition: border-color 0.15s var(--ease-standard), transform 0.15s var(--ease-standard); }
.mk-priceview__tier:hover { border-color: var(--brand-primary); transform: translateY(-3px); }
.mk-priceview__tier.is-featured { border: 1.5px solid var(--brand-primary); }
.mk-priceview__flag { position: absolute; top: -11px; left: 22px; background: var(--clave-lime); color: var(--navy-900); font-size: var(--text-2xs); font-weight: var(--fw-semibold); padding: 3px 10px; border-radius: var(--radius-full); }
.mk-priceview__name { font-size: var(--text-lg); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-priceview__who { font-size: var(--text-xs); color: var(--text-muted); }
.mk-priceview__price { margin: 8px 0 2px; font-size: var(--text-xl); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-priceview__price em { font-style: normal; font-size: var(--text-xs); font-weight: var(--fw-regular); color: var(--text-muted); }
.mk-priceview__line { margin-top: 5px; font-size: var(--text-sm); color: var(--text-body); line-height: var(--leading-snug); }

/* ---------- Peace of mind ---------- */
.mk-peace { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.mk-peace__item { background: var(--surface-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-xl); padding: 28px; }
.mk-peace__icon { width: 46px; height: 46px; border-radius: var(--radius-md); background: var(--success-50); color: var(--success-600); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.mk-peace__t { font-size: var(--text-lg); font-weight: var(--fw-semibold); color: var(--text-strong); }
.mk-peace__b { font-size: var(--text-base); color: var(--text-muted); margin-top: 6px; line-height: var(--leading-relaxed); }
.mk-peace__foot { text-align: center; margin-top: 36px; }
.mk-peace__link { display: inline-flex; align-items: center; gap: 7px; font-size: var(--text-base); font-weight: var(--fw-medium); color: var(--text-link); }

/* ---------- FAQ ---------- */
.mk-faq { max-width: 760px; margin: 0 auto; display: flex; flex-direction: column; }
.mk-faq__item { border-bottom: 1px solid var(--border-subtle); }
.mk-faq__q { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 4px; background: none; border: none; cursor: pointer; text-align: left; font-size: var(--text-lg); font-weight: var(--fw-medium); color: var(--text-strong); }
.mk-faq__q:hover { color: var(--brand-primary); }
.mk-faq__icon { flex: none; width: 32px; height: 32px; border-radius: var(--radius-md); background: var(--surface-muted); color: var(--text-strong); display: inline-flex; align-items: center; justify-content: center; transition: background var(--duration-fast) var(--ease-standard); }
.mk-faq__item.is-open .mk-faq__icon { background: var(--brand-primary); color: #fff; }
.mk-faq__a { max-height: 0; overflow: hidden; transition: max-height var(--duration-base) var(--ease-standard); }
.mk-faq__a-inner { padding: 0 4px 22px; font-size: var(--text-base); line-height: var(--leading-relaxed); color: var(--text-muted); max-width: 640px; }

/* ---------- Final CTA ---------- */
.mk-cta { background: var(--surface-inverse); position: relative; overflow: hidden; }
.mk-cta__inner { position: relative; z-index: 1; max-width: var(--container-max); margin: 0 auto; padding: clamp(64px, 8vw, 120px) var(--container-pad); text-align: center; }
.mk-cta__h2 { font-size: clamp(28px, 4vw, 48px); font-weight: var(--fw-semibold); color: #fff; letter-spacing: var(--tracking-tight); line-height: var(--leading-tight); text-wrap: balance; max-width: 760px; margin: 0 auto; }
.mk-cta__sub { font-size: var(--text-lg); color: var(--navy-200); margin-top: 16px; }
.mk-cta__row { display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: 32px; flex-wrap: wrap; }
.mk-cta__wa { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-weight: var(--fw-medium); font-size: var(--text-md); }
.mk-cta__wa:hover { color: var(--clave-lime); }
.mk-cta__brand { margin-top: 40px; font-size: var(--text-md); color: var(--clave-lime); font-weight: var(--fw-medium); letter-spacing: var(--tracking-snug); }
.mk-cta__glow { position: absolute; width: 720px; height: 720px; border-radius: 50%; background: radial-gradient(closest-side, rgba(184,208,0,0.10), transparent); top: -340px; left: 50%; transform: translateX(-50%); pointer-events: none; }

/* ---------- Footer ---------- */
.mk-footer { background: var(--surface-inverse-2); color: var(--navy-200); }
.mk-footer__inner { max-width: var(--container-max); margin: 0 auto; padding: 64px var(--container-pad) 44px; display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 36px; }
.mk-footer__brand img { height: 36px; width: auto; margin-bottom: 16px; }
.mk-footer__tag { font-size: var(--text-base); line-height: var(--leading-relaxed); max-width: 320px; }
.mk-footer__contact { display: flex; flex-direction: column; gap: 9px; margin-top: 18px; }
.mk-footer__contact a { display: inline-flex; align-items: center; gap: 9px; font-size: var(--text-sm); }
.mk-footer__contact a:hover { color: #fff; }
.mk-footer__col { display: flex; flex-direction: column; gap: 12px; }
.mk-footer__h { font-size: var(--text-sm); font-weight: var(--fw-semibold); color: #fff; text-transform: uppercase; letter-spacing: var(--tracking-wide); margin-bottom: 4px; }
.mk-footer__col a { font-size: var(--text-base); }
.mk-footer__col a:hover { color: #fff; }
.mk-footer__legal { max-width: var(--container-max); margin: 0 auto; padding: 22px var(--container-pad); border-top: 1px solid var(--border-inverse); display: flex; justify-content: space-between; gap: 16px; font-size: var(--text-sm); flex-wrap: wrap; }
.mk-footer__legal a:hover { color: #fff; }

/* ---------- WhatsApp floating button ---------- */
.mk-fab { position: fixed; right: 22px; bottom: 22px; z-index: 70; width: 58px; height: 58px; border-radius: 50%; background: var(--success-500); color: #fff; display: inline-flex; align-items: center; justify-content: center; box-shadow: var(--shadow-lg); border: none; cursor: pointer; transition: transform var(--duration-fast) var(--ease-standard), background var(--duration-fast) var(--ease-standard); }
.mk-fab:hover { transform: translateY(-3px); background: var(--success-600); }

/* ---------- Responsive ---------- */
@media (max-width: 960px) {
  .mk-platform { grid-template-columns: 1fr; gap: 32px; }
  .mk-platform__art { order: -1; max-width: 560px; margin: 0 auto; }
}
@media (max-width: 920px) {
  .mk-hero__inner { grid-template-columns: 1fr; gap: 40px; }
  .mk-hero__art { order: -1; max-width: 520px; }
  .mk-mock--tilt { transform: none; }
  .mk-nav__links, .mk-nav__login { display: none; }
  .mk-nav__burger { display: inline-flex; }
  .mk-tour, .mk-value, .mk-peace, .mk-pricing, .mk-priceview, .mk-steps, .mk-testi { grid-template-columns: 1fr; }
  .mk-tier.is-featured { transform: none; }
  .mk-step__arrow { display: none; }
  .mk-footer__inner { grid-template-columns: 1fr 1fr; }
  /* Mobile nav drawer */
  .mk-nav__mobile { display: block; background: var(--surface-card); border-bottom: 1px solid var(--border-subtle); padding: 8px var(--container-pad) 18px; }
  .mk-nav__mobile a { display: block; padding: 12px 4px; font-size: var(--text-md); font-weight: var(--fw-medium); color: var(--text-body); border-bottom: 1px solid var(--border-subtle); }
  .mk-nav__mobile .mk-nav__mobile-actions { display: flex; flex-direction: column; gap: 10px; margin-top: 16px; }
}
@media (max-width: 560px) {
  .mk-value { gap: 22px; }
  .mk-footer__inner { grid-template-columns: 1fr; gap: 28px; }
  .mk-footer__legal { flex-direction: column; gap: 8px; }
  .mk-testi__quote { font-size: var(--text-md); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition: none !important; }
}
