.mj-hero, .mj-types, .mj-proc, .mj-anat, .mj-geo, .mj-pf{ --pb:calc(var(--sec-y) * 1.19); }
.mj-types, .mj-proc, .mj-geo, .mj-pf{ padding-bottom:var(--pb); }
.mj-types .sec-head__main, .mj-proc .sec-head__main, .mj-anat .sec-head__main, .mj-geo .sec-head__main, .mj-pf .sec-head__main{ align-items:flex-start; gap:5px; }
.mj-types .sec-head__aside, .mj-proc .sec-head__aside, .mj-anat .sec-head__aside, .mj-geo .sec-head__aside{ max-width:360px; margin-top:14px; font-size:16px; line-height:1.5; }
.mj-types .sec-head .h2, .mj-proc .sec-head .h2, .mj-anat .sec-head .h2, .mj-geo .sec-head .h2, .mj-pf .sec-head .h2{ --hw:12.67em; }
.mj-pf .sec-head__side{ margin-top:14px; }
.mj-hero{ position:relative; overflow:hidden; padding:clamp(144px, 9.27vw, 178px) 0 clamp(28px, 2vw, 38px); }
.mj-hero__decor{ position:absolute; inset:0; pointer-events:none; z-index:0; }
.mj-hero__glow{ position:absolute; border-radius:50%; --blur:260px;  }
.mj-hero__glow--signal{ right:-13.5%; top:-38%; width:52%; height:81%; --gc:rgba(233, 80, 6, 0.3); animation:mj-breathe 9s var(--ease-in-out) infinite alternate; }
.mj-hero__glow--slate{ left:-19.8%; top:47%; width:57%; height:81%; --gc:rgba(52, 81, 99, 0.55); animation:mj-breathe 11s var(--ease-in-out) infinite alternate-reverse; }
@keyframes mj-breathe{ from{ transform:scale(0.92); opacity:0.75; } to{ transform:scale(1.08); opacity:1; } }
.mj-hero__grid, .mj-hero__marks{ position:absolute; left:50%; transform:translateX(-50%); width:min(100% - var(--gutter) * 2, var(--container)); display:flex; justify-content:space-between; }
.mj-hero__grid{ top:0; bottom:0; }
.mj-hero__grid i{ width:1px; height:100%; background:rgba(187, 205, 218, 0.07); }
.mj-hero__marks{ top:144px; height:13px; }
.mj-hero__marks b{ position:relative; width:13px; height:13px; margin-left:-6px; }
.mj-hero__marks b:nth-child(2){ margin-left:0; }
.mj-hero__marks b:last-child{ margin-right:-6px; }
.mj-hero__marks b::before, .mj-hero__marks b::after{ content:""; position:absolute; background:rgba(187, 205, 218, 0.35); }
.mj-hero__marks b::before{ left:0; right:0; top:6px; height:1px; }
.mj-hero__marks b::after{ top:0; bottom:0; left:6px; width:1px; }

.mj-hero__inner{ position:relative; z-index:1; container-type:inline-size; }
.mj-hero__main{ --gap:clamp(40px, 4.2vw, 80px); position:relative; min-height:calc(46.81cqw + var(--gap)); padding-bottom:var(--gap); }
.mj-hero__text{ position:relative; z-index:2; max-width:54%; }

.mj-crumbs ol{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; font-size:15px; font-weight:500; line-height:20px; color:rgba(187, 205, 218, 0.7); }
.mj-crumbs li{ display:inline-flex; align-items:center; gap:10px; }
.mj-crumbs li + li::before{ content:"/"; color:rgba(187, 205, 218, 0.35); }
.mj-crumbs a{ transition:color var(--dur-fast) var(--ease-out); }
.mj-crumbs a:hover{ color:var(--white); }
.mj-crumbs [aria-current]{ color:var(--white); }

.mj-hero__h1{ margin:30px 0 0 -0.07em; font-size:clamp(44px, 5.83vw, 112px); font-weight:600; line-height:1; letter-spacing:-0.04em; color:var(--white); }
.mj-hero__mask{ display:block; overflow:hidden; padding:0.1em 0 0.26em; margin:-0.1em 0 -0.26em; }
.mj-hero__mask > span{ display:inline-block; }
.mj-hero__intro{ max-width:540px; margin-top:clamp(32px, 3.55vw, 68px); font-size:clamp(17px, 0.3vw + 13px, 19px); line-height:1.55; color:rgba(187, 205, 218, 0.85); }
.mj-hero__ctas{ display:flex; flex-wrap:wrap; gap:14px; margin-top:clamp(32px, 4.6vw, 88px); }
.mj-vis{ position:absolute; z-index:1; left:55.333%; top:-0.533cqw; width:47.067cqw; aspect-ratio:706 / 710; font-size:calc(100cqw / 150); }

.mj-canvas{
  position:absolute; left:13em; top:0; width:54em; height:60em; overflow:hidden;
  border-radius:2.8em; background:#0e151b; border:1px solid rgba(255, 255, 255, 0.1);
  box-shadow:0 3em 6em rgba(0, 0, 0, 0.35); contain:layout paint;
}
.mj-canvas__bar{ position:relative; z-index:2; display:flex; align-items:center; gap:1em; height:5.6em; padding:0 2.2em; border-bottom:1px solid rgba(255, 255, 255, 0.08); }
.mj-canvas__dots{ display:flex; gap:0.6em; }
.mj-canvas__dots i{ width:1em; height:1em; border-radius:50%; background:rgba(255, 255, 255, 0.16); }
.mj-canvas__file{ font-family:var(--mono); font-size:1.2em; color:var(--mist); white-space:nowrap; }
.mj-canvas__status{ margin-left:auto; display:inline-flex; align-items:center; gap:0.6em; height:2.4em; padding:0 1em; border-radius:99px; background:rgba(233, 80, 6, 0.16); }
.mj-canvas__status i{ width:0.6em; height:0.6em; border-radius:50%; background:var(--signal); }
.mj-canvas__status span{ font-family:var(--mono); font-size:1.1em; line-height:1; color:var(--signal); }
.mj-canvas__board{ position:absolute; inset:5.7em 0 0; background-image:radial-gradient(circle at 1px 1px, rgba(187, 205, 218, 0.13) 1px, transparent 1.3px); background-size:2.4em 2.4em; background-position:1em 0.8em; }
.mj-canvas__board > *{ position:absolute; }
.mj-canvas__frame-name{ left:4.4em; top:2.1em; font-family:var(--mono); font-size:1.1em; line-height:1.3; color:rgba(187, 205, 218, 0.8); }
.mj-mock{ left:4.4em; top:4.3em; width:45.2em; height:44em; overflow:hidden; border-radius:1em; background:var(--white); }
.mj-mock > *{ position:absolute; display:block; }
.mj-mock__logo{ left:2.2em; top:2.2em; width:5.4em; height:1em; border-radius:0.3em; background:var(--ink); }
.mj-mock__logo::before{ content:""; position:absolute; inset:0 auto 0 0; width:1em; border-radius:0.3em; background:var(--signal); }
.mj-mock__nav{ left:18em; top:2.4em; display:flex; gap:1.2em; }
.mj-mock__nav i{ width:3.4em; height:0.6em; border-radius:0.3em; background:rgba(97, 112, 125, 0.35); }
.mj-mock__btn-top{ left:36.8em; top:1.6em; width:6.2em; height:2.2em; border-radius:99px; background:var(--signal); }
.mj-mock__hero{ left:0; top:5.4em; width:100%; height:19em; background:var(--paper); }
.mj-mock__hero > *{ position:absolute; display:block; }
.mj-mock__h1{ left:0.8em; top:0.933em; font-size:3em; font-weight:600; line-height:1.04; letter-spacing:-0.03em; color:var(--ink); white-space:nowrap; }
.mj-mock__line{ left:2.4em; height:0.6em; border-radius:0.3em; background:rgba(97, 112, 125, 0.4); }
.mj-mock__line--1{ top:11.2em; width:17em; }
.mj-mock__line--2{ top:12.4em; width:13em; }
.mj-mock__cta{ left:2.4em; top:14.6em; width:8.6em; height:2.4em; border-radius:99px; background:var(--signal); }
.mj-mock__img{ left:25.8em; top:2em; width:17em; height:15em; border-radius:1em; background:linear-gradient(135deg, #345163, #bbcdda); transform-origin:50% 50%; }
.mj-mock__cards{ left:2.4em; top:26.6em; display:flex; gap:1.2em; }
.mj-mock__card{ position:relative; width:12.8em; height:12em; border-radius:0.8em; background:var(--paper); }
.mj-mock__card > *{ position:absolute; left:1.4em; display:block; }
.mj-mock__card i{ top:1.4em; width:2.6em; height:2.6em; border-radius:0.8em; background:var(--white); }
.mj-mock__card b{ top:7.8em; width:7em; height:0.6em; border-radius:0.3em; background:rgba(6, 10, 13, 0.7); }
.mj-mock__card s{ top:9.2em; width:9.6em; height:0.5em; border-radius:0.3em; background:rgba(97, 112, 125, 0.35); }
.mj-sel{ --x:64; --y:121; --w:186; --h:70; left:0; top:0; width:0; height:0; z-index:3; }
.mj-sel > *{ position:absolute; left:0; top:0; display:block; transform-origin:0 0; will-change:transform; }
.mj-sel__e{ background:var(--signal); }
.mj-sel__e--t, .mj-sel__e--b{ width:1em; height:0.15em; }
.mj-sel__e--l, .mj-sel__e--r{ width:0.15em; height:1em; }
.mj-sel__e--t{ transform:translate(calc(var(--x) * 0.1em), calc(var(--y) * 0.1em)) scaleX(calc(var(--w) / 10)); }
.mj-sel__e--b{ transform:translate(calc(var(--x) * 0.1em), calc((var(--y) + var(--h)) * 0.1em - 0.15em)) scaleX(calc(var(--w) / 10)); }
.mj-sel__e--l{ transform:translate(calc(var(--x) * 0.1em), calc(var(--y) * 0.1em)) scaleY(calc(var(--h) / 10)); }
.mj-sel__e--r{ transform:translate(calc((var(--x) + var(--w)) * 0.1em - 0.15em), calc(var(--y) * 0.1em)) scaleY(calc(var(--h) / 10)); }
.mj-sel__h{ width:0.8em; height:0.8em; border-radius:0.1em; background:var(--white); border:0.15em solid var(--signal); }
.mj-sel__h--tl{ transform:translate(calc(var(--x) * 0.1em - 0.4em), calc(var(--y) * 0.1em - 0.4em)); }
.mj-sel__h--tr{ transform:translate(calc((var(--x) + var(--w)) * 0.1em - 0.4em), calc(var(--y) * 0.1em - 0.4em)); }
.mj-sel__h--bl{ transform:translate(calc(var(--x) * 0.1em - 0.4em), calc((var(--y) + var(--h)) * 0.1em - 0.4em)); }
.mj-sel__h--br{ transform:translate(calc((var(--x) + var(--w)) * 0.1em - 0.4em), calc((var(--y) + var(--h)) * 0.1em - 0.4em)); }
.mj-sel__label{ padding:0.3em 0.7em; border-radius:0.4em; background:var(--signal); color:var(--white); font-size:1em; line-height:1.3; white-space:nowrap; transform:translate(calc(var(--x) * 0.1em), calc((var(--y) + var(--h)) * 0.1em + 0.8em)); }

.mj-pin{ left:43em; top:26.1em; z-index:4; display:grid; place-items:center; width:3em; height:3em; border-radius:0.2em 1.5em 1.5em 1.5em; background:var(--white); border:0.2em solid var(--signal); color:var(--signal-text); }
.mj-pin b{ font-size:1.3em; font-weight:600; line-height:1; }
.mj-comment{ left:29em; top:30.3em; z-index:4; display:flex; flex-direction:column; gap:0.8em; width:19.7em; padding:1.4em 1.6em; border-radius:1.6em; background:var(--white); box-shadow:0 1.6em 3em rgba(0, 0, 0, 0.25); }
.mj-comment__meta{ font-size:1.1em; line-height:1.3; color:var(--muted); }
.mj-comment__text{ font-size:1.5em; font-weight:500; line-height:1.33; color:var(--ink); white-space:nowrap; }
.mj-comment__status{ display:grid; }
.mj-comment__state{ grid-area:1 / 1; display:inline-flex; align-items:center; gap:0.462em; font-size:1.3em; font-weight:500; line-height:1.3; white-space:nowrap; transition:opacity 300ms var(--ease-out), transform 300ms var(--ease-out); }
.mj-comment__state svg{ width:1.077em; height:1.077em; flex:none; }
.mj-comment__state--open{ color:var(--muted); opacity:0; transform:translateY(-0.4em); }
.mj-comment__state--open i{ width:0.5em; height:0.5em; border-radius:50%; background:var(--signal); animation:dw-blink 1.2s steps(1) infinite; }
.mj-comment__state--done{ color:var(--signal-text); }
.mj-comment__state--done svg{ color:var(--signal); }
.mj-comment.is-open .mj-comment__state--open{ opacity:1; transform:none; }
.mj-comment.is-open .mj-comment__state--done{ opacity:0; transform:translateY(0.4em); }

.mj-aicard{
  position:absolute; left:0; top:49em; z-index:3; width:30em;
  display:flex; flex-direction:column; align-items:flex-start; gap:1.2em; padding:2em 2.2em;
  border-radius:2.2em; background:rgba(14, 21, 27, 0.96); border:1px solid rgba(255, 255, 255, 0.12); box-shadow:0 3em 6em rgba(0, 0, 0, 0.35); color:var(--white);
}
.mj-aicard__label{ font-size:1.2em; line-height:1.3; color:var(--mist); }
.mj-aicard__q{ font-size:1.6em; font-weight:500; line-height:1.35; }
.mj-aicard__src{ position:relative; display:inline-flex; align-items:center; gap:0.667em; height:2.667em; padding:0 1em 0 0.833em; border-radius:99px; background:rgba(233, 80, 6, 0.16); border:1px solid rgba(233, 80, 6, 0.5); font-size:1.2em; color:var(--white); white-space:nowrap; }
.mj-aicard__src i{ width:0.667em; height:0.667em; border-radius:50%; background:var(--signal); }
.mj-aicard__src::after{ content:""; position:absolute; inset:-1px; border-radius:inherit; box-shadow:0 0 0 0 rgba(233, 80, 6, 0.55); opacity:0; pointer-events:none; }
.mj-aicard__src.is-lit::after{ animation:mj-chip-ping 1.6s var(--ease-out) 1; }
@keyframes mj-chip-ping{ 0%{ opacity:1; box-shadow:0 0 0 0 rgba(233, 80, 6, 0.55); } 100%{ opacity:0; box-shadow:0 0 0 0.9em rgba(233, 80, 6, 0); } }
.mj-aicard__schema{ font-size:1.2em; line-height:1.3; color:rgba(255, 255, 255, 0.75); }

.mj-speed{
  position:absolute; left:46em; top:63em; z-index:3; width:24.6em; height:8em;
  display:flex; align-items:center; gap:1.4em; padding:1.4em 2.2em 1.4em 1.4em;
  border-radius:2em; background:var(--white); box-shadow:0 2em 4em rgba(0, 0, 0, 0.3); color:var(--ink);
}
.mj-speed__ring{ position:relative; flex:none; display:grid; place-items:center; width:5.2em; height:5.2em; }
.mj-speed__ring svg{ position:absolute; inset:0; width:100%; height:100%; }
.mj-speed__ring b{ position:relative; font-size:1.7em; font-weight:600; }
.mj-speed__text{ display:flex; flex-direction:column; gap:0.4em; white-space:nowrap; }
.mj-speed__text strong{ font-size:1.5em; font-weight:500; line-height:1.33; }
.mj-speed__text small{ font-size:1.2em; line-height:1.33; color:var(--muted); }

.mj-hero__strip{ display:grid; grid-template-columns:repeat(4, 1fr); padding-top:36px; border-top:1px solid rgba(255, 255, 255, 0.1); }
.mj-hero__strip li{ display:grid; gap:8px; align-content:start; padding-right:32px; }
.mj-hero__strip small{ font-size:14px; font-weight:500; line-height:18px; color:rgba(187, 205, 218, 0.6); }
.mj-hero__strip span{ max-width:300px; font-size:18px; font-weight:500; line-height:1.4; color:var(--white); }
.mj-types__grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:24px; align-items:stretch; }
.mj-type{ display:flex; flex-direction:column; gap:22px; padding:32px; border-radius:28px; background:var(--white); color:var(--ink); transition:transform var(--dur-slow) var(--ease-out), box-shadow var(--dur-slow) var(--ease-out); }
.mj-type--featured{ background:var(--ink); color:var(--white); box-shadow:0 24px 60px rgba(233, 80, 6, 0.22), inset 0 0 0 1.5px var(--signal); }
.mj-type__map{ height:150px; border-radius:18px; background:var(--paper); overflow:hidden; }
.mj-type--featured .mj-type__map{ background:rgba(255, 255, 255, 0.05); }
.mj-map{ width:100%; height:100%; overflow:visible; }
.mj-type__head{ display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:36px; }
.mj-type__name{ font-size:28px; font-weight:600; line-height:36px; letter-spacing:-0.02em; }
.mj-type__badge{ flex:none; display:inline-flex; align-items:center; height:29px; padding:0 12px; border-radius:99px; background:var(--signal); color:var(--white); font-size:13px; font-weight:500; }
.mj-type__meta{ font-size:13px; line-height:17px; color:var(--muted); }
.mj-type--featured .mj-type__meta{ color:var(--mist); }
.mj-type__price{ display:flex; align-items:baseline; flex-wrap:wrap; gap:0 10px; }
.mj-type__price small{ font-size:18px; font-weight:500; }
.mj-type__price strong{ font-size:clamp(42px, 1.3vw + 29px, 54px); font-weight:600; line-height:70px; letter-spacing:-0.03em; white-space:nowrap; }
.mj-type__price > span{ font-size:14px; font-weight:500; color:var(--muted); }
.mj-type--featured .mj-type__price > span{ color:var(--mist); }
.mj-type__price--text strong{ font-size:clamp(32px, 0.8vw + 24px, 40px); line-height:1; white-space:normal; }
.mj-type__desc{ font-size:16px; line-height:1.5; color:var(--muted); }
.mj-type--featured .mj-type__desc{ color:var(--mist); }
.mj-type__sep{ height:1px; flex:none; background:rgba(6, 10, 13, 0.1); }
.mj-type--featured .mj-type__sep{ background:rgba(255, 255, 255, 0.14); }
.mj-type__sep--foot{ margin-top:auto; }
.mj-type__inc{ display:grid; gap:14px; padding-bottom:17px; }
.mj-type__plus{ font-size:15px; font-weight:600; line-height:1.4; }
.mj-type__list{ display:grid; gap:14px; }
.mj-type__list li{ display:grid; grid-template-columns:18px 1fr; gap:12px; font-size:15px; line-height:1.4; }
.mj-type__list svg{ width:18px; height:18px; margin-top:1px; color:var(--signal); }
.mj-type__foot{ display:flex; justify-content:space-between; align-items:center; gap:16px; font-size:14px; line-height:18px; color:var(--muted); }
.mj-type__foot .mono{ font-size:14px; color:var(--ink); white-space:nowrap; }
.mj-type--featured .mj-type__foot{ color:var(--mist); }
.mj-type--featured .mj-type__foot .mono{ color:var(--white); }
.mj-type--featured.is-lifted{ transform:translateY(-12px); box-shadow:0 40px 80px rgba(233, 80, 6, 0.3), inset 0 0 0 1.5px var(--signal); }
@media (hover: hover) and (pointer: fine){
  .mj-type:not(.mj-type--featured):hover{ transform:var(--lift); box-shadow:0 30px 60px rgba(6, 10, 13, 0.08); }
}
.mj-types__ribbon{ margin-top:clamp(32px, 2.5vw, 48px); color:var(--ink); }
.mj-types__ribbon .ribbon__icon{ background:rgba(233, 80, 6, 0.12); }
.mj-types__ribbon .ribbon__icon svg{ width:20px; height:20px; }
.mj-types__ribbon .ribbon__link{ color:var(--signal-text); }
.mj-proc{ overflow:hidden; }
.mj-proc__glow{ position:absolute; border-radius:50%; --blur:260px; pointer-events:none; z-index:0; }
.mj-proc__glow--slate{ left:-19.8%; top:45%; width:57%; height:68%; --gc:rgba(52, 81, 99, 0.55); }
.mj-proc__glow--signal{ left:72.9%; top:-27%; width:41.7%; height:45%; --gc:rgba(233, 80, 6, 0.35); }
.mj-proc .h2{ color:var(--white); }
.mj-proc .sec-head__aside{ color:var(--mist); }

.mj-gantt{ --lab:29.577%; position:relative; padding:36px 40px 48px; border-radius:28px; background:rgba(255, 255, 255, 0.03); border:1px solid rgba(255, 255, 255, 0.1); color:var(--white); }
.mj-gantt__grid{ position:absolute; top:16px; bottom:100px; left:calc(40px + (100% - 80px) * 0.29577); right:40px; display:flex; justify-content:space-between; pointer-events:none; }
.mj-gantt__grid i{ width:1px; height:100%; background:rgba(255, 255, 255, 0.08); }
.mj-gantt__head{ display:grid; grid-template-columns:var(--lab) 1fr; padding-bottom:23px; border-bottom:1px solid rgba(255, 255, 255, 0.1); }
.mj-gantt__head .mono{ font-size:13px; line-height:17px; color:var(--mist); }
.mj-gantt__weeks{ display:grid; grid-template-columns:repeat(4, 1fr); }
.mj-gantt__weeks span{ padding-left:16px; }
.mj-gantt__body{ position:relative; padding-top:19px; }
.mj-gantt__row{ display:grid; grid-template-columns:var(--lab) 1fr; height:100px; }
.mj-gantt__row + .mj-gantt__row{ border-top:1px solid rgba(255, 255, 255, 0.08); }
.mj-gantt__phase{ padding-top:24px; }
.mj-gantt__phase strong{ display:block; font-size:20px; font-weight:600; line-height:26px; letter-spacing:-0.01em; }
.mj-gantt__phase span{ display:block; margin-top:6px; font-size:13px; line-height:17px; color:var(--mist); }
.mj-gantt__lane{ position:relative; }
.mj-bar{ position:absolute; left:calc(var(--x) * 0.1%); width:calc(var(--w) * 0.1%); min-width:max-content; display:flex; align-items:center; border-radius:99px; white-space:nowrap; }
.mj-bar--human{ top:16px; height:34px; padding:0 14px; background:var(--signal); font-size:14px; font-weight:500; color:var(--white); }
.mj-bar--ai{ top:58px; height:26px; padding:0 12px; background:rgba(187, 205, 218, 0.14); border:1px dashed rgba(187, 205, 218, 0.45); font-size:11px; color:var(--mist); }
.mj-gantt__row--single .mj-bar--human{ top:33px; }
.mj-gantt__today{ position:absolute; z-index:2; top:7px; bottom:0; left:calc(var(--lab) + (100% - var(--lab)) * var(--x) / 1000); width:0; pointer-events:none; }
.mj-gantt__today::before{ content:""; position:absolute; top:24px; bottom:0; left:0; width:1px; background:repeating-linear-gradient(180deg, rgba(233, 80, 6, 0.8) 0 4px, transparent 4px 8px); transform-origin:top; }
.mj-gantt__today-chip{ position:absolute; top:0; left:0; transform:translateX(-50%); display:inline-flex; align-items:center; gap:6px; height:24px; padding:0 10px; border-radius:99px; background:var(--white); color:var(--ink); font-size:11px; white-space:nowrap; box-shadow:0 6px 16px rgba(0, 0, 0, 0.25); }
.mj-gantt__today-chip i{ width:7px; height:7px; border-radius:50%; background:var(--signal); animation:dw-blink 1.4s steps(1) infinite; }
.mj-gantt__foot{ display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:34px; }
.mj-gantt__legend{ display:flex; flex-wrap:wrap; gap:10px 28px; font-size:14px; font-weight:500; line-height:18px; }
.mj-gantt__legend > span{ display:inline-flex; align-items:center; gap:10px; }
.mj-gantt__key{ width:28px; height:12px; border-radius:99px; }
.mj-gantt__key--human{ background:var(--signal); }
.mj-gantt__key--ai{ background:rgba(187, 205, 218, 0.14); border:1px dashed rgba(187, 205, 218, 0.45); }
.mj-gantt__note{ font-size:14px; line-height:18px; color:var(--mist); text-align:right; }
.mj-anat{ padding-bottom:calc(var(--sec-y) * 0.94); }
.mj-anat__stage{ position:relative; container-type:inline-size; aspect-ratio:1500 / 892; }
.mj-note{ position:absolute; top:calc(var(--y) * 100cqw / 1500); width:22%; }
.mj-note--l{ left:0; }
.mj-note--r{ right:0; }
.mj-note__tag{ display:block; font-size:12px; line-height:16px; color:var(--signal-text); }
.mj-note__title{ margin-top:8px; font-size:clamp(19px, 0.4vw + 14px, 22px); font-weight:600; line-height:1.3; letter-spacing:-0.01em; }
.mj-note__text{ margin-top:8px; font-size:15px; line-height:1.5; color:var(--muted); }
.mj-anat__mock{ position:absolute; z-index:1; left:26%; top:0; width:48%; container-type:inline-size; }
.mj-browser, .mj-acf{ font-size:calc(100cqw / 72); }
.mj-browser{ position:relative; height:86em; overflow:hidden; border-radius:2.2em; background:var(--white); box-shadow:0 4em 8em rgba(6, 10, 13, 0.16), 0 0 0 1px rgba(6, 10, 13, 0.08); }
.mj-browser > *{ position:absolute; display:block; }
.mj-browser__bar{ left:0; top:0; width:100%; height:4.4em; background:var(--ink); }
.mj-browser__dots{ position:absolute; left:1.8em; top:1.8em; display:flex; gap:0.6em; }
.mj-browser__dots i{ width:0.9em; height:0.9em; border-radius:50%; background:rgba(255, 255, 255, 0.2); }
.mj-browser__url{ position:absolute; left:50%; top:1.1em; transform:translateX(-50%); padding:0.455em 1.273em; border-radius:99px; background:rgba(255, 255, 255, 0.08); font-size:1.1em; line-height:1.27; color:var(--mist); white-space:nowrap; }
.mj-browser__logo{ left:3.6em; top:6.6em; width:7em; height:1.2em; border-radius:0.3em; background:var(--ink); }
.mj-browser__logo::before{ content:""; position:absolute; inset:0 auto 0 0; width:1.2em; border-radius:0.3em; background:var(--signal); }
.mj-browser__nav{ left:33em; top:6.9em; display:flex; gap:1.4em; }
.mj-browser__nav i{ width:4.4em; height:0.7em; border-radius:0.3em; background:rgba(97, 112, 125, 0.35); }
.mj-browser__btn{ left:60em; top:5.6em; width:8.4em; height:2.8em; border-radius:99px; background:var(--signal); }
.mj-browser__hero{ left:0; top:10em; width:100%; height:30em; background:var(--paper); }
.mj-browser__hero > *{ position:absolute; display:block; }
.mj-browser__h1{ left:1em; top:1.15em; font-size:4em; width:7.6em; font-weight:600; line-height:1.02; letter-spacing:-0.03em; color:var(--ink); min-height:2.04em; }
.mj-browser__line{ left:4em; height:0.8em; border-radius:0.4em; background:rgba(97, 112, 125, 0.35); }
.mj-browser__line--1{ top:15em; width:25em; }
.mj-browser__line--2{ top:16.6em; width:20em; }
.mj-browser__cta{ left:2.857em; top:14.286em; display:flex; align-items:center; height:3em; padding:0 1.286em; border-radius:99px; background:var(--signal); color:var(--white); font-size:1.4em; font-weight:600; white-space:nowrap; }
.mj-browser__img{ left:40em; top:3em; width:28em; height:24em; border-radius:1.4em; background:linear-gradient(135deg, #345163, #bbcdda); }
.mj-browser__img span{ position:absolute; left:1.6em; bottom:0.7em; padding:0.5em 1em; border-radius:99px; background:rgba(255, 255, 255, 0.9); font-size:1em; line-height:1.3; color:var(--ink); white-space:nowrap; }
.mj-browser__tabs{ left:4em; top:43em; display:flex; gap:5.2em; }
.mj-browser__tabs i{ width:8em; height:1.2em; border-radius:0.3em; background:rgba(97, 112, 125, 0.25); }
.mj-browser__cards{ left:4em; top:47em; display:flex; gap:1.6em; }
.mj-browser__cards > span{ position:relative; width:20.4em; height:13em; border-radius:1.2em; background:var(--paper); }
.mj-browser__cards > span > *{ position:absolute; left:1.6em; display:block; }
.mj-browser__cards i{ top:1.6em; width:3em; height:3em; border-radius:0.8em; background:var(--white); }
.mj-browser__cards b{ top:8.2em; width:11em; height:0.8em; border-radius:0.4em; background:rgba(6, 10, 13, 0.7); }
.mj-browser__cards s{ top:10em; width:15em; height:0.6em; border-radius:0.3em; background:rgba(97, 112, 125, 0.35); }
.mj-browser__faq-title{ left:2.222em; top:35em; font-size:1.8em; font-weight:600; line-height:1.28; letter-spacing:-0.01em; color:var(--ink); }
.mj-browser__faq{ left:4em; right:4em; top:66.3em; display:grid; }
.mj-browser__faq > span{ display:flex; align-items:center; justify-content:space-between; height:3.4em; border-bottom:1px solid rgba(6, 10, 13, 0.08); }
.mj-browser__faq > span:last-child{ border-bottom:0; }
.mj-browser__faq i{ width:calc(var(--w) * 1em); height:0.8em; border-radius:0.4em; background:rgba(6, 10, 13, 0.6); }
.mj-browser__faq b{ font-size:1.6em; font-weight:500; color:var(--ink); margin-right:0.25em; }
.mj-browser__foot{ left:0; top:70em; width:100%; height:8.182em; padding:2.9em 3.636em 0; background:var(--ink); color:var(--mist); font-size:1.1em; line-height:1.3; white-space:nowrap; }

.mj-acf{ position:absolute; left:43.6em; top:47em; z-index:2; width:27em; display:flex; flex-direction:column; gap:1em; padding:1.6em 1.8em 1.8em; border-radius:1.6em; background:var(--white); box-shadow:0 2em 4em rgba(6, 10, 13, 0.18), 0 0 0 1px rgba(6, 10, 13, 0.1); color:var(--ink); }
.mj-acf__label{ font-size:1.1em; line-height:1.3; color:var(--muted); }
.mj-acf__field{ display:flex; flex-direction:column; gap:0.5em; }
.mj-acf__field > span:first-child{ font-size:1.2em; font-weight:500; line-height:1.33; }
.mj-acf__input{ display:flex; align-items:center; height:2.667em; padding:0 0.833em; border-radius:0.667em; background:var(--paper); font-size:1.2em; line-height:1.33; white-space:nowrap; overflow:hidden; }
.mj-acf__input.is-active{ height:2.917em; box-shadow:inset 0 0 0 0.125em var(--signal); }
.mj-acf__caret{ display:none; width:1px; height:1.2em; margin-left:1px; background:var(--ink); animation:dw-blink 1s steps(1) infinite; }
.mj-acf.is-typing .mj-acf__caret{ display:block; }

.mj-anat__pins{ position:absolute; inset:0; z-index:3; pointer-events:none; }
.mj-anat__line{ position:absolute; top:calc(var(--y) * 100cqw / 1500); left:calc(var(--x1) * 100cqw / 1500); width:calc((var(--x2) - var(--x1)) * 100cqw / 1500); height:1.2px; margin-top:-0.6px; background:repeating-linear-gradient(90deg, rgba(233, 80, 6, 0.7) 0 4px, transparent 4px 8px); }
.mj-anat__line--l{ transform-origin:100% 50%; }
.mj-anat__line--r{ transform-origin:0 50%; }
.mj-anat__dot{ position:absolute; left:calc(var(--x) * 100cqw / 1500); top:calc(var(--y) * 100cqw / 1500); width:14px; height:14px; margin:-7px 0 0 -7px; border-radius:50%; background:var(--signal); box-shadow:0 0 0 3px var(--white); }
.mj-anat__dot::before{ content:""; position:absolute; left:50%; top:50%; width:34px; height:34px; margin:-17px 0 0 -17px; border-radius:50%; background:rgba(233, 80, 6, 0.18); z-index:-1; }
.mj-anat__dot.is-pulsing::before{ animation:mj-pulse 2.4s var(--ease-out) infinite; }
@keyframes mj-pulse{ 0%{ transform:scale(0.6); opacity:1; } 70%{ transform:scale(1.5); opacity:0; } 100%{ transform:scale(1.5); opacity:0; } }
.mj-geo{ overflow:hidden; }
.mj-geo__glow{ position:absolute; left:46.9%; top:48.5%; width:62.5%; height:87%; border-radius:50%; --gc:rgba(6, 10, 13, 0.5); --blur:280px; pointer-events:none; z-index:0; }
.mj-geo .h2{ color:var(--white); }
.mj-geo .sec-head__aside{ color:rgba(255, 255, 255, 0.8); }
.mj-geo__grid{ display:grid; grid-template-columns:57.33% minmax(0, 1fr); column-gap:5.33%; align-items:start; }
.mj-geo__grid > *{ min-width:0; }
.mj-geo__compare{ position:relative; display:grid; grid-template-columns:1fr 1fr; gap:20px; padding-bottom:56px; }
.mj-serp, .mj-chat{ display:flex; flex-direction:column; gap:16px; min-height:394px; padding:26px 28px 28px; border-radius:24px; box-shadow:0 30px 60px rgba(0, 0, 0, 0.3); }
.mj-serp{ background:var(--white); color:var(--ink); }
.mj-serp__label, .mj-chat__label{ font-size:12px; line-height:16px; }
.mj-serp__label{ color:var(--muted); }
.mj-serp__search{ display:flex; align-items:center; gap:10px; height:44px; padding:0 16px; border-radius:99px; background:var(--paper); font-size:15px; }
.mj-serp__search svg{ width:16px; height:16px; color:#61707d; flex:none; }
.mj-serp__hit{ display:flex; flex-direction:column; gap:6px; padding:12px 12px 12px 16px; border-radius:12px; background:rgba(233, 80, 6, 0.06); box-shadow:inset 3px 0 0 var(--signal), inset 0 0 0 1px rgba(233, 80, 6, 0.12); }
.mj-serp__url{ font-size:12px; line-height:16px; color:var(--muted); }
.mj-serp__title{ font-size:17px; font-weight:500; line-height:1.3; color:var(--signal-text); }
.mj-serp__desc{ font-size:14px; line-height:18px; color:var(--muted); }
.mj-serp__other{ display:flex; flex-direction:column; gap:8px; padding:6px 0 6px 16px; }
.mj-serp__other i{ width:180px; max-width:60%; height:7px; border-radius:4px; background:rgba(97, 112, 125, 0.3); }
.mj-serp__other i:last-child{ width:240px; max-width:75%; background:rgba(97, 112, 125, 0.2); }
.mj-serp__other b{ width:calc(var(--w) * 1px); max-width:95%; height:9px; border-radius:4px; background:rgba(6, 10, 13, 0.25); }
.mj-chat{ background:var(--ink); border:1px solid rgba(255, 255, 255, 0.1); color:var(--white); }
.mj-chat__label{ color:var(--mist); }
.mj-chat__q{ align-self:flex-start; max-width:302px; padding:12px 16px; border-radius:18px 18px 4px 18px; background:rgba(255, 255, 255, 0.1); font-size:15px; line-height:1.4; }
.mj-chat__a{ font-size:15px; line-height:1.5; color:rgba(255, 255, 255, 0.9); }
.mj-chat__a .w{ opacity:0.12; transition:opacity 260ms var(--ease-out); }
.mj-chat__a .w.is-on{ opacity:1; }
.mj-chat__src{ display:flex; flex-wrap:wrap; gap:8px; }
.mj-chat__chip{ display:inline-flex; align-items:center; gap:6px; height:28px; padding:0 10px; border-radius:99px; background:rgba(255, 255, 255, 0.06); border:1px solid rgba(255, 255, 255, 0.15); font-size:11px; color:rgba(255, 255, 255, 0.6); }
.mj-chat__chip--main{ background:rgba(233, 80, 6, 0.18); border-color:rgba(233, 80, 6, 0.6); color:var(--white); }
.mj-chat__chip--main i{ width:7px; height:7px; border-radius:50%; background:var(--signal); }
.mj-chat__why{ font-size:11px; line-height:14px; color:var(--mist); }
.mj-chat__input{ display:flex; align-items:center; justify-content:space-between; height:48px; margin-top:auto; padding:0 8px 0 16px; border-radius:99px; background:rgba(255, 255, 255, 0.06); border:1px solid rgba(255, 255, 255, 0.12); font-size:14px; color:rgba(187, 205, 218, 0.7); }
.mj-chat__input b{ display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--signal); color:var(--white); }
.mj-chat__input svg{ width:14px; height:14px; }
.mj-geo__tag{ position:absolute; left:50%; bottom:2px; translate:-50% 0; display:inline-flex; align-items:center; height:30px; padding:0 12px; border-radius:99px; background:var(--white); color:var(--ink); font-size:11px; white-space:nowrap; }
.mj-geo__list-title{ font-size:26px; font-weight:600; line-height:34px; letter-spacing:-0.02em; color:var(--white); padding-bottom:20px; }
.mj-geo__list li{ display:grid; grid-template-columns:110px 1fr; gap:24px; padding:22px 0; border-top:1px solid rgba(255, 255, 255, 0.18); }
.mj-geo__list li > .mono{ font-size:12px; line-height:16px; color:var(--mist); padding-top:3px; }
.mj-geo__list strong{ display:block; font-size:20px; font-weight:600; line-height:26px; letter-spacing:-0.01em; color:var(--white); }
.mj-geo__list li > span:last-child > span{ display:block; margin-top:6px; font-size:15px; line-height:1.5; color:rgba(255, 255, 255, 0.78); }
.mj-pf{ position:relative; overflow:hidden; }
.mj-pf > .container{ position:relative; z-index:1; }
.mj-pf__bg{ position:absolute; inset:0; pointer-events:none; z-index:0; }
.mj-pf__glow{ position:absolute; border-radius:50%; filter:blur(var(--blur, 120px)); opacity:0.9; }
.mj-pf__glow--slate{ left:-10%; top:18%; width:46%; height:60%; background:rgba(52, 81, 99, 0.22); --blur:140px; }
.mj-pf__glow--signal{ right:-12%; bottom:-10%; width:44%; height:56%; background:rgba(233, 80, 6, 0.14); --blur:160px; }
.mj-pf__dots{
  position:absolute; inset:0;
  background-image:radial-gradient(rgba(52, 81, 99, 0.28) 1.2px, transparent 1.3px);
  background-size:26px 26px; background-position:13px 13px;
  -webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 55%, #000 30%, transparent 100%);
  mask-image:radial-gradient(ellipse 70% 70% at 50% 55%, #000 30%, transparent 100%);
}
.mj-pf__ring{ position:absolute; border:1px solid rgba(52, 81, 99, 0.14); border-radius:50%; }
.mj-pf__ring--a{ left:54%; top:6%; width:52vw; height:52vw; max-width:980px; max-height:980px; }
.mj-pf__ring--b{ left:-18%; bottom:-30%; width:44vw; height:44vw; max-width:820px; max-height:820px; border-color:rgba(233, 80, 6, 0.12); }
.mj-pf__grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:40px 24px; }
.mj-pf__cell{ will-change:transform; }
.mj-pf__cell[data-mj-pf-cell="1"]{ transform:translateY(var(--mj-shift, 0px)); }
.mj-pf__more{ position:relative; display:flex; align-items:center; gap:24px; margin-top:56px; padding:22px 28px 22px 22px; border-radius:24px; background:var(--white); border:1px solid rgba(52, 81, 99, 0.14); color:var(--ink); box-shadow:0 20px 50px rgba(6, 10, 13, 0.06); transition:transform var(--dur-slow) var(--ease-out), box-shadow var(--dur-slow) var(--ease-out), border-color var(--dur-slow) var(--ease-out); }
.mj-pf__more:hover{ transform:translateY(-4px); box-shadow:0 30px 60px rgba(6, 10, 13, 0.1); border-color:rgba(233, 80, 6, 0.4); }
.mj-pf__stack{ display:flex; flex:none; }
.mj-pf__thumb{ position:relative; display:grid; place-items:center; width:56px; height:56px; margin-left:-14px; border-radius:50%; overflow:hidden; border:3px solid var(--white); background:linear-gradient(135deg, var(--g1, #345163), #060a0d); box-shadow:0 8px 20px rgba(6, 10, 13, 0.18); transition:transform 450ms cubic-bezier(0.34, 1.56, 0.64, 1); }
.mj-pf__thumb:first-child{ margin-left:0; }
.mj-pf__thumb img{ width:100%; height:100%; object-fit:cover; object-position:top; }
.mj-pf__thumb--n{ background:var(--signal); color:var(--white); font-family:var(--mono); font-size:14px; font-weight:600; }
.mj-pf__more:hover .mj-pf__thumb{ transform:translateX(calc(var(--i, 0) * 6px)) rotate(-4deg); }
.mj-pf__more:hover .mj-pf__thumb:nth-child(1){ --i:0; } .mj-pf__more:hover .mj-pf__thumb:nth-child(2){ --i:1; } .mj-pf__more:hover .mj-pf__thumb:nth-child(3){ --i:2; } .mj-pf__more:hover .mj-pf__thumb:nth-child(4){ --i:3; } .mj-pf__more:hover .mj-pf__thumb:nth-child(5){ --i:4; } .mj-pf__more:hover .mj-pf__thumb:nth-child(6){ --i:5; }
.mj-pf__more-text{ display:grid; gap:4px; }
.mj-pf__more-text strong{ font-size:18px; font-weight:600; letter-spacing:-0.01em; }
.mj-pf__more-text span{ font-size:15px; line-height:1.4; color:var(--muted); }
.mj-pf__more-arrow{ display:grid; place-items:center; flex:none; width:48px; height:48px; margin-left:auto; border-radius:50%; background:var(--ink); color:var(--white); transition:background-color var(--dur) var(--ease-out), transform var(--dur) var(--ease-out); }
.mj-pf__more-arrow svg{ width:20px; height:20px; }
.mj-pf__more:hover .mj-pf__more-arrow{ background:var(--signal); transform:rotate(45deg); }
.mj-pf__note{ margin-top:48px; font-size:15px; line-height:18px; color:var(--muted); }
@media (max-width: 1440px){
  .mj-hero__strip span{ font-size:17px; }
  .mj-gantt__foot{ flex-wrap:wrap; }
  .mj-gantt__note{ text-align:left; }
}
@media (max-width: 1280px){
  .mj-hero__text{ max-width:55%; }
  .mj-type{ padding:28px; }
  .mj-type__head{ flex-wrap:wrap; }
  .mj-geo__grid{ grid-template-columns:minmax(0, 1fr); row-gap:56px; }
  .mj-anat .mj-note__text{ font-size:14px; }
}
@media (max-width: 1024px){
  .mj-types .sec-head__aside, .mj-proc .sec-head__aside, .mj-anat .sec-head__aside, .mj-geo .sec-head__aside{ margin-top:4px; max-width:none; }
  .mj-pf .sec-head__side{ margin-top:4px; }
  .mj-types .sec-head__main, .mj-proc .sec-head__main, .mj-anat .sec-head__main, .mj-geo .sec-head__main, .mj-pf .sec-head__main{ gap:20px; }
  .mj-hero{ padding:118px 0 40px; }
  .mj-hero__grid, .mj-hero__marks{ display:none; }
  .mj-hero__main{ min-height:0; padding-bottom:40px; }
  .mj-hero__text{ max-width:none; }
  .mj-crumbs ol{ font-size:15px; }
  .mj-hero__h1{ margin:12px 0 0 -0.05em; font-size:clamp(40px, 11.3vw, 50px); }
  .mj-hero__intro{ margin-top:24px; font-size:18px; max-width:640px; }
  .mj-hero__ctas{ flex-direction:column; align-items:flex-start; margin-top:24px; }
  .mj-vis{ position:relative; left:auto; top:auto; width:100%; aspect-ratio:auto; margin-top:48px; display:flex; flex-direction:column; align-items:flex-start; gap:24px; font-size:10px; }
  .mj-canvas{ position:relative; left:auto; top:auto; width:100%; height:auto; aspect-ratio:540 / 600; font-size:calc(100cqw / 54); border-radius:1.8em; }
  .mj-aicard, .mj-speed{ position:relative; left:auto; top:auto; }
  .mj-aicard{ width:min(300px, 100%); padding:20px 22px; }
  .mj-aicard__label, .mj-aicard__schema{ font-size:13px; }
  .mj-aicard__src{ font-size:13px; }
  .mj-hero__strip{ grid-template-columns:1fr 1fr; gap:24px 16px; padding-top:18px; }
  .mj-hero__strip li{ padding-right:0; }
  .mj-hero__strip span{ font-size:17px; }
  .mj-types__grid{ grid-template-columns:1fr; gap:24px; }
  .mj-type{ padding:32px; }
  .mj-type__head{ flex-direction:column; align-items:flex-start; gap:12px; }
  .mj-type__name{ font-size:24px; line-height:31px; }
  .mj-type__price strong{ font-size:36px; line-height:42px; }
  .mj-type__price--text strong{ font-size:28px; line-height:1; }
  .mj-types__ribbon{ flex-direction:column; align-items:flex-start; gap:18px; padding:25px; }
  .mj-types__ribbon .ribbon__link{ width:auto; padding-left:0; }
  .mj-gantt-wrap{ margin:0 calc(-1 * var(--gutter)); padding:0 var(--gutter); overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  .mj-gantt-wrap::-webkit-scrollbar{ display:none; }
  .mj-gantt{ width:1385px; padding:32px 37px 44px; border-radius:26px; }
  .mj-gantt__row{ height:92px; }
  .mj-gantt__phase{ padding-top:22px; }
  .mj-gantt__phase strong{ font-size:18px; line-height:24px; }
  .mj-gantt__phase span{ font-size:12px; }
  .mj-gantt__foot{ flex-wrap:nowrap; }
  .mj-gantt__note{ text-align:right; }
  .mj-anat{ padding-bottom:56px; }
  .mj-anat__stage{ aspect-ratio:auto; display:flex; flex-direction:column; gap:24px; }
  .mj-note{ position:static; width:auto; max-width:330px; }
  .mj-note__tag{ font-size:13px; line-height:17px; }
  .mj-note__title{ font-size:20px; line-height:26px; }
  .mj-anat .mj-note__text{ font-size:15px; }
  .mj-anat__mock{ position:static; width:100%; }
  .mj-browser{ border-radius:2.4em; }
  .mj-acf{ position:relative; left:auto; top:auto; margin-top:24px; width:270px; font-size:10px; }
  .mj-anat__pins{ display:none; }
  .mj-geo__grid{ row-gap:24px; }
  .mj-geo__compare{ display:flex; flex-direction:column; gap:0; padding-bottom:0; }
  .mj-serp, .mj-chat{ min-height:0; }
  .mj-serp{ order:1; }
  .mj-geo__tag{ order:2; position:static; translate:none; align-self:flex-start; height:33px; margin:24px 0 12px; font-size:13px; }
  .mj-chat{ order:3; }
  .mj-serp__label, .mj-chat__label, .mj-serp__url{ font-size:13px; }
  .mj-chat__chip, .mj-chat__why{ font-size:13px; }
  .mj-chat__chip{ height:31px; }
  .mj-chat__why{ line-height:17px; }
  .mj-geo__list-title{ font-size:24px; line-height:31px; }
  .mj-geo__list li{ grid-template-columns:1fr; gap:16px; }
  .mj-geo__list li > .mono{ font-size:13px; padding-top:0; }
  .mj-pf__grid{ grid-template-columns:1fr; gap:24px; }
  .mj-pf__cell[data-mj-pf-cell="1"]{ transform:none; }
      .mj-pf__more{ flex-wrap:wrap; gap:16px; margin-top:32px; padding:18px; border-radius:20px; }
  .mj-pf__thumb{ width:44px; height:44px; margin-left:-12px; }
  .mj-pf__more-text strong{ font-size:16px; }
  .mj-pf__more-text span{ font-size:14px; }
  .mj-pf__more-arrow{ position:absolute; right:18px; top:18px; width:40px; height:40px; }
  .mj-pf__ring{ display:none; }
  .mj-pf__note{ margin-top:32px; font-size:15px; line-height:1.4; }
}
@media (max-width: 600px){
  .mj-types .h2, .mj-proc .h2, .mj-anat .h2, .mj-geo .h2, .mj-pf .h2{ font-size:36px; }
}
html.js:not(.reduced) .mj-hero__mask > span{ transform:translateY(130%); }
html.js:not(.reduced) [data-mj-in]{ opacity:0; }
