/* =========================================================
   Constellation: subpages (About, Careers, Blog, Legal)
   Builds on site.css tokens and components.
   ========================================================= */

/* ---------- page hero ---------- */
.ph{position:relative;padding:clamp(150px,24vh,240px) var(--pad) 0;background:#000;overflow:hidden}
.ph-in{position:relative;z-index:2}
.ph h1{font-family:var(--display);font-weight:400;font-size:clamp(48px,7vw,120px);line-height:.95;letter-spacing:-.05em;max-width:15ch;text-wrap:balance}
.ph h1.long{font-size:clamp(36px,4.8vw,82px);line-height:1.02;letter-spacing:-.04em;max-width:22ch}
.ph h1.giant-sub{font-size:clamp(96px,17vw,300px);line-height:.82;letter-spacing:-.055em;max-width:none;padding-bottom:.14em}
.ph-sub{margin-top:clamp(22px,3.5vh,34px);font-size:clamp(18px,1.6vw,24px);line-height:1.4;color:var(--fg2);max-width:42ch}
.ph-actions{margin-top:clamp(26px,4vh,40px);display:flex;gap:10px;flex-wrap:wrap}
.btn-solid{background:var(--fg);color:#000;border:1px solid var(--fg)}
.btn-solid:hover{background:var(--o);border-color:var(--o)}
.ph-horizon{position:relative;margin:clamp(30px,6vh,80px) calc(var(--pad) * -1) 0;height:clamp(170px,26vw,420px);overflow:hidden;pointer-events:none}
.ph-horizon img{position:absolute;left:50%;top:0;width:max(1100px,104vw);transform:translateX(-50%);-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}

/* ---------- generic section ---------- */
.sec{padding:clamp(90px,14vh,160px) var(--pad);background:#000;border-top:1px solid var(--line)}
.sec-h{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:clamp(36px,6vh,64px)}
.sec-h h2{font-family:var(--display);font-weight:400;font-size:clamp(36px,4.4vw,72px);line-height:1;letter-spacing:-.04em}
.sec-h h2 .mute{color:var(--dim)}
.sec-h p{color:var(--fg2);font-size:18px;max-width:36ch}
.circ{flex:none}

/* ---------- about: team ---------- */
.team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tm{display:flex;flex-direction:column;border:1px solid var(--line2);border-radius:10px;overflow:hidden;background:#0a0a0c;transition:border-color .35s,transform .5s var(--ease)}
.tm:hover{border-color:rgba(255,143,69,.55);transform:translateY(-4px)}
.tm-img{aspect-ratio:4/4.4;overflow:hidden;background:#111}
.tm-img img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05) brightness(.92);transition:filter .6s,transform 1.2s var(--ease)}
.tm:hover .tm-img img{filter:grayscale(0);transform:scale(1.04)}
.tm-b{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:18px 18px 20px}
.tm-b h3{font-family:var(--display);font-weight:400;font-size:24px;letter-spacing:-.02em;line-height:1.1}
.tm-b p{color:var(--mute);font-size:15px;margin-top:4px}
.tm:hover .circ{background:var(--o);color:#000;border-color:var(--o)}
.about-ops{padding-top:clamp(90px,14vh,160px)}
.about-ops .alumni{margin-top:22px}

/* ---------- big link rows (careers, about) ---------- */
.rows{border-top:1px solid var(--line)}
.row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:30px 0;border-bottom:1px solid var(--line);transition:padding .45s var(--ease)}
.row:hover{padding-left:14px}
.row h3{font-family:var(--display);font-weight:400;font-size:clamp(28px,3.4vw,56px);letter-spacing:-.035em;line-height:1.04}
.row:hover h3{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.row .rmeta{color:var(--mute);font-size:17px;margin-top:10px}
.row .circ{width:48px;height:48px;font-size:18px}
.row:hover .circ{background:var(--o);color:#000;border-color:var(--o)}
.rows-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:34px;flex-wrap:wrap}
.rows-foot p{color:var(--fg2);font-size:17px}

/* ---------- blog ---------- */
.feat{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px}
.fcard{display:flex;flex-direction:column;border:1px solid var(--line2);border-radius:10px;overflow:hidden;background:#0a0a0c;transition:border-color .35s,transform .5s var(--ease)}
a.fcard:hover{border-color:rgba(255,143,69,.55);transform:translateY(-4px)}
.fcard-img{aspect-ratio:16/10;background:#111 center/cover no-repeat;position:relative;overflow:hidden}
.fcard-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
a.fcard:hover .fcard-img img{transform:scale(1.04)}
.fcard-img.logo{display:grid;place-items:center;background:radial-gradient(120% 120% at 50% 100%,#1a120c,#0b0b0d 60%)}
.fcard-img.logo img{width:auto;height:84px;object-fit:contain}
.fcard-b{padding:22px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.fcard-m{color:var(--mute);font-size:15px}
.fcard h3{font-family:var(--display);font-weight:400;font-size:clamp(22px,2vw,32px);letter-spacing:-.025em;line-height:1.1}
.fcard p{color:var(--fg2);font-size:15.5px;line-height:1.5}
.fcard .more{margin-top:auto;padding-top:8px;color:var(--o);font-size:15px}
.posts{border-top:1px solid var(--line)}
.post{display:grid;grid-template-columns:170px 170px minmax(0,1fr) 40px;align-items:center;gap:24px;padding:24px 0;border-bottom:1px solid var(--line);transition:padding .45s var(--ease)}
a.post:hover{padding-left:12px}
.post .d{color:var(--mute);font-size:15px}
.post .c{justify-self:start;font-size:13.5px;border:1px solid var(--line2);border-radius:99px;padding:5px 12px;color:var(--fg2);white-space:nowrap}
.post h3{font-family:var(--display);font-weight:400;font-size:clamp(20px,1.9vw,28px);letter-spacing:-.02em;line-height:1.15}
.post p{color:var(--mute);font-size:15.5px;margin-top:6px}
.post .ar{justify-self:end;color:var(--dim);font-size:18px;transition:color .3s,transform .4s var(--ease)}
a.post:hover h3{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
a.post:hover .ar{color:var(--o);transform:translate(3px,-3px)}

/* ---------- legal (light paper, like the capabilities section) ---------- */
.legal{background:var(--paper);color:var(--ink);padding:clamp(140px,22vh,220px) var(--pad) clamp(90px,14vh,150px)}
.lg-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap}
.legal h1{font-family:var(--display);font-weight:400;font-size:clamp(72px,11vw,190px);line-height:.88;letter-spacing:-.055em}
.lg-sub{font-size:clamp(18px,1.5vw,23px);line-height:1.42;color:#2b2a28;max-width:40ch;margin-top:26px}
.lg-date{color:var(--ink2);font-size:16px;margin-top:12px}
.seg.lnk a{font-family:var(--body);font-size:14px;font-weight:500;padding:9px 20px;border-radius:99px;color:var(--ink2);transition:background .3s,color .3s}
.seg.lnk a:hover{color:var(--ink)}
.seg.lnk a.on{background:var(--ink);color:var(--paper)}
.lg-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--pad);margin-top:clamp(60px,10vh,110px);border-top:1px solid var(--inkline);padding-top:44px}
.toc{position:sticky;top:110px;align-self:start;display:grid;gap:12px}
.toc a{color:var(--ink2);font-size:15.5px;display:flex;align-items:center;gap:10px;transition:color .25s}
.toc a::before{content:"";width:8px;height:1px;background:currentColor;transition:width .35s var(--ease),background .35s}
.toc a:hover,.toc a.on{color:var(--ink)}
.toc a.on::before{width:18px;background:var(--o)}
.lg-sec{max-width:780px;padding-bottom:38px;margin-bottom:38px;border-bottom:1px solid var(--inkline);scroll-margin-top:120px}
.lg-sec h2{font-family:var(--display);font-weight:400;font-size:clamp(28px,2.6vw,40px);letter-spacing:-.03em;line-height:1.05;margin-bottom:14px}
.lg-sec p{font-size:18px;line-height:1.62;color:#1d1c1a}
.lg-sec a,.lg-note a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(14,14,16,.35)}
.lg-sec a:hover,.lg-note a:hover{text-decoration-color:var(--o)}
.lg-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.btn-ink{border:1px solid rgba(14,14,16,.3);color:var(--ink)}
.btn-ink:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.lg-note{max-width:780px;font-size:17px;line-height:1.6;color:var(--ink2)}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .team{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feat{grid-template-columns:1fr 1fr}
  .feat .fcard:first-child{grid-column:1 / -1}
  .feat .fcard:first-child .fcard-img{aspect-ratio:21/8}
  .post{grid-template-columns:140px minmax(0,1fr) 30px}
  .post .c{display:none}
}
@media (max-width:760px){
  .ph{padding-top:120px}
  .sec-h{flex-direction:column;align-items:flex-start}
  .team{grid-template-columns:1fr}
  .feat{grid-template-columns:1fr}
  .row{padding:24px 0}
  .row .circ{width:40px;height:40px}
  .post{grid-template-columns:minmax(0,1fr) 24px;gap:8px 16px}
  .post .d{grid-column:1 / -1}
  .lg-body{grid-template-columns:1fr}
  .toc{display:none}
}

/* ---------- blog cover art + rows (on-brand) ---------- */
.cov{display:block;width:100%;height:100%;object-fit:cover}
.fcard-img .cov{transition:transform 1.2s var(--ease)}
a.fcard:hover .fcard-img .cov{transform:scale(1.04)}
.post{grid-template-columns:168px minmax(0,1fr) 40px;gap:28px;padding:20px 0}
.post-cov{aspect-ratio:16/10;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#0b0b0d}
.post-cov .cov{transition:transform 1s var(--ease)}
a.post:hover .post-cov .cov{transform:scale(1.06)}
a.post:hover .post-cov{border-color:rgba(255,143,69,.45)}
.post-m{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--mute);font-size:15px;margin:0 0 8px}
.post .post-m .c{display:inline-block}
.post-b p:last-child{margin-top:6px}
@media (max-width:1100px){
  .post{grid-template-columns:150px minmax(0,1fr) 30px}
  .post .post-m .c{display:inline-block}
}
@media (max-width:760px){
  .post{grid-template-columns:104px minmax(0,1fr);gap:16px;align-items:start}
  .post .ar{display:none}
  .post-m{font-size:14px;gap:8px;margin-bottom:6px}
  .post .post-m .c{font-size:12.5px;padding:3px 9px}
  .post h3{font-size:19px}
  .post-b p:last-child{font-size:14.5px}
}

/* About hero: full-width statement, balanced lines */
.ph h1.long{max-width:none;font-size:clamp(34px,4.5vw,96px);line-height:1.03;letter-spacing:-.042em;text-wrap:balance}

/* team: five across, centered wrap on smaller screens */
.team{display:flex;flex-wrap:wrap;justify-content:center;gap:18px}
.team .tm{flex:0 0 calc((100% - 4 * 18px) / 5);min-width:0}
.team .tm-b h3{font-size:clamp(19px,1.5vw,24px)}
.team .tm-b p{font-size:14.5px}
@media (max-width:1100px){.team .tm{flex-basis:calc((100% - 2 * 18px) / 3)}}
@media (max-width:760px){.team .tm{flex-basis:100%}}

/* =========================================================
   Blog article (blog/<slug>/)
   ========================================================= */
.ap{--measure:700px;--wide:820px;background:#000}
.ap-prog{position:fixed;left:0;right:0;top:0;height:2px;z-index:60;pointer-events:none}
.ap-prog i{display:block;height:100%;background:var(--grad);transform-origin:left;transform:scaleX(0)}

/* head */
.ap-head{position:relative;padding:clamp(140px,22vh,210px) var(--pad) 0;max-width:1280px;margin:0 auto}
.ap-back{display:inline-flex;align-items:center;gap:10px;color:var(--mute);font-size:15px;transition:color .25s}
.ap-back span{transition:transform .4s var(--ease)}
.ap-back:hover{color:var(--fg)}
.ap-back:hover span{transform:translateX(-4px)}
.ap-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:clamp(30px,5vh,48px);color:var(--mute);font-size:15px}
.ap-meta .c{font-size:13.5px;border:1px solid rgba(255,143,69,.45);color:var(--o);border-radius:99px;padding:5px 12px}
.ap-meta .dotsep{width:3px;height:3px;border-radius:50%;background:var(--dim)}
.ap-head h1{margin-top:22px;font-family:var(--display);font-weight:400;font-size:clamp(42px,5.6vw,96px);line-height:1;letter-spacing:-.045em;max-width:17ch;text-wrap:balance}
.ap-head h1.long{font-size:clamp(36px,4.4vw,76px);line-height:1.04;letter-spacing:-.04em;max-width:24ch}
.ap-dek{margin-top:clamp(20px,3vh,30px);font-size:clamp(19px,1.6vw,24px);line-height:1.42;color:var(--fg2);max-width:46ch;text-wrap:pretty}
.ap-by{display:flex;align-items:center;gap:14px;margin-top:clamp(28px,4.5vh,44px)}
.ap-avs{display:flex}
.ap-avs img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid #000;background:#111;filter:grayscale(1) contrast(1.05)}
.ap-avs img + img{margin-left:-12px}
.ap-by p{font-size:15.5px;line-height:1.35;color:var(--fg)}
.ap-by p span{display:block;color:var(--mute);font-size:14.5px}

/* hero media */
.ap-hero{position:relative;max-width:1280px;margin:clamp(44px,7vh,80px) auto 0;padding:0 var(--pad)}
.ap-media{position:relative;overflow:hidden;border:1px solid var(--line2);border-radius:14px;background:#050506;aspect-ratio:16/9}
.ap-media img,.ap-media video,.ap-media svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ap-media.draw{aspect-ratio:2/1}
.ap-media::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);pointer-events:none}
.ap-play{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.45));transition:background .4s}
.ap-play span{display:inline-flex;align-items:center;gap:12px;height:56px;padding:0 26px 0 20px;border-radius:99px;background:rgba(243,241,238,.92);color:#000;font-size:16px;font-weight:500;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .5s var(--ease),background .3s}
.ap-play span i{width:30px;height:30px;border-radius:50%;background:#000;display:grid;place-items:center}
.ap-play span i::before{content:"";margin-left:3px;border-left:9px solid var(--fg);border-top:6px solid transparent;border-bottom:6px solid transparent}
.ap-play small{font-size:15px;color:rgba(0,0,0,.5);font-variant-numeric:tabular-nums}
.ap-play:hover span{transform:scale(1.04);background:var(--fg)}
.ap-media.playing .ap-play{opacity:0;pointer-events:none}
.ap-hero figcaption{margin-top:14px;color:var(--mute);font-size:14px}

/* layout: contents rail + reading column */
.ap-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--measure)) minmax(0,1fr);gap:0 clamp(24px,3vw,48px);padding:clamp(60px,10vh,110px) var(--pad) clamp(70px,12vh,130px)}
.ap-body{grid-column:2;min-width:0}
.ap-rail{grid-column:1;justify-self:start;position:sticky;top:120px;align-self:start;width:min(190px,100%);display:grid;gap:11px}
.ap-rail .lbl{color:var(--dim);margin-bottom:6px}
.ap-rail a{color:var(--mute);font-size:14.5px;line-height:1.3;display:flex;align-items:baseline;gap:10px;transition:color .25s}
.ap-rail a::before{content:"";flex:none;width:8px;height:1px;background:currentColor;transform:translateY(-4px);transition:width .35s var(--ease),background .35s}
.ap-rail a:hover,.ap-rail a.on{color:var(--fg)}
.ap-rail a.on::before{width:18px;background:var(--o)}
.ap-share{display:flex;gap:8px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.ap-share a{width:36px;height:36px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;font-size:13px;color:var(--fg2);transition:border-color .25s,color .25s}
.ap-share a::before{display:none}
.ap-share a:hover{border-color:var(--o);color:var(--o)}
.ap-share svg{width:14px;height:14px;fill:currentColor}

/* prose */
.ap-body > *{margin:0}
.ap-body p,.ap-body li,.ap-body dd{font-size:clamp(17px,1.25vw,18.5px);line-height:1.75;color:var(--fg2);text-wrap:pretty}
.ap-body > p + p{margin-top:1.15em}
.ap-body > p:first-child{font-size:clamp(20px,1.6vw,23px);line-height:1.6;color:var(--fg)}
.ap-body h2{font-family:var(--display);font-weight:400;font-size:clamp(30px,2.6vw,42px);line-height:1.08;letter-spacing:-.03em;color:var(--fg);margin-top:clamp(64px,9vh,96px);margin-bottom:22px;scroll-margin-top:110px;text-wrap:balance}
.ap-body h3{font-family:var(--display);font-weight:400;font-size:clamp(22px,1.8vw,27px);line-height:1.2;letter-spacing:-.02em;color:var(--fg);margin-top:44px;margin-bottom:14px;scroll-margin-top:110px}
.ap-body h2 + h3{margin-top:8px}
.ap-body a{color:var(--fg);text-decoration:underline;text-decoration-color:rgba(255,143,69,.55);text-underline-offset:4px;text-decoration-thickness:1px;transition:color .25s,text-decoration-color .25s}
.ap-body a:hover{color:var(--o);text-decoration-color:var(--o)}
.ap-body strong,.ap-body b{color:var(--fg);font-weight:500}
.ap-body var{font-family:var(--display);font-style:italic;color:var(--fg)}
.ap-body sub,.ap-body sup{font-size:.7em;line-height:0}
.ap-body > ol,.ap-body > ul{margin-top:1.1em;padding-left:0;counter-reset:li}
.ap-body > ol > li,.ap-body > ul > li{position:relative;padding-left:34px}
.ap-body > ol > li + li,.ap-body > ul > li + li{margin-top:.6em}
.ap-body > ol > li::before{counter-increment:li;content:counter(li,decimal-leading-zero);position:absolute;left:0;top:.42em;font:400 12px/1.2 var(--mono);color:var(--o)}
.ap-body > ul > li::before{content:"";position:absolute;left:4px;top:.8em;width:8px;height:1px;background:var(--o)}
.ap-body > ol + p,.ap-body > ul + p,.ap-body > div + p,.ap-body > dl + p,.ap-body > figure + p{margin-top:1.4em}

/* citations */
.ap-body sup.cite{line-height:0;margin-left:1px}
.ap-body sup.cite span{display:inline}
.ap-body sup.cite a{font:400 10.5px/1 var(--mono);color:var(--o);text-decoration:none;padding:0 1px}
.ap-body sup.cite a:hover{color:var(--fg)}

/* equations */
.ap-body .eq{margin:28px 0;padding:22px 26px;border:1px solid var(--line2);border-radius:12px;background:linear-gradient(180deg,#0b0b0d,#070708);text-align:center;font-family:var(--display);font-size:clamp(19px,1.7vw,24px);line-height:1.5;color:var(--fg);overflow-x:auto;white-space:nowrap}
.ap-body .eq var{color:var(--o1)}
.ap-body .eq sub{font-size:.62em;color:var(--fg2);font-style:normal}
.ap-body .eq-u{margin-left:12px;font:400 12px var(--mono);letter-spacing:.08em;color:var(--mute);vertical-align:middle}
.ap-body .frac{display:inline-flex;flex-direction:column;vertical-align:middle;text-align:center;margin:0 4px;font-size:.92em;line-height:1.3}
.ap-body .frac > span:first-child{border-bottom:1px solid var(--fg2);padding:0 6px 2px}
.ap-body .frac > span:last-child{padding:2px 6px 0}

/* interactive figures */
.ap-fig{position:relative;width:min(var(--wide),calc(100vw - 2 * var(--pad)));left:50%;transform:translateX(-50%);margin:44px 0 48px;min-height:240px}

/* pull quote */
.ap-quote{margin:48px 0!important;padding:4px 0 4px 28px;border-left:2px solid;border-image:var(--grad) 1}
.ap-quote blockquote{margin:0;font-family:var(--display);font-weight:400;font-size:clamp(22px,2vw,28px);line-height:1.4;letter-spacing:-.015em;color:var(--fg)}
.ap-quote figcaption{margin-top:18px;font:400 11px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}

/* missions grid */
.ap-missions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px!important;counter-reset:m}
.ap-missions > div{position:relative;padding:22px 22px 24px;border:1px solid var(--line2);border-radius:12px;background:#0a0a0c;transition:border-color .35s}
.ap-missions > div:hover{border-color:rgba(255,143,69,.45)}
.ap-missions > div::before{counter-increment:m;content:counter(m,decimal-leading-zero);display:block;font:400 11px var(--mono);color:var(--o);margin-bottom:16px}
.ap-missions dt{font-family:var(--display);font-size:20px;line-height:1.2;letter-spacing:-.015em;color:var(--fg)}
.ap-missions dd{margin:10px 0 0;font-size:15.5px!important;line-height:1.55!important;color:var(--fg2)}

/* roadmap stages */
.ap-stages{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(var(--wide),calc(100vw - 2 * var(--pad)));left:50%;transform:translateX(-50%);margin:32px 0 8px!important;padding:0!important}
.ap-stages > li{padding:24px 22px 26px!important;border:1px solid var(--line2);border-radius:12px;background:#0a0a0c}
.ap-body .ap-stages > li::before{display:none}
.ap-body .ap-stages > li + li{margin-top:0}
.ap-stages > li > span{display:none}
.ap-stages .stg{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}
.ap-stages .stg b{font:400 12px var(--mono);color:var(--dim);font-weight:400}
.ap-stages .stg em{font-style:normal;font:400 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line2);border-radius:99px;padding:6px 10px}
.ap-stages > li.now{border-color:rgba(255,143,69,.5);background:linear-gradient(180deg,rgba(255,143,69,.1),rgba(255,143,69,.02) 60%),#0a0a0c}
.ap-stages > li.now .stg em{color:var(--green);border-color:rgba(79,220,139,.4)}
.ap-stages > li.now .stg em::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:7px;vertical-align:1px}
.ap-stages h3{margin:0 0 10px!important;font-size:24px!important}
.ap-stages p{font-size:15.5px!important;line-height:1.55!important}

/* building next */
.ap-next{margin-top:24px!important;border-top:1px solid var(--line)}
.ap-next article{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 24px;padding:24px 0;border-bottom:1px solid var(--line)}
.ap-next article > span{display:none}
.ap-next .tag{grid-row:span 2;align-self:start;justify-self:start;font:400 11px/1 var(--mono)!important;letter-spacing:.1em;text-transform:uppercase;border-radius:99px;padding:7px 11px;border:1px solid var(--line2);color:var(--fg2)!important;white-space:nowrap}
.ap-next .tag.t1{color:var(--o)!important;border-color:rgba(255,143,69,.45)}
.ap-next .tag.t2{color:var(--blue)!important;border-color:rgba(127,181,255,.4)}
.ap-next .ttl{font-family:var(--display);font-size:22px!important;line-height:1.2!important;letter-spacing:-.015em;color:var(--fg)!important}
.ap-next .dsc{font-size:15.5px!important;line-height:1.55!important}

/* results table */
.ap-table{position:relative;width:min(var(--wide),calc(100vw - 2 * var(--pad)));left:50%;transform:translateX(-50%);margin:40px 0 8px!important;overflow-x:auto;border:1px solid var(--line2);border-radius:12px;background:#0a0a0c}
.ap-table table{width:100%;border-collapse:collapse;font-size:15.5px;min-width:620px}
.ap-table th{font:400 11px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);text-align:left;padding:16px 18px;border-bottom:1px solid var(--line2)}
.ap-table td{padding:16px 18px;color:var(--fg2);border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.ap-table tr:last-child td{border-bottom:0}
.ap-table td:first-child{color:var(--fg);max-width:260px}
.ap-table th:last-child,.ap-table td:last-child{background:rgba(255,143,69,.07)}
.ap-table th:last-child{color:var(--o)}
.ap-table td:last-child{color:var(--o1)}
.ap-table td.bad{color:#ff8a80}

/* notes + references */
.ap-body h2.small{font-size:clamp(22px,1.8vw,26px);margin-top:72px;padding-top:28px;border-top:1px solid var(--line)}
.ap-body > ol.ap-notes > li,.ap-body > ol.refs > li{font-size:15px;line-height:1.6;color:var(--mute)}
.ap-body > ol.refs > li{scroll-margin-top:120px;border-radius:6px;transition:background .6s}
.ap-body > ol.refs > li:target{background:rgba(255,143,69,.1)}
.ap-body > ol.refs > li + li{margin-top:.35em}
.ap-body > ol.refs a{color:var(--fg2);text-decoration-color:var(--line3)}

/* end of article */
.ap-end{grid-column:2;margin-top:clamp(56px,8vh,80px);padding-top:28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.ap-end a{color:var(--fg2);font-size:15.5px;transition:color .25s}
.ap-end a:hover{color:var(--o)}
.ap-more{padding:clamp(80px,12vh,130px) var(--pad);border-top:1px solid var(--line);background:#000}

@media (max-width:1360px){
  .ap-rail{display:none}
}
@media (max-width:760px){
  .ap-head{padding-top:118px}
  .ap-head h1,.ap-head h1.long{font-size:clamp(34px,9vw,48px);letter-spacing:-.035em}
  .ap-hero{padding:0}
  .ap-media{border-radius:0;border-left:0;border-right:0}
  .ap-hero figcaption{padding:0 var(--pad)}
  .ap-play span{height:48px;padding:0 20px 0 14px;font-size:15px}
  .ap-wrap{display:block}
  .ap-missions{grid-template-columns:1fr}
  .ap-stages{grid-template-columns:1fr}
  .ap-stages .stg{margin-bottom:18px}
  .ap-next article{grid-template-columns:1fr}
  .ap-next .tag{grid-row:auto}
  .ap-body .eq{padding:18px 16px;font-size:18px;text-align:left}
  .ap-quote{padding-left:20px}
}
