  .omr-sec { background:#ffffff; border-top:1px solid var(--rule,#d4cfc7); padding:54px 0 60px; }
  .omr-wrap { max-width:1100px; margin:0 auto; padding:0 40px; }
  .omr-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; border-bottom:2px solid var(--ink,#1a1a1a); padding-bottom:14px; margin-bottom:26px; }
  .omr-eyebrow { font-family:'DM Sans',sans-serif; font-size:11px; letter-spacing:0.32em; text-transform:uppercase; font-weight:700; color:#7a1f2e; margin-bottom:9px; }
  .omr-title { font-family:'Playfair Display',serif; font-weight:900; font-size:clamp(24px,3vw,34px); line-height:1.0; letter-spacing:-0.02em; color:var(--ink,#1a1a1a); margin:0; }
  .omr-title em { font-style:italic; color:#7a1f2e; }
  .omr-viewall { flex-shrink:0; font-family:'DM Sans',sans-serif; font-size:11px; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; color:#7a1f2e; text-decoration:none; white-space:nowrap; transition:color .15s; }
  .omr-viewall:hover { color:var(--ink,#1a1a1a); }
  .fbtb-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px 24px; }
  @media (max-width:900px){ .fbtb-grid { grid-template-columns:repeat(2,1fr); } }
  /* 1-col at 600 (not 560) so the phone card spec in 535-core.css
     never renders two-up — the name+pill stack needs the width. */
  @media (max-width:600px){ .fbtb-grid { grid-template-columns:1fr; } }
  .fbtb-card { position:relative; display:flex; flex-direction:column; text-decoration:none; background:#fff; border:1px solid var(--rule,#d4cfc7); border-radius:12px; box-shadow:0 8px 22px rgba(26,26,26,0.05); padding:14px 14px 22px; transition:box-shadow .2s, transform .2s; }
  .fbtb-card:hover { box-shadow:0 14px 32px rgba(26,26,26,0.10); transform:translateY(-2px); }
  .fbtb-vis { position:relative; overflow:hidden; border-radius:10px; min-height:300px; background:linear-gradient(150deg,#8a2435 0%,#7a1f2e 55%,#6a1a2b 100%); }
  .fbtb-vis .cap { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 22%; opacity:0.4; filter:grayscale(8%); mix-blend-mode:luminosity; }
  .fbtb-vis .glow { position:absolute; inset:0; background:radial-gradient(120% 85% at 80% 14%, rgba(212,168,67,0.18), transparent 55%); }
  .fbtb-vis .tag { position:absolute; z-index:3; top:18px; left:18px; font-family:'DM Sans',sans-serif; letter-spacing:0.22em; text-transform:uppercase; font-weight:700; color:#E8C96F; font-size:10px; }
  .fbtb-vis .quote { position:absolute; z-index:1; top:6px; right:18px; font-family:'Playfair Display',serif; font-weight:900; color:rgba(255,255,255,0.12); line-height:1; font-size:74px; }
  .fbtb-vis .circle { position:absolute; left:50%; top:42%; transform:translate(-50%,-50%); width:118px; height:118px; border-radius:50%; overflow:hidden; border:3px solid rgba(255,255,255,0.92); box-shadow:0 8px 24px rgba(0,0,0,0.40); background:var(--warm,#e8e3da); display:flex; align-items:center; justify-content:center; z-index:2; }
  .fbtb-vis .circle img { width:100%; height:100%; object-fit:cover; object-position:top; }
  .fbtb-vis .circle span { font-family:'Playfair Display',serif; font-weight:700; color:#7a1f2e; font-size:34px; }
  .fbtb-vis .nm { position:absolute; left:14px; right:14px; bottom:18px; z-index:2; text-align:center; font-family:'Playfair Display',serif; font-weight:700; color:#fff; line-height:1.2; font-size:16px; }
  .fbtb-card-title { font-family:'Playfair Display',serif; font-weight:800; font-size:21px; line-height:1.2; color:var(--ink,#1a1a1a); margin:18px 6px 10px; transition:color .2s; overflow-wrap:break-word; }
  .fbtb-card:hover .fbtb-card-title { color:#7a1f2e; }
  .fbtb-card-dek { font-family:'Playfair Display',serif; font-style:italic; font-size:15px; line-height:1.5; color:var(--soft,#8a7f72); margin:0 6px 14px; }
  .fbtb-card-read { margin:auto 6px 0; font-family:'DM Sans',sans-serif; font-size:10px; letter-spacing:0.18em; text-transform:uppercase; font-weight:700; color:#7a1f2e; }
  .fbtb-card-tags { display:flex; flex-wrap:wrap; gap:5px; margin:0 6px 14px; }
  .fbtb-card-tag { display:inline-block; padding:3px 10px; border:1px solid var(--rule,#d4cfc7);  font-family:'DM Sans',sans-serif; font-size: 10px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:#7a1f2e; }
  @media (max-width:768px){ .omr-wrap { padding:0 20px; } .omr-head { flex-wrap:wrap; } }

/* ── Read overlay — same reveal system as the video-card play button
   (single-535 related grid): identical position, circle spec, timing,
   and hover choreography; only the glyph differs (book, not play).
   Book icons sit optically centered, so no 3px offset. ─────────────── */
.fbtb-vis .circle { transition:opacity .35s ease,transform .45s cubic-bezier(0.16,1,0.3,1); }
.fbtb-card:hover .fbtb-vis .circle { opacity:0.16; transform:translate(-50%,-50%) scale(0.95); }
.fbtb-read { position:absolute; left:50%; top:42%; transform:translate(-50%,-50%) scale(0.8); opacity:0; transition:opacity .35s ease,transform .45s cubic-bezier(0.16,1,0.3,1); z-index:5; pointer-events:none; }
.fbtb-card:hover .fbtb-read { opacity:1; transform:translate(-50%,-50%) scale(1); }
.fbtb-read .pc { display:inline-flex; align-items:center; justify-content:center; width:64px; height:64px; border-radius:50%; background:rgba(255,255,255,0.95); box-shadow:0 6px 22px rgba(0,0,0,0.32); }
.fbtb-read .pc svg { width:22px; height:22px; fill:#7a1f2e; display:block; }

/* ── "● Read" pill — the persistent bottom affordance, byte-matched to
   the video card's "● Watch" pill (same bg, blur, radius, type, dot,
   hover darken). The author name moves up to clear it, mirroring the
   video card's composition (photo high, action pill anchored low). ── */
.fbtb-read-pill { position:absolute; left:50%; bottom:16px; transform:translateX(-50%); z-index:3; display:inline-flex; align-items:center; gap:6px; background:rgba(20,20,22,0.78); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); color:#fff; padding:6px 14px; border-radius:999px; font-family:'DM Sans',sans-serif; font-weight:700; font-size:9.5px; letter-spacing:0.22em; text-transform:uppercase; box-shadow:0 2px 10px rgba(0,0,0,0.28); transition:background .25s ease; }
.fbtb-read-pill .wd { width:5px; height:5px; border-radius:50%; background:#E8C96F; flex-shrink:0; }
.fbtb-card:hover .fbtb-read-pill { background:rgba(12,12,14,0.92); }
.fbtb-vis .nm { bottom:54px; }


@keyframes pitch-pulse { 0%,100%{box-shadow:-3px 0 16px rgba(122,31,46,0.25);} 50%{box-shadow:-3px 0 24px rgba(122,31,46,0.5);} }
#pitch-bug { animation: pitch-pulse 3s ease-in-out infinite; }
#pitch-panel { position:fixed;right:-380px;top:50%;transform:translateY(-50%);z-index:9998;width:360px;background:var(--bone);box-shadow:-8px 0 48px rgba(0,0,0,0.18);transition:right 0.35s cubic-bezier(0.4,0,0.2,1);padding:40px 36px;font-family:'DM Sans',sans-serif; }
#pitch-panel.open { right:0; }
#pitch-panel .pitch-eyebrow { font-size:8px;letter-spacing:0.28em;text-transform:uppercase;color:var(--maroon);font-weight:700;margin-bottom:10px; }
#pitch-panel .pitch-title { font-family:'Playfair Display',serif;font-size:26px;font-weight:900;color:var(--ink);line-height:1.1;margin-bottom:8px; }
#pitch-panel .pitch-rule { width:28px;height:2px;background:var(--maroon);margin-bottom:16px; }
#pitch-panel .pitch-desc { font-size:13px;line-height:1.7;color:var(--soft);margin-bottom:24px; }
#pitch-panel .pitch-field { margin-bottom:14px; }
#pitch-panel .pitch-field label { display:block;font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--soft);font-weight:700;margin-bottom:5px; }
#pitch-panel .pitch-field input,
#pitch-panel .pitch-field textarea { width:100%;border:1px solid var(--rule);padding:10px 12px;font-size:13px;font-family:'DM Sans',sans-serif;background:white;color:var(--ink);outline:none;transition:border-color 0.15s;resize:none; }
#pitch-panel .pitch-field input:focus,
#pitch-panel .pitch-field textarea:focus { border-color:var(--maroon); }
#pitch-panel .pitch-submit { width:100%;background:var(--maroon);color:white;border:none;padding:13px;font-size:11px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;font-family:'DM Sans',sans-serif;cursor:pointer;transition:background 0.15s; }
#pitch-panel .pitch-submit:hover { background:#5e1722; }
#pitch-panel .pitch-close { position:absolute;top:16px;right:16px;background:none;border:none;font-size:18px;color:var(--soft);cursor:pointer;line-height:1;padding:4px 8px; }
#pitch-panel .pitch-close:hover { color:var(--ink); }
#pitch-panel .pitch-success { display:none;text-align:center;padding:20px 0; }
#pitch-panel .pitch-success .ps-icon { font-size:32px;margin-bottom:12px; }
#pitch-panel .pitch-success .ps-title { font-family:'Playfair Display',serif;font-size:20px;font-weight:800;color:var(--ink);margin-bottom:8px; }
#pitch-panel .pitch-success .ps-desc { font-size:13px;color:var(--soft);line-height:1.6; }
#pitch-close-btn{position:fixed;right:64px;top:calc(50% - 60px);transform:translateY(-50%);z-index:9999;width:24px;height:24px;background:#1a1a1a;color:white;border:none;border-radius:50%;font-size:13px;line-height:24px;text-align:center;cursor:pointer;display:none;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,0.3);}@keyframes pitch-pulse2{0%,100%{box-shadow:-4px 0 20px rgba(122,31,46,0.6),0 0 0 1px #7a1f2e;}50%{box-shadow:-4px 0 32px rgba(122,31,46,0.85),0 0 0 1px #7a1f2e;}}#pitch-bug{animation:pitch-pulse2 3s ease-in-out infinite;}
