/* About page (/about/). Loads after /assets/capabilities.css and reuses its tokens, header,
   buttons, editorial sections (.cs) and closing band. Personal, editorial, low on motion:
   one silent hero video, photographs, and a few small typographic moments. */

/* ---------- hero: silent teaching video ---------- */
.ab-hero{position:relative;isolation:isolate;min-height:100vh;min-height:100svh;display:grid;grid-template-rows:1fr auto;overflow:hidden;background:var(--ink);color:var(--white)}
.ab-hero-media{position:absolute;inset:0;z-index:-1}
.ab-hero-media video{width:100%;height:100%;object-fit:cover;object-position:50% 40%;background:var(--ink)}
.ab-hero-media::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(6,11,15,.86) 0%,rgba(6,11,15,.6) 34%,rgba(6,11,15,.12) 68%,rgba(6,11,15,.05) 100%),
  linear-gradient(0deg,rgba(6,11,15,.92) 0%,rgba(6,11,15,.35) 34%,rgba(6,11,15,0) 58%),
  linear-gradient(180deg,rgba(6,11,15,.55) 0%,rgba(6,11,15,0) 22%)}
/* wide screens: the video sits right of the title so the title never covers Jeremy */
@media (min-width:1081px) and (min-aspect-ratio:5/4){
  .ab-hero{background:radial-gradient(ellipse 55% 70% at 8% 18%,rgba(215,163,74,.14),transparent 62%),var(--ink)}
  .ab-hero-media{left:30%}
  .ab-hero-media video{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 34%);mask-image:linear-gradient(90deg,transparent 0,#000 34%)}
  .ab-hero-media::after{background:
    linear-gradient(0deg,rgba(9,19,27,.9) 0%,rgba(9,19,27,.25) 30%,rgba(9,19,27,0) 52%),
    linear-gradient(180deg,rgba(9,19,27,.55) 0%,rgba(9,19,27,0) 22%)}
}
.ab-hero-inner{align-self:end;padding:calc(var(--header-h) + clamp(4rem,12vh,8rem)) 0 clamp(2rem,5vh,3.5rem)}
.ab-hero h1{margin:0;max-width:11ch;font-size:clamp(2.7rem,6.4vw,6.9rem);font-weight:900;line-height:.88;letter-spacing:-.055em;text-transform:uppercase;text-wrap:balance;text-shadow:0 2px 40px rgba(0,0,0,.35)}
.ab-byline{display:flex;align-items:center;gap:1rem;margin-top:clamp(1.6rem,3.5vh,2.4rem)}
.ab-byline::before{content:"";flex:none;width:3.2rem;height:3px;background:var(--gold)}
.ab-byline p{margin:0;display:grid;gap:.15rem}
.ab-byline strong{font-size:clamp(1.05rem,1.4vw,1.25rem);font-weight:850;letter-spacing:-.01em}
.ab-byline span{font-size:.7rem;font-weight:750;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-light)}
.ab-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0 1.4rem;border-top:1px solid var(--line)}
.ab-scroll,.ab-caption,.ab-play{font-size:.68rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase}
.ab-scroll{display:inline-flex;gap:.6rem;align-items:center;color:rgba(255,253,248,.82);transition:color .2s}
.ab-scroll span{display:inline-block;animation:ab-nudge 2.4s var(--ease) infinite}
.ab-scroll:hover,.ab-scroll:focus-visible{color:var(--gold-light)}
@keyframes ab-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(.3rem)}}
.ab-video-ctl{display:flex;align-items:center;gap:1.1rem}
.ab-caption{color:rgba(255,253,248,.6)}
.ab-play{display:inline-flex;align-items:center;gap:.6rem;min-height:2.75rem;padding:0 .95rem;border:1px solid rgba(255,253,248,.4);background:rgba(9,19,27,.35);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.ab-play:hover,.ab-play:focus-visible{background:var(--white);color:var(--ink);border-color:var(--white)}
.ab-play-icon{position:relative;width:.62rem;height:.72rem}
.ab-play-icon::before,.ab-play-icon::after{content:"";position:absolute;top:0;bottom:0;width:.2rem;background:currentColor}
.ab-play-icon::before{left:0}
.ab-play-icon::after{right:0}
.ab-play.is-paused .ab-play-icon::before{width:0;height:0;background:none;border-style:solid;border-width:.36rem 0 .36rem .62rem;border-color:transparent transparent transparent currentColor}
.ab-play.is-paused .ab-play-icon::after{display:none}

/* ---------- intro ---------- */
.ab-intro{background:var(--paper);color:var(--text-dark);padding:clamp(5rem,10vw,9rem) 0 clamp(4.5rem,9vw,7.5rem)}
.ab-intro-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(2.5rem,7vw,7.5rem);align-items:start}
.ab-intro-lede{margin:0;font-size:clamp(1.55rem,2.85vw,2.75rem);font-weight:500;line-height:1.2;letter-spacing:-.025em;text-wrap:pretty}
.ab-intro-body p{margin:0 0 1.15rem;font-size:clamp(1.02rem,1.2vw,1.12rem);line-height:1.7;color:var(--muted-dark)}
.ab-intro-body .ab-intro-pull{margin:1.7rem 0 0;padding-top:1.3rem;border-top:3px solid var(--gold);font-size:clamp(1.15rem,1.5vw,1.35rem);font-weight:800;line-height:1.3;color:var(--text-dark)}
.ab-toc{margin-top:clamp(2.5rem,5vw,3.5rem)}
.ab-toc-title{margin:0 0 .4rem!important;font-size:.66rem!important;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep)!important}
.ab-toc ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-dark);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem;max-width:44rem}
@media (max-width:720px){.ab-toc ol{grid-template-columns:1fr}}
.ab-toc a{display:flex;gap:1rem;align-items:baseline;padding:.72rem 0;border-bottom:1px solid var(--line-dark);font-size:.95rem;font-weight:700;color:var(--text-dark);transition:color .2s,padding .3s var(--ease)}
.ab-toc a span{flex:none;width:1.6rem;font-size:.68rem;font-weight:850;letter-spacing:.1em;color:var(--gold-deep)}
.ab-toc a:hover,.ab-toc a:focus-visible{color:var(--gold-deep);padding-left:.35rem}

/* ---------- chapter labels ---------- */
.ab-num{font-weight:900;color:inherit;letter-spacing:.08em}
.eyebrow .ab-num::after{content:"";display:inline-block;width:.32rem;height:.32rem;margin:0 .1rem 0 .7rem;border-radius:50%;background:currentColor;vertical-align:middle;opacity:.55}
.ab-ch{border-top:0}
.ab-ch-cont{padding-top:clamp(3.5rem,7vw,6rem)}

/* ---------- 01: the tools, crossed out ---------- */
.ab-question{position:relative;overflow:hidden;background:var(--ink);color:var(--white);padding:clamp(5rem,11vw,9rem) 0}
.ab-question::before{content:"";position:absolute;inset:auto auto -45% -15%;width:56rem;height:56rem;background:radial-gradient(circle,rgba(215,163,74,.13),transparent 62%);pointer-events:none}
.ab-tools{position:relative;list-style:none;display:flex;flex-wrap:wrap;gap:.15em .8em;margin:0 0 clamp(3rem,6vw,4.5rem);padding:0;max-width:62rem;font-size:clamp(1.5rem,3.6vw,3.3rem);font-weight:900;line-height:1.1;letter-spacing:-.04em;text-transform:uppercase}
.ab-tools li{position:relative;color:rgba(255,253,248,.88);transition:color .5s var(--ease) calc(var(--i) * .16s + .25s)}
.ab-tools li::before{content:"";position:absolute;left:-.06em;right:-.06em;top:52%;height:.09em;background:var(--ember);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease) calc(var(--i) * .16s)}
.ab-tools.struck li{color:rgba(255,253,248,.3)}
.ab-tools.struck li::before{transform:scaleX(1)}
.ab-question-lead{position:relative;margin:0 0 1.1rem;max-width:34rem;font-size:clamp(1.02rem,1.3vw,1.18rem);line-height:1.6;color:rgba(255,253,248,.72)}
.ab-question-h{position:relative;margin:0;max-width:15ch;font-size:clamp(2.5rem,6.6vw,7rem);font-weight:900;line-height:.88;letter-spacing:-.06em;text-transform:uppercase;color:var(--gold-light);text-wrap:balance}

/* ---------- full-bleed photo bands ---------- */
.ab-band{position:relative;isolation:isolate;display:grid;align-items:end;min-height:clamp(32rem,92vh,58rem);overflow:hidden;background:var(--ink);color:var(--white)}
.ab-band-img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.ab-band::after{content:"";position:absolute;inset:0;z-index:-1;background:
  linear-gradient(0deg,rgba(9,19,27,.94) 0%,rgba(9,19,27,.6) 30%,rgba(9,19,27,0) 62%),
  linear-gradient(90deg,rgba(9,19,27,.55) 0%,rgba(9,19,27,0) 55%)}
.ab-band-copy{padding:9rem 0 clamp(3rem,7vw,5.5rem)}
.ab-band h2{margin:0;max-width:13ch;font-size:clamp(2.6rem,6.2vw,6.4rem);font-weight:900;line-height:.88;letter-spacing:-.055em;text-transform:uppercase;text-wrap:balance}
.ab-band-lede{margin:1.5rem 0 0;max-width:34rem;font-size:clamp(1.12rem,1.6vw,1.45rem);line-height:1.45;font-weight:500;color:rgba(255,253,248,.88)}
.ab-band-axe .ab-band-img{object-position:50% 45%}
.ab-band-city .ab-band-img{object-position:50% 55%}
.ab-verse{margin:clamp(1.4rem,3vw,2rem) 0 0;max-width:36rem}
.ab-verse p{margin:0;font-size:clamp(1.35rem,2.4vw,2.25rem);font-weight:500;line-height:1.2;letter-spacing:-.02em}
.ab-verse footer{margin-top:.8rem;font-size:.7rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-light)}

/* family band: photo keeps its full width (faces sit at the left edge); copy sits on the right */
.ab-band-family{min-height:0;aspect-ratio:1920/800;max-height:none}
.ab-band-family .ab-band-img{object-position:30% 50%}
.ab-band-family::after{background:
  linear-gradient(270deg,rgba(9,19,27,.82) 0%,rgba(9,19,27,.45) 30%,rgba(9,19,27,0) 55%),
  linear-gradient(0deg,rgba(9,19,27,.6) 0%,rgba(9,19,27,0) 40%)}
.ab-band-family .ab-band-copy{display:grid;justify-items:end;text-align:right;padding-top:4rem}
.ab-band-family .eyebrow{justify-content:flex-end}
.ab-band-family h2{max-width:11ch;font-size:clamp(2.2rem,4.5vw,4.9rem)}

/* slow vertical drift on photo bands, scroll-linked where supported. The photo is 12% taller
   than its band and moves only up and down, so it never gets wider than the screen. */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    .ab-band-img{inset:-6% 0;height:112%;animation:ab-drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
    @keyframes ab-drift{from{transform:translateY(-4.5%)}to{transform:translateY(4.5%)}}
  }
}

/* ---------- dark editorial section (02) ---------- */
.ab-dark{background:var(--ink);color:var(--white);padding:clamp(4rem,8vw,7rem) 0 clamp(5rem,10vw,8rem)}
.ab-dark .cs-body p{margin:0 0 1.15rem;max-width:40rem;font-size:clamp(1.02rem,1.2vw,1.12rem);line-height:1.7;color:rgba(255,253,248,.72)}
.ab-dark .cs-body>p:first-child{color:var(--white);font-size:clamp(1.1rem,1.45vw,1.3rem);line-height:1.6;font-weight:550}
.ab-dark .cs-body strong{color:var(--gold-light);font-weight:800}

/* ---------- side photos in the left column (01 continued, 02) ---------- */
.ab-side-photo{margin:0}
.ab-side-photo img{width:100%;height:auto;max-width:30rem;max-height:calc(100vh - 9rem);object-fit:cover;object-position:50% 30%;box-shadow:0 40px 70px -40px rgba(9,19,27,.55)}
.ab-dark .ab-side-photo img{box-shadow:0 40px 80px -40px rgba(0,0,0,.8);outline:1px solid var(--line);outline-offset:-1px}

/* ---------- 03: verses + refrain ---------- */
.ab-verse-pair{display:grid;gap:1.6rem;max-width:24rem}
.ab-verse-pair blockquote{margin:0;padding:.2rem 0 .2rem 1.2rem;border-left:3px solid var(--gold)}
.ab-verse-pair p{margin:0;font-size:clamp(1.15rem,1.55vw,1.4rem);font-weight:600;line-height:1.35;letter-spacing:-.015em;color:var(--text-dark)}
.ab-verse-pair footer{margin-top:.6rem;font-size:.66rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep)}
.ab-refrain{position:relative;overflow:hidden;background:var(--ink);color:var(--white);padding:clamp(5rem,11vw,9rem) 0;text-align:center}
.ab-refrain::before{content:"";position:absolute;left:50%;top:50%;width:60rem;height:60rem;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(215,163,74,.16),transparent 60%);pointer-events:none}
.ab-refrain p{position:relative;margin:0 auto;max-width:16ch;font-size:clamp(2.3rem,6.4vw,6.6rem);font-weight:900;line-height:.9;letter-spacing:-.06em;text-transform:uppercase;text-wrap:balance}
.ab-refrain span{display:block;color:var(--gold-light)}

/* ---------- 04: ticker + questions + wide photo ---------- */
.ab-ticker{margin-top:clamp(2rem,4vw,3rem);padding-top:1.1rem;border-top:1px solid var(--line-dark);max-width:20rem}
.ab-ticker small{display:block;font-size:.64rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-dark)}
.ab-ticker-word{display:block;margin:.45rem 0 .55rem;min-height:1.05em;font-size:clamp(2.1rem,3.8vw,3.4rem);font-weight:900;line-height:1;letter-spacing:-.05em;text-transform:uppercase;color:var(--gold-deep);transition:opacity .25s,transform .25s var(--ease)}
.ab-ticker-word.out{opacity:0;transform:translateY(-.25em)}
.ab-questions{list-style:none;counter-reset:q;margin:.4rem 0 2rem;padding:0;max-width:40rem;border-top:1px solid var(--line-dark)}
.ab-questions li{counter-increment:q;display:grid;grid-template-columns:2.4rem 1fr;gap:.6rem;padding:.85rem 0;border-bottom:1px solid var(--line-dark);font-size:clamp(1.02rem,1.3vw,1.15rem);font-weight:700;line-height:1.4;color:var(--text-dark)}
.ab-questions li::before{content:counter(q,decimal-leading-zero);padding-top:.2rem;font-size:.7rem;font-weight:850;letter-spacing:.1em;color:var(--gold-deep)}
.ab-wide{position:relative;margin:0;overflow:hidden;background:var(--ink);color:var(--white)}
.ab-wide img{width:100%;height:clamp(22rem,72vh,46rem);object-fit:cover;object-position:50% 40%}
.ab-wide figcaption{padding-top:1rem;padding-bottom:1.3rem;font-size:.68rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,253,248,.62)}

/* ---------- 05: beliefs ---------- */
.ab-side-quote{margin:0;padding-top:1.3rem;border-top:3px solid var(--gold);max-width:22rem;font-size:clamp(1.3rem,2vw,1.8rem);font-weight:600;line-height:1.28;letter-spacing:-.02em;color:var(--text-dark)}
.ab-side-quote em{font-style:normal}
.ab-side-quote::before{content:"“";display:block;height:.55em;font-size:3.2em;font-weight:900;line-height:1;color:var(--gold)}
.ab-believe{list-style:none;margin:1.6rem 0 0;padding:0;max-width:40rem;border-top:1px solid var(--line-dark)}
.ab-believe li{position:relative;padding:.95rem 0 .95rem 2.3rem;border-bottom:1px solid var(--line-dark);font-size:clamp(1.04rem,1.35vw,1.18rem);font-weight:700;line-height:1.45;color:var(--text-dark)}
.ab-believe li::before,.ab-believe li::after{content:"";position:absolute;background:var(--gold-deep)}
.ab-believe li::before{left:.42rem;top:1.18rem;width:2px;height:.95rem}
.ab-believe li::after{left:.15rem;top:1.42rem;width:.75rem;height:2px}

/* ---------- 06: people ---------- */
.ab-people{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--ink) 0%,var(--navy) 100%);color:var(--white);padding:clamp(5rem,10vw,8.5rem) 0}
.ab-people::before{content:"";position:absolute;right:-20rem;top:-18rem;width:60rem;height:60rem;background:radial-gradient(circle,rgba(215,163,74,.12),transparent 62%);pointer-events:none}
.ab-people-head{position:relative;max-width:48rem}
.ab-people-head h2{margin:0 0 1.6rem;font-size:clamp(2.3rem,4.6vw,4.6rem);font-weight:900;line-height:.9;letter-spacing:-.055em;text-transform:uppercase;text-wrap:balance}
.ab-people-head p:not(.eyebrow){margin:0 0 1rem;max-width:42rem;font-size:clamp(1.02rem,1.25vw,1.15rem);line-height:1.65;color:rgba(255,253,248,.74)}
.ab-profiles{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,2.5vw,2.25rem);margin-top:clamp(2.75rem,5vw,4rem)}
.ab-person{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,253,248,.045),rgba(255,253,248,.015))}
.ab-portrait{position:relative;overflow:hidden;aspect-ratio:5/4;display:flex;align-items:flex-end;justify-content:center;background:
  radial-gradient(ellipse 60% 70% at 50% 72%,rgba(215,163,74,.34),rgba(215,163,74,0) 70%),
  linear-gradient(180deg,#152530 0%,#0f1c24 100%);border-bottom:1px solid var(--line)}
.ab-portrait::before{content:"";position:absolute;inset:auto 0 0;height:22%;z-index:1;background:linear-gradient(0deg,rgba(15,28,36,.9),rgba(15,28,36,0));pointer-events:none}
.ab-portrait img{position:relative;width:auto;height:94%;max-width:88%;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 30px 40px rgba(0,0,0,.35))}
.ab-person-copy{padding:clamp(1.5rem,3vw,2.4rem)}
.ab-person h3{margin:0;font-size:clamp(1.8rem,2.7vw,2.65rem);font-weight:900;line-height:.95;letter-spacing:-.05em;text-transform:uppercase}
.ab-role{margin:.55rem 0 1.4rem;font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-light)}
.ab-person-copy p:not(.ab-role){margin:0 0 1rem;font-size:1rem;line-height:1.65;color:rgba(255,253,248,.72)}
.ab-person-copy .ab-person-lede{font-size:clamp(1.08rem,1.4vw,1.22rem);line-height:1.5;font-weight:550;color:var(--white)}
.ab-person-copy .ab-aside{margin:1.5rem 0 0;padding-top:1.1rem;border-top:1px solid var(--line);font-size:.96rem;color:rgba(255,253,248,.7)}
.ab-aside strong{display:block;margin-top:.35rem;font-size:1.02rem;font-weight:850;letter-spacing:.01em;color:var(--gold-light)}
.ab-together{position:relative;margin:clamp(3rem,6vw,4.5rem) auto 0;max-width:44rem;text-align:center;font-size:clamp(1.15rem,1.7vw,1.5rem);font-weight:500;line-height:1.45;letter-spacing:-.01em;color:rgba(255,253,248,.92)}

/* ---------- team skills ---------- */
.ab-skills{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:.2rem 0 1.8rem;padding:0;max-width:42rem}
.ab-skills li{padding:.55rem .85rem;border:1px solid var(--line-dark);background:var(--white);font-size:.78rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dark)}
.ab-skills li:last-child{border-style:dashed;background:transparent;color:var(--muted-dark)}

/* ---------- 07: what we're trying to build ---------- */
.ab-build{background:var(--paper-2);color:var(--text-dark);padding:clamp(5rem,10vw,8.5rem) 0}
.ab-build-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(2.5rem,6vw,6.5rem);align-items:start}
.ab-build-photo{position:sticky;top:6.5rem;margin:0}
.ab-build-photo img{width:100%;max-height:calc(100vh - 8.5rem);object-fit:cover;object-position:50% 62%;box-shadow:0 40px 70px -40px rgba(9,19,27,.55)}
.ab-build h2{margin:0 0 1.8rem;font-size:clamp(2rem,3.5vw,3.45rem);font-weight:900;line-height:.95;letter-spacing:-.05em;text-transform:uppercase;text-wrap:balance;max-width:14ch}
.ab-build .eyebrow{color:var(--gold-deep)}
.ab-build-copy>p:not(.eyebrow){margin:0 0 1.15rem;max-width:40rem;font-size:clamp(1.02rem,1.2vw,1.12rem);line-height:1.7;color:var(--muted-dark)}
.ab-build-copy .pull{color:var(--text-dark)}
.ab-bs{font-weight:900;color:var(--gold-deep)}
.ab-build-copy>p.ab-signoff{margin:2.6rem 0 0;max-width:none;padding:1.6rem 0 0;border-top:1px solid var(--line-dark);font-size:clamp(1.9rem,3.6vw,3.4rem);font-weight:900;line-height:.92;letter-spacing:-.055em;text-transform:uppercase;color:var(--text-dark)}
.ab-signoff span{display:block;color:var(--gold-deep)}

/* ---------- closing: two paths ---------- */
.ab-paths{display:grid;gap:.8rem}
.ab-paths .eyebrow{margin-bottom:.6rem}
.ab-paths .ap-alt{justify-self:start;margin-top:.8rem}

/* ---------- reveals: the question lands after the tools are crossed out ---------- */
.ab-question-h.r{transition-delay:.9s}

/* ---------- responsive ---------- */
@media (max-width:1080px){
  .ab-intro-grid{grid-template-columns:1fr;gap:2.5rem}
  .ab-intro-body{max-width:40rem}
}
@media (max-width:960px){
  .ab-profiles{grid-template-columns:1fr;max-width:40rem}
  .ab-portrait{aspect-ratio:4/3}
  .ab-build-grid{grid-template-columns:1fr}
  .ab-build-photo{position:static;max-width:34rem}
  .ab-build-photo img{max-height:42rem}
  .ab-verse-pair{max-width:36rem}
  .ab-side-quote{max-width:32rem}
  .ab-side-photo img{max-width:34rem;max-height:none;aspect-ratio:4/3}
}
@media (max-width:720px){
  .ab-hero-media video{object-position:50% 30%}
  .ab-hero-media::after{background:
    linear-gradient(0deg,rgba(6,11,15,.95) 0%,rgba(6,11,15,.6) 38%,rgba(6,11,15,.05) 70%),
    linear-gradient(180deg,rgba(6,11,15,.6) 0%,rgba(6,11,15,0) 22%)}
  .ab-hero h1{font-size:clamp(2.35rem,11.2vw,3.5rem)}
  .ab-hero-foot{padding:.8rem 0 1rem}
  .ab-caption{display:none}
  .ab-band{min-height:34rem}
  .ab-band-copy{padding-top:7rem}
  .ab-band h2{font-size:clamp(2.3rem,11vw,3.4rem)}
  .ab-band-axe .ab-band-img{object-position:42% 45%}
  /* family band stacks: full photo first, title under it, so no face is cropped */
  .ab-band-family{display:block;aspect-ratio:auto;min-height:0}
  .ab-band-family .ab-band-img{position:relative;inset:auto;z-index:0;height:auto;aspect-ratio:1920/800;object-position:30% 50%;animation:none}
  .ab-band-family::after{display:none}
  .ab-band-family .ab-band-copy{justify-items:start;text-align:left;padding:2.2rem 0 2.6rem}
  .ab-band-family .eyebrow{justify-content:flex-start}
  .ab-tools{font-size:clamp(1.35rem,7.2vw,2rem)}
  .ab-question-h{font-size:clamp(2.2rem,11vw,3.4rem)}
  .ab-refrain p{font-size:clamp(2.1rem,10.5vw,3.3rem)}
  .ab-wide img{height:auto;aspect-ratio:16/10}
  .ab-person h3{font-size:clamp(1.8rem,8.5vw,2.4rem)}
  .ab-build-copy>p.ab-signoff{font-size:clamp(1.8rem,8.6vw,2.5rem)}
  .ab-skills li{font-size:.72rem}
}
@media (prefers-reduced-motion:reduce){
  .ab-scroll span{animation:none}
  .ab-tools li,.ab-tools li::before,.ab-ticker-word,.ab-toc a{transition:none}
  .ab-question-h.r{transition-delay:0s}
}
