/* About route. Batch 15 (2026-10-01) placed Justin's copy; batch 23 (2026-10-02) is layout v2, a scroll story.
   Loads after editorial-chapters.css; the Shopping Guide never loads it. Headings come from the shared red outlined rule
   (H1 and every H2); this file sets size, spacing and layout only. Eight chapters, eight compositions.
   Motion: hidden states exist only under .ab23--anim (added by assets/about-batch23-20261002.js). STATIC mode (?static=1 or
   prefers-reduced-motion) never gets that class, so every element renders visible and complete, and nothing is pinned.
   1 base  2 type roles  3 frames  4 hero  5 ch2 line  6 ch3 mission  7 ch4 first year  8 ch5 tradition  9 ch6 different
   10 ch7 believe  11 ch8 today  12 ch9 OH10  13 motion  14 smaller screens */
.ab23{--ab-red:#ef2435;--ab-edge:#e72330;--ab-mint:#65f4b9;--ab-ink:#090909;--ab-ink2:#080808;--ab-dim:#b4b4b4;--ab-rule:#ffffff38;--ab-gap:clamp(60px,calc(60px + (100vw - 390px) * .019),80px);--ab-ease:cubic-bezier(.25,1,.5,1);display:block;width:100%;overflow-x:clip}
.ab23 *{min-width:0}
.ab23 p{margin:0;max-width:none;font-size:inherit}
.ab23 ul{list-style:none;margin:0;padding:0}
.ab23 b{font-weight:800}
.ab23 .ab23-sec{margin:0 0 var(--ab-gap)}
.ab23 .ab23-head{margin:0 0 clamp(18px,2vw,28px);text-align:center}
#editorial-main .ab23-head h2{margin:0 auto;max-width:21em;font-size:clamp(1.7rem,4.3vw,3.6rem);line-height:1.08;letter-spacing:.005em;text-wrap:balance}
.ab23 .ab23-panel{padding:clamp(20px,2.3vw,32px);background:rgba(9,9,9,.92);border-top:3px solid #e21b30;box-shadow:9px 9px 0 #0005;font-size:clamp(16px,1.15vw,17px);line-height:1.55;color:#f1f1f1}
.ab23 .ab23-panel+.ab23-panel,.ab23 .ab23-panel+.ab23-moment,.ab23 .ab23-moment+.ab23-panel{margin-top:clamp(16px,1.5vw,22px)}

/* 2. Type roles -------------------------------------------------------------------------- */
.ab23 .ab23-lead{max-width:30ch;font-size:clamp(19px,1.8vw,25px);line-height:1.26;font-weight:700;color:#fff}
.ab23 :is(.ab23-lead,.ab23-beat){text-wrap:balance}
.ab23 .ab23-prose{text-wrap:pretty;max-width:64ch;font-size:clamp(16px,1.2vw,17px);color:#ececec}
.ab23 .ab23-lead--c{max-width:36ch;margin-inline:auto;text-align:center}
.ab23 .ab23-prose--c{margin-inline:auto;text-align:center}
.ab23 .ab23-beat{font-size:clamp(18px,1.7vw,23px);line-height:1.3;font-weight:700;color:#fff}
.ab23 .ab23-beat--c{text-align:center}
.ab23 .ab23-mint{color:var(--ab-mint)}
.ab23 .ab23-dim{color:var(--ab-dim)}
.ab23 .ab23-label{font-size:13px;line-height:1.3;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ab-mint)}
.ab23 .ab23-label--c{text-align:center}
.ab23 .ab23-k{font-weight:800;letter-spacing:.04em;color:var(--ab-mint)}
.ab23 .ab23-script{font-family:"OMHM Backline",cursive;font-weight:400;text-transform:none;color:var(--ab-mint);font-size:1.25em;line-height:1.1}
.ab23 .ab23-beats{display:grid;gap:clamp(8px,1.2vw,16px)}
.ab23 .ab23-beats p{font-size:clamp(19px,1.9vw,26px);line-height:1.2;font-weight:700;color:#fff}
.ab23 .ab23-beats--big p{font-size:clamp(21px,2.2vw,31px);line-height:1.12;font-weight:800}
.ab23 .ab23-nots p{font-size:clamp(23px,2.7vw,38px);line-height:1.1;font-weight:800;color:var(--ab-dim)}
.ab23 .ab23-nots--big p{font-size:clamp(21px,2.4vw,34px)}
.ab23 .ab23-pair p{font-size:clamp(20px,2vw,28px);font-weight:700;text-wrap:balance}
.ab23 .ab23-pair--c{text-align:center}
.ab23 .ab23-pair--big p{font-size:clamp(22px,2.6vw,36px);font-weight:800;line-height:1.1}
/* display beats: masked word reveal targets, big white Tomorrow caps */
.ab23 .ab23-display{display:grid;gap:clamp(4px,.8vw,10px)}
.ab23 .ab23-display p{font-weight:900;text-transform:uppercase;line-height:.98;letter-spacing:-.015em;color:#fff;text-wrap:balance;text-shadow:.035em .035em 0 var(--ab-red),.07em .07em 0 #000}
.ab23 .ab23-display--xl p{font-size:clamp(30px,7vw,100px)}
.ab23 .ab23-display--line p{font-size:clamp(30px,4.5vw,66px)}
.ab23 .ab23-display p.ab23-mint{color:var(--ab-mint)}
.ab23 .ab23-display--curate p{font-size:clamp(30px,4.3vw,62px)}
.ab23 .ab23-display--better p{font-size:clamp(46px,7.4vw,108px);line-height:.95}
/* word masks */
.ab23 .w{display:inline-block;overflow:hidden;vertical-align:top;padding:.14em .1em .26em;margin:-.14em -.1em -.26em}
.ab23 .wi{display:inline-block}
.ab23 .ab23-display .w{padding-right:.14em;margin-right:-.14em}

/* 3. Plaid polaroid frames and thumbs ------------------------------------------------------ */
.ab23 .ab23-frame{position:relative;margin:0;aspect-ratio:3/4;width:100%;filter:drop-shadow(7px 9px 0 #0007)}
.ab23 .ab23-frame .approved-event-picture{position:absolute;left:16%;top:12%;width:68%;height:63%;display:block;overflow:hidden;background:var(--ab-ink2)}
.ab23 .ab23-frame .approved-event-picture img{display:block;width:100%;height:100%;object-fit:cover}
.ab23 .ab23-frame-art{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.ab23 .ab23-frame figcaption{position:absolute;left:13%;right:13%;bottom:8.5%;height:9%;display:grid;place-items:center;font:700 clamp(11px,1.15vw,16px)/1 "OMHM Tomorrow",sans-serif;letter-spacing:.14em;color:#fff}
.ab23 .ab23-frame--plain{aspect-ratio:auto;max-width:calc(var(--nat,9999px) + 22px);padding:9px;box-sizing:border-box;border:2px solid var(--ab-red);border-radius:8px;background:#c4101f url('./journey-weave-tile.jpg') 0 0/60px 60px;filter:none;box-shadow:6px 8px 0 #0007,inset 0 0 0 1px #0006}
.ab23 .ab23-frame--plain .approved-event-picture{position:static;width:100%;height:auto;aspect-ratio:4/5;border-radius:3px}
.ab23 .ab23-frame--plain>img{display:block;width:100%;height:auto;border-radius:3px;background:var(--ab-ink2)}
.ab23 .ab23-frame--a{transform:rotate(-3deg)}
.ab23 .ab23-frame--b,.ab23 .ab23-frame--r{transform:rotate(2.6deg)}
.ab23 .ab23-thumb{flex:0 0 96px;width:96px;padding:5px 5px 11px;box-sizing:border-box;border:2px solid #ef2435;border-radius:8px;background:#c4101f url('./journey-weave-tile.jpg') 0 0/60px 60px;box-shadow:0 5px 8px #0009,inset 0 0 0 1px #0006}
.ab23 .ab23-thumb img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:3px;background:#111}
.ab23 .ab23-thumb--a{transform:rotate(-3deg)}
.ab23 .ab23-thumb--b{transform:rotate(2.6deg)}

/* 4. Hero: the arch holds the H1; the 2016 market photo sits behind it at 25 percent (flag: $hero_photo in the template) */
.ab23 .ab23-hero{position:relative;display:flex;flex-direction:column;align-items:center;margin:0 0 clamp(28px,2.8vw,40px)}
.ab23 .ab23-hero-bg{position:absolute;z-index:0;top:-60px;bottom:-30px;left:calc(50% - 50vw);width:100vw;pointer-events:none;opacity:.12;-webkit-mask-image:radial-gradient(ellipse 46% 52% at 50% 46%,#000 0,#000 28%,transparent 78%);mask-image:radial-gradient(ellipse 46% 52% at 50% 46%,#000 0,#000 28%,transparent 78%)}
.ab23 .ab23-hero-bg picture{display:block;width:100%;height:100%;position:static;left:auto;top:auto}
.ab23 .ab23-hero-bg img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 38%;filter:grayscale(.6) contrast(1.05)}
.ab23 .ab23-arch{position:relative;z-index:1;container-type:inline-size;width:min(100%,540px);aspect-ratio:1448/1086}
.ab23 .ab23-arch .editorial-arch{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;object-fit:contain}
#editorial-main .ab23-arch h1{position:absolute;left:50%;top:43%;width:50%;transform:translateX(-50%);margin:0;text-align:center;font-size:7.3cqw;line-height:1.04;letter-spacing:.01em;text-wrap:balance}
.ab23 .ab23-hero .editorial-actions{position:relative;z-index:1;justify-content:center;margin-top:-6px}

/* 5. Chapter 1, the line out the door: split 7/5, sticky portrait, 2016 cascade ---------------- */
.ab23 .ab23-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(22px,3vw,44px);align-items:stretch;margin-bottom:clamp(24px,3vw,40px)}
.ab23 .ab23-copy{display:flex;flex-direction:column;gap:clamp(14px,1.4vw,20px)}
.ab23 .ab23-turn{display:flex;flex-direction:column;gap:clamp(10px,1vw,14px);padding:clamp(10px,1.2vw,16px) 0 clamp(10px,1.2vw,16px) clamp(16px,1.8vw,24px);border-left:4px solid #000}
.ab23 .ab23-aside{font-size:clamp(17px,1.5vw,21px);color:var(--ab-dim)}
.ab23 .ab23-kicker{font-size:clamp(15px,1.4vw,19px);font-weight:700;color:var(--ab-mint);letter-spacing:.02em}
.ab23 .ab23-question{max-width:22ch;font-size:clamp(28px,3.9vw,56px);line-height:1.04;font-weight:900;color:#fff;text-wrap:balance;text-shadow:.05em .05em 0 var(--ab-red),.1em .1em 0 #000}
.ab23 .ab23-payoff{max-width:26ch}
.ab23 .ab23-aside-col{position:relative;display:flex;flex-direction:column;align-items:center;gap:0}
.ab23 .ab23-sticky{width:min(100%,330px);z-index:1}
.ab23 .ab23-sticky .ab23-frame{width:100%}
.ab23 .ab25-below{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:center;margin-top:clamp(16px,1.6vw,24px)}
.ab23 .ab25-below-a{display:flex;flex-direction:column;gap:clamp(14px,1.6vw,22px)}
.ab23 .ab25-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(16px,2vw,28px);align-items:center}
.ab23 .ab25-hall{width:100%;justify-self:end;transform:rotate(1.6deg)}
.ab23 .ab23-rows li,.ab23 .ab23-index li{position:relative;padding:7px 0 7px 32px;border-top:1px solid var(--ab-rule);font-size:clamp(16px,1.3vw,18px);line-height:1.4;font-weight:600;color:#fff}
.ab23 .ab23-rows li:last-child{border-bottom:1px solid var(--ab-rule)}
.ab23 .ab23-rows li::before{content:"";position:absolute;left:3px;top:calc(7px + .45em);width:10px;height:10px;background:var(--ab-mint);transform:rotate(45deg)}
.ab23 .ab23-rows--check li::before{left:2px;top:calc(7px + .2em);width:9px;height:16px;background:none;border:solid var(--ab-mint);border-width:0 3px 3px 0}
.ab23 .ab23-idea{display:flex;flex-direction:column;gap:8px}
.ab23 .ab23-energy,.ab23 .ab23-twist-a,.ab23 .ab23-twist-c,.ab23 .ab23-proofwrap{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(10px,1.4vw,18px)}
.ab23 .ab23-energy .ab23-display{justify-items:center}
.ab23 .ab23-twist{display:flex;flex-direction:column;gap:clamp(18px,2vw,28px);margin-top:clamp(18px,2vw,28px)}
.ab23 .ab23-twist-a{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-areas:"t1 ph" "t2 ph";align-items:center;text-align:left;gap:clamp(10px,1.4vw,18px) clamp(20px,3vw,44px)}
.ab23 .ab25-textcol{grid-area:t1;display:flex;flex-direction:column;gap:clamp(8px,1vw,12px);align-items:flex-start}
.ab23 .ab25-textcol--b{grid-area:t2}
.ab23 .ab25-press{grid-area:ph;display:flex;justify-content:center;align-items:center;gap:clamp(8px,1.2vw,16px)}
.ab23 .ab25-press .ab23-frame{flex:0 1 40%;width:40%}
.ab23 .ab23-twist-b{margin-top:clamp(30px,3.4vw,48px);padding:0}
.ab23 .ab25-queue{width:100%;max-width:none;box-sizing:border-box}
.ab23 .ab25-queue>img{aspect-ratio:24/4.5;object-fit:cover;object-position:50% 60%}
.ab23 .ab23-twist-c{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding-block:clamp(12px,1.4vw,18px);margin:0!important}
.ab23 .ab23-cap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(20px,3.4vw,52px);align-items:center}
.ab23 .ab23-cap-a{display:grid;grid-template-columns:minmax(0,1fr) clamp(140px,15vw,210px);gap:clamp(16px,2.4vw,34px);align-items:center}
.ab23 .ab23-cap-a .ab23-prose{max-width:none;font-size:clamp(16px,1.3vw,18px)}
.ab23 .ab25-packed{width:100%}
.ab23 .ab23-cap-b{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,20px);padding-left:clamp(18px,2.4vw,34px);border-left:4px solid #000}
.ab23 .ab23-moment{margin:clamp(18px,2vw,28px) 0;padding:clamp(14px,1.8vw,22px) clamp(18px,4vw,56px);background:var(--ab-ink2);border:3px solid var(--ab-edge);border-radius:12px;box-shadow:9px 9px 0 #0005;text-align:center}
.ab23 .ab23-pull{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.1em clamp(14px,2.4vw,36px)}
.ab23 .ab23-pull-a{font-size:clamp(20px,2.8vw,40px);line-height:1.05;font-weight:900;text-transform:uppercase;color:#fff}
.ab23 .ab23-pull-b{font-family:"OMHM Backline",cursive;font-weight:400;font-size:clamp(32px,6.2vw,88px);line-height:1.1;color:var(--ab-mint);padding-top:.12em}
.ab23 .ab23-proof{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,20px);width:100%;text-align:left}
.ab23 .ab23-proof li,.ab23 .ab23-promise li,.ab23 .ab23-strips li{padding:clamp(10px,1.2vw,16px) clamp(16px,2vw,26px);background:var(--ab-ink2);border:3px solid var(--ab-edge);border-radius:12px;font-weight:700;line-height:1.35;color:#fff}
.ab23 .ab23-proof li{font-size:clamp(16px,1.3vw,18px)}
.ab23 .ab23-proof .ab23-k{text-transform:uppercase}
.ab23 .ab23-steps{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:8px clamp(16px,2.6vw,38px)}
.ab23 .ab23-steps p{font-weight:800;line-height:1.1;color:#fff}
.ab23 .ab23-steps p:nth-child(-n+3){font-size:clamp(20px,2.1vw,28px)}
.ab23 .ab23-steps p:nth-child(4){font-size:clamp(28px,3.4vw,48px);color:var(--ab-mint)}

/* 6. Timeline ribbon and chapter 3, Our Mission -------------------------------------------- */
.ab23 .ab23-ribbon{margin:0 0 clamp(12px,2vw,24px);padding:clamp(14px,1.6vw,22px) clamp(18px,3vw,44px) clamp(12px,1.4vw,18px);background:var(--ab-ink2);border:3px solid var(--ab-edge);border-radius:12px;box-shadow:9px 9px 0 #0005}
.ab23 .ab23-ribbon-track{position:relative}
.ab23 .ab23-ribbon .editorial-years{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;border:0;text-align:center}
.ab23 .ab23-ribbon .editorial-years li{position:relative;align-items:center;gap:6px;padding-top:40px}
.ab23 .ab23-ribbon .editorial-years li::before{content:"";position:absolute;left:50%;top:0;width:22px;height:22px;margin-left:-11px;border-radius:50%;background:var(--ab-mint);border:3px solid #fff;box-sizing:border-box}
.ab23 .ab23-ribbon .editorial-years li:nth-child(1){--n:0}.ab23 .ab23-ribbon .editorial-years li:nth-child(2){--n:1}.ab23 .ab23-ribbon .editorial-years li:nth-child(3){--n:2}.ab23 .ab23-ribbon .editorial-years li:nth-child(4){--n:3}
.ab23 .ab23-ribbon .editorial-years strong{font-size:clamp(28px,4vw,54px)}
.ab23 .ab23-ribbon .editorial-years span{display:flex;flex-direction:column;align-items:center}
.ab23 .ab23-ribbon .editorial-years i{display:block;font-style:normal}
.ab23 .ab23-ribbon .editorial-years .ab25-pivot strong{font-size:clamp(34px,5vw,66px);color:var(--ab-mint)}
.ab23 .ab23-ribbon .editorial-years .ab25-pivot::before{width:30px;height:30px;margin-left:-15px;top:-4px;box-shadow:0 0 0 5px var(--ab-ink2),0 0 0 8px var(--ab-mint)}
.ab23 .ab23-ribbon .editorial-years .ab25-pivot{padding-top:44px}
.ab23 .ab23-ribbon .editorial-years .ab25-pivot .ab25-l1{font-weight:800;color:var(--ab-mint)}
.ab23 .ab23-ribbon-line{position:absolute;left:12.5%;right:12.5%;top:9px;height:4px;border-radius:2px;background:#ffffff2b;overflow:hidden}
.ab23 .ab23-ribbon-line i{display:block;width:100%;height:100%;background:var(--ab-mint);transform-origin:left center}
.ab23 .ab23-ribbon .editorial-actions{justify-content:center;margin-top:clamp(16px,2vw,26px)}
.ab23 .editorial-bow{display:block;width:min(340px,70%);margin:clamp(18px,2.4vw,32px) auto clamp(28px,3.4vw,48px)}
.ab23 .ab23-mission{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,660px) minmax(0,1fr);column-gap:clamp(16px,2vw,30px);row-gap:clamp(16px,1.6vw,22px);align-items:center}
.ab23 .ab23-mission>.ab23-m-l,.ab23 .ab23-mission>.ab23-m-r{align-self:start}
.ab23 .ab23-mcol{display:flex;flex-direction:column;gap:clamp(10px,1.3vw,16px);margin:0!important}
.ab23 .ab23-mission>.ab23-frame{width:min(100%,260px);position:relative;z-index:2}
.ab23 .ab23-mission>.ab23-m-l{justify-self:end;margin-right:-24px;rotate:-4deg}
.ab23 .ab23-mission>.ab23-m-r{justify-self:start;margin-left:-24px;rotate:4deg}
.ab23 .ab23-mission>.ab23-m-l2{justify-self:center}
.ab23 .ab23-m-l{grid-column:1;grid-row:1}.ab23 .ab23-mission>.ab23-mcol:nth-of-type(1){grid-column:2;grid-row:1}
.ab23 .ab23-m-r{grid-column:3;grid-row:1}
.ab23 .ab23-mwide{grid-column:1/-1;grid-row:2;display:flex;flex-direction:column;gap:14px;align-items:center}
.ab23 .ab23-matters{grid-column:1/-1;grid-row:3}
.ab23 .ab23-m-l2{grid-column:1;grid-row:4}
.ab23 .ab23-mcol--b{grid-column:2/4;grid-row:4}
.ab23 .ab23-strips{display:grid;gap:clamp(8px,1vw,12px);width:100%;max-width:980px}
.ab23 .ab23-strips li{font-size:clamp(17px,1.65vw,23px)}
.ab23 .ab23-matters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,22px)}
.ab23 .ab23-matters li{padding:10px 0 10px clamp(14px,1.6vw,22px);border-left:4px solid #000;font-size:clamp(17px,1.6vw,22px);font-weight:700;line-height:1.35;color:#fff}
.ab23 .ab23-curate{display:flex;flex-direction:column;gap:6px}
.ab23 .ab23-curate .ab23-dim{font-size:clamp(18px,1.8vw,24px);font-weight:700}

/* 7. Chapter 4, why the first year still shapes everything: two columns -------------------------- */
.ab23 .ab23-fy{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(16px,1.8vw,26px) clamp(20px,3vw,44px);align-items:start}
.ab23 .ab23-fy>.ab23-panel{margin:0!important}
.ab23 .ab23-fy-a{grid-column:1/-1;grid-row:1;display:flex;flex-direction:column;gap:clamp(14px,1.8vw,24px)}
.ab23 .ab23-needs{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,20px);margin-top:2px}
.ab23 .ab25-lines{display:grid;grid-template-columns:minmax(0,1fr) clamp(120px,11vw,160px) clamp(120px,11vw,160px);grid-auto-flow:row;gap:clamp(10px,1.4vw,18px) clamp(14px,1.8vw,24px);align-items:center}
.ab23 .ab25-lines>p{grid-column:1}
.ab23 .ab25-line-photo{width:100%;align-self:center}
.ab23 .ab25-line-photo--1{grid-column:2;grid-row:1/5}
.ab23 .ab25-line-photo--2{grid-column:3;grid-row:1/5}
.ab23 .ab23-triple{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.4vw,18px);padding:clamp(12px,1.4vw,18px) clamp(14px,1.8vw,22px);background:var(--ab-ink2);border:3px solid var(--ab-edge);border-radius:12px}
.ab23 .ab23-triple p{font-size:clamp(17px,1.7vw,23px);font-weight:800;color:var(--ab-mint);text-transform:uppercase;line-height:1.1}
.ab23 .ab23-fy-b{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:clamp(12px,1.4vw,18px);height:100%;justify-content:center}
.ab23 .ab23-terms{grid-column:2;grid-row:2;display:grid;align-content:center;background:var(--ab-ink2);border:3px solid var(--ab-edge);border-radius:12px;box-shadow:7px 7px 0 #0005;padding:clamp(6px,1vw,14px) clamp(18px,2.4vw,34px)}
.ab23 .ab23-terms li{display:grid;gap:3px;padding:clamp(9px,1.1vw,14px) 0;border-top:1px solid var(--ab-rule)}
.ab23 .ab23-terms li:first-child{border-top:0}
.ab23 .ab23-ops-a{display:block;font-size:clamp(13px,1.1vw,16px);font-weight:800;letter-spacing:.05em;text-transform:uppercase;line-height:1.3;color:var(--ab-mint)}
.ab23 .ab23-ops-b{display:block;font-size:clamp(18px,2.1vw,28px);font-weight:700;line-height:1.28;color:#fff}
.ab23 .ab23-terms .ab23-ops-b{font-size:clamp(16px,1.5vw,20px);font-weight:600;line-height:1.4}
.ab23 .ab23-terms .ab23-ops-a{font-size:clamp(17px,1.8vw,23px)}
.ab23 .ab23-care{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,44px)}
.ab23 .ab23-care p{padding:4px 0 4px clamp(16px,2vw,26px);border-left:4px solid #000;font-size:clamp(16px,1.45vw,19px);line-height:1.5;font-weight:600;color:#fff}
.ab23 .ab23-better{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(6px,1vw,14px) clamp(20px,3vw,44px);align-items:center;padding:clamp(8px,1.4vw,20px) 0 0}
.ab23 .ab23-better-a{display:flex;flex-direction:column;gap:10px}
.ab23 .ab23-better-b{display:flex;flex-direction:column;gap:2px;align-items:flex-start}
.ab23 .ab23-qscript{max-width:16ch;font-family:"OMHM Backline",cursive;font-weight:400;font-size:clamp(32px,4.2vw,60px);line-height:1.02;color:var(--ab-mint);text-wrap:balance}
.ab23 .ab23-better-rows{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,20px)}
.ab23 .ab23-better-rows li{padding:clamp(10px,1.2vw,16px) clamp(14px,1.6vw,22px);border-left:4px solid var(--ab-mint);background:var(--ab-ink2);font-size:clamp(16px,1.5vw,20px);font-weight:700;line-height:1.35;color:#fff}

/* 8. Chapter 5, from one room to the tradition: the FOMO list carries pictures ------------------ */
.ab23 .ab23-grow{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(18px,3vw,44px);align-items:center}
.ab23 .ab23-grow-a{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,20px)}
.ab23 .ab23-stair{gap:clamp(8px,1.2vw,14px)}
.ab23 .ab23-stair p{font-size:clamp(18px,1.8vw,24px);font-weight:700;line-height:1.2}
.ab23 .ab23-stair p:nth-child(2){padding-left:clamp(10px,2vw,32px)}
.ab23 .ab23-stair p:nth-child(3){padding-left:clamp(20px,4vw,64px)}
.ab23 .ab23-stair p:nth-child(4){padding-left:clamp(30px,6vw,96px);color:var(--ab-mint)}
.ab23 .ab23-grow-photos{display:flex;justify-content:center;align-items:center;padding:0 clamp(4px,1vw,14px)}
.ab23 .ab23-grow-photos .ab23-frame{flex:0 0 38%;width:38%}
.ab23 .ab23-grow-photos .ab23-frame+.ab23-frame{margin-left:-8%}
.ab23 .ab23-g1{z-index:1}.ab23 .ab23-g2{z-index:2;transform:rotate(-2deg) translateY(-14px)!important}.ab23 .ab23-g3{z-index:1}
.ab23 .ab23-fomo{display:flex;flex-direction:column;gap:clamp(10px,1.3vw,18px)}
.ab23 .ab23-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,4vw,64px)}
.ab23 .ab23-index li{display:flex;align-items:center;gap:clamp(14px,1.6vw,22px);min-height:96px;padding:3px 0;font-size:clamp(16px,1.4vw,19px)}
.ab23 .ab23-index li::before{content:none}
.ab23 .ab23-close{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(10px,1.4vw,16px)}
.ab23 .ab23-sp{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:0 clamp(12px,1.8vw,26px)}
.ab23 .ab23-sp-a{font-size:clamp(20px,2.6vw,38px);line-height:1.1;font-weight:800;color:#fff}
.ab23 .ab23-sp-b{display:flex;flex-wrap:nowrap;white-space:nowrap;justify-content:center;align-items:baseline;font-family:"OMHM Backline",cursive;font-weight:400;font-size:clamp(30px,6.2vw,88px);line-height:1.02;color:var(--ab-mint)}
.ab23 .ab23-sp-b b{font-family:"OMHM Tomorrow",sans-serif;font-weight:900;letter-spacing:-.01em;color:#fff;text-shadow:.04em .04em 0 var(--ab-red),.08em .08em 0 #000}
.ab23 .ab23-sp-beats{display:flex;flex-wrap:wrap;justify-content:center;gap:6px clamp(20px,4vw,56px);margin-top:clamp(10px,1.6vw,22px)}
.ab23 .ab23-sp-beats p{font-size:clamp(19px,2.2vw,30px);font-weight:700}
.ab23 .ab23-sp-beats p:last-child{color:var(--ab-mint)}
.ab23 .ab23-ops{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:clamp(8px,1vw,14px)}
.ab23 .ab23-ops li{padding:clamp(10px,1.3vw,18px) clamp(10px,1.2vw,16px);background:rgba(9,9,9,.92);border-top:3px solid #e21b30;box-shadow:6px 6px 0 #0005;display:flex;flex-direction:column;gap:6px}
.ab23 .ab23-ops .ab23-ops-b{font-size:clamp(15px,1.25vw,18px);line-height:1.3;text-wrap:balance}
.ab23 .ab23-today-sp{font-size:clamp(20px,2.3vw,31px);line-height:1.2;font-weight:700;color:#fff;text-align:center}
.ab23 .ab23-sp-w{margin:0 .12em;font-family:"OMHM Backline",cursive;font-weight:400;font-size:1.4em;color:var(--ab-mint);white-space:nowrap}
.ab23 .ab23-sp-w b{font-family:"OMHM Tomorrow",sans-serif;font-weight:900;color:#fff;font-size:.8em}

/* 9. Chapter 6, what makes Ohio Made different: chips and a fanned hand ---------------------------- */
.ab23 .ab23-denials{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(18px,3vw,48px)}
.ab23 .ab23-denials .ab23-lead--c{margin:0;text-align:left;max-width:30ch;padding-left:clamp(16px,2vw,28px);border-left:4px solid #000}
.ab23 .ab23-diff{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,4vw,64px);align-items:start;margin-top:clamp(16px,1.5vw,22px)}
.ab23 .ab23-col{display:flex;flex-direction:column;gap:clamp(10px,1.3vw,16px)}
.ab23 .ab23-sense{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(8px,1vw,12px);margin-top:clamp(14px,1.6vw,22px)}
.ab23 .ab23-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(8px,1.1vw,14px)}
.ab23 .ab23-chips li{padding:6px clamp(12px,1.4vw,18px);background:var(--ab-ink2);border:2px solid var(--ab-edge);border-radius:10px;font-size:clamp(15px,1.5vw,20px);line-height:1.25;font-weight:700;color:#fff}
.ab23 .ab23-chips li:nth-child(3n+1){border-color:var(--ab-mint);color:var(--ab-mint)}
.ab23 .ab23-chips li:nth-child(odd){transform:rotate(-1.4deg)}
.ab23 .ab23-chips li:nth-child(even){transform:rotate(1.2deg)}
.ab23 .ab23-quote{max-width:28ch;font-size:clamp(20px,2vw,27px);line-height:1.25;font-weight:700;color:#fff}
.ab23 .ab23-quote .ab23-script{display:block;margin-top:.1em;font-size:1.45em}
.ab23 .ab23-diff-close{margin-top:clamp(16px,2vw,28px)}
.ab23 .ab23-fan{position:relative;display:flex;justify-content:center;align-items:flex-end;padding:clamp(28px,3vw,40px) 60px clamp(6px,1vw,14px)}
.ab23 .ab23-fan .ab23-frame{flex:0 0 clamp(150px,18%,220px);width:clamp(150px,18%,220px);margin-left:clamp(-84px,-5.8vw,-40px);transform-origin:50% 100%}
.ab23 .ab23-fan .ab23-frame:first-child{margin-left:0}
.ab23 .ab23-fan-1{transform:rotate(-11deg) translateY(26px)}
.ab23 .ab23-fan-2{transform:rotate(-6.5deg) translateY(6px)}
.ab23 .ab23-fan-3{transform:rotate(-2deg) translateY(-18px);z-index:3}
.ab23 .ab23-fan-4{transform:rotate(2deg) translateY(-18px);z-index:4}
.ab23 .ab23-fan-5{transform:rotate(6.5deg) translateY(6px);z-index:2}
.ab23 .ab23-fan-6{transform:rotate(11deg) translateY(26px);z-index:1}
.ab23 .ab23-fan .ab23-frame{transition:translate .4s var(--ab-ease)}
.ab23 .ab23-fan .ab23-frame:hover{translate:0 -14px;z-index:6}

/* 10. Chapter 7, what we believe: 2 by 4 grid, two photos flank it -------------------------------- */
.ab23 .ab23-believe-wrap{display:grid;grid-template-columns:minmax(0,clamp(170px,18vw,260px)) minmax(0,1fr) minmax(0,clamp(170px,18vw,260px));gap:clamp(16px,2.4vw,36px);align-items:center}
.ab23 .ab23-believe-wrap>.ab23-frame{width:100%}
.ab23 .ab23-frame--out-l{transform:rotate(-6deg)}
.ab23 .ab23-frame--out-r{transform:rotate(6deg)}
.ab23 .ab23-believe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1vw,12px)}
.ab23 .ab23-bel{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:clamp(12px,1.4vw,20px) clamp(16px,2vw,26px);background:var(--ab-ink2);border:3px solid var(--ab-edge);border-radius:12px;box-shadow:7px 7px 0 #0005;font-size:clamp(17px,1.6vw,21px);line-height:1.3;font-weight:700;color:#fff}
.ab23 .ab23-bel .ab23-k{display:block;margin-bottom:.3em;font-size:.56em;letter-spacing:.14em;text-transform:uppercase}
.ab23 .ab23-bel-r{font-family:"OMHM Backline",cursive;font-weight:400;font-size:1.4em;line-height:1.1;color:var(--ab-mint)}
.ab23 .ab23-bel--wide,.ab23 .ab23-bel--final{grid-column:1/-1}
.ab23 .ab23-bel--final{background:#b3121f;border-color:#fff;font-size:clamp(19px,1.8vw,24px)}
.ab23 .ab23-bel--final .ab23-k{color:#fff}

/* 11. Chapter 8, Ohio Made today: the rail keeps its vertical rule -------------------------------- */
.ab23 .ab23-today{display:flex;flex-direction:column;gap:clamp(16px,1.8vw,24px)}
.ab23 .ab23-today-a{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.7fr);gap:clamp(22px,4vw,64px);align-items:center}
.ab23 .ab23-today-a .ab23-col{gap:clamp(14px,1.8vw,24px)}
.ab23 .ab23-today-a>.ab23-frame{width:min(100%,215px);justify-self:center}
.ab23 .ab23-today-b{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:clamp(22px,4vw,64px);align-items:center}
.ab23 .ab23-rail{position:relative}
.ab23 .ab23-rail li:not(:last-child)::after{content:"";position:absolute;left:11px;top:30px;bottom:-4px;width:4px;background:var(--ab-red);border-radius:2px}
.ab23 .ab23-rail li{position:relative;padding:0 0 clamp(7px,.9vw,11px) 60px;font-size:clamp(18px,1.7vw,23px);line-height:1.3;font-weight:700;color:#fff}
.ab23 .ab23-rail li:last-child{padding-bottom:0}
.ab23 .ab23-rail li::before{content:"";position:absolute;left:0;top:.08em;width:26px;height:26px;border-radius:50%;background:var(--ab-ink);border:4px solid var(--ab-mint);box-sizing:border-box}
.ab23 .ab23-rail .ab23-script{display:block;margin-top:.1em;font-size:1.3em}
.ab23 .ab23-stack{display:flex;flex-direction:column;align-items:center}
.ab23 .ab23-stack .ab23-frame{width:min(100%,170px)}
.ab23 .ab23-stack .ab23-frame+.ab23-frame{margin-top:-14%}
.ab23 .ab23-today-close{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(12px,1.8vw,22px)}
.ab23 .ab23-today-close .ab23-pair{display:flex;flex-wrap:wrap;justify-content:center;gap:6px clamp(24px,4vw,60px)}

/* 12. Chapter 9, OH10: lockup, copy, filmstrip, buttons ----------------------------------------- */
.ab23 .ab23-s8{margin-bottom:var(--ab-gap)}
.ab23 .ab23-lockup{margin:0 auto clamp(14px,2vw,26px);width:min(100%,700px)}
.ab23 .ab23-lockup img{display:block;width:100%;height:auto}
.ab23 .ab23-oh10{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(10px,1.1vw,14px)}
.ab23 .ab23-trio{justify-items:start;text-align:left}
.ab23 .ab23-trio p{font-size:clamp(19px,1.9vw,26px);font-weight:700}
.ab23 .ab23-trio p:nth-child(2){color:var(--ab-mint)}
.ab23 .ab23-promise{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.8vw,24px);width:100%}
.ab23 .ab23-oh10-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,3vw,44px);align-items:center;width:100%}
.ab23 .ab23-oh10-row .ab23-promise{grid-template-columns:minmax(0,1fr)}
.ab23 .ab23-promise li{font-size:clamp(19px,1.9vw,26px);font-weight:800;display:flex;align-items:center;text-align:left}
.ab23 .ab23-welcome{display:flex;flex-direction:column;gap:4px}
.ab23 .ab23-welcome-a{font-size:clamp(22px,2.6vw,36px);line-height:1.1;font-weight:800;color:#fff}
.ab23 .ab23-welcome-b{font-family:"OMHM Backline",cursive;font-weight:400;font-size:clamp(30px,4.2vw,60px);line-height:1.05;color:var(--ab-mint);text-wrap:balance}
.ab23 .ab23-film{contain:inline-size;margin:clamp(14px,1.8vw,24px) 0 0;padding:16px 0 20px;scrollbar-width:thin;scrollbar-color:#65f4b9 #090909}
.ab23 .ab23-film .hm19-tile{scroll-snap-align:start}
.ab23 .ab23-film .hm19-track{margin-left:24px}
.ab23 .ab23-close-actions .editorial-actions{justify-content:center;margin-top:clamp(10px,1.6vw,20px)}

/* 13. Motion: hidden states only while the script has added .ab23--anim ------------------------- */
.ab23--anim [data-reveal] .wi{transform:translateY(118%);transition:transform .9s var(--ab-ease) calc(var(--i,0) * 40ms)}
.ab23--anim [data-reveal].is-in .wi{transform:none}
.ab23--anim .ab23-ribbon-line i{transform:scaleX(0);transition:transform 1.6s var(--ab-ease)}
.ab23--anim .ab23-ribbon.is-in .ab23-ribbon-line i{transform:scaleX(1)}
.ab23--anim .ab23-ribbon .editorial-years li::before{background:var(--ab-ink);transition:background .3s linear calc(var(--n,0) * .5s)}
.ab23--anim .ab23-ribbon.is-in .editorial-years li::before{background:var(--ab-mint)}
@media(min-width:981px) and (prefers-reduced-motion:no-preference){
  /* pinned only in motion mode: the founder portrait stays while the copy scrolls */
  .ab23:not(.ab23--static) .ab23-aside-col{align-items:stretch}
  .ab23:not(.ab23--static) .ab23-sticky{position:sticky;top:104px}
}
.ab23--static .hm19-stripe,.ab23.ab23--static .ab23-film{overflow-x:auto;scroll-snap-type:x proximity}
.ab23--static .hm19-track{animation:none}
.ab23--static .hm19-set-copy{display:none}
@media(prefers-reduced-motion:reduce){
  .ab23 .ab23-film{overflow-x:auto;scroll-snap-type:x proximity}
  .ab23 .ab23-fan .ab23-frame{transition:none}
}

/* 14. Smaller screens: one column, photo first ------------------------------------------------ */
@media(max-width:980px){
  .ab23 .ab23-split,.ab23 .ab23-twist,.ab23 .ab23-cap,.ab23 .ab23-fy,.ab23 .ab23-grow,.ab23 .ab23-diff,.ab23 .ab23-today-a,.ab23 .ab23-today-b,.ab23 .ab23-better,.ab23 .ab23-needs{grid-template-columns:minmax(0,1fr)}
  .ab23 .ab23-split{display:flex;flex-direction:column}
  .ab23 .ab23-aside-col{display:contents}
  .ab23 .ab23-sticky{order:-2;width:min(78%,320px);align-self:center}
  .ab23 .ab23-copy{order:0}
  .ab23 .ab25-below{grid-template-columns:minmax(0,1fr)}
  .ab23 .ab25-row,.ab23 .ab23-twist-a,.ab23 .ab23-cap-a{grid-template-columns:minmax(0,1fr);grid-template-areas:none}
  .ab23 .ab25-textcol,.ab23 .ab25-press,.ab23 .ab25-textcol--b{grid-area:auto}
  .ab23 .ab25-hall{justify-self:center;width:min(100%,420px)}
  .ab23 .ab25-press{max-width:480px;margin-inline:auto;width:100%}
  .ab23 .ab25-packed{width:min(100%,260px);justify-self:center}
  .ab23 .ab25-lines{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .ab23 .ab25-lines>p{grid-column:1/-1}
  .ab23 .ab25-line-photo--1,.ab23 .ab25-line-photo--2{grid-row:auto;grid-column:auto;max-width:200px;justify-self:center}
  .ab23 .ab23-grow .ab25-srow:nth-child(n){padding-left:0}
  .ab23 .ab23-denials,.ab23 .ab23-oh10-row{grid-template-columns:minmax(0,1fr)}
  .ab23 .ab23-denials{text-align:center;justify-items:center}
  .ab23 .ab23-denials .ab23-lead--c{margin-inline:auto;padding-left:0;border-left:0;text-align:center}
  .ab23 .ab23-trio{justify-items:center;text-align:center}
  .ab23 .ab23-twist-c{align-items:flex-start}
  .ab23 .ab23-mission{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .ab23 .ab23-mission>.ab23-frame{grid-row:auto!important;width:min(100%,220px)}
  .ab23 .ab23-m-l{grid-column:1;grid-row:1!important}.ab23 .ab23-m-r{grid-column:2;grid-row:1!important}
  .ab23 .ab23-mission>.ab23-mcol{grid-column:1/-1!important;grid-row:auto!important}
  .ab23 .ab23-mission>.ab23-mcol:nth-of-type(1){grid-row:2!important}
  .ab23 .ab23-mwide{grid-row:3!important}
  .ab23 .ab23-matters{grid-row:4!important}
  .ab23 .ab23-m-l2{grid-column:1/-1!important;grid-row:5!important}
  .ab23 .ab23-mcol--b{grid-column:1/-1!important;grid-row:6!important}
  .ab23 .ab23-fy>*{grid-column:1!important;grid-row:auto!important}
  .ab23 .ab23-better-rows,.ab23 .ab23-care{grid-template-columns:minmax(0,1fr)}
  .ab23 .ab23-believe-wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ab23 .ab23-believe-wrap .ab23-believe{grid-column:1/-1;grid-row:2}
  .ab23 .ab23-bp{grid-row:1;width:min(100%,260px);justify-self:center}
  .ab23 .ab23-today-a>.ab23-frame{order:-1}
  .ab23 .ab23-mission>.ab23-m-l{margin-right:0;rotate:-3deg;justify-self:center}
  .ab23 .ab23-mission>.ab23-m-r{margin-left:0;rotate:3deg;justify-self:center}
  .ab23 .ab23-ops{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ab23 .ab23-ops li,.ab23 .ab23-ops li:nth-child(n+4){grid-column:span 1}
  .ab23 .ab23-ops li:last-child{grid-column:1/-1}
}
@media(max-width:780px){
  .ab23 .ab23-proof,.ab23 .ab23-promise,.ab23 .ab23-index,.ab23 .ab23-matters{grid-template-columns:minmax(0,1fr)}
  .ab23 .ab23-ribbon .editorial-years{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .ab23 .ab23-ribbon-line{display:none}
  .ab23 .ab23-ribbon .editorial-years li{padding-top:34px}
  #editorial-main .ab23-arch h1{top:41%;width:56%;font-size:8.4cqw}
  .ab23 .ab23-panel{box-shadow:6px 6px 0 #0005}
  .ab23 .ab23-fan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px;padding-top:24px}
  .ab23 .ab23-fan{padding-inline:0}
  .ab23 .ab23-fan .ab23-frame{flex:none;width:100%;margin-left:0;transform:rotate(-2.2deg)}
  .ab23 .ab23-fan .ab23-frame:nth-child(even){transform:rotate(2.2deg)}
  .ab23 .ab23-stair p:nth-child(n){padding-left:0}
  .ab23 .ab23-index li{padding:8px 0}
}
@media(max-width:600px){
  .ab23 .ab23-sticky{width:100%}
  .ab23 .ab23-triple{grid-template-columns:minmax(0,1fr)}
  .ab23 .ab23-thumb{flex-basis:64px;width:64px;padding:4px 4px 8px}
  .ab23 .ab23-index li{min-height:64px}
  .ab23 .ab23-display--line p{font-size:clamp(30px,9.6vw,56px)}
  .ab23 .ab25-queue>img{aspect-ratio:4/3}
  .ab23 .ab23-film{overflow-x:auto;scroll-snap-type:x mandatory;padding-inline:12px}
  .ab23 .ab23-film .hm19-track{animation:none}
  .ab23 .ab23-film .hm19-set-copy{display:none}
  .ab23 .ab23-pull{flex-direction:column;align-items:center}
}
@media(max-width:480px){
  .ab23 .ab23-moment{padding-inline:12px}
  .ab23 .ab23-panel{padding:22px 16px}
  .ab23 .ab23-chips li{padding:7px 12px}
  .ab23 .ab23-believe-wrap>.ab23-frame{width:100%}
  .ab23 .ab23-ops{grid-template-columns:minmax(0,1fr)}
  .ab23 .ab23-ops li:last-child{grid-column:auto}
  .ab23 .ab23-sp-b{white-space:normal;flex-wrap:wrap}
}

/* Batch 37: the opening block lost its Toronto paragraph, so the idea list and the 2016 line each stand alone in a single column. */
.ab23 .ab25-below.ab37-solo{grid-template-columns:minmax(0,1fr)}
