/* ---------- AI landing (v6) ---------- */
.ca-hero{padding:0 0 6px;text-align:center}
.ca-stage{position:relative;overflow:hidden;margin:14px -6px 0;padding:18px 16px 26px;border-radius:30px;background:radial-gradient(120% 80% at 50% 0%,#24402f 0%,#16271d 55%,#0f1c15 100%);color:#e9efe6;box-shadow:0 30px 70px -40px rgba(15,28,21,.9),inset 0 0 0 1px rgba(201,214,198,.12);isolation:isolate}
.ca-net{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.85;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 36%,rgba(0,0,0,.12) 52%,transparent 64%);mask-image:linear-gradient(to bottom,#000 0%,#000 36%,rgba(0,0,0,.12) 52%,transparent 64%)}
.ca-aura{position:absolute;inset:-30%;z-index:-2;background:radial-gradient(30% 25% at 25% 30%,rgba(129,146,125,.38),transparent 70%),radial-gradient(28% 24% at 78% 62%,rgba(169,141,119,.32),transparent 70%),radial-gradient(22% 20% at 50% 85%,rgba(120,200,160,.18),transparent 70%);animation:caaura 16s ease-in-out infinite alternate}
@keyframes caaura{to{transform:translate3d(4%,3%,0) rotate(10deg)}}
.ca-map{position:relative;width:340px;height:300px;margin:0 auto}
.ca-beams{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ca-beams path{fill:none;stroke:rgba(201,214,198,.26);stroke-width:1.4}
.ca-beams path.fl{stroke:rgba(150,232,192,.9);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:3 24;animation:caflow 2.2s linear infinite}
.ca-beams path.f2{animation-delay:-.55s}.ca-beams path.f3{animation-delay:-1.1s}.ca-beams path.f4{animation-delay:-1.65s}
@keyframes caflow{to{stroke-dashoffset:-108}}
.ca-node{position:absolute;display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:rgba(15,28,21,.74);border:1px solid rgba(201,214,198,.28);color:#f5f2ea;font-size:12px;font-weight:600;letter-spacing:.2px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:canode 6s ease-in-out infinite}
.ca-node i{width:7px;height:7px;border-radius:50%;background:#9fe0bd;animation:cadotp 6s ease-in-out infinite}
.ca-node.n1{left:0;top:30px}.ca-node.n2{right:0;top:30px;animation-delay:1.5s}.ca-node.n3{left:0;bottom:30px;animation-delay:3s}.ca-node.n4{right:0;bottom:30px;animation-delay:4.5s}
.ca-node.n2 i{animation-delay:1.5s}.ca-node.n3 i{animation-delay:3s}.ca-node.n4 i{animation-delay:4.5s;background:#e0c3a8}
@keyframes canode{0%,100%{border-color:rgba(201,214,198,.28);transform:translateY(0);box-shadow:none}10%{border-color:rgba(159,224,189,.95);transform:translateY(-3px);box-shadow:0 0 26px -4px rgba(159,224,189,.6)}24%{border-color:rgba(201,214,198,.28);transform:translateY(0);box-shadow:none}}
@keyframes cadotp{0%,100%{box-shadow:0 0 0 0 rgba(159,224,189,0)}10%{box-shadow:0 0 0 6px rgba(159,224,189,.28)}24%{box-shadow:0 0 0 0 rgba(159,224,189,0)}}
.ca-map .ca-orb{position:absolute;left:104px;top:84px;margin:0}
.ca-stage .ca-orb span{border-color:rgba(201,214,198,.45)}
.ca-stage .ca-orb .ca-doc{box-shadow:0 0 0 4px rgba(245,242,234,.9),0 0 60px -6px rgba(150,232,192,.55)}
.ca-stage .ca-tag{margin:4px 0 10px;background:rgba(159,224,189,.14);color:#c4ecd5;border:1px solid rgba(159,224,189,.32)}
.ca-stage .ca-eye{color:#c9d6c6}
.ca-stage h1{color:#f8f6f0;margin:10px 0 16px}
.ca-grad{background:linear-gradient(90deg,#d4ead8,#a9dcc0 45%,#e3c6ab 85%);-webkit-background-clip:text;background-clip:text;color:transparent}
.ca-type{display:inline-flex;align-items:center;gap:8px;max-width:100%;margin:0 auto 16px;padding:11px 16px;border-radius:16px;border:1px solid rgba(201,214,198,.26);background:rgba(255,255,255,.06);color:#f5f2ea;font:inherit;font-size:15px;cursor:pointer;min-height:46px}
.ca-type-l{flex:none;padding:3px 8px;border-radius:8px;background:rgba(159,224,189,.16);color:#9fe0bd;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}
.ca-type-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.ca-caret{flex:none;width:2px;height:18px;background:#9fe0bd;animation:cablink 1s steps(1) infinite}
@keyframes cablink{50%{opacity:0}}
.ca-stage .ca-sub{color:#c7d2c4}
.ca-facts{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:16px 0 0;padding:0}
.ca-facts li{padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(201,214,198,.18);font-size:12px;color:#dfe7dc}
.ca-kick{margin:30px 0 12px;font-size:11.5px;letter-spacing:3px;text-transform:uppercase;color:var(--sage-d);font-weight:600}
.ca-how ol{list-style:none;margin:0 auto;padding:0;max-width:440px;text-align:left;position:relative;counter-reset:st}
.ca-how ol:before{content:"";position:absolute;left:19px;top:22px;bottom:22px;width:2px;background:var(--sage-soft)}
.ca-how ol:after{content:"";position:absolute;left:16px;top:22px;width:8px;height:8px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 6px rgba(129,146,125,.22);animation:catravel 4.5s ease-in-out infinite}
@keyframes catravel{0%{top:22px;opacity:0}12%{opacity:1}88%{opacity:1}100%{top:calc(100% - 30px);opacity:0}}
.ca-how li{position:relative;display:grid;grid-template-columns:40px 1fr;gap:2px 12px;padding:10px 0;counter-increment:st}
.ca-how li:before{content:counter(st);grid-row:span 2;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line),0 10px 22px -16px rgba(20,32,25,.6);font-family:var(--serif);font-size:18px;color:var(--ink);position:relative;z-index:1}
.ca-how li b{font-size:15.5px;align-self:end}
.ca-how li span{font-size:13.5px;line-height:1.5;color:var(--mute)}
.ca-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ca-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:18px;border:0;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line),0 16px 34px -26px rgba(20,32,25,.6);text-align:left;font:inherit;color:var(--ink);cursor:pointer;transition:transform .2s;opacity:0;animation:cain .6s cubic-bezier(.2,.8,.2,1) forwards}
.ca-card:nth-child(2){animation-delay:.08s}.ca-card:nth-child(3){animation-delay:.16s}.ca-card:nth-child(4){animation-delay:.24s}
.ca-card:active{transform:scale(.98)}
.ca-card:after{content:"";position:absolute;right:-30px;top:-30px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,rgba(129,146,125,.24),transparent 70%)}
.ca-card em{font-style:normal;font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--sage-d);font-weight:700}
.ca-card b{font-family:var(--serif);font-weight:500;font-size:16.5px;line-height:1.25}
.ca-card span{font-size:12.5px;color:var(--mute);line-height:1.4}
.ca-card.k:after{background:radial-gradient(circle,rgba(169,141,119,.3),transparent 70%)}
.ca-card.k em{color:#7d6450}
.ca-chips-h{margin-top:28px}
.ca-chips{margin-top:10px}
body.ca-started .ca-stage{background:none;box-shadow:none;margin:0;padding:6px 0 0}
body.ca-started .ca-net,body.ca-started .ca-aura,body.ca-started .ca-beams,body.ca-started .ca-node,body.ca-started .ca-type,body.ca-started .ca-facts,body.ca-started .ca-how,body.ca-started .ca-spec,body.ca-started .ca-chips-h{display:none}
body.ca-started .ca-map{width:auto;height:auto}
body.ca-started .ca-map .ca-orb{position:relative;left:auto;top:auto;margin:0 auto 4px}
body.ca-started .ca-stage .ca-tag{background:#dde8dc;color:#3f5240;border-color:transparent}
body.ca-started .ca-stage .ca-orb .ca-doc{box-shadow:0 0 0 2px #fffdf8,0 8px 20px -10px rgba(95,114,91,.6)}
@media (max-width:370px){.ca-map{transform:scale(.88);transform-origin:top center;height:268px}}
@media (prefers-reduced-motion:reduce){.ca-aura,.ca-beams path.fl,.ca-node,.ca-node i,.ca-how ol:after,.ca-caret,.ca-card{animation:none!important;opacity:1}}
