/* Lifted from the homepage inline <style> so /process/ carries the same components. */
h1,h2,h3,.hn{font-family:var(--font-display)}
/* Serif headlines need lighter weight + open tracking to breathe */
body[data-font="luxe"] :is(h1,h2,h3,.hn){font-weight:400;letter-spacing:-.012em}
body[data-font="luxe"] .sec-head h2 em{font-style:italic}
body[data-font="outfit"] :is(h1,h2){font-weight:500;letter-spacing:-.025em}
/* Newsreader: gentle serif — medium weight, opened tracking, italic accents */
body[data-font="news"] :is(h1,h2,h3,.hn){font-weight:500;letter-spacing:-.018em}
body[data-font="news"] .sec-head h2 em{font-style:italic}
/* Ubuntu: humanist — medium weight, tracking nearly neutral */
body[data-font="ubuntu"] :is(h1,h2,h3){font-weight:500;letter-spacing:-.018em}
/* Manrope: soft geometric — slightly heavier headings hold up better */
body[data-font="manrope"] :is(h1,h2){font-weight:600;letter-spacing:-.028em}
/* Technical grotesks — per-font heading tuning */
body[data-font="familjen"] :is(h1,h2,h3){font-weight:600;letter-spacing:-.022em}
body[data-font="schibsted"] :is(h1,h2,h3){font-weight:600;letter-spacing:-.026em}
body[data-font="sora"] :is(h1,h2){font-weight:600;letter-spacing:-.032em}
body[data-font="plex"] :is(h1,h2,h3){font-weight:600;letter-spacing:-.024em}
body[data-font="geist"] :is(h1,h2){font-weight:600;letter-spacing:-.03em}
body[data-airy="1"] .sec-head p{line-height:1.72}
/* ——— reveal base — soft rise + settle, headings blur-up ——— */
.reveal{opacity:1;transform:none;transition:opacity .9s cubic-bezier(.25,.46,.45,.94),transform .9s cubic-bezier(.25,.46,.45,.94),filter .9s cubic-bezier(.25,.46,.45,.94)}
/* ——— how we work: rows and chips arrive in sequence, the winner glows ——— */
.stage-viz .sv-row{transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1)}
.stage-viz .sv-chip{transition:transform .45s cubic-bezier(.34,1.56,.64,1),opacity .35s}
.stage-card .stage-top .big{transition:transform .6s cubic-bezier(.16,1,.3,1)}
.stage-card:hover .stage-top .big{transform:translateY(-2px)}
/* ——— kicker shimmer (motion-primitives Text Shimmer, in CSS) ——— */
.sec-head .kicker,.cta-big .kicker{background:linear-gradient(90deg,var(--g2) 0%,var(--g1) 42%,#fff2c2 50%,var(--g1) 58%,var(--g2) 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:kickerShimmer 7s ease-in-out infinite}
.beam{position:relative}
.beam::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:2;
  background:conic-gradient(from var(--bb),transparent 0 72%,rgba(255,224,138,.95) 86%,transparent 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;animation:beam 7s linear infinite}
@media (prefers-reduced-motion:reduce){.beam::before{animation:none;opacity:.35}}
.sec-head .kicker{font-size:13px;font-weight:600;letter-spacing:.15em;background:linear-gradient(180deg,var(--g1),var(--g2));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:14px;font-family:"JetBrains Mono",monospace;text-transform:uppercase}
.sec-head h2{font-size:clamp(36px,5vw,68px);font-weight:600;letter-spacing:-.035em;line-height:1.05;max-width:920px;margin:0 auto;text-wrap:balance;color:#f5f5f7}
.sec-head p{font-size:18px;color:var(--text-60);max-width:660px;margin:20px auto 0;line-height:1.55}
#faq summary > span:first-child::before{content:counter(faq, decimal-leading-zero);font-family:"JetBrains Mono",monospace;font-size:11px;color:var(--g3);letter-spacing:.1em;margin-right:16px;position:relative;top:-3px}
details p{font-size:15px;color:var(--text-60);line-height:1.7;margin-top:14px;white-space:pre-line;max-width:680px}
/* ——— CTA: the machine ——— */
.auto-flow{margin:72px auto 0;max-width:1080px;border:1px solid var(--line);border-radius:22px;padding:26px 26px 0;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);position:relative;overflow:hidden;text-align:left}
.auto-flow::before{content:"";position:absolute;inset:0;background:radial-gradient(55% 90% at 50% 0,rgba(217,164,65,.05),transparent);pointer-events:none}
.af-head{font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:.16em;color:var(--text-40);display:flex;align-items:center;gap:8px;justify-content:center;margin-bottom:22px;text-transform:uppercase}
.af-live{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:afLive 1.6s ease-in-out infinite}
.eng{display:grid;grid-template-columns:1fr 34px 1.3fr 34px 1fr;align-items:stretch}
.eng-col{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.015);padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.eng-lab{font-family:"JetBrains Mono",monospace;font-size:9px;letter-spacing:.14em;color:var(--text-40);text-transform:uppercase;display:flex;justify-content:space-between;gap:8px;margin-bottom:4px}
.eng-lab em{font-style:normal;color:var(--g3)}
.cap{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:99px;padding:7px 12px;font-size:11.5px;color:var(--text-60);background:#0a0a0a;white-space:nowrap;overflow:hidden}
.cap i{font-style:normal;color:var(--g3);flex-shrink:0;display:flex;align-items:center;justify-content:center}
.cap i svg{width:12px;height:12px;display:block}
.cap svg *,.af-ico svg *,.eng-ticker svg *{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cap.sig i{animation:icoPulse 9s infinite;animation-delay:calc(var(--i)*.38s)}
.cap.sig{animation:sigFlash 9s infinite;animation-delay:calc(var(--i)*.38s)}
.eng-core{border-color:rgba(217,164,65,.3);background:linear-gradient(175deg,rgba(217,164,65,.05),rgba(255,255,255,.015));animation:coreGlow 9s infinite;position:relative;overflow:hidden}
.eng-core::after{content:"";position:absolute;inset:-60%;background:conic-gradient(from 0deg,transparent 0 78%,rgba(217,164,65,.09) 90%,transparent 100%);animation:coreSweep 7s linear infinite;pointer-events:none}
.eng-core>*{position:relative;z-index:1}
.eng-tools{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.eng-tools .cap{font-size:10.5px;padding:6px 10px;animation:toolFlash 9s infinite;animation-delay:calc(2.4s + var(--j)*.22s)}
.eng-tools .cap i{animation:icoPulse 9s infinite;animation-delay:calc(2.4s + var(--j)*.22s)}
.eng-note{margin-top:auto;padding-top:10px;font-size:11px;color:var(--text-40);line-height:1.55}
.eng-note b{color:var(--g3);font-weight:600}
.af-ico{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-2);color:var(--g3);font-size:13px;background:#0a0a0a;font-family:"JetBrains Mono",monospace;flex-shrink:0}
.af-ico svg{width:15px;height:15px;display:block}
.out .af-ico{animation:outIco 9s infinite;animation-delay:calc(5.4s + var(--k)*.9s)}
.out{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:13px;padding:10px 12px;background:#0a0a0a;animation:outFlash 9s infinite;animation-delay:calc(5.4s + var(--k)*.9s);min-width:0}
.out>div{min-width:0}
.out b{display:block;font-size:12.5px;color:#f5f5f7;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.out span{display:block;font-size:10px;color:var(--text-40);font-family:"JetBrains Mono",monospace;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.out.gold{border-color:rgba(217,164,65,.3);background:linear-gradient(170deg,rgba(217,164,65,.07),#0a0a0a)}
.eng-link{position:relative;align-self:center;height:1px;background:var(--line-2);width:100%}
.eng-link::after{content:"";position:absolute;top:50%;left:0;width:7px;height:7px;border-radius:50%;background:var(--g1);box-shadow:0 0 12px rgba(247,206,90,.9);transform:translate(-50%,-50%);opacity:0;animation:afPulse 9s infinite;animation-delay:var(--d)}
.eng-link::before{content:"";position:absolute;top:50%;left:0;width:18px;height:3px;border-radius:99px;background:linear-gradient(90deg,transparent,rgba(247,206,90,.65));transform:translate(-100%,-50%);opacity:0;animation:afTrail 9s infinite;animation-delay:var(--d)}
.af-foot{margin:18px 0 0;font-size:12.5px;color:var(--text-60);text-align:center}
.eng-ticker{margin:16px -26px 0;border-top:1px solid var(--line);padding:10px 0;overflow:hidden}
.eng-ticker .tk{display:flex;gap:42px;width:max-content;animation:tk 30s linear infinite}
.eng-ticker span{font-family:"JetBrains Mono",monospace;font-size:9.5px;color:var(--text-40);letter-spacing:.06em;white-space:nowrap}
.eng-ticker b{color:var(--green);font-weight:500}
.eng-ticker em{font-style:normal;color:var(--g3)}
.eng-ticker .ti{width:10px;height:10px;display:inline-block;vertical-align:-1px;margin-right:3px}
@media (max-width:860px){
  .eng{grid-template-columns:1fr}
  .eng-link{width:1px;height:26px;justify-self:center}
  .eng-link::after{left:0;animation-name:afPulseV}
  .eng-link::before{display:none}}
@media (prefers-reduced-motion: reduce){
  .af-live,.cap.sig,.eng-core,.eng-tools .cap,.out,.cap i,.out .af-ico{animation:none}
  .eng-link::after,.eng-link::before,.eng-core::after{animation:none;opacity:0}
  .eng-ticker .tk{animation:none}}
/* ——— Scannability: staggered phase + list entrances, ratio bars, badge glyphs ——— */
.stage-card .ph{transition:opacity .55s cubic-bezier(.25,.46,.45,.94),transform .55s cubic-bezier(.25,.46,.45,.94)}
/* ——— Process stage cards ——— */
.stages{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.stage-card{background:var(--bg-card);border:1px solid var(--line);border-radius:24px;padding:36px 30px;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden;transition:transform .5s cubic-bezier(.25,.46,.45,.94),border-color .3s}
.stage-card:hover{transform:translateY(-6px);border-color:var(--line-2)}
.stage-card::before{content:"";position:absolute;top:0;left:30px;right:30px;height:1px;background:linear-gradient(90deg,transparent,var(--line-2),transparent)}
.stage-card.hot{border-color:rgba(217,164,65,.35);background:linear-gradient(170deg,rgba(217,164,65,.06),var(--bg-card) 40%)}
.stage-top{display:flex;align-items:center;gap:18px;margin-bottom:18px}
.stage-top .big{font-size:48px;font-weight:700;letter-spacing:-.03em;line-height:1;background:linear-gradient(180deg,var(--g1),var(--g2));-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums}
.stage-top h3{font-size:22px;font-weight:600;letter-spacing:-.02em;color:#f5f5f7;line-height:1.1}
.stage-top .tag{font-size:12px;color:var(--text-40);display:block;margin-top:5px;line-height:1.4}
.stage-card .ph{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:16px 0;border-top:1px solid var(--line);align-items:start}
.stage-card .ph .pn{font-family:"JetBrains Mono",monospace;font-size:10px;color:var(--g3);width:26px;height:26px;border-radius:50%;border:1px solid rgba(217,164,65,.4);background:rgba(217,164,65,.08);display:flex;align-items:center;justify-content:center}
.stage-card .ph b{font-size:15.5px;font-weight:600;color:#f5f5f7;letter-spacing:-.01em;display:block;line-height:1.35}
.stage-card .ph p{font-size:13.5px;color:var(--text-60);line-height:1.6;margin-top:6px}
/* stage mini-visuals */
.stage-viz{background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.stage-viz .sv-row{display:flex;align-items:center;gap:10px;min-width:0}
.stage-viz .sv-label{font-family:"JetBrains Mono",monospace;font-size:9.5px;color:var(--text-40);letter-spacing:.05em;width:50px;flex-shrink:0;white-space:nowrap}
.stage-viz .sv-bar{flex:1;height:5px;border-radius:99px;background:rgba(255,255,255,.06);overflow:hidden}
.stage-viz .sv-bar i{display:block;height:100%;width:var(--w,50%);border-radius:99px;background:linear-gradient(90deg,var(--g2),var(--g1))}
.stage-viz .sv-bar i.dim{background:rgba(255,255,255,.16)}
.stage-viz .sv-chip{font-family:"JetBrains Mono",monospace;font-size:8.5px;letter-spacing:.1em;padding:3px 9px;border-radius:99px;background:rgba(255,255,255,.06);color:var(--text-40);flex-shrink:0;white-space:nowrap}
.stage-viz .sv-chip.ok{background:rgba(232,199,123,.12);color:var(--green)}
.stage-viz .sv-chip.win{background:rgba(217,164,65,.16);color:var(--g3)}
.stage-viz .sv-tag{font-family:"JetBrains Mono",monospace;font-size:9.5px;color:var(--g3);width:20px;height:20px;border-radius:6px;border:1px solid rgba(217,164,65,.35);background:rgba(217,164,65,.07);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.stage-viz .sv-text{flex:1;font-size:11.5px;color:var(--text-60);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.stage-viz .sv-row.sep{border-top:1px dashed var(--line);padding-top:11px;margin-top:2px}
.stage-viz .sv-bar i{transition:width 1.1s cubic-bezier(.25,.46,.45,.94) .35s}
@media (max-width:600px){
  section{padding:70px 0}}
@media (hover:hover) and (pointer:fine){

  /* Engine tool chips nudge */
  .eng-tools .cap{transition:border-color .25s,color .25s,transform .25s}
  .eng-tools .cap:hover{border-color:rgba(217,164,65,.55);color:#f5f5f7;transform:translateY(-2px)}

  /* Deeper shadows on lifted cards */
  .svc:hover,.stage-card:hover,.plan:hover,.tcard:hover{box-shadow:0 32px 64px -32px rgba(0,0,0,.8)}}
/* A consistent, less repetitive rhythm through the existing sections. */
.sec-head .kicker{animation:none;background:none;color:var(--g3);font-size:12px}
.sec-head p{line-height:1.7}
#not-for .sec-head{text-align:left;max-width:800px}
#not-for .sec-head h2,#not-for .sec-head p{margin-left:0}
#not-for .sec-head h2{max-width:900px}
.beam::before{animation-duration:12s;opacity:.5}
@media(max-width:600px){
  body .sec-head p{font-size:16px}}
@keyframes beam{to{--bb:360deg}}
@keyframes icoPulse{0%,2%{transform:scale(1)}5%,13%{transform:scale(1.3);color:#ffd978}22%,100%{transform:scale(1)}}
@keyframes sigFlash{0%,2%{border-color:var(--line);color:var(--text-60);background:#0a0a0a;transform:none}5%,13%{border-color:rgba(217,164,65,.6);color:#f5f5f7;background:rgba(217,164,65,.07);transform:translateX(5px)}22%,100%{border-color:var(--line);color:var(--text-60);background:#0a0a0a;transform:none}}
@keyframes coreSweep{to{transform:rotate(1turn)}}
@keyframes coreGlow{0%,20%{box-shadow:none;border-color:rgba(217,164,65,.3)}30%,55%{box-shadow:0 0 36px -10px rgba(217,164,65,.5);border-color:rgba(217,164,65,.65)}70%,100%{box-shadow:none;border-color:rgba(217,164,65,.3)}}
@keyframes toolFlash{0%,1%{border-color:var(--line);color:var(--text-60)}3%,9%{border-color:rgba(217,164,65,.55);color:#f5f5f7}15%,100%{border-color:var(--line);color:var(--text-60)}}
@keyframes outIco{0%,1%{box-shadow:none;color:var(--g3)}3%,12%{box-shadow:0 0 0 4px rgba(217,164,65,.1),0 0 18px rgba(217,164,65,.35);color:#ffd978;border-color:rgba(217,164,65,.6)}20%,100%{box-shadow:none;color:var(--g3)}}
@keyframes outFlash{0%,1%{border-color:var(--line);box-shadow:none;transform:none}3%,12%{border-color:rgba(217,164,65,.6);box-shadow:0 0 24px -8px rgba(217,164,65,.45);transform:translateX(5px)}20%,100%{border-color:var(--line);box-shadow:none;transform:none}}
@keyframes afTrail{0%{left:0;opacity:0}2%{opacity:.9}9%{left:100%;opacity:.9}11%,100%{left:100%;opacity:0}}
@keyframes afPulse{0%{left:0;opacity:0}2%{opacity:1}9%{left:100%;opacity:1}11%,100%{left:100%;opacity:0}}
@keyframes tk{to{transform:translateX(calc(-50% - 21px))}}
