@font-face { font-family: "Satoshi"; src: url("../fonts/satoshi-regular.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Satoshi"; src: url("../fonts/satoshi-medium.woff2") format("woff2"); font-weight: 500 600; font-display: swap; }
@font-face { font-family: "Satoshi"; src: url("../fonts/satoshi-bold.woff2") format("woff2"); font-weight: 700 900; font-display: swap; }

:root {
  --mk-bg: #f5f7fb;
  --mk-paper: #ffffff;
  --mk-ink: #081426;
  --mk-muted: #647087;
  --mk-line: rgb(8 20 38 / .1);
  --mk-blue: #245cff;
  --mk-blue-dark: #123fca;
  --mk-blue-light: #dce7ff;
  --mk-night: #071326;
  --mk-night-soft: #0e1c32;
  --mk-green: #36c98f;
  --mk-shell: min(1320px, calc(100vw - 48px));
  --mk-ease-out: cubic-bezier(.32, .72, 0, 1);
  --mk-ease-spring: cubic-bezier(.22, 1, .36, 1);
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { overflow-x: clip; background: var(--mk-bg); scroll-behavior: smooth; scroll-padding-top: 110px; }
body { margin: 0; overflow-x: clip; background: var(--mk-bg); color: var(--mk-ink); font-family: "Satoshi", sans-serif; font-feature-settings: "ss01", "ss03", "tnum"; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
body.mk-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
img { display: block; max-width: 100%; }
figure, h1, h2, h3, p, ul, ol, dl, dd { margin: 0; }
ul, ol { padding: 0; list-style: none; }
::selection { background: #c9d8ff; color: var(--mk-ink); }
.mk-shell { width: var(--mk-shell); margin-inline: auto; }

.mk-skip { position: fixed; z-index: 90; inset: 12px auto auto 12px; width: 1px; height: 1px; overflow: hidden; padding: 0; border-radius: 10px; background: var(--mk-night); color: #fff; clip-path: inset(50%); white-space: nowrap; }
.mk-skip:focus { width: auto; height: auto; overflow: visible; padding: 10px 14px; clip-path: none; font-size: .78rem; font-weight: 700; }

/* Floating navigation, restrained to one glass surface. */
.mk-header { position: fixed; z-index: 50; inset: 18px 0 auto; pointer-events: none; }
.mk-header__inner { min-height: 64px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 28px; padding: 8px 9px 8px 16px; border: 1px solid rgb(255 255 255 / .72); border-radius: 22px; background: rgb(255 255 255 / .78); box-shadow: 0 22px 55px -38px rgb(15 35 80 / .46), inset 0 1px 0 rgb(255 255 255 / .95); backdrop-filter: blur(22px) saturate(145%); -webkit-backdrop-filter: blur(22px) saturate(145%); pointer-events: auto; transition: background-color 260ms var(--mk-ease-out), transform 500ms var(--mk-ease-out), box-shadow 260ms var(--mk-ease-out); }
.mk-header.is-scrolled .mk-header__inner { background: rgb(255 255 255 / .9); transform: translateY(-6px) scale(.992); box-shadow: 0 28px 65px -38px rgb(15 35 80 / .56); }
.mk-brand { display: inline-flex; align-items: center; gap: 10px; width: max-content; }
.mk-brand__lockup { width: 148px; height: auto; display: block; object-fit: contain; }
.mk-nav { display: flex; align-items: center; justify-content: center; gap: 4px; }
.mk-nav a, .mk-login { padding: 12px 14px; border-radius: 12px; color: #687389; font-size: .76rem; font-weight: 500; transition: color 180ms var(--mk-ease-out), background-color 180ms var(--mk-ease-out), transform 140ms var(--mk-ease-out); }
.mk-nav a:hover, .mk-nav a.is-active, .mk-login:hover { color: var(--mk-ink); background: rgb(8 20 38 / .045); }
.mk-nav a:active, .mk-login:active { transform: scale(.97); }
.mk-header__actions { display: flex; justify-content: flex-end; align-items: center; gap: 4px; }

.mk-button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 5px 6px 5px 20px; border: 1px solid transparent; border-radius: 999px; font-size: .8rem; font-weight: 700; white-space: nowrap; transition: color 240ms var(--mk-ease-out), background-color 240ms var(--mk-ease-out), border-color 240ms var(--mk-ease-out), box-shadow 240ms var(--mk-ease-out), transform 150ms var(--mk-ease-out); }
.mk-button i { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; background: rgb(255 255 255 / .16); transition: transform 380ms var(--mk-ease-spring), background-color 240ms var(--mk-ease-out); }
.mk-button i svg { width: 16px; height: 16px; }
.mk-button:hover i { transform: translate(2px, -2px) scale(1.06); background: rgb(255 255 255 / .24); }
.mk-button:active { transform: scale(.975); }
.mk-button--small { min-height: 46px; padding-left: 18px; }
.mk-button--small i { width: 34px; height: 34px; }
.mk-button--large { min-height: 58px; padding-left: 25px; font-size: .88rem; }
.mk-button--large i { width: 46px; height: 46px; }
.mk-button--primary { background: var(--mk-blue); color: #fff; box-shadow: 0 18px 38px -22px var(--mk-blue); }
.mk-button--primary:hover { background: var(--mk-blue-dark); box-shadow: 0 22px 44px -22px var(--mk-blue); }
.mk-button--ghost { padding-right: 24px; border-color: rgb(8 20 38 / .14); background: rgb(255 255 255 / .62); color: var(--mk-ink); }
.mk-button--ghost:hover { border-color: rgb(8 20 38 / .28); background: #fff; }
.mk-button--light { background: #fff; color: var(--mk-blue-dark); }
.mk-button--light i { background: #e8efff; }
.mk-menu-toggle, .mk-mobile-menu { display: none; }
.mk-header-sentinel { position: absolute; inset: 100px auto auto 0; width: 1px; height: 1px; }

/* Cinematic hero. */
.mk-hero { position: relative; min-height: 1120px; overflow: hidden; padding-block: 172px 104px; background: linear-gradient(180deg, #f8faff 0%, #eef3ff 56%, #f5f7fb 100%); }
.mk-hero__glow { position: absolute; width: min(1100px, 90vw); height: 760px; inset: 20px 50% auto auto; transform: translateX(50%); border-radius: 50%; background: radial-gradient(circle, rgb(71 120 255 / .22), rgb(132 167 255 / .08) 42%, transparent 72%); pointer-events: none; }
.mk-hero__content { position: relative; z-index: 2; }
.mk-hero__copy { display: grid; justify-items: center; text-align: center; }
.mk-hero h1 { max-width: 1180px; font-size: clamp(4.4rem, 7.2vw, 7rem); font-weight: 700; line-height: .91; letter-spacing: -.04em; text-wrap: balance; }
.mk-hero h1 span { display: block; }
.mk-hero h1 span:last-child { color: var(--mk-blue); }
.mk-hero__copy > p { max-width: 760px; margin-block-start: 28px; color: var(--mk-muted); font-size: clamp(1rem, 1.4vw, 1.2rem); line-height: 1.65; text-wrap: pretty; }
.mk-hero__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-block-start: 34px; }

.mk-stage { position: relative; height: 620px; margin-block-start: 86px; perspective: 1400px; }
.mk-stage__halo { position: absolute; width: 72%; height: 40%; inset: auto 14% 2%; background: rgb(36 92 255 / .2); filter: blur(70px); border-radius: 50%; opacity: .7; }
.mk-device { position: absolute; overflow: hidden; padding: 7px; border: 1px solid rgb(8 20 38 / .1); border-radius: 24px; background: linear-gradient(145deg, rgb(255 255 255 / .94), rgb(226 234 247 / .9)); box-shadow: 0 40px 100px -54px rgb(13 35 85 / .68), inset 0 1px 0 #fff; }
.mk-device::before { content: ""; position: absolute; z-index: 2; inset: 7px; border-radius: 17px; box-shadow: inset 0 1px 0 rgb(255 255 255 / .7); pointer-events: none; }
.mk-device figure { overflow: hidden; border-radius: 17px; background: #fff; }
.mk-device figure img { width: 100%; height: auto; }
.mk-device__chrome { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-inline: 12px; color: #798399; font-size: .6rem; }
.mk-device__chrome span { display: flex; align-items: center; gap: 7px; }
.mk-device__chrome b { width: 7px; height: 7px; border-radius: 50%; background: var(--mk-green); }
.mk-device--main { z-index: 2; width: min(1020px, 82%); inset: 20px 50% auto auto; transform: translateX(50%) rotateX(2deg); }
.mk-device--agenda { z-index: 3; width: min(390px, 32%); inset: -28px 0 auto auto; transform: rotate(2.2deg) translateZ(60px); }
.mk-device--booking { z-index: 4; width: min(350px, 30%); inset: auto auto 0 -10px; transform: rotate(-2deg) translateZ(90px); }

.mk-marquee { overflow: hidden; padding-block: 22px; background: var(--mk-night); color: #fff; }
.mk-marquee__track { width: max-content; display: flex; animation: mk-marquee 34s linear infinite; }
.mk-marquee__track > div { display: flex; align-items: center; gap: 28px; padding-right: 28px; }
.mk-marquee span { font-size: .72rem; font-weight: 500; letter-spacing: .04em; white-space: nowrap; }
.mk-marquee b { width: 5px; height: 5px; border-radius: 50%; background: #5b86ff; }
@keyframes mk-marquee { to { transform: translateX(-50%); } }

/* Pinned product journey. */
.mk-journey { padding-block: 160px; background: var(--mk-night); color: #fff; }
.mk-journey__grid { display: grid; grid-template-columns: minmax(330px, .62fr) minmax(0, 1.38fr); align-items: start; gap: clamp(70px, 10vw, 160px); }
.mk-journey__intro { position: sticky; top: 130px; }
.mk-journey h2 { max-width: 560px; font-size: clamp(3.5rem, 5vw, 5.4rem); font-weight: 700; line-height: .95; letter-spacing: -.04em; }
.mk-journey__intro > p { max-width: 500px; margin-block-start: 26px; color: #aebbd0; line-height: 1.65; }
.mk-journey__progress { width: 100%; height: 2px; margin-block-start: 42px; overflow: hidden; background: rgb(255 255 255 / .12); }
.mk-journey__progress span { width: 100%; height: 100%; display: block; background: #5f88ff; transform: scaleX(0); transform-origin: left; }
.mk-journey__chapters { display: grid; gap: 120px; }
.mk-chapter { min-height: 680px; display: grid; align-content: start; transform-origin: center top; }
.mk-chapter__meta { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; padding-block-end: 18px; border-bottom: 1px solid rgb(255 255 255 / .16); }
.mk-chapter__meta span { color: #83a1ff; font-size: .7rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.mk-chapter__meta strong { max-width: 390px; font-size: clamp(1.55rem, 2.6vw, 2.4rem); font-weight: 500; line-height: 1.05; letter-spacing: -.03em; text-align: right; }
.mk-chapter > p { max-width: 590px; margin-block: 20px 32px; color: #aebbd0; line-height: 1.6; }
.mk-product-frame { padding: 7px; border: 1px solid rgb(255 255 255 / .15); border-radius: 22px; background: rgb(255 255 255 / .07); box-shadow: 0 40px 90px -56px #000; }
.mk-product-frame figure { overflow: hidden; border-radius: 16px; background: #fff; }
.mk-product-frame img { width: 100%; height: auto; }

/* Horizontal product accordion. */
.mk-capabilities { padding-block: 160px; background: #fff; }
.mk-capabilities__head { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(340px, .7fr); align-items: end; gap: clamp(70px, 9vw, 150px); }
.mk-capabilities h2 { max-width: 860px; font-size: clamp(4.4rem, 6.5vw, 7rem); font-weight: 700; line-height: .88; letter-spacing: -.052em; }
.mk-capabilities h2 span { display: block; }
.mk-capabilities h2 span:last-child { color: var(--mk-blue); }
.mk-capabilities__proof { display: grid; gap: 24px; }
.mk-capabilities__proof-frame { position: relative; padding: 7px; border-radius: 26px; background: linear-gradient(145deg, #f7f9fd, #e2e8f3); box-shadow: 0 28px 65px -38px rgb(38 70 128 / .52), inset 0 1px 0 rgb(255 255 255 / .92); }
.mk-capabilities__proof-bar { min-height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-inline: 13px; border-radius: 19px 19px 0 0; background: #fff; color: #7b879a; font-size: .58rem; }
.mk-capabilities__proof-bar span { display: flex; align-items: center; gap: 7px; }
.mk-capabilities__proof-bar i { width: 6px; height: 6px; border-radius: 50%; background: var(--mk-green); box-shadow: 0 0 0 4px rgb(54 201 143 / .12); }
.mk-capabilities__proof-bar strong { color: var(--mk-ink); font-weight: 600; }
.mk-capabilities__proof-frame figure { height: 176px; overflow: hidden; border-radius: 0 0 19px 19px; background: #f5f7fb; box-shadow: inset 0 0 0 1px rgb(8 20 38 / .05); }
.mk-capabilities__proof-frame img { width: 100%; height: 100%; object-fit: cover; object-position: center 12%; transform: scale(1.025); transition: transform 900ms var(--mk-ease-out); }
.mk-capabilities__proof:hover img { transform: scale(1.07); }
.mk-capabilities__proof-status { position: absolute; inset: auto 16px 16px auto; padding: 8px 11px; border-radius: 999px; background: rgb(7 19 38 / .88); color: #fff; box-shadow: 0 12px 30px -16px rgb(7 19 38 / .7); font-size: .57rem; font-weight: 600; letter-spacing: .01em; }
.mk-capabilities__proof-copy { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 18px; }
.mk-capabilities__proof-copy strong { max-width: 170px; font-size: clamp(1.55rem, 2.2vw, 2.2rem); font-weight: 600; line-height: .98; letter-spacing: -.035em; }
.mk-capabilities__proof-copy p { max-width: 230px; padding-block-start: 3px; color: var(--mk-muted); font-size: .78rem; line-height: 1.55; }
.mk-accordion { height: 620px; display: flex; gap: 10px; margin-block-start: 76px; }
.mk-accordion__item { position: relative; flex: 1; min-width: 0; overflow: hidden; display: flex; flex-direction: column; padding: 24px; border-radius: 24px; background: #eff3fa; cursor: pointer; outline: none; transition: flex 700ms var(--mk-ease-out), background-color 400ms var(--mk-ease-out), transform 180ms var(--mk-ease-out); }
.mk-accordion__item:nth-child(2) { background: #e7edfa; }
.mk-accordion__item:nth-child(3) { background: #dfe9ff; }
.mk-accordion__item:nth-child(4) { background: var(--mk-night); color: #fff; }
.mk-accordion__item.is-open, .mk-accordion__item:hover, .mk-accordion__item:focus-visible { flex: 2.35; }
.mk-accordion__item:active { transform: scale(.994); }
.mk-accordion__top { display: grid; gap: 4px; }
.mk-accordion__top h3 { font-size: clamp(1.55rem, 2.5vw, 2.35rem); font-weight: 600; letter-spacing: -.035em; }
.mk-accordion__top span { color: var(--mk-muted); font-size: .68rem; white-space: nowrap; }
.mk-accordion__item:nth-child(4) .mk-accordion__top span { color: #aab7cb; }
.mk-accordion__content { max-width: 440px; margin-block-start: 28px; opacity: .52; transform: translateY(10px); transition: opacity 400ms var(--mk-ease-out), transform 500ms var(--mk-ease-out); }
.mk-accordion__content p { color: var(--mk-muted); font-size: .83rem; line-height: 1.55; }
.mk-accordion__content strong { display: block; margin-block-start: 14px; color: var(--mk-blue); font-size: .66rem; font-weight: 700; }
.mk-accordion__item:nth-child(4) .mk-accordion__content p { color: #b2bfd2; }
.mk-accordion__item:nth-child(4) .mk-accordion__content strong { color: #83a1ff; }
.mk-accordion__item.is-open .mk-accordion__content, .mk-accordion__item:hover .mk-accordion__content, .mk-accordion__item:focus-visible .mk-accordion__content { opacity: 1; transform: translateY(0); }
.mk-accordion__visual { position: absolute; width: 560px; inset: auto 24px 24px; overflow: hidden; border-radius: 16px; background: #fff; box-shadow: 0 30px 65px -38px rgb(20 45 90 / .55); opacity: 0; transform: translateY(24px) scale(.96); transition: opacity 500ms var(--mk-ease-out), transform 700ms var(--mk-ease-out); }
.mk-accordion__visual img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.mk-accordion__item.is-open .mk-accordion__visual, .mk-accordion__item:hover .mk-accordion__visual, .mk-accordion__item:focus-visible .mk-accordion__visual { opacity: 1; transform: translateY(0) scale(1); }

/* Public booking as a product moment. */
.mk-booking { position: relative; overflow: hidden; padding-block: 160px; background: var(--mk-blue); color: #fff; }
.mk-booking__orb { position: absolute; width: 900px; height: 900px; inset: -220px -180px auto auto; border-radius: 50%; background: radial-gradient(circle at 40% 40%, rgb(255 255 255 / .25), rgb(135 169 255 / .14) 35%, transparent 68%); }
.mk-booking__grid { position: relative; display: grid; grid-template-columns: minmax(330px, .65fr) minmax(0, 1.35fr); align-items: center; gap: clamp(70px, 10vw, 150px); }
.mk-booking h2 { max-width: 620px; font-size: clamp(3.4rem, 5vw, 5.35rem); font-weight: 700; line-height: .96; letter-spacing: -.04em; }
.mk-booking__copy > p { max-width: 560px; margin-block-start: 26px; color: #dce6ff; line-height: 1.65; }
.mk-booking__copy ul { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 32px; }
.mk-booking__copy li { padding: 9px 12px; border: 1px solid rgb(255 255 255 / .22); border-radius: 999px; background: rgb(255 255 255 / .08); font-size: .68rem; }
.mk-booking__device { position: relative; padding: 9px; border: 1px solid rgb(255 255 255 / .26); border-radius: 28px; background: rgb(255 255 255 / .14); box-shadow: 0 52px 110px -58px rgb(0 20 85 / .75); transform: perspective(1200px) rotateY(-4deg) rotateX(1deg); }
.mk-booking__screen { overflow: hidden; border-radius: 19px; background: #fff; }
.mk-booking__screen img { width: 100%; height: auto; }
.mk-booking__note { position: absolute; display: grid; gap: 4px; inset: auto -28px -34px auto; padding: 18px 20px; border: 1px solid rgb(255 255 255 / .24); border-radius: 18px; background: rgb(7 19 38 / .9); box-shadow: 0 28px 56px -34px #06142f; }
.mk-booking__note span { color: #77e0b7; font-size: .64rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; }
.mk-booking__note strong { font-size: .8rem; }

/* Team access, connected to the real settings screen. */
.mk-team { padding-block: 160px; background: #f4f6fa; }
.mk-team__head { display: grid; grid-template-columns: 1.2fr .55fr; align-items: end; gap: 80px; }
.mk-team h2 { max-width: 850px; font-size: clamp(3.5rem, 5.5vw, 5.8rem); font-weight: 700; line-height: .94; letter-spacing: -.04em; }
.mk-team__head p { color: var(--mk-muted); line-height: 1.65; }
.mk-team__stage { display: grid; grid-template-columns: minmax(300px, .48fr) minmax(0, 1.52fr); gap: 12px; margin-block-start: 76px; }
.mk-team__roles { display: grid; gap: 8px; }
.mk-team__roles article { padding: 22px; border-radius: 18px; background: #fff; box-shadow: 0 18px 48px -42px rgb(20 40 75 / .5); transition: transform 320ms var(--mk-ease-out), background-color 320ms var(--mk-ease-out); }
.mk-team__roles article:hover { transform: translateX(5px); background: #eef3ff; }
.mk-team__roles span { color: var(--mk-blue); font-size: .72rem; font-weight: 700; }
.mk-team__roles p { margin-block-start: 8px; color: var(--mk-muted); font-size: .76rem; line-height: 1.45; }
.mk-team__roles b { display: block; margin-block-start: 12px; color: var(--mk-ink); font-size: .64rem; font-weight: 700; }
.mk-team__product { overflow: hidden; padding: 8px; border-radius: 24px; background: #e1e7f1; box-shadow: 0 34px 80px -52px rgb(25 48 92 / .48); }
.mk-team__product img { width: 100%; height: 100%; object-fit: cover; object-position: top; border-radius: 17px; }

/* Plans with one decisive center choice. */
.mk-plans { padding-block: 160px; background: #fff; }
.mk-plans__head { display: grid; grid-template-columns: 1.1fr .55fr; align-items: end; gap: 80px; }
.mk-plans h2 { max-width: 820px; font-size: clamp(3.5rem, 5.5vw, 5.8rem); font-weight: 700; line-height: .94; letter-spacing: -.04em; }
.mk-plans__head > p { color: var(--mk-muted); line-height: 1.65; }
.mk-plan-grid { display: grid; grid-template-columns: .9fr 1.2fr .9fr; align-items: stretch; gap: 12px; margin-block-start: 76px; }
.mk-plan-grid article { min-height: 470px; display: grid; grid-template-rows: 1fr auto auto; padding: 30px; border-radius: 24px; background: #f1f4f8; }
.mk-plan-grid article.is-featured { min-height: 520px; margin-block: -25px; background: var(--mk-night); color: #fff; box-shadow: 0 42px 90px -55px rgb(7 19 38 / .72); }
.mk-plan-grid h3 { font-size: clamp(2rem, 3vw, 3rem); font-weight: 600; letter-spacing: -.035em; }
.mk-plan-grid article > div > span { display: block; margin-block-end: 12px; color: #83a1ff; font-size: .66rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.mk-plan-grid article > div > p { max-width: 280px; margin-block-start: 12px; color: var(--mk-muted); font-size: .78rem; line-height: 1.55; }
.mk-plan-grid .is-featured > div > p { color: #aebbd0; }
.mk-plan-grid ul { display: grid; gap: 10px; margin-block: 42px 30px; }
.mk-plan-grid li { color: var(--mk-muted); font-size: .76rem; }
.mk-plan-grid .is-featured li { color: #c7d2e4; }
.mk-plan-grid article > a:not(.mk-button) { justify-self: start; padding-block-end: 4px; border-bottom: 1px solid currentColor; color: var(--mk-blue-dark); font-size: .75rem; font-weight: 700; }
.mk-plan-grid .mk-button { justify-self: start; }

.mk-demo { padding-block: 24px 120px; background: #fff; }
.mk-demo__panel { position: relative; overflow: hidden; min-height: 470px; display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 70px; padding: clamp(38px, 6vw, 88px); border-radius: 30px; background: var(--mk-blue); color: #fff; box-shadow: 0 45px 100px -60px var(--mk-blue); }
.mk-demo__light { position: absolute; width: 700px; height: 700px; inset: -400px -100px auto auto; border-radius: 50%; background: radial-gradient(circle, rgb(255 255 255 / .28), transparent 68%); }
.mk-demo__panel > *:not(.mk-demo__light) { position: relative; z-index: 2; }
.mk-demo h2 { max-width: 820px; font-size: clamp(3.6rem, 6vw, 6.5rem); font-weight: 700; line-height: .9; letter-spacing: -.04em; }
.mk-demo p { max-width: 560px; margin-block-start: 24px; color: #dce6ff; line-height: 1.6; }

.mk-footer { padding-block: 72px 28px; background: var(--mk-night); color: #fff; }
.mk-footer__main { display: grid; grid-template-columns: 1.5fr repeat(3, .55fr); gap: 56px; padding-block-end: 56px; }
.mk-footer__brand > p { max-width: 330px; margin-block-start: 16px; color: #9eacc0; font-size: .75rem; line-height: 1.5; }
.mk-footer nav, .mk-footer__contact { display: grid; align-content: start; justify-items: start; gap: 11px; }
.mk-footer nav strong, .mk-footer__contact strong { margin-block-end: 7px; font-size: .7rem; }
.mk-footer nav a, .mk-footer__contact a, .mk-footer__contact p { color: #9eacc0; font-size: .72rem; }
.mk-footer nav a:hover, .mk-footer__contact a:hover { color: #fff; }
.mk-footer__bottom { display: flex; justify-content: space-between; gap: 20px; padding-block-start: 24px; border-top: 1px solid rgb(255 255 255 / .12); color: #758399; font-size: .64rem; }
.mk-footer .mk-brand__lockup { width: 166px; }

@media (hover: hover) and (pointer: fine) {
  .mk-button:hover { transform: translateY(-2px); }
  .mk-button:active { transform: scale(.975); }
}

@media (max-width: 1080px) {
  :root { --mk-shell: min(100% - 32px, 1320px); }
  .mk-nav a { padding-inline: 10px; }
  .mk-login { display: none; }
  .mk-stage { height: 540px; }
  .mk-device--main { width: 88%; }
  .mk-device--agenda { width: 34%; }
  .mk-device--booking { width: 32%; }
  .mk-journey__grid { grid-template-columns: .65fr 1.35fr; gap: 64px; }
  .mk-accordion { height: 560px; }
  .mk-accordion__visual { width: 430px; }
  .mk-booking__grid, .mk-team__stage { gap: 52px; }
}

@media (min-width: 1180px) {
  .mk-capabilities h2 span:first-child { white-space: nowrap; }
}

@media (max-width: 820px) {
  :root { --mk-shell: calc(100vw - 28px); }
  html { scroll-padding-top: 90px; }
  .mk-header { inset-block-start: 10px; }
  .mk-header__inner { min-height: 58px; grid-template-columns: 1fr auto; padding: 6px 7px 6px 12px; border-radius: 18px; }
  .mk-brand__lockup { width: 136px; }
  .mk-nav, .mk-header__actions > .mk-login, .mk-header__actions > .mk-button { display: none; }
  .mk-menu-toggle { width: 46px; height: 46px; position: relative; display: grid; place-items: center; border: 0; border-radius: 14px; background: var(--mk-night); color: #fff; }
  .mk-menu-toggle span, .mk-mobile-menu__close span { position: absolute; width: 17px; height: 1.5px; background: currentColor; transition: transform 220ms var(--mk-ease-out); }
  .mk-menu-toggle span:first-child { transform: translateY(-4px); }
  .mk-menu-toggle span:last-child { transform: translateY(4px); }
  .mk-menu-toggle[aria-expanded="true"] span:first-child { transform: rotate(45deg); }
  .mk-menu-toggle[aria-expanded="true"] span:last-child { transform: rotate(-45deg); }
  .mk-mobile-menu { position: fixed; z-index: 60; inset: 0; display: grid; padding: 8px; background: rgb(7 19 38 / .68); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); opacity: 0; pointer-events: none; transition: opacity 260ms var(--mk-ease-out); }
  .mk-mobile-menu.is-open { opacity: 1; pointer-events: auto; }
  .mk-mobile-menu__surface { min-height: 100%; display: grid; grid-template-rows: auto 1fr auto; padding: 16px; border-radius: 22px; background: rgb(255 255 255 / .96); transform: translateY(18px) scale(.985); transition: transform 400ms var(--mk-ease-out); }
  .mk-mobile-menu.is-open .mk-mobile-menu__surface { transform: translateY(0) scale(1); }
  .mk-mobile-menu__surface > header { display: flex; align-items: center; justify-content: space-between; }
  .mk-mobile-menu__close { width: 46px; height: 46px; position: relative; border: 0; border-radius: 14px; background: #edf1f7; }
  .mk-mobile-menu__close span:first-child { transform: rotate(45deg); }
  .mk-mobile-menu__close span:last-child { transform: rotate(-45deg); }
  .mk-mobile-menu nav { display: grid; align-content: center; }
  .mk-mobile-menu nav a { padding-block: 12px; overflow: hidden; font-size: clamp(2.6rem, 12vw, 4.4rem); font-weight: 600; line-height: 1.05; letter-spacing: -.04em; opacity: 0; transform: translateY(24px); transition: opacity 360ms var(--mk-ease-out), transform 500ms var(--mk-ease-out); }
  .mk-mobile-menu.is-open nav a { opacity: 1; transform: translateY(0); }
  .mk-mobile-menu.is-open nav a:nth-child(2) { transition-delay: 45ms; }
  .mk-mobile-menu.is-open nav a:nth-child(3) { transition-delay: 90ms; }
  .mk-mobile-menu.is-open nav a:nth-child(4) { transition-delay: 135ms; }
  .mk-mobile-menu__actions { display: grid; gap: 12px; padding-block-start: 18px; border-top: 1px solid var(--mk-line); }
  .mk-mobile-menu__actions > a:first-child { color: var(--mk-muted); font-size: .8rem; }

  .mk-hero { min-height: auto; padding-block: 132px 86px; }
  .mk-hero h1 { font-size: clamp(3.5rem, 11.8vw, 5.2rem); }
  .mk-stage { height: auto; display: grid; gap: 14px; margin-block-start: 62px; perspective: none; }
  .mk-stage__halo { display: none; }
  .mk-device { position: relative; inset: auto; width: 100%; transform: none; }
  .mk-device--agenda, .mk-device--booking { width: 72%; }
  .mk-device--agenda { justify-self: end; margin-top: -38px; }
  .mk-device--booking { justify-self: start; margin-top: -38px; }
  .mk-marquee { padding-block: 18px; }
  .mk-journey, .mk-capabilities, .mk-booking, .mk-team, .mk-plans { padding-block: 110px; }
  .mk-journey__grid { grid-template-columns: 1fr; gap: 68px; }
  .mk-journey__intro { position: static; }
  .mk-journey__chapters { gap: 78px; }
  .mk-chapter { min-height: 0; }
  .mk-capabilities__head, .mk-team__head, .mk-plans__head { grid-template-columns: 1fr; gap: 24px; }
  .mk-capabilities h2, .mk-team h2, .mk-plans h2 { font-size: clamp(3.1rem, 10vw, 4.8rem); }
  .mk-capabilities__proof { max-width: 620px; margin-block-start: 30px; }
  .mk-capabilities__proof-frame figure { height: clamp(176px, 34vw, 260px); }
  .mk-accordion { height: auto; display: grid; gap: 12px; }
  .mk-accordion__item, .mk-accordion__item.is-open { min-height: 460px; flex: auto; }
  .mk-accordion__visual { width: auto; }
  .mk-accordion__content { opacity: 1; transform: none; }
  .mk-accordion__visual { opacity: 1; transform: none; }
  .mk-booking__grid { grid-template-columns: 1fr; gap: 64px; }
  .mk-booking__device { transform: none; }
  .mk-team__stage { grid-template-columns: 1fr; }
  .mk-team__roles { grid-template-columns: repeat(2, 1fr); }
  .mk-team__product { aspect-ratio: 16 / 11; }
  .mk-plan-grid { grid-template-columns: 1fr; }
  .mk-plan-grid article, .mk-plan-grid article.is-featured { min-height: 0; margin: 0; gap: 28px; }
  .mk-demo__panel { grid-template-columns: 1fr; align-items: end; min-height: 560px; }
  .mk-demo__panel .mk-button { justify-self: start; }
  .mk-footer__main { grid-template-columns: repeat(3, 1fr); }
  .mk-footer__brand { grid-column: 1 / -1; }
}

@media (max-width: 560px) {
  :root { --mk-shell: calc(100vw - 20px); }
  .mk-hero { padding-block-start: 112px; }
  .mk-hero h1 { font-size: clamp(3.05rem, 14vw, 4.25rem); line-height: .94; }
  .mk-hero__copy > p { font-size: .96rem; }
  .mk-hero__actions { width: 100%; display: grid; }
  .mk-hero__actions .mk-button { width: 100%; }
  .mk-device { padding: 5px; border-radius: 18px; }
  .mk-device figure { border-radius: 12px; }
  .mk-device__chrome { min-height: 36px; }
  .mk-device__chrome span:nth-child(n+2) { display: none; }
  .mk-device--agenda, .mk-device--booking { width: 82%; }
  .mk-journey h2, .mk-booking h2 { font-size: clamp(3rem, 12vw, 4rem); }
  .mk-chapter__meta { align-items: flex-start; flex-direction: column; gap: 10px; }
  .mk-chapter__meta strong { text-align: left; }
  .mk-product-frame { padding: 4px; border-radius: 16px; }
  .mk-product-frame figure { border-radius: 12px; }
  .mk-capabilities h2, .mk-team h2, .mk-plans h2 { font-size: clamp(2.8rem, 12vw, 3.8rem); }
  .mk-capabilities__proof-copy { grid-template-columns: 1fr; gap: 10px; }
  .mk-capabilities__proof-copy strong, .mk-capabilities__proof-copy p { max-width: none; }
  .mk-accordion__item, .mk-accordion__item.is-open { min-height: 410px; padding: 20px; border-radius: 20px; }
  .mk-accordion__visual { inset: auto 20px 20px; border-radius: 13px; }
  .mk-booking__copy ul { display: grid; }
  .mk-booking__note { position: relative; inset: auto; margin: -14px 12px 0; border-radius: 14px; }
  .mk-team__roles { grid-template-columns: 1fr; }
  .mk-team__product { aspect-ratio: 4 / 3; }
  .mk-plan-grid article { padding: 24px; border-radius: 20px; }
  .mk-demo { padding-block-end: 78px; }
  .mk-demo__panel { min-height: 540px; padding: 30px 22px; border-radius: 24px; }
  .mk-demo h2 { font-size: clamp(3rem, 13vw, 4.3rem); }
  .mk-demo__panel .mk-button { width: 100%; }
  .mk-footer__main { grid-template-columns: 1fr 1fr; gap: 38px 24px; }
  .mk-footer__contact { grid-column: 1 / -1; }
  .mk-footer__bottom { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .mk-marquee__track { animation: none; }
  [data-stage-float], [data-product-chapter], [data-booking-device] { transform: none !important; opacity: 1 !important; }
}

@media (prefers-reduced-transparency: reduce) {
  .mk-header__inner, .mk-mobile-menu { backdrop-filter: none; -webkit-backdrop-filter: none; background: #fff; }
}
