/* The Brain: a circuit board in the shape of a brain (see brain.js) */
.brain{position:relative;width:min(100%,1180px);margin:0 auto;aspect-ratio:1000/620}
.brain::before{content:"";position:absolute;inset:-6% -4%;background:radial-gradient(closest-side at 50% 47%,#06080a 55%,rgba(6,8,10,0) 100%);pointer-events:none}
.brain .bn-core{position:absolute;left:50%;top:46.8%;transform:translate(-50%,-50%);width:4.4%;display:grid;place-items:center;pointer-events:none}
.brain .bn-core img{width:100%;height:auto;filter:drop-shadow(0 0 8px rgba(198,242,61,.6))}
.brain canvas{position:absolute;inset:0;width:100%;height:100%}
.brain-cap{margin-top:14px;text-align:center;font-family:'Jost',sans-serif;font-weight:600;color:var(--text);font-size:clamp(22px,2.6vw,34px);letter-spacing:.01em;line-height:1.25}
/* phones: let the board spill past the edges so the centre brain stays big */
#platform{overflow-x:clip}
@media (max-width:700px){.brain{width:160%;margin-left:-30%}}
.pia-sub{margin:-4px 0 16px;font-family:'Jost',sans-serif;font-weight:600;font-size:clamp(15px,1.6vw,19px);letter-spacing:.16em;text-transform:uppercase;color:var(--neon)}
/* problem cards: number, title, problem and fix each line up across the row */
.prob:has(.fix){row-gap:0}
.prob .c:has(.fix){display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0;align-content:start;margin-bottom:clamp(24px,3vw,40px)}
.prob .c:has(.fix) > p:not(.fix){margin-bottom:18px}
.prob .c .fix{align-self:start;padding-top:14px;border-top:1px solid var(--line-strong);color:var(--text);font-weight:500}
.prob .c .fix b{display:block;margin-bottom:6px;font-family:'Jost',sans-serif;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--neon)}
.closers h2{font-size:clamp(30px,4.2vw,54px)}
.closers .center-head p{font-size:clamp(17px,1.7vw,21px);color:var(--text-2);margin-top:12px}
.hectic{margin-top:clamp(40px,5vw,64px);text-align:center}
.hectic-lead{font-family:'Jost',sans-serif;font-weight:600;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--neon);margin:0 0 18px}
.hectic ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.hectic li{padding:9px 16px;border:1px solid var(--line-strong);border-radius:999px;background:var(--panel);color:var(--text-2);font-size:15px}
.fabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,28px)}
.fab{padding:26px 24px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}
.fab h3{margin:0 0 14px;font-size:20px}
.fab p{margin:0 0 12px;color:var(--text-2);line-height:1.6}
.fab p.fab-win{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line-strong);color:var(--neon);font-weight:600}
@media (max-width:980px){.fabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.fabs{grid-template-columns:1fr}}
