/* AIFLASHER HOME — Mars mission control. External CSS (CSP: style-src self + fonts.googleapis). */
:root{
  --void:#070402; --regolith:#150C06; --regolith-2:#1C1109;
  --mars:#E06A28; --ember:#FF9A45; --dust:#A8937E; --bone:#F5EDE3; --shadow-dust:#6B5642;
  --line:rgba(224,106,40,.24); --line-2:rgba(224,106,40,.10);
  --green:#3FD68F; --amber:#FFC857; --red:#F0524F;
  --disp:"Chakra Petch",sans-serif; --lab:"Orbitron",sans-serif; --mono:"JetBrains Mono",monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body.home{
  background:var(--void);color:var(--bone);font-family:var(--disp);
  font-size:15.5px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
body.home::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(1100px 600px at 78% -12%,rgba(224,106,40,.13),transparent 62%),
    radial-gradient(800px 700px at -12% 108%,rgba(224,106,40,.07),transparent 60%);
}
body.home::after{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.5;
  background-image:
    linear-gradient(rgba(224,106,40,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(224,106,40,.05) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(ellipse 75% 55% at 50% 0%,#000,transparent 72%);
  mask-image:radial-gradient(ellipse 75% 55% at 50% 0%,#000,transparent 72%);
}
main,header.hm,footer.hm{position:relative;z-index:1}
::selection{background:var(--mars);color:#fff}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--mars);outline-offset:3px}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px}
.mono{font-family:var(--mono)}

/* ---------- nav ---------- */
header.hm{position:sticky;top:0;z-index:40;background:rgba(7,4,2,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-2)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}
.brand{display:flex;align-items:center;gap:12px}
.brand-name{font-family:var(--lab);font-weight:800;font-size:15px;letter-spacing:.16em}
.brand-name .r{color:var(--ember)}
.brand-sub{display:block;font-family:var(--mono);font-size:8px;letter-spacing:.3em;color:var(--shadow-dust);text-transform:uppercase}
nav.links{display:flex;align-items:center;gap:26px;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;color:var(--dust);text-transform:uppercase}
nav.links a:hover{color:var(--bone)}
.cbtn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;border:none;
  font-family:var(--lab);font-size:10.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  color:#1A0C03;background:linear-gradient(180deg,var(--ember),var(--mars));padding:12px 24px;
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
  transition:filter .15s ease,transform .1s ease;
}
.cbtn:hover{filter:brightness(1.12)}
.cbtn:active{transform:translateY(1px)}
.cbtn.ghost{background:transparent;color:var(--ember);clip-path:none;border:1px solid var(--line);padding:11px 22px}
.cbtn.ghost:hover{border-color:var(--mars)}
@media(max-width:880px){nav.links a:not(.keep){display:none}}

/* ---------- hero ---------- */
.hero{padding:84px 0 60px}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:52px;align-items:center}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr;gap:46px}}
.eyeb{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:26px;
  font-family:var(--lab);font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--dust);
  border:1px solid var(--line);background:rgba(21,12,6,.7);padding:8px 16px;
}
.eyeb::before{content:"«";color:var(--mars);font-family:var(--disp)}
.eyeb::after{content:"»";color:var(--mars);font-family:var(--disp)}
h1{
  font-family:var(--disp);font-weight:700;text-transform:uppercase;
  font-size:clamp(34px,4.9vw,58px);line-height:1.04;letter-spacing:.005em;margin-bottom:24px;
}
h1 .r{color:var(--ember)}
h1 .ghostline{color:transparent;-webkit-text-stroke:1px rgba(245,237,227,.45)}
.lede{font-size:16.5px;color:var(--dust);max-width:520px;margin-bottom:34px}
.lede .m{font-family:var(--mono);font-size:14px;color:var(--bone)}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:32px}
.facts{display:flex;gap:22px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;color:var(--shadow-dust);letter-spacing:.04em}
.facts b{color:var(--dust);font-weight:500}

/* signature: scan-ring instrument */
.rig{position:relative;display:flex;flex-direction:column;align-items:center;gap:0}
.ringstage{position:relative;width:min(430px,88vw);aspect-ratio:1}
.ringstage svg{position:absolute;inset:0;width:100%;height:100%}
.rot-a{transform-origin:50% 50%;animation:rot 22s linear infinite}
.rot-b{transform-origin:50% 50%;animation:rot 14s linear infinite reverse}
.rot-c{transform-origin:50% 50%;animation:rot 40s linear infinite}
@keyframes rot{to{transform:rotate(360deg)}}
.trace-core{
  position:absolute;inset:17.5%;border-radius:50%;overflow:hidden;
  background:radial-gradient(circle at 34% 30%,#221208 0%,#120903 62%,#0A0502 100%);
  border:1px solid var(--line);
  box-shadow:0 0 70px rgba(224,106,40,.22),inset 0 0 42px rgba(0,0,0,.7);
}
.trace-core svg{position:absolute;inset:0;width:100%;height:100%}
.tgrid{stroke:rgba(224,106,40,.12);stroke-width:1}
.twave{
  fill:none;stroke:var(--ember);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;
  filter:drop-shadow(0 0 7px rgba(255,154,69,.65));
  stroke-dasharray:900;stroke-dashoffset:900;animation:draw 3.2s ease-out .4s forwards;
}
.twave-echo{fill:none;stroke:rgba(63,214,143,.55);stroke-width:1.4;stroke-dasharray:5 5}
@keyframes draw{to{stroke-dashoffset:0}}
.corner{position:absolute;width:26px;height:26px;pointer-events:none}
.corner.tl{top:4%;left:4%;border-top:2px solid var(--mars);border-left:2px solid var(--mars)}
.corner.tr{top:4%;right:4%;border-top:2px solid var(--mars);border-right:2px solid var(--mars)}
.corner.bl{bottom:4%;left:4%;border-bottom:2px solid var(--mars);border-left:2px solid var(--mars)}
.corner.br{bottom:4%;right:4%;border-bottom:2px solid var(--mars);border-right:2px solid var(--mars)}
.rig-tag{
  position:absolute;top:1.5%;left:50%;transform:translateX(-50%);
  font-family:var(--lab);font-size:9px;letter-spacing:.32em;color:var(--dust);text-transform:uppercase;white-space:nowrap;
}
.rig-read{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:min(430px,88vw);margin-top:-6px;
}
.rr{
  background:rgba(21,12,6,.85);border:1px solid var(--line-2);padding:9px 11px;font-family:var(--mono);
}
.rr .k{font-size:8.5px;letter-spacing:.2em;color:var(--shadow-dust);text-transform:uppercase;display:block;margin-bottom:3px}
.rr .v{font-size:12.5px;color:var(--ember)}
.rig-note{font-family:var(--mono);font-size:9.5px;color:var(--shadow-dust);letter-spacing:.06em;margin-top:10px}
@media(prefers-reduced-motion:reduce){
  .rot-a,.rot-b,.rot-c{animation:none}
  .twave{animation:none;stroke-dashoffset:0}
}

/* ---------- ticker ---------- */
.ticker{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);background:rgba(21,12,6,.5);overflow:hidden;padding:11px 0}
.tick-row{display:flex;gap:44px;width:max-content;animation:tick 42s linear infinite;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--shadow-dust);text-transform:uppercase;white-space:nowrap}
.tick-row span::before{content:"◇ ";color:var(--mars)}
@keyframes tick{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.tick-row{animation:none}}

/* ---------- sections ---------- */
section.blk{padding:88px 0}
.sec-eyeb{font-family:var(--lab);font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--ember);margin-bottom:14px}
h2{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:clamp(24px,3vw,36px);line-height:1.12;margin-bottom:14px;max-width:660px}
.sec-lede{color:var(--dust);max-width:600px;margin-bottom:44px}

/* reveal on scroll */
.rv{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:900px){.steps{grid-template-columns:1fr}}
.step{
  position:relative;background:linear-gradient(180deg,var(--regolith),rgba(21,12,6,.4));
  border:1px solid var(--line-2);padding:28px 24px;transition:border-color .2s ease,transform .2s ease;
}
.step::before{content:"";position:absolute;top:-1px;left:-1px;width:15px;height:15px;border-top:2px solid var(--mars);border-left:2px solid var(--mars)}
.step:hover{border-color:var(--line);transform:translateY(-3px)}
.step .num{font-family:var(--lab);font-size:10px;letter-spacing:.26em;color:var(--mars);display:block;margin-bottom:16px}
.step h3{font-family:var(--disp);font-weight:600;font-size:17.5px;text-transform:uppercase;letter-spacing:.03em;margin-bottom:10px}
.step p{font-size:14px;color:var(--dust)}
.step p .m{font-family:var(--mono);font-size:12.5px;color:var(--bone)}

/* live database */
.dbwrap{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:start}
@media(max-width:960px){.dbwrap{grid-template-columns:1fr}}
.dbstats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.dbs{
  background:var(--regolith);border:1px solid var(--line-2);padding:18px 18px 15px;position:relative;
}
.dbs::after{content:"";position:absolute;bottom:-1px;right:-1px;width:14px;height:14px;border-bottom:2px solid var(--mars);border-right:2px solid var(--mars)}
.dbs .n{font-family:var(--lab);font-size:26px;font-weight:800;color:var(--ember);line-height:1.1}
.dbs .n.warn{color:var(--amber)}
.dbs .l{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--shadow-dust);margin-top:6px;display:block}
.tiers{display:flex;flex-direction:column;gap:10px}
.tier{border:1px solid var(--line-2);background:rgba(21,12,6,.55);padding:15px 17px;display:flex;gap:14px;align-items:flex-start}
.tier .dot{width:9px;height:9px;flex-shrink:0;margin-top:6px}
.tier.t-g .dot{background:var(--green)} .tier.t-a .dot{background:var(--amber)} .tier.t-x .dot{background:var(--shadow-dust)}
.tier b{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;display:block;margin-bottom:3px}
.tier.t-g b{color:var(--green)} .tier.t-a b{color:var(--amber)} .tier.t-x b{color:var(--dust)}
.tier p{font-size:13.5px;color:var(--dust)}

/* workspace preview */
.preview{
  position:relative;border:1px solid var(--line);background:linear-gradient(180deg,var(--regolith-2),var(--regolith));
  padding:14px;box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 60px rgba(224,106,40,.08);
}
.preview::before{content:"";position:absolute;top:-1px;left:-1px;width:18px;height:18px;border-top:2px solid var(--mars);border-left:2px solid var(--mars)}
.preview::after{content:"";position:absolute;bottom:-1px;right:-1px;width:18px;height:18px;border-bottom:2px solid var(--mars);border-right:2px solid var(--mars)}
.pv-bar{display:flex;align-items:center;gap:8px;padding:0 2px 12px;font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;color:var(--shadow-dust);text-transform:uppercase}
.pv-bar i{width:8px;height:8px;border:1px solid var(--line);display:inline-block}
.pv-body{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}
@media(max-width:640px){.pv-body{grid-template-columns:1fr}}
.pv-cell{background:rgba(7,4,2,.65);border:1px solid var(--line-2);padding:12px;font-family:var(--mono);font-size:10px;color:var(--dust)}
.pv-cell .h{color:var(--ember);letter-spacing:.16em;text-transform:uppercase;font-size:9px;display:block;margin-bottom:8px}
.pv-row{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.pv-row:last-child{border-bottom:none}
.pv-fit{color:var(--ember);font-weight:700}
.pv-pill{color:var(--amber);border:1px solid rgba(255,200,87,.3);padding:0 6px;font-size:8.5px}

/* is / is not */
.talk{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:820px){.talk{grid-template-columns:1fr}}
.tk{border:1px solid var(--line-2);background:var(--regolith);padding:26px 24px}
.tk h3{font-family:var(--lab);font-size:10px;letter-spacing:.26em;text-transform:uppercase;margin-bottom:18px}
.tk.is h3{color:var(--green)} .tk.not h3{color:var(--shadow-dust)}
.tk ul{list-style:none}
.tk li{font-size:14px;color:var(--dust);padding:9px 0 9px 24px;position:relative;border-bottom:1px solid rgba(255,255,255,.04)}
.tk li:last-child{border-bottom:none}
.tk.is li::before{content:"›";position:absolute;left:2px;color:var(--green);font-family:var(--mono)}
.tk.not li::before{content:"×";position:absolute;left:2px;color:var(--shadow-dust);font-family:var(--mono)}

/* CTA band */
.band{
  position:relative;border:1px solid var(--line);text-align:center;padding:64px 40px;
  background:
    radial-gradient(600px 220px at 50% 0%,rgba(224,106,40,.14),transparent 65%),
    linear-gradient(180deg,var(--regolith-2),var(--regolith));
}
.band::before{content:"";position:absolute;top:-1px;left:-1px;width:20px;height:20px;border-top:2px solid var(--mars);border-left:2px solid var(--mars)}
.band::after{content:"";position:absolute;bottom:-1px;right:-1px;width:20px;height:20px;border-bottom:2px solid var(--mars);border-right:2px solid var(--mars)}
.band h2{margin:0 auto 14px}
.band p{color:var(--dust);max-width:520px;margin:0 auto 30px}

/* footer */
footer.hm{border-top:1px solid var(--line-2);padding:44px 0 56px;margin-top:44px}
.foot{display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap}
.foot .col{font-family:var(--mono);font-size:11.5px;color:var(--shadow-dust);line-height:2.1}
.foot .col a:hover{color:var(--bone)}
.foot .h{font-family:var(--lab);color:var(--dust);letter-spacing:.24em;text-transform:uppercase;font-size:9px;margin-bottom:6px;display:block}

/* v2.2 audit fixes */
.tlink{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--ember);text-transform:uppercase;align-self:center;border-bottom:1px solid var(--line)}
.tlink:hover{color:var(--bone);border-color:var(--dust)}
.trust-chip{display:inline-block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--green);border:1px solid rgba(63,214,143,.3);background:rgba(63,214,143,.07);padding:5px 12px;margin-bottom:18px}
.ex-card{width:min(430px,88vw);margin-top:-6px;background:rgba(21,12,6,.9);border:1px solid var(--line);padding:12px 14px}
.ex-h{display:block;font-size:8.5px;letter-spacing:.24em;color:var(--shadow-dust);text-transform:uppercase;margin-bottom:8px}
.ex-row{display:flex;justify-content:space-between;gap:12px;font-size:10.5px;color:var(--dust);padding:5px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.ex-row:last-child{border-bottom:none}
.ex-id{color:var(--bone);font-weight:700}
.ex-fit{color:var(--ember);font-weight:700}
.ex-pill{color:var(--amber);border:1px solid rgba(255,200,87,.35);padding:0 7px;font-size:9px;font-weight:700}
.sticky-cta{position:fixed;bottom:18px;right:18px;z-index:60;display:flex;align-items:center;gap:14px;background:rgba(21,12,6,.95);border:1px solid var(--line);padding:10px 12px 10px 16px;box-shadow:0 16px 44px rgba(0,0,0,.55);backdrop-filter:blur(8px)}
.sticky-cta .mono{font-size:10.5px;letter-spacing:.1em;color:var(--dust);text-transform:uppercase}
.sticky-cta .cbtn{padding:10px 18px;font-size:9.5px}
.sticky-cta[hidden]{display:none}
@media(max-width:640px){.sticky-cta{left:12px;right:12px;bottom:12px;justify-content:space-between}}
