/* ============================================================
   Industry pages (/industries). Dark, on the homepage and FDE page
   system (styles.css): .ph hero, .sp splits, .sg feature grid,
   .cta-sec. This file adds what those don't have: the orbit hero,
   the integration marquee, product sections with anatomy figures,
   the problem panel, the flow rail, the chat, and the FAQ.
   Product colour rides in --pc on each product section.
   ============================================================ */

.ind{--earth:#1A8CFF;--jupiter:#FFB31A;--venus:#FF2D8E;--fde:#14A37F;}

/* ---------- hero: an orbit of the four products round the industry ---------- */
.io{position:relative;width:78%;aspect-ratio:1;color:var(--ink);}
.io-ring{position:absolute;inset:var(--in);border:1px solid rgba(255,255,255,0.12);border-radius:50%;}
.io-ring.r1{--in:30%;}
.io-ring.r2{--in:16%;border-style:dashed;border-color:rgba(255,255,255,0.1);animation:ioSpin 140s linear infinite;}
.io-ring.r3{--in:2%;}
.io-core{position:absolute;inset:38%;display:grid;place-items:center;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,rgba(255,255,255,0.14),rgba(255,255,255,0.02) 70%);
  box-shadow:0 0 0 1px rgba(255,255,255,0.22),0 0 60px rgba(26,140,255,0.18);}
.io-core i{font-size:clamp(34px,4.2vw,64px);color:#fff;}
.io-core::after{content:"";position:absolute;inset:-14%;border-radius:50%;border:1px solid rgba(255,255,255,0.18);
  animation:ioPulse 3.6s ease-out infinite;}
.io-arm{position:absolute;inset:0;animation:ioSpin var(--t) linear infinite;animation-delay:var(--d);}
.io-arm .io-p{position:absolute;left:50%;top:var(--top);width:var(--s);aspect-ratio:1;translate:-50% -50%;
  color:var(--pc);animation:ioSpin var(--t) linear infinite reverse;animation-delay:var(--d);}
.io-p > *{display:block;width:100%;height:100%;}
.io-p .io-tag{position:absolute;left:50%;top:calc(100% + 8px);translate:-50% 0;width:max-content;
  font-family:var(--mono);font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,0.7);}
.io-p .io-tag b{font-weight:400;color:var(--pc);}
@keyframes ioSpin{to{rotate:360deg;}}
@keyframes ioPulse{0%{opacity:.7;scale:.8;}100%{opacity:0;scale:1.35;}}

/* ---------- running ticker of the industry's systems ---------- */
.ind-tick{position:relative;overflow:hidden;margin:0 var(--frame);border-bottom:1px solid var(--line);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.ind-tick ul{display:flex;gap:0;width:max-content;margin:0;padding:0;list-style:none;
  animation:tickRun var(--dur,60s) linear infinite;}
.ind-tick.rev ul{animation-direction:reverse;}
.ind-tick:hover ul{animation-play-state:paused;}
.ind-tick li{display:flex;align-items:center;gap:10px;padding:16px 28px;white-space:nowrap;
  font-family:var(--mono);font-size:12px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.72);
  border-right:1px solid var(--border-light);}
.ind-tick li i{width:6px;height:6px;border-radius:50%;flex:none;background:rgba(255,255,255,0.35);}
.ind-tick li.live i{background:#19C37D;box-shadow:0 0 8px #19C37D;}
.ind-tick li.beta i{background:#FFB31A;}
@keyframes tickRun{to{transform:translateX(-50%);}}

/* ---------- problem panel: every system keeps its own record ---------- */
.pb{display:flex;flex-direction:column;gap:10px;}
.pb-head{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;letter-spacing:1.4px;
  text-transform:uppercase;color:rgba(255,255,255,0.45);margin-bottom:6px;}
.pb-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;
  border:1px solid var(--border-light);background:rgba(16,16,20,0.7);
  opacity:0;translate:calc(var(--dx) * 1px) 0;transition:opacity .6s ease,translate .9s cubic-bezier(.2,.8,.2,1);
  transition-delay:calc(var(--i) * 90ms);}
.rv.in .pb-row{opacity:1;translate:calc(var(--dx) * .25px) 0;}
.pb-row .k{font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#fff;}
.pb-row .v{font-size:13px;color:rgba(255,255,255,0.55);}
.pb-row .id{font-family:var(--mono);font-size:10.5px;color:rgba(255,255,255,0.45);white-space:nowrap;}
.pb-row .id b{font-weight:400;color:rgba(255,255,255,0.75);}
.pb-verdict{margin-top:6px;text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:1.4px;text-transform:uppercase;
  color:rgba(255,255,255,0.7);animation:pbBlink 3.2s ease-in-out infinite;}
@keyframes pbBlink{50%{opacity:.35;}}

/* ---------- product sections ---------- */
.pd{--pc:var(--live);position:relative;border-top:1px solid var(--line);}
.pd .sp-grid{align-items:center;}
.pd.flip .sp-grid{grid-template-columns:minmax(0,627fr) minmax(0,700fr);padding:0 var(--pad) 0 var(--frame);}
.pd.flip .sp-copy{order:2;}
.pd.flip .sp-visual{order:1;margin:0 0 0 32px;}
.pd .sp-copy{padding:clamp(40px,6vw,96px) 0 clamp(28px,4vw,56px);}
.pd .sp-copy .st-label{position:static;margin-bottom:28px;}
.pd .st-label .n{color:var(--pc);}
.pd-pill{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;padding:6px 12px 6px 8px;
  border:1px solid color-mix(in srgb,var(--pc) 45%,transparent);border-radius:99px;
  font-family:var(--mono);font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:#fff;
  background:color-mix(in srgb,var(--pc) 12%,transparent);}
.pd-pill .pl{width:22px;height:22px;color:var(--pc);}
.pd-pill .pl > *{display:block;width:100%;height:100%;}
.pd-pill em{font-style:normal;color:rgba(255,255,255,0.6);}
.pd-pill .st{margin-left:4px;padding:2px 7px;border-radius:99px;background:rgba(255,255,255,0.1);color:rgba(255,255,255,0.75);}
.pd .sp-title{max-width:20ch;}
.pd-list{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;}
.pd-list li{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;color:rgba(255,255,255,0.78);
  opacity:0;translate:0 8px;transition:opacity .5s ease,translate .6s ease;transition-delay:calc(240ms + var(--i) * 110ms);}
.rv.in .pd-list li,.pd-list.in li{opacity:1;translate:0 0;}
.pd-list li i{flex:none;margin-top:3px;font-size:16px;color:var(--pc);}
.pd-more{display:inline-flex;align-items:center;gap:8px;margin-top:30px;font-family:var(--mono);font-size:11px;
  letter-spacing:1.2px;text-transform:uppercase;color:var(--pc);text-decoration:none;}
.pd-more i{transition:translate .2s ease;}
.pd-more:hover i{translate:4px 0;}
.pd .sp-visual{padding:clamp(28px,4vw,56px) 0;}
.pd .sp-frame{background-image:radial-gradient(color-mix(in srgb,var(--pc) 22%,transparent) 1px,transparent 1px);}
.pd .sp-frame::before{content:"";position:absolute;inset:18% 12%;pointer-events:none;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--pc) 16%,transparent),transparent);filter:blur(10px);}

/* the anatomy card sits inside the bracket frame, on the site's dark tokens */
.ind-fig{position:relative;}
.ind-fig .iso{--anatomy-page:#15151A;--anatomy-card:#1C1C22;--anatomy-paper:#1C1C22;background:transparent;}
.ind-fig .iso-plate{background:#1C1C22;box-shadow:0 0 0 1px rgba(255,255,255,0.12),0 30px 80px rgba(0,0,0,0.45);}
.ind-fig [data-tone="lit"],.ind-fig .iso-line[data-tone="lit"]{stroke:var(--pc);}
.ind-fig .pc-fill{fill:var(--pc);}
.ind-fig .pc-stroke{stroke:var(--pc);}
.fig-slot{min-height:clamp(240px,30vw,420px);}
.fig-slot.ready{min-height:0;}
.fig-missing{display:grid;place-items:center;aspect-ratio:600/380;border:1px dashed rgba(255,255,255,0.2);
  font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.4);}

/* the band under each product: questions, a flow rail, a conversation */
.pd-band{padding:0 var(--frame) clamp(40px,5vw,72px) var(--pad);}
.pd.flip .pd-band{padding:0 var(--pad) clamp(40px,5vw,72px) var(--frame);}

/* Earth: three questions asked of the profile */
.ask3{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border-light);}
.ask3 .q{padding:22px 22px 24px;display:flex;flex-direction:column;gap:14px;opacity:0;translate:0 14px;
  transition:opacity .6s ease,translate .7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * 140ms);}
.ask3.in .q{opacity:1;translate:0 0;}
.ask3 .q + .q{border-left:1px solid var(--border-light);}
.ask3 .you,.ask3 .ans{margin:0;font-size:14.5px;line-height:1.5;}
.ask3 .you{color:#fff;}
.ask3 .ans{color:rgba(255,255,255,0.6);padding-top:14px;border-top:1px dashed rgba(255,255,255,0.14);}
.ask3 b{display:block;margin-bottom:6px;font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:1.3px;text-transform:uppercase;color:rgba(255,255,255,0.45);}
.ask3 .ans b{color:var(--pc);}

/* Jupiter: the flow, step by step, with a pulse running down it */
.rail{position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));border:1px solid var(--border-light);}
.rail::before{content:"";position:absolute;left:0;right:0;top:34px;height:1px;background:rgba(255,255,255,0.14);}
.rail::after{content:"";position:absolute;top:31px;left:0;width:7px;height:7px;border-radius:50%;background:var(--pc);
  box-shadow:0 0 12px var(--pc);animation:railRun 7s cubic-bezier(.5,0,.5,1) infinite;}
.rail.in::after{animation-play-state:running;}
@keyframes railRun{0%{left:2%;opacity:0;}6%{opacity:1;}94%{opacity:1;}100%{left:98%;opacity:0;}}
.rail .s{position:relative;padding:22px 18px 22px;display:flex;flex-direction:column;gap:10px;
  opacity:0;transition:opacity .5s ease;transition-delay:calc(var(--i) * 120ms);}
.rail.in .s{opacity:1;}
.rail .s + .s{border-left:1px solid var(--border-light);}
.rail .k{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10px;letter-spacing:1.3px;text-transform:uppercase;color:var(--pc);}
.rail .k::before{content:"";width:9px;height:9px;border-radius:50%;border:1.5px solid var(--pc);background:#15151A;position:relative;z-index:1;}
.rail .s.k-trigger .k::before,.rail .s.k-goal .k::before{background:var(--pc);}
.rail .s.k-human .k{color:var(--venus);} .rail .s.k-human .k::before{border-color:var(--venus);}
.rail .t{margin:0;font-size:14px;line-height:1.45;color:rgba(255,255,255,0.78);}

/* Venus: the conversation types itself out */
.chat{max-width:620px;display:flex;flex-direction:column;gap:10px;}
.chat .m{max-width:82%;padding:12px 16px;font-size:14.5px;line-height:1.45;border-radius:16px;
  opacity:0;translate:0 10px;scale:.98;transition:opacity .45s ease,translate .55s cubic-bezier(.2,.8,.2,1),scale .55s;
  transition-delay:calc(var(--i) * 900ms + 200ms);}
.chat.in .m{opacity:1;translate:0 0;scale:1;}
.chat .agent{align-self:flex-start;background:rgba(255,255,255,0.08);color:#fff;border-bottom-left-radius:4px;}
.chat .cust{align-self:flex-end;background:color-mix(in srgb,var(--pc) 85%,#000);color:#fff;border-bottom-right-radius:4px;}
.chat .who{display:block;margin-bottom:4px;font-family:var(--mono);font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;opacity:.6;}
.chat .won{align-self:center;margin-top:6px;padding:7px 14px;border:1px solid rgba(25,195,125,0.5);border-radius:99px;
  font-family:var(--mono);font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:#19C37D;background:rgba(25,195,125,0.08);
  opacity:0;scale:.9;transition:opacity .5s ease,scale .6s cubic-bezier(.2,1.4,.4,1);transition-delay:calc(var(--i) * 900ms + 300ms);}
.chat.in .won{opacity:1;scale:1;}
.chat-note{margin:16px 0 0;font-size:12.5px;color:rgba(255,255,255,0.4);}

/* ---------- integrations ---------- */
section.ix{border-top:1px solid var(--line-2);}
.ix-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:end;padding:clamp(28px,3.2vw,48px) var(--pad);}
.ix-head .st-label{margin-bottom:24px;}
.ix-lead{margin:0;font-size:16px;line-height:1.58;color:rgba(255,255,255,0.7);max-width:56ch;}
.ix-legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px;font-family:var(--mono);font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,0.6);}
.ix-legend span{display:inline-flex;align-items:center;gap:8px;}
.ix-legend i,.ix-chip i{width:7px;height:7px;border-radius:50%;flex:none;background:rgba(255,255,255,0.35);}
.ix-legend .live i,.ix-chip.live i{background:#19C37D;box-shadow:0 0 8px rgba(25,195,125,0.8);}
.ix-legend .beta i,.ix-chip.beta i{background:#FFB31A;}
.ix-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:0 var(--frame);border-top:1px solid var(--border-light);}
.ix-cell{padding:clamp(22px,2.4vw,34px) clamp(18px,2vw,30px);border-bottom:1px solid var(--border-light);
  opacity:0;translate:0 12px;transition:opacity .6s ease,translate .7s cubic-bezier(.2,.8,.2,1),background .2s;transition-delay:calc(var(--i) * 70ms);}
.ix-grid.in .ix-cell{opacity:1;translate:0 0;}
.ix-cell:not(:nth-child(3n+1)){border-left:1px solid var(--border-light);}
.ix-cell:hover{background:rgba(250,249,245,0.03);}
.ix-cell h4{margin:0 0 16px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:1.3px;text-transform:uppercase;color:rgba(255,255,255,0.55);}
.ix-cell h4 span{color:rgba(255,255,255,0.35);}
.ix-chips{display:flex;flex-wrap:wrap;gap:8px;}
.ix-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid rgba(255,255,255,0.14);
  font-size:13px;color:#fff;background:rgba(16,16,20,0.6);transition:border-color .2s,translate .2s;}
.ix-chip:hover{border-color:rgba(255,255,255,0.4);translate:0 -2px;}
.ix-chip em{font-style:normal;font-family:var(--mono);font-size:9px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.45);}
.ix-chip.live em{color:#19C37D;} .ix-chip.beta em{color:#FFB31A;}
.ix-foot{padding:22px var(--pad);border-bottom:1px solid var(--border-light);font-size:13.5px;color:rgba(255,255,255,0.55);}
.ix-foot a{color:var(--fde);}

/* ---------- FAQ ---------- */
.faq2{padding:0 var(--frame);border-top:1px solid var(--border-light);}
.faq2 details{border-bottom:1px solid var(--border-light);padding:0 clamp(20px,2.12vw,32px);}
.faq2 summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;cursor:pointer;list-style:none;
  font-family:var(--mono);font-size:clamp(13px,1.06vw,15px);letter-spacing:.02em;text-transform:uppercase;color:#fff;}
.faq2 summary::-webkit-details-marker{display:none;}
.faq2 summary i{flex:none;font-size:18px;color:rgba(255,255,255,0.6);transition:rotate .3s ease;}
.faq2 details[open] summary i{rotate:45deg;}
.faq2 details p{margin:0;padding:0 0 24px;max-width:72ch;font-size:15px;line-height:1.6;color:rgba(255,255,255,0.65);}
.faq-rel{padding:20px var(--pad) 0;font-size:13.5px;color:rgba(255,255,255,0.5);}
.faq-rel a{color:#fff;}

/* ---------- uses: the feature grid gets the industry's own icon tint ---------- */
.uses .feat .ic{background:rgba(255,255,255,0.08);color:#fff;}
.uses .feat:hover .ic{background:rgba(255,255,255,0.16);}

/* ---------- hub ---------- */
.hub-ind .feat{text-decoration:none;color:inherit;}
.hub-ind .feat .arr{margin-top:auto;font-family:var(--mono);font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,0.45);transition:color .2s;}
.hub-ind .feat:hover .arr{color:#fff;}
.hub-prods{display:grid;grid-template-columns:repeat(4,1fr);padding:0 var(--frame);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);}
.hub-prods .hp{--pc:var(--live);padding:28px 26px 30px;display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit;transition:background .2s;}
.hub-prods .hp + .hp{border-left:1px solid var(--border-light);}
.hub-prods .hp:hover{background:rgba(250,249,245,0.04);}
.hub-prods .hp .pl{width:56px;height:56px;color:var(--pc);}
.hub-prods .hp .pl > *{display:block;width:100%;height:100%;}
.hub-prods h4{margin:0;font-family:var(--mono);font-weight:400;font-size:15px;text-transform:uppercase;color:#fff;}
.hub-prods h4 em{font-style:normal;color:var(--pc);margin-left:8px;font-size:10px;letter-spacing:1.2px;}
.hub-prods p{margin:0;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,0.6);}

/* ---------- small screens ---------- */
@media(max-width:900px){
  .pd .sp-grid,.pd.flip .sp-grid{grid-template-columns:1fr;padding:0 var(--pad);}
  .pd.flip .sp-copy{order:0;}
  .pd .sp-visual,.pd.flip .sp-visual{order:1;margin:0;padding-top:0;}
  .pd-band,.pd.flip .pd-band{padding:0 var(--pad) 40px;}
  .ask3{grid-template-columns:1fr;}
  .ask3 .q + .q{border-left:0;border-top:1px solid var(--border-light);}
  .rail{grid-template-columns:1fr;}
  .rail::before{left:26px;right:auto;top:0;bottom:0;width:1px;height:auto;}
  .rail::after{display:none;}
  .rail .s{padding-left:18px;}
  .rail .s + .s{border-left:0;border-top:1px solid var(--border-light);}
  .ix-head{grid-template-columns:1fr;gap:16px;}
  .ix-grid{grid-template-columns:1fr;padding:0 var(--pad);}
  .ix-cell:not(:nth-child(3n+1)){border-left:0;}
  .hub-prods{grid-template-columns:1fr 1fr;padding:0 var(--pad);}
  .hub-prods .hp:nth-child(3){border-left:0;}
  .hub-prods .hp:nth-child(n+3){border-top:1px solid var(--border-light);}
  .io{width:min(78vw,360px);}
}
@media(max-width:520px){ .hub-prods{grid-template-columns:1fr;} .hub-prods .hp + .hp{border-left:0;border-top:1px solid var(--border-light);} }

@media(prefers-reduced-motion:reduce){
  .io-ring.r2,.io-arm,.io-arm .io-p,.io-core::after,.ind-tick ul,.rail::after,.pb-verdict{animation:none;}
  .pb-row,.pd-list li,.ask3 .q,.rail .s,.chat .m,.chat .won,.ix-cell{opacity:1;translate:none;scale:none;transition:none;}
}
