:root {
    --ink-950: #07142f;
    --ink-900: #0b1d42;
    --ink-800: #132754;
    --ink-700: #24395f;
    --text: #4c5a75;
    --muted: #7a879d;
    --blue-700: #2448e8;
    --blue-600: #3457f4;
    --blue-500: #526fff;
    --violet: #7668f7;
    --cyan: #49c8e8;
    --green: #18a879;
    --surface: #ffffff;
    --wash: #f5f7fb;
    --line: #e2e7f0;
    --line-soft: #edf1f7;
    --shadow-sm: 0 14px 35px rgba(14, 30, 66, .08);
    --shadow-md: 0 28px 70px rgba(8, 28, 72, .14);
    --shadow-lg: 0 50px 110px rgba(5, 20, 55, .30);
    --radius-sm: 14px;
    --radius-md: 22px;
    --radius-lg: 34px;
    --font: Tahoma, "Segoe UI", Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; min-width: 320px; color: var(--ink-950); background: #fff; font-family: var(--font); -webkit-font-smoothing: antialiased; }
body.ms-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
img { display: block; max-width: 100%; }
svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ms-container { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.ms-skip-link { position: fixed; top: 8px; right: 8px; z-index: 1000; transform: translateY(-160%); padding: 10px 14px; border-radius: 10px; color: #fff; background: var(--blue-700); }
.ms-skip-link:focus { transform: translateY(0); }

.ms-btn { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 0 23px; border: 1px solid transparent; border-radius: 14px; font-weight: 800; font-size: .9rem; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease; }
.ms-btn:hover { transform: translateY(-2px); }
.ms-btn svg { width: 19px; height: 19px; transform: scaleX(-1); }
.ms-btn--primary { color: #fff; background: linear-gradient(135deg, var(--blue-600), #6a67f5); box-shadow: 0 14px 32px rgba(52, 87, 244, .28); }
.ms-btn--primary:hover { box-shadow: 0 18px 40px rgba(52, 87, 244, .36); }
.ms-btn--outline { color: var(--ink-800); background: #fff; border-color: #ccd5e4; }
.ms-btn--outline:hover { color: var(--blue-700); border-color: var(--blue-500); }
.ms-btn--ghost { color: var(--ink-800); background: var(--wash); }
.ms-btn--light { color: var(--ink-900); background: #fff; box-shadow: 0 18px 42px rgba(0, 0, 0, .22); }
.ms-btn--small { min-height: 42px; padding-inline: 18px; font-size: .78rem; }
.ms-btn--large { min-height: 58px; padding-inline: 28px; border-radius: 16px; font-size: .96rem; }

.ms-header { position: fixed; inset: 0 0 auto; z-index: 100; border-bottom: 1px solid rgba(255,255,255,.08); background: rgba(7, 20, 47, .78); backdrop-filter: blur(18px); transition: background .2s ease, box-shadow .2s ease, border-color .2s ease; }
.ms-header.scrolled { background: rgba(7, 20, 47, .96); border-color: rgba(255,255,255,.12); box-shadow: 0 14px 40px rgba(0,0,0,.18); }
.ms-header__inner { min-height: 78px; display: grid; grid-template-columns: 205px 1fr auto; align-items: center; gap: 34px; }
.ms-logo { width: 184px; filter: brightness(0) invert(1); }
.ms-logo img { width: 100%; height: 48px; object-fit: contain; object-position: right center; }
.ms-nav { display: flex; align-items: center; justify-content: center; gap: 30px; }
.ms-nav > a { position: relative; padding: 28px 0 25px; color: rgba(255,255,255,.72); font-size: .8rem; font-weight: 800; }
.ms-nav > a::after { content: ""; position: absolute; right: 0; bottom: 19px; width: 0; height: 2px; border-radius: 3px; background: #7f8dff; transition: width .2s ease; }
.ms-nav > a:hover { color: #fff; }
.ms-nav > a:hover::after { width: 100%; }
.ms-header__actions { display: flex; align-items: center; gap: 18px; white-space: nowrap; }
.ms-login { color: rgba(255,255,255,.86); font-size: .8rem; font-weight: 800; }
.ms-login:hover { color: #fff; }
.ms-menu { display: none; width: 44px; height: 44px; padding: 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 13px; background: rgba(255,255,255,.08); cursor: pointer; }
.ms-menu span { display: block; width: 22px; height: 2px; margin: 5px auto; border-radius: 2px; background: #fff; transition: transform .2s ease, opacity .2s ease; }
.ms-nav__mobile-actions { display: none; }

.ms-hero { position: relative; overflow: hidden; padding: 148px 0 0; color: #fff; background: radial-gradient(circle at 18% 0%, #203d84 0, transparent 38%), linear-gradient(145deg, #07142f 0%, #0a1b3d 52%, #0a214c 100%); }
.ms-hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .14; background-image: linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(to bottom, #000, transparent 88%); }
.ms-hero__mesh { position: absolute; width: 680px; height: 680px; left: -180px; top: -230px; border-radius: 50%; background: radial-gradient(circle, rgba(82,111,255,.36), rgba(73,200,232,.08) 47%, transparent 70%); filter: blur(14px); }
.ms-hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 64px; }
.ms-hero__content { padding-bottom: 80px; }
.ms-kicker { width: fit-content; display: inline-flex; align-items: center; gap: 10px; margin-bottom: 25px; padding: 9px 13px; border: 1px solid rgba(255,255,255,.15); border-radius: 999px; color: #c9d4ff; background: rgba(255,255,255,.06); font-size: .7rem; font-weight: 800; }
.ms-kicker i { width: 8px; height: 8px; border-radius: 50%; background: #57dfa8; box-shadow: 0 0 0 5px rgba(87,223,168,.12); }
.ms-hero h1 { margin: 0; font-size: clamp(3.25rem, 5vw, 5.4rem); line-height: 1.08; letter-spacing: -.055em; font-weight: 900; }
.ms-hero h1 em { display: inline-block; margin-top: 7px; color: transparent; background: linear-gradient(120deg, #fff, #9eb1ff 52%, #69d4ee); background-clip: text; -webkit-background-clip: text; font-style: normal; }
.ms-hero__content > p { max-width: 610px; margin: 26px 0 0; color: rgba(225,232,248,.76); font-size: 1rem; line-height: 2; }
.ms-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 33px; }
.ms-hero .ms-btn--outline { color: #fff; background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.22); }
.ms-hero .ms-btn--outline:hover { background: rgba(255,255,255,.12); }
.ms-hero__proof { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 25px; color: rgba(222,230,248,.63); font-size: .7rem; font-weight: 700; }
.ms-hero__proof span { display: inline-flex; align-items: center; gap: 6px; }
.ms-hero__proof svg { width: 16px; height: 16px; color: #57dfa8; stroke-width: 2.5; }

.ms-product-stage { position: relative; min-width: 0; padding: 18px 0 90px 14px; direction: rtl; }
.ms-product-stage__halo { position: absolute; width: 610px; height: 610px; top: -30px; right: 55px; border-radius: 50%; border: 1px solid rgba(255,255,255,.12); box-shadow: inset 0 0 80px rgba(83,110,255,.08); }
.ms-browser { position: relative; z-index: 2; overflow: hidden; width: 765px; max-width: 100%; margin-inline-start: auto; border: 1px solid rgba(255,255,255,.15); border-radius: 24px; background: #fff; box-shadow: var(--shadow-lg); transform: perspective(1400px) rotateY(-3deg) rotateX(1deg); transform-origin: center; }
.ms-browser__bar { height: 48px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 15px; color: #76839a; background: #fafbfe; border-bottom: 1px solid #e7ebf3; font-size: .58rem; }
.ms-browser__dots { display: flex; gap: 5px; direction: ltr; }
.ms-browser__dots i { width: 7px; height: 7px; border-radius: 50%; background: #d5dce8; }
.ms-browser__dots i:nth-child(1) { background: #ff8277; }
.ms-browser__dots i:nth-child(2) { background: #ffd46f; }
.ms-browser__dots i:nth-child(3) { background: #68d29e; }
.ms-browser__avatar { justify-self: left; width: 27px; height: 27px; display: grid; place-items: center; border-radius: 9px; color: #fff; background: linear-gradient(135deg, #3457f4, #7668f7); font-weight: 900; }
.ms-browser__app { min-height: 470px; display: grid; grid-template-columns: 116px 1fr; }
.ms-browser__sidebar { display: grid; align-content: start; gap: 5px; padding: 15px 9px; color: #aebbd4; background: linear-gradient(180deg, #101f43, #09162f); }
.ms-browser__sidebar img { width: 40px; height: 40px; margin: 2px auto 13px; padding: 4px; border-radius: 12px; background: #fff; object-fit: contain; }
.ms-browser__sidebar span { display: flex; align-items: center; gap: 7px; padding: 9px 8px; border-radius: 8px; font-size: .53rem; font-weight: 700; }
.ms-browser__sidebar span b { width: 8px; height: 8px; border: 1px solid currentColor; border-radius: 2px; }
.ms-browser__sidebar span.active { color: #13264e; background: #fff; }
.ms-browser__content { padding: 20px; background: #f5f7fb; }
.ms-app-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; }
.ms-app-head div { display: grid; gap: 3px; }
.ms-app-head small { color: #8e99ac; font-size: .5rem; }
.ms-app-head strong { color: #152242; font-size: .85rem; }
.ms-app-head button { padding: 8px 12px; border: 0; border-radius: 8px; color: #fff; background: var(--blue-600); font-size: .5rem; }
.ms-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 17px; }
.ms-kpis article { position: relative; display: grid; gap: 4px; padding: 14px; border: 1px solid #e7ebf3; border-radius: 12px; background: #fff; }
.ms-kpis article > i { width: 25px; height: 25px; display: grid; place-items: center; position: absolute; left: 12px; top: 12px; border-radius: 8px; font-style: normal; font-size: .7rem; }
.ms-kpis i.blue { color: #3457f4; background: #edf1ff; }
.ms-kpis i.violet { color: #7668f7; background: #f1efff; }
.ms-kpis i.mint { color: #159f74; background: #e9f8f2; }
.ms-kpis span { color: #818ca1; font-size: .47rem; }
.ms-kpis strong { color: #172443; font-size: .8rem; }
.ms-kpis strong small { font-size: .45rem; }
.ms-kpis em { color: #20a078; font-size: .42rem; font-style: normal; }
.ms-app-grid { display: grid; grid-template-columns: 1.55fr .9fr; gap: 9px; margin-top: 10px; }
.ms-chart-card, .ms-activity-card { padding: 14px; border: 1px solid #e7ebf3; border-radius: 12px; background: #fff; }
.ms-chart-card header, .ms-activity-card header { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.ms-chart-card header div { display: grid; gap: 2px; }
.ms-chart-card header strong, .ms-activity-card header strong { color: #1b2948; font-size: .55rem; }
.ms-chart-card header small, .ms-activity-card header span { color: #8d98aa; font-size: .4rem; }
.ms-chart-card header > span { color: #20a078; font-size: .45rem; font-weight: 800; }
.ms-chart { height: 150px; display: flex; align-items: end; justify-content: space-between; gap: 9px; padding: 18px 7px 0; border-bottom: 1px solid #edf0f6; }
.ms-chart i { width: 10%; height: var(--h); min-height: 12px; border-radius: 5px 5px 2px 2px; background: linear-gradient(180deg, #647cff, #3457f4); }
.ms-chart-card footer { display: flex; justify-content: space-between; padding: 6px 7px 0; color: #9ba5b6; font-size: .38rem; }
.ms-activity-card > div { display: grid; grid-template-columns: 26px 1fr auto; align-items: center; gap: 7px; padding: 11px 0; border-bottom: 1px solid #eff2f6; }
.ms-activity-card > div:last-child { border-bottom: 0; }
.ms-activity-card > div > i { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 8px; color: #3457f4; background: #edf1ff; font-style: normal; font-size: .36rem; font-weight: 900; }
.ms-activity-card p { display: grid; gap: 2px; margin: 0; }
.ms-activity-card p b { color: #263552; font-size: .45rem; }
.ms-activity-card p small { color: #9aa4b5; font-size: .36rem; }
.ms-activity-card > div > strong { color: #1a2745; font-size: .43rem; }
.ms-float-card { position: absolute; z-index: 4; display: grid; border: 1px solid rgba(255,255,255,.18); border-radius: 16px; color: #fff; background: rgba(16,31,67,.82); backdrop-filter: blur(14px); box-shadow: 0 20px 48px rgba(0,0,0,.28); }
.ms-float-card--invoice { left: -14px; bottom: 55px; min-width: 150px; padding: 14px 16px; }
.ms-float-card--invoice span { color: #aebbe0; font-size: .55rem; }
.ms-float-card--invoice strong { margin-top: 4px; font-size: .88rem; }
.ms-float-card--invoice small { margin-top: 3px; color: #5cdda8; font-size: .46rem; }
.ms-float-card--stock { right: -22px; top: 115px; min-width: 190px; grid-template-columns: 31px 1fr; align-items: center; gap: 10px; padding: 13px; }
.ms-float-card--stock > i { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; color: #ffd878; background: rgba(255,216,120,.12); font-style: normal; font-weight: 900; }
.ms-float-card--stock span { display: grid; gap: 2px; }
.ms-float-card--stock b { font-size: .56rem; }
.ms-float-card--stock small { color: #aebbe0; font-size: .44rem; }
.ms-module-strip { position: relative; z-index: 3; min-height: 78px; display: flex; align-items: center; justify-content: center; gap: 25px; border-top: 1px solid rgba(255,255,255,.09); color: rgba(224,231,248,.6); font-size: .72rem; font-weight: 700; }
.ms-module-strip i { width: 4px; height: 4px; border-radius: 50%; background: rgba(255,255,255,.22); }

.ms-section { padding: 104px 0; }
.ms-section--light { background: #fff; }
.ms-heading { max-width: 670px; margin-bottom: 48px; }
.ms-heading--center { margin-inline: auto; text-align: center; }
.ms-heading > span { display: block; margin-bottom: 12px; color: var(--blue-600); font-size: .72rem; font-weight: 900; }
.ms-heading h2 { margin: 0; color: var(--ink-950); font-size: clamp(2.35rem, 4vw, 3.45rem); line-height: 1.25; letter-spacing: -.035em; }
.ms-heading p { margin: 17px 0 0; color: var(--text); font-size: .94rem; line-height: 1.95; }
.ms-heading--light > span { color: #9fb0ff; }
.ms-heading--light h2 { color: #fff; }
.ms-heading--light p { color: rgba(225,232,248,.68); }

.ms-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.ms-feature { min-height: 285px; display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--line); border-radius: 24px; background: linear-gradient(180deg, #fff, #fbfcff); box-shadow: 0 8px 28px rgba(15,33,72,.04); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.ms-feature:hover { transform: translateY(-5px); border-color: #cbd6ec; box-shadow: var(--shadow-sm); }
.ms-feature--wide { min-height: 380px; grid-column: 1 / -1; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 50px; padding: 42px; overflow: hidden; background: linear-gradient(135deg, #f8faff, #f2f5ff); }
.ms-icon { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 32px; border-radius: 15px; color: var(--blue-600); background: #edf1ff; }
.ms-icon svg { width: 23px; height: 23px; }
.ms-feature small { color: var(--blue-600); font-size: .68rem; font-weight: 900; }
.ms-feature h3 { margin: 10px 0 10px; color: var(--ink-900); font-size: 1.25rem; line-height: 1.5; }
.ms-feature p { margin: 0; color: var(--text); font-size: .78rem; line-height: 1.9; }
.ms-feature__copy .ms-icon { margin-bottom: 24px; }
.ms-feature__copy h3 { max-width: 500px; font-size: 1.8rem; }
.ms-feature__copy p { max-width: 560px; font-size: .86rem; }
.ms-feature__copy ul { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; padding: 0; list-style: none; }
.ms-feature__copy li { padding: 8px 11px; border: 1px solid #dfe5f3; border-radius: 999px; color: #51607a; background: rgba(255,255,255,.75); font-size: .65rem; font-weight: 700; }
.ms-doc-card { overflow: hidden; border: 1px solid #dfe5f2; border-radius: 20px; background: #fff; box-shadow: var(--shadow-md); transform: rotate(-2deg); }
.ms-doc-card header { display: flex; justify-content: space-between; padding: 18px 20px; color: #fff; background: linear-gradient(135deg, #17366f, #294f9d); font-size: .7rem; }
.ms-doc-card header b { font-size: .62rem; }
.ms-doc-row { display: flex; justify-content: space-between; padding: 18px 20px; border-bottom: 1px solid var(--line-soft); color: #66728a; font-size: .7rem; }
.ms-doc-row b { color: var(--ink-900); }
.ms-doc-card footer { display: flex; justify-content: space-between; align-items: center; padding: 22px 20px; background: #f8faff; }
.ms-doc-card footer span { color: #68748b; font-size: .72rem; }
.ms-doc-card footer strong { color: var(--blue-700); font-size: 1.05rem; }

.ms-workflow { position: relative; overflow: hidden; color: #fff; background: linear-gradient(145deg, #081630, #0d2450); }
.ms-workflow::before { content: ""; position: absolute; width: 600px; height: 600px; top: -300px; left: -160px; border-radius: 50%; background: radial-gradient(circle, rgba(92,111,255,.25), transparent 68%); }
.ms-workflow .ms-container { position: relative; }
.ms-workflow__tabs { width: fit-content; display: flex; gap: 5px; margin-bottom: 28px; padding: 5px; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; background: rgba(255,255,255,.05); }
.ms-workflow__tabs button { min-width: 140px; padding: 11px 18px; border: 0; border-radius: 10px; color: #aebbe0; background: transparent; cursor: pointer; font-size: .75rem; font-weight: 800; }
.ms-workflow__tabs button.active { color: var(--ink-900); background: #fff; box-shadow: 0 8px 22px rgba(0,0,0,.16); }
.ms-workflow__panel { display: grid; grid-template-columns: 1fr 35px 1fr 35px 1fr 35px 1fr; align-items: center; gap: 9px; }
.ms-workflow__panel > article { position: relative; min-height: 230px; padding: 26px 22px; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 20px; background: rgba(255,255,255,.055); backdrop-filter: blur(10px); }
.ms-workflow__panel > article > span { position: absolute; left: 16px; top: 11px; color: rgba(255,255,255,.08); font-size: 3.8rem; font-weight: 900; }
.ms-workflow__panel i { width: 45px; height: 45px; display: grid; place-items: center; position: relative; border-radius: 14px; color: #b9c7ff; background: rgba(114,132,255,.13); }
.ms-workflow__panel i svg { width: 22px; height: 22px; }
.ms-workflow__panel h3 { position: relative; margin: 38px 0 9px; font-size: 1rem; }
.ms-workflow__panel p { position: relative; margin: 0; color: #aebbd4; font-size: .7rem; line-height: 1.8; }
.ms-workflow__panel > b { color: #6f81aa; font-size: 1.2rem; text-align: center; }

.ms-decision { background: #f5f7fb; }
.ms-decision__grid { display: grid; grid-template-columns: .78fr 1.22fr; align-items: center; gap: 72px; }
.ms-check-list { display: grid; gap: 16px; margin: 0 0 26px; padding: 0; list-style: none; }
.ms-check-list li { display: flex; gap: 12px; align-items: flex-start; }
.ms-check-list li > i { width: 28px; height: 28px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; color: var(--green); background: #e9f8f2; font-style: normal; font-weight: 900; }
.ms-check-list span { display: grid; gap: 4px; }
.ms-check-list b { color: var(--ink-900); font-size: .86rem; }
.ms-check-list small { color: var(--muted); font-size: .69rem; line-height: 1.7; }
.ms-inline-link { display: inline-flex; align-items: center; gap: 9px; color: var(--blue-700); font-size: .78rem; font-weight: 900; }
.ms-inline-link span { transition: transform .2s ease; }
.ms-inline-link:hover span { transform: translateX(-4px); }
.ms-report-card { overflow: hidden; padding: 24px; border: 1px solid #dfe5ef; border-radius: 27px; background: #fff; box-shadow: var(--shadow-md); }
.ms-report-card > header { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.ms-report-card > header div { display: grid; gap: 4px; }
.ms-report-card > header small { color: var(--muted); font-size: .62rem; }
.ms-report-card > header strong { color: var(--ink-900); font-size: .95rem; }
.ms-report-card > header button { padding: 9px 13px; border: 1px solid var(--line); border-radius: 10px; color: #53617a; background: #fff; font-size: .58rem; }
.ms-report-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 22px; }
.ms-report-kpis article { display: grid; gap: 5px; padding: 16px; border-radius: 14px; background: #f7f9fd; }
.ms-report-kpis small { color: #7f8a9f; font-size: .55rem; }
.ms-report-kpis strong { color: var(--ink-900); font-size: 1rem; }
.ms-report-kpis span { color: var(--green); font-size: .5rem; font-weight: 800; }
.ms-report-chart { margin-top: 14px; padding: 18px; border: 1px solid var(--line-soft); border-radius: 16px; }
.ms-report-chart > header { display: flex; justify-content: space-between; gap: 15px; }
.ms-report-chart > header strong { color: var(--ink-900); font-size: .7rem; }
.ms-report-chart > header span { display: flex; align-items: center; gap: 7px; color: #8b96aa; font-size: .5rem; }
.ms-report-chart > header i { width: 7px; height: 7px; border-radius: 50%; background: var(--blue-500); }
.ms-report-chart > header i:last-of-type { background: #54c9d9; }
.ms-report-chart svg { width: 100%; height: 235px; margin-top: 8px; overflow: visible; }
.ms-report-chart .grid { stroke: #edf0f6; stroke-width: 1; }
.ms-report-chart .area { fill: url(#msArea); stroke: none; }
.ms-report-chart .sales { stroke: #4d69ff; stroke-width: 3; }
.ms-report-chart .paid { stroke: #54c9d9; stroke-width: 2.4; stroke-dasharray: 7 7; }
.ms-report-chart footer { display: flex; justify-content: space-between; color: #9aa4b6; font-size: .48rem; }

.ms-pricing { background: #fff; }
.ms-pricing__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; align-items: stretch; }
.ms-plan { position: relative; display: flex; flex-direction: column; padding: 30px 27px; border: 1px solid var(--line); border-radius: 25px; background: #fff; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.ms-plan:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); }
.ms-plan--featured { border: 2px solid #536fff; background: linear-gradient(180deg, #fafbff, #fff); box-shadow: 0 24px 65px rgba(56,88,241,.15); }
.ms-plan__badge { position: absolute; top: -14px; right: 50%; transform: translateX(50%); padding: 7px 14px; border-radius: 999px; color: #fff; background: linear-gradient(135deg, #3457f4, #7668f7); font-size: .62rem; font-weight: 900; white-space: nowrap; }
.ms-plan header small { color: var(--blue-600); font-size: .62rem; font-weight: 900; }
.ms-plan h3 { margin: 9px 0 8px; color: var(--ink-900); font-size: 1.45rem; }
.ms-plan header p { min-height: 54px; margin: 0; color: var(--text); font-size: .7rem; line-height: 1.8; }
.ms-plan__price { display: flex; align-items: center; gap: 10px; margin: 24px 0 17px; }
.ms-plan__price > strong { color: var(--ink-950); font-size: 2.65rem; line-height: 1; letter-spacing: -.04em; }
.ms-plan__price > span { display: grid; gap: 2px; color: #6d7890; }
.ms-plan__price b { font-size: .7rem; }
.ms-plan__price small { font-size: .58rem; }
.ms-plan__trial { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 13px; background: #f4f6ff; }
.ms-plan__trial i { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 10px; color: #fff; background: var(--blue-600); font-style: normal; font-weight: 900; }
.ms-plan__trial span { display: grid; gap: 2px; }
.ms-plan__trial b { color: var(--ink-900); font-size: .66rem; }
.ms-plan__trial small { color: var(--muted); font-size: .52rem; }
.ms-plan ul { display: grid; gap: 12px; margin: 24px 0 28px; padding: 0; list-style: none; }
.ms-plan li { display: flex; align-items: center; gap: 8px; color: #526078; font-size: .68rem; }
.ms-plan li svg { width: 17px; height: 17px; flex: 0 0 auto; color: var(--green); stroke-width: 2.6; }
.ms-plan .ms-btn { width: 100%; margin-top: auto; }
.ms-pricing__note { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 25px; color: var(--muted); font-size: .68rem; }
.ms-pricing__note a { color: var(--blue-700); font-weight: 800; }
.ms-empty-plans { max-width: 560px; margin-inline: auto; padding: 38px; border: 1px dashed #cad4e5; border-radius: 22px; text-align: center; background: #f8faff; }
.ms-empty-plans h3 { margin: 0 0 8px; }
.ms-empty-plans p { color: var(--text); font-size: .8rem; }

.ms-assurance { padding: 0 0 90px; }
.ms-assurance__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.ms-assurance article { display: flex; align-items: center; gap: 15px; padding: 22px; border: 1px solid var(--line); border-radius: 18px; background: #fafbfe; }
.ms-assurance article > i { width: 44px; height: 44px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 14px; color: var(--blue-600); background: #edf1ff; }
.ms-assurance svg { width: 22px; height: 22px; }
.ms-assurance h3 { margin: 0 0 5px; color: var(--ink-900); font-size: .88rem; }
.ms-assurance p { margin: 0; color: var(--muted); font-size: .64rem; line-height: 1.7; }

.ms-faq { background: #f5f7fb; }
.ms-faq__grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 75px; align-items: start; }
.ms-faq__list { display: grid; gap: 10px; }
.ms-faq details { overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.ms-faq summary { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 20px 22px; cursor: pointer; color: var(--ink-900); font-size: .78rem; font-weight: 850; list-style: none; }
.ms-faq summary::-webkit-details-marker { display: none; }
.ms-faq summary i { width: 20px; height: 20px; position: relative; flex: 0 0 auto; }
.ms-faq summary i::before, .ms-faq summary i::after { content: ""; position: absolute; top: 9px; left: 3px; width: 14px; height: 2px; border-radius: 2px; background: var(--blue-600); transition: transform .2s ease; }
.ms-faq summary i::after { transform: rotate(90deg); }
.ms-faq details[open] summary i::after { transform: rotate(0); }
.ms-faq details p { margin: 0; padding: 0 22px 20px; color: var(--text); font-size: .72rem; line-height: 1.9; }

.ms-final-cta { position: relative; overflow: hidden; padding: 72px 0; color: #fff; background: linear-gradient(135deg, #10285b, #2448e8 58%, #665ff0); }
.ms-final-cta__glow { position: absolute; width: 500px; height: 500px; left: -130px; top: -250px; border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,.2), transparent 68%); }
.ms-final-cta__inner { position: relative; display: grid; grid-template-columns: 76px 1fr auto; align-items: center; gap: 26px; }
.ms-final-cta__inner > img { width: 76px; height: 76px; padding: 9px; border-radius: 22px; background: #fff; object-fit: contain; }
.ms-final-cta span { color: #cfd6ff; font-size: .68rem; font-weight: 900; }
.ms-final-cta h2 { margin: 7px 0 5px; font-size: 1.85rem; }
.ms-final-cta p { margin: 0; color: rgba(255,255,255,.72); font-size: .76rem; }

.ms-footer { color: #fff; background: #07142f; }
.ms-footer__main { display: grid; grid-template-columns: 1.8fr 1fr 1fr; gap: 60px; padding: 58px 0 42px; }
.ms-footer__brand img { width: 180px; filter: brightness(0) invert(1); }
.ms-footer__brand p { max-width: 360px; margin: 14px 0 0; color: #8390aa; font-size: .7rem; line-height: 1.9; }
.ms-footer__main > div:not(.ms-footer__brand) { display: grid; align-content: start; gap: 11px; }
.ms-footer h3 { margin: 0 0 8px; font-size: .76rem; }
.ms-footer a { color: #8794ad; font-size: .68rem; }
.ms-footer a:hover { color: #fff; }
.ms-footer__bottom { display: flex; justify-content: space-between; gap: 20px; padding: 20px 0; border-top: 1px solid rgba(255,255,255,.08); color: #68758e; font-size: .62rem; }

@media (max-width: 1120px) {
    .ms-header__inner { grid-template-columns: 185px 1fr auto; gap: 22px; }
    .ms-nav { gap: 20px; }
    .ms-logo { width: 170px; }
    .ms-hero__grid { grid-template-columns: .82fr 1.18fr; gap: 32px; }
    .ms-hero h1 { font-size: 3.7rem; }
    .ms-browser__app { grid-template-columns: 100px 1fr; }
    .ms-feature-grid { grid-template-columns: repeat(2, 1fr); }
    .ms-feature--wide { grid-column: span 2; }
    .ms-workflow__panel { gap: 6px; }
    .ms-workflow__panel > article { padding: 24px 17px; }
    .ms-decision__grid { gap: 42px; }
}

@media (max-width: 920px) {
    .ms-header__inner { grid-template-columns: 1fr auto; }
    .ms-header__actions, .ms-nav { display: none; }
    .ms-menu { display: block; }
    .ms-menu-open .ms-menu span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .ms-menu-open .ms-menu span:nth-child(2) { opacity: 0; }
    .ms-menu-open .ms-menu span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
    .ms-menu-open .ms-nav { position: fixed; inset: 78px 0 0; display: grid; align-content: start; gap: 3px; padding: 24px 20px 40px; overflow-y: auto; background: rgba(7,20,47,.98); }
    .ms-menu-open .ms-nav > a { padding: 15px 6px; border-bottom: 1px solid rgba(255,255,255,.08); font-size: .88rem; }
    .ms-menu-open .ms-nav > a::after { display: none; }
    .ms-nav__mobile-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 18px; }
    .ms-nav__mobile-actions .ms-btn--ghost { color: #fff; background: rgba(255,255,255,.08); }
    .ms-hero { padding-top: 126px; }
    .ms-hero__grid { grid-template-columns: 1fr; }
    .ms-hero__content { max-width: 760px; margin-inline: auto; padding-bottom: 18px; text-align: center; }
    .ms-kicker { margin-inline: auto; }
    .ms-hero__content > p { margin-inline: auto; }
    .ms-hero__actions, .ms-hero__proof { justify-content: center; }
    .ms-product-stage { max-width: 800px; margin-inline: auto; padding-inline: 10px; }
    .ms-browser { margin-inline: auto; transform: none; }
    .ms-float-card--stock { right: 0; }
    .ms-float-card--invoice { left: 0; }
    .ms-module-strip { flex-wrap: wrap; padding: 22px 0; }
    .ms-workflow__panel { grid-template-columns: repeat(2, 1fr); }
    .ms-workflow__panel > b { display: none; }
    .ms-decision__grid, .ms-faq__grid { grid-template-columns: 1fr; }
    .ms-decision__copy, .ms-faq .ms-heading { max-width: 720px; }
    .ms-pricing__grid { grid-template-columns: 1fr; max-width: 680px; margin-inline: auto; }
    .ms-plan header p { min-height: 0; }
    .ms-plan--featured { order: -1; }
    .ms-assurance__grid { grid-template-columns: 1fr; max-width: 720px; margin-inline: auto; }
    .ms-final-cta__inner { grid-template-columns: 70px 1fr; }
    .ms-final-cta__inner > .ms-btn { grid-column: 1 / -1; width: fit-content; justify-self: center; }
}

@media (max-width: 680px) {
    .ms-container { width: min(100% - 26px, 1180px); }
    .ms-header__inner { min-height: 68px; }
    .ms-logo { width: 154px; }
    .ms-logo img { height: 42px; }
    .ms-menu-open .ms-nav { inset-block-start: 68px; }
    .ms-hero { padding-top: 106px; }
    .ms-hero h1 { font-size: clamp(2.6rem, 13vw, 3.45rem); }
    .ms-hero__content > p { font-size: .86rem; line-height: 1.9; }
    .ms-hero__actions { display: grid; grid-template-columns: 1fr; }
    .ms-hero__actions .ms-btn { width: 100%; }
    .ms-hero__proof { display: grid; grid-template-columns: 1fr; justify-items: center; gap: 10px; }
    .ms-product-stage { margin-top: 6px; padding-bottom: 52px; }
    .ms-browser { border-radius: 16px; }
    .ms-browser__bar { height: 40px; }
    .ms-browser__app { min-height: 390px; grid-template-columns: 74px 1fr; }
    .ms-browser__sidebar { padding: 10px 5px; }
    .ms-browser__sidebar img { width: 31px; height: 31px; }
    .ms-browser__sidebar span { padding: 7px 5px; font-size: .41rem; }
    .ms-browser__content { padding: 11px; }
    .ms-app-head button { display: none; }
    .ms-kpis { grid-template-columns: 1fr 1fr; gap: 6px; }
    .ms-kpis article { padding: 10px; }
    .ms-kpis article:last-child { grid-column: 1 / -1; }
    .ms-app-grid { grid-template-columns: 1fr; }
    .ms-activity-card { display: none; }
    .ms-float-card { display: none; }
    .ms-module-strip { gap: 12px; font-size: .62rem; }
    .ms-module-strip i { display: none; }
    .ms-section { padding: 78px 0; }
    .ms-heading { margin-bottom: 33px; }
    .ms-heading h2 { font-size: 2.1rem; }
    .ms-heading p { font-size: .82rem; }
    .ms-feature-grid { grid-template-columns: 1fr; }
    .ms-feature--wide { grid-column: auto; grid-template-columns: 1fr; gap: 25px; padding: 28px; }
    .ms-feature { min-height: auto; padding: 24px; }
    .ms-icon { margin-bottom: 28px; }
    .ms-feature__copy h3 { font-size: 1.5rem; }
    .ms-doc-card { transform: none; }
    .ms-workflow__tabs { width: 100%; }
    .ms-workflow__tabs button { min-width: 0; flex: 1; }
    .ms-workflow__panel { grid-template-columns: 1fr; }
    .ms-workflow__panel > article { min-height: auto; }
    .ms-report-card { padding: 17px; border-radius: 20px; }
    .ms-report-kpis { grid-template-columns: 1fr; }
    .ms-report-chart svg { height: 180px; }
    .ms-plan { padding: 27px 22px; }
    .ms-pricing__note { flex-direction: column; text-align: center; }
    .ms-faq__grid { gap: 25px; }
    .ms-final-cta { padding: 56px 0; }
    .ms-final-cta__inner { grid-template-columns: 1fr; text-align: center; }
    .ms-final-cta__inner > img { margin-inline: auto; }
    .ms-final-cta__inner > .ms-btn { grid-column: auto; width: 100%; }
    .ms-footer__main { grid-template-columns: 1fr 1fr; gap: 38px 25px; }
    .ms-footer__brand { grid-column: 1 / -1; }
    .ms-footer__bottom { flex-direction: column; text-align: center; }
}

@media (max-width: 430px) {
    .ms-browser__app { grid-template-columns: 1fr; }
    .ms-browser__sidebar { display: none; }
    .ms-chart { height: 115px; }
    .ms-nav__mobile-actions { grid-template-columns: 1fr; }
    .ms-footer__main { grid-template-columns: 1fr; }
    .ms-footer__brand { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
    .ms-btn:hover, .ms-feature:hover, .ms-plan:hover { transform: none; }
}
