.ab-intro{align-items:start}
.ab-intro .vm-term pre{min-height:0}

.ab-node__head{display:flex;align-items:center;gap:10px;margin-bottom:var(--sp-3)}
.ab-node__head h3{margin:0;font-size:var(--fs-4)}
.ab-node__tag{margin-left:auto;font-size:var(--fs-1);color:var(--c-ink-3);letter-spacing:.08em}

.ab-rackfig{position:relative;background:var(--c-term);border:1px solid var(--c-term-line);border-radius:var(--r-1);padding:var(--sp-3);margin-bottom:var(--sp-3);color:var(--c-phosphor);overflow:hidden}
.ab-rackfig::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(53,232,194,.05) 0 1px,transparent 1px 4px);pointer-events:none}
.ab-rackfig svg{display:block;width:100%;height:auto;opacity:.85}

.ab-timeline{list-style:none;margin:0;padding:0 0 0 var(--sp-2);border-left:2px solid var(--c-line-2);max-width:var(--wrap-narrow)}
.ab-timeline li{position:relative;margin:0;padding:0 0 var(--sp-5) var(--sp-4)}
.ab-timeline li:last-child{padding-bottom:var(--sp-2)}
.ab-timeline li::before{content:"";position:absolute;left:-8px;top:5px;width:12px;height:12px;background:var(--c-phosphor);border:2px solid var(--c-bg-2);clip-path:var(--clip-px)}
.ab-timeline__date{display:inline-block;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--fs-1);letter-spacing:.06em;color:var(--c-teal-deep);background:var(--c-teal-tint);padding:2px 9px;clip-path:var(--clip-px);margin-bottom:var(--sp-2)}
.ab-timeline h3{font-size:var(--fs-4);margin-bottom:var(--sp-1)}
.ab-timeline p{font-size:var(--fs-2);color:var(--c-ink-2);margin:0;max-width:60ch}

.ab-mail{overflow-wrap:anywhere}
.ab-mail a{font-family:var(--font-mono);font-size:.94em}

.ab-cta-row{display:flex;flex-wrap:wrap;gap:var(--sp-3);justify-content:center;margin-top:var(--sp-4)}

@media (max-width:640px){
.ab-timeline{padding-left:var(--sp-1)}
.ab-timeline li{padding-left:var(--sp-3);padding-bottom:var(--sp-4)}
.ab-node__head{flex-wrap:wrap}
.ab-cta-row{flex-direction:column;align-items:stretch}
}
