.elementor.elementor-8 .ng-mth{
  display:flex;flex-direction:column;
  --c:var(--elec);
  --mth-c-dim:rgba(74,141,230,.13);
  --mth-c-line:rgba(74,141,230,.32);
  --mth-pad-block:120px;
  --mth-gutter:48px;
  background:var(--deep);
  padding-block:var(--mth-pad-block);
  padding-inline:0;
}
.elementor.elementor-8 .ng-mth-wrap{
  max-width:1200px;margin-inline:auto;padding-inline:var(--mth-gutter);
  display:flex;flex-direction:column;width:100%;box-sizing:border-box;
}

.elementor.elementor-8 .ng-mth-eyebrow{
  display:inline-block;align-self:flex-start;margin:0 0 24px;
  font-family:var(--font-mono);font-size:15px;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;
  color:var(--c);background:var(--mth-c-dim);
  border:1px solid var(--mth-c-line);border-radius:8px;padding:9px 16px;
}
.elementor.elementor-8 .ng-mth-h2 .hl{color:var(--c);}
.elementor.elementor-8 .ng-mth-h2{
  font-family:var(--font-heading);font-weight:700;
  font-size:clamp(32px,3.6vw,48px);line-height:1.13;letter-spacing:-.015em;
  color:var(--text);margin:0 0 24px;max-width:21ch;
}
.elementor.elementor-8 .ng-mth-lede{margin:0;max-width:74ch;font-size:19px;line-height:1.65;color:var(--text);}
.elementor.elementor-8 .ng-mth-lede .ng-mth-mark{font-weight:600;}

/* -- pathway -- */
.elementor.elementor-8 .ng-mth-path{
  margin-top:64px;display:flex;align-items:stretch;gap:0;
}
.elementor.elementor-8 .ng-mth-node{
  flex:1 1 0;min-width:0;position:relative;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:var(--midnight);border:1.8px solid var(--nc,var(--secondary));
  border-radius:10px;padding:18px 8px 16px;text-align:center;
  transition:transform .22s ease, box-shadow .22s ease;
}
.elementor.elementor-8 .ng-mth-node:hover{transform:translateY(-3px);box-shadow:0 10px 30px color-mix(in srgb,var(--nc,var(--secondary)) 18%,transparent);}
.elementor.elementor-8 .ng-mth-node--p1{--nc:var(--p1);}
.elementor.elementor-8 .ng-mth-node--p2{--nc:var(--p2);}
.elementor.elementor-8 .ng-mth-node--p3{--nc:var(--p3);}
.elementor.elementor-8 .ng-mth-node--p4{--nc:var(--p4);}
.elementor.elementor-8 .ng-mth-node--p5{--nc:var(--p5);}
.elementor.elementor-8 .ng-mth-node--state{border-style:dashed;border-color:var(--secondary);flex:1.45 1 0;}
.elementor.elementor-8 .ng-mth-state-lbl{font-size:19px;color:var(--secondary);}
.elementor.elementor-8 .ng-mth-node-n{
  font-family:var(--font-mono);font-size:14px;font-weight:700;letter-spacing:.16em;
  color:var(--nc);margin-bottom:4px;
}
.elementor.elementor-8 .ng-mth-node-name{font-size:19px;color:var(--text);}
.elementor.elementor-8 .ng-mth-mkwrap{
  position:absolute;top:-34px;left:50%;transform:translateX(-50%);
  color:var(--text);line-height:0;
}
.elementor.elementor-8 .ng-mth-mkwrap::after{
  content:"";position:absolute;left:50%;top:100%;width:1.5px;height:14px;
  background:var(--text);opacity:.55;transform:translateX(-50%);
}
.elementor.elementor-8 .ng-mth-mk{width:22px;height:22px;display:block;}
.elementor.elementor-8 .ng-mth-arrow{
  flex:0 0 26px;align-self:center;height:12px;position:relative;
}
.elementor.elementor-8 .ng-mth-arrow::before{
  content:"";position:absolute;left:5px;right:9px;top:5px;height:1.8px;background:var(--secondary);
}
.elementor.elementor-8 .ng-mth-arrow::after{
  content:"";position:absolute;right:6px;top:1px;width:9px;height:9px;
  border-top:1.8px solid var(--secondary);border-right:1.8px solid var(--secondary);
  transform:rotate(45deg);
}

/* Force Multiplier terminal, C14 border */
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg;}
@keyframes ng-mth-spin{to{--ang:360deg;}}
.elementor.elementor-8 .ng-mth-fm{
  flex:1.9 1 0;min-width:0;border-radius:14px;padding:2px;
  background:linear-gradient(var(--ang),var(--gold),var(--teal),var(--elec),var(--purp),var(--sage),var(--gold));
  animation:ng-mth-spin 2s linear infinite;
  transition:transform .25s ease, filter .25s ease;
}
.elementor.elementor-8 .ng-mth-fm:hover{transform:translateY(-4px);filter:drop-shadow(0 14px 34px rgba(255,255,255,.10));animation-duration:1s;}
.elementor.elementor-8 .ng-mth-fm-inner{
  background:var(--ink);border-radius:12px;height:100%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:16px 12px;text-align:center;
}
.elementor.elementor-8 .ng-mth-fm-lbl{
  font-family:var(--font-mono);font-size:13px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gold);margin-bottom:5px;
}
.elementor.elementor-8 .ng-mth-fm-name{font-family:var(--font-heading);font-weight:700;font-size:20px;color:var(--text);line-height:1.2;}

.elementor.elementor-8 .ng-mth-legend{
  margin-top:22px;display:flex;flex-wrap:wrap;gap:28px;
  font-size:16px;color:var(--secondary);
}
.elementor.elementor-8 .ng-mth-legend span{display:inline-flex;align-items:center;gap:10px;}
.elementor.elementor-8 .ng-mth-legend .ng-mth-mk{color:var(--text);width:20px;height:20px;}

/* -- phase rows -- */
.elementor.elementor-8 .ng-mth-rows{margin-top:56px;border-top:1px solid var(--border);}
.elementor.elementor-8 .ng-mth-row{
  display:grid;grid-template-columns:280px 1fr;gap:32px;
  padding:26px 0 26px 22px;border-bottom:1px solid var(--border);
  border-left:3px solid var(--rc);
}
.elementor.elementor-8 .ng-mth-row--p1{--rc:var(--p1);}
.elementor.elementor-8 .ng-mth-row--p2{--rc:var(--p2);}
.elementor.elementor-8 .ng-mth-row--p3{--rc:var(--p3);}
.elementor.elementor-8 .ng-mth-row--p4{--rc:var(--p4);}
.elementor.elementor-8 .ng-mth-row--p5{--rc:var(--p5);}
.elementor.elementor-8 .ng-mth-id{display:flex;align-items:baseline;gap:14px;}
.elementor.elementor-8 .ng-mth-n{font-family:var(--font-mono);font-size:15px;font-weight:700;letter-spacing:.14em;color:var(--rc);}
.elementor.elementor-8 .ng-mth-name{font-family:var(--font-heading);font-weight:700;font-size:22px;color:var(--text);}
.elementor.elementor-8 .ng-mth-purpose{margin:0 0 10px;font-size:17.5px;line-height:1.55;color:var(--text);}
.elementor.elementor-8 .ng-mth-covers{margin:0 0 10px;font-size:17.5px;line-height:1.55;color:var(--secondary);}
.elementor.elementor-8 .ng-mth-principle{margin:0;font-family:var(--font-mono);font-size:15px;line-height:1.5;color:var(--rc);}

.elementor.elementor-8 .ng-mth-close{
  margin:48px 0 0;max-width:74ch;padding-left:22px;
  border-left:3px solid var(--c);font-size:18px;line-height:1.62;color:var(--text);
}
.elementor.elementor-8 .ng-mth-close strong{font-weight:600;}

@media (prefers-reduced-motion:reduce){
  .elementor.elementor-8 .ng-mth-fm{animation:none;}
  .elementor.elementor-8 .ng-mth-node,.elementor.elementor-8 .ng-mth-fm{transition:none;}
}

@media (max-width:1100px){
  .elementor.elementor-8 .ng-mth-path{flex-direction:column;align-items:stretch;gap:0;padding-left:44px;}
  .elementor.elementor-8 .ng-mth-node,.elementor.elementor-8 .ng-mth-fm,.elementor.elementor-8 .ng-mth-node--state{flex:none;}
  .elementor.elementor-8 .ng-mth-node{padding:20px 16px;}
  .elementor.elementor-8 .ng-mth-mkwrap{top:50%;left:auto;right:calc(100% + 16px);transform:translateY(-50%);}
  .elementor.elementor-8 .ng-mth-mkwrap::after{left:100%;top:50%;width:14px;height:1.5px;transform:translateY(-50%);}
  .elementor.elementor-8 .ng-mth-arrow{flex:none;align-self:center;width:12px;height:26px;}
  .elementor.elementor-8 .ng-mth-arrow::before{left:5px;right:auto;top:5px;width:1.8px;height:16px;}
  .elementor.elementor-8 .ng-mth-arrow::after{right:auto;left:1px;top:auto;bottom:6px;transform:rotate(135deg);}
}
@media (max-width:1023px){
  .elementor.elementor-8 .ng-mth{--mth-pad-block:96px;--mth-gutter:32px;}
}
@media (max-width:767px){
  .elementor.elementor-8 .ng-mth{--mth-pad-block:80px;--mth-gutter:20px;}
  .elementor.elementor-8 .ng-mth-lede{font-size:17.5px;}
  .elementor.elementor-8 .ng-mth-eyebrow,.elementor.elementor-8 .ng-mth-n,.elementor.elementor-8 .ng-mth-principle{font-size:14px;}
  .elementor.elementor-8 .ng-mth-row{grid-template-columns:1fr;gap:12px;padding:22px 0 22px 18px;}
  .elementor.elementor-8 .ng-mth-name{font-size:20px;}
  .elementor.elementor-8 .ng-mth-purpose,.elementor.elementor-8 .ng-mth-covers{font-size:17px;}
  .elementor.elementor-8 .ng-mth-mkwrap{right:calc(100% + 12px);}
  .elementor.elementor-8 .ng-mth-path{padding-left:38px;}
}
