/* Packages gate: frosted glass vault */
.gate__veil { background: radial-gradient(60% 60% at 50% 45%, rgba(226, 73, 43, .14), transparent 70%), radial-gradient(circle, rgba(14, 15, 17, .12) 1px, transparent 1.5px) 0 0 / 16px 16px, rgba(227, 231, 237, .55) !important; }
.gate__card { width: min(620px, 100%) !important; border-radius: 28px; color: var(--graphite) !important;
  background: linear-gradient(160deg, rgba(255, 255, 255, .82), rgba(255, 255, 255, .55)) !important; border: 1px solid rgba(255, 255, 255, .9);
  -webkit-backdrop-filter: blur(24px) saturate(1.3); backdrop-filter: blur(24px) saturate(1.3);
  box-shadow: 0 60px 120px -40px rgba(14, 15, 17, .45), inset 0 1px 0 #fff !important; }
.gate__card::after { display: none; }
.gate__card .label { display: none; }
.gate__lock { width: 44px !important; height: 50px !important; margin-bottom: 4px !important; stroke: var(--graphite) !important; }
.gate__lock circle, .gate__lock path:last-child { stroke: #fff !important; }
.gate__h { color: var(--graphite); }
.gate__h .mute { color: var(--mist); }
.gate__p { color: var(--slate) !important; }
.gate__p b { color: var(--graphite) !important; }
.gate__teaser { display: flex; flex-direction: column; gap: 6px; margin-top: 22px; }
.gt__row { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto 16px; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; background: rgba(14, 15, 17, .04); border: 1px solid rgba(14, 15, 17, .06); }
.gt__row.is-hot { background: #0E0F11; color: #E3E7ED; border-color: #0E0F11; }
.gt__n { font-family: var(--fd); font-weight: 600; font-size: .8rem; color: var(--signal); }
.gt__t { display: flex; flex-direction: column; } .gt__t b { font-weight: 600; font-size: .98rem; } .gt__t span { font-size: .78rem; color: var(--slate); }
.gt__row.is-hot .gt__t span { color: #9CA2AD; }
.gt__p { font-family: "JetBrains Mono", ui-monospace, Menlo, monospace; font-size: .95rem; font-weight: 600; letter-spacing: .02em; filter: blur(.6px); min-width: 7.5ch; text-align: right; }
.gt__lk { width: 13px; height: 15px; color: var(--signal); }
.gate__form input { border-radius: 999px !important; background: rgba(255, 255, 255, .9) !important; color: var(--graphite) !important; border: 1px solid rgba(14, 15, 17, .12) !important; padding: 0 20px !important; }
.gate__form .btn { border-radius: 999px; }
.gate__mail { border-radius: 16px; background: #fff !important; }
.gate__env { border-color: var(--graphite) !important; } .gate__env::before { border-color: var(--graphite) !important; background: #fff !important; }
.gate__back { color: var(--slate) !important; }

/* Process: Gantt in the sticky column */
.gantt { margin-top: 8px; padding: 20px; border-radius: 20px; background: #fff; box-shadow: 0 30px 60px -36px rgba(14, 15, 17, .35); position: relative; font-size: .8rem; }
.gantt__hd, .gantt__row { display: grid; grid-template-columns: 136px minmax(0, 1fr); align-items: center; gap: 12px; }
.gantt__hd { grid-template-columns: 136px repeat(7, minmax(0, 1fr)); gap: 0 12px; color: var(--mist); font-size: .7rem; padding-bottom: 10px; border-bottom: 1px solid var(--line); margin-bottom: 6px; }
.gantt__hd span { grid-column: 1; } .gantt__hd i { font-style: normal; text-align: center; }
.gantt__hd { column-gap: 0; } .gantt__hd i { padding: 0; }
.gantt__row { padding: 9px 0; color: var(--slate); transition: color .4s; }
.gantt__row span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gantt__track { position: relative; height: 14px; background: repeating-linear-gradient(90deg, rgba(14, 15, 17, .06) 0 1px, transparent 1px calc(100% / 7)); border-radius: 4px; }
.gantt__track b { position: absolute; top: 2px; bottom: 2px; left: calc(var(--a) / 7 * 100% + 2px); width: calc((var(--b) - var(--a)) / 7 * 100% - 4px); border-radius: 4px; background: rgba(14, 15, 17, .14); transform-origin: left; transition: background .4s, transform .8s var(--ease); }
.gantt__track b.is-loop { background: repeating-linear-gradient(90deg, rgba(14, 15, 17, .2) 0 6px, transparent 6px 10px); }
.gantt__row.is-done { color: var(--graphite); } .gantt__row.is-done b { background: var(--graphite); }
.gantt__row.is-cur { color: var(--graphite); font-weight: 600; } .gantt__row.is-cur b { background: var(--signal); box-shadow: 0 0 0 4px rgba(226, 73, 43, .18); }
.gantt__row.is-cur b.is-loop { background: repeating-linear-gradient(90deg, var(--signal) 0 6px, transparent 6px 10px); }
.gantt__now { position: absolute; top: 46px; bottom: 54px; left: calc(20px + 148px); right: 20px; pointer-events: none; }
.gantt__now i { position: absolute; top: 0; bottom: 0; left: calc(var(--x, 0) * 100%); width: 1px; background: var(--signal); transition: left .8s var(--ease); }
.gantt__now i::before { content: "now"; position: absolute; top: -18px; left: -12px; font-size: .62rem; text-transform: uppercase; letter-spacing: .08em; color: var(--signal); }
.gantt__ft { display: flex; justify-content: space-between; margin-top: 10px; padding-top: 12px; border-top: 1px solid var(--line); color: var(--slate); }
.gantt__ft b { color: var(--signal); font-weight: 600; }
.numbers div { padding: 28px 24px 8px !important; border-right: 1px solid var(--line); }
.numbers div:last-child { border-right: 0; }
@media (max-width: 1000px) { .gantt { display: none; } }
