.elementor-19983 .elementor-element.elementor-element-553687fa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19983 .elementor-element.elementor-element-39d3e081{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19983 .elementor-element.elementor-element-3476116c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19983 .elementor-element.elementor-element-65058a5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Mulish:wght@400;700;900&family=Inter:wght@300;400;500;700&family=Space+Mono:wght@400;700&display=swap');
  :root {
    /* ── DSM v2 canonical tokens ── */
    --n10:#ffffff; --n20:#f9fafb; --n30:#eef0f2; --n40:#e3e5e8; --n50:#ced4da;
    --n60:#9ca1ab; --n90:#6c757c; --n200:#495057; --n400:#343a40; --n600:#212529;

    --p100:#f4fffd; --p200:#e0f9f5; --p300:#c2ebe6; --p400:#50bbaf;
    --p500:#36a094; --p600:#1e8b7f; --p700:#02786d; --p800:#005e55; --p900:#00443d;

    --s600:#337fbd; --arctic:#a9bee8; --orchid:#6d5fcc; --amber:#c87800;
    --dest400:#ffebeb; --dest700:#b83a3a;
    --brand-neon:#1be296;

    --radius-sm:8px; --radius-md:16px; --radius-lg:24px;

    /* ── Typography (DSM v2): Mulish headings, Inter body/UI, Space Mono labels ── */
    --m-ff: 'Mulish', sans-serif;
    --m-fi: 'Inter', sans-serif;
    --m-fm: 'Space Mono', monospace;

    /* ── Back-compat aliases ── */
    --m-p700: var(--p700); --m-p800: var(--p800); --m-p200: var(--p200); --m-neon: var(--brand-neon);
    --m-n10: var(--n10); --m-n20: var(--n20); --m-n30: var(--n30); --m-n40: var(--n40);
    --m-n50: var(--n50); --m-n60: var(--n60); --m-n90: var(--n90); --m-n200: var(--n200); --m-n600: var(--n600);
    --m-amber: var(--amber); --m-amberS: #fff8e6;
    --m-g: var(--p700); --m-g2: var(--brand-neon); --m-gd: var(--p800); --m-gs: var(--p200); --m-gl: rgba(2,120,109,0.18);
    --m-k: var(--n600); --m-k2: var(--n200); --m-km: var(--n90); --m-kf: var(--n60);
    --m-w: var(--n10); --m-c: var(--n20); --m-c2: var(--n30); --m-l: var(--n40); --m-ls: var(--n30);
  }
  .m-tool { font-family: var(--m-fi); color: var(--m-k); background: var(--m-w); line-height: 1.5; }
  .m-tool * { box-sizing: border-box; }
  .m-tool h1, .m-tool h2, .m-tool h3 { margin-top: 0; }
  .m-tool p { margin: 0; }
  .m-tool a { color: inherit; text-decoration: none; }

  .m-w { max-width: 1280px !important; margin: 0 auto !important; padding: 0 80px !important; }
  .m-w--narrow { max-width: 960px !important; }

  .m-eyebrow { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.15em; color: var(--m-g); margin-bottom: 14px !important; }
  .m-h1 { font-family: var(--m-ff); font-size: 48px; font-weight: 900; line-height: 1.05; letter-spacing: -0.02em; margin-bottom: 22px !important; color: var(--m-k); }
  .m-h1 em { font-style: italic; color: var(--m-g); font-weight: 900; }
  .m-lead { font-size: 17px; color: var(--m-k2); line-height: 1.65; margin-bottom: 0; }
  .m-hero { padding: 72px 0 36px !important; max-width: 720px !important; }

  /* Adaptive hero: show the variant matching the active tab.
     The .m-tool wrapper carries data-active-tab; only the matching
     [data-variant] block is visible. Defaults visible for no-JS. */
  .m-hero__variant { display: none; }
  .m-tool[data-active-tab="image"] .m-hero__variant[data-variant="image"],
  .m-tool[data-active-tab="pdf"]   .m-hero__variant[data-variant="pdf"] { display: block; }
  /* No-JS fallback: if data-active-tab isn't set yet, show the default-tab variant */
  .m-tool:not([data-active-tab])[data-default-tab="image"] .m-hero__variant[data-variant="image"],
  .m-tool:not([data-active-tab])[data-default-tab="pdf"]   .m-hero__variant[data-variant="pdf"] { display: block; }

  /* Tab switcher */
  .m-tool .m-tabs { display: inline-flex; gap: 4px; background: var(--m-n30); padding: 4px; border-radius: 10px; margin-bottom: 24px; }
  .m-tool .m-tab { display: inline-flex; align-items: center; gap: 8px; padding: 9px 22px; border-radius: 7px; border: none; background: transparent; font-size: 14px; font-weight: 700; color: var(--m-n90); cursor: pointer; transition: all 0.18s ease; font-family: var(--m-fi); }
  .m-tool .m-tab.is-active { background: #fff; color: var(--m-n600); box-shadow: 0 1px 4px rgba(0,0,0,0.10); }
  .m-tool .m-tab:hover:not(.is-active) { color: var(--m-n600); background: transparent}
  .m-tool .m-tab__icon { width: 16px; height: 16px; flex-shrink: 0; stroke: currentColor; stroke-width: 1.8; fill: none; stroke-linecap: round; stroke-linejoin: round; }

  /* Tool panels */
  .m-panel { display: none; }
  .m-panel.is-active { display: block; }

  .m-card { border: 2px solid var(--m-gl); border-radius: 14px; background: var(--m-w); padding: 48px 40px; position: relative; margin-bottom: 14px; transition: transform 0.2s cubic-bezier(0.16,1,0.3,1), box-shadow 0.2s ease; }
  .m-card:hover { transform: translateY(-3px); box-shadow: 0 12px 32px rgba(13,15,26,0.08); }
  .m-card__badge { position: absolute; top: 16px; right: 16px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; color: var(--m-gd); background: var(--m-gs); padding: 4px 10px; border-radius: 99px; }
  .m-card__h { font-family: var(--m-ff); font-size: 28px; font-weight: 900; margin-bottom: 12px; }
  .m-card__d { font-size: 15px; color: var(--m-k2); line-height: 1.7; margin-bottom: 32px !important; }
  .m-btn { display: inline-flex; align-items: center; padding: 11px 24px; border-radius: 8px; font-size: 16px; line-height: 1.1; font-weight: 600; border: none; cursor: pointer; text-decoration: none; transition: transform 0.16s ease, box-shadow 0.16s ease; }
  .m-btn:hover { transform: translateY(-2px); }
  .m-btn--green { background: var(--m-neon); color: var(--m-n600); }
  .m-btn--green:hover { box-shadow: 0 6px 22px rgba(27,226,150,0.35); }
  .m-btn--primary { background: var(--m-g2); color: var(--m-k); }
  .m-btn--ghost { background: transparent; color: var(--m-k); border: 1.5px solid #ced4da; }
  .m-btn--ghost:hover { box-shadow: 0 4px 14px rgba(13,15,26,0.08); }

  .m-features { padding: 48px 0; background: var(--m-c); border-top: 1px solid var(--m-ls); border-bottom: 1px solid var(--m-ls); }
  .m-features__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; font-size: 13px; color: var(--m-km); }
  .m-features__h { font-size: 14px; font-weight: 700; color: var(--m-k); margin-bottom: 6px; }
  .m-features__d { line-height: 1.6; }

  .m-footer-pad { padding: 56px 0; }
  .m-footer-pad p { font-size: 15px; color: var(--m-k2); line-height: 1.7; max-width: 540px; }
  .m-footer-pad__btns { display: flex; gap: 10px; margin-top: 32px; flex-wrap: wrap; }

  .m-cta { background: var(--m-ls) !important; padding: 64px 80px !important; }
  .m-cta__inner { text-align: center !important; max-width: 640px; margin: 0 auto; max-width: 640px !important; margin: 0 auto !important; display: block !important; }
  .m-cta__h { font-family: var(--m-ff) !important; font-size: 36px !important; font-weight: 900 !important; color: var(--m-k) !important; margin-bottom: 16px !important; letter-spacing: -0.02em !important; text-align: center !important; }
  .m-cta__h em { font-style: italic; color: var(--m-g); }
  .m-cta__p { font-size: 15px !important; color: var(--m-km) !important; margin: 0 auto 32px !important; max-width: 480px !important; line-height: 1.65 !important; text-align: center !important; display: block !important; }
  .m-cta__btns { display: flex !important; gap: 10px !important; justify-content: center !important; flex-wrap: wrap !important; align-items: center !important; }

  @media (max-width: 700px) {
    .m-w { padding: 0 24px !important; }
    .m-features__grid { grid-template-columns: 1fr; }
    .m-h1 { font-size: 36px; }
  }

  .m-tool button, .m-tool a.m-btn {
    background-image: none !important; text-transform: none !important; letter-spacing: 0 !important;
    box-shadow: none !important; text-decoration: none !important; text-shadow: none !important;
    min-height: 0 !important; line-height: 1.1 !important;
  }
  .m-tool .m-btn { border: 0 !important; border-radius: 8px !important; padding: 11px 24px !important; font-size: 16px !important; font-weight: 600 !important; }
  .m-tool .m-btn--green   { background: var(--m-neon) !important; color: var(--m-n600) !important; }
  .m-tool .m-btn--primary { background: var(--m-g2) !important; color: var(--m-k) !important; }
  .m-tool .m-btn--ghost   { background: transparent !important; color: var(--m-k) !important; border: 1.5px solid #ced4da !important; }

  body[data-motion-on] .m-fade-in { opacity: 0; transform: translateY(18px); transition: opacity .5s cubic-bezier(0.16,1,0.3,1), transform .5s cubic-bezier(0.16,1,0.3,1); }
  body[data-motion-on] .m-fade-in.is-visible { opacity: 1; transform: none; }
  @media (prefers-reduced-motion: reduce) {
    body[data-motion-on] .m-fade-in { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 1024px) { .m-cta { padding: 64px 40px; } }
  @media (max-width: 768px) { .m-cta { padding: 56px 24px; } }
  @media (max-width: 480px) { .m-cta { padding: 48px 20px; } }

  /* v5i motion system */
  body[data-motion-on] .rv { opacity:0; transform:translateY(28px); transition:opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1); }
  body[data-motion-on] .rvl { opacity:0; transform:translateX(-22px); transition:opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1); }
  body[data-motion-on] .rvs { opacity:0; transform:scale(.96); transition:opacity .65s cubic-bezier(.16,1,.3,1), transform .65s cubic-bezier(.16,1,.3,1); }
  body[data-motion-on] .rv.in, body[data-motion-on] .rvl.in, body[data-motion-on] .rvs.in { opacity:1; transform:none; }
  body[data-motion-on] .rv.is-visible,
  body[data-motion-on] .rvl.is-visible,
  body[data-motion-on] .rvs.is-visible { opacity:1; transform:none; }
  .d1{transition-delay:.07s}.d2{transition-delay:.14s}.d3{transition-delay:.21s}.d4{transition-delay:.28s}.d5{transition-delay:.35s}

  /* tour/step illustration SVGs responsive */
  .m-tour__mockup-wrap svg,
  .m-tour__step svg,
  .m-mockup svg,
  .m-step__mockup svg { width: 100% !important; height: auto !important; display: block; }
  .m-tour__mockup-wrap > div,
  .m-tour__step > div:last-child > div { overflow-x: auto; -webkit-overflow-scrolling: touch; min-width: 0; }/* End custom CSS */