/* =====================================================================
   ASDES STUDIO — The Console.  Refined industrial. One amber accent.
   Dark primary, designed light mode. Scoped under .asd / .asd.light
   ===================================================================== */
.asd{
  --bg:#08080a; --bg-1:#0b0b0e; --bg-2:#0e0e12;
  --panel:#101014; --panel-2:#16161b; --panel-3:#1c1c22;
  --hair:rgba(255,255,255,.07); --hair-2:rgba(255,255,255,.12); --hair-3:rgba(255,255,255,.2);
  --ink:#f5f3ee; --ink-2:#c3c3c7; --mut:#8a8a90; --mut-2:#5c5c63;
  --acc:#eaa53f; --acc-2:#f5c272; --acc-deep:#cf8a2c; --acc-ink:#120b02; --acc-soft:rgba(234,165,63,.11); --acc-line:rgba(234,165,63,.32);
  --ok:#4F9EFF; --grain:.05;
  --live:#37e0c8; --live-2:#5fece0; --live-soft:rgba(55,224,200,.12); --live-line:rgba(55,224,200,.4);
  --disp:"Space Grotesk",sans-serif; --body:"Hanken Grotesk",system-ui,sans-serif; --mono:"JetBrains Mono",monospace;
  --r:14px; --maxw:1240px;
  background:var(--bg); color:var(--ink);
  font-family:var(--body); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  min-height:100vh; position:relative; overflow-x:hidden;
}
.asd.light{
  --bg:#f3f1ea; --bg-1:#eeece4; --bg-2:#e9e7de;
  --panel:#ffffff; --panel-2:#faf8f1; --panel-3:#f3f0e6;
  --hair:rgba(22,20,12,.1); --hair-2:rgba(22,20,12,.16); --hair-3:rgba(22,20,12,.28);
  --ink:#15130c; --ink-2:#3c3a32; --mut:#5f5d54; --mut-2:#8d8b80;
  --acc:#a3650a; --acc-2:#c0801b; --acc-deep:#854f06; --acc-ink:#fff7e9; --acc-soft:rgba(163,101,10,.09); --acc-line:rgba(163,101,10,.3);
  --ok:#2563EB; --grain:.03;
  --live:#0f9b8a; --live-2:#13b29d; --live-soft:rgba(15,155,138,.1); --live-line:rgba(15,155,138,.35);
}
.asd *{box-sizing:border-box;}
.asd ::selection{background:var(--acc-soft);color:var(--ink);}
.asd a{color:inherit;text-decoration:none;}
.asd button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
.asd input,.asd textarea{font-family:inherit;}
.asd .mono{font-family:var(--mono);}
.asd .disp{font-family:var(--disp);}
.asd-wrap{max-width:var(--maxw);margin:0 auto;padding:0 44px;}
@media(max-width:720px){.asd-wrap{padding:0 22px;}}

/* ---------- atmosphere ---------- */
.asd-grain{position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:var(--grain);mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
.asd-glow{position:fixed;width:60vw;height:60vw;left:var(--mx,50%);top:var(--my,30%);transform:translate(-50%,-50%);
  pointer-events:none;z-index:0;opacity:.55;transition:opacity .6s;
  background:radial-gradient(circle,var(--acc-soft) 0%,transparent 62%);}
.asd.light .asd-glow{opacity:.4;}

/* ---------- reveal (transform-only, always visible) ---------- */
.rv{transform:translateY(20px);transition:transform 1.05s cubic-bezier(.16,.84,.3,1);will-change:transform;}
.rv.in{transform:none;}
.rv-d1{transition-delay:.07s;}.rv-d2{transition-delay:.14s;}.rv-d3{transition-delay:.21s;}.rv-d4{transition-delay:.28s;}

/* ---------- nav ---------- */
.asd-nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,border-color .3s,backdrop-filter .3s;border-bottom:1px solid transparent;}
.asd-nav.stuck{background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(18px) saturate(1.2);border-bottom:1px solid var(--hair);}
.asd-nav-in{max-width:var(--maxw);margin:0 auto;padding:16px 44px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
@media(max-width:720px){.asd-nav-in{padding:14px 22px;}}
.asd-brand{display:flex;align-items:center;gap:12px;font-family:var(--disp);font-weight:600;font-size:16.5px;letter-spacing:-.01em;}
.asd-mark{width:26px;height:26px;flex:none;position:relative;}
.asd-links{display:flex;gap:30px;font-size:14px;color:var(--mut);}
.asd-links a{position:relative;transition:color .2s;}
.asd-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--acc);transition:right .28s cubic-bezier(.2,.8,.2,1);}
.asd-links a:hover{color:var(--ink);}
.asd-links a:hover::after{right:0;}
.asd-nav-r{display:flex;align-items:center;gap:13px;}
.asd-toggle{width:36px;height:36px;border:1px solid var(--hair-2);border-radius:10px;display:grid;place-items:center;color:var(--mut);transition:.2s;}
.asd-toggle:hover{color:var(--ink);border-color:var(--hair-3);}
.asd-btn{display:inline-flex;align-items:center;gap:8px;background:var(--acc);color:var(--acc-ink);font-family:var(--disp);font-weight:600;font-size:14px;padding:10px 17px;border-radius:10px;white-space:nowrap;transition:transform .14s,box-shadow .25s,filter .2s;box-shadow:0 0 0 0 var(--acc-soft);}
.asd-btn:hover{filter:brightness(1.05);box-shadow:0 8px 30px -8px var(--acc-soft);}
.asd-btn:active{transform:translateY(1px);}
.asd-btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--hair-2);box-shadow:none;}
.asd-btn.ghost:hover{border-color:var(--hair-3);background:var(--panel);filter:none;}
@media(max-width:880px){.asd-links{display:none;}}

/* ---------- hero ---------- */
.asd-hero{position:relative;padding:150px 0 70px;}
.asd-hero-grid{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.6;
  background-image:linear-gradient(var(--hair) 1px,transparent 1px),linear-gradient(90deg,var(--hair) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(ellipse 90% 70% at 50% 0%,#000 6%,transparent 66%);}
.asd-hero-in{position:relative;z-index:2;}
.asd-status{display:inline-flex;align-items:center;gap:11px;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut-2);margin-bottom:26px;border:1px solid var(--hair);border-radius:999px;padding:7px 14px 7px 11px;}
.asd-status .live{display:inline-flex;align-items:center;gap:7px;color:var(--acc);}
.asd-status .live i{width:6px;height:6px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 0 var(--acc-soft);animation:asdpulse 2s infinite;}
@keyframes asdpulse{0%{box-shadow:0 0 0 0 var(--acc-soft);}70%{box-shadow:0 0 0 7px transparent;}100%{box-shadow:0 0 0 0 transparent;}}
.asd-status .sep{width:1px;height:11px;background:var(--hair-2);}
.asd-h1{font-family:var(--disp);font-weight:600;font-size:clamp(38px,6.2vw,76px);line-height:.98;letter-spacing:-.035em;margin:0;max-width:16ch;text-wrap:balance;}
.asd-h1 em{font-style:normal;color:var(--acc);position:relative;}
.asd-sub{font-size:clamp(16px,1.55vw,19px);line-height:1.55;color:var(--ink-2);max-width:50ch;margin:26px 0 0;}
.asd-sub b{color:var(--ink);font-weight:600;}

/* ---------- the console ---------- */
.asd-console{margin-top:42px;background:var(--panel);border:1px solid var(--hair-2);border-radius:18px;overflow:hidden;position:relative;
  box-shadow:0 40px 120px -50px rgba(0,0,0,.85),0 2px 0 0 var(--hair) inset;}
.asd.light .asd-console{box-shadow:0 40px 90px -50px rgba(40,30,10,.28);}
.asd-con-head{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--hair);background:var(--panel-2);}
.asd-con-head .dots{display:flex;gap:7px;}
.asd-con-head .dots i{width:10px;height:10px;border-radius:50%;background:var(--hair-2);}
.asd-con-head .name{font-family:var(--mono);font-size:12px;color:var(--mut);letter-spacing:.04em;}
.asd-con-head .name b{color:var(--ink-2);font-weight:500;}
.asd-con-head .right{margin-left:auto;display:flex;align-items:center;gap:14px;}
.asd-con-head .meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut-2);}
.asd-con-head .stat{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ok);}
.asd-con-head .stat i{width:6px;height:6px;border-radius:50%;background:var(--ok);}
.asd-con-body{padding:26px 26px 28px;min-height:150px;}
@media(max-width:560px){.asd-con-body{padding:20px 18px 22px;}}

.asd-q{font-family:var(--disp);font-weight:500;font-size:21px;letter-spacing:-.01em;margin:0 0 18px;display:flex;align-items:center;gap:10px;}
.asd-q .qc{color:var(--acc);font-family:var(--mono);font-size:15px;}
.asd-inrow{display:flex;gap:11px;align-items:stretch;}
.asd-field{flex:1;position:relative;background:var(--bg-1);border:1px solid var(--hair-2);border-radius:12px;transition:border-color .22s,box-shadow .22s;}
.asd.light .asd-field{background:var(--panel-2);}
.asd-field:focus-within{border-color:var(--acc-line);box-shadow:0 0 0 3px var(--acc-soft);}
.asd-field textarea{width:100%;background:none;border:none;outline:none;resize:none;color:var(--ink);font-size:15.5px;line-height:1.5;padding:15px 16px;min-height:54px;max-height:140px;}
.asd-field textarea::placeholder{color:var(--mut-2);}
.asd-mic{width:54px;border:1px solid var(--hair-2);border-radius:12px;display:grid;place-items:center;color:var(--mut);background:var(--bg-1);transition:.18s;flex:none;position:relative;}
.asd.light .asd-mic{background:var(--panel-2);}
.asd-mic:hover{color:var(--ink);border-color:var(--hair-3);}
.asd-mic.live{color:var(--acc);border-color:var(--acc-line);background:var(--acc-soft);}
.asd-mic.live::after{content:"";position:absolute;inset:-1px;border-radius:12px;border:1px solid var(--acc);animation:asdmic 1.4s ease-out infinite;}
@keyframes asdmic{0%{opacity:.7;transform:scale(1);}100%{opacity:0;transform:scale(1.18);}}
.asd-go{padding:0 24px;border-radius:12px;background:var(--acc);color:var(--acc-ink);font-family:var(--disp);font-weight:600;font-size:15px;display:inline-flex;align-items:center;gap:9px;white-space:nowrap;transition:filter .2s,transform .12s,box-shadow .25s;flex:none;}
.asd-go:hover{filter:brightness(1.05);box-shadow:0 10px 32px -10px var(--acc-soft);}
.asd-go:active{transform:translateY(1px);}
.asd-go:disabled{opacity:.45;cursor:default;box-shadow:none;}
.asd-eg{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px;}
.asd-eg .lbl{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut-2);align-self:center;margin-right:2px;}
.asd-chip{font-family:var(--mono);font-size:11.5px;color:var(--mut);border:1px solid var(--hair);border-radius:8px;padding:7px 11px;transition:.16s;}
.asd-chip:hover{color:var(--ink);border-color:var(--hair-2);background:var(--panel-2);}
.asd-michint{font-family:var(--mono);font-size:11.5px;color:var(--acc);margin-top:14px;display:flex;align-items:center;gap:9px;}
.asd-wave{display:inline-flex;gap:3px;align-items:flex-end;height:15px;}
.asd-wave i{width:3px;background:var(--acc);border-radius:2px;animation:asdw 1s ease-in-out infinite;}
.asd-wave i:nth-child(2){animation-delay:.12s;}.asd-wave i:nth-child(3){animation-delay:.24s;}.asd-wave i:nth-child(4){animation-delay:.36s;}.asd-wave i:nth-child(5){animation-delay:.48s;}
@keyframes asdw{0%,100%{height:4px;}50%{height:15px;}}

/* reasoning stream */
.asd-stream{border-top:1px solid var(--hair);margin-top:22px;padding-top:20px;}
.asd-stream-lbl{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut-2);margin-bottom:14px;}
.asd-stream-lbl .sp{width:13px;height:13px;border:2px solid var(--hair-2);border-top-color:var(--acc);border-radius:50%;animation:asdspin .7s linear infinite;}
@keyframes asdspin{to{transform:rotate(360deg);}}
.asd-stream-lbl .done{color:var(--acc);}
.asd-stream-txt{font-family:var(--mono);font-size:13.5px;line-height:1.7;color:var(--ink-2);max-width:64ch;}
.asd-caret{display:inline-block;width:8px;height:15px;background:var(--acc);margin-left:2px;vertical-align:-2px;animation:asdblink 1s steps(2) infinite;}
@keyframes asdblink{50%{opacity:0;}}
.asd-connect{font-family:var(--mono);font-size:13px;color:var(--mut);display:inline-flex;align-items:center;gap:6px;}
.asd-connect .e{color:var(--acc);}

/* the workflow pipeline */
.asd-flow{border-top:1px solid var(--hair);margin-top:22px;padding-top:22px;}
.asd-flow.first{border-top:none;margin-top:18px;padding-top:0;}
.asd-flow-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:20px;}
.asd-flow-head .lead{font-family:var(--disp);font-weight:500;font-size:16px;}
.asd-flow-head .lead b{color:var(--acc);}
.asd-flow-head .ct{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut-2);}
.asd-node{display:flex;gap:16px;}
.asd-node .marker{width:34px;flex:none;display:flex;flex-direction:column;align-items:center;}
.asd-node .num{width:34px;height:34px;border-radius:10px;border:1px solid var(--acc-line);background:var(--acc-soft);color:var(--acc);display:grid;place-items:center;font-family:var(--mono);font-size:12px;font-weight:600;flex:none;}
.asd-node .bar{width:2px;flex:1;background:var(--hair-2);margin:6px 0;transform:scaleY(0);transform-origin:top;transition:transform .5s ease .1s;}
.asd-node.shown .bar{transform:scaleY(1);}
.asd-node:last-child .bar{display:none;}
.asd-node .card{flex:1;background:var(--bg-1);border:1px solid var(--hair);border-radius:12px;padding:14px 16px;margin-bottom:10px;
  transform:translateY(10px);transition:transform .42s cubic-bezier(.2,.8,.2,1);position:relative;}
.asd.light .asd-node .card{background:var(--panel-2);}
.asd-node.shown .card{transform:none;}
.asd-node .card .top{display:flex;align-items:center;gap:9px;margin-bottom:4px;}
.asd-node .card .nm{font-family:var(--disp);font-weight:600;font-size:15px;}
.asd-node .card .on{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ok);}
.asd-node .card .on i{width:5px;height:5px;border-radius:50%;background:var(--ok);}
.asd-node .card .ds{font-size:13.5px;color:var(--mut);line-height:1.45;}

.asd-readout{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.asd-tag{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:12px;border:1px solid var(--hair-2);border-radius:10px;padding:10px 14px;background:var(--panel-2);}
.asd-tag .k{color:var(--mut-2);font-size:10px;letter-spacing:.1em;text-transform:uppercase;}
.asd-tag b{color:var(--ink);font-weight:600;}
.asd-tag .meter{display:inline-flex;gap:3px;}
.asd-tag .meter i{width:5px;height:12px;border-radius:1px;background:var(--hair-2);}
.asd-tag .meter i.on{background:var(--acc);}
.asd-cta{display:flex;flex-wrap:wrap;gap:13px;align-items:center;margin-top:22px;padding-top:20px;border-top:1px solid var(--hair);}
.asd-book{display:inline-flex;align-items:center;gap:9px;background:var(--acc);color:var(--acc-ink);font-family:var(--disp);font-weight:600;font-size:15px;padding:13px 20px;border-radius:12px;white-space:nowrap;transition:filter .2s,transform .12s,box-shadow .25s;}
.asd-book:hover{filter:brightness(1.05);box-shadow:0 12px 34px -10px var(--acc-soft);}
.asd-book:active{transform:translateY(1px);}
.asd-redo{font-family:var(--mono);font-size:11.5px;color:var(--mut);display:inline-flex;align-items:center;gap:7px;transition:color .18s;}
.asd-redo:hover{color:var(--ink);}
.asd-saved-pill{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--acc);letter-spacing:.04em;}

/* hero trust row */
.asd-trust{display:flex;flex-wrap:wrap;gap:26px;margin-top:30px;align-items:center;}
.asd-trust .t{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--mut-2);display:flex;align-items:center;gap:9px;}
.asd-trust .t b{color:var(--ink-2);font-weight:500;}
.asd-trust .t .ic{color:var(--acc);display:grid;place-items:center;}

/* ---------- console mode switch ---------- */
.asd-modes{display:inline-flex;gap:3px;padding:3px;background:var(--bg-1);border:1px solid var(--hair);border-radius:11px;margin-bottom:18px;}
.asd.light .asd-modes{background:var(--panel-2);}
.asd-mode{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--mut);padding:8px 14px;border-radius:8px;transition:.18s;}
.asd-mode.on{background:var(--panel);color:var(--ink);box-shadow:0 1px 0 var(--hair);}
.asd.light .asd-mode.on{background:#fff;}
.asd-mode:hover:not(.on){color:var(--ink-2);}

/* ---------- the voice bubble ---------- */
.asd-console.bare{background:transparent;border:none;box-shadow:none;overflow:visible;}
.asd-console.bare .asd-con-body{padding:4px 0 0;min-height:0;}
.asd-console.bare .asd-modes{margin:0 auto 8px;}
.asd-vstage{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:6px 0 12px;}
.asd-orbc{position:relative;width:340px;height:340px;max-width:86vw;display:grid;place-items:center;border:none;background:none;padding:0;cursor:default;-webkit-tap-highlight-color:transparent;}
.asd-orbc.press{cursor:pointer;}
.asd-orbc.press:disabled{cursor:default;}
.asd-orbc-cv{display:block;max-width:100%;height:auto;}
.asd-orb-center{position:absolute;font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;color:var(--mut);pointer-events:none;text-transform:uppercase;transition:color .3s,opacity .3s;}
.asd-orbc.press:hover .asd-orb-center{color:var(--ink);}
.asd-orbc.listening .asd-orb-center,.asd-orbc.speaking .asd-orb-center{color:var(--acc);}
.asd-vstate{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut-2);display:flex;align-items:center;gap:9px;min-height:16px;margin-top:2px;}
.asd-vstate .d{width:7px;height:7px;border-radius:50%;background:var(--mut-2);transition:background .3s;}
.asd-vstate .d.listening,.asd-vstate .d.speaking{background:var(--acc);box-shadow:0 0 0 4px var(--acc-soft);}
.asd-vstate .d.thinking{background:var(--acc-2);animation:asdblink 1s steps(2) infinite;}
.asd-vtrans{font-family:var(--disp);font-weight:500;font-size:clamp(19px,2.3vw,26px);line-height:1.28;letter-spacing:-.015em;color:var(--ink);max-width:26ch;min-height:1.28em;text-wrap:balance;}
.asd-vtrans .ph{color:var(--mut-2);font-weight:400;}
.asd-vctrl{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:6px;}
.asd-talkbtn{display:inline-flex;align-items:center;gap:11px;font-family:var(--disp);font-weight:600;font-size:15px;color:var(--acc-ink);background:var(--acc);border:1px solid var(--acc);border-radius:999px;padding:13px 26px;white-space:nowrap;transition:.18s,box-shadow .25s;box-shadow:0 10px 30px -12px var(--acc-soft);}
.asd-talkbtn:hover{filter:brightness(1.05);box-shadow:0 14px 36px -12px var(--acc-soft);}
.asd-talkbtn:active{transform:translateY(1px);}
.asd-talkbtn.live{background:var(--panel-2);color:var(--acc);border-color:var(--acc-line);box-shadow:0 0 0 4px var(--acc-soft);}
.asd-talkbtn:disabled{opacity:.5;cursor:default;box-shadow:none;filter:none;}
.asd-talkbtn .micdot{width:8px;height:8px;border-radius:50%;background:currentColor;}
.asd-talkbtn.live .micdot{animation:asdblink .9s steps(2) infinite;}
.asd-vsub{font-family:var(--mono);font-size:11px;color:var(--mut-2);letter-spacing:.04em;}
.asd-vsub a{color:var(--mut);border-bottom:1px solid var(--hair-2);}
.asd-vsub a:hover{color:var(--ink);}
.asd-vmini{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--hair);padding-bottom:16px;margin-bottom:18px;}
.asd-vmini .o{width:30px;height:30px;flex:none;position:relative;display:grid;place-items:center;}
.asd-vmini .o .core{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 50% 36%,var(--acc-2),var(--acc) 58%,var(--acc-deep));box-shadow:0 0 14px -2px var(--acc-soft);}
.asd-vmini.speaking .o .core{animation:asdspeak .5s ease-in-out infinite;}
.asd-vmini.thinking .o .core{animation:asdbreath 1.1s ease-in-out infinite;}
@keyframes asdbreath{0%,100%{transform:scale(1);}50%{transform:scale(1.09);}}
@keyframes asdspeak{0%,100%{transform:scale(1);}50%{transform:scale(1.16);}}
.asd-vmini .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);}
.asd-vmini .lbl b{color:var(--acc);font-weight:500;}
.asd-vmini .mute{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--mut-2);display:inline-flex;align-items:center;gap:6px;}
.asd-vmini .mute:hover{color:var(--ink);}

/* ========== AWAKE VOICE CONSOLE (.va-*) - the live press-to-talk control ==========
   The control under the awake orb. Premium dark/amber: a considered mic button with a
   glow ring + clear press states, a calm state line, a tidy starter-question row.
   (Voice machinery wiring is untouched - this is styling only.) */
.va-console{display:flex;flex-direction:column;align-items:center;width:100%;gap:6px;}
.awake-ctrl{display:flex;flex-direction:column;align-items:center;gap:14px;margin:14px auto 4px;max-width:560px;padding:0 24px;}
/* state line */
.va-state{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut-2);min-height:14px;transition:color .3s;}
.va-state .va-dot{width:7px;height:7px;border-radius:50%;background:var(--mut-2);flex:none;transition:background .3s,box-shadow .3s;}
/* the mic button: a glow-ringed disc with a refined mic glyph */
.va-talk{display:inline-flex;flex-direction:column;align-items:center;gap:11px;background:none;border:0;padding:4px;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.va-talk:disabled{cursor:default;opacity:.55;}
.va-mic{position:relative;width:66px;height:66px;display:grid;place-items:center;}
.va-mic-ring{position:absolute;inset:0;border-radius:50%;border:1px solid var(--acc-line);opacity:.6;pointer-events:none;}
.va-mic-ring2{inset:-7px;opacity:.22;}
.va-mic-btn{position:relative;z-index:1;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:var(--acc);
  background:radial-gradient(circle at 50% 36%,color-mix(in srgb,var(--acc) 18%,var(--panel-2)) 0%,var(--panel-2) 70%);
  border:1px solid var(--acc-line);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 30px -14px var(--acc-soft);
  transition:transform .14s ease,box-shadow .3s ease,border-color .3s ease,color .3s ease;}
.va-mic-btn svg{width:24px;height:24px;}
.va-talk:hover .va-mic-btn{border-color:var(--acc);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 14px 38px -14px var(--acc-soft);transform:translateY(-1px);}
.va-talk:active .va-mic-btn{transform:translateY(1px) scale(.97);}
.va-talk:focus-visible{outline:none;}
.va-talk:focus-visible .va-mic-btn{outline:2px solid var(--acc-line);outline-offset:5px;}
/* listening: amber, the rings pulse outward */
.va-talk.is-listening .va-mic-btn{color:var(--acc);border-color:var(--acc);box-shadow:0 0 0 4px var(--acc-soft),0 14px 38px -14px var(--acc-soft);}
.va-talk.is-listening .va-mic-ring{animation:vaPing 1.6s ease-out infinite;}
.va-talk.is-listening .va-mic-ring2{animation:vaPing 1.6s ease-out .4s infinite;}
/* thinking: amber-2, gentle breath */
.va-talk.is-thinking .va-mic-btn{color:var(--acc-2);border-color:var(--acc-line);animation:vaBreath 1.2s ease-in-out infinite;}
/* speaking: teal-live */
.va-talk.is-speaking .va-mic-btn{color:var(--live);border-color:var(--live-line);box-shadow:0 0 0 4px var(--live-soft),0 14px 38px -14px var(--live-soft);}
.va-talk.is-speaking .va-mic-ring,.va-talk.is-speaking .va-mic-ring2{border-color:var(--live-line);}
@keyframes vaPing{0%{transform:scale(1);opacity:.6;}80%{opacity:0;}100%{transform:scale(1.5);opacity:0;}}
@keyframes vaBreath{0%,100%{transform:scale(1);}50%{transform:scale(1.06);}}
.va-talk-t{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);transition:color .2s;}
.va-talk:hover .va-talk-t{color:var(--ink-2);}
/* micro caption + turnstile */
.va-micro{font-family:var(--mono);font-size:11px;line-height:1.5;color:var(--mut-2);letter-spacing:.02em;text-align:center;max-width:42ch;margin:2px 0 0;}
.va-turnstile{margin-top:2px;min-height:0;}
.va-console.nomic .va-mic-ring,.va-console.nomic .va-talk:not(:hover) .va-mic-btn{opacity:.85;}
/* starter questions row */
.va-starters{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:9px;margin-top:18px;padding-top:18px;border-top:1px solid var(--hair);max-width:560px;}
.va-starters-lbl{width:100%;text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut-2);margin-bottom:4px;}
.va-chip{font-family:var(--body);font-size:13px;font-weight:500;color:var(--ink-2);background:var(--panel-2);border:1px solid var(--hair-2);border-radius:999px;padding:9px 15px;cursor:pointer;transition:border-color .2s,color .2s,background .2s,transform .12s;}
.va-chip:hover{border-color:var(--acc-line);color:var(--ink);background:var(--panel-3);}
.va-chip:active{transform:translateY(1px);}
@media(prefers-reduced-motion:reduce){
  .va-talk.is-listening .va-mic-ring,.va-talk.is-listening .va-mic-ring2,.va-talk.is-thinking .va-mic-btn{animation:none;}
}
@media(max-width:600px){
  .va-starters{gap:7px;}
  .va-chip{font-size:12.5px;padding:8px 13px;}
}

/* ---------- section frame ---------- */
.asd-sec{position:relative;padding:120px 0;border-top:1px solid var(--hair);}
.asd-kick{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut-2);margin:0 0 22px;}
.asd-kick .ix{color:var(--acc);}
.asd-kick .ln{flex:1;height:1px;background:var(--hair);max-width:60px;}
.asd-h2{font-family:var(--disp);font-weight:600;font-size:clamp(28px,4vw,46px);line-height:1.04;letter-spacing:-.028em;margin:0;max-width:20ch;text-wrap:balance;}
.asd-h2 .mut{color:var(--mut-2);}
.asd-lead{font-size:clamp(16px,1.5vw,18px);line-height:1.6;color:var(--ink-2);max-width:56ch;margin:18px 0 0;}
.asd-textlink{color:var(--ink);border-bottom:1px solid var(--hair-3);transition:color .16s,border-color .16s;}
.asd-textlink:hover{color:var(--acc);border-color:var(--acc-line);}

/* ---------- proof / infrastructure ---------- */
.asd-proof-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;}
.asd-cockpit{margin-top:44px;border:1px solid var(--hair-2);border-radius:18px;overflow:hidden;background:var(--panel);box-shadow:0 40px 110px -60px rgba(0,0,0,.8);}
.asd.light .asd-cockpit{box-shadow:0 30px 70px -50px rgba(40,30,10,.22);}
.asd-cockpit-bar{display:flex;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid var(--hair);background:var(--panel-2);font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--mut);}
.asd-cockpit-bar .tabs{display:flex;gap:4px;margin-left:8px;}
.asd-cockpit-bar .tab{padding:5px 11px;border-radius:7px;color:var(--mut-2);cursor:pointer;transition:.18s;font-size:11px;}
.asd-cockpit-bar .tab.on{background:var(--panel-3);color:var(--ink);}
.asd-cockpit-bar .tab:hover{color:var(--ink);}
.asd-cockpit-bar .r{margin-left:auto;display:inline-flex;align-items:center;gap:8px;color:var(--ok);}
.asd-cockpit-bar .r i{width:6px;height:6px;border-radius:50%;background:var(--ok);}
.asd-cockpit-body{display:grid;grid-template-columns:230px 1fr;min-height:380px;}
@media(max-width:780px){.asd-cockpit-body{grid-template-columns:1fr;}}
.asd-cockpit-side{border-right:1px solid var(--hair);padding:16px;display:flex;flex-direction:column;gap:5px;}
@media(max-width:780px){.asd-cockpit-side{border-right:none;border-bottom:1px solid var(--hair);}}
.asd-fleet-row{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:9px;font-family:var(--mono);font-size:12px;color:var(--mut);transition:background .18s;}
.asd-fleet-row:hover{background:var(--panel-2);color:var(--ink-2);}
.asd-fleet-row .st{width:7px;height:7px;border-radius:50%;flex:none;}
.asd-fleet-row .st.run{background:var(--acc);box-shadow:0 0 0 3px var(--acc-soft);}
.asd-fleet-row .st.ok{background:var(--ok);}
.asd-fleet-row .st.idle{background:var(--mut-2);}
.asd-fleet-row .nm{flex:1;color:var(--ink-2);}
.asd-fleet-row .v{color:var(--mut-2);font-size:11px;}
.asd-cockpit-main{padding:22px 24px;position:relative;}
.asd-cockpit-cap{position:absolute;bottom:16px;left:24px;right:24px;font-family:var(--mono);font-size:11px;color:var(--mut-2);display:flex;gap:9px;align-items:center;}
.asd-cockpit-cap .b{color:var(--acc);text-transform:uppercase;letter-spacing:.1em;font-size:10px;}

/* cockpit panes */
.asd-pane{display:none;}
.asd-pane.on{display:block;}
.asd-graph svg{width:100%;height:300px;display:block;}
.asd-log{font-family:var(--mono);font-size:12px;line-height:1.85;color:var(--mut);}
.asd-log .ln{display:flex;gap:14px;}
.asd-log .tm{color:var(--mut-2);}
.asd-log .ev .k{color:var(--acc);}
.asd-log .ev .ok{color:var(--ok);}
.asd-code{font-family:var(--mono);font-size:12.5px;line-height:1.8;color:var(--ink-2);}
.asd-code .ln{display:flex;gap:16px;}
.asd-code .no{color:var(--mut-2);width:18px;text-align:right;flex:none;user-select:none;}
.asd-code .add{color:var(--ok);}
.asd-code .kw{color:var(--acc);}
.asd-code .cm{color:var(--mut-2);}
.asd-proof-try{margin-top:36px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;}

/* arcade gesture */
.asd-arcade{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:34px;}
@media(max-width:880px){.asd-arcade{grid-template-columns:repeat(2,1fr);}}
.asd-arc{border:1px solid var(--hair);border-radius:13px;padding:16px;min-height:142px;display:flex;flex-direction:column;justify-content:space-between;background:var(--panel);transition:border-color .2s,transform .2s,background .2s;}
.asd-arc.live{cursor:pointer;}
.asd-arc.live:hover{border-color:var(--acc-line);transform:translateY(-3px);}
.asd-arc .st{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px;color:var(--ok);}
.asd-arc.soon .st{color:var(--mut-2);}
.asd-arc .st i{width:5px;height:5px;border-radius:50%;background:currentColor;}
.asd-arc .nm{font-family:var(--disp);font-weight:600;font-size:15.5px;margin-top:auto;}
.asd-arc .ds{font-size:12.5px;color:var(--mut);margin-top:6px;line-height:1.4;}
.asd-arc .go{margin-top:12px;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--acc);display:inline-flex;align-items:center;gap:6px;opacity:0;transform:translateX(-4px);transition:.2s;}
.asd-arc.live:hover .go{opacity:1;transform:none;}

/* ---------- proof: narrative + doors ---------- */
.asd-proof-split{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:end;margin-top:6px;}
@media(max-width:860px){.asd-proof-split{grid-template-columns:1fr;gap:18px;}}
.asd-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:1px solid var(--hair);}
@media(max-width:780px){.asd-principles{grid-template-columns:1fr;}}
.asd-principle{display:flex;gap:16px;padding:26px 28px 26px 0;border-right:1px solid var(--hair);align-items:flex-start;}
.asd-principle:last-child{border-right:none;padding-right:0;}
@media(max-width:780px){.asd-principle{border-right:none;border-bottom:1px solid var(--hair);padding:22px 0;}}
.asd-principle .pn{font-family:var(--mono);font-size:12px;color:var(--acc);padding-top:5px;flex:none;}
.asd-principle .pt{font-family:var(--disp);font-weight:600;font-size:18px;letter-spacing:-.01em;line-height:1.15;}
.asd-principle .pd{font-size:14px;color:var(--mut);margin-top:8px;line-height:1.5;}
.asd-doors-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:60px;flex-wrap:wrap;}
.asd-doors-head h3{font-family:var(--disp);font-weight:600;font-size:clamp(20px,2.4vw,26px);letter-spacing:-.02em;margin:0;}
.asd-doors-head span{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--mut-2);}
.asd-doors-head + .asd-arcade{margin-top:22px;}
.asd-listen{display:flex;align-items:center;gap:18px;margin-top:18px;border:1px solid var(--hair-2);border-radius:14px;padding:18px 20px;background:var(--panel);transition:border-color .22s,transform .22s;}
.asd-listen:hover{border-color:var(--acc-line);transform:translateY(-2px);}
.asd-listen .li-ic{width:46px;height:46px;border-radius:12px;background:var(--acc-soft);color:var(--acc);display:grid;place-items:center;flex:none;}
.asd-listen .li-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;}
.asd-listen .li-k{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut-2);}
.asd-listen .li-t{font-family:var(--disp);font-weight:500;font-size:16px;letter-spacing:-.01em;color:var(--ink);}
.asd-listen .li-go{font-size:12px;letter-spacing:.04em;color:var(--acc);display:inline-flex;align-items:center;gap:7px;white-space:nowrap;flex:none;}

/* ---------- work ---------- */
.asd-work-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;}
.asd-work{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:42px;}
@media(max-width:980px){.asd-work{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.asd-work{grid-template-columns:1fr;}}
.asd-case{border:1px solid var(--hair);border-radius:15px;overflow:hidden;background:var(--panel);transition:border-color .25s,transform .25s;cursor:pointer;}
.asd-case:hover{border-color:var(--hair-3);transform:translateY(-4px);}
.asd-case-top{height:182px;background:var(--bg-1);border-bottom:1px solid var(--hair);position:relative;overflow:hidden;display:grid;place-items:center;}
.asd.light .asd-case-top{background:var(--panel-2);}
.asd-case-top .tag{position:absolute;top:14px;left:14px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);background:color-mix(in srgb,var(--bg) 64%,transparent);border:1px solid var(--hair);padding:5px 9px;border-radius:7px;backdrop-filter:blur(6px);}
.asd-case-top .big{font-family:var(--disp);font-weight:700;font-size:54px;color:var(--acc);letter-spacing:-.03em;opacity:.92;}
.asd-case-top .big span{font-size:22px;color:var(--mut-2);font-weight:500;margin-left:4px;}
.asd-case-body{padding:18px 19px 20px;}
.asd-case-body .t{font-family:var(--disp);font-weight:600;font-size:17.5px;line-height:1.2;}
.asd-case-body .d{font-size:13.5px;color:var(--mut);margin-top:8px;line-height:1.5;}
.asd-case-body .arrow{margin-top:14px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--mut-2);display:inline-flex;align-items:center;gap:7px;transition:color .2s,gap .2s;}
.asd-case:hover .arrow{color:var(--acc);gap:11px;}

/* ---------- expansion ---------- */
.asd-exp{position:relative;padding:130px 0;border-top:1px solid var(--hair);background:var(--bg-1);overflow:hidden;}
.asd-exp-h{font-family:var(--disp);font-weight:600;font-size:clamp(28px,4.4vw,52px);line-height:1.04;letter-spacing:-.03em;margin:0;max-width:18ch;text-wrap:balance;}
.asd-exp-h .mut{color:var(--mut-2);}
.asd-exp-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:1px solid var(--hair);}
@media(max-width:780px){.asd-exp-steps{grid-template-columns:1fr;}}
.asd-exp-step{padding:24px 26px 24px 0;border-right:1px solid var(--hair);}
.asd-exp-step:last-child{border-right:none;}
@media(max-width:780px){.asd-exp-step{border-right:none;border-bottom:1px solid var(--hair);padding:22px 0;}}
.asd-exp-step .n{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);display:flex;align-items:center;gap:10px;}
.asd-exp-step .n .num{font-size:13px;}
.asd-exp-step h4{font-family:var(--disp);font-weight:600;font-size:19px;margin:16px 0 8px;letter-spacing:-.01em;}
.asd-exp-step p{font-size:14.5px;color:var(--mut);line-height:1.55;margin:0;}

/* ---------- podcast ---------- */
.asd-pod{margin-top:42px;border:1px solid var(--hair-2);border-radius:16px;background:var(--panel);overflow:hidden;}
.asd-pod-now{display:flex;gap:20px;align-items:center;flex-wrap:wrap;padding:22px;}
.asd-pod-play{width:64px;height:64px;border-radius:16px;background:var(--acc);color:var(--acc-ink);display:grid;place-items:center;flex:none;transition:transform .15s,filter .2s,box-shadow .25s;}
.asd-pod-play:hover{filter:brightness(1.05);transform:scale(1.03);box-shadow:0 12px 32px -10px var(--acc-soft);}
.asd-pod-meta{flex:1;min-width:220px;}
.asd-pod-meta .ep{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut-2);display:flex;align-items:center;gap:9px;}
.asd-pod-meta .ep .day{color:var(--acc);}
.asd-pod-meta .tt{font-family:var(--disp);font-weight:600;font-size:19px;margin-top:6px;letter-spacing:-.01em;}
.asd-pod-meta .vo{font-size:13px;color:var(--mut);margin-top:5px;}
.asd-pod-wave{display:flex;align-items:center;gap:3px;height:38px;flex:none;}
.asd-pod-wave i{width:3px;border-radius:2px;background:var(--hair-2);transition:background .2s;}
.asd-pod-wave.on i{background:var(--acc);animation:asdpw 1s ease-in-out infinite;}
@keyframes asdpw{0%,100%{height:7px;}50%{height:34px;}}
.asd-pod-list{border-top:1px solid var(--hair);}
.asd-pod-item{display:flex;align-items:center;gap:16px;padding:15px 22px;border-bottom:1px solid var(--hair);transition:background .18s;cursor:pointer;}
.asd-pod-item:last-child{border-bottom:none;}
.asd-pod-item:hover{background:var(--panel-2);}
.asd-pod-item .epn{font-family:var(--mono);font-size:11px;color:var(--mut-2);width:42px;flex:none;}
.asd-pod-item .ttl{font-size:14px;color:var(--ink-2);flex:1;}
.asd-pod-item .dur{font-family:var(--mono);font-size:11px;color:var(--mut-2);}
.asd-pod-foot{padding:16px 22px;display:flex;justify-content:space-between;align-items:center;}

/* ---------- close ---------- */
.asd-close{position:relative;padding:150px 0;border-top:1px solid var(--hair);text-align:center;overflow:hidden;}
.asd-close-grid{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(var(--hair) 1px,transparent 1px),linear-gradient(90deg,var(--hair) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,#000 4%,transparent 64%);}
.asd-close h2{position:relative;z-index:2;font-family:var(--disp);font-weight:600;font-size:clamp(34px,5.4vw,68px);letter-spacing:-.035em;margin:0;line-height:1;text-wrap:balance;}
.asd-close p{position:relative;z-index:2;font-size:17px;color:var(--ink-2);margin:22px 0 0;}
.asd-intents{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:26px;}
.asd-intent{font-family:var(--mono);font-size:12px;letter-spacing:.03em;color:var(--mut);border:1px solid var(--hair-2);border-radius:999px;padding:9px 16px;transition:.18s;}
.asd-intent:hover{color:var(--ink);border-color:var(--hair-3);}
.asd-intent.on{color:var(--acc-ink);background:var(--acc);border-color:var(--acc);}
.asd-close .big{position:relative;z-index:2;margin-top:34px;display:inline-flex;align-items:center;gap:11px;background:var(--acc);color:var(--acc-ink);font-family:var(--disp);font-weight:600;font-size:17px;padding:17px 30px;border-radius:14px;white-space:nowrap;transition:filter .2s,transform .12s,box-shadow .3s;}
.asd-close .big:hover{filter:brightness(1.05);box-shadow:0 16px 44px -12px var(--acc-soft);}
.asd-close .big:active{transform:translateY(1px);}

/* ---------- footer ---------- */
.asd-foot{border-top:1px solid var(--hair);padding:54px 0 60px;}
.asd-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;}
@media(max-width:780px){.asd-foot-grid{grid-template-columns:1fr 1fr;gap:26px;}}
.asd-foot .about{max-width:280px;}
.asd-foot .about p{font-size:13.5px;color:var(--mut);line-height:1.55;margin:14px 0 0;}
.asd-foot h5{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut-2);margin:0 0 14px;}
.asd-foot a.fl{display:block;font-size:13.5px;color:var(--mut);margin-bottom:9px;transition:color .16s;}
.asd-foot a.fl:hover{color:var(--ink);}
.asd-foot-bottom{margin-top:46px;padding-top:22px;border-top:1px solid var(--hair);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--mut-2);}

/* back-to-comparison chip */
.asd-back{position:fixed;left:18px;bottom:18px;z-index:60;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--mut);background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(10px);border:1px solid var(--hair-2);border-radius:999px;padding:8px 14px;display:inline-flex;align-items:center;gap:8px;transition:.2s;}
.asd-back:hover{color:var(--ink);border-color:var(--hair-3);}

/* ============ MEET THE STAFF - five doors, text-first cards (storefront reframe S1 final shape) ============ */
/* Wayfinding strip: words carry the meaning, the live console below carries the proof.
   Suite glyphs are icon-scale marks only. Deliverable graphics deferred to suite pages. */
.staff-sec{border-top:1px solid var(--hair);}
.staff-doors{margin-top:42px;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;}
@media(max-width:1180px){.staff-doors{grid-template-columns:repeat(3,1fr);}}
@media(max-width:840px){.staff-doors{grid-template-columns:repeat(2,1fr);}}
@media(max-width:540px){.staff-doors{grid-template-columns:1fr;}}
.door-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--hair);border-radius:14px;background:var(--panel);padding:18px 18px 16px;min-height:230px;transition:border-color .22s,transform .22s,box-shadow .25s;}
.door-card:hover{border-color:var(--hair-2);transform:translateY(-2px);}
.door-card:not(.is-live){opacity:.86;}
.door-card:not(.is-live):hover{opacity:1;}
.door-card.is-live{border-color:var(--acc-line);background:linear-gradient(180deg,var(--acc-soft),transparent 55%),var(--panel);cursor:pointer;}
.door-card.is-live:hover{border-color:var(--acc);box-shadow:0 14px 38px -18px var(--acc-soft);}
.door-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.door-suite{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut-2);padding-top:4px;}
.door-card.is-live .door-suite{color:var(--acc);}
.door-ic{width:26px;height:26px;flex:none;color:var(--acc);opacity:.55;transition:opacity .25s;}
.door-card:hover .door-ic{opacity:.85;}
.door-ic svg{width:100%;height:100%;display:block;}
.door-tech .door-ic{color:var(--ok);}
.door-name{font-family:var(--disp);font-weight:600;font-size:16.5px;line-height:1.25;margin:14px 0 0;color:var(--ink);}
.door-line{font-size:12.5px;color:var(--mut);line-height:1.55;margin:8px 0 0;}
.door-foot{margin-top:auto;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;}
.door-pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--hair);border-radius:999px;padding:5px 10px;color:var(--mut-2);}
.door-pill i{width:5px;height:5px;border-radius:50%;background:currentColor;}
.door-pill.live{color:var(--acc);border-color:var(--acc-line);}
.asd .door-go{display:inline-flex;align-items:center;gap:7px;background:var(--acc);color:var(--acc-ink);font-family:var(--disp);font-weight:600;font-size:12.5px;padding:8px 14px;border-radius:9px;transition:filter .2s,box-shadow .25s,gap .18s;box-shadow:0 0 0 0 var(--acc-soft);}
.asd .door-card.is-live:hover .door-go{filter:brightness(1.06);box-shadow:0 8px 26px -8px var(--acc-soft);gap:10px;}
/* the open door - Operations console (relocated machinery lives inside) */
.staff-open{margin-top:64px;padding-top:8px;}
.staff-open-kick{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--acc);border:1px solid var(--acc-line);border-radius:999px;padding:6px 13px;}
.staff-open-kick .dot{width:6px;height:6px;border-radius:50%;background:var(--acc);}
.staff-open-h{font-family:var(--disp);font-weight:600;font-size:clamp(20px,2.6vw,27px);letter-spacing:-.015em;line-height:1.22;margin:16px 0 0;}
.staff-open-h .mut{color:var(--acc);opacity:.9;}
.staff-open .asd-lead{margin-top:12px;}
/* reduced motion: strip renders fully static */
@media(prefers-reduced-motion:reduce){
  .door-card,.door-ic,.door-go{transition:none;}
  .door-card:hover{transform:none;}
}

/* ============ THE LADDER - four sizes of yes (storefront reframe S2) ============ */
.ladder-sec{border-top:1px solid var(--hair);}
.lad{margin-top:42px;display:flex;flex-direction:column;gap:11px;max-width:860px;}
.lad-rung{display:flex;align-items:center;gap:22px;border:1px solid var(--hair);border-radius:14px;background:var(--panel);padding:20px 24px;transition:border-color .22s;}
.lad-rung:hover{border-color:var(--hair-2);}
.lad-n{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--mut-2);border:1px solid var(--hair-2);border-radius:9px;padding:8px 10px;flex:none;}
.lad-body h3{font-family:var(--disp);font-weight:600;font-size:15.5px;margin:0;color:var(--ink);}
.lad-body p{font-size:12.5px;color:var(--mut);line-height:1.55;margin:6px 0 0;max-width:54ch;}
.lad-chip{margin-left:auto;flex:none;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--hair-2);border-radius:999px;padding:6px 12px;color:var(--mut);white-space:nowrap;}
.lad-chip.free{color:var(--acc);border-color:var(--acc-line);}
.lad-rung.lad-sig{border-color:var(--acc-line);background:linear-gradient(90deg,var(--acc-soft),transparent 55%),var(--panel);}
.lad-rung.lad-sig .lad-n{color:var(--acc);border-color:var(--acc-line);}
.lad-chip.sig{color:var(--acc);border-color:var(--acc-line);}
@media(max-width:640px){.lad-rung{flex-wrap:wrap;gap:12px;padding:18px;}.lad-chip{margin-left:0;}}
@media(prefers-reduced-motion:reduce){.lad-rung{transition:none;}}

/* ============ RECEIPTS (thin) + PERSONAL TEASER + PODCAST SLOT (storefront reframe S3) ============ */
.receipts-sec{border-top:1px solid var(--hair);padding:74px 0;}
.rec-items{margin-top:30px;display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
@media(max-width:840px){.rec-items{grid-template-columns:1fr;gap:18px;}}
.rec-it{display:flex;flex-direction:column;gap:6px;border-left:1px solid var(--hair-2);padding-left:16px;}
.rec-it b{font-family:var(--disp);font-weight:600;font-size:14px;color:var(--ink);}
.rec-it span{font-size:12.5px;color:var(--mut);line-height:1.55;}
.personal-sec{padding:10px 0 84px;}
.per-panel{display:flex;align-items:center;gap:22px;flex-wrap:wrap;border:1px solid var(--hair);border-radius:16px;background:linear-gradient(135deg,var(--acc-soft),transparent 45%),var(--panel);padding:26px 30px;}
.per-kick{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--acc);}
.per-copy h3{font-family:var(--disp);font-weight:600;font-size:clamp(18px,2.2vw,23px);margin:10px 0 0;color:var(--ink);}
.per-copy p{font-size:13px;color:var(--mut);line-height:1.6;margin:8px 0 0;max-width:62ch;}
.per-panel .door-pill{margin-left:auto;flex:none;}
@media(max-width:640px){.per-panel .door-pill{margin-left:0;}}
.podcast-sec{border-top:1px solid var(--hair);}
.pod-shell{margin-top:34px;display:flex;align-items:center;gap:18px;border:1px solid var(--hair-2);border-radius:16px;background:var(--panel);padding:22px 26px;}
.pod-play{width:44px;height:44px;flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--acc-line);color:var(--acc);}
.pod-meta .tt{font-family:var(--disp);font-weight:600;font-size:14.5px;color:var(--ink);}
.pod-meta .sub{font-size:12px;color:var(--mut-2);margin-top:4px;}

/* THE LAB (section 03) - internal-builds tile grid, added 2026-06-06 */
.lab-grid{margin-top:42px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
@media(max-width:1180px){.lab-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:840px){.lab-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:540px){.lab-grid{grid-template-columns:1fr;}}
.lab-grid .door-card{min-height:190px;}

/* ===== THE WORK - uniform 4-card product grid (restore-pass rebuild 2026-06-14) =====
   Every card is pixel-identical: same width, same phone-mockup media area, same padding,
   same text-block layout. 4-up on desktop, 2x2 on tablet, 1-col on mobile. */
.work-grid{margin-top:42px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:stretch;}
@media(max-width:1080px){.work-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.work-grid{grid-template-columns:1fr;}}
.work-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--hair);border-radius:16px;background:var(--panel);overflow:hidden;transition:border-color .22s,transform .22s,box-shadow .25s;text-decoration:none;}
.work-card:hover{border-color:var(--hair-2);transform:translateY(-3px);box-shadow:0 18px 44px -22px rgba(0,0,0,.6);}
/* media area: identical for every card - a self-contained glyph panel on a soft gradient stage */
.work-shot{position:relative;background:linear-gradient(180deg,var(--bg-1),var(--bg-2));border-bottom:1px solid var(--hair);overflow:hidden;display:flex;align-items:stretch;justify-content:center;padding:16px 16px 16px;}
/* glyph panel: fixed aspect, identical footprint + radius + size on all four cards */
.glyph-panel{position:relative;width:100%;aspect-ratio:4/3;border-radius:12px;border:1px solid var(--hair-2);overflow:hidden;
  background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--acc) 12%,transparent) 0%,transparent 58%),radial-gradient(circle at 50% 120%,color-mix(in srgb,var(--acc-deep) 10%,transparent) 0%,transparent 60%),linear-gradient(180deg,#0a0a0d,#070709);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),inset 0 0 44px -12px rgba(0,0,0,.7);}
.glyph-panel .glyph{position:absolute;inset:0;width:100%;height:100%;display:block;transform:scale(1.16);transform-origin:center;}
/* the living-core orb tile fills the panel a touch tighter (square viewBox in a 4:3 panel) */
.glyph-panel[data-glyph="livingorb"] .glyph{transform:scale(1.02);}
.work-card:hover .glyph-panel{border-color:var(--acc-line);}
.work-card:hover .glyph-panel .g-halo{opacity:1.35;transition:opacity .3s;}
/* static base (also the reduced-motion / no-GSAP resting state - a calm, balanced still frame) */
.glyph-panel .g-scanline{opacity:0;}
.glyph-panel .g-glint{opacity:0;}
/* CODEBASE READER static rest: code lines clearly legible, scan parked at top, bracket drawn */
.glyph-panel[data-glyph="read"] .g-cl{stroke:var(--acc);}
.glyph-panel .g-readscan{opacity:0;}
.glyph-panel .g-cl{opacity:.62;}
.glyph-panel .g-cl[data-y="42"],.glyph-panel .g-cl[data-y="72"],.glyph-panel .g-cl[data-y="92"]{opacity:.95;}
/* COACH static rest: the week shows filled to its resting heights (geometry is in the HTML
   line attrs so the no-JS / reduced-motion frame is a complete, balanced week, not empty) */
.glyph-panel .g-fill{opacity:.95;}
/* reduced-motion: show a balanced still frame for each panel, none empty */
@media(prefers-reduced-motion:reduce){
  .glyph-panel .g-scanline{opacity:.5;}
  .glyph-panel .g-cl{opacity:.6;}
  .glyph-panel .g-fill{opacity:.95;}
}
.work-body{display:flex;flex-direction:column;flex:1;padding:18px 18px 18px;}
.work-name{font-family:var(--disp);font-weight:600;font-size:17px;line-height:1.2;margin:0;color:var(--ink);letter-spacing:-.01em;}
.work-tag{font-size:13px;color:var(--ink-2);line-height:1.45;margin:8px 0 0;font-weight:500;}
.work-line{font-size:12.5px;color:var(--mut);line-height:1.6;margin:10px 0 0;}
/* badge pinned to the bottom of the body so every card's badge sits on the same baseline
   and all four cards stretch to equal height regardless of description length */
.work-badge{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--hair-2);border-radius:999px;padding:6px 11px;color:var(--mut-2);}
/* min gap above the bottom-pinned badge so a short description never crowds it */
.work-line{padding-bottom:16px;}
.work-badge i{width:5px;height:5px;border-radius:50%;background:currentColor;}
.work-badge.live{color:var(--live);border-color:var(--live-line);}
.work-go{margin-top:14px;display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--acc);opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s;}
.work-card.is-link:hover .work-go{opacity:1;transform:none;}
@media(max-width:600px){.work-go{opacity:1;transform:none;}}

/* ===== THE ENGINEERING UNDERNEATH - credibility payoff section (S5, expanded to 5 pillars) =====
   Five pillars in an alternating row rhythm - each pillar is a full-width row split into copy +
   its own amber-line diagram, with the diagram side alternating per row. Generous, substantial,
   the most serious section on the page. Collapses to a single stacked column on small screens. */
.infra-standfirst{font-size:clamp(15px,1.6vw,18px);line-height:1.65;color:var(--ink-2);max-width:64ch;margin:18px 0 0;}
.infra-pillars{margin-top:48px;display:flex;flex-direction:column;gap:20px;}
.infra-pillar{display:grid;grid-template-columns:1fr 1.05fr;gap:32px;align-items:center;border:1px solid var(--hair);border-radius:20px;background:var(--panel);padding:30px 34px;transition:border-color .22s,box-shadow .25s;}
.infra-pillar:hover{border-color:var(--hair-2);box-shadow:0 22px 56px -30px rgba(0,0,0,.65);}
/* alternate the diagram to the left on even rows for a reading rhythm */
.infra-pillar:nth-child(even) .infra-copy{order:2;}
.infra-pillar:nth-child(even) .infra-fig{order:1;}
@media(max-width:860px){
  .infra-pillar{grid-template-columns:1fr;gap:20px;padding:24px 22px;}
  .infra-pillar:nth-child(even) .infra-copy,.infra-pillar:nth-child(even) .infra-fig{order:0;}
}
.infra-copy{min-width:0;}
.infra-n{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--acc);border:1px solid var(--acc-line);border-radius:9px;padding:6px 9px;display:inline-block;margin-bottom:14px;}
.infra-eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--acc);display:inline-flex;align-items:center;gap:8px;margin:0 0 10px 12px;vertical-align:middle;}
.infra-eyebrow::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--acc);box-shadow:0 0 8px var(--acc-soft);}
.infra-pillar h3{font-family:var(--disp);font-weight:600;font-size:clamp(19px,2vw,23px);margin:0;color:var(--ink);letter-spacing:-.015em;line-height:1.2;}
.infra-pillar p{font-size:14.5px;color:var(--mut);line-height:1.65;margin:13px 0 0;}
.infra-fig{margin:0;background:linear-gradient(180deg,var(--bg-1),var(--bg-2));border:1px solid var(--hair);border-radius:14px;padding:18px 20px;display:flex;align-items:center;justify-content:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),inset 0 0 48px -16px rgba(0,0,0,.7);}
.infra-fig img{width:100%;height:auto;display:block;max-height:240px;}
/* closing accountability anchor - prominent, centred, set apart */
.infra-anchor{margin:44px auto 0;max-width:60ch;text-align:center;font-family:var(--disp);font-weight:500;font-size:clamp(17px,2vw,22px);line-height:1.4;letter-spacing:-.01em;color:var(--ink);text-wrap:balance;
  padding-top:36px;border-top:1px solid var(--hair);}

/* ===== CONTACT - single soft path (credibility repositioning, S5) ===== */
.asd-contact-link{position:relative;z-index:2;display:inline-block;margin-top:30px;font-family:var(--disp);font-weight:600;font-size:clamp(20px,2.6vw,28px);color:var(--acc);letter-spacing:-.01em;border-bottom:1px solid var(--acc-line);padding-bottom:4px;transition:color .2s,border-color .2s;}
.asd-contact-link:hover{color:var(--acc-2);border-color:var(--acc);}

/* ===== SUBSCRIBE form (email capture, S6) ===== */
.sub-form{position:relative;z-index:2;max-width:480px;margin:34px auto 0;}
.sub-row{display:flex;gap:10px;align-items:stretch;}
@media(max-width:520px){.sub-row{flex-direction:column;}}
.sub-input{flex:1;min-width:0;font-size:15px;color:var(--ink);background:var(--panel-2);border:1px solid var(--hair-2);border-radius:12px;padding:14px 16px;transition:border-color .2s,box-shadow .2s;outline:none;}
.sub-input::placeholder{color:var(--mut-2);}
.sub-input:focus{border-color:var(--acc-line);box-shadow:0 0 0 4px var(--acc-soft);}
.sub-btn{flex:none;font-family:var(--disp);font-weight:600;font-size:15px;color:var(--acc-ink);background:var(--acc);border:1px solid var(--acc);border-radius:12px;padding:14px 24px;white-space:nowrap;cursor:pointer;transition:filter .2s,transform .12s,box-shadow .3s;box-shadow:0 12px 32px -14px var(--acc-soft);}
.sub-btn:hover{filter:brightness(1.05);box-shadow:0 16px 40px -14px var(--acc-soft);}
.sub-btn:active{transform:translateY(1px);}
.sub-btn:disabled{opacity:.6;cursor:default;filter:none;box-shadow:none;}
/* honeypot - off-screen, never shown to a person */
.sub-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;}
.sub-msg{min-height:18px;margin:14px 0 0;font-family:var(--mono);font-size:12.5px;letter-spacing:.02em;color:var(--mut);transition:color .2s;}
.sub-msg.ok{color:var(--live);}
.sub-msg.err{color:var(--acc-2);}
.sub-form.done .sub-row,.sub-form.done .sub-hp{display:none;}

/* page transitions - stepping through doors, not reloading (2026-06-07 step-back pass) */
@view-transition{navigation:auto;}
@keyframes vt-out{to{opacity:0;transform:translateY(-8px);}}
@keyframes vt-in{from{opacity:0;transform:translateY(10px);}}
::view-transition-old(root){animation:vt-out .2s ease both;}
::view-transition-new(root){animation:vt-in .26s ease both;}
@media (prefers-reduced-motion: reduce){
  ::view-transition-old(root),::view-transition-new(root){animation:none;}
}
