/* The browser viewport is the landing page's only vertical scroll owner.
   This lets a new opposite-direction gesture cancel existing native momentum. */
body.landing {
  display:block;
  width:100%;
  height:auto;
  min-height:100vh;
  min-height:100dvh;
  overflow-x:clip;
  overflow-y:visible;
  -webkit-overflow-scrolling:auto;
  touch-action:pan-y;
  background:#080b0f;
}

#landingPage {
  --pf-black:#080b0f;
  --pf-panel:#10161d;
  --pf-panel-2:#151e28;
  --pf-paper:#f2f3f0;
  --pf-white:#ffffff;
  --pf-ink:#11161c;
  --pf-muted:#5b6670;
  --pf-line:#aeb5ba;
  --pf-blue:#1557d6;
  --pf-blue-deep:#082b66;
  --pf-cyan:#47d7e8;
  --pf-green:#40d27a;
  --pf-yellow:#f3c82d;
  --pf-red:#d84a3f;
  display:none;
  min-height:100vh;
  min-height:100dvh;
  position:relative;
  overflow-x:clip;
  color:#f7f9fb;
  background:var(--pf-black);
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:0;
}

body.landing #landingPage { display:block; }
body.landing #landingPage main { display:block !important; min-height:0; overflow:visible; }
body.booting #landingPage { display:none !important; }

#landingPage *,
#landingPage *::before,
#landingPage *::after {
  box-sizing:border-box;
  letter-spacing:0;
}

#landingPage a { color:inherit; text-decoration:none; }
#landingPage button,
#landingPage a { font:inherit; }
#landingPage button:focus-visible,
#landingPage a:focus-visible,
#landingPage summary:focus-visible {
  outline:2px solid var(--pf-cyan);
  outline-offset:3px;
}

.pfWidth {
  width:min(1320px,calc(100% - 96px));
  margin:0 auto;
}

/* Navigation */
.pfNav {
  height:66px;
  position:absolute;
  z-index:40;
  inset:0 0 auto;
  display:flex;
  align-items:stretch;
  border-bottom:1px solid rgba(255,255,255,.16);
  background:rgba(8,11,15,.94);
  backdrop-filter:blur(12px);
}

.pfBrand {
  min-width:292px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:0 28px;
  border-right:1px solid rgba(255,255,255,.15);
}

.pfBrandMark {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.42);
  border-radius:4px;
  color:#fff;
  font-size:13px;
  font-weight:900;
}

.pfBrandName {
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}

.pfBrandType {
  margin-left:4px;
  padding-left:16px;
  border-left:1px solid rgba(255,255,255,.22);
  color:#87929d;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
}

.pfNavLinks {
  display:flex;
  align-items:stretch;
}

.pfNavLinks a {
  min-width:130px;
  display:grid;
  place-items:center;
  padding:0 16px;
  border-right:1px solid rgba(255,255,255,.1);
  color:#b9c1c9;
  font-size:11px;
  font-weight:750;
}

.pfNavLinks a:hover {
  color:#fff;
  background:rgba(255,255,255,.05);
}

.pfNavActions {
  margin-left:auto;
  display:flex;
}

.pfNavActions button {
  min-width:106px;
  border:0;
  border-left:1px solid rgba(255,255,255,.15);
  color:#fff;
  background:transparent;
  font-size:11px;
  font-weight:850;
  cursor:pointer;
}

.pfNavActions .pfNavPrimary {
  min-width:142px;
  color:#101317;
  background:var(--pf-yellow);
}

.pfNavActions .pfNavPrimary:hover { background:#ffda45; }

/* Hero */
.pfHero {
  height:calc(100dvh - 24px);
  min-height:700px;
  max-height:840px;
  overflow:hidden;
  color:#fff;
  background:var(--pf-black);
}

.pfHeroGrid {
  height:100%;
  display:grid;
  grid-template-columns:42% 58%;
  padding-top:66px;
}

.pfHeroCopy {
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:40px clamp(34px,4.6vw,78px);
  border-right:1px solid rgba(255,255,255,.16);
}

.pfEyebrow {
  display:flex;
  align-items:center;
  gap:12px;
  margin:0;
  color:#9da8b3;
  font-size:12px;
  font-weight:850;
  text-transform:uppercase;
}

.pfEyebrow::before {
  content:"";
  width:30px;
  height:3px;
  background:var(--pf-green);
}

.pfEyebrow span { color:var(--pf-green); }

.pfHero h1 {
  max-width:690px;
  margin:24px 0 0;
  font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;
  font-size:clamp(46px,4.2vw,64px);
  line-height:.98;
  font-weight:900;
}

.pfHeroLead {
  max-width:650px;
  margin:24px 0 0;
  color:#c5cdd4;
  font-size:17px;
  line-height:1.58;
}

.pfHeroActions {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
}

.pfButton {
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border:1px solid rgba(255,255,255,.54);
  border-radius:3px;
  color:#fff;
  background:transparent;
  font-size:11px !important;
  font-weight:900;
  text-transform:uppercase;
  cursor:pointer;
}

.pfButton.primary {
  border-color:var(--pf-green);
  color:#071109;
  background:var(--pf-green);
}

.pfButton.primary:hover { background:#58e28b; }
.pfButton.secondary:hover,
.pfButton.outline:hover { background:rgba(255,255,255,.07); }

.pfHeroProof {
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:30px 0 0;
  border-top:1px solid rgba(255,255,255,.24);
  border-bottom:1px solid rgba(255,255,255,.24);
}

.pfHeroProof>div {
  min-height:78px;
  padding:14px 14px 12px 0;
}

.pfHeroProof>div+div {
  padding-left:14px;
  border-left:1px solid rgba(255,255,255,.17);
}

.pfHeroProof dt {
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
}

.pfHeroProof dd {
  margin:6px 0 0;
  color:#8e99a4;
  font-size:12px;
  line-height:1.35;
}

/* Deliberately simple system constellation. */
.pfHeroVisual {
  min-width:0;
  display:grid;
  grid-template-rows:62px minmax(0,1fr) 54px;
  position:relative;
  overflow:hidden;
  color:#fff;
  background:#0b234f;
}

.pfConstToolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:0 clamp(20px,3vw,42px);
  border-bottom:1px solid rgba(255,255,255,.18);
  background:#0a1e43;
}

.pfConstToolbar>span {
  color:#8fa9d1;
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
}

.pfConstTabs {
  min-width:0;
  display:flex;
  align-self:stretch;
  overflow-x:auto;
  scrollbar-width:none;
}

.pfConstTabs::-webkit-scrollbar { display:none; }

.pfConstTabs button {
  min-width:96px;
  padding:0 13px;
  border:0;
  border-left:1px solid rgba(255,255,255,.12);
  color:#9fb2d0;
  background:transparent;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
}

.pfConstTabs button:last-child { border-right:1px solid rgba(255,255,255,.12); }

.pfConstTabs button[aria-selected="true"] {
  color:#101317;
  background:var(--pf-yellow);
}

.pfConstellation {
  width:100%;
  height:100%;
  position:relative;
  overflow:hidden;
  opacity:1;
  transition:opacity .18s ease,transform .18s ease;
}

.pfConstellation.is-switching {
  opacity:.36;
  transform:scale(.992);
}

.pfConstAxis {
  position:absolute;
  z-index:0;
  background:rgba(115,166,239,.62);
}

.pfConstAxis.horizontal {
  height:1px;
  left:120px;
  right:120px;
  top:50%;
}

.pfConstAxis.vertical {
  width:1px;
  top:72px;
  bottom:72px;
  left:50%;
}

.pfSystemNode,
.pfControlCenter {
  position:absolute;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:1px solid rgba(255,255,255,.46);
  border-radius:6px;
  box-shadow:0 16px 32px rgba(0,0,0,.22);
}

.pfSystemNode {
  width:176px;
  min-height:80px;
  padding:14px 16px;
  color:#fff;
  background:#123b79;
}

.pfSystemNode>i {
  width:7px;
  height:7px;
  position:absolute;
  right:12px;
  top:12px;
  border-radius:50%;
  background:var(--pf-green);
  box-shadow:0 0 0 4px rgba(64,210,122,.12);
}

.pfSystemNode strong {
  padding-right:12px;
  font-size:14px;
  line-height:1.15;
}

.pfSystemNode small {
  margin-top:7px;
  color:#bdd0ed;
  font-size:11px;
  line-height:1.3;
}

.pfSystemNode.top {
  left:50%;
  top:24px;
  transform:translateX(-50%);
}

.pfSystemNode.right {
  right:28px;
  top:50%;
  transform:translateY(-50%);
}

.pfSystemNode.bottom {
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
}

.pfSystemNode.left {
  left:28px;
  top:50%;
  transform:translateY(-50%);
}

.pfControlCenter {
  width:320px;
  min-height:136px;
  left:50%;
  top:50%;
  padding:20px 24px;
  transform:translate(-50%,-50%);
  border:2px solid var(--pf-yellow);
  color:#11161c;
  background:#fff;
}

.pfControlCenter>span {
  color:#4d5c6b;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
}

.pfControlCenter>strong {
  margin-top:9px;
  font-size:23px;
  line-height:1.05;
}

.pfControlCenter>small {
  margin-top:8px;
  color:#55616c;
  font-size:12px;
  line-height:1.35;
}

.pfControlCenter>b {
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:13px;
  color:#1d6f3d;
  font-size:10px;
  text-transform:uppercase;
}

.pfControlCenter>b i {
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--pf-green);
}

.pfConstPulse {
  width:8px;
  height:8px;
  position:absolute;
  z-index:1;
  border:2px solid #fff;
  border-radius:50%;
  background:var(--pf-cyan);
  animation:pfPulse 2.8s linear infinite;
}

.pfConstPulse.pulse-top {
  left:calc(50% - 4px);
  top:25%;
  animation-delay:-.4s;
}

.pfConstPulse.pulse-right {
  right:25%;
  top:calc(50% - 4px);
  animation-delay:-1.1s;
}

.pfConstPulse.pulse-bottom {
  left:calc(50% - 4px);
  bottom:25%;
  animation-delay:-1.8s;
}

.pfConstPulse.pulse-left {
  left:25%;
  top:calc(50% - 4px);
  animation-delay:-2.5s;
}

@keyframes pfPulse {
  0%,100% { opacity:.2; transform:scale(.7); }
  45%,55% { opacity:1; transform:scale(1.15); }
}

.pfConstFooter {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:0 clamp(20px,3vw,42px);
  border-top:1px solid rgba(255,255,255,.18);
  color:#91a7c8;
  background:#0a1e43;
  font-size:11px;
}

.pfConstFooter strong {
  color:#fff;
  font-size:12px;
}

/* Node product view */
.pfNodeLibrary {
  padding:96px 0 84px;
  color:var(--pf-ink);
  background:var(--pf-paper);
}

.pfSectionHead {
  max-width:880px;
}

.pfSectionHead>p:first-child,
.pfHowIntro>p,
.pfProofCopy>p:first-child,
.pfPartnerIntro>p {
  display:flex;
  align-items:center;
  gap:12px;
  margin:0;
  color:#5f6b75;
  font-size:12px;
  font-weight:850;
  text-transform:uppercase;
}

.pfSectionHead>p:first-child span,
.pfHowIntro>p span,
.pfProofCopy>p:first-child span,
.pfPartnerIntro>p span {
  color:var(--pf-blue);
  font-size:24px;
  font-weight:900;
}

.pfSectionHead h2 {
  margin:24px 0 0;
  font-size:48px;
  line-height:1.03;
}

.pfSectionHead>p:last-child {
  max-width:820px;
  margin:20px 0 0;
  color:#515c66;
  font-size:17px;
  line-height:1.6;
}

.pfNodeShowcase {
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:34px;
  align-items:start;
  margin-top:48px;
}

.pfNodeSelector {
  min-width:0;
  border-top:1px solid #a8afb4;
}

.pfNodeTabs {
  display:flex;
  flex-direction:column;
}

.pfNodeTabs button {
  min-height:68px;
  display:grid;
  grid-template-columns:42px 1fr;
  align-items:center;
  gap:8px;
  padding:0 15px;
  border:0;
  border-bottom:1px solid #bfc4c7;
  color:#3b454d;
  background:transparent;
  text-align:left;
  cursor:pointer;
}

.pfNodeTabs button span {
  color:#78838c;
  font-size:11px;
  font-weight:900;
}

.pfNodeTabs button strong {
  font-size:15px;
}

.pfNodeTabs button[aria-selected="true"] {
  color:#fff;
  background:var(--pf-blue);
}

.pfNodeTabs button[aria-selected="true"] span { color:#bcd2ff; }

.pfNodeExplanation {
  min-height:124px;
  padding:20px 0;
  border-bottom:1px solid #bfc4c7;
}

.pfNodeExplanation span {
  color:var(--pf-blue);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfNodeExplanation p {
  margin:10px 0 0;
  color:#4f5a63;
  font-size:14px;
  line-height:1.5;
}

.pfNodeFacts {
  margin:0;
  padding:0;
  list-style:none;
}

.pfNodeFacts li {
  min-height:50px;
  display:grid;
  grid-template-columns:82px 1fr;
  align-items:center;
  border-bottom:1px solid #c9cdd0;
}

.pfNodeFacts b {
  color:#17202a;
  font-size:11px;
  text-transform:uppercase;
}

.pfNodeFacts span {
  color:#5f6870;
  font-size:12px;
  line-height:1.35;
}

.pfNodeMedia {
  aspect-ratio:1568 / 1003;
  min-width:0;
  position:relative;
  overflow:hidden;
  border:1px solid #6f7982;
  border-radius:7px;
  background:#080c12;
  box-shadow:0 22px 48px rgba(16,24,32,.16);
}

.pfNodeMedia figure {
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  pointer-events:none;
  transition:opacity .42s ease,transform .42s ease;
  transform:translateY(8px);
}

.pfNodeMedia figure.active {
  opacity:1;
  transform:translateY(0);
}

.pfNodeMedia img {
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#080c12;
}

.pfNodeMediaLabel {
  min-height:40px;
  position:absolute;
  z-index:3;
  left:14px;
  right:14px;
  bottom:14px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:5px;
  color:#d8e0e8;
  background:rgba(6,10,15,.9);
  font-size:10px;
  text-transform:uppercase;
}

.pfNodeMediaLabel>i {
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--pf-green);
}

.pfNodeMediaLabel b {
  margin-left:auto;
  color:#fff;
}

.pfIntegrationRail {
  display:grid;
  grid-template-columns:230px 1fr;
  align-items:center;
  margin-top:50px;
  border-top:1px solid #9ea6ac;
  border-bottom:1px solid #9ea6ac;
}

.pfIntegrationRail>span {
  padding:20px 20px 20px 0;
  color:#4e5962;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfIntegrationRail>div {
  display:grid;
  grid-template-columns:repeat(8,1fr);
  border-left:1px solid #b9bec2;
}

.pfIntegrationRail b {
  min-height:64px;
  display:grid;
  place-items:center;
  padding:10px;
  border-right:1px solid #c9cdd0;
  color:#28323b;
  font-size:12px;
  text-align:center;
}

.pfIntegrationRail b:last-child { border-right:0; }

/* Pilot delivery flow */
.pfHow {
  padding:84px 0 76px;
  color:#fff;
  background:var(--pf-blue-deep);
}

.pfHowIntro {
  display:grid;
  grid-template-columns:230px minmax(0,820px);
  gap:48px;
  align-items:start;
}

.pfHowIntro>p,
.pfHowIntro>p span { color:var(--pf-cyan); }

.pfHowIntro h2 {
  margin:0;
  font-size:44px;
  line-height:1.04;
}

.pfHowIntro>div>p {
  margin:17px 0 0;
  color:#c7d5e8;
  font-size:16px;
  line-height:1.58;
}

.pfFlow {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin:48px 0 0;
  padding:0;
  border-top:1px solid rgba(255,255,255,.42);
  border-bottom:1px solid rgba(255,255,255,.42);
  list-style:none;
}

.pfFlow li {
  min-height:220px;
  padding:25px;
}

.pfFlow li+li { border-left:1px solid rgba(255,255,255,.3); }

.pfFlow li>span {
  color:var(--pf-cyan);
  font-size:12px;
  font-weight:900;
}

.pfFlow strong {
  display:block;
  margin-top:40px;
  font-size:20px;
  line-height:1.15;
}

.pfFlow p {
  margin:12px 0 0;
  color:#bdd0e9;
  font-size:13px;
  line-height:1.5;
}

.pfOutputs {
  display:grid;
  grid-template-columns:180px repeat(4,1fr);
  margin-top:34px;
  border-top:1px solid rgba(255,255,255,.34);
  border-bottom:1px solid rgba(255,255,255,.34);
}

.pfOutputs>span {
  display:flex;
  align-items:center;
  color:var(--pf-cyan);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfOutputs>div {
  min-height:100px;
  padding:20px;
  border-left:1px solid rgba(255,255,255,.24);
}

.pfOutputs strong { font-size:14px; }

.pfOutputs p {
  margin:8px 0 0;
  color:#b9cbe2;
  font-size:12px;
  line-height:1.4;
}

/* Proof */
.pfProof {
  padding:92px 0;
  color:var(--pf-ink);
  background:#fff;
}

.pfProofGrid {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:72px;
  align-items:start;
}

.pfProofCopy h2 {
  margin:24px 0 0;
  font-size:46px;
  line-height:1.04;
}

.pfProofCopy>p:nth-of-type(2) {
  margin:20px 0 0;
  color:#505b65;
  font-size:16px;
  line-height:1.6;
}

.pfTarget {
  display:grid;
  grid-template-columns:170px 1fr;
  align-items:center;
  margin-top:30px;
  border:1px solid #9ca4aa;
  border-left:7px solid var(--pf-yellow);
  background:var(--pf-paper);
}

.pfTarget>strong {
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  padding:22px 8px;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:52px;
  line-height:1;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
}

.pfTarget>span {
  padding:22px;
  border-left:1px solid #bec3c7;
  color:#4f5a63;
  font-size:13px;
  line-height:1.45;
}

.pfTarget b {
  display:block;
  margin-bottom:6px;
  color:#11161c;
  font-size:14px;
}

.pfEffort {
  padding-top:8px;
}

.pfEffortHead {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-bottom:15px;
  border-bottom:1px solid #aeb4b8;
  color:#56616a;
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
}

.pfEffortRow {
  display:grid;
  grid-template-columns:130px 1fr 100px;
  align-items:center;
  gap:18px;
  margin-top:25px;
}

.pfEffortRow>strong { font-size:13px; }

.pfEffortRow>div {
  height:54px;
  position:relative;
  border:1px solid #9fa7ad;
  background:#e7e9e9;
}

.pfEffortRow i {
  height:100%;
  display:block;
  background:#555f68;
}

.pfEffortRow.custom i { width:100%; }

.pfEffortRow.factory i {
  width:60%;
  background:var(--pf-yellow);
}

.pfEffortRow>span {
  font-size:13px;
  font-weight:900;
  text-align:right;
}

.pfEffort>p {
  margin:18px 0 0 148px;
  color:#68727a;
  font-size:11px;
  line-height:1.45;
}

.pfEffort dl {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:42px 0 0;
  border-top:1px solid #b2b8bc;
  border-bottom:1px solid #b2b8bc;
}

.pfEffort dl>div {
  min-height:130px;
  padding:22px 18px;
}

.pfEffort dl>div+div { border-left:1px solid #c3c8cb; }

.pfEffort dt {
  color:var(--pf-blue);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}

.pfEffort dd {
  margin:11px 0 0;
  color:#58636c;
  font-size:12px;
  line-height:1.45;
}

/* Partner model */
.pfPartner {
  padding:88px 0 72px;
  color:#fff;
  background:#111820;
}

.pfPartnerIntro {
  display:grid;
  grid-template-columns:230px minmax(0,850px);
  gap:48px;
}

.pfPartnerIntro>p,
.pfPartnerIntro>p span { color:var(--pf-yellow); }

.pfPartnerIntro h2 {
  margin:0;
  font-size:44px;
  line-height:1.04;
}

.pfPartnerIntro>div>p {
  margin:18px 0 0;
  color:#b9c2ca;
  font-size:16px;
  line-height:1.6;
}

.pfResponsibilities {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:48px;
  border-top:1px solid #53606b;
  border-bottom:1px solid #53606b;
}

.pfResponsibilities article {
  min-height:210px;
  padding:26px;
}

.pfResponsibilities article+article { border-left:1px solid #53606b; }

.pfResponsibilities article>span {
  color:var(--pf-cyan);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfResponsibilities article:first-child>span { color:var(--pf-yellow); }
.pfResponsibilities article:last-child>span { color:var(--pf-green); }

.pfResponsibilities h3 {
  margin:34px 0 0;
  font-size:22px;
}

.pfResponsibilities p {
  margin:13px 0 0;
  color:#aab5bf;
  font-size:13px;
  line-height:1.55;
}

.pfLadder {
  margin-top:42px;
  border-top:5px solid var(--pf-yellow);
}

.pfLadder>div {
  display:flex;
  justify-content:space-between;
  gap:24px;
  padding:20px 0;
  border-bottom:1px solid #53606b;
}

.pfLadder>div span {
  color:#99a6b0;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfLadder>div strong { font-size:16px; }

.pfLadder ol {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  margin:0;
  padding:0;
  list-style:none;
}

.pfLadder li {
  min-height:136px;
  padding:21px 18px;
}

.pfLadder li+li { border-left:1px solid #46515c; }

.pfLadder li>span {
  color:var(--pf-cyan);
  font-size:11px;
  font-weight:900;
}

.pfLadder li strong {
  display:block;
  margin-top:17px;
  font-size:14px;
}

.pfLadder li p {
  margin:10px 0 0;
  color:#9eabb5;
  font-size:12px;
  line-height:1.45;
}

/* Technical disclosure */
.pfTechnical {
  color:#fff;
  background:#080c11;
  border-top:1px solid #3d4650;
  border-bottom:1px solid #3d4650;
}

.pfTechnical summary {
  min-height:102px;
  display:grid;
  grid-template-columns:64px 1fr 46px;
  align-items:center;
  gap:18px;
  padding:0 max(48px,calc((100% - 1320px)/2));
  cursor:pointer;
  list-style:none;
}

.pfTechnical summary::-webkit-details-marker { display:none; }

.pfTechnicalNo {
  color:var(--pf-cyan);
  font-size:25px;
  font-weight:900;
}

.pfTechnical summary strong {
  display:block;
  font-size:17px;
}

.pfTechnical summary small {
  display:block;
  margin-top:7px;
  color:#8d98a3;
  font-size:12px;
}

.pfTechnical summary>i {
  width:40px;
  height:40px;
  position:relative;
  border:1px solid #59636d;
  border-radius:4px;
}

.pfTechnical summary>i::before,
.pfTechnical summary>i::after {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  background:#fff;
  transform:translate(-50%,-50%);
}

.pfTechnical summary>i::before {
  width:14px;
  height:1px;
}

.pfTechnical summary>i::after {
  width:1px;
  height:14px;
}

.pfTechnical[open] summary { border-bottom:1px solid #3d4650; }
.pfTechnical[open] summary>i::after { display:none; }

.pfTechnicalBody {
  width:min(1320px,calc(100% - 96px));
  margin:0 auto;
  padding:48px 0 68px;
}

.pfTechnicalBody>p {
  max-width:850px;
  margin:0 0 30px;
  color:#adb7c0;
  font-size:15px;
  line-height:1.62;
}

.pfTechnicalBody>div {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border-top:1px solid #424c56;
  border-bottom:1px solid #424c56;
}

.pfTechnicalBody article {
  min-height:200px;
  padding:23px;
}

.pfTechnicalBody article+article { border-left:1px solid #424c56; }

.pfTechnicalBody article span {
  color:var(--pf-cyan);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfTechnicalBody article strong {
  display:block;
  margin-top:20px;
  font-size:15px;
  line-height:1.3;
}

.pfTechnicalBody article p {
  margin:11px 0 0;
  color:#929da7;
  font-size:12px;
  line-height:1.55;
}

/* Closing CTA */
.pfCommission {
  color:#fff;
  background:#10161c;
  border-top:7px solid #07090c;
}

.pfCommissionInner {
  min-height:220px;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  align-items:center;
  border-left:1px solid #424b54;
  border-right:1px solid #424b54;
}

.pfCommissionInner>div { padding:44px; }

.pfCommissionInner>div+div {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  border-left:1px solid #424b54;
}

.pfCommission span {
  color:var(--pf-green);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfCommission h2 {
  margin:13px 0 0;
  font-family:"Arial Narrow",Arial,sans-serif;
  font-size:50px;
  line-height:.95;
  text-transform:uppercase;
}

.pfCommission p {
  max-width:620px;
  margin:16px 0 0;
  color:#b1bbc4;
  font-size:15px;
  line-height:1.5;
}

.pfCommission .pfButton.light {
  border-color:var(--pf-yellow);
  color:#101317 !important;
  background:var(--pf-yellow);
}

.pfCommission .pfButton.light:hover { background:#ffda45; }

.pfFooter {
  min-height:66px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  padding:0 28px;
  color:#727d87;
  background:#06080a;
  font-size:10px;
  text-transform:uppercase;
}

.pfFooter strong { color:#d3d8dc; }
.pfFooter span:last-child { justify-self:end; }

/* Responsive */
@media (max-width:1180px) {
  .pfWidth,
  .pfTechnicalBody { width:min(100% - 56px,1320px); }

  .pfBrand { min-width:230px; }
  .pfBrandType { display:none; }
  .pfNavLinks a { min-width:108px; padding:0 10px; }
  .pfHeroGrid { grid-template-columns:45% 55%; }
  .pfHeroCopy { padding-left:34px; padding-right:34px; }
  .pfHero h1 { font-size:52px; }
  .pfHeroLead { font-size:15px; }
  .pfSystemNode { width:145px; }
  .pfSystemNode.left { left:16px; }
  .pfSystemNode.right { right:16px; }
  .pfControlCenter { width:278px; }
  .pfIntegrationRail { grid-template-columns:180px 1fr; }
  .pfIntegrationRail>div { grid-template-columns:repeat(4,1fr); }
  .pfIntegrationRail b:nth-child(n+5) { border-top:1px solid #c9cdd0; }
  .pfHowIntro,
  .pfPartnerIntro { grid-template-columns:170px 1fr; gap:34px; }
  .pfTechnicalBody>div { grid-template-columns:repeat(3,1fr); }
  .pfTechnicalBody article:nth-child(4) { border-left:0; border-top:1px solid #424c56; }
  .pfTechnicalBody article:nth-child(5) { border-top:1px solid #424c56; }
}

@media (max-width:900px) {
  .pfNav { height:60px; }
  .pfBrand { flex:1; min-width:0; padding:0 16px; }
  .pfNavLinks { display:none; }
  .pfNavActions button:not(.pfNavPrimary) { display:none; }
  .pfNavActions .pfNavPrimary { min-width:120px; }

  .pfHero {
    height:calc(100vh - 18px);
    height:calc(100svh - 18px);
    min-height:720px;
    max-height:860px;
  }

  .pfHeroGrid {
    grid-template-columns:1fr;
    grid-template-rows:minmax(318px,46%) minmax(330px,54%);
    padding-top:60px;
  }

  .pfHeroCopy {
    justify-content:center;
    padding:28px 28px 22px;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.16);
  }

  .pfHero h1 {
    max-width:780px;
    margin-top:17px;
    font-size:40px;
  }

  .pfHeroLead {
    max-width:780px;
    margin-top:14px;
    font-size:14px;
  }

  .pfHeroActions { margin-top:18px; }

  .pfHeroProof {
    max-width:780px;
    margin-top:18px;
  }

  .pfHeroProof>div { min-height:52px; padding:10px 10px 8px 0; }
  .pfHeroProof dd { display:none; }

  .pfHeroVisual { grid-template-rows:48px minmax(0,1fr) 40px; }
  .pfConstToolbar { padding:0 16px; }
  .pfConstToolbar>span { display:none; }
  .pfConstTabs { width:100%; }
  .pfConstTabs button { flex:1; min-width:92px; }
  .pfConstFooter { padding:0 16px; }

  .pfNodeShowcase {
    grid-template-columns:1fr;
    gap:28px;
  }

  .pfNodeSelector {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 24px;
  }

  .pfNodeTabs { grid-row:span 2; }
  .pfNodeExplanation { padding-top:0; }
  .pfNodeFacts li { grid-template-columns:72px 1fr; }

  .pfIntegrationRail { grid-template-columns:1fr; }
  .pfIntegrationRail>span { padding:18px 0; }
  .pfIntegrationRail>div { border-left:0; border-top:1px solid #b9bec2; }

  .pfFlow { grid-template-columns:repeat(2,1fr); }
  .pfFlow li:nth-child(3) { border-left:0; border-top:1px solid rgba(255,255,255,.3); }
  .pfFlow li:nth-child(4) { border-top:1px solid rgba(255,255,255,.3); }

  .pfOutputs {
    grid-template-columns:repeat(2,1fr);
  }

  .pfOutputs>span { display:none; }
  .pfOutputs>div:nth-of-type(odd) { border-left:0; }
  .pfOutputs>div:nth-of-type(n+3) { border-top:1px solid rgba(255,255,255,.24); }

  .pfProofGrid {
    grid-template-columns:1fr;
    gap:52px;
  }

  .pfResponsibilities { grid-template-columns:1fr; }
  .pfResponsibilities article { min-height:0; }
  .pfResponsibilities article+article { border-left:0; border-top:1px solid #53606b; }

  .pfLadder ol {
    grid-template-columns:repeat(5,190px);
    overflow-x:auto;
  }

  .pfTechnical summary { padding:0 28px; }

  .pfCommissionInner { grid-template-columns:1fr; }
  .pfCommissionInner>div+div { border-left:0; border-top:1px solid #424b54; }
}

@media (max-width:600px) {
  .pfWidth,
  .pfTechnicalBody { width:min(100% - 28px,1320px); }

  .pfBrand { gap:8px; padding:0 10px; }
  .pfBrandMark { width:32px; height:32px; }
  .pfBrandName { font-size:10px; }
  .pfNavActions .pfNavPrimary { min-width:106px; font-size:10px; }

  .pfHero {
    min-height:650px;
    max-height:790px;
  }

  .pfHeroGrid {
    grid-template-rows:minmax(310px,47%) minmax(280px,53%);
  }

  .pfHeroCopy { padding:22px 18px 16px; }
  .pfEyebrow { font-size:10px; }
  .pfEyebrow::before { width:20px; }

  .pfHero h1 {
    margin-top:14px;
    font-size:34px;
  }

  .pfHeroLead {
    margin-top:12px;
    font-size:13px;
    line-height:1.45;
  }

  .pfHeroActions {
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:15px;
  }

  .pfHeroActions .pfButton {
    min-height:42px;
    padding:0 10px;
    font-size:9px !important;
  }

  .pfHeroProof { margin-top:14px; }
  .pfHeroProof>div { min-height:39px; padding:8px 6px 7px 0; }
  .pfHeroProof>div+div { padding-left:6px; }
  .pfHeroProof dt { font-size:9px; }

  .pfConstTabs button {
    min-width:82px;
    padding:0 8px;
    font-size:9px;
  }

  .pfSystemNode {
    width:92px;
    min-height:48px;
    padding:8px 9px;
  }

  .pfSystemNode strong {
    padding-right:8px;
    font-size:10px;
    text-align:center;
  }

  .pfSystemNode small { display:none; }
  .pfSystemNode>i { width:5px; height:5px; right:7px; top:7px; }
  .pfSystemNode.top { top:6px; }
  .pfSystemNode.bottom { bottom:6px; }
  .pfSystemNode.left { left:5px; }
  .pfSystemNode.right { right:5px; }

  .pfControlCenter {
    width:166px;
    min-height:78px;
    padding:11px 13px;
  }

  .pfControlCenter>span { font-size:7px; }
  .pfControlCenter>strong { margin-top:5px; font-size:14px; }
  .pfControlCenter>small { display:none; }
  .pfControlCenter>b { margin-top:8px; font-size:7px; }

  .pfConstAxis.horizontal { left:52px; right:52px; }
  .pfConstAxis.vertical { top:26px; bottom:26px; }
  .pfConstPulse { width:6px; height:6px; }
  .pfConstFooter { font-size:9px; }
  .pfConstFooter span { display:none; }
  .pfConstFooter strong { font-size:10px; }

  .pfNodeLibrary { padding:62px 0 58px; }
  .pfSectionHead h2 { margin-top:18px; font-size:34px; }
  .pfSectionHead>p:last-child { margin-top:15px; font-size:14px; }

  .pfNodeShowcase { margin-top:32px; }
  .pfNodeSelector { grid-template-columns:1fr; }
  .pfNodeTabs {
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .pfNodeTabs button {
    min-height:58px;
    grid-template-columns:30px 1fr;
    padding:0 9px;
    border-right:1px solid #bfc4c7;
  }

  .pfNodeTabs button strong { font-size:12px; }
  .pfNodeExplanation { min-height:0; padding:17px 0; }
  .pfNodeFacts { display:grid; grid-template-columns:1fr 1fr; }
  .pfNodeFacts li { grid-template-columns:1fr; align-content:center; padding:9px; }
  .pfNodeFacts li:nth-child(odd) { border-right:1px solid #c9cdd0; }
  .pfNodeFacts span { margin-top:5px; font-size:10px; }

  .pfNodeMediaLabel {
    min-height:34px;
    left:7px;
    right:7px;
    bottom:7px;
    padding:0 8px;
    font-size:8px;
  }

  .pfIntegrationRail { margin-top:34px; }
  .pfIntegrationRail>div { grid-template-columns:repeat(2,1fr); }
  .pfIntegrationRail b:nth-child(n+3) { border-top:1px solid #c9cdd0; }

  .pfHow { padding:60px 0 56px; }
  .pfHowIntro,
  .pfPartnerIntro { grid-template-columns:1fr; gap:18px; }
  .pfHowIntro h2,
  .pfPartnerIntro h2 { font-size:34px; }
  .pfHowIntro>div>p,
  .pfPartnerIntro>div>p { font-size:14px; }

  .pfFlow {
    grid-template-columns:1fr;
    margin-top:32px;
  }

  .pfFlow li {
    min-height:0;
    padding:20px 10px;
  }

  .pfFlow li+li {
    border-left:0;
    border-top:1px solid rgba(255,255,255,.3);
  }

  .pfFlow strong { margin-top:16px; font-size:17px; }

  .pfOutputs { grid-template-columns:1fr; }
  .pfOutputs>div { min-height:80px; border-left:0; }
  .pfOutputs>div+div { border-top:1px solid rgba(255,255,255,.24); }

  .pfProof { padding:62px 0; }
  .pfProofCopy h2 { font-size:34px; }
  .pfProofCopy>p:nth-of-type(2) { font-size:14px; }

  .pfTarget { grid-template-columns:1fr; }
  .pfTarget>strong { font-size:56px; }
  .pfTarget>span { border-left:0; border-top:1px solid #bec3c7; }

  .pfEffortRow {
    grid-template-columns:90px 1fr;
    gap:10px;
  }

  .pfEffortRow>span {
    grid-column:2;
    text-align:left;
  }

  .pfEffort>p { margin-left:0; }
  .pfEffort dl { grid-template-columns:1fr; }
  .pfEffort dl>div { min-height:0; }
  .pfEffort dl>div+div { border-left:0; border-top:1px solid #c3c8cb; }

  .pfPartner { padding:62px 0 54px; }
  .pfLadder>div { flex-direction:column; }
  .pfLadder ol { grid-template-columns:repeat(5,170px); }

  .pfTechnical summary {
    min-height:94px;
    grid-template-columns:38px 1fr 36px;
    gap:9px;
    padding:0 14px;
  }

  .pfTechnicalNo { font-size:20px; }
  .pfTechnical summary strong { font-size:14px; }
  .pfTechnical summary small { display:none; }
  .pfTechnical summary>i { width:34px; height:34px; }

  .pfTechnicalBody>div { grid-template-columns:1fr; }
  .pfTechnicalBody article { min-height:0; }
  .pfTechnicalBody article+article { border-left:0; border-top:1px solid #424c56; }

  .pfCommissionInner {
    width:100%;
    border-left:0;
    border-right:0;
  }

  .pfCommissionInner>div { padding:31px 18px; }
  .pfCommissionInner>div+div { flex-direction:column; }
  .pfCommission h2 { font-size:40px; }
  .pfCommission .pfButton { width:100%; }

  .pfFooter {
    min-height:92px;
    grid-template-columns:1fr;
    gap:5px;
    padding:16px;
  }

  .pfFooter span:last-child { justify-self:start; }
}

@media (prefers-reduced-motion:reduce) {
  .pfConstPulse { animation:none; opacity:.8; }
  .pfConstellation,
  .pfNodeMedia figure { transition:none; }
}

/* Two explicit partner operating paths. */
.pfPartnerPaths {
  display:grid;
  grid-template-columns:260px 1fr;
  gap:34px;
  margin-top:42px;
  padding:28px 0;
  border-top:1px solid #53606b;
  border-bottom:1px solid #53606b;
}

.pfPartnerPaths>div:first-child>span {
  color:var(--pf-yellow);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfPartnerPaths>div:first-child h3 {
  margin:15px 0 0;
  font-size:21px;
  line-height:1.2;
}

.pfPartnerPaths>div:last-child {
  display:grid;
  grid-template-columns:1fr 1fr;
  border-left:1px solid #53606b;
}

.pfPartnerPaths article {
  min-height:150px;
  padding:4px 26px;
}

.pfPartnerPaths article+article {
  border-left:1px solid #53606b;
}

.pfPartnerPaths article>span {
  color:var(--pf-cyan);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}

.pfPartnerPaths article strong {
  display:block;
  margin-top:20px;
  font-size:17px;
}

.pfPartnerPaths article p {
  margin:11px 0 0;
  color:#aab5bf;
  font-size:12px;
  line-height:1.55;
}

/* Compact commercial FAQ after the optional architecture. */
.pfFaq {
  padding:78px 0;
  color:var(--pf-ink);
  background:var(--pf-paper);
}

.pfFaqGrid {
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:70px;
  align-items:start;
}

.pfFaqGrid>div:first-child>p:first-child {
  display:flex;
  align-items:center;
  gap:12px;
  margin:0;
  color:#5f6b75;
  font-size:12px;
  font-weight:850;
  text-transform:uppercase;
}

.pfFaqGrid>div:first-child>p:first-child span {
  color:var(--pf-blue);
  font-size:24px;
  font-weight:900;
}

.pfFaq h2 {
  margin:22px 0 0;
  font-size:38px;
  line-height:1.05;
}

.pfFaqGrid>div:first-child>p:last-child {
  margin:16px 0 0;
  color:#58636c;
  font-size:14px;
  line-height:1.5;
}

.pfFaqList {
  border-top:1px solid #9ea6ac;
}

.pfFaqList details {
  border-bottom:1px solid #b7bdc1;
}

.pfFaqList summary {
  min-height:68px;
  display:grid;
  grid-template-columns:1fr 34px;
  align-items:center;
  gap:18px;
  cursor:pointer;
  list-style:none;
  font-size:15px;
  font-weight:800;
}

.pfFaqList summary::-webkit-details-marker { display:none; }

.pfFaqList summary i {
  width:30px;
  height:30px;
  position:relative;
  border:1px solid #9aa2a8;
  border-radius:3px;
}

.pfFaqList summary i::before,
.pfFaqList summary i::after {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  background:#151a1f;
  transform:translate(-50%,-50%);
}

.pfFaqList summary i::before {
  width:11px;
  height:1px;
}

.pfFaqList summary i::after {
  width:1px;
  height:11px;
}

.pfFaqList details[open] summary i::after { display:none; }

.pfFaqList details p {
  max-width:760px;
  margin:-3px 0 0;
  padding:0 54px 24px 0;
  color:#59646d;
  font-size:13px;
  line-height:1.58;
}

@media (max-width:900px) {
  .pfPartnerPaths {
    grid-template-columns:1fr;
    gap:22px;
  }

  .pfPartnerPaths>div:last-child {
    border-left:0;
    border-top:1px solid #53606b;
    padding-top:22px;
  }

  .pfFaqGrid {
    grid-template-columns:1fr;
    gap:34px;
  }
}

@media (max-width:600px) {
  .pfPartnerPaths>div:last-child {
    grid-template-columns:1fr;
  }

  .pfPartnerPaths article {
    min-height:0;
    padding:18px 0;
  }

  .pfPartnerPaths article+article {
    border-left:0;
    border-top:1px solid #53606b;
  }

  .pfFaq { padding:58px 0; }
  .pfFaq h2 { font-size:32px; }
  .pfFaqList summary { min-height:64px; font-size:13px; }
  .pfFaqList details p { padding-right:0; font-size:12px; }
}

/* Landing controls must not inherit application button elevation. */
#landingPage button {
  box-shadow:none;
  text-shadow:none;
  appearance:none;
}

.pfHeroVisual>*,
.pfConstToolbar,
.pfConstellation,
.pfConstFooter {
  min-width:0;
}

.pfConstFooter strong,
.pfConstFooter span {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pfNodeTabs button,
.pfConstTabs button,
.pfNavActions button {
  box-shadow:none !important;
}

/* === Persistent node architecture + top system/control showcase === */
.pfHeroVisual {
  grid-template-rows:62px minmax(0,1fr) 66px;
}

.pfHeroVisualBody {
  min-width:0;
  min-height:0;
  position:relative;
  overflow:hidden;
  background:#0b234f;
}

.pfHeroVisualBody .pfConstellation {
  position:absolute;
  inset:0;
  z-index:1;
  opacity:1;
  pointer-events:auto;
  transition:opacity .35s ease,transform .35s ease;
}

.pfHeroVisual[data-view="control"] .pfConstellation {
  opacity:0;
  pointer-events:none;
  transform:translateX(-10px);
}

.pfControlTabs {
  min-width:0;
  display:none;
  align-self:stretch;
  overflow-x:auto;
  scrollbar-width:none;
}

.pfControlTabs::-webkit-scrollbar { display:none; }

.pfControlTabs button {
  min-width:96px;
  padding:0 13px;
  border:0;
  border-left:1px solid rgba(255,255,255,.12);
  color:#9fb2d0;
  background:transparent;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
  box-shadow:none;
}

.pfControlTabs button:last-child {
  border-right:1px solid rgba(255,255,255,.12);
}

.pfControlTabs button[aria-selected="true"] {
  color:#101317;
  background:var(--pf-yellow);
}

.pfHeroVisual[data-view="control"] .pfConstTabs { display:none; }
.pfHeroVisual[data-view="control"] .pfControlTabs { display:flex; }

.pfHeroControlPreview {
  position:absolute;
  z-index:2;
  inset:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  background:#080c12;
  transform:translateX(10px);
  transition:opacity .35s ease,transform .35s ease;
}

.pfHeroVisual[data-view="control"] .pfHeroControlPreview {
  opacity:1;
  pointer-events:auto;
  transform:translateX(0);
}

.pfHeroControlPreview figure {
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  visibility:hidden;
  transform:scale(.992);
  transition:none;
}

.pfHeroControlPreview figure.active {
  opacity:1;
  visibility:visible;
  transform:scale(1);
}

.pfHeroControlPreview img {
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#080c12;
}

.pfConstFooter {
  gap:18px;
}

.pfConstFooter>div:first-child {
  flex:1 1 auto;
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.pfSlideNavigation {
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
}

.pfSlideNavigation>button {
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(169,187,212,.42);
  border-radius:3px;
  color:#f4f7fb;
  background:rgba(255,255,255,.045);
  font-size:17px;
  line-height:1;
  cursor:pointer;
  transition:border-color .18s ease,color .18s ease,background-color .18s ease;
}

.pfSlideNavigation>button>span {
  min-width:auto;
  display:block;
  overflow:visible;
  color:inherit;
  font-size:inherit;
  line-height:1;
}
.pfSlideNavigation>button:hover {
  border-color:var(--pf-yellow);
  color:var(--pf-yellow);
  background:rgba(255,255,255,.08);
}

.pfSlideNavigation>button:focus-visible {
  outline:2px solid var(--pf-yellow);
  outline-offset:2px;
}

.pfSlideNavigation>button:active {
  color:#11161c;
  background:var(--pf-yellow);
}

.pfConstFooter>div:first-child strong,
.pfConstFooter>div:first-child span {
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pfConstFooter>div:first-child span {
  margin-top:4px;
  color:#91a7c8;
  font-size:10px;
}

.pfHeroViewToggle {
  flex:0 0 auto;
  display:flex;
  align-self:stretch;
  border-left:1px solid rgba(255,255,255,.16);
  border-right:1px solid rgba(255,255,255,.16);
}

.pfHeroViewToggle button {
  min-width:106px;
  padding:0 12px;
  border:0;
  color:#91a7c8;
  background:transparent;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:none;
}

.pfHeroViewToggle button+button {
  border-left:1px solid rgba(255,255,255,.16);
}

.pfHeroViewToggle button[aria-selected="true"] {
  color:#11161c;
  background:var(--pf-yellow);
}

/* General node architecture: the core technical selling point. */
.pfNodeArchitecture .pfSectionHead {
  max-width:980px;
}

.pfNodeArchitecture .pfSectionHead>p:last-child {
  max-width:930px;
}

.pfArchitectureSplit {
  display:grid;
  grid-template-columns:1fr 1fr;
  margin-top:50px;
  border-top:1px solid #9da5ab;
  border-bottom:1px solid #9da5ab;
}

.pfArchitectureSplit>article {
  min-width:0;
  min-height:570px;
  padding:30px;
}

.pfArchitectureSplit>article+article {
  border-left:1px solid #aeb4b8;
}

.pfWorkspaceAnatomy {
  color:#fff;
  background:#111820;
}

.pfNodeComposition {
  color:var(--pf-ink);
  background:#fff;
}

.pfArchitectureHead {
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-bottom:18px;
  border-bottom:1px solid currentColor;
}

.pfWorkspaceAnatomy .pfArchitectureHead {
  border-color:#48535e;
}

.pfNodeComposition .pfArchitectureHead {
  border-color:#b6bcc0;
}

.pfArchitectureHead>span {
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfArchitectureHead>b {
  display:flex;
  align-items:center;
  gap:8px;
  color:#75818a;
  font-size:10px;
  text-transform:uppercase;
}

.pfWorkspaceAnatomy .pfArchitectureHead>b {
  color:#9eabb6;
}

.pfArchitectureHead>b i {
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--pf-green);
  box-shadow:0 0 0 4px rgba(64,210,122,.12);
}

.pfWorkspaceLayers {
  margin-top:24px;
  border:1px solid #49545f;
}

.pfWorkspaceLayers section {
  min-height:105px;
  position:relative;
  padding:18px 22px 17px 26px;
  border-left:5px solid var(--pf-blue);
}

.pfWorkspaceLayers section+section {
  border-top:1px solid #49545f;
}

.pfWorkspaceLayers section.intelligence { border-left-color:var(--pf-green); }
.pfWorkspaceLayers section.functions { border-left-color:var(--pf-yellow); }
.pfWorkspaceLayers section.software { border-left-color:var(--pf-cyan); }
.pfWorkspaceLayers section.workspace {
  min-height:118px;
  border-left-color:#7da7ff;
  background:#17283d;
}

.pfWorkspaceLayers section>span {
  color:#91a3b4;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}

.pfWorkspaceLayers section.intelligence>span { color:var(--pf-green); }
.pfWorkspaceLayers section.functions>span { color:var(--pf-yellow); }
.pfWorkspaceLayers section.software>span { color:var(--pf-cyan); }

.pfWorkspaceLayers section strong {
  display:block;
  margin-top:9px;
  color:#fff;
  font-size:15px;
  line-height:1.3;
}

.pfWorkspaceLayers section small {
  display:block;
  margin-top:7px;
  color:#9faab4;
  font-size:12px;
  line-height:1.45;
}

.pfCompositionDiagram {
  display:grid;
  grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr);
  align-items:center;
  margin-top:54px;
}

.pfCompositionNode {
  min-height:178px;
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:22px;
  border:1px solid #78838c;
  border-radius:6px;
  background:#f3f4f2;
}

.pfCompositionNode.primary {
  border-top:6px solid var(--pf-blue);
}

.pfCompositionNode.specialist {
  border-top:6px solid var(--pf-green);
}

.pfCompositionNode>span {
  color:var(--pf-blue);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}

.pfCompositionNode.specialist>span {
  color:#258b4c;
}

.pfCompositionNode strong {
  margin-top:18px;
  font-size:17px;
  line-height:1.25;
}

.pfCompositionNode small {
  margin-top:11px;
  color:#657079;
  font-size:11px;
  line-height:1.45;
}

.pfContractBridge {
  min-height:220px;
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
  padding:0 10px;
}

.pfContractBridge::before,
.pfContractBridge::after {
  content:"";
  height:1px;
  position:absolute;
  left:-1px;
  right:-1px;
  background:#8d969d;
}

.pfContractBridge::before { top:34%; }
.pfContractBridge::after { top:68%; }

.pfContractBridge>div {
  position:relative;
  z-index:2;
  padding:10px 8px;
  border:1px solid #9ba3a8;
  background:#fff;
  text-align:center;
}

.pfContractBridge>div span {
  display:block;
  color:var(--pf-blue);
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}

.pfContractBridge>div strong {
  display:block;
  margin-top:5px;
  font-size:10px;
  line-height:1.25;
}

.pfContractBridge>i {
  width:8px;
  height:8px;
  position:absolute;
  z-index:3;
  left:0;
  border:2px solid #fff;
  border-radius:50%;
  background:var(--pf-blue);
  box-shadow:0 0 0 1px var(--pf-blue);
  animation:pfContractTravel 3s linear infinite;
}

.pfContractBridge>i.request { top:calc(34% - 4px); }
.pfContractBridge>i.response {
  top:calc(68% - 4px);
  background:var(--pf-green);
  box-shadow:0 0 0 1px var(--pf-green);
  animation-direction:reverse;
  animation-delay:-1.5s;
}

@keyframes pfContractTravel {
  0% { left:0; opacity:0; }
  12% { opacity:1; }
  88% { opacity:1; }
  100% { left:calc(100% - 8px); opacity:0; }
}

.pfNodeComposition>p {
  margin:48px 0 0;
  color:#515c65;
  font-size:14px;
  line-height:1.62;
}

.pfArchitecturePrinciples {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:38px;
  border-top:1px solid #9fa7ac;
  border-bottom:1px solid #9fa7ac;
}

.pfArchitecturePrinciples article {
  min-height:220px;
  padding:24px 20px;
}

.pfArchitecturePrinciples article+article {
  border-left:1px solid #c0c5c8;
}

.pfArchitecturePrinciples article>span {
  color:var(--pf-blue);
  font-size:11px;
  font-weight:900;
}

.pfArchitecturePrinciples article strong {
  display:block;
  margin-top:28px;
  font-size:16px;
  line-height:1.25;
}

.pfArchitecturePrinciples article p {
  margin:12px 0 0;
  color:#59646d;
  font-size:12px;
  line-height:1.55;
}

.pfArchitectureFuture {
  display:grid;
  grid-template-columns:280px 1fr;
  gap:36px;
  align-items:center;
  margin-top:38px;
  padding:30px;
  border-left:7px solid var(--pf-yellow);
  color:#fff;
  background:var(--pf-blue-deep);
}

.pfArchitectureFuture span {
  color:var(--pf-yellow);
  font-size:11px;
  font-weight:900;
  line-height:1.4;
  text-transform:uppercase;
}

.pfArchitectureFuture p {
  margin:0;
  color:#d4e0ef;
  font-size:15px;
  line-height:1.6;
}

.pfNodeArchitecture .pfIntegrationRail {
  margin-top:38px;
}

@media (max-width:1050px) {
  .pfHeroViewToggle button {
    min-width:92px;
    padding:0 8px;
  }

  .pfArchitectureSplit {
    grid-template-columns:1fr;
  }

  .pfArchitectureSplit>article {
    min-height:0;
  }

  .pfArchitectureSplit>article+article {
    border-left:0;
    border-top:1px solid #aeb4b8;
  }

  .pfArchitecturePrinciples {
    grid-template-columns:repeat(2,1fr);
  }

  .pfArchitecturePrinciples article:nth-child(3) {
    border-left:0;
    border-top:1px solid #c0c5c8;
  }

  .pfArchitecturePrinciples article:nth-child(4) {
    border-top:1px solid #c0c5c8;
  }
}

@media (max-width:900px) {
  .pfHeroVisual {
    grid-template-rows:48px minmax(0,1fr) 56px;
  }

  .pfControlTabs {
    width:100%;
  }

  .pfControlTabs button {
    flex:1;
    min-width:92px;
  }

  .pfConstFooter {
    padding:0 12px;
  }

  .pfHeroViewToggle button {
    min-width:86px;
    font-size:8px;
  }

  .pfArchitectureFuture {
    grid-template-columns:220px 1fr;
    gap:24px;
  }
}

@media (max-width:600px) {
  .pfHeroVisual {
    grid-template-rows:44px minmax(0,1fr) 54px;
  }

  .pfControlTabs button {
    min-width:82px;
    padding:0 7px;
    font-size:9px;
  }

  .pfConstFooter>div:first-child span {
    display:none;
  }

  .pfHeroViewToggle button {
    min-width:70px;
    padding:0 6px;
    font-size:7px;
  }

  .pfArchitectureSplit {
    margin-top:32px;
  }

  .pfArchitectureSplit>article {
    padding:20px 16px;
  }

  .pfArchitectureHead {
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }

  .pfWorkspaceLayers section {
    min-height:0;
    padding:16px 14px 15px 17px;
  }

  .pfWorkspaceLayers section.workspace {
    min-height:0;
  }

  .pfWorkspaceLayers section strong {
    font-size:13px;
  }

  .pfCompositionDiagram {
    grid-template-columns:1fr;
    margin-top:28px;
  }

  .pfCompositionNode {
    min-height:132px;
  }

  .pfContractBridge {
    min-height:150px;
    padding:12px 36px;
  }

  .pfContractBridge::before,
  .pfContractBridge::after {
    width:1px;
    height:auto;
    left:34%;
    right:auto;
    top:-1px;
    bottom:-1px;
  }

  .pfContractBridge::after {
    left:68%;
  }

  .pfContractBridge>i {
    display:none;
  }

  .pfNodeComposition>p {
    margin-top:28px;
    font-size:13px;
  }

  .pfArchitecturePrinciples {
    grid-template-columns:1fr;
  }

  .pfArchitecturePrinciples article {
    min-height:0;
  }

  .pfArchitecturePrinciples article+article {
    border-left:0;
    border-top:1px solid #c0c5c8;
  }

  .pfArchitectureFuture {
    grid-template-columns:1fr;
    gap:14px;
    padding:24px 20px;
  }

  .pfArchitectureFuture p {
    font-size:13px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfHeroVisualBody .pfConstellation,
  .pfHeroControlPreview,
  .pfHeroControlPreview figure {
    transition:none;
  }

  .pfContractBridge>i {
    animation:none;
    opacity:.8;
  }
}

/* === Fixed industry sequence: system map -> matching control center === */
.pfSlideStatus {
  min-width:0;
  display:flex;
  align-items:center;
  align-self:stretch;
  gap:14px;
  padding-left:18px;
  border-left:1px solid rgba(255,255,255,.16);
}

.pfSlideStatus b,
.pfSlideStatus span,
.pfSlideStatus i {
  display:block;
  white-space:nowrap;
}

.pfSlideStatus b {
  max-width:170px;
  overflow:hidden;
  color:#fff;
  font-size:11px;
  font-weight:900;
  text-overflow:ellipsis;
  text-transform:uppercase;
}

.pfSlideStatus span {
  color:#8fa9d1;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
}

.pfSlideStatus i {
  min-width:58px;
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  color:#11161c;
  background:var(--pf-yellow);
  font-size:10px;
  font-style:normal;
  font-weight:950;
  letter-spacing:0;
}

.pfSlideProgress {
  flex:0 0 auto;
  display:grid;
  grid-template-columns:repeat(8,24px);
  gap:5px;
  align-items:center;
}

.pfHeroVisual.is-user-holding {
  cursor:grabbing;
}

.pfHeroVisual.is-user-holding *,
.pfHeroVisual.is-user-holding *::before,
.pfHeroVisual.is-user-holding *::after {
  animation-play-state:paused !important;
}

.pfSlideProgress i {
  width:24px;
  height:3px;
  display:block;
  background:rgba(255,255,255,.2);
  transition:background-color .25s ease;
}

.pfSlideProgress i.complete {
  background:#2a71d8;
}

.pfSlideProgress i.active {
  background:var(--pf-yellow);
}

@media (max-width:900px) {
  .pfSlideStatus {
    gap:9px;
    padding-left:10px;
  }

  .pfSlideStatus b {
    max-width:130px;
    font-size:9px;
  }

  .pfSlideStatus span,
  .pfSlideStatus i {
    font-size:8px;
  }

  .pfSlideProgress {
    grid-template-columns:repeat(8,18px);
    gap:4px;
  }

  .pfSlideNavigation {
    gap:6px;
  }

  .pfSlideProgress i {
    width:18px;
  }
}

@media (max-width:600px) {
  .pfSlideStatus span {
    display:none;
  }

  .pfSlideStatus b {
    max-width:104px;
  }

  .pfSlideStatus i {
    min-width:48px;
    padding:0 7px;
  }

  .pfSlideProgress {
    grid-template-columns:repeat(8,10px);
    gap:3px;
  }

  .pfSlideNavigation {
    gap:4px;
  }

  .pfSlideNavigation>button {
    width:36px;
    min-width:36px;
    height:44px;
    min-height:44px;
    flex-basis:36px;
    font-size:14px;
  }

  .pfSlideProgress i {
    width:10px;
  }
}

/* === AI Pilot Factory hero + variable software constellations === */
#landingPage {
  font-family:Inter,"Aptos","SF Pro Text","Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,sans-serif;
  font-kerning:normal;
  text-rendering:optimizeLegibility;
}

.pfHero h1,
.pfSectionHead h2,
.pfCommission h2,
.pfTarget>strong {
  font-family:"Inter Tight","Aptos Display","SF Pro Display","Segoe UI Variable Display","Helvetica Neue",system-ui,sans-serif;
  font-weight:780;
  letter-spacing:0;
}

.pfHero h1 {
  font-size:clamp(46px,4.15vw,64px);
  line-height:1.01;
}

.pfHeroLeadWide {
  display:inline;
}

.pfHeroLeadCompact {
  display:none;
}

.pfSlideStatus {
  gap:11px;
  padding-left:0;
  border-left:0;
}

.pfSlideStatus b {
  max-width:190px;
}

.pfSlideStatus span {
  padding-left:11px;
  border-left:1px solid rgba(255,255,255,.18);
}

.pfHeroVisualBody {
  --pf-node-canvas-surface:
    radial-gradient(ellipse at 50% 48%,rgba(219,230,241,.78) 0%,rgba(239,244,249,.82) 42%,#f7f9fb 76%);
  background:#f5f7f9;
}

.pfHeroVisualBody .pfConstellation {
  color:#11161c;
  background:#f7f9fb;
  transform:none;
  transition:opacity .42s ease .28s,background-color .24s ease;
}

.pfHeroVisual[data-view="control"] .pfConstellation {
  opacity:0;
  transform:none;
  transition-delay:.32s;
}

.pfConstellationBackdrop {
  position:absolute;
  z-index:0;
  inset:0;
  overflow:hidden;
}

.pfConstellationBackdrop i {
  position:absolute;
  left:50%;
  top:50%;
  display:block;
  border:1px solid #dce4ec;
  border-radius:50%;
  transform:translate(-50%,-50%);
}

.pfConstellationBackdrop i:nth-child(1) {
  width:78%;
  height:78%;
}

.pfConstellationBackdrop i:nth-child(2) {
  width:58%;
  height:58%;
  border-color:#e4e9ee;
}

.pfConstellationBackdrop i:nth-child(3) {
  width:36%;
  height:36%;
  border-color:#cbd8e5;
}

.pfConstLines,
.pfConstNodes {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.pfConstLines {
  z-index:1;
  overflow:visible;
}

.pfConstNodes {
  z-index:3;
  pointer-events:none;
}

.pfConstLine {
  stroke:#8aa8cb;
  stroke-width:1.45;
  stroke-dasharray:8 10;
  vector-effect:non-scaling-stroke;
  opacity:.9;
  animation:pfConstLineFlow 4s linear infinite;
  animation-delay:var(--line-delay);
  transition:opacity .28s ease,stroke-dashoffset .55s ease;
}

.pfConstNodes .pfSystemNode {
  width:152px;
  min-height:64px;
  left:var(--node-x);
  top:var(--node-y);
  padding:11px 13px 10px;
  transform:translate(-50%,-50%);
  border:1px solid #b9c6d2;
  border-top:3px solid var(--node-accent);
  border-radius:4px;
  color:#11161c;
  background:#fff;
  box-shadow:0 11px 26px rgba(28,47,70,.11);
  animation:pfConstNodeArrive .62s cubic-bezier(.2,.8,.2,1) both;
  animation-delay:var(--node-delay);
  transition:left .58s cubic-bezier(.4,0,.2,1),top .58s cubic-bezier(.4,0,.2,1),opacity .3s ease .15s,transform .58s cubic-bezier(.4,0,.2,1);
}

.pfConstellation[data-node-count="7"] .pfSystemNode {
  width:140px;
  min-height:58px;
  padding:9px 11px;
}

.pfConstNodes .pfSystemNode>i {
  width:7px;
  height:7px;
  right:10px;
  top:10px;
  background:var(--node-accent);
  box-shadow:0 0 0 4px rgba(21,87,214,.08);
  animation:pfConstSignal 2.5s ease-in-out infinite;
  animation-delay:var(--node-delay);
}

.pfConstNodes .pfSystemNode strong {
  max-width:118px;
  padding-right:9px;
  color:#11161c;
  font-size:12px;
  line-height:1.12;
  text-wrap:balance;
}

.pfConstellation[data-node-count="7"] .pfSystemNode strong {
  max-width:108px;
  font-size:11px;
}

.pfConstNodes .pfSystemNode small {
  margin-top:5px;
  color:#647484;
  font-size:9px;
  line-height:1.25;
}

.pfConstellation .pfControlCenter {
  z-index:4;
  width:286px;
  min-height:124px;
  padding:18px 21px;
  border:2px solid var(--pf-yellow);
  border-radius:5px;
  box-shadow:0 20px 42px rgba(26,46,68,.17);
  transition:opacity .34s ease .14s,transform .6s cubic-bezier(.4,0,.2,1);
}

.pfHeroVisual[data-view="control"] .pfConstNodes .pfSystemNode {
  left:50%;
  top:50%;
  opacity:0;
  transform:translate(-50%,-50%) scale(.42);
  animation:none;
}

.pfHeroVisual[data-view="control"] .pfConstLine {
  opacity:0;
  stroke-dashoffset:90;
}

.pfHeroVisual[data-view="control"] .pfControlCenter {
  opacity:0;
  transform:translate(-50%,-50%) scale(.72);
}

.pfHeroControlPreview {
  opacity:0;
  clip-path:inset(48% 48% 48% 48%);
  transform:scale(.985);
  transition:clip-path .72s cubic-bezier(.2,.8,.2,1),opacity .28s ease .2s,transform .72s cubic-bezier(.2,.8,.2,1);
}

.pfHeroVisual[data-view="control"] .pfHeroControlPreview {
  opacity:1;
  clip-path:inset(0 0 0 0);
  transform:scale(1);
}

.pfHeroVisual[data-view="map"] .pfConstellation {
  z-index:1;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  background:var(--pf-node-canvas-surface,#f7f9fb);
  transition:none;
}

.pfHeroVisual[data-view="map"] .pfHeroControlPreview {
  z-index:0;
  opacity:0;
  visibility:hidden;
  clip-path:inset(0 0 0 0);
  transform:none;
  pointer-events:none;
  transition:none;
  background:#f5f7f9;
}

.pfHeroVisual[data-view="control"] .pfConstellation {
  z-index:4;
  opacity:1;
  visibility:visible;
  pointer-events:none;
  background:transparent;
  transition:none;
}

.pfHeroVisual[data-view="control"] .pfHeroControlPreview {
  z-index:2;
  opacity:1;
  visibility:visible;
  clip-path:inset(0 0 0 0);
  transform:none;
  pointer-events:none;
  transition:none;
  background:#f5f7f9;
}

.pfHeroControlPreview::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  opacity:0;
  pointer-events:none;
  background:var(--pf-node-canvas-surface,#f7f9fb);
  transform:scale(1.025);
  transform-origin:center;
  will-change:opacity,transform;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfHeroControlPreview::before {
  animation:pfControlCanvasBridge 7s cubic-bezier(.2,.7,.2,1) both;
}

.pfHeroControlPreview img {
  background:#f5f7f9;
}

.pfHeroControlPreview figure.active {
  opacity:1;
  visibility:visible;
  transform:none;
  animation:none;
}

.pfConstellationBackdrop {
  transition:opacity .42s ease .12s;
}

.pfHeroVisual[data-view="control"] .pfConstellationBackdrop {
  opacity:0;
}

.pfControlReveal {
  position:absolute;
  z-index:3;
  left:var(--pf-control-art-left,0px);
  top:var(--pf-control-art-top,0px);
  width:var(--pf-control-art-width,100%);
  height:var(--pf-control-art-height,100%);
  pointer-events:none;
  overflow:hidden;
}

.pfControlReveal i {
  position:absolute;
  inset:0;
  display:block;
  opacity:0;
  visibility:visible;
  background-image:var(--pf-control-image);
  background-repeat:no-repeat;
  background-position:0 0;
  background-size:100% 100%;
  clip-path:var(--region-clip,inset(100% 0 0 0));
  will-change:opacity;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfHeroControlPreview figure.active>img {
  opacity:0;
}

.pfHeroVisual[data-industry="logistics"] .pfControlReveal i {
  --pf-control-image:url("/assets/pilot-factory/control-center-logistics-v6.jpg?v=6");
}

.pfHeroVisual[data-industry="manufacturing"] .pfControlReveal i {
  --pf-control-image:url("/assets/pilot-factory/control-center-manufacturing-v6.jpg?v=6");
}

.pfHeroVisual[data-industry="retail"] .pfControlReveal i {
  --pf-control-image:url("/assets/pilot-factory/control-center-retail-v6.jpg?v=6");
}

.pfHeroVisual[data-industry="agency"] .pfControlReveal i {
  --pf-control-image:url("/assets/pilot-factory/control-center-client-pilot-v6.jpg?v=6");
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfControlReveal i {
  animation:
    pfControlElementReveal .78s cubic-bezier(.2,.75,.25,1) var(--reveal-delay) both,
    pfControlElementExit .68s cubic-bezier(.4,0,.2,1) var(--exit-delay) forwards;
}

.pfControlReveal [data-region="header"] { --reveal-delay:.18s; --exit-delay:5.58s; }
.pfControlReveal [data-region="navigation"] { --reveal-delay:.38s; --exit-delay:5.98s; }
.pfControlReveal [data-region="context"] { --reveal-delay:.58s; --exit-delay:5.78s; }
.pfControlReveal [data-region="workspace"] { --reveal-delay:.78s; --exit-delay:5.38s; }
.pfControlReveal [data-region="action"] { --reveal-delay:.98s; --exit-delay:5.15s; }
.pfControlReveal [data-region="metrics"] { --reveal-delay:1.18s; --exit-delay:6.18s; }

/* Each artwork uses its own real panel boundaries. The image regions fade;
   no generic white rectangles are placed over unrelated controls. */
.pfHeroVisual[data-industry="logistics"] .pfControlReveal [data-region="header"] { --region-clip:inset(0 0 88.8% 0); }
.pfHeroVisual[data-industry="logistics"] .pfControlReveal [data-region="navigation"] { --region-clip:inset(11.2% 93.3% 1% 0); }
.pfHeroVisual[data-industry="logistics"] .pfControlReveal [data-region="workspace"] { --region-clip:inset(11.2% 23.3% 14.7% 6.7%); }
.pfHeroVisual[data-industry="logistics"] .pfControlReveal [data-region="action"] { --region-clip:inset(11.2% 0 14.7% 76.7%); }
.pfHeroVisual[data-industry="logistics"] .pfControlReveal [data-region="metrics"] { --region-clip:inset(85.3% 0 1% 6.7%); }

.pfHeroVisual[data-industry="manufacturing"] .pfControlReveal [data-region="header"] { --region-clip:inset(0 0 90.1% 0); }
.pfHeroVisual[data-industry="manufacturing"] .pfControlReveal [data-region="navigation"] { --region-clip:inset(9.9% 93.3% 13% 0); }
.pfHeroVisual[data-industry="manufacturing"] .pfControlReveal [data-region="workspace"] { --region-clip:inset(9.9% 28.3% 13% 6.7%); }
.pfHeroVisual[data-industry="manufacturing"] .pfControlReveal [data-region="action"] { --region-clip:inset(9.9% 0 13% 71.7%); }
.pfHeroVisual[data-industry="manufacturing"] .pfControlReveal [data-region="metrics"] { --region-clip:inset(87% 0 1% 0); }

.pfHeroVisual[data-industry="retail"] .pfControlReveal [data-region="header"] { --region-clip:inset(0 0 90.8% 0); }
.pfHeroVisual[data-industry="retail"] .pfControlReveal [data-region="navigation"] { --region-clip:inset(9.2% 93.1% 1% 0); }
.pfHeroVisual[data-industry="retail"] .pfControlReveal [data-region="workspace"] { --region-clip:inset(10.4% 26% 16.2% 6.9%); }
.pfHeroVisual[data-industry="retail"] .pfControlReveal [data-region="action"] { --region-clip:inset(10.4% 0 8.4% 74%); }
.pfHeroVisual[data-industry="retail"] .pfControlReveal [data-region="metrics"] { --region-clip:inset(83.8% 26% 2% 6.9%); }

.pfHeroVisual[data-industry="agency"] .pfControlReveal [data-region="header"] { --region-clip:inset(0 0 90.2% 0); }
.pfHeroVisual[data-industry="agency"] .pfControlReveal [data-region="navigation"] { --region-clip:inset(10.4% 93.4% 6.6% 0); }
.pfHeroVisual[data-industry="agency"] .pfControlReveal [data-region="context"] { --region-clip:inset(10.4% 74.5% 6.6% 6.5%); }
.pfHeroVisual[data-industry="agency"] .pfControlReveal [data-region="workspace"] { --region-clip:inset(10.4% 24% 23.2% 25.5%); }
.pfHeroVisual[data-industry="agency"] .pfControlReveal [data-region="action"] { --region-clip:inset(10.4% 0 6.6% 76%); }
.pfHeroVisual[data-industry="agency"] .pfControlReveal [data-region="metrics"] { --region-clip:inset(76.8% 24% 6.6% 25.5%); }

/* Live overlays make each flattened control-center artwork feel active without obscuring it. */
.pfControlMotion {
  --motion-main-left:6.7%;
  --motion-main-top:11.2%;
  --motion-main-width:70%;
  --motion-main-height:74.1%;
  --motion-action-left:76.7%;
  --motion-action-top:11.2%;
  --motion-action-width:23.3%;
  --motion-action-height:74.1%;
  --motion-metrics-left:6.7%;
  --motion-metrics-top:85.3%;
  --motion-metrics-width:93.3%;
  --motion-metrics-height:13.7%;
  --motion-signal-left:67.5%;
  --motion-signal-top:49%;
  --motion-signal-width:14%;
  position:absolute;
  z-index:4;
  left:var(--pf-control-art-left,0px);
  top:var(--pf-control-art-top,0px);
  width:var(--pf-control-art-width,100%);
  height:var(--pf-control-art-height,100%);
  opacity:0;
  overflow:hidden;
  pointer-events:none;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfControlMotion {
  opacity:1;
}

.pfHeroVisual[data-industry="manufacturing"] .pfControlMotion {
  --motion-main-left:6.7%;
  --motion-main-top:9.9%;
  --motion-main-width:65%;
  --motion-main-height:77.1%;
  --motion-action-left:71.7%;
  --motion-action-top:9.9%;
  --motion-action-width:28.3%;
  --motion-action-height:77.1%;
  --motion-metrics-left:0%;
  --motion-metrics-top:87%;
  --motion-metrics-width:100%;
  --motion-metrics-height:12%;
  --motion-signal-left:63.5%;
  --motion-signal-top:49%;
  --motion-signal-width:16%;
}

.pfHeroVisual[data-industry="retail"] .pfControlMotion {
  --motion-main-left:6.9%;
  --motion-main-top:10.4%;
  --motion-main-width:67.1%;
  --motion-main-height:73.4%;
  --motion-action-left:74%;
  --motion-action-top:10.4%;
  --motion-action-width:26%;
  --motion-action-height:81.2%;
  --motion-metrics-left:6.9%;
  --motion-metrics-top:83.8%;
  --motion-metrics-width:67.1%;
  --motion-metrics-height:14.2%;
  --motion-signal-left:66%;
  --motion-signal-top:48%;
  --motion-signal-width:15%;
}

.pfHeroVisual[data-industry="agency"] .pfControlMotion {
  --motion-main-left:25.5%;
  --motion-main-top:10.4%;
  --motion-main-width:50.5%;
  --motion-main-height:66.4%;
  --motion-action-left:76%;
  --motion-action-top:10.4%;
  --motion-action-width:24%;
  --motion-action-height:83%;
  --motion-metrics-left:25.5%;
  --motion-metrics-top:76.8%;
  --motion-metrics-width:50.5%;
  --motion-metrics-height:16.6%;
  --motion-signal-left:67.5%;
  --motion-signal-top:46%;
  --motion-signal-width:14%;
}

.pfControlMotion span {
  position:absolute;
  display:block;
  pointer-events:none;
}

.pfControlMotion [data-motion="workspace"] {
  left:var(--motion-main-left);
  top:var(--motion-main-top);
  width:var(--motion-main-width);
  height:var(--motion-main-height);
  overflow:hidden;
  border-radius:2.5%;
}

.pfControlMotion [data-motion="workspace"]::after {
  content:"";
  width:100%;
  height:200%;
  position:absolute;
  inset:0 0 auto;
  opacity:0;
  background:linear-gradient(180deg,transparent 0%,transparent 47%,rgba(120,165,228,.06) 48.5%,rgba(120,165,228,.42) 50%,rgba(243,200,45,.18) 50.7%,transparent 52%,transparent 100%);
  transform:translate3d(0,-72%,0);
  will-change:opacity,transform;
}

.pfControlMotion [data-motion="action"] {
  left:var(--motion-action-left);
  top:var(--motion-action-top);
  width:var(--motion-action-width);
  height:var(--motion-action-height);
  opacity:0;
  border:1px solid rgba(120,165,228,.58);
  border-radius:3%;
  background:radial-gradient(circle at 50% 12%,rgba(243,200,45,.11),rgba(120,165,228,.035) 34%,transparent 58%);
  will-change:opacity,transform,box-shadow;
}

.pfControlMotion [data-motion="signal"] {
  left:var(--motion-signal-left);
  top:var(--motion-signal-top);
  width:var(--motion-signal-width);
  height:2px;
  opacity:0;
  border-radius:999px;
  background:linear-gradient(90deg,transparent 0%,transparent 37%,rgba(243,200,45,.92) 49%,rgba(120,165,228,.82) 53%,transparent 64%,transparent 100%);
  background-size:240% 100%;
  box-shadow:0 0 8px rgba(120,165,228,.24);
  will-change:opacity,background-position;
}

.pfControlMotion [data-motion="metrics"] {
  left:var(--motion-metrics-left);
  top:var(--motion-metrics-top);
  width:var(--motion-metrics-width);
  height:var(--motion-metrics-height);
  overflow:hidden;
  border-radius:5%;
}

.pfControlMotion [data-motion="metrics"]::after {
  content:"";
  width:28%;
  position:absolute;
  inset:0 auto 0 -34%;
  opacity:0;
  background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.42) 43%,rgba(120,165,228,.18) 55%,transparent 100%);
  transform:translate3d(0,0,0);
  will-change:opacity,transform;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfControlMotion [data-motion="workspace"]::after {
  animation:pfControlWorkspaceScan 7s cubic-bezier(.22,.62,.25,1) both;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfControlMotion [data-motion="action"] {
  animation:pfControlActionPulse 7s ease both;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfControlMotion [data-motion="signal"] {
  animation:pfControlSignalSweep 7s ease both;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfControlMotion [data-motion="metrics"]::after {
  animation:pfControlMetricSheen 7s ease both;
}

.pfHeroVisual[data-view="control"] .pfConstNodes .pfSystemNode {
  animation:pfConstNodeReturn .72s cubic-bezier(.4,0,.2,1) both;
}

@keyframes pfConstNodeReturn {
  0% {
    left:var(--node-x);
    top:var(--node-y);
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
  }
  100% {
    left:50%;
    top:50%;
    opacity:0;
    transform:translate(-50%,-50%) scale(.42);
  }
}

@keyframes pfControlElementReveal {
  from { opacity:0; }
  to { opacity:1; }
}

@keyframes pfControlElementExit {
  from { opacity:1; }
  to { opacity:0; }
}

@keyframes pfControlCanvasBridge {
  0%,69% {
    opacity:0;
    transform:scale(1.025);
  }
  78% {
    opacity:.18;
  }
  91% {
    opacity:.78;
  }
  100% {
    opacity:1;
    transform:scale(1);
  }
}

@keyframes pfControlWorkspaceScan {
  0%,30% {
    opacity:0;
    transform:translate3d(0,-72%,0);
  }
  36% {
    opacity:.58;
  }
  64% {
    opacity:.38;
    transform:translate3d(0,8%,0);
  }
  72%,100% {
    opacity:0;
    transform:translate3d(0,15%,0);
  }
}

@keyframes pfControlActionPulse {
  0%,32% {
    opacity:0;
    transform:scale(.997);
    box-shadow:0 0 0 0 rgba(120,165,228,0);
  }
  39% {
    opacity:.52;
    transform:scale(1);
    box-shadow:0 0 0 1px rgba(243,200,45,.15),0 0 24px rgba(120,165,228,.14);
  }
  49% {
    opacity:.18;
    box-shadow:0 0 0 3px rgba(120,165,228,.06),0 0 12px rgba(120,165,228,.08);
  }
  57% {
    opacity:.48;
    box-shadow:0 0 0 1px rgba(243,200,45,.16),0 0 28px rgba(120,165,228,.15);
  }
  69% {
    opacity:.16;
  }
  74%,100% {
    opacity:0;
    transform:scale(1.003);
    box-shadow:0 0 0 0 rgba(120,165,228,0);
  }
}

@keyframes pfControlSignalSweep {
  0%,39% {
    opacity:0;
    background-position:125% 0;
  }
  45% {
    opacity:.62;
  }
  66% {
    opacity:.42;
    background-position:-125% 0;
  }
  72%,100% {
    opacity:0;
    background-position:-125% 0;
  }
}

@keyframes pfControlMetricSheen {
  0%,47% {
    opacity:0;
    transform:translate3d(0,0,0);
  }
  52% {
    opacity:.48;
  }
  68% {
    opacity:.34;
    transform:translate3d(470%,0,0);
  }
  74%,100% {
    opacity:0;
    transform:translate3d(470%,0,0);
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfControlMotion {
    display:none !important;
  }

  .pfHeroControlPreview::before {
    animation:none !important;
    opacity:0;
  }

  .pfHeroVisual.is-phase-cycle[data-view="control"] .pfHeroControlPreview figure.active>img {
    opacity:1;
  }

  .pfHeroVisual[data-view="control"] .pfControlReveal i {
    display:none;
  }
}

@keyframes pfConstNodeArrive {
  from {
    left:50%;
    top:50%;
    opacity:0;
    transform:translate(-50%,-50%) scale(.5);
  }
  to {
    left:var(--node-x);
    top:var(--node-y);
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
  }
}

@keyframes pfConstLineFlow {
  from { stroke-dashoffset:0; }
  to { stroke-dashoffset:-72; }
}

@keyframes pfConstSignal {
  0%,100% { opacity:.45; transform:scale(.8); }
  50% { opacity:1; transform:scale(1.12); }
}

@media (max-width:900px) {
  .pfHero h1 {
    font-size:39px;
  }

  .pfConstNodes .pfSystemNode {
    width:136px;
  }

  .pfConstellation[data-node-count="7"] .pfSystemNode {
    width:126px;
  }

  .pfConstellation .pfControlCenter {
    width:244px;
  }
}

@media (max-width:600px) {
  .pfHero {
    min-height:680px;
    max-height:820px;
  }

  .pfHeroGrid {
    grid-template-rows:minmax(350px,52%) minmax(300px,48%);
  }

  .pfHeroCopy {
    padding:18px 18px 14px;
  }

  .pfHero h1 {
    font-size:30px;
    line-height:1.03;
  }

  .pfHeroLead {
    font-size:12.5px;
    line-height:1.4;
  }

  .pfHeroLeadWide {
    display:none;
  }

  .pfHeroLeadCompact {
    display:inline;
  }

  .pfConstNodes .pfSystemNode,
  .pfConstellation[data-node-count="7"] .pfSystemNode {
    width:80px;
    min-height:43px;
    padding:6px 7px;
    border-top-width:2px;
  }

  .pfConstellation[data-node-count="7"] .pfSystemNode {
    width:73px;
  }

  .pfConstNodes .pfSystemNode strong,
  .pfConstellation[data-node-count="7"] .pfSystemNode strong {
    max-width:64px;
    padding-right:5px;
    font-size:8.5px;
    line-height:1.08;
  }

  .pfConstNodes .pfSystemNode small {
    display:none;
  }

  .pfConstNodes .pfSystemNode>i {
    width:5px;
    height:5px;
    right:5px;
    top:5px;
    box-shadow:none;
  }

  .pfConstellation .pfControlCenter {
    width:150px;
    min-height:76px;
    padding:10px 12px;
  }

  .pfConstellation .pfControlCenter>span {
    font-size:6.5px;
  }

  .pfConstellation .pfControlCenter>strong {
    margin-top:4px;
    font-size:13px;
  }

  .pfConstellation .pfControlCenter>b {
    margin-top:7px;
    font-size:6.5px;
  }

  .pfConstellationBackdrop i:nth-child(1) {
    width:88%;
    height:78%;
  }

  .pfConstellationBackdrop i:nth-child(2) {
    width:68%;
    height:58%;
  }

  .pfConstellationBackdrop i:nth-child(3) {
    width:45%;
    height:38%;
  }

  .pfConstLine {
    stroke-width:1.1;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfConstNodes .pfSystemNode,
  .pfConstLine,
  .pfConstNodes .pfSystemNode>i {
    animation:none;
  }

  .pfHeroControlPreview,
  .pfConstNodes .pfSystemNode,
  .pfConstLine,
  .pfConstellation .pfControlCenter {
    transition:none;
  }

  .pfHeroVisual[data-view="map"] .pfConstellation {
    background:rgba(247,249,251,.58);
  }

  .pfHeroVisual[data-view="map"] .pfHeroControlPreview figure.active {
    animation:none;
    opacity:.42;
  }
}

@media (min-width:901px) {
  .pfHero h1 {
    margin-top:20px;
  }

  .pfHeroLead {
    margin-top:20px;
  }

  .pfHeroActions {
    margin-top:22px;
  }

  .pfHeroProof {
    margin-top:22px;
  }
}

.pfHeroControlPreview,
.pfHeroControlPreview img {
  background:#f4f8fb;
}
/* Sequential pilot-factory path: the rail and stations show the four delivery stages. */
.pfHeroProofSpeed dt {
  display:flex;
  align-items:center;
  gap:8px;
  text-transform:none;
}

.pfHeroProofSpeed dt strong {
  flex:0 0 auto;
  color:var(--pf-green);
  font-size:27px;
  font-weight:900;
  line-height:1;
}

.pfHeroProofSpeed dt span {
  max-width:115px;
  font-size:9px;
  font-weight:900;
  line-height:1.18;
  text-transform:uppercase;
}

.pfHow {
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.pfHow::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:-72px;
  opacity:.34;
  background-image:
    linear-gradient(rgba(116,184,255,.11) 1px, transparent 1px),
    linear-gradient(90deg,rgba(116,184,255,.08) 1px, transparent 1px);
  background-size:72px 72px;
  animation:pfHowLineDrift 18s linear infinite;
  pointer-events:none;
}

.pfHow .pfWidth {
  position:relative;
  z-index:1;
}

.pfFlow {
  position:relative;
  border-top:0;
}

.pfFlow::before,
.pfFlow::after {
  content:"";
  position:absolute;
  z-index:0;
  left:12.5%;
  right:12.5%;
  top:43px;
  height:1px;
  pointer-events:none;
}

.pfFlow::before {
  background:rgba(177,209,246,.42);
}

.pfFlow::after {
  height:2px;
  background:var(--pf-green);
  box-shadow:0 0 12px rgba(75,226,139,.58);
  transform:scaleX(0);
  transform-origin:left center;
  animation:pfFlowRail 8s linear infinite;
}

.pfFlow li {
  position:relative;
  z-index:1;
  text-align:center;
}

.pfFlow li>span {
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto;
  border:1px solid rgba(177,209,246,.66);
  border-radius:50%;
  color:#b9d0ec;
  background:var(--pf-blue-deep);
  animation:pfFlowStation 8s linear infinite both;
  animation-delay:var(--pf-flow-delay,0s);
}

.pfFlow li:nth-child(1) { --pf-flow-delay:0s; }
.pfFlow li:nth-child(2) { --pf-flow-delay:2s; }
.pfFlow li:nth-child(3) { --pf-flow-delay:4s; }
.pfFlow li:nth-child(4) { --pf-flow-delay:6s; }

.pfFlow strong {
  margin-top:30px;
  animation:pfFlowLabel 8s linear infinite both;
  animation-delay:var(--pf-flow-delay,0s);
}

.pfFlow p {
  max-width:220px;
  margin-right:auto;
  margin-left:auto;
}

@keyframes pfHowLineDrift {
  from { background-position:0 0,0 0; }
  to { background-position:72px 72px,72px 0; }
}

@keyframes pfFlowRail {
  0% { opacity:0; transform:scaleX(0); }
  4% { opacity:1; transform:scaleX(0); }
  78% { opacity:1; transform:scaleX(1); }
  92% { opacity:1; transform:scaleX(1); }
  100% { opacity:0; transform:scaleX(1); }
}

@keyframes pfFlowStation {
  0%,15% {
    border-color:var(--pf-green);
    color:#06140d;
    background:var(--pf-green);
    box-shadow:0 0 0 5px rgba(75,226,139,.12),0 0 20px rgba(75,226,139,.5);
  }
  24%,100% {
    border-color:rgba(177,209,246,.66);
    color:#b9d0ec;
    background:var(--pf-blue-deep);
    box-shadow:none;
  }
}

@keyframes pfFlowLabel {
  0%,15% { color:var(--pf-green); }
  24%,100% { color:#fff; }
}

@keyframes pfFlowRailVertical {
  0% { opacity:0; transform:scaleY(0); }
  4% { opacity:1; transform:scaleY(0); }
  78% { opacity:1; transform:scaleY(1); }
  92% { opacity:1; transform:scaleY(1); }
  100% { opacity:0; transform:scaleY(1); }
}

@media (max-width:900px) {
  .pfFlow {
    grid-template-columns:1fr;
    padding:14px 0;
  }

  .pfFlow::before,
  .pfFlow::after {
    left:18px;
    right:auto;
    top:38px;
    bottom:38px;
    width:1px;
    height:auto;
  }

  .pfFlow::after {
    width:2px;
    transform:scaleY(0);
    transform-origin:center top;
    animation-name:pfFlowRailVertical;
  }

  .pfFlow li,
  .pfFlow li:nth-child(3),
  .pfFlow li:nth-child(4) {
    min-height:116px;
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    align-content:center;
    column-gap:16px;
    padding:16px 0;
    border:0;
    text-align:left;
  }

  .pfFlow li>span {
    grid-column:1;
    grid-row:1 / span 2;
    margin:0;
  }

  .pfFlow strong {
    grid-column:2;
    margin:2px 0 0;
  }

  .pfFlow p {
    grid-column:2;
    max-width:none;
    margin:8px 0 0;
  }
}

@media (max-width:600px) {
  .pfHeroProofSpeed dt {
    gap:4px;
  }

  .pfHeroProofSpeed dt strong {
    font-size:20px;
  }

  .pfHeroProofSpeed dt span {
    max-width:82px;
    font-size:7px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfHow::before,
  .pfFlow::after,
  .pfFlow li>span,
  .pfFlow strong {
    animation:none;
  }

  .pfFlow::after {
    opacity:.58;
    transform:scaleX(1);
  }

  .pfFlow li>span {
    border-color:rgba(75,226,139,.72);
    color:#06140d;
    background:var(--pf-green);
    box-shadow:0 0 0 4px rgba(75,226,139,.08);
  }
}

@media (max-width:900px) and (prefers-reduced-motion:reduce) {
  .pfFlow::after {
    transform:scaleY(1);
  }
}
/* Animated equal-scope effort comparison: both runs start together, AgentMotion finishes first. */
.pfEffortRow>div {
  overflow:hidden;
  background-color:#e7e9e9;
  background-image:repeating-linear-gradient(
    90deg,
    transparent 0,
    transparent calc(20% - 1px),
    rgba(17,24,32,.1) calc(20% - 1px),
    rgba(17,24,32,.1) 20%
  );
}

.pfEffortRow i {
  width:0;
  position:relative;
  opacity:1;
  will-change:width,opacity;
}

.pfEffortRow i::after {
  content:"";
  width:8px;
  height:8px;
  position:absolute;
  right:7px;
  top:50%;
  border:2px solid rgba(255,255,255,.92);
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 4px rgba(255,255,255,.18);
  transform:translateY(-50%);
}

.pfEffortRow.custom i {
  width:0;
  color:#252d34;
  animation:pfEffortCustomRun 9s cubic-bezier(.2,.72,.22,1) infinite;
}

.pfEffortRow.factory i {
  width:0;
  color:#7f6400;
  animation:pfEffortFactoryRun 9s cubic-bezier(.2,.72,.22,1) infinite;
}

.pfEffortRow>span {
  animation:pfEffortValueIdle 9s linear infinite;
}

.pfEffortRow.custom>span {
  animation-name:pfEffortCustomValue;
}

.pfEffortRow.factory>span {
  animation-name:pfEffortFactoryValue;
}

@keyframes pfEffortCustomRun {
  0%,7% { width:0; opacity:1; }
  70%,94% { width:100%; opacity:1; }
  98% { width:100%; opacity:0; }
  100% { width:0; opacity:0; }
}

@keyframes pfEffortFactoryRun {
  0%,7% { width:0; opacity:1; }
  43%,94% { width:60%; opacity:1; }
  98% { width:60%; opacity:0; }
  100% { width:0; opacity:0; }
}

@keyframes pfEffortCustomValue {
  0%,64% { color:#7b858d; opacity:.62; transform:translateX(-4px); }
  70%,94% { color:#11161c; opacity:1; transform:translateX(0); }
  98%,100% { opacity:.35; }
}

@keyframes pfEffortFactoryValue {
  0%,37% { color:#7b858d; opacity:.62; transform:translateX(-4px); }
  43%,94% { color:#11161c; opacity:1; transform:translateX(0); }
  98%,100% { opacity:.35; }
}

@media (prefers-reduced-motion:reduce) {
  .pfEffortRow i,
  .pfEffortRow>span {
    animation:none;
  }

  .pfEffortRow.custom i { width:100%; }
  .pfEffortRow.factory i { width:60%; }
}


/* The autonomous adaptation stage is the commercial center of the factory flow. */
.pfFlowAutonomous {
  background:rgba(71,215,232,.055);
  box-shadow:inset 0 0 0 1px rgba(71,215,232,.16);
  animation:pfAutonomousStep 8s linear infinite both;
  animation-delay:4s;
}

.pfFlowAutonomous p {
  color:#d8e7f6;
}

@keyframes pfAutonomousStep {
  0%,15% {
    background:rgba(71,215,232,.14);
    box-shadow:inset 0 0 0 1px rgba(71,215,232,.46),0 0 30px rgba(71,215,232,.08);
  }
  24%,100% {
    background:rgba(71,215,232,.055);
    box-shadow:inset 0 0 0 1px rgba(71,215,232,.16);
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfFlowAutonomous {
    animation:none;
    background:rgba(71,215,232,.09);
    box-shadow:inset 0 0 0 1px rgba(71,215,232,.28);
  }
}

/* Concrete multi-node composition: one Control Center coordinates specialist software systems. */
.pfSystemComposition {
  margin-top:24px;
}

.pfSystemHub {
  width:min(320px,100%);
  min-height:112px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  margin:0 auto;
  padding:18px 22px;
  border:1px solid #53606a;
  border-top:6px solid var(--pf-blue);
  border-radius:5px;
  color:#fff;
  background:#111820;
  text-align:center;
}

.pfSystemHub>span,
.pfSystemSpecialists section>span,
.pfSystemBus>div>span {
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}

.pfSystemHub>span {
  color:#7da7ff;
}

.pfSystemHub>strong {
  margin-top:8px;
  font-size:19px;
  line-height:1.15;
}

.pfSystemHub>small {
  margin-top:7px;
  color:#a9b4be;
  font-size:10.5px;
  line-height:1.38;
}

.pfSystemBus {
  height:104px;
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:14px 58px 0;
}

.pfSystemBus::before {
  content:"";
  height:1px;
  position:absolute;
  left:16.666%;
  right:16.666%;
  bottom:0;
  background:#89949d;
}

.pfSystemBus::after {
  content:"";
  width:1px;
  position:absolute;
  left:50%;
  top:0;
  bottom:0;
  background:#89949d;
}

.pfSystemBus>div {
  position:relative;
  z-index:2;
  align-self:start;
  padding:8px 9px;
  border:1px solid #a9b0b5;
  background:#fff;
  text-align:center;
}

.pfSystemBus>div>span {
  display:block;
  color:var(--pf-blue);
}

.pfSystemBus>div+div>span {
  color:#258b4c;
}

.pfSystemBus>div>strong {
  display:block;
  margin-top:4px;
  font-size:9px;
  line-height:1.2;
}

.pfSystemBus>i {
  width:8px;
  height:8px;
  position:absolute;
  z-index:3;
  bottom:-4px;
  border:2px solid #fff;
  border-radius:50%;
  background:var(--pf-blue);
  box-shadow:0 0 0 1px var(--pf-blue);
  animation:pfSystemBranchPulse 3.6s ease-in-out infinite;
}

.pfSystemBus>i.erp {
  left:calc(16.666% - 4px);
}

.pfSystemBus>i.crm {
  left:calc(50% - 4px);
  background:var(--pf-green);
  box-shadow:0 0 0 1px var(--pf-green);
  animation-delay:-1.2s;
}

.pfSystemBus>i.simulator {
  left:calc(83.333% - 4px);
  background:var(--pf-yellow);
  box-shadow:0 0 0 1px var(--pf-yellow);
  animation-delay:-2.4s;
}

.pfSystemSpecialists {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.pfSystemSpecialists section {
  min-width:0;
  min-height:154px;
  position:relative;
  padding:15px 13px;
  border:1px solid #9aa3a9;
  border-top:5px solid var(--pf-blue);
  border-radius:4px;
  background:#f3f4f2;
}

.pfSystemSpecialists section::before {
  content:"";
  width:1px;
  height:11px;
  position:absolute;
  left:50%;
  top:-16px;
  background:#89949d;
}

.pfSystemSpecialists section.crm {
  border-top-color:var(--pf-green);
}

.pfSystemSpecialists section.simulator {
  border-top-color:var(--pf-yellow);
}

.pfSystemSpecialists section>span {
  color:var(--pf-blue);
}

.pfSystemSpecialists section.crm>span {
  color:#258b4c;
}

.pfSystemSpecialists section.simulator>span {
  color:#7c6500;
}

.pfSystemSpecialists section>strong {
  display:block;
  margin-top:12px;
  font-size:13px;
  line-height:1.25;
}

.pfSystemSpecialists section>small {
  display:block;
  margin-top:9px;
  color:#657079;
  font-size:10.5px;
  line-height:1.4;
}

.pfNodeComposition>.pfSystemComposition+p {
  margin-top:28px;
}

@keyframes pfSystemBranchPulse {
  0%,100% { opacity:.35; transform:scale(.72); }
  45%,60% { opacity:1; transform:scale(1.18); }
}

@media (max-width:600px) {
  .pfSystemHub {
    min-height:0;
    padding:16px;
    text-align:left;
  }

  .pfSystemBus {
    height:auto;
    grid-template-columns:1fr;
    padding:14px 0;
  }

  .pfSystemBus::before,
  .pfSystemBus::after,
  .pfSystemBus>i,
  .pfSystemSpecialists section::before {
    display:none;
  }

  .pfSystemBus>div {
    text-align:left;
  }

  .pfSystemSpecialists {
    grid-template-columns:1fr;
  }

  .pfSystemSpecialists section {
    min-height:0;
    padding:15px 16px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfSystemBus>i {
    animation:none;
    opacity:.85;
    transform:none;
  }
}

/* Five-scene technical architecture sequence. */
.pfTechnicalBody>.pfTechStage {
  display:block;
  overflow:hidden;
  border:1px solid #3d4853;
  background:#0b1016;
}

.pfTechStageNav {
  min-height:74px;
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  border-bottom:1px solid #3d4853;
}

.pfTechStageNav>span {
  display:flex;
  align-items:center;
  padding:0 20px;
  color:#8f9ba6;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}

.pfTechTabs {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  border-left:1px solid #3d4853;
}

.pfTechTabs button {
  min-width:0;
  min-height:73px;
  position:relative;
  display:flex;
  align-items:center;
  gap:9px;
  padding:0 13px;
  overflow:hidden;
  border:0;
  color:#77838e;
  background:#0b1016;
  cursor:pointer;
  text-align:left;
}

.pfTechTabs button+button {
  border-left:1px solid #303943;
}

.pfTechTabs button b {
  color:#66727d;
  font-size:10px;
}

.pfTechTabs button span {
  min-width:0;
  overflow:hidden;
  font-size:10px;
  font-weight:850;
  text-overflow:ellipsis;
  text-transform:uppercase;
  white-space:nowrap;
}

.pfTechTabs button>i {
  height:2px;
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  background:var(--pf-cyan);
  transform:scaleX(0);
  transform-origin:left center;
}

.pfTechTabs button.active {
  color:#fff;
  background:#111a23;
}

.pfTechTabs button.active b {
  color:var(--pf-cyan);
}

.pfTechTabs button.active>i {
  animation:pfTechTabProgress var(--pf-tech-slide-duration,45s) linear forwards;
}

@keyframes pfTechTabProgress {
  from { transform:scaleX(0); }
  to { transform:scaleX(1); }
}

.pfTechSlides {
  height:520px;
  position:relative;
  overflow:hidden;
}

.pfTechnicalBody .pfTechSlide {
  height:100%;
  min-height:0;
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  align-items:center;
  gap:36px;
  padding:38px;
  border:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateX(26px);
  transition:opacity .42s ease,transform .42s ease,visibility 0s linear .42s;
}

.pfTechnicalBody .pfTechSlide+.pfTechSlide {
  border:0;
}

.pfTechnicalBody .pfTechSlide.active {
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(0);
  transition-delay:0s;
}

.pfTechCopy {
  min-width:0;
}

.pfTechCopy>span {
  color:var(--pf-cyan);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}

.pfTechCopy h3 {
  max-width:470px;
  margin:17px 0 0;
  color:#fff;
  font-size:34px;
  line-height:1.06;
}

.pfTechCopy>p {
  max-width:500px;
  margin:17px 0 0;
  color:#aeb9c3;
  font-size:13.5px;
  line-height:1.56;
}

.pfTechCopy ul {
  margin:22px 0 0;
  padding:0;
  border-top:1px solid #3b4650;
  list-style:none;
}

.pfTechCopy li {
  min-height:34px;
  position:relative;
  display:flex;
  align-items:center;
  padding:7px 0 7px 20px;
  border-bottom:1px solid #2e3740;
  color:#d8dee4;
  font-size:11px;
  line-height:1.35;
}

.pfTechCopy li::before {
  content:"";
  width:7px;
  height:7px;
  position:absolute;
  left:1px;
  border:1px solid var(--pf-green);
  border-radius:50%;
  box-shadow:0 0 0 3px rgba(64,210,122,.07);
}

.pfTechScene {
  min-width:0;
  min-height:350px;
  position:relative;
  overflow:hidden;
  padding:24px;
  border:1px solid #46525d;
  background-color:#0f1720;
  background-image:
    linear-gradient(rgba(125,167,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(125,167,255,.045) 1px,transparent 1px);
  background-size:28px 28px;
}

.pfTechScene>* {
  position:relative;
  z-index:1;
}

/* Scene 01: a node as a complete operating instance. */
.pfTechInstanceScene {
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.pfTechWindow {
  position:relative;
  overflow:hidden;
  border:1px solid #5a6670;
  background:#0a0f14;
}

.pfTechWindow::after {
  content:"";
  height:1px;
  position:absolute;
  left:0;
  right:0;
  top:0;
  opacity:0;
  background:var(--pf-cyan);
  box-shadow:0 0 13px rgba(71,215,232,.72);
}

.pfTechSlide.active .pfTechWindow::after {
  animation:pfTechInstanceScan 4.8s ease-in-out infinite;
}

@keyframes pfTechInstanceScan {
  0% { top:42px; opacity:0; }
  10%,85% { opacity:.8; }
  100% { top:calc(100% - 1px); opacity:0; }
}

.pfTechWindowBar {
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:0 14px;
  border-bottom:1px solid #4a5560;
  color:#dce3e9;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
}

.pfTechWindowBar b {
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--pf-green);
  font-size:9px;
}

.pfTechWindowBar b i {
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--pf-green);
  box-shadow:0 0 0 4px rgba(64,210,122,.1);
}

.pfTechInstanceStack {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  background:#3b4650;
}

.pfTechInstanceStack>div {
  min-height:92px;
  padding:15px;
  background:#111a23;
}

.pfTechInstanceStack>div>span {
  color:#8f9ca8;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}

.pfTechInstanceStack>div>strong {
  display:block;
  margin-top:9px;
  color:#f4f7f9;
  font-size:12px;
  line-height:1.3;
}

.pfTechInstanceStack .intelligence {
  border-left:4px solid var(--pf-green);
}

.pfTechInstanceStack .application {
  border-left:4px solid var(--pf-cyan);
}

.pfTechInstanceStack .tools {
  border-left:4px solid var(--pf-yellow);
}

.pfTechInstanceStack .workspace {
  border-left:4px solid #7da7ff;
}

.pfTechSlide.active .pfTechInstanceStack>div {
  animation:pfTechLayerPulse 6.5s ease-in-out infinite;
}

.pfTechSlide.active .pfTechInstanceStack>div:nth-child(2) { animation-delay:.45s; }
.pfTechSlide.active .pfTechInstanceStack>div:nth-child(3) { animation-delay:.9s; }
.pfTechSlide.active .pfTechInstanceStack>div:nth-child(4) { animation-delay:1.35s; }

@keyframes pfTechLayerPulse {
  0%,100% { background:#111a23; }
  18%,34% { background:#172737; }
}

.pfTechSceneFooter {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:12px;
  border-top:1px solid #43505b;
  border-bottom:1px solid #43505b;
}

.pfTechSceneFooter span {
  min-height:38px;
  display:grid;
  place-items:center;
  color:#8f9ca8;
  font-size:8.5px;
  font-weight:850;
  text-align:center;
  text-transform:uppercase;
}

.pfTechSceneFooter span+span {
  border-left:1px solid #43505b;
}

/* Scene 02: runtime gates and deterministic acceptance. */
.pfTechGateScene {
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.pfTechGateTrack {
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}

.pfTechGateTrack::before {
  content:"";
  height:1px;
  position:absolute;
  z-index:0;
  left:5%;
  right:5%;
  top:50%;
  background:#67737d;
}

.pfTechGateTrack>div {
  min-height:82px;
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:9px 6px;
  border:1px solid #56626d;
  background:#111a23;
  text-align:center;
}

.pfTechGateTrack>div b {
  color:#7da7ff;
  font-size:9px;
}

.pfTechGateTrack>div span {
  margin-top:8px;
  color:#dce3e8;
  font-size:9px;
  font-weight:850;
  line-height:1.2;
}

.pfTechGateTrack>div.validator {
  border-color:#b99c24;
  background:#252313;
}

.pfTechGateTrack>div.validator b {
  color:var(--pf-yellow);
}

.pfTechGateTrack>div.accepted {
  border-color:#2f9d59;
  background:#12251b;
}

.pfTechGateTrack>div.accepted b {
  color:var(--pf-green);
}

.pfTechGateTrack>i {
  width:9px;
  height:9px;
  position:absolute;
  z-index:3;
  left:4%;
  top:calc(50% - 4px);
  border:2px solid #fff;
  border-radius:50%;
  opacity:0;
  background:var(--pf-cyan);
  box-shadow:0 0 12px rgba(71,215,232,.7);
}

.pfTechSlide.active .pfTechGateTrack>i {
  animation:pfTechGateTravel 5.4s ease-in-out infinite;
}

@keyframes pfTechGateTravel {
  0%,7% { left:4%; opacity:0; }
  12% { opacity:1; }
  76% { left:94%; opacity:1; background:var(--pf-green); }
  90%,100% { left:94%; opacity:0; }
}

.pfTechGateFacts,
.pfTechRepairLoop {
  margin-top:18px;
  padding:13px 15px;
  border:1px solid #46525d;
  background:#0b1117;
}

.pfTechGateFacts>span,
.pfTechRepairLoop>span {
  color:var(--pf-cyan);
  font-size:8.5px;
  font-weight:900;
  text-transform:uppercase;
}

.pfTechGateFacts>strong,
.pfTechRepairLoop>strong {
  display:block;
  margin-top:7px;
  color:#dce3e8;
  font-size:10px;
  line-height:1.35;
}

.pfTechRepairLoop {
  border-color:#72433f;
  background:#1e1415;
}

.pfTechRepairLoop>span {
  color:#ef8177;
}

/* Scene 03: typed communication between bounded nodes. */
.pfTechCommsScene {
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.pfTechCommsHub {
  width:min(270px,100%);
  min-height:88px;
  margin:0 auto;
  padding:14px 18px;
  border:1px solid #5d6974;
  border-top:5px solid var(--pf-blue);
  background:#111a23;
  text-align:center;
}

.pfTechCommsHub>span,
.pfTechCommsNodes span {
  color:#7da7ff;
  font-size:8.5px;
  font-weight:900;
  text-transform:uppercase;
}

.pfTechCommsHub>strong {
  display:block;
  margin-top:7px;
  color:#fff;
  font-size:17px;
}

.pfTechCommsHub>small {
  display:block;
  margin-top:5px;
  color:#93a0aa;
  font-size:9.5px;
  line-height:1.3;
}

.pfTechCommsBus {
  height:76px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
}

.pfTechCommsBus::before {
  content:"";
  height:1px;
  position:absolute;
  left:16.666%;
  right:16.666%;
  bottom:0;
  background:#66727c;
}

.pfTechCommsBus::after {
  content:"";
  width:1px;
  position:absolute;
  left:50%;
  top:0;
  bottom:0;
  background:#66727c;
}

.pfTechCommsBus>span {
  position:relative;
  z-index:2;
  padding:5px 8px;
  border:1px solid #4a5661;
  color:#9eabb5;
  background:#0f1720;
  font-size:8px;
  font-weight:850;
  text-transform:uppercase;
}

.pfTechCommsBus>i {
  width:8px;
  height:8px;
  position:absolute;
  z-index:3;
  bottom:-4px;
  border:2px solid #fff;
  border-radius:50%;
  opacity:.45;
  background:var(--pf-cyan);
}

.pfTechCommsBus>i.one { left:calc(16.666% - 4px); }
.pfTechCommsBus>i.two { left:calc(50% - 4px); }
.pfTechCommsBus>i.three { left:calc(83.333% - 4px); }

.pfTechSlide.active .pfTechCommsBus>i {
  animation:pfTechCommsPulse 2.8s ease-in-out infinite;
}

.pfTechSlide.active .pfTechCommsBus>i.two { animation-delay:-.9s; }
.pfTechSlide.active .pfTechCommsBus>i.three { animation-delay:-1.8s; }

@keyframes pfTechCommsPulse {
  0%,100% { opacity:.35; transform:scale(.7); box-shadow:none; }
  45%,60% { opacity:1; transform:scale(1.25); box-shadow:0 0 12px rgba(71,215,232,.75); }
}

.pfTechCommsNodes {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}

.pfTechCommsNodes>div {
  min-width:0;
  min-height:112px;
  position:relative;
  padding:13px 11px;
  border:1px solid #58646e;
  border-top:4px solid var(--pf-blue);
  background:#111a23;
}

.pfTechCommsNodes>div::before {
  content:"";
  width:1px;
  height:10px;
  position:absolute;
  left:50%;
  top:-14px;
  background:#66727c;
}

.pfTechCommsNodes>div.crm { border-top-color:var(--pf-green); }
.pfTechCommsNodes>div.simulator { border-top-color:var(--pf-yellow); }
.pfTechCommsNodes>div.crm span { color:var(--pf-green); }
.pfTechCommsNodes>div.simulator span { color:var(--pf-yellow); }

.pfTechCommsNodes strong {
  display:block;
  margin-top:9px;
  color:#fff;
  font-size:11px;
  line-height:1.25;
}

.pfTechCommsNodes small {
  display:block;
  margin-top:7px;
  color:#8f9ca7;
  font-size:9px;
}

/* Scene 04: managed sharing and private deployment. */
.pfTechDeployScene {
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.pfTechDeployPackage {
  width:min(310px,100%);
  min-height:94px;
  margin:0 auto;
  padding:15px 18px;
  border:1px solid #5b6772;
  border-top:5px solid var(--pf-green);
  background:#111a23;
  text-align:center;
}

.pfTechDeployPackage>span,
.pfTechDeployChoices span,
.pfTechLibraryShelf>span,
.pfTechSpecializer>span,
.pfTechLibraryOutput>span {
  color:var(--pf-green);
  font-size:8.5px;
  font-weight:900;
  text-transform:uppercase;
}

.pfTechDeployPackage>strong,
.pfTechDeployChoices strong {
  display:block;
  margin-top:7px;
  color:#fff;
  font-size:13px;
}

.pfTechDeployPackage>small,
.pfTechDeployChoices small {
  display:block;
  margin-top:6px;
  color:#8f9ca7;
  font-size:9px;
  line-height:1.35;
}

.pfTechDeployRail {
  height:66px;
  position:relative;
}

.pfTechDeployRail::before {
  content:"";
  height:1px;
  position:absolute;
  left:25%;
  right:25%;
  bottom:0;
  background:#6a7680;
}

.pfTechDeployRail::after {
  content:"";
  width:1px;
  position:absolute;
  left:50%;
  top:0;
  bottom:0;
  background:#6a7680;
}

.pfTechDeployRail>i {
  width:9px;
  height:9px;
  position:absolute;
  left:calc(50% - 4px);
  top:18px;
  border:2px solid #fff;
  border-radius:50%;
  background:var(--pf-green);
}

.pfTechSlide.active .pfTechDeployRail>i {
  animation:pfTechDeployPulse 2.4s ease-in-out infinite;
}

@keyframes pfTechDeployPulse {
  0%,100% { opacity:.4; transform:scale(.75); box-shadow:none; }
  45%,60% { opacity:1; transform:scale(1.25); box-shadow:0 0 14px rgba(64,210,122,.7); }
}

.pfTechDeployChoices {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.pfTechDeployChoices>div {
  min-height:128px;
  position:relative;
  padding:15px;
  border:1px solid #58646e;
  background:#111a23;
}

.pfTechDeployChoices>div::before {
  content:"";
  width:1px;
  height:11px;
  position:absolute;
  left:50%;
  top:-12px;
  background:#6a7680;
}

.pfTechDeployChoices>div.managed {
  border-top:4px solid var(--pf-cyan);
}

.pfTechDeployChoices>div.managed span {
  color:var(--pf-cyan);
}

.pfTechDeployChoices>div.private {
  border-top:4px solid var(--pf-yellow);
}

.pfTechDeployChoices>div.private span {
  color:var(--pf-yellow);
}

/* Scene 05: working-system library and autonomous specialization. */
.pfTechLibraryScene {
  display:grid;
  grid-template-columns:.9fr 68px 1.1fr;
  grid-template-areas:
    "shelf arrow specializer"
    "shelf arrow output"
    "return return return";
  align-items:center;
  gap:12px;
}

.pfTechLibraryShelf {
  grid-area:shelf;
  align-self:stretch;
  padding:15px;
  border:1px solid #56626d;
  background:#111a23;
}

.pfTechLibraryShelf>span {
  color:var(--pf-cyan);
}

.pfTechLibraryShelf>div {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-top:14px;
}

.pfTechLibraryShelf b {
  min-height:56px;
  display:grid;
  place-items:center;
  padding:7px;
  border:1px solid #495560;
  color:#dbe2e7;
  background:#0b1117;
  font-size:9px;
  line-height:1.2;
  text-align:center;
}

.pfTechSlide.active .pfTechLibraryShelf b {
  animation:pfTechLibraryPulse 6.5s ease-in-out infinite;
}

.pfTechSlide.active .pfTechLibraryShelf b:nth-child(2) { animation-delay:.4s; }
.pfTechSlide.active .pfTechLibraryShelf b:nth-child(3) { animation-delay:.8s; }
.pfTechSlide.active .pfTechLibraryShelf b:nth-child(4) { animation-delay:1.2s; }

@keyframes pfTechLibraryPulse {
  0%,100% { border-color:#495560; background:#0b1117; }
  16%,30% { border-color:#3378df; background:#10213a; }
}

.pfTechLibraryArrow {
  grid-area:arrow;
  text-align:center;
}

.pfTechLibraryArrow>span {
  display:block;
  color:#87949f;
  font-size:7.5px;
  font-weight:850;
  line-height:1.25;
  text-transform:uppercase;
}

.pfTechLibraryArrow>i {
  width:42px;
  height:1px;
  display:block;
  position:relative;
  margin:12px auto 0;
  background:#72808b;
}

.pfTechLibraryArrow>i::after {
  content:"";
  position:absolute;
  right:-1px;
  top:-3px;
  border-width:4px 0 4px 6px;
  border-style:solid;
  border-color:transparent transparent transparent #72808b;
}

.pfTechSlide.active .pfTechLibraryArrow>i {
  animation:pfTechLibraryArrow 1.8s ease-in-out infinite;
}

@keyframes pfTechLibraryArrow {
  0%,100% { opacity:.35; transform:translateX(-5px); }
  50% { opacity:1; transform:translateX(4px); }
}

.pfTechSpecializer {
  grid-area:specializer;
  padding:14px;
  border:1px solid #2c8c54;
  background:#10231a;
}

.pfTechSpecializer>strong,
.pfTechLibraryOutput>strong {
  display:block;
  margin-top:7px;
  color:#fff;
  font-size:12px;
}

.pfTechSpecializer>small {
  display:block;
  margin-top:6px;
  color:#9eb0a5;
  font-size:8.5px;
  line-height:1.3;
}

.pfTechLibraryOutput {
  grid-area:output;
  padding:14px;
  border:1px solid #596571;
  background:#111a23;
}

.pfTechLibraryOutput>span {
  color:var(--pf-yellow);
}

.pfTechLibraryReturn {
  grid-area:return;
  padding:11px 14px;
  border:1px solid #46525d;
  color:#aeb9c3;
  background:#0b1117;
  font-size:9.5px;
  line-height:1.35;
  text-align:center;
}

.pfTechSlide.active .pfTechLibraryReturn {
  animation:pfTechReturnGlow 3.2s ease-in-out infinite;
}

@keyframes pfTechReturnGlow {
  0%,100% { border-color:#46525d; color:#aeb9c3; }
  45%,60% { border-color:#2f9d59; color:#dff7e8; }
}

@media (max-width:900px) {
  .pfTechStageNav {
    grid-template-columns:150px minmax(0,1fr);
  }

  .pfTechStageNav>span {
    padding:0 14px;
  }

  .pfTechTabs button {
    justify-content:center;
    padding:0 8px;
  }

  .pfTechTabs button span {
    display:none;
  }

  .pfTechnicalBody .pfTechSlide {
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    gap:24px;
    padding:28px;
  }

  .pfTechCopy h3 {
    font-size:29px;
  }
}

@media (max-width:600px) {
  .pfTechStageNav {
    grid-template-columns:1fr;
  }

  .pfTechStageNav>span {
    min-height:42px;
    border-bottom:1px solid #3d4853;
  }

  .pfTechTabs {
    border-left:0;
  }

  .pfTechTabs button {
    min-height:54px;
  }

  .pfTechSlides {
    height:820px;
  }

  .pfTechnicalBody .pfTechSlide {
    grid-template-columns:1fr;
    align-content:start;
    gap:20px;
    padding:23px 18px;
  }

  .pfTechCopy h3 {
    margin-top:13px;
    font-size:27px;
  }

  .pfTechCopy>p {
    margin-top:13px;
    font-size:12.5px;
    line-height:1.48;
  }

  .pfTechCopy ul {
    margin-top:16px;
  }

  .pfTechCopy li {
    min-height:29px;
    padding-top:5px;
    padding-bottom:5px;
    font-size:10.5px;
  }

  .pfTechScene {
    min-height:300px;
    padding:16px;
  }

  .pfTechInstanceStack>div {
    min-height:77px;
    padding:12px;
  }

  .pfTechGateTrack {
    gap:5px;
  }

  .pfTechGateTrack>div {
    min-height:72px;
    padding:7px 3px;
  }

  .pfTechGateTrack>div span {
    font-size:7.5px;
  }

  .pfTechCommsBus {
    height:62px;
  }

  .pfTechCommsNodes {
    gap:6px;
  }

  .pfTechCommsNodes>div {
    min-height:96px;
    padding:10px 8px;
  }

  .pfTechCommsNodes strong {
    font-size:9.5px;
  }

  .pfTechDeployChoices {
    gap:8px;
  }

  .pfTechDeployChoices>div {
    min-height:120px;
    padding:12px;
  }

  .pfTechLibraryScene {
    min-height:350px;
    grid-template-columns:1fr;
    grid-template-areas:
      "shelf"
      "arrow"
      "specializer"
      "output"
      "return";
    align-content:start;
  }

  .pfTechLibraryShelf>div {
    grid-template-columns:repeat(4,1fr);
  }

  .pfTechLibraryShelf b {
    min-height:48px;
    padding:5px 3px;
    font-size:7.5px;
  }

  .pfTechLibraryArrow>span {
    display:none;
  }

  .pfTechLibraryArrow>i {
    width:1px;
    height:22px;
    margin:0 auto;
  }

  .pfTechLibraryArrow>i::after {
    right:-3px;
    top:auto;
    bottom:-1px;
    border-width:6px 4px 0;
    border-color:#72808b transparent transparent;
  }

  .pfTechSlide.active .pfTechLibraryArrow>i {
    animation-name:pfTechLibraryArrowVertical;
  }

  @keyframes pfTechLibraryArrowVertical {
    0%,100% { opacity:.35; transform:translateY(-4px); }
    50% { opacity:1; transform:translateY(4px); }
  }
}

@media (max-width:380px) {
  .pfTechSlides {
    height:870px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfTechnicalBody .pfTechSlide {
    transition:none;
  }

  .pfTechTabs button.active>i {
    animation:none;
    transform:scaleX(1);
  }

  .pfTechSlide.active .pfTechWindow::after,
  .pfTechSlide.active .pfTechInstanceStack>div,
  .pfTechSlide.active .pfTechGateTrack>i,
  .pfTechSlide.active .pfTechCommsBus>i,
  .pfTechSlide.active .pfTechDeployRail>i,
  .pfTechSlide.active .pfTechLibraryShelf b,
  .pfTechSlide.active .pfTechLibraryArrow>i,
  .pfTechSlide.active .pfTechLibraryReturn {
    animation:none;
  }
}

/* Scroll-triggered landing entrances. Layout dimensions remain unchanged. */
body.landing #landingPage.pfRevealReady .pfReveal {
  opacity:0;
  transform:translate3d(0,var(--pf-reveal-distance,24px),0);
  transition:
    opacity .68s cubic-bezier(.2,.72,.2,1) var(--pf-reveal-delay,0ms),
    transform .82s cubic-bezier(.2,.72,.2,1) var(--pf-reveal-delay,0ms);
}

body.landing #landingPage.pfRevealReady .pfReveal--lift {
  --pf-reveal-distance:36px;
}


body.landing #landingPage.pfRevealReady .pfReveal.is-visible {
  opacity:1;
  transform:translate3d(0,0,0);
}

@media (max-width:700px) {
  body.landing #landingPage.pfRevealReady .pfReveal {
    --pf-reveal-distance:16px;
    transition-duration:.56s,.68s;
  }

  body.landing #landingPage.pfRevealReady .pfReveal--lift {
    --pf-reveal-distance:22px;
  }
}

@media (prefers-reduced-motion:reduce) {
  body.landing #landingPage.pfRevealReady .pfReveal {
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
}

/* Child-clear four-system flow: question -> specialist facts -> one decision. */
.pfSimpleSystemFlow {
  margin-top:20px;
}

.pfSimpleQuestion,
.pfSimpleAnswer {
  width:min(390px,100%);
  min-height:58px;
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 auto;
  padding:11px 15px;
  border:1px solid #9fa9b1;
  border-radius:5px;
  background:#f7f9fa;
}

.pfSimpleQuestion {
  border-left:5px solid var(--pf-blue);
}

.pfSimpleAnswer {
  margin-top:10px;
  border-color:#75a98a;
  border-left:5px solid var(--pf-green);
  background:#eff8f2;
}

.pfSimpleQuestion>span,
.pfSimpleAnswer>span {
  flex:0 0 auto;
  color:var(--pf-blue);
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}

.pfSimpleAnswer>span {
  color:#237a43;
}

.pfSimpleQuestion>strong,
.pfSimpleAnswer>strong {
  min-width:0;
  font-size:13px;
  line-height:1.25;
}

.pfSimpleAnswer>small {
  margin-left:auto;
  color:#536a5c;
  font-size:9.5px;
  line-height:1.25;
  text-align:right;
}

.pfSimpleFlowCanvas {
  height:310px;
  position:relative;
  isolation:isolate;
}

.pfSimpleFlowLines {
  width:100%;
  height:100%;
  position:absolute;
  inset:0;
  z-index:0;
  overflow:visible;
}

.pfSimpleFlowLines path {
  fill:none;
  vector-effect:non-scaling-stroke;
}

.pfSimpleFlowLines marker path {
  fill:#8b969e;
}

.pfSimpleBase {
  stroke:#adb5bb;
  stroke-width:1.5;
}

.pfSimpleSignal {
  opacity:0;
  stroke-width:4;
  stroke-linecap:round;
  stroke-dasharray:8 12;
}

.pfSimpleSignal.question,
.pfSimpleSignal.erp {
  stroke:var(--pf-blue);
}

.pfSimpleSignal.crm {
  stroke:var(--pf-green);
}

.pfSimpleSignal.simulator {
  stroke:var(--pf-yellow);
}

.pfSimpleNode {
  width:29%;
  min-height:105px;
  position:absolute;
  z-index:2;
  top:180px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:12px 13px;
  border:1px solid #a3abb1;
  border-top:5px solid var(--pf-blue);
  border-radius:5px;
  background:#f7f9fa;
  text-align:center;
}

.pfSimpleNode.center {
  width:34%;
  min-height:92px;
  top:28px;
  left:33%;
  border-color:#303b45;
  border-top-color:var(--pf-blue);
  color:#fff;
  background:#111820;
}

.pfSimpleNode.erp {
  left:0;
}

.pfSimpleNode.simulator {
  right:0;
  left:auto;
  border-top-color:var(--pf-yellow);
  background:#fffbea;
}

.pfSimpleNode.crm {
  right:auto;
  left:35.5%;
  border-top-color:var(--pf-green);
  background:#f1f9f3;
}

.pfSimpleNode>span {
  color:var(--pf-blue);
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}

.pfSimpleNode.center>span {
  color:#80aaff;
}

.pfSimpleNode.crm>span {
  color:#237a43;
}

.pfSimpleNode.simulator>span {
  color:#756000;
}

.pfSimpleNode>strong {
  display:block;
  margin-top:7px;
  font-size:12.5px;
  line-height:1.2;
}

.pfSimpleNode.center>strong {
  font-size:16px;
}

.pfSimpleNode>small {
  display:block;
  margin-top:5px;
  color:#69747c;
  font-size:9.5px;
  line-height:1.3;
}

.pfSimpleNode.center>small {
  color:#aab5be;
}

.pfSimpleNode>b {
  display:inline-flex;
  align-items:center;
  align-self:center;
  gap:5px;
  margin-top:9px;
  padding:5px 7px;
  border:1px solid #c4cbd0;
  border-radius:3px;
  color:#37424b;
  background:#fff;
  font-size:8.5px;
  line-height:1.15;
}

.pfSimpleNode>b>i {
  width:6px;
  height:6px;
  flex:0 0 auto;
  border-radius:50%;
  background:currentColor;
}

.pfSimpleNode.crm>b {
  color:#237a43;
}

.pfSimpleNode.simulator>b {
  color:#756000;
}

.pfSimpleFlowSteps {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  margin:12px 0 0;
  padding:0;
  border:1px solid #bdc4c8;
  list-style:none;
}

.pfSimpleFlowSteps li {
  min-width:0;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 5px;
  background:#fff;
  text-align:center;
}

.pfSimpleFlowSteps li+li {
  border-left:1px solid #d1d6d9;
}

.pfSimpleFlowSteps li>span {
  width:18px;
  height:18px;
  display:grid;
  flex:0 0 auto;
  place-items:center;
  border:1px solid #9ea7ae;
  border-radius:50%;
  color:#5e6971;
  font-size:8px;
  font-weight:900;
}

.pfSimpleFlowSteps li>strong {
  min-width:0;
  font-size:9px;
  line-height:1;
  text-transform:uppercase;
}

.pfNodeComposition>.pfSimpleSystemFlow+p {
  margin-top:20px;
  padding-top:17px;
  border-top:1px solid #c2c8cc;
  font-size:12.5px;
  line-height:1.52;
}

.pfNodeComposition>.pfSimpleSystemFlow+p>strong {
  color:var(--pf-blue);
}

.pfNodeComposition.is-visible .pfSimpleQuestion,
.pfNodeComposition.is-visible .pfSimpleFlowSteps li.question {
  animation:pfSimpleQuestionCycle 9s ease-in-out infinite;
}

.pfNodeComposition.is-visible .pfSimpleNode.center {
  animation:pfSimpleCenterCycle 9s ease-in-out infinite;
}

.pfNodeComposition.is-visible .pfSimpleNode.erp,
.pfNodeComposition.is-visible .pfSimpleFlowSteps li.erp {
  animation:pfSimpleErpCycle 9s ease-in-out infinite;
}

.pfNodeComposition.is-visible .pfSimpleNode.crm,
.pfNodeComposition.is-visible .pfSimpleFlowSteps li.crm {
  animation:pfSimpleCrmCycle 9s ease-in-out infinite;
}

.pfNodeComposition.is-visible .pfSimpleNode.simulator,
.pfNodeComposition.is-visible .pfSimpleFlowSteps li.simulator {
  animation:pfSimpleSimulatorCycle 9s ease-in-out infinite;
}

.pfNodeComposition.is-visible .pfSimpleAnswer,
.pfNodeComposition.is-visible .pfSimpleFlowSteps li.decision {
  animation:pfSimpleDecisionCycle 9s ease-in-out infinite;
}

.pfNodeComposition.is-visible .pfSimpleSignal {
  animation:pfSimpleSignalDash .75s linear infinite;
}

.pfNodeComposition.is-visible .pfSimpleSignal.question {
  animation:pfSimpleSignalDash .75s linear infinite,pfSimpleSignalQuestion 9s linear infinite;
}

.pfNodeComposition.is-visible .pfSimpleSignal.erp {
  animation:pfSimpleSignalDash .75s linear infinite,pfSimpleSignalErp 9s linear infinite;
}

.pfNodeComposition.is-visible .pfSimpleSignal.crm {
  animation:pfSimpleSignalDash .75s linear infinite,pfSimpleSignalCrm 9s linear infinite;
}

.pfNodeComposition.is-visible .pfSimpleSignal.simulator {
  animation:pfSimpleSignalDash .75s linear infinite,pfSimpleSignalSimulator 9s linear infinite;
}

@keyframes pfSimpleQuestionCycle {
  0%,13% { border-color:var(--pf-blue); box-shadow:0 0 0 3px rgba(44,103,224,.14); transform:translateY(-2px); }
  18%,100% { box-shadow:none; transform:translateY(0); }
}

@keyframes pfSimpleCenterCycle {
  0%,7%,72%,100% { box-shadow:none; transform:translateY(0); }
  10%,68% { box-shadow:0 0 0 3px rgba(44,103,224,.13),0 12px 26px rgba(25,54,97,.12); transform:translateY(-2px); }
}

@keyframes pfSimpleErpCycle {
  0%,15%,34%,100% { box-shadow:none; transform:translateY(0); }
  19%,31% { border-color:var(--pf-blue); box-shadow:0 0 0 3px rgba(44,103,224,.14); transform:translateY(-3px); }
}

@keyframes pfSimpleCrmCycle {
  0%,31%,50%,100% { box-shadow:none; transform:translateY(0); }
  35%,47% { border-color:var(--pf-green); box-shadow:0 0 0 3px rgba(56,183,100,.15); transform:translateY(-3px); }
}

@keyframes pfSimpleSimulatorCycle {
  0%,47%,67%,100% { box-shadow:none; transform:translateY(0); }
  51%,64% { border-color:#c7a10a; box-shadow:0 0 0 3px rgba(232,194,40,.17); transform:translateY(-3px); }
}

@keyframes pfSimpleDecisionCycle {
  0%,64%,92%,100% { box-shadow:none; transform:translateY(0); }
  69%,88% { border-color:var(--pf-green); box-shadow:0 0 0 3px rgba(56,183,100,.16),0 12px 24px rgba(27,108,58,.09); transform:translateY(-3px); }
}

@keyframes pfSimpleSignalDash {
  from { stroke-dashoffset:40; }
  to { stroke-dashoffset:0; }
}

@keyframes pfSimpleSignalQuestion {
  0%,14% { opacity:1; }
  18%,100% { opacity:0; }
}

@keyframes pfSimpleSignalErp {
  0%,16%,33%,100% { opacity:0; }
  20%,30% { opacity:1; }
}

@keyframes pfSimpleSignalCrm {
  0%,32%,49%,100% { opacity:0; }
  36%,46% { opacity:1; }
}

@keyframes pfSimpleSignalSimulator {
  0%,48%,66%,100% { opacity:0; }
  52%,63% { opacity:1; }
}

@media (max-width:600px) {
  .pfSimpleQuestion,
  .pfSimpleAnswer {
    width:100%;
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
    text-align:left;
  }

  .pfSimpleAnswer>small {
    margin-left:0;
    text-align:left;
  }

  .pfSimpleFlowCanvas {
    height:auto;
    display:grid;
    gap:10px;
    padding:16px 0 8px 24px;
  }

  .pfSimpleFlowCanvas::before {
    content:"";
    width:2px;
    position:absolute;
    left:8px;
    top:18px;
    bottom:10px;
    background:#b0b8be;
  }

  .pfSimpleFlowLines {
    display:none;
  }

  .pfSimpleNode,
  .pfSimpleNode.center,
  .pfSimpleNode.erp,
  .pfSimpleNode.crm,
  .pfSimpleNode.simulator {
    width:100%;
    min-height:0;
    position:relative;
    inset:auto;
    padding:12px 14px;
    text-align:left;
  }

  .pfSimpleNode::before {
    content:"";
    width:10px;
    height:10px;
    position:absolute;
    left:-20px;
    top:50%;
    border:2px solid #fff;
    border-radius:50%;
    background:var(--pf-blue);
    box-shadow:0 0 0 1px var(--pf-blue);
    transform:translateY(-50%);
  }

  .pfSimpleNode.crm::before {
    background:var(--pf-green);
    box-shadow:0 0 0 1px var(--pf-green);
  }

  .pfSimpleNode.simulator::before {
    background:var(--pf-yellow);
    box-shadow:0 0 0 1px #b99a1a;
  }

  .pfSimpleNode>b {
    align-self:flex-start;
  }

  .pfSimpleFlowSteps li {
    min-height:48px;
    flex-direction:column;
    gap:3px;
    padding:6px 2px;
  }

  .pfSimpleFlowSteps li>strong {
    font-size:8px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfSimpleQuestion,
  .pfSimpleAnswer,
  .pfSimpleNode,
  .pfSimpleFlowSteps li,
  .pfSimpleSignal {
    animation:none !important;
    transform:none !important;
  }

  .pfSimpleSignal {
    opacity:.55;
    stroke-dasharray:none;
  }
}

/* Four-step Pilot Factory cycle: every complete tile participates. */
.pfFlow::after,
.pfFlow li>span,
.pfFlow strong {
  animation:none;
}

.pfFlow li {
  --pf-flow-cycle-offset:0s;
  background:rgba(9,31,70,.12);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0);
}

.pfFlow li:nth-child(1) { --pf-flow-cycle-offset:0s; }
.pfFlow li:nth-child(2) { --pf-flow-cycle-offset:-8s; }
.pfFlow li:nth-child(3) { --pf-flow-cycle-offset:-6s; }
.pfFlow li:nth-child(4) { --pf-flow-cycle-offset:-4s; }

.pfFlow.is-visible::after {
  animation:pfFlowRailCycle 10s linear infinite;
}

.pfFlow.is-visible li {
  animation:pfFlowTileCycle 10s linear infinite both;
  animation-delay:var(--pf-flow-cycle-offset);
}

.pfFlow.is-visible li>span {
  animation:pfFlowStationCycle 10s linear infinite both;
  animation-delay:var(--pf-flow-cycle-offset);
}

.pfFlow.is-visible li>strong {
  animation:pfFlowLabelCycle 10s linear infinite both;
  animation-delay:var(--pf-flow-cycle-offset);
}

@keyframes pfFlowTileCycle {
  0%,17% {
    background:rgba(75,226,139,.12);
    box-shadow:
      inset 0 0 0 1px rgba(75,226,139,.42),
      0 0 28px rgba(75,226,139,.1);
    transform:translateY(-3px);
  }
  22%,100% {
    background:rgba(9,31,70,.12);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,0);
    transform:translateY(0);
  }
}

@keyframes pfFlowStationCycle {
  0%,17% {
    border-color:var(--pf-green);
    color:#06140d;
    background:var(--pf-green);
    box-shadow:0 0 0 5px rgba(75,226,139,.12),0 0 20px rgba(75,226,139,.5);
    transform:scale(1.08);
  }
  22%,100% {
    border-color:rgba(177,209,246,.66);
    color:#b9d0ec;
    background:var(--pf-blue-deep);
    box-shadow:none;
    transform:scale(1);
  }
}

@keyframes pfFlowLabelCycle {
  0%,17% {
    color:var(--pf-green);
  }
  22%,100% {
    color:#fff;
  }
}

@keyframes pfFlowRailCycle {
  0% {
    opacity:0;
    transform:scaleX(0);
  }
  4% {
    opacity:1;
    transform:scaleX(0);
  }
  80% {
    opacity:1;
    transform:scaleX(1);
  }
  92% {
    opacity:1;
    transform:scaleX(1);
  }
  100% {
    opacity:0;
    transform:scaleX(1);
  }
}

@keyframes pfFlowRailCycleVertical {
  0% {
    opacity:0;
    transform:scaleY(0);
  }
  4% {
    opacity:1;
    transform:scaleY(0);
  }
  80% {
    opacity:1;
    transform:scaleY(1);
  }
  92% {
    opacity:1;
    transform:scaleY(1);
  }
  100% {
    opacity:0;
    transform:scaleY(1);
  }
}

@media (max-width:900px) {
  .pfFlow.is-visible::after {
    animation-name:pfFlowRailCycleVertical;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfFlow.is-visible::after,
  .pfFlow.is-visible li,
  .pfFlow.is-visible li>span,
  .pfFlow.is-visible li>strong {
    animation:none !important;
    transform:none !important;
  }

  .pfFlow li {
    background:rgba(75,226,139,.055);
    box-shadow:inset 0 0 0 1px rgba(75,226,139,.16);
  }
}



/* Child-clear technical architecture scenes: one idea, one flow, one result. */
.pfTechEasyScene {
  min-height:350px;
  display:block;
  padding:20px;
  color:#18232d;
  background:#f1f5f7;
  background-image:none;
}

.pfTechEasyScene>:not(.pfTechEasyVisual) {
  display:none !important;
}

.pfTechEasyVisual {
  min-height:308px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
}

.pfEasyHeadline,
.pfEasyOutcome {
  min-height:54px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:11px 14px;
  border:1px solid #aab4bb;
  border-left:5px solid var(--pf-blue);
  border-radius:5px;
  background:#fff;
}

.pfEasyHeadline>span,
.pfEasyOutcome>span,
.pfEasyNodeBox>span,
.pfEasyShelf>span,
.pfEasyRepair>span {
  flex:0 0 auto;
  color:#255bbd;
  font-size:9px;
  font-weight:900;
  letter-spacing:0;
  text-transform:uppercase;
}

.pfEasyHeadline>strong,
.pfEasyOutcome>strong {
  min-width:0;
  color:#17222b;
  font-size:14px;
  line-height:1.25;
}

.pfEasyOutcome {
  border-color:#75a98a;
  border-left-color:var(--pf-green);
  background:#eef8f1;
}

.pfEasyOutcome>span {
  color:#237a43;
}

.pfEasyNodeBox {
  padding:13px;
  border:2px solid #26333d;
  border-radius:6px;
  background:#fff;
}

.pfEasyNodeBox>span {
  display:block;
  padding-bottom:10px;
  color:#26333d;
  text-align:center;
}

.pfEasyNodeParts {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}

.pfEasyNodeParts>div,
.pfEasyLinear>li,
.pfEasyDeliveryChoices>div {
  --pf-easy-accent:var(--pf-blue);
  --pf-easy-wash:#edf3ff;
  min-width:0;
  position:relative;
  border:1px solid #aeb7bd;
  border-top:5px solid var(--pf-easy-accent);
  border-radius:5px;
  background:#fff;
}

.pfEasyNodeParts>div {
  min-height:92px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:10px 7px;
  text-align:center;
}

.pfEasyNodeParts b,
.pfEasyLinear b,
.pfEasyDeliveryChoices b {
  width:27px;
  height:27px;
  display:grid;
  flex:0 0 auto;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:var(--pf-easy-accent);
  font-size:8.5px;
  font-weight:900;
  line-height:1;
}

.pfEasyNodeParts strong,
.pfEasyLinear strong,
.pfEasyDeliveryChoices strong {
  display:block;
  margin-top:7px;
  color:#17222b;
  font-size:11.5px;
  line-height:1.18;
}

.pfEasyNodeParts small,
.pfEasyLinear small,
.pfEasyDeliveryChoices small {
  display:block;
  margin-top:4px;
  color:#65717a;
  font-size:9px;
  line-height:1.25;
}

.pfEasyAnimatedSteps>.blue,
.pfEasyAnimatedSteps .blue {
  --pf-easy-accent:#2c67e0;
  --pf-easy-wash:#edf3ff;
}

.pfEasyAnimatedSteps>.cyan,
.pfEasyAnimatedSteps .cyan {
  --pf-easy-accent:#168fa4;
  --pf-easy-wash:#eaf8fa;
}

.pfEasyAnimatedSteps>.yellow,
.pfEasyAnimatedSteps .yellow {
  --pf-easy-accent:#b28a08;
  --pf-easy-wash:#fff8df;
}

.pfEasyAnimatedSteps>.green,
.pfEasyAnimatedSteps .green {
  --pf-easy-accent:#2b8a50;
  --pf-easy-wash:#ebf8ef;
}

.pfEasyLinear {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin:0;
  padding:0;
  list-style:none;
}

.pfEasyLinear>li {
  min-height:102px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:11px 8px;
  text-align:center;
}

.pfEasyLinear>li:not(:last-child)::after {
  content:"→";
  position:absolute;
  z-index:4;
  right:-18px;
  top:50%;
  color:#7c8992;
  font-size:19px;
  font-weight:900;
  transform:translate(50%,-50%);
}

.pfTechSlide.active .pfEasyAnimatedSteps>* {
  animation:pfTechEasyStepCycle 8s ease-in-out infinite;
}

.pfTechSlide.active .pfEasyAnimatedSteps>*:nth-child(1) { animation-delay:0s; }
.pfTechSlide.active .pfEasyAnimatedSteps>*:nth-child(2) { animation-delay:-6s; }
.pfTechSlide.active .pfEasyAnimatedSteps>*:nth-child(3) { animation-delay:-4s; }
.pfTechSlide.active .pfEasyAnimatedSteps>*:nth-child(4) { animation-delay:-2s; }

@keyframes pfTechEasyStepCycle {
  0%,18% {
    border-color:var(--pf-easy-accent);
    background:var(--pf-easy-wash);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--pf-easy-accent) 16%,transparent),0 10px 18px rgba(21,38,52,.1);
    transform:translateY(-3px);
  }
  24%,100% {
    box-shadow:none;
    transform:translateY(0);
  }
}

.pfEasyRepair {
  min-height:52px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 13px;
  border:1px solid #d39a94;
  border-left:5px solid #cc5349;
  border-radius:5px;
  background:#fff2f0;
}

.pfEasyRepair>span {
  color:#a53e36;
}

.pfEasyRepair>strong {
  color:#6f2f2a;
  font-size:11px;
  line-height:1.3;
}

.pfTechSlide.active .pfEasyRepair {
  animation:pfTechEasyRepairCycle 8s ease-in-out infinite;
}

@keyframes pfTechEasyRepairCycle {
  0%,43%,76%,100% { box-shadow:none; transform:translateY(0); }
  50%,68% { box-shadow:0 0 0 3px rgba(204,83,73,.13); transform:translateY(-2px); }
}

.pfEasyDeliveryMap {
  position:relative;
  display:grid;
  gap:31px;
}

.pfEasyDeliveryStart {
  width:min(250px,100%);
  min-height:70px;
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:0 auto;
  padding:10px 14px;
  border:2px solid #2b8a50;
  border-radius:5px;
  background:#eef8f1;
  text-align:center;
}

.pfEasyDeliveryStart::after {
  content:"";
  width:2px;
  height:32px;
  position:absolute;
  left:50%;
  top:100%;
  background:#8d989f;
}

.pfEasyDeliveryStart>span {
  color:#237a43;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}

.pfEasyDeliveryStart>strong {
  margin-top:4px;
  color:#17222b;
  font-size:14px;
}

.pfEasyDeliveryStart>small {
  margin-top:3px;
  color:#5f6e65;
  font-size:9px;
}

.pfEasyDeliveryChoices {
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}

.pfEasyDeliveryChoices::before {
  content:"";
  height:2px;
  position:absolute;
  left:25%;
  right:25%;
  top:-16px;
  background:#8d989f;
}

.pfEasyDeliveryChoices>div {
  min-height:94px;
  display:grid;
  grid-template-columns:32px 1fr;
  grid-template-rows:auto auto;
  align-content:center;
  column-gap:9px;
  padding:11px 13px;
}

.pfEasyDeliveryChoices>div::before {
  content:"";
  width:2px;
  height:17px;
  position:absolute;
  left:50%;
  bottom:100%;
  background:#8d989f;
}

.pfEasyDeliveryChoices b {
  grid-row:1 / 3;
  align-self:center;
}

.pfEasyDeliveryChoices strong,
.pfEasyDeliveryChoices small {
  margin-top:0;
  text-align:left;
}

.pfEasyDeliveryChoices small {
  margin-top:3px;
}

.pfTechSlide.active .pfEasyDeliveryChoices>* {
  animation-name:pfTechEasyChoiceCycle;
  animation-duration:6s;
}

.pfTechSlide.active .pfEasyDeliveryChoices>*:nth-child(1) { animation-delay:0s; }
.pfTechSlide.active .pfEasyDeliveryChoices>*:nth-child(2) { animation-delay:-3s; }

@keyframes pfTechEasyChoiceCycle {
  0%,36% {
    border-color:var(--pf-easy-accent);
    background:var(--pf-easy-wash);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--pf-easy-accent) 16%,transparent);
    transform:translateY(-3px);
  }
  44%,100% {
    box-shadow:none;
    transform:translateY(0);
  }
}

.pfEasyShelf {
  min-height:63px;
  display:grid;
  grid-template-columns:100px 1fr;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid #aab4bb;
  border-left:5px solid var(--pf-blue);
  border-radius:5px;
  background:#fff;
}

.pfEasyShelf>div {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
}

.pfEasyShelf b {
  min-height:32px;
  display:grid;
  place-items:center;
  padding:5px;
  border:1px solid #b5bdc3;
  border-radius:3px;
  color:#46535d;
  background:#f5f7f8;
  font-size:8px;
  line-height:1.15;
  text-align:center;
}

.pfEasyShelf b:first-child {
  border-color:#2c67e0;
  color:#1f55bd;
  background:#edf3ff;
}

.pfEasyLibrarySteps>li {
  min-height:78px;
}

.pfEasyLibraryReturn {
  min-height:46px;
}

@media (max-width:600px) {
  .pfTechSlides {
    height:900px;
  }

  .pfTechEasyScene {
    min-height:370px;
    padding:14px;
  }

  .pfTechEasyVisual {
    min-height:342px;
    gap:10px;
  }

  .pfEasyHeadline,
  .pfEasyOutcome {
    min-height:0;
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
    padding:10px 12px;
  }

  .pfEasyHeadline>strong,
  .pfEasyOutcome>strong {
    font-size:12.5px;
  }

  .pfEasyNodeParts {
    grid-template-columns:1fr 1fr;
  }

  .pfEasyNodeParts>div {
    min-height:70px;
    display:grid;
    grid-template-columns:28px 1fr;
    grid-template-rows:auto auto;
    align-content:center;
    column-gap:8px;
    padding:8px;
    text-align:left;
  }

  .pfEasyNodeParts b {
    grid-row:1 / 3;
  }

  .pfEasyNodeParts strong,
  .pfEasyNodeParts small {
    margin-top:0;
  }

  .pfEasyNodeParts small {
    margin-top:2px;
  }

  .pfEasyLinear {
    grid-template-columns:1fr;
    gap:14px;
  }

  .pfEasyLinear>li {
    min-height:58px;
    display:grid;
    grid-template-columns:30px 1fr;
    grid-template-rows:auto auto;
    align-content:center;
    column-gap:9px;
    padding:8px 10px;
    text-align:left;
  }

  .pfEasyLinear>li b {
    grid-row:1 / 3;
  }

  .pfEasyLinear>li strong,
  .pfEasyLinear>li small {
    margin-top:0;
  }

  .pfEasyLinear>li small {
    margin-top:2px;
  }

  .pfEasyLinear>li:not(:last-child)::after {
    content:"↓";
    right:auto;
    left:50%;
    top:auto;
    bottom:-15px;
    font-size:14px;
    transform:translate(-50%,50%);
  }

  .pfEasyRepair {
    min-height:0;
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
  }

  .pfEasyShelf {
    grid-template-columns:1fr;
    gap:7px;
  }

  .pfEasyShelf>div {
    grid-template-columns:1fr 1fr;
  }

  .pfEasyLibrarySteps>li {
    min-height:54px;
  }
}

@media (max-width:380px) {
  .pfTechSlides {
    height:950px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfTechSlide.active .pfEasyAnimatedSteps>*,
  .pfTechSlide.active .pfEasyRepair,
  .pfTechSlide.active .pfEasyDeliveryChoices>* {
    animation:none !important;
    box-shadow:none !important;
    transform:none !important;
  }
}


/* Keep the longest mobile scene within the shared fixed slide height. */
@media (max-width:600px) {
  .pfEasyLibrarySteps {
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto auto;
    gap:14px 18px;
  }

  .pfEasyLibrarySteps>li:nth-child(1) { grid-column:1; grid-row:1; }
  .pfEasyLibrarySteps>li:nth-child(2) { grid-column:2; grid-row:1; }
  .pfEasyLibrarySteps>li:nth-child(3) { grid-column:2; grid-row:2; }
  .pfEasyLibrarySteps>li:nth-child(4) { grid-column:1; grid-row:2; }

  .pfEasyLibrarySteps>li:not(:last-child)::after {
    right:auto;
    bottom:auto;
    left:auto;
    top:auto;
    font-size:15px;
  }

  .pfEasyLibrarySteps>li:nth-child(1)::after {
    content:"→";
    right:-18px;
    top:50%;
    transform:translate(50%,-50%);
  }

  .pfEasyLibrarySteps>li:nth-child(2)::after {
    content:"↓";
    right:50%;
    bottom:-14px;
    transform:translate(50%,50%);
  }

  .pfEasyLibrarySteps>li:nth-child(3)::after {
    content:"←";
    left:-18px;
    top:50%;
    transform:translate(-50%,-50%);
  }
}


/* Hero hierarchy: product first, outcome second. */
.pfHeroSubhead {
  max-width:650px;
  margin:16px 0 0;
  color:#f4f7f9;
  font-family:"Inter Tight","Aptos Display","SF Pro Display","Segoe UI Variable Display","Helvetica Neue",system-ui,sans-serif;
  font-size:30px;
  font-weight:650;
  line-height:1.12;
  letter-spacing:0;
}

.pfHeroSubhead+.pfHeroLead {
  margin-top:16px;
}

@media (max-width:900px) {
  .pfHeroSubhead {
    margin-top:12px;
    font-size:25px;
  }

  .pfHeroSubhead+.pfHeroLead {
    margin-top:13px;
  }
}

@media (max-width:600px) {
  .pfHeroSubhead {
    margin-top:10px;
    font-size:21px;
    line-height:1.16;
  }

  .pfHeroSubhead+.pfHeroLead {
    margin-top:10px;
  }
}


/* Plain-language node anatomy: four short, scannable parts. */
.pfWorkspaceIntro {
  max-width:650px;
  margin:20px 0 0;
  color:#d4dce3;
  font-size:14px;
  line-height:1.52;
}

.pfWorkspaceLayers {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:18px;
  border:0;
}

.pfWorkspaceLayers section {
  min-height:146px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:16px 17px;
  border:1px solid #49545f;
  border-top:5px solid var(--pf-blue);
  background:#0d141b;
}

.pfWorkspaceLayers section+section {
  border-top-width:5px;
}

.pfWorkspaceLayers section.intelligence { border-top-color:var(--pf-green); }
.pfWorkspaceLayers section.functions { border-top-color:var(--pf-yellow); }
.pfWorkspaceLayers section.software { border-top-color:var(--pf-cyan); }
.pfWorkspaceLayers section.workspace {
  min-height:146px;
  border-top-color:#7da7ff;
  background:#142238;
}

.pfWorkspaceLayers section>span {
  display:flex;
  align-items:center;
  gap:8px;
}

.pfWorkspaceLayers section>span b {
  width:26px;
  height:26px;
  display:grid;
  flex:0 0 auto;
  place-items:center;
  border:1px solid currentColor;
  border-radius:50%;
  font-size:8px;
  line-height:1;
}

.pfWorkspaceLayers section strong {
  margin-top:12px;
  font-size:16px;
  line-height:1.22;
}

.pfWorkspaceLayers section small {
  margin-top:6px;
  font-size:12px;
  line-height:1.42;
}

@media (max-width:600px) {
  .pfWorkspaceIntro {
    margin-top:16px;
    font-size:13px;
    line-height:1.46;
  }

  .pfWorkspaceLayers {
    grid-template-columns:1fr;
    gap:8px;
    margin-top:15px;
  }

  .pfWorkspaceLayers section,
  .pfWorkspaceLayers section.workspace {
    min-height:0;
    padding:14px;
  }

  .pfWorkspaceLayers section strong {
    margin-top:9px;
    font-size:14px;
  }

  .pfWorkspaceLayers section small {
    font-size:11.5px;
  }
}


/* Section 04 uses a dark partner field; the final palette lock is defined below. */
.pfPartner {
  background:#09111f;
}

.pfPartnerIntro>div>p {
  color:#d4e0dd;
}

.pfPartner .pfResponsibilities,
.pfPartner .pfPartnerPaths {
  border-color:rgba(223,239,234,.25);
}

.pfPartner .pfResponsibilities article+article,
.pfPartner .pfPartnerPaths>div:last-child,
.pfPartner .pfPartnerPaths article+article,
.pfPartner .pfLadder li+li {
  border-color:rgba(223,239,234,.22);
}

.pfPartner .pfResponsibilities p,
.pfPartner .pfPartnerPaths article p,
.pfPartner .pfLadder li p {
  color:#c6d5d1;
}

.pfPartner .pfLadder>div {
  border-color:rgba(223,239,234,.24);
}

.pfPartner .pfLadder>div span {
  color:#bdcdc9;
}
/* Section 04: child-clear partner story with scroll-triggered, compositor-safe motion. */
.pfPartnerStoryHead {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:24px;
  margin-top:42px;
  padding-top:20px;
  border-top:1px solid rgba(223,239,234,.25);
}

.pfPartnerStoryHead span {
  color:var(--pf-yellow);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfPartnerStoryHead strong {
  font-size:18px;
  line-height:1.25;
}

.pfPartner .pfPartnerFlow {
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
  border:0;
  overflow:visible;
}

.pfPartnerFlow::before,
.pfPartnerFlow::after {
  content:"";
  position:absolute;
  z-index:0;
  top:68px;
  left:12.5%;
  right:12.5%;
  height:2px;
  pointer-events:none;
}

.pfPartnerFlow::before {
  background:rgba(223,239,234,.20);
}

.pfPartnerFlow::after {
  background:linear-gradient(90deg,var(--pf-yellow),var(--pf-cyan),var(--pf-green),var(--pf-yellow));
  transform:scaleX(0);
  transform-origin:left center;
}

.pfPartnerFlow.is-visible::after {
  animation:pfPartnerFlowDraw 2.9s cubic-bezier(.2,.72,.2,1) .18s both;
}

.pfPartner .pfPartnerFlow article,
.pfPartner .pfPartnerFlow article+article {
  --partner-accent:var(--pf-cyan);
  --partner-delay:0s;
  min-width:0;
  min-height:222px;
  position:relative;
  z-index:1;
  padding:17px 18px 18px;
  border:1px solid rgba(223,239,234,.24);
  border-top:3px solid var(--partner-accent);
  border-radius:6px;
  background:rgba(6,28,24,.36);
}

.pfPartner .pfPartnerFlow article[data-owner="agency"] {
  --partner-accent:var(--pf-yellow);
}

.pfPartner .pfPartnerFlow article[data-owner="agentmotion"] {
  --partner-accent:var(--pf-green);
}

.pfPartnerFlow article:nth-of-type(2) { --partner-delay:.65s; }
.pfPartnerFlow article:nth-of-type(3) { --partner-delay:1.3s; }
.pfPartnerFlow article:nth-of-type(4) { --partner-delay:1.95s; }

.pfPartnerFlow.is-visible article {
  animation:pfPartnerStepIn .72s cubic-bezier(.2,.72,.2,1) var(--partner-delay) both;
}

.pfPartner .pfPartnerFlow article>span {
  color:var(--partner-accent);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
}

.pfPartnerStepNo {
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  margin-top:14px;
  border:1px solid var(--partner-accent);
  border-radius:50%;
  color:#fff;
  background:#123f38;
  font-size:13px;
}

.pfPartnerFlow.is-visible .pfPartnerStepNo {
  animation:pfPartnerStepMark .62s ease var(--partner-delay) both;
}

.pfPartner .pfPartnerFlow h3 {
  margin:20px 0 0;
  font-size:19px;
  line-height:1.18;
}

.pfPartnerFlow article>ul {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:18px 0 0;
  padding:0;
  list-style:none;
}

.pfPartnerFlow article>ul li {
  padding:5px 7px;
  border:1px solid rgba(223,239,234,.20);
  border-radius:3px;
  color:#d7e4e0;
  background:rgba(255,255,255,.035);
  font-size:10px;
  font-weight:750;
}

.pfPartnerFlow article:not(:last-of-type)::after {
  content:"\2192";
  width:24px;
  height:24px;
  position:absolute;
  z-index:3;
  right:-19px;
  top:56px;
  display:grid;
  place-items:center;
  color:#fff;
  background:#123f38;
  font-size:17px;
  font-weight:900;
}

.pfPartnerOwnership {
  display:grid;
  grid-template-columns:190px 1fr;
  align-items:center;
  gap:22px;
  margin-top:14px;
  padding:14px 18px;
  border:1px solid rgba(243,200,45,.38);
  border-radius:5px;
  background:rgba(243,200,45,.08);
}

.pfPartnerOwnership>span {
  color:var(--pf-yellow);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.pfPartnerOwnership ul {
  display:flex;
  flex-wrap:wrap;
  gap:10px 22px;
  margin:0;
  padding:0;
  list-style:none;
}

.pfPartnerOwnership li {
  color:#f3f7f5;
  font-size:12px;
  font-weight:800;
}

.pfPartnerOwnership li::before {
  content:"\2713";
  margin-right:7px;
  color:var(--pf-green);
  font-weight:900;
}

body.landing #landingPage.pfRevealReady .pfPartnerOwnership {
  opacity:.7;
  transform:translate3d(0,6px,0);
}

body.landing #landingPage.pfRevealReady .pfPartnerFlow.is-visible + .pfPartnerOwnership {
  animation:pfPartnerOwnershipIn .62s cubic-bezier(.2,.72,.2,1) 1.9s both;
}

.pfPartner .pfPartnerRoutes {
  display:grid;
  grid-template-columns:minmax(220px,260px) 1fr;
  gap:26px;
  margin-top:38px;
  padding:26px;
  border:1px solid rgba(223,239,234,.25);
  border-radius:6px;
  background:rgba(6,28,24,.28);
}

.pfPartnerRoutes>div:first-child>span {
  color:var(--pf-yellow);
}

.pfPartnerRoutes>div:first-child h3 {
  margin-top:13px;
  font-size:23px;
}

.pfPartnerRoutes>div:first-child p {
  margin:13px 0 0;
  color:#c6d5d1;
  font-size:12px;
  line-height:1.5;
}

.pfPartner .pfPartnerRoutes>div:last-child {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  padding:0;
  border:0;
}

.pfPartner .pfPartnerRoutes article,
.pfPartner .pfPartnerRoutes article+article {
  min-height:194px;
  padding:19px;
  border:1px solid rgba(223,239,234,.22);
  border-radius:5px;
  background:rgba(255,255,255,.035);
}

.pfPartnerRoutes article>span {
  color:var(--pf-cyan);
  font-size:10px;
}

.pfPartnerRoutes article strong {
  margin-top:13px;
  font-size:17px;
}

.pfPartnerRouteTrack {
  display:grid;
  grid-template-columns:max-content minmax(34px,1fr) max-content;
  align-items:center;
  gap:10px;
  margin-top:24px;
}

.pfPartnerRouteTrack span {
  color:#e7eeeb;
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
}

.pfPartnerRouteTrack i {
  height:2px;
  position:relative;
  overflow:hidden;
  background:rgba(223,239,234,.22);
}

.pfPartnerRouteTrack i::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,var(--pf-cyan),var(--pf-green));
  transform:scaleX(0);
  transform-origin:left center;
}

.pfPartnerRoutes.is-visible article:nth-child(1) .pfPartnerRouteTrack i::after {
  animation:pfPartnerRouteDraw 1.15s ease .45s both;
}

.pfPartnerRoutes.is-visible article:nth-child(2) .pfPartnerRouteTrack i::after {
  animation:pfPartnerRouteDraw 1.15s ease 1.05s both;
}

.pfPartner .pfPartnerRoutes article p {
  margin-top:18px;
  color:#c6d5d1;
  font-size:12px;
}

.pfPartner .pfPartnerGrowth {
  position:relative;
  margin-top:38px;
  border:1px solid rgba(223,239,234,.25);
  border-radius:6px;
  background:rgba(6,28,24,.28);
  overflow:hidden;
}

.pfPartner .pfPartnerGrowth>div {
  padding:18px 20px;
  border-bottom:1px solid rgba(223,239,234,.22);
}

.pfPartnerGrowth ol {
  position:relative;
}

.pfPartnerGrowth ol::before {
  content:"";
  height:4px;
  position:absolute;
  z-index:2;
  inset:0 0 auto;
  background:linear-gradient(90deg,var(--pf-yellow),var(--pf-cyan),var(--pf-green));
  transform:scaleX(0);
  transform-origin:left center;
}

.pfPartnerGrowth.is-visible ol::before {
  animation:pfPartnerGrowthDraw 2.6s cubic-bezier(.2,.72,.2,1) .25s both;
}

.pfPartner .pfPartnerGrowth li {
  min-height:145px;
  position:relative;
  padding:25px 18px 18px;
}

.pfPartner .pfPartnerGrowth li+li {
  border-color:rgba(223,239,234,.20);
}

.pfPartnerGrowth li>span {
  color:var(--pf-cyan);
  font-size:10px;
}

.pfPartnerGrowth li strong {
  margin-top:16px;
  font-size:16px;
}

.pfPartnerGrowth li p {
  margin-top:8px;
  color:#c6d5d1;
  font-size:11.5px;
}

.pfPartnerGrowth.is-visible li {
  animation:pfPartnerStageIn .48s ease both;
}

.pfPartnerGrowth.is-visible li:nth-child(1) { animation-delay:.45s; }
.pfPartnerGrowth.is-visible li:nth-child(2) { animation-delay:.78s; }
.pfPartnerGrowth.is-visible li:nth-child(3) { animation-delay:1.11s; }
.pfPartnerGrowth.is-visible li:nth-child(4) { animation-delay:1.44s; }
.pfPartnerGrowth.is-visible li:nth-child(5) { animation-delay:1.77s; }

/* Section 04 palette lock: deep navy surfaces, white content and yellow emphasis. */
.pfPartner {
  --pf-partner-blue:#a9c3e8;
  --pf-partner-blue-strong:#78a5e4;
  --pf-partner-white:#f7f9fc;
  --pf-green:var(--pf-partner-blue-strong);
  --pf-cyan:var(--pf-partner-blue);
  --pf-partner-muted:#b9c6d8;
  --pf-partner-border:rgba(166,188,226,.24);
  color:var(--pf-partner-white);
  background:
    radial-gradient(ellipse at 84% 8%,rgba(35,74,137,.34) 0%,rgba(35,74,137,0) 38%),
    linear-gradient(145deg,#05080d 0%,#09111f 48%,#0d1c36 100%);
}

.pfPartnerIntro>div>p,
.pfPartner .pfResponsibilities p,
.pfPartner .pfPartnerPaths article p,
.pfPartner .pfLadder li p,
.pfPartnerRoutes>div:first-child p,
.pfPartner .pfPartnerRoutes article p,
.pfPartnerGrowth li p {
  color:var(--pf-partner-muted);
}

.pfPartner .pfResponsibilities,
.pfPartner .pfPartnerPaths,
.pfPartnerStoryHead,
.pfPartner .pfLadder>div,
.pfPartner .pfPartnerGrowth>div {
  border-color:var(--pf-partner-border);
}

.pfPartner .pfResponsibilities article+article,
.pfPartner .pfPartnerPaths>div:last-child,
.pfPartner .pfPartnerPaths article+article,
.pfPartner .pfLadder li+li,
.pfPartner .pfPartnerGrowth li+li {
  border-color:rgba(166,188,226,.19);
}

.pfPartner .pfLadder>div span {
  color:#aebdd2;
}

.pfPartner .pfPartnerFlow::before {
  background:rgba(166,188,226,.22);
}

.pfPartner .pfPartnerFlow::after {
  background:linear-gradient(90deg,var(--pf-yellow),#dce7f7,var(--pf-partner-blue-strong),var(--pf-yellow));
}

.pfPartner .pfPartnerFlow article,
.pfPartner .pfPartnerFlow article+article {
  --partner-accent:var(--pf-partner-blue);
  border-color:var(--pf-partner-border);
  border-top-color:var(--partner-accent);
  background:linear-gradient(180deg,rgba(17,33,59,.76),rgba(6,12,23,.72));
}

.pfPartner .pfPartnerFlow article[data-owner="agency"] {
  --partner-accent:var(--pf-yellow);
}

.pfPartner .pfPartnerFlow article[data-owner="agentmotion"] {
  --partner-accent:var(--pf-partner-blue-strong);
}

.pfPartner .pfPartnerStepNo,
.pfPartner .pfPartnerFlow article:not(:last-of-type)::after {
  color:#fff;
  background:#091426;
}

.pfPartner .pfPartnerFlow article>ul li {
  color:#dce5f2;
  border-color:rgba(166,188,226,.20);
  background:rgba(255,255,255,.035);
}

.pfPartnerOwnership {
  border-color:rgba(243,200,45,.42);
  background:rgba(243,200,45,.075);
}

.pfPartnerOwnership li {
  color:#f5f7fb;
}

.pfPartner .pfPartnerOwnership li::before {
  color:var(--pf-yellow);
}

.pfPartner .pfPartnerRoutes,
.pfPartner .pfPartnerGrowth {
  border-color:var(--pf-partner-border);
  background:linear-gradient(145deg,rgba(6,12,23,.78),rgba(14,29,55,.68));
}

.pfPartner .pfPartnerRoutes article,
.pfPartner .pfPartnerRoutes article+article {
  border-color:rgba(166,188,226,.21);
  background:rgba(255,255,255,.035);
}

.pfPartnerRoutes article>span,
.pfPartnerGrowth li>span {
  color:var(--pf-partner-blue);
}

.pfPartnerRouteTrack span {
  color:#eef3fa;
}

.pfPartnerRouteTrack i {
  background:rgba(166,188,226,.23);
}

.pfPartnerRouteTrack i::after {
  background:linear-gradient(90deg,var(--pf-partner-blue-strong),var(--pf-yellow));
}

.pfPartner .pfPartnerGrowth>div {
  border-color:var(--pf-partner-border);
}

.pfPartnerGrowth ol::before {
  background:linear-gradient(90deg,var(--pf-yellow),var(--pf-partner-blue-strong),#f7f9fc);
}

@keyframes pfPartnerFlowDraw {
  from { transform:scaleX(0); }
  to { transform:scaleX(1); }
}

@keyframes pfPartnerStepIn {
  0% { opacity:.55; transform:translate3d(0,12px,0); }
  62% { opacity:1; transform:translate3d(0,-3px,0); }
  100% { opacity:1; transform:translate3d(0,0,0); }
}

@keyframes pfPartnerStepMark {
  0% { transform:scale(.72); background:#091426; }
  60% { transform:scale(1.08); background:var(--partner-accent); color:#07101e; }
  100% { transform:scale(1); background:#091426; color:#fff; }
}

@keyframes pfPartnerOwnershipIn {
  from { opacity:.7; transform:translate3d(0,6px,0); }
  to { opacity:1; transform:translate3d(0,0,0); }
}

@keyframes pfPartnerRouteDraw {
  from { transform:scaleX(0); }
  to { transform:scaleX(1); }
}

@keyframes pfPartnerGrowthDraw {
  from { transform:scaleX(0); }
  to { transform:scaleX(1); }
}

@keyframes pfPartnerStageIn {
  from { opacity:.55; transform:translate3d(0,6px,0); }
  to { opacity:1; transform:translate3d(0,0,0); }
}

@media (max-width:900px) {
  .pfPartnerStoryHead {
    margin-top:34px;
  }

  .pfPartner .pfPartnerFlow {
    grid-template-columns:1fr;
    gap:22px;
  }

  .pfPartnerFlow::before,
  .pfPartnerFlow::after {
    display:none;
  }

  .pfPartner .pfPartnerFlow article,
  .pfPartner .pfPartnerFlow article+article {
    min-height:0;
    padding:17px;
    border:1px solid rgba(223,239,234,.24);
    border-top:3px solid var(--partner-accent);
  }

  .pfPartnerFlow article:not(:last-of-type)::after {
    content:"\2193";
    right:auto;
    left:50%;
    top:auto;
    bottom:-23px;
    transform:translateX(-50%);
  }

  .pfPartnerOwnership {
    grid-template-columns:1fr;
    gap:10px;
  }

  .pfPartnerOwnership ul {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px 14px;
  }

  .pfPartner .pfPartnerRoutes {
    grid-template-columns:1fr;
    gap:22px;
    padding:20px;
  }

  .pfPartner .pfPartnerRoutes>div:last-child {
    grid-template-columns:1fr;
    gap:12px;
    padding:0;
    border:0;
  }

  .pfPartner .pfPartnerRoutes article,
  .pfPartner .pfPartnerRoutes article+article {
    min-height:0;
    border:1px solid rgba(223,239,234,.22);
  }

  .pfPartner .pfPartnerGrowth ol {
    grid-template-columns:1fr;
    overflow:visible;
  }

  .pfPartner .pfPartnerGrowth li {
    min-height:0;
    display:grid;
    grid-template-columns:80px 1fr;
    align-items:center;
    gap:4px 14px;
    padding:16px 18px;
  }

  .pfPartner .pfPartnerGrowth li+li {
    border-left:0;
    border-top:1px solid rgba(223,239,234,.20);
  }

  .pfPartnerGrowth li>span {
    grid-row:1 / span 2;
  }

  .pfPartnerGrowth li strong {
    margin-top:0;
  }

  .pfPartnerGrowth li p {
    grid-column:2;
    margin-top:0;
  }
}

@media (max-width:600px) {
  .pfPartnerStoryHead {
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
  }

  .pfPartnerStoryHead strong {
    font-size:16px;
  }

  .pfPartner .pfPartnerFlow h3 {
    font-size:18px;
  }

  .pfPartnerOwnership ul {
    grid-template-columns:1fr 1fr;
  }

  .pfPartner .pfPartnerRoutes {
    padding:16px;
  }

  .pfPartnerRoutes>div:first-child h3 {
    font-size:20px;
  }

  .pfPartnerRouteTrack {
    grid-template-columns:max-content minmax(24px,1fr) max-content;
    gap:7px;
  }

  .pfPartnerRouteTrack span {
    font-size:8px;
  }

  .pfPartner .pfPartnerGrowth>div {
    padding:16px;
  }

  .pfPartner .pfPartnerGrowth li {
    grid-template-columns:68px 1fr;
    padding:14px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .pfPartnerFlow.is-visible::after,
  .pfPartnerFlow.is-visible article,
  .pfPartnerFlow.is-visible .pfPartnerStepNo,
  .pfPartnerFlow.is-visible + .pfPartnerOwnership,
  .pfPartnerRoutes.is-visible .pfPartnerRouteTrack i::after,
  .pfPartnerGrowth.is-visible ol::before,
  .pfPartnerGrowth.is-visible li {
    animation:none !important;
  }

  body.landing #landingPage.pfRevealReady .pfPartnerOwnership {
    opacity:1;
    transform:none;
  }

  .pfPartnerFlow::after,
  .pfPartnerRouteTrack i::after,
  .pfPartnerGrowth ol::before {
    transform:scaleX(1);
  }
}

/* Palette cohesion: hero, Section 01 and Section 05 only.
   Sections 02, 03, 04 and 06 intentionally retain their existing palettes. */
.pfNav {
  border-bottom-color:rgba(166,188,226,.22);
  background:linear-gradient(100deg,rgba(5,8,13,.97),rgba(8,18,35,.97));
}
.pfNavLinks a,
.pfNavActions button,
.pfBrand { border-color:rgba(166,188,226,.16); }
.pfBrandType { border-color:rgba(166,188,226,.22); color:#9eacc0; }

.pfHero {
  --pf-green:#78a5e4;
  --pf-cyan:#a9c3e8;
  color:#f8faff;
  background:
    radial-gradient(ellipse at 78% 18%,rgba(36,76,142,.30) 0%,rgba(36,76,142,0) 42%),
    linear-gradient(145deg,#05080d 0%,#08111f 48%,#0d1c36 100%);
}
.pfHeroCopy {
  border-right-color:rgba(166,188,226,.20);
  background:linear-gradient(145deg,rgba(5,8,13,.78),rgba(10,24,47,.42));
}
.pfEyebrow { color:#aab6c8; }
.pfEyebrow::before,
.pfHero .pfButton.primary { background:var(--pf-yellow); }
.pfEyebrow span,
.pfHeroProofSpeed dt strong { color:var(--pf-yellow); }
.pfHero .pfButton.primary { border-color:var(--pf-yellow); color:#11161c; }
.pfHero .pfButton.primary:hover { border-color:#ffda45; background:#ffda45; }
.pfHeroLead { color:#c6d1e0; }
.pfHeroProof { border-color:rgba(166,188,226,.28); }
.pfHeroProof>div+div { border-left-color:rgba(166,188,226,.20); }
.pfHeroProof dd { color:#9eacc0; }
.pfHeroVisual,
.pfConstToolbar,
.pfConstFooter { background:linear-gradient(145deg,#07101e,#0c2040); }
.pfConstToolbar,
.pfConstFooter { border-color:rgba(166,188,226,.22); }
.pfConstToolbar>span,
.pfConstFooter,
.pfConstFooter>div:first-child span { color:#a9bbd4; }
.pfHero .pfSystemNode>i,
.pfHero .pfControlCenter>b i {
  background:#78a5e4;
  box-shadow:0 0 0 4px rgba(120,165,228,.14);
}
.pfHero .pfControlCenter>b { color:#285d9f; }

.pfNodeArchitecture {
  --pf-green:#5f8fd8;
  --pf-cyan:#9bbce9;
  --pf-blue:#174fa8;
  --pf-blue-deep:#08172d;
  color:#111a26;
  background:linear-gradient(180deg,#f7f9fc 0%,#ffffff 48%,#f3f6fa 100%);
}
.pfNodeArchitecture .pfSectionHead>p:first-child span,
.pfNodeArchitecture .pfArchitecturePrinciples article>span { color:#174fa8; }
.pfArchitectureSplit { border-color:#9dabc0; }
.pfArchitectureSplit>article+article { border-color:#b5c0d0; }
.pfWorkspaceAnatomy {
  color:#f7f9fc;
  background:
    radial-gradient(ellipse at 84% 12%,rgba(46,92,161,.28),rgba(46,92,161,0) 42%),
    linear-gradient(145deg,#05080d 0%,#091426 52%,#0d1d38 100%);
}
.pfWorkspaceAnatomy .pfArchitectureHead { border-color:rgba(166,188,226,.28); }
.pfWorkspaceAnatomy .pfArchitectureHead>b { color:#b2bfd1; }
.pfWorkspaceAnatomy .pfArchitectureHead>b i {
  background:var(--pf-yellow);
  box-shadow:0 0 0 4px rgba(243,200,45,.13);
}
.pfWorkspaceIntro { color:#c9d4e3; }
.pfNodeArchitecture .pfWorkspaceLayers section,
.pfNodeArchitecture .pfWorkspaceLayers section+section {
  border-color:rgba(166,188,226,.28);
  background:linear-gradient(150deg,rgba(8,16,29,.92),rgba(17,35,65,.82));
}
.pfNodeArchitecture .pfWorkspaceLayers section.intelligence { border-top-color:#78a5e4; }
.pfNodeArchitecture .pfWorkspaceLayers section.functions { border-top-color:var(--pf-yellow); }
.pfNodeArchitecture .pfWorkspaceLayers section.software { border-top-color:#b8cdeb; }
.pfNodeArchitecture .pfWorkspaceLayers section.workspace {
  border-top-color:#4f7fc8;
  background:linear-gradient(150deg,#10213e,#16305a);
}
.pfNodeArchitecture .pfWorkspaceLayers section.intelligence>span,
.pfNodeArchitecture .pfWorkspaceLayers section.software>span { color:#a9c3e8; }
.pfNodeArchitecture .pfWorkspaceLayers section.functions>span { color:var(--pf-yellow); }
.pfNodeArchitecture .pfWorkspaceLayers section>span { color:#a9b7ca; }
.pfNodeArchitecture .pfWorkspaceLayers section small { color:#b8c4d4; }
.pfNodeComposition { color:#111a26; background:#fff; }
.pfNodeArchitecture .pfSimpleAnswer {
  border-color:#7396c9;
  border-left-color:#174fa8;
  background:#edf3fb;
}
.pfNodeArchitecture .pfSimpleAnswer>span,
.pfNodeArchitecture .pfSimpleNode.crm>span,
.pfNodeArchitecture .pfSimpleNode.crm>b { color:#245d9e; }
.pfNodeArchitecture .pfSimpleAnswer>small { color:#52677f; }
.pfNodeArchitecture .pfSimpleNode.center {
  background:linear-gradient(145deg,#07101d,#102545);
}
.pfNodeArchitecture .pfSimpleNode.crm {
  border-top-color:#5f8fd8;
  background:#f0f5fc;
}
.pfNodeArchitecture .pfArchitecturePrinciples { border-color:#9dabc0; }
.pfNodeArchitecture .pfArchitecturePrinciples article+article { border-color:#c7d0dd; }
.pfArchitectureFuture {
  border-left-color:var(--pf-yellow);
  color:#fff;
  background:
    radial-gradient(ellipse at 86% 20%,rgba(48,92,162,.30),rgba(48,92,162,0) 44%),
    linear-gradient(145deg,#05080d,#0b1a32 54%,#10264a);
}
.pfArchitectureFuture p { color:#d0dbea; }
.pfNodeArchitecture .pfIntegrationRail { border-color:#9dabc0; }
.pfNodeArchitecture .pfIntegrationRail>div { border-color:#b5c0d0; }
.pfNodeArchitecture .pfIntegrationRail b {
  border-color:#c8d1dd;
  color:#243247;
  background:rgba(255,255,255,.58);
}
@keyframes pfSimpleCrmCycle {
  0%,31%,50%,100% { box-shadow:none; transform:translateY(0); }
  35%,47% { border-color:#5f8fd8; box-shadow:0 0 0 3px rgba(95,143,216,.16); transform:translateY(-3px); }
}
@keyframes pfSimpleDecisionCycle {
  0%,64%,92%,100% { box-shadow:none; transform:translateY(0); }
  69%,88% { border-color:#174fa8; box-shadow:0 0 0 3px rgba(23,79,168,.15),0 12px 24px rgba(23,79,168,.09); transform:translateY(-3px); }
}

.pfTechnical {
  --pf-green:#78a5e4;
  --pf-cyan:#a9c3e8;
  --pf-blue:#3e76c8;
  color:#f7f9fc;
  border-color:rgba(166,188,226,.24);
  background:
    radial-gradient(ellipse at 82% 8%,rgba(38,78,145,.30),rgba(38,78,145,0) 40%),
    linear-gradient(145deg,#05080d 0%,#08111f 48%,#0d1c36 100%);
}
.pfTechnical summary,
.pfTechnical[open] summary { border-color:rgba(166,188,226,.22); }
.pfTechnicalNo,
.pfTechCopy>span { color:var(--pf-yellow); }
.pfTechnical summary small { color:#aab7ca; }
.pfTechnical summary>i {
  border-color:rgba(166,188,226,.40);
  background:rgba(255,255,255,.025);
}
.pfTechnicalBody>.pfTechStage {
  border-color:rgba(166,188,226,.28);
  background:linear-gradient(145deg,rgba(5,10,19,.90),rgba(13,29,55,.88));
}
.pfTechStageNav,
.pfTechTabs { border-color:rgba(166,188,226,.24); }
.pfTechTabs button { color:#8f9db1; background:rgba(5,11,21,.72); }
.pfTechTabs button+button { border-color:rgba(166,188,226,.17); }
.pfTechTabs button.active {
  color:#fff;
  background:linear-gradient(180deg,rgba(29,56,99,.80),rgba(12,27,52,.82));
}
.pfTechTabs button.active b { color:var(--pf-yellow); }
.pfTechTabs button>i { background:var(--pf-yellow); }
.pfTechCopy>p { color:#b7c3d4; }
.pfTechCopy ul,
.pfTechCopy li { border-color:rgba(166,188,226,.19); }
.pfTechCopy li { color:#dce5f2; }
.pfTechCopy li::before {
  border-color:var(--pf-yellow);
  box-shadow:0 0 0 3px rgba(243,200,45,.08);
}
.pfTechnical .pfTechEasyScene {
  color:#172235;
  border-color:#aab8ca;
  background:linear-gradient(145deg,#f8faff,#edf2f8);
}
.pfTechnical .pfEasyHeadline,
.pfTechnical .pfEasyNodeBox,
.pfTechnical .pfEasyShelf,
.pfTechnical .pfEasyNodeParts>div,
.pfTechnical .pfEasyLinear>li,
.pfTechnical .pfEasyDeliveryChoices>div {
  border-color:#acb9ca;
  background:#fff;
}
.pfTechnical .pfEasyOutcome {
  border-color:#7f9fcf;
  border-left-color:#3e76c8;
  background:#edf3fb;
}
.pfTechnical .pfEasyOutcome>span { color:#245d9e; }
.pfTechnical .pfEasyAnimatedSteps>.cyan,
.pfTechnical .pfEasyAnimatedSteps .cyan {
  --pf-easy-accent:#5f8fd8;
  --pf-easy-wash:#edf3fb;
}
.pfTechnical .pfEasyAnimatedSteps>.green,
.pfTechnical .pfEasyAnimatedSteps .green {
  --pf-easy-accent:#305f9f;
  --pf-easy-wash:#e9f0f9;
}
.pfTechnical .pfEasyDeliveryStart {
  border-color:#3e76c8;
  background:#edf3fb;
}
.pfTechnical .pfEasyDeliveryStart>span { color:#245d9e; }
.pfTechnical .pfEasyDeliveryStart>small { color:#52677f; }

/* Runtime-created node accents stay inside the same blue/yellow system. */
.pfHero .pfSystemNode {
  --node-accent:#5f8fd8 !important;
}
.pfHero .pfSystemNode:nth-child(3n) {
  --node-accent:var(--pf-yellow) !important;
}
.pfHero .pfSystemNode:nth-child(3n+1) {
  --node-accent:#174fa8 !important;
}

.pfTechnical .pfTechGateTrack>div.accepted,
.pfTechnical .pfTechSpecializer {
  border-color:#5f8fd8;
  background:#10213a;
}
.pfTechnical .pfTechGateTrack>div.accepted b,
.pfTechnical .pfTechSpecializer>span {
  color:#a9c3e8;
}

/* Industry-specific life layer for flattened control-center artwork.
   Coordinates use the source artwork's native 1586 x 992 canvas. */
.pfIndustryMotion {
  width:100%;
  height:100%;
  position:absolute;
  z-index:2;
  inset:0;
  overflow:visible;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.pfIndustryMotion path,
.pfIndustryMotion line,
.pfIndustryMotion circle,
.pfIndustryMotion rect {
  vector-effect:non-scaling-stroke;
}

.pfHeroVisual.is-phase-cycle[data-view="control"][data-industry="logistics"] .pfIndustryMotion[data-motion-scene="logistics"],
.pfHeroVisual.is-phase-cycle[data-view="control"][data-industry="manufacturing"] .pfIndustryMotion[data-motion-scene="manufacturing"],
.pfHeroVisual.is-phase-cycle[data-view="control"][data-industry="retail"] .pfIndustryMotion[data-motion-scene="retail"],
.pfHeroVisual.is-phase-cycle[data-view="control"][data-industry="agency"] .pfIndustryMotion[data-motion-scene="agency"] {
  visibility:visible;
  animation:pfIndustrySceneWindow 7s ease both;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfControlMotion>[data-motion="workspace"]::after,
.pfHeroVisual.is-phase-cycle[data-view="control"] .pfControlMotion>[data-motion="signal"] {
  animation:none;
  opacity:0;
}

.pfMotionPath {
  fill:none;
  opacity:0;
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:16 13;
  filter:drop-shadow(0 0 5px rgba(36,103,218,.24));
}

.pfMotionPathSecondary {
  stroke-dasharray:10 12;
}

.pfMotionPathSoft {
  stroke-width:3;
  stroke-dasharray:20 18;
}

.pfMotionYellow { stroke:#f3c82d; }
.pfMotionBlue { stroke:#2467da; }
.pfMotionTeal { stroke:#42b9b4; }

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionPath {
  animation:pfIndustryPathFlow 7s cubic-bezier(.2,.68,.2,1) both;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionPathSecondary {
  animation-delay:.18s;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionPathSoft {
  animation-delay:.34s;
}

.pfMotionRunner {
  opacity:0;
  stroke:#fff;
  stroke-width:3;
}

.pfMotionRunnerYellow {
  fill:#f3c82d;
  filter:drop-shadow(0 0 8px rgba(243,200,45,.75));
}

.pfMotionRunnerBlue {
  fill:#2467da;
  filter:drop-shadow(0 0 8px rgba(36,103,218,.72));
}

.pfMotionRunnerTeal {
  fill:#42b9b4;
  filter:drop-shadow(0 0 8px rgba(66,185,180,.72));
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionRunner {
  animation:pfIndustryRunnerWindow 7s ease both;
}

.pfMotionButton,
.pfMotionChoice {
  fill:rgba(243,200,45,.035);
  opacity:0;
  stroke:#f3c82d;
  stroke-width:3;
  filter:drop-shadow(0 0 8px rgba(243,200,45,.22));
}

.pfMotionChoice {
  fill:rgba(36,103,218,.025);
  stroke:#2467da;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionButton {
  animation:pfIndustryButtonPulse 7s ease both;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionChoice {
  animation:pfIndustryChoicePulse 7s ease both;
}

.pfMotionTarget,
.pfMotionAlert,
.pfMotionStep {
  fill:rgba(36,103,218,.025);
  opacity:0;
  stroke:#2467da;
  stroke-width:3;
  transform-box:fill-box;
  transform-origin:center;
}

.pfMotionAlert {
  fill:rgba(243,200,45,.08);
  stroke:#f3c82d;
}

.pfMotionTargetStrong {
  fill:rgba(243,200,45,.045);
  stroke:#f3c82d;
}

.pfMotionCore {
  fill:#f3c82d;
  opacity:0;
  stroke:#fff;
  stroke-width:2;
  filter:drop-shadow(0 0 10px rgba(243,200,45,.82));
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionTarget,
.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionAlert {
  animation:pfIndustryTargetPulse 7s ease both;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionCore {
  animation:pfIndustryCorePulse 7s ease both;
}

.pfMotionScan {
  opacity:0;
  stroke:#78a5e4;
  stroke-width:3;
  filter:drop-shadow(0 0 7px rgba(120,165,228,.55));
  transform-box:fill-box;
  transform-origin:center;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionScan {
  animation:pfIndustryTwinScan 7s cubic-bezier(.2,.68,.2,1) both;
}

.pfHeroVisual.is-phase-cycle[data-view="control"] .pfIndustryMotion .pfMotionStep {
  animation:pfIndustryStepIn .58s cubic-bezier(.2,.72,.2,1) var(--step-delay) both;
}

@keyframes pfIndustrySceneWindow {
  0%,18% { opacity:0; }
  25%,73% { opacity:1; }
  82%,100% { opacity:0; }
}

@keyframes pfIndustryPathFlow {
  0%,23% { opacity:0; stroke-dashoffset:190; }
  31% { opacity:.32; }
  42%,68% { opacity:.76; }
  78%,100% { opacity:0; stroke-dashoffset:-170; }
}

@keyframes pfIndustryRunnerWindow {
  0%,27% { opacity:0; }
  34%,70% { opacity:1; }
  80%,100% { opacity:0; }
}

@keyframes pfIndustryButtonPulse {
  0%,39% { opacity:0; transform:scale(.995); transform-origin:center; }
  46% { opacity:.62; transform:scale(1); }
  54% { opacity:.18; }
  63% { opacity:.72; }
  73% { opacity:.16; transform:scale(1.008); }
  81%,100% { opacity:0; }
}

@keyframes pfIndustryChoicePulse {
  0%,25% { opacity:0; }
  34%,48% { opacity:.58; }
  57% { opacity:.16; }
  70% { opacity:.46; }
  80%,100% { opacity:0; }
}

@keyframes pfIndustryTargetPulse {
  0%,31% { opacity:0; transform:scale(.72); }
  39% { opacity:.68; transform:scale(1); }
  48% { opacity:.16; transform:scale(1.22); }
  57% { opacity:.58; transform:scale(.94); }
  70% { opacity:.14; transform:scale(1.3); }
  80%,100% { opacity:0; transform:scale(1.38); }
}

@keyframes pfIndustryCorePulse {
  0%,29% { opacity:0; transform:scale(.55); transform-origin:center; }
  36%,68% { opacity:1; transform:scale(1); }
  76%,100% { opacity:0; transform:scale(1.7); }
}

@keyframes pfIndustryTwinScan {
  0%,24% { opacity:0; transform:translate3d(0,-170px,0); }
  33% { opacity:.68; }
  67% { opacity:.42; transform:translate3d(0,180px,0); }
  78%,100% { opacity:0; transform:translate3d(0,205px,0); }
}

@keyframes pfIndustryStepIn {
  0% { opacity:0; transform:scale(.55); }
  62% { opacity:.78; transform:scale(1.14); }
  100% { opacity:.38; transform:scale(1); }
}

@media (prefers-reduced-motion:reduce) {
  .pfIndustryMotion {
    display:none !important;
  }
}
