
/* ==========================================================================
   BHP single blog post - scoped to .bhpblog
   Tokens mirror the homepage exactly; type is Fraunces display + Geist body, the two faces
   the rest of the site uses. Outfit was the retired kit's body face (changed 2026-09-05).
   ========================================================================== */
.bhpblog{
  --navy:var(--bhp-navy,#171D3A); --deep:#112337; --gold:var(--bhp-gold,#FFB000); --cream:var(--bhp-cream,#F7F2E7);
  --slate:var(--bhp-slate,#374763); --white:#fff; --line:rgba(23,29,58,.12);
  --disp:var(--bhp-disp,"Fraunces",Georgia,serif);
  --body:var(--bhp-body,"Geist",-apple-system,Segoe UI,Roboto,sans-serif);
  --ease:cubic-bezier(.22,.61,.36,1);
  --wrap:1180px; --r:14px;
  font-family:var(--body);color:var(--navy);
}
.bhpblog *,.bhpblog *::before,.bhpblog *::after{box-sizing:border-box}
.bhpblog .wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* --- reading progress ---------------------------------------------------- */
.bhpblog-bar{position:fixed;top:0;left:0;height:3px;width:0;background:var(--gold);
  z-index:99999;transition:width .1s linear}

/* --- floating read progress: ring + percent, appears once you are reading --- */
.bhpblog-dial{position:fixed;left:26px;bottom:26px;z-index:9998;display:flex;align-items:center;
  gap:11px;background:rgba(23,29,58,.94);color:#fff;border-radius:999px;padding:9px 18px 9px 9px;
  box-shadow:0 14px 38px rgba(16,21,41,.34);opacity:0;transform:translateY(14px);
  pointer-events:none;transition:opacity .35s var(--ease),transform .35s var(--ease)}
.bhpblog-dial.on{opacity:1;transform:none}
.bhpblog-dial .ring{position:relative;width:34px;height:34px;border-radius:50%;
  background:conic-gradient(var(--gold) calc(var(--p,0)*1%),rgba(255,255,255,.18) 0)}
.bhpblog-dial .ring::after{content:"";position:absolute;inset:4px;border-radius:50%;
  background:#171D3A}
.bhpblog-dial .t{font-size:13px;font-weight:600;letter-spacing:.02em;white-space:nowrap}
.bhpblog-dial .t small{display:block;font-size:10.5px;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.55)}
@media (max-width:960px){.bhpblog-dial{left:16px;bottom:16px;padding:8px 15px 8px 8px}}
@media (prefers-reduced-motion:reduce){.bhpblog-dial{transition:none}}

/* --- breadcrumbs --------------------------------------------------------- */
/* the site header is taken out of flow (its wrapper measures 0px high), so the
   first band has to carry the clearance itself or it renders underneath it */
.bhpblog .crumbs{background:var(--cream);padding:122px 0 0}
@media (max-width:960px){.bhpblog .crumbs{padding-top:104px}}
.bhpblog .crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;
  gap:8px;font-size:13px;color:var(--slate)}
.bhpblog .crumbs a{color:var(--slate);text-decoration:none}
.bhpblog .crumbs a:hover{color:var(--navy)}
.bhpblog .crumbs li+li::before{content:"›";margin-right:8px;opacity:.55}

/* --- editorial header ---------------------------------------------------- */
.bhpblog .phead{background:var(--cream);padding:26px 0 96px}
.bhpblog .chip{display:inline-block;font-size:11.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--navy);background:rgba(255,176,0,.22);
  border:1px solid rgba(255,176,0,.5);padding:7px 14px;border-radius:999px;
  text-decoration:none;transition:background .3s var(--ease)}
.bhpblog .chip:hover{background:rgba(255,176,0,.36)}
.bhpblog h1{font-family:var(--disp);font-weight:600;font-size:clamp(2rem,4.6vw,3.2rem);
  line-height:1.1;letter-spacing:-.02em;margin:20px 0 0;max-width:30ch;text-wrap:balance}
.bhpblog h1 em{font-style:italic;color:var(--navy);
  box-shadow:inset 0 -.14em 0 rgba(255,176,0,.85)}
.bhpblog .dek{font-size:1.25rem;line-height:1.55;color:var(--slate);max-width:56ch;margin:18px 0 0}
/* "If you'd rather watch the video, click here" (client 2026-09-27), directly under the deck.
   A quiet gold pill, not a second CTA: it must not compete with the discovery-call button. */
.bhpblog .watchline{margin:16px 0 0}
.bhpblog .watchline a{display:inline-flex;align-items:center;gap:9px;min-height:44px;
  padding:9px 16px;border:1px solid var(--gold);border-radius:999px;background:rgba(255,176,0,.08);
  font-family:var(--body);font-size:15px;font-weight:500;line-height:1.3;color:var(--navy);
  text-decoration:none;transition:background .18s ease,transform .18s ease}
.bhpblog .watchline a:hover{background:rgba(255,176,0,.18);transform:translateY(-1px)}
.bhpblog .watchline .wl-ico{display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:var(--gold);color:var(--navy)}
@media (max-width:600px){.bhpblog .watchline a{width:100%;justify-content:flex-start}}
.bhpblog .meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px;
  font-size:14px;color:var(--slate)}
.bhpblog .meta .av{width:44px;height:44px;border-radius:50%;object-fit:cover;
  background:var(--navy);color:var(--gold);display:inline-flex;align-items:center;
  justify-content:center;font-weight:600;font-size:14px}
.bhpblog .meta a{color:var(--navy);font-weight:600;text-decoration:none;
  box-shadow:inset 0 -2px 0 var(--gold)}
.bhpblog .meta i{font-style:normal;opacity:.5}
.bhpblog .hair{height:1px;margin-top:26px;
  background:linear-gradient(90deg,rgba(255,176,0,.85),rgba(255,176,0,0))}

/* --- featured image straddling the cream/white boundary ------------------ */
.bhpblog .feat{margin:-72px auto 0;max-width:var(--wrap);padding:0 24px;position:relative;z-index:2}
.bhpblog .feat img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;
  border-radius:16px;box-shadow:0 24px 60px rgba(23,29,58,.18)}

/* --- two-track layout ---------------------------------------------------- */
.bhpblog .track{display:grid;grid-template-columns:320px minmax(0,1fr);gap:52px;
  align-items:start;padding:56px 0 8px}
.bhpblog .rail{position:sticky;top:110px;display:flex;flex-direction:column;gap:18px}

/* table of contents */
.bhpblog .toc{background:#fff;border:1px solid var(--line);border-radius:12px;
  padding:20px 20px 16px;box-shadow:0 10px 30px rgba(23,29,58,.06)}
.bhpblog .toc .lbl{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--slate);margin-bottom:12px}
.bhpblog .toc ol{list-style:none;margin:0;padding:0;max-height:52vh;overflow:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent)}
.bhpblog .toc ol::-webkit-scrollbar{display:none}
.bhpblog .toc li{margin:0}
.bhpblog .toc a{display:block;padding:7px 0 7px 13px;border-left:3px solid transparent;
  font-size:14px;line-height:1.4;color:var(--slate);text-decoration:none;
  transition:color .25s var(--ease),border-color .25s var(--ease)}
.bhpblog .toc a:hover{color:var(--navy)}
.bhpblog .toc a.on{border-left-color:var(--gold);color:var(--navy);font-weight:600}

/* --- the paired film, as a rail card (client 2026-09-28) --------------------
   It sits between the contents and the conversion card, so the reader meets the film while the
   article is still beside them. Same plate, radius and hairline as the other two rail blocks, so
   the rail reads as three of one thing rather than two cards and a link. */
.bhpblog .railvid{display:block;background:#fff;border:1px solid rgba(23,29,58,.1);
  border-radius:14px;padding:16px 16px 18px;text-decoration:none;box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease}
.bhpblog .railvid:hover{border-color:rgba(255,176,0,.55);
  box-shadow:0 14px 34px rgba(23,29,58,.09)}
.bhpblog .railvid .k{display:block;font-size:11.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.bhpblog .railvid .rv-shot{position:relative;display:block;border-radius:10px;overflow:hidden;
  background:#0B1220;aspect-ratio:16/9}
.bhpblog .railvid .rv-shot img{display:block;width:100%;height:100%;object-fit:cover}
.bhpblog .railvid .rv-play{position:absolute;inset:0;margin:auto;width:42px;height:42px;
  border-radius:50%;background:rgba(11,18,32,.55);border:2px solid var(--gold)}
.bhpblog .railvid .rv-play::after{content:"";position:absolute;left:53%;top:50%;
  transform:translate(-50%,-50%);border-left:12px solid var(--gold);
  border-top:7.5px solid transparent;border-bottom:7.5px solid transparent}
.bhpblog .railvid .rv-t{display:block;margin-top:12px;font-family:var(--disp);font-weight:600;
  font-size:15.5px;line-height:1.35;color:var(--navy)}

/* sticky conversion card in the rail */
.bhpblog .railcta{background:var(--deep);color:#fff;border-radius:12px;padding:24px 22px;
  box-shadow:0 18px 44px rgba(16,21,41,.24)}
.bhpblog .railcta .k{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);margin-bottom:10px}
.bhpblog .railcta p{font-family:var(--disp);font-size:1.12rem;line-height:1.35;margin:0 0 8px}
.bhpblog .railcta small{display:block;font-size:13.5px;line-height:1.55;
  color:rgba(255,255,255,.72);margin-bottom:16px}
/* the exact CTA wording is fixed by the brief, so the button has to fit it on
   one line rather than the wording being trimmed to fit the button */
.bhpblog .railcta a{display:block;text-align:center;background:var(--gold);color:var(--navy);
  font-weight:600;font-size:13.5px;letter-spacing:-.005em;white-space:nowrap;
  padding:14px 10px;border-radius:9px;text-decoration:none;
  transition:transform .25s var(--ease)}
.bhpblog .railcta a:hover{transform:translateY(-2px)}
.bhpblog .railcta .contact{margin-top:18px;padding-top:16px;
  border-top:1px solid rgba(255,255,255,.16);font-size:13.5px;line-height:1.6}
.bhpblog .railcta .contact a{display:block;text-align:left;background:none;color:#fff;
  padding:0;font-weight:600;font-size:14.5px;box-shadow:none;margin-bottom:6px}
.bhpblog .railcta .contact a:hover{transform:none;color:var(--gold)}
.bhpblog .railcta .contact address{font-style:normal;color:rgba(255,255,255,.66)}

/* mobile TOC pill */
.bhpblog .tocpill{display:none}

/* --- article body -------------------------------------------------------- */
.bhpblog .article{max-width:70ch;font-size:18.5px;line-height:1.7;color:var(--navy)}
.bhpblog .article p{margin:0 0 22px}
.bhpblog .article h2{font-family:var(--disp);font-weight:600;
  font-size:clamp(1.5rem,2.6vw,1.95rem);line-height:1.22;letter-spacing:-.015em;
  margin:46px 0 16px;scroll-margin-top:96px;position:relative;padding-top:16px}
.bhpblog .article h2::before{content:"";position:absolute;top:0;left:0;width:34px;height:3px;
  border-radius:2px;background:var(--gold)}
.bhpblog .article h3{font-family:var(--disp);font-weight:600;font-size:1.28rem;
  margin:32px 0 12px;scroll-margin-top:96px}
.bhpblog .article a{color:var(--navy);font-weight:600;text-decoration:underline;
  text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:3px;
  transition:color .25s var(--ease)}
.bhpblog .article a:hover{color:var(--gold)}
.bhpblog .article ul,.bhpblog .article ol{margin:0 0 22px;padding-left:22px}
.bhpblog .article li{margin-bottom:9px}
.bhpblog .article img{max-width:100%;height:auto;border-radius:12px}
.bhpblog .article blockquote{margin:30px 0;padding:4px 0 4px 22px;
  border-left:4px solid var(--gold);font-family:var(--disp);font-style:italic;
  font-size:1.22rem;line-height:1.5;color:var(--navy)}

/* drop cap: first paragraph only */
.bhpblog .article > p:first-of-type::first-letter{font-family:var(--disp);font-weight:600;
  font-size:3.4em;line-height:.82;float:left;margin:.06em .12em 0 0;color:var(--navy)}

/* 4.4 The Short Version */
.bhpblog .article .shortver{background:var(--cream);border-left:4px solid var(--gold);
  border-radius:0 var(--r) var(--r) 0;padding:24px 26px;margin:0 0 30px}
.bhpblog .article .shortver .lbl{font-family:var(--disp);font-style:italic;font-size:1.1rem;
  margin-bottom:12px}
.bhpblog .article .shortver ul{list-style:none;margin:0;padding:0}
.bhpblog .article .shortver li{position:relative;padding-left:20px;font-size:16.5px;
  line-height:1.6;margin-bottom:10px}
.bhpblog .article .shortver li::before{content:"";position:absolute;left:0;top:.62em;
  width:7px;height:7px;border-radius:50%;background:var(--gold)}

/* 4.5 pull quote */
.bhpblog .article .pullquote{text-align:center;font-family:var(--disp);font-style:italic;
  font-weight:500;font-size:clamp(1.5rem,3vw,2rem);line-height:1.35;margin:38px 0;
  padding:28px 0;border-top:2px solid var(--gold);border-bottom:2px solid var(--gold)}
.bhpblog .article .pullquote cite{display:block;margin-top:14px;font-family:var(--body);
  font-style:normal;font-size:12px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--slate)}

/* 4.6 stat strip - full bleed */
.bhpblog .statstrip{background:var(--deep);color:#fff;padding:44px 0;margin:44px 0}
.bhpblog .statstrip .g{max-width:var(--wrap);margin:0 auto;padding:0 24px;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:28px}
.bhpblog .statstrip .n{font-family:var(--disp);font-weight:600;color:var(--gold);
  font-size:clamp(1.9rem,3.4vw,2.3rem);line-height:1}
.bhpblog .statstrip .l{font-size:.9rem;line-height:1.5;color:rgba(255,255,255,.8);margin-top:8px}
.bhpblog .statstrip .src{font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.5);margin-top:8px}

/* 4.7 honest note */
.bhpblog .article .honest{background:#fdf9ef;border:1px solid rgba(255,176,0,.45);
  border-left:4px solid var(--navy);border-radius:var(--r);padding:22px 24px;margin:0 0 28px}
.bhpblog .article .honest .lbl{font-family:var(--disp);font-style:italic;font-size:1.05rem;
  margin-bottom:8px}

/* 4.8 styled ordered list */
.bhpblog .article ol.steps{list-style:none;counter-reset:s;padding:0;margin:0 0 28px}
.bhpblog .article ol.steps li{counter-increment:s;position:relative;padding-left:52px;
  margin-bottom:18px}
.bhpblog .article ol.steps li::before{content:counter(s);position:absolute;left:0;top:-.12em;
  font-family:var(--disp);font-weight:600;font-size:2rem;line-height:1;color:var(--gold)}
.bhpblog .article ol.steps b{display:block;margin-bottom:2px}

/* 4.9 checklist */
.bhpblog .article ul.check{list-style:none;padding:0;margin:0 0 28px}
.bhpblog .article ul.check li{position:relative;padding-left:34px;margin-bottom:12px}
.bhpblog .article ul.check li::before{content:"";position:absolute;left:0;top:.18em;width:20px;
  height:20px;border-radius:50%;background:var(--gold)}
.bhpblog .article ul.check li::after{content:"";position:absolute;left:6px;top:.42em;width:7px;
  height:4px;border-left:2px solid var(--navy);border-bottom:2px solid var(--navy);
  transform:rotate(-45deg)}

/* 4.10 data table
   Every rule here used to carry `.data`. The client's imported guide and blog copy emits a
   bare <table>, so on ten pages the tables fell through to the browser default: separated
   borders, a doubled grey seam at every cell edge and no brand colour anywhere. That is the
   "borders are not proper" the client reported (2026-09-29, image 504). The styling belongs
   to a table in the article body, not to a class the content does not carry, so the selector
   is now the element and `.data` is kept only as an alias for the ones that do have it. */
.bhpblog .article .tablewrap{overflow-x:auto;margin:0 0 28px}
.bhpblog .article table{width:100%;border-collapse:collapse;font-size:16px;margin:0 0 28px;
  border:1px solid var(--line)}
.bhpblog .article table.data{min-width:520px}
.bhpblog .article table caption{font-family:var(--disp);font-size:1.05rem;text-align:left;
  margin-bottom:10px}
.bhpblog .article table th{background:var(--navy);color:#fff;text-align:left;
  padding:13px 14px;font-weight:600;border-bottom:3px solid var(--gold);border-right:0}
.bhpblog .article table th strong{font-weight:600}
.bhpblog .article table td{padding:12px 14px;border:0;border-bottom:1px solid var(--line)}
.bhpblog .article table tbody tr:last-child td{border-bottom:0}
.bhpblog .article table tbody tr:nth-child(odd){background:#fbf9f4}
.bhpblog .article table td:first-child{font-weight:600}
/* a bare table has no wrapper, so it carries its own horizontal scroll at phone width */
@media (max-width:560px){.bhpblog .article table{display:block;overflow-x:auto}}

/* 4.11 figure */
.bhpblog .article figure.fig{margin:0 0 28px;background:var(--cream);border:1px solid var(--line);
  border-radius:12px;padding:18px}
.bhpblog .article figure.fig figcaption{font-size:.88rem;color:var(--slate);margin-top:12px}

/* 4.12 video pairing card */
.bhpblog .article .pairing{display:flex;align-items:center;gap:18px;background:var(--cream);
  border-radius:var(--r);padding:20px 22px;margin:0 0 30px;text-decoration:none}
.bhpblog .article .pairing .play{flex:0 0 52px;width:52px;height:52px;border-radius:50%;
  background:var(--navy);display:flex;align-items:center;justify-content:center}
.bhpblog .article .pairing .play svg{width:17px;height:17px;fill:var(--gold)}
.bhpblog .article .pairing .k{font-size:11px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--slate)}
.bhpblog .article .pairing b{display:block;font-family:var(--disp);font-size:1.1rem;margin:3px 0}
.bhpblog .article .pairing small{color:var(--slate);font-size:13.5px}

/* 4.13 inline CTA band */
.bhpblog .article .cta-inline{background:var(--navy);border-radius:12px;padding:26px 28px;
  margin:34px 0;color:#fff}
.bhpblog .article .cta-inline p{font-family:var(--disp);font-size:1.25rem;line-height:1.35;
  margin:0 0 6px}
.bhpblog .article .cta-inline small{display:block;color:rgba(255,255,255,.72);font-size:14px;
  margin-bottom:16px}
.bhpblog .article .cta-inline a{display:inline-block;background:var(--gold);color:var(--navy);
  font-weight:600;padding:13px 24px;border-radius:9px;text-decoration:none}

/* 4.14 FAQ - same single-open pattern as the homepage */
.bhpblog .article details{border:1px solid var(--line);border-radius:12px;padding:0 20px;
  margin-bottom:12px;background:#fff}
.bhpblog .article summary{list-style:none;cursor:pointer;display:flex;align-items:center;
  justify-content:space-between;gap:16px;padding:18px 0;font-weight:600;font-size:17px}
.bhpblog .article summary::-webkit-details-marker{display:none}
.bhpblog .article summary::after{content:"+";font-family:var(--disp);font-size:1.5rem;
  color:var(--gold);line-height:1;transition:transform .3s var(--ease)}
.bhpblog .article details[open] summary::after{transform:rotate(45deg)}
.bhpblog .article details > div{overflow:hidden;transition:height .38s var(--ease)}
.bhpblog .article details > div p{padding-bottom:18px;margin:0;color:var(--slate);font-size:16.5px}
@media (prefers-reduced-motion:reduce){.bhpblog .article details > div{transition:none}}

/* --- share row ----------------------------------------------------------- */
.bhpblog .share{display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  max-width:70ch;margin:44px 0 0;padding-top:26px;border-top:1px solid var(--line)}
.bhpblog .share .lbl{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--slate)}
.bhpblog .share button,.bhpblog .share a.sh{width:44px;height:44px;border-radius:50%;
  border:1px solid var(--line);background:#fff;display:inline-flex;align-items:center;
  justify-content:center;cursor:pointer;transition:.25s var(--ease);padding:0}
.bhpblog .share button:hover,.bhpblog .share a.sh:hover{border-color:var(--gold);
  background:rgba(255,176,0,.1)}
.bhpblog .share svg{width:17px;height:17px;fill:var(--slate)}
.bhpblog .share .copied{font-size:13px;color:var(--slate);opacity:0;transition:opacity .3s}
.bhpblog .share .copied.on{opacity:1}

/* --- author box ---------------------------------------------------------- */
.bhpblog .author{position:relative;display:flex;gap:26px;align-items:flex-start;
  background:var(--cream);border-radius:var(--r);padding:34px 34px 30px;max-width:70ch;
  margin:40px 0 0;overflow:hidden}
.bhpblog .author::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:var(--gold)}
.bhpblog .author .ph{flex:0 0 96px;width:96px;height:96px;border-radius:50%;object-fit:cover;
  object-position:50% 22%;box-shadow:0 10px 26px rgba(23,29,58,.18)}
.bhpblog .author .k{font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--slate);margin-bottom:8px}
.bhpblog .author b{display:block;font-family:var(--disp);font-weight:600;font-size:1.35rem;
  line-height:1.25;margin-bottom:4px}
.bhpblog .author .role{display:block;font-size:14px;color:var(--slate);margin-bottom:12px}
.bhpblog .author p{font-size:15.5px;line-height:1.65;color:var(--slate);margin:0 0 14px}
.bhpblog .author a{display:inline-block;color:var(--navy);font-weight:600;text-decoration:none;
  box-shadow:inset 0 -2px 0 var(--gold)}
/* The name is a link now (client 2026-09-28: "link his name also to his page"), but it is still a
   name: it keeps the display face and takes the gold rule only on hover, so the box does not read
   as having two buttons in it. */
.bhpblog .author b a{display:inline;color:inherit;font:inherit;box-shadow:none}
.bhpblog .author b a:hover{box-shadow:inset 0 -2px 0 var(--gold)}
.bhpblog .author .dates{font-size:12.5px;color:var(--slate);margin-top:14px;padding-top:12px;
  border-top:1px solid rgba(23,29,58,.1)}

/* --- related reading ----------------------------------------------------- */
.bhpblog .related{background:var(--cream);padding:64px 0;margin-top:64px}
.bhpblog .related h2{font-family:var(--disp);font-weight:600;font-size:clamp(1.6rem,2.8vw,2.1rem);
  margin:0 0 26px}
.bhpblog .rp{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.bhpblog .rp a{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--navy);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhpblog .rp a:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(23,29,58,.12)}
.bhpblog .rp .th{aspect-ratio:16/9;position:relative;overflow:hidden;
  background:linear-gradient(150deg,#26305C,var(--navy))}
.bhpblog .rp .th::after{content:'';position:absolute;left:22px;bottom:20px;width:34px;height:3px;
  border-radius:2px;background:var(--gold);opacity:.85}
.bhpblog .rp .th img{position:relative;z-index:1}
.bhpblog .rp .th img{width:100%;height:100%;object-fit:cover;display:block}
.bhpblog .rp .in{padding:18px 20px 22px}
.bhpblog .rp .in{display:flex;flex-direction:column}
.bhpblog .rp .k{display:block;font-size:11px;font-weight:600;letter-spacing:.15em;
  text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.bhpblog .rp b{display:block;font-size:16.5px;line-height:1.35;font-weight:600}
.bhpblog .seeall{display:inline-block;margin-top:26px;font-weight:600;color:var(--navy);
  text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold)}

/* --- final CTA ----------------------------------------------------------- */
/* identical to the homepage final section: same gradient, same pill button */
.bhpblog .final{background:linear-gradient(160deg,#171D3A 0%,#141F3B 45%,#112337 100%);color:#fff;
  padding:128px 0;text-align:center}
.bhpblog .final .k{font-size:11.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);margin-bottom:16px}
.bhpblog .final h2{font-family:var(--disp);font-weight:600;font-size:clamp(32px,4.4vw,56px);
  line-height:1.15;margin:0 auto 16px;max-width:20ch}
.bhpblog .final h2 em{font-style:italic;box-shadow:inset 0 -.14em 0 rgba(255,176,0,.85)}
.bhpblog .final p{color:rgba(255,255,255,.76);max-width:60ch;margin:0 auto 28px;font-size:17px}
.bhpblog .final a{display:inline-flex;align-items:center;gap:10px;background:var(--gold);
  color:var(--navy);font-weight:600;font-size:16.5px;padding:20px 40px;border-radius:999px;
  text-decoration:none;box-shadow:0 18px 46px rgba(255,176,0,.34);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.bhpblog .final a:hover{transform:translateY(-3px);box-shadow:0 26px 66px rgba(255,176,0,.44)}
.bhpblog .final a svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;
  stroke-linecap:round;stroke-linejoin:round}

/* --- responsive ---------------------------------------------------------- */
@media (max-width:960px){
  .bhpblog .track{grid-template-columns:1fr;gap:0;padding-top:40px}
  .bhpblog .rail{position:static;flex-direction:column-reverse;gap:16px;margin-bottom:26px}
  .bhpblog .toc{display:none}
  .bhpblog .tocpill{display:block;position:sticky;top:88px;z-index:30}
  .bhpblog .tocpill button{width:100%;display:flex;align-items:center;justify-content:space-between;
    background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 18px;
    font-weight:600;font-size:15px;cursor:pointer;color:var(--navy)}
  .bhpblog .tocpill .panel{display:none;background:#fff;border:1px solid var(--line);
    border-top:0;border-radius:0 0 10px 10px;padding:10px 18px 16px;max-height:50vh;overflow:auto}
  .bhpblog .tocpill.open .panel{display:block}
  .bhpblog .tocpill .panel a{display:block;padding:9px 0;font-size:15px;color:var(--slate);
    text-decoration:none;border-bottom:1px solid var(--line)}
  .bhpblog .article{max-width:none;font-size:18px}
  .bhpblog .feat{margin-top:-52px}
  .bhpblog .feat img{aspect-ratio:16/10;border-radius:12px}
  .bhpblog .rp{grid-template-columns:1fr}
  .bhpblog .author{flex-direction:column}
}
@media (max-width:600px){
  .bhpblog .statstrip .g{grid-template-columns:1fr 1fr}
  .bhpblog .phead{padding-bottom:80px}
}

/* ==========================================================================
   HUBS - /blog/ and /video/ archive design, scoped .bhphub
   ========================================================================== */
.bhphub{--navy:var(--bhp-navy,#171D3A);--deep:#112337;--gold:var(--bhp-gold,#FFB000);--cream:var(--bhp-cream,#F7F2E7);--slate:var(--bhp-slate,#374763);
  --line:rgba(23,29,58,.12);--disp:var(--bhp-disp,"Fraunces",Georgia,serif);
  --body:var(--bhp-body,"Geist",-apple-system,Segoe UI,Roboto,sans-serif);
  --ease:cubic-bezier(.22,.61,.36,1);font-family:var(--body);color:var(--navy)}
.bhphub *,.bhphub *::before,.bhphub *::after{box-sizing:border-box}
.bhphub .wrap{max-width:1180px;margin:0 auto;padding:0 24px}

.bhphub .hhero{background:linear-gradient(160deg,#171D3A 0%,#141F3B 45%,#112337 100%);color:#fff;
  padding:140px 0 64px}
.bhphub .hcrumbs{display:flex;align-items:center;gap:10px;font-size:13px;
  color:rgba(255,255,255,.6);margin:0 0 30px}
.bhphub .hcrumbs a{color:rgba(255,255,255,.7);text-decoration:none}
.bhphub .hcrumbs a:hover{color:var(--gold)}
.bhphub .hcrumbs b{font-weight:500;color:rgba(255,255,255,.85)}
.bhphub .eyebrow{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.72);margin:0 0 22px}
.bhphub .eyebrow i{display:block;width:30px;height:2px;background:var(--gold)}
/* The display face, not the body face. This H1 was set in Geist while its own accent was in Fraunces
   italic, so the two halves of one headline were in two different typefaces: measured 50px Geist on
   /blog/, /guide/ and /video/, against Fraunces everywhere else on the site including every article
   page under these three hubs. The brand ruling is Fraunces for display and headings. */
.bhphub h1{font-family:var(--disp);font-weight:600;letter-spacing:-.028em;color:#fff;
  font-size:clamp(32px,4.4vw,52px);line-height:1.06;margin:0 0 20px;max-width:24ch}
.bhphub h1 em{font-family:var(--disp);font-style:italic;color:var(--gold)}
.bhphub .lead{font-size:18px;line-height:1.7;color:rgba(255,255,255,.78);max-width:70ch;margin:0 0 22px}
.bhphub .liblink{display:inline-block;font-weight:600;color:var(--gold);text-decoration:none;
  box-shadow:inset 0 -2px 0 rgba(255,176,0,.5);transition:.25s var(--ease)}
.bhphub .liblink:hover{color:#fff}

.bhphub .loadwrap{display:flex;justify-content:center;align-items:center;gap:14px;margin:44px 0 8px}
/* fully self-styled: theme/kit button colors must never leak in */
.bhphub .loadmore{display:inline-flex;align-items:center;gap:10px;border:0;cursor:pointer;
  font:inherit;font-size:15.5px;font-weight:600;color:var(--navy,#171D3A)!important;
  background:var(--gold,#FFB000)!important;padding:16px 34px;border-radius:999px;
  box-shadow:0 14px 34px rgba(255,176,0,.3);transition:transform .25s var(--ease),box-shadow .25s}
.bhphub .loadmore:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(255,176,0,.4);
  color:var(--navy,#171D3A)!important;background:var(--gold,#FFB000)!important}
.bhphub .loadmore[disabled]{opacity:.6;cursor:progress;transform:none}
.bhphub .loadspin{width:22px;height:22px;border-radius:50%;border:3px solid var(--line);
  border-top-color:var(--gold);animation:bhpspin .7s linear infinite}
@keyframes bhpspin{to{transform:rotate(360deg)}}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bhphub .fbar{position:static;z-index:1;background:#fff;
  box-shadow:0 1px 0 var(--line),0 10px 30px rgba(23,29,58,.05)}
.bhphub .fin{display:flex;align-items:center;justify-content:space-between;gap:20px}
.bhphub .tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:0}
.bhphub .tabs::-webkit-scrollbar{display:none}
.bhphub .tabs a{flex:0 0 auto;padding:17px 14px 15px;font-size:14px;font-weight:600;
  color:var(--slate);text-decoration:none;border-bottom:2px solid transparent;
  transition:color .25s var(--ease)}
.bhphub .tabs a:hover{color:var(--navy)}
.bhphub .tabs a.on{color:var(--navy);border-bottom-color:var(--gold)}

/* ---- the service filter, 2026-09-24 ----
   The bar used to hold three links to the other two libraries. It filters this library by service
   now (client 2026-09-23), which means up to twelve items rather than three, so it wraps instead of
   running off the right edge, and each count is a pill set off from its label rather than a number
   jammed against the last letter of it. Both measured at 1440: twelve services overflowed the wrap
   by 180px and read "Branding2". */
.bhphub .tabs.svctabs{flex-wrap:wrap;gap:2px 4px;overflow-x:visible}
.bhphub .tabs.svctabs a{display:inline-flex;align-items:center;gap:7px;padding:14px 12px 12px}
.bhphub .svcn{display:inline-flex;align-items:center;justify-content:center;
  min-width:20px;height:20px;padding:0 6px;border-radius:999px;
  background:rgba(23,29,58,.07);color:rgba(23,29,58,.62);
  font:600 11px/1 Geist,system-ui,sans-serif;letter-spacing:.02em}
.bhphub .tabs.svctabs a.on .svcn{background:rgba(255,176,0,.22);color:var(--navy)}
/* A tab is a button now, so it has to shed the browser's button chrome and keep the tab's look. */
.bhphub .tabs.svctabs button{appearance:none;background:none;border:0;cursor:pointer;
  font:inherit;color:rgba(23,29,58,.62);border-bottom:2px solid transparent;
  font-size:14px;font-weight:600;transition:color .18s ease,border-color .18s ease}
.bhphub .tabs.svctabs button:hover{color:var(--navy)}
.bhphub .tabs.svctabs button.on{color:var(--navy);border-bottom-color:var(--gold)}
.bhphub .tabs.svctabs button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
/* inside a filter the featured card is just the newest of that service */
.bhphub .fcard.as-card{grid-template-columns:1fr}
.bhphub [hidden]{display:none!important}

@media (max-width:700px){
  .bhphub .tabs.svctabs{flex-wrap:nowrap;overflow-x:auto}
}
.bhphub .libgold{flex:0 0 auto;font-size:14px;font-weight:600;color:var(--navy);
  text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold)}

.bhphub .feat-band{background:var(--cream);padding:56px 0}
.bhphub .fcard{display:grid;grid-template-columns:1.05fr .95fr;gap:0;background:#fff;
  border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;
  color:var(--navy);transition:.3s var(--ease);box-shadow:0 20px 50px rgba(23,29,58,.08)}
.bhphub .fcard:hover{transform:translateY(-3px);box-shadow:0 26px 60px rgba(23,29,58,.14)}
.bhphub .fth{display:block;min-height:320px;background:var(--deep)}
.bhphub .fth img{width:100%;height:100%;object-fit:cover;display:block}
.bhphub .fin2{display:flex;flex-direction:column;padding:38px 40px;gap:12px}
.bhphub .chip2{align-self:flex-start;font-size:10.5px;font-weight:600;letter-spacing:.15em;
  text-transform:uppercase;color:var(--navy);background:rgba(255,176,0,.22);
  border:1px solid rgba(255,176,0,.5);padding:5px 12px;border-radius:999px}
.bhphub .fcard b{font-family:var(--disp);font-weight:600;font-size:clamp(22px,2.4vw,30px);
  line-height:1.22;letter-spacing:-.01em}
.bhphub .fex{font-size:16px;line-height:1.65;color:var(--slate)}
.bhphub .fmeta{font-size:13px;color:var(--slate)}
.bhphub .fread{font-weight:600;color:var(--navy);box-shadow:inset 0 -2px 0 var(--gold);
  align-self:flex-start;margin-top:auto}

.bhphub .grid-band{background:#fff;padding:64px 0 72px}
.bhphub .grid-band.vband{background:var(--cream)}
.bhphub .hgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.bhphub .hcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
  border-radius:14px;overflow:hidden;text-decoration:none;color:var(--navy);position:relative;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhphub .hcard::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.bhphub .hcard:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(23,29,58,.12)}
.bhphub .hcard:hover::after{transform:scaleX(1)}
.bhphub .hth{display:block;position:relative;aspect-ratio:16/9;background:var(--deep);overflow:hidden}
.bhphub .hth img{width:100%;height:100%;object-fit:cover;display:block}
.bhphub .hin{display:flex;flex-direction:column;gap:10px;padding:20px 22px 24px;flex:1}
.bhphub .hcard b{font-family:var(--disp);font-weight:600;font-size:17.5px;line-height:1.3}
.bhphub .hex{font-size:14.5px;line-height:1.6;color:var(--slate)}
.bhphub .hin .fmeta{margin-top:auto}
.bhphub .pb2{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;
  height:43px;border-radius:10px;background:#FF0033;display:flex;align-items:center;
  justify-content:center;box-shadow:0 8px 22px rgba(8,14,32,.35)}
.bhphub .pb2 svg{width:18px;height:18px;fill:#fff;margin-left:2px}
.bhphub .dur2{position:absolute;right:12px;bottom:12px;background:rgba(9,13,28,.82);color:#fff;
  font-size:12px;padding:4px 9px;border-radius:6px}

.bhphub .hpag{display:flex;gap:8px;justify-content:center;margin-top:48px;flex-wrap:wrap}
.bhphub .hpag .page-numbers{display:inline-flex;align-items:center;min-width:42px;height:42px;
  padding:0 14px;justify-content:center;border:1px solid var(--line);border-radius:9px;
  font-size:14.5px;font-weight:600;color:var(--navy);text-decoration:none;
  transition:.25s var(--ease)}
.bhphub .hpag .page-numbers:hover{border-color:var(--gold)}
.bhphub .hpag .page-numbers.current{background:var(--gold);border-color:var(--gold);color:var(--navy)}

@media (max-width:1000px){
  .bhphub .hgrid{grid-template-columns:1fr 1fr}
  .bhphub .fcard{grid-template-columns:1fr}
  .bhphub .fth{min-height:220px}

}
@media (max-width:640px){
  .bhphub .hgrid{grid-template-columns:1fr}
  .bhphub .hhero{padding:120px 0 52px}
  .bhphub .fin2{padding:26px 24px}
}

/* ==========================================================================
   PILLAR PAGES - scoped .bhppil, built on the v10 tokens and rhythm.
   Sections use the homepage's exact backgrounds: white / cream / the dark
   gradient. Prose keeps a 76ch measure on the homepage's left spine.
   ========================================================================== */
.bhppil{--navy:var(--bhp-navy,#171D3A);--deep:#112337;--gold:var(--bhp-gold,#FFB000);--cream:var(--bhp-cream,#F7F2E7);--slate:var(--bhp-slate,#374763);
  --line:rgba(23,29,58,.12);--disp:var(--bhp-disp,"Fraunces",Georgia,serif);
  --body:var(--bhp-body,"Geist",-apple-system,Segoe UI,Roboto,sans-serif);
  --ease:cubic-bezier(.22,.61,.36,1);font-family:var(--body);color:var(--navy)}
.bhppil *,.bhppil *::before,.bhppil *::after{box-sizing:border-box}
.bhppil .wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.bhppil section{padding:96px 0}
.bhppil .bg-white{background:#fff}
.bhppil .bg-cream{background:var(--cream)}
.bhppil .bg-dark{background:linear-gradient(160deg,#171D3A 0%,#141F3B 45%,#112337 100%);color:#fff}
.bhppil .bg-deep{background:linear-gradient(160deg,#232B4A 0%,#0E1428 100%);color:#fff}

.bhppil .eyebrow{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:var(--slate);margin:0 0 24px}
.bhppil .eyebrow i{display:block;width:30px;height:2px;background:var(--gold)}
.bhppil .bg-dark .eyebrow,.bhppil .bg-deep .eyebrow{color:rgba(255,255,255,.72)}
.bhppil h2{font-family:var(--body);font-weight:600;letter-spacing:-.02em;
  font-size:clamp(30px,3.8vw,46px);line-height:1.12;margin:0 0 22px;max-width:26ch;
  text-wrap:balance}
.bhppil h2 em{font-family:var(--disp);font-style:italic;color:var(--gold)}
.bhppil .bg-white h2 em,.bhppil .bg-cream h2 em{color:var(--navy);
  box-shadow:inset 0 -.13em 0 rgba(255,176,0,.85)}
/* dark sub-panels inside light sections keep the gold accent (never navy-on-navy) */
.bhppil .duo .d-navy h2 em,.bhppil .qfeat h2 em,.bhppil .qfeat em,
.bhppil .bg-white .d-navy h2 em,.bhppil .bg-cream .d-navy h2 em{
  color:var(--gold);box-shadow:none}
.bhppil h3{font-family:var(--body);font-weight:600;font-size:22px;letter-spacing:-.015em;margin:0 0 10px}
.bhppil p{font-size:17.5px;line-height:1.7;margin:0 0 18px;max-width:76ch}
.bhppil .bg-dark p,.bhppil .bg-deep p{color:rgba(255,255,255,.78)}
.bhppil a{color:inherit}

/* hero */
.bhppil .phero{background:linear-gradient(160deg,#171D3A 0%,#141F3B 45%,#112337 100%);color:#fff;
  padding:150px 0 84px}
.bhppil .phero h1{font-family:var(--body);font-weight:600;letter-spacing:-.025em;
  font-size:clamp(34px,4.6vw,58px);line-height:1.08;margin:0 0 26px;max-width:22ch;
  text-wrap:balance}
.bhppil .phero h1 em{font-family:var(--disp);font-style:italic;color:var(--gold)}
.bhppil .phero .lead{font-size:18.5px;line-height:1.7;color:rgba(255,255,255,.8);max-width:72ch}
.bhppil .cta-row{display:flex;gap:14px;flex-wrap:wrap;margin:34px 0 0}
.bhppil .cta-row .pri{display:inline-flex;align-items:center;gap:10px;background:var(--gold);
  color:var(--navy);font-weight:600;font-size:16px;padding:18px 34px;border-radius:999px;
  text-decoration:none;box-shadow:0 18px 46px rgba(255,176,0,.3);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.bhppil .cta-row .pri:hover{transform:translateY(-3px);box-shadow:0 26px 66px rgba(255,176,0,.4)}
.bhppil .cta-row .sec2{display:inline-flex;align-items:center;gap:10px;background:transparent;
  color:#fff;font-weight:600;font-size:16px;padding:18px 34px;border-radius:999px;
  border:1px solid rgba(255,255,255,.34);text-decoration:none;transition:.25s var(--ease)}
.bhppil .cta-row .sec2:hover{border-color:var(--gold);color:var(--gold)}
.bhppil .trust{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:40px 0 0;padding:34px 0 0;
  border-top:1px solid rgba(255,255,255,.12)}
.bhppil .trust li{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.8);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  padding:9px 15px;border-radius:999px;white-space:nowrap}
.bhppil .trust li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold)}
.bhppil .trust li.has-ic::before,.bhppil .trust li.seal::before,
.bhpv10 ul.trust li.seal::before,.v10-fintrust li.seal::before{display:none}
.bhppil .trust li svg{width:17px;height:17px;color:var(--gold);flex:0 0 auto}
/* the same strip inside the v10 (homepage) system: identical look */
.bhpv10 ul.trust{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:40px 0 0;
  padding:34px 0 0;border-top:1px solid rgba(255,255,255,.12)}
.bhpv10 ul.trust li{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.8);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  padding:9px 15px;border-radius:999px;white-space:nowrap}
.bhpv10 ul.trust li svg{width:17px;height:17px;color:var(--gold);flex:0 0 auto}

/* final CTA band: consistent rhythm on every page (Aug 22) */
.bhpv10 .v10-final{padding:96px 0}
.bhpv10 .v10-final .v10-wrap{max-width:760px;text-align:center}
.bhpv10 .v10-final .v10-eyebrow{justify-content:center;margin-bottom:18px}
.bhpv10 .v10-final h2{margin:0 0 18px}
.bhpv10 .v10-final>div>p,.bhpv10 .v10-final .v10-wrap>p{max-width:60ch;margin:0 auto 34px}
.bhpv10 .v10-final .v10-cta{margin-top:0}
.bhpv10 .v10-final .v10-support{margin:26px auto 0;font-size:15px;max-width:52ch;line-height:1.65}
.bhpv10 .v10-fintrust{margin-top:34px}

/* the author band wrapper used by the final-CTA widget (same component) */
.bhppil.authband{background:var(--cream);padding:56px 0}
.bhppil.authband .eyebrow{color:var(--gold);margin-bottom:22px}
.bhppil.authband .eyebrow i{background:var(--gold)}
.bhppil .authgrid.one{grid-template-columns:1fr;max-width:900px}
.bhppil .authgrid.one .authcard{align-items:center}
/* h2 that keeps the h3 look (used above videos so the heading map stays h1->h2) */
.bhppil .prose .h3s,.bhppil .h3s{font-size:24px;line-height:1.3;margin:0 0 14px;max-width:none}
/* on-this-page jump bar: slim sticky section nav for long service pages */
.bhppil .jumpbar{position:sticky;top:92px;z-index:30;display:flex;align-items:center;gap:16px;
  background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border:1px solid var(--line);
  border-radius:999px;padding:9px 10px 9px 22px;margin:0 auto;max-width:1240px;
  box-shadow:0 12px 34px rgba(23,29,58,.10)}
.bhppil .jumpbar .jl{flex:0 0 auto;font-size:10.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--slate)}
.bhppil .jumpbar .jps{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px}
.bhppil .jumpbar .jps::-webkit-scrollbar{display:none}
.bhppil .jumpbar a{flex:0 0 auto;font-size:13px;font-weight:600;color:var(--navy);
  text-decoration:none;padding:8px 15px;border-radius:999px;white-space:nowrap;
  transition:.2s var(--ease)}
.bhppil .jumpbar a:hover{background:rgba(255,176,0,.16)}
.bhppil .jumpbar a.on{background:var(--navy);color:#fff}
@media (max-width:700px){.bhppil .jumpbar{border-radius:14px;top:78px;padding-left:14px}
  .bhppil .jumpbar .jl{display:none}}
/* LAW: no orphan words on their own line. pretty = last-line protection */
.bhppil p,.bhpv10 p,.bhpblog p,.bhpvid p,.bhphub p,
.bhppil .lead,.bhpv10 .v10-support,.bhppil h3,.bhpv10 h3{text-wrap:pretty}
/* ===== consulting redesign components (Satyam's mockups, Aug 23) ===== */
.bhppil .roadcard{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);
  border-radius:20px;padding:34px 36px;backdrop-filter:blur(6px);min-width:300px}
.bhppil .roadcard .rk{display:block;font-size:11.5px;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.bhppil .roadcard ol{list-style:none;margin:0;padding:0}
.bhppil .roadcard li{display:flex;align-items:center;gap:22px;padding:17px 2px;
  border-bottom:1px solid rgba(255,255,255,.12);font-size:19px;font-weight:600;color:#fff}
.bhppil .roadcard li:last-child{border-bottom:0}
.bhppil .roadcard li i{font-family:var(--disp);font-style:italic;font-weight:500;
  font-size:19px;color:var(--gold);font-variant-numeric:tabular-nums}
.bhppil .fork{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;margin:38px 0 0;
  border-top:1px solid var(--line);padding-top:40px;position:relative;max-width:none}
.bhppil .fork::before{content:"";position:absolute;left:50%;top:40px;bottom:6px;width:2px;
  background:linear-gradient(var(--gold),rgba(255,176,0,.15))}
.bhppil .fork .num{font-family:var(--disp);font-style:italic;font-weight:500;font-size:42px;
  color:var(--gold);line-height:1;margin:0 0 14px}
.bhppil .fork h3{font-size:22px;margin:0 0 14px}
.bhppil .fork p{max-width:none;font-size:16px}
@media (max-width:860px){.bhppil .fork{grid-template-columns:1fr;gap:36px}
  .bhppil .fork::before{display:none}}
.bhppil .msplit{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:start;max-width:none}
.bhppil .msplit .mrail h2{margin-bottom:26px}
.bhppil .loopcard{background:linear-gradient(160deg,#232B4A 0%,#0E1428 100%);border-radius:18px;
  padding:30px 32px 22px}
.bhppil .loopcard .rk{display:block;font-size:11.5px;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.bhppil .loopcard ul{list-style:none;margin:0;padding:0}
.bhppil .loopcard li{display:flex;align-items:center;gap:14px;padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.12);color:#fff;font-size:15.5px;font-weight:500}
.bhppil .loopcard li:last-child{border-bottom:0}
.bhppil .loopcard li::before{content:"\2192";color:var(--gold);font-weight:700}
.bhppil .msplit .mprose p{max-width:none}
@media (max-width:900px){.bhppil .msplit{grid-template-columns:1fr;gap:34px}}
.bhppil .sgrid.ruled{gap:0;border-top:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);padding:34px 0}
.bhppil .sgrid.ruled .scard{background:none;border:0;border-radius:0;box-shadow:none;
  padding:6px 34px;border-left:1px solid rgba(255,255,255,.16)}
.bhppil .sgrid.ruled .scard:first-child{border-left:0;padding-left:0}
.bhppil .sgrid.ruled .scard::before{display:none}
.bhppil .sgrid.ruled .scard:hover{transform:none}
.bhppil .sgrid.ruled .scard .big{font-size:clamp(34px,3.4vw,52px);font-family:var(--body);
  font-weight:700;letter-spacing:-.02em;min-height:0;display:block;margin-bottom:12px}
@media (max-width:860px){.bhppil .sgrid.ruled{grid-template-columns:1fr 1fr}
  .bhppil .sgrid.ruled .scard{border-left:0;padding:14px 6px}}
.bhppil .zsplit{display:grid;grid-template-columns:6fr 6fr;gap:64px;align-items:center;max-width:none}
.bhppil .zcards{display:grid;gap:22px}
.bhppil .zcard{display:flex;align-items:center;justify-content:space-between;gap:20px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:16px;
  padding:26px 30px;text-decoration:none;transition:.25s var(--ease)}
.bhppil .zcard:hover{transform:translateY(-3px);border-color:rgba(255,176,0,.5);
  background:rgba(255,255,255,.08)}
.bhppil .prose a.zcard,.bhppil .prose a.zcard b{text-decoration:none;box-shadow:none}
.bhppil .zcard .zk{display:block;font-size:11px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.bhppil .zcard b{font-size:19px;color:#fff;line-height:1.35}
.bhppil .zcard .za{flex:0 0 auto;color:var(--gold);font-size:20px}
@media (max-width:900px){.bhppil .zsplit{grid-template-columns:1fr;gap:34px}}
.bhppil .qcenter h2{text-align:center;margin-left:auto;margin-right:auto}
.bhppil .qcenter .eyebrow{justify-content:center}
.bhppil .qfeat p{font-family:var(--disp);font-style:italic;font-size:19px;line-height:1.75}
.bhppil .qmini::before{display:none}
.bhppil .qmini{padding:28px 32px}
.bhppil .qmini .qm{display:block;font-family:var(--disp);font-size:34px;line-height:.6;
  color:var(--gold);margin-bottom:14px}
/* LAW: long copy never sits in a box. Editorial variants for long content. */
.bhppil .prose .igrid.ed{gap:44px 64px}
.bhppil .prose .igrid.ed .iblock{background:none;border:0;border-radius:0;padding:26px 0 0;
  border-top:1px solid rgba(23,29,58,.14)}
.bhppil .bg-dark .prose .igrid.ed .iblock,.bhppil .bg-deep .prose .igrid.ed .iblock{
  background:none;border-top:1px solid rgba(255,255,255,.16)}
.bhppil .chap-item h2{font-size:24px;line-height:1.3;margin:0 0 14px;max-width:none}
.bhppil .prose .edcols{columns:2;column-gap:64px;column-fill:balance;margin-top:30px;max-width:none}
.bhppil .prose .edcols p{max-width:none;margin-bottom:18px}
@media (max-width:860px){.bhppil .prose .edcols{columns:1}
  .bhppil .prose .igrid.ed{gap:30px}}
/* author cards: portrait + linked name + bio; date is a caption, not a card */
.bhppil .authgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:none;margin-top:34px}
.bhppil .authcard{display:flex;gap:20px;align-items:flex-start;background:#fff;
  border:1px solid rgba(23,29,58,.08);border-radius:16px;padding:26px 28px}
.bhppil .bg-cream .authcard{background:#fff}
.bhppil .authcard .ava{flex:0 0 76px;width:76px;height:76px;border-radius:50%;object-fit:cover;
  object-position:50% 20%;border:2px solid rgba(255,176,0,.55);margin:0}
.bhppil .authcard p{font-size:15px;line-height:1.65;margin:0;max-width:none}
.bhppil .authcard strong{color:var(--navy)}
.bhppil .authcard a{color:var(--navy);text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold)}
.bhppil .authcard a:hover{color:#8A5A00}
.bhppil .authgrid .pubdate{grid-column:1/-1;margin:6px 0 0;font-size:12.5px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--slate);opacity:.8}
@media (max-width:820px){.bhppil .authgrid{grid-template-columns:1fr}}

/* headings never leave a single word stranded on its own line */
.bhpv10 .v10-final h2,.bhppil .prose h2,.bhppil h1,.bhpv10 h2{text-wrap:balance}

/* stat cards: one consistent rhythm, numbers never wrap to two lines */
.bhppil .scard .big{font-family:var(--disp);font-weight:600;font-size:clamp(19px,1.6vw,25px);line-height:1.2;color:var(--gold);margin:0 0 14px;letter-spacing:-.01em;text-wrap:balance;min-height:2.4em;display:flex;align-items:flex-end}
.bhppil .sgrid.c4{gap:18px}
.bhppil .scard{display:flex;flex-direction:column}
.bhppil .scard p{margin-top:auto}

/* real verification seals inside the trust strip (BBB etc.) */
.bhppil .trust li.seal,.bhpv10 .v10-trust li.seal,ul.trust li.seal,.v10-fintrust li.seal{
  background:#fff;padding:7px 14px;display:inline-flex;align-items:center}
.bhppil .trust li.seal img,ul.trust li.seal img,.v10-fintrust li.seal img{
  display:block;height:30px;width:auto;margin:0;border:0;border-radius:0;box-shadow:none}
.trust li.seal a,.v10-fintrust li.seal a{display:flex;line-height:0}

/* trust strip inside the final CTA band (dark) */
.bhpv10 .v10-fintrust{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:30px 0 0;padding:0;justify-content:center}
.bhpv10 .v10-fintrust li{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.8);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  padding:9px 15px;border-radius:999px;white-space:nowrap}
.bhpv10 .v10-fintrust li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold,#C9A961)}
.bhpv10 .v10-fintrust li.has-ic::before{display:none}
.bhpv10 .v10-fintrust li svg{width:17px;height:17px;color:var(--gold,#FFB000);flex:0 0 auto}

/* prose body (WYSIWYG content) */
.bhppil .prose ul,.bhppil .prose ol{margin:0 0 18px;padding-left:22px;max-width:74ch}
.bhppil .prose li{font-size:17.5px;line-height:1.65;margin-bottom:9px}
.bhppil .prose li::marker{color:var(--gold);font-weight:700}
.bhppil .bg-dark .prose li,.bhppil .bg-deep .prose li{color:rgba(255,255,255,.78)}
.bhppil .prose a{font-weight:600;text-decoration:underline;text-decoration-color:var(--gold);
  text-decoration-thickness:2px;text-underline-offset:3px}
.bhppil .prose .callout{background:var(--cream);border-left:4px solid var(--gold);
  border-radius:0 14px 14px 0;padding:24px 28px;margin:28px 0;max-width:76ch;font-size:17.5px;
  line-height:1.65}
.bhppil .bg-cream .prose .callout{background:#fff;border:1px solid var(--line);
  border-left:4px solid var(--gold)}
.bhppil .bg-dark .prose .callout,.bhppil .bg-deep .prose .callout{background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);border-left:4px solid var(--gold);color:rgba(255,255,255,.85)}
.bhppil .prose .callout.italic{font-family:var(--disp);font-style:italic;font-size:19px}
.bhppil .prose h3{margin-top:34px}
.bhppil .goldlink{display:inline-block;margin-top:6px;font-weight:600;color:inherit;
  text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold);transition:color .25s var(--ease)}
.bhppil .goldlink:hover{color:var(--gold)}

/* video frame */
.bhppil .vframe{position:relative;aspect-ratio:16/9;max-width:960px;border-radius:16px;
  overflow:hidden;border:1px solid rgba(255,176,0,.5);margin-top:30px;
  box-shadow:0 26px 70px rgba(16,21,41,.22)}
.bhppil .vframe iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.bhppil .vframe .vfac{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;
  cursor:pointer;background:#000;display:block}
.bhppil .vframe .vfac img{width:100%;height:100%;object-fit:cover;display:block}
.bhppil .vframe .vfac::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(17,35,55,.08),rgba(17,35,55,.5))}
.bhppil .vframe .vfac .vp{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:84px;height:60px;border-radius:14px;background:#FF0033;display:flex;align-items:center;
  justify-content:center;z-index:2;transition:transform .3s var(--ease),background .2s;
  box-shadow:0 12px 30px rgba(8,14,32,.4)}
.bhppil .vframe .vfac:hover .vp{transform:translate(-50%,-50%) scale(1.06);background:#e50029}
.bhppil .vframe .vfac .vp svg{width:28px;height:28px;fill:#fff;margin-left:3px}

/* cards */
.bhppil .grid{display:grid;gap:22px;margin-top:38px}
.bhppil .grid.c2{grid-template-columns:repeat(2,1fr)}
.bhppil .grid.c3{grid-template-columns:repeat(3,1fr)}
.bhppil .grid.c4{grid-template-columns:repeat(4,1fr)}
.bhppil .pcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
  border-radius:14px;padding:28px 26px;position:relative;overflow:hidden;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhppil .bg-white .pcard{background:var(--cream);border-color:transparent}
.bhppil .bg-dark .pcard,.bhppil .bg-deep .pcard{background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.13);color:#fff}
.bhppil .pcard::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.bhppil a.pcard{text-decoration:none;color:inherit}
.bhppil a.pcard:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(23,29,58,.12)}
.bhppil a.pcard:hover::after{transform:scaleX(1)}
.bhppil .pcard .pk{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);margin-bottom:10px}
.bhppil .pcard h3{font-size:19px;margin-bottom:10px}
.bhppil .pcard p{font-size:15px;line-height:1.6;margin:0;flex:1}
.bhppil .bg-dark .pcard p,.bhppil .bg-deep .pcard p{color:rgba(255,255,255,.72)}
.bhppil .pcard .go{margin-top:16px;font-weight:600;font-size:14.5px;color:inherit;
  box-shadow:inset 0 -2px 0 var(--gold);align-self:flex-start}
.bhppil .pcard .soon{margin-top:18px;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;
  font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8A5A00;
  background:rgba(255,176,0,.16);border:1px solid rgba(255,176,0,.4);border-radius:999px;padding:7px 14px}
.bhppil .pcard .soon svg{width:14px;height:14px}
.bhppil .bg-dark .pcard .soon,.bhppil .bg-deep .pcard .soon{color:var(--gold)}
.bhppil .pcard .pic{width:52px;height:52px;border-radius:14px;background:var(--navy);
  display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.bhppil .pcard .pic svg{width:26px;height:26px;color:var(--gold)}
.bhppil .bg-dark .pcard .pic,.bhppil .bg-deep .pcard .pic{background:rgba(255,176,0,.14)}

/* stats */
.bhppil .sgrid{display:grid;gap:22px;margin-top:38px}
.bhppil .sgrid.c3{grid-template-columns:repeat(3,1fr)}
.bhppil .sgrid.c4{grid-template-columns:repeat(4,1fr)}
.bhppil .scard{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.13);
  border-radius:14px;padding:26px 24px;color:#fff}
.bhppil .scard .pk{font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.55);margin-bottom:12px}
.bhppil .scard{position:relative;overflow:hidden;transition:transform .25s var(--ease),border-color .25s}
.bhppil .scard::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--gold),rgba(255,176,0,0))}
.bhppil .scard:hover{transform:translateY(-3px);border-color:rgba(255,176,0,.5)}
.bhppil .scard .tag{font-size:14px;font-weight:600;color:#fff;margin:0 0 10px}
.bhppil .scard p{font-size:14px;line-height:1.6;color:rgba(255,255,255,.72);margin:0}
.bhppil .scard .shot{display:block;position:relative;z-index:1;width:calc(100% + 48px);
  margin:16px -24px;border:0;border-top:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);aspect-ratio:16/8;object-fit:cover;
  object-position:left top;cursor:zoom-in;transition:opacity .2s;background:#fff}
.bhppil .scard .shot:hover{opacity:.92}
/* a zoom hint so people know the screenshot opens full size */
.bhppil .scard:has(.shot)::after{content:"Click to enlarge";position:absolute;right:14px;
  bottom:12px;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.42);pointer-events:none}
/* screenshot lightbox */
.bhpzoom{position:fixed;inset:0;z-index:9999;background:rgba(10,14,30,.92);display:flex;
  align-items:center;justify-content:center;padding:4vw;cursor:zoom-out;
  animation:bhpzin .18s ease}
@keyframes bhpzin{from{opacity:0}to{opacity:1}}
.bhpzoom img{max-width:100%;max-height:100%;border-radius:12px;
  box-shadow:0 30px 90px rgba(0,0,0,.6)}
.bhppil .scard .cap{font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(255,255,255,.45);margin-top:12px}
.bhppil .closeline{font-family:var(--disp);font-style:italic;font-size:19px;color:#fff;
  margin-top:34px}



/* ---- pillar layout system: split tracks, aside panels, insight + quote grids.
       The homepage never runs a bare column of paragraphs; these are the same
       moves it makes - two tracks, a gold-ruled panel, cards on a grid. ---- */
.bhppil .psplit{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}
.bhppil .psplit.vmid{align-items:center}
.bhppil .psplit .vframe{margin-top:0;max-width:none}
.bhppil .paside{background:var(--cream);border:1px solid var(--line);border-left:4px solid var(--gold);
  border-radius:0 14px 14px 0;padding:30px 30px 26px;position:sticky;top:120px}
.bhppil .bg-cream .paside{background:#fff}
.bhppil .bg-dark .paside,.bhppil .bg-deep .paside{background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.14);border-left-color:var(--gold)}
.bhppil .paside .prose p{font-size:16.5px}
.bhppil .paside .prose p:last-child{margin-bottom:0}
.bhppil .paside .callout{background:none;border:0;padding:0;margin:0}
.bhppil .paside .callout.italic,.bhppil .paside .callout.italic p{font-family:var(--disp);
  font-style:italic;font-size:20px;line-height:1.62;color:var(--navy)}
.bhppil .paside .callout.italic{position:relative;padding-top:44px}
.bhppil .paside .callout.italic p{margin:0}
.bhppil .paside .callout.italic::before{content:"\201C";position:absolute;left:-6px;top:-14px;
  font-family:var(--disp);font-size:110px;line-height:1;color:var(--gold);opacity:.85}
.bhppil .bg-dark .paside .callout.italic,.bhppil .bg-deep .paside .callout.italic{color:rgba(255,255,255,.9)}
.bhppil .paside .pilbtn{margin-top:6px}

.bhppil .prose .igrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:34px 0 0;max-width:none}
.bhppil .prose .iblock{background:var(--cream);border:1px solid transparent;border-radius:14px;
  padding:30px 30px 24px;position:relative;overflow:hidden}
.bhppil .bg-cream .prose .iblock{background:#fff;border-color:var(--line)}
.bhppil .prose .iblock::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:var(--gold)}
.bhppil .prose .iblock h2{font-size:23px;line-height:1.25;margin:0 0 12px;max-width:none}
.bhppil .prose .iblock p{font-size:15.5px;line-height:1.65;max-width:none}
.bhppil .prose .iblock p:last-child{margin-bottom:0}

.bhppil .prose .qgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:34px 0 0;
  max-width:none;align-items:stretch}
.bhppil .prose .qgrid .pquote{flex-direction:column;margin:0;max-width:none;height:100%}
/* equal cards, attribution pinned to the bottom edge regardless of quote length */
.bhppil .prose .qgrid .pquote>div{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
.bhppil .prose .qgrid .pquote>div>p{flex:0 0 auto}
.bhppil .prose .qgrid .pquote>div>p.who{margin-top:auto;padding-top:16px}
.bhppil .prose .qgrid .pquote img{margin-bottom:4px}
.bhppil .prose .qgrid .pquote p{flex:1}

@media (max-width:1000px){
  .bhppil .psplit{grid-template-columns:1fr;gap:34px}
  .bhppil .paside{position:static}
  .bhppil .prose .igrid,.bhppil .prose .qgrid{grid-template-columns:1fr}
}


/* FAQ: global component, identical placement to the homepage FAQ */
.bhppil .faqwrap{max-width:900px;margin:0 auto}
.bhppil .faqwrap .prose{max-width:none}
.bhppil .faqwrap h2{text-align:center;max-width:none;margin-bottom:34px}
.bhppil .faqwrap .prose details{max-width:none;width:100%}

/* insight blocks: numbered editorial panels, the homepage roman-numeral
   language - a hairline and a Fraunces numeral instead of another box */
.bhppil .prose .igrid{counter-reset:ib;gap:20px}
.bhppil .prose .iblock{background:var(--cream);border:1px solid rgba(23,29,58,.07);border-radius:16px;
  padding:28px 30px 26px;counter-increment:ib;position:relative}
.bhppil .bg-cream .prose .iblock{background:#fff;border-color:var(--line)}
.bhppil .bg-dark .prose .iblock,.bhppil .bg-deep .prose .iblock{background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.13)}
.bhppil .prose .iblock::before{content:counter(ib,upper-roman);position:static;width:auto;
  height:auto;display:block;background:none;font-family:var(--disp);font-style:italic;
  font-weight:500;font-size:26px;line-height:1;color:var(--gold);margin-bottom:14px}
.bhppil .prose .iblock h2{font-size:22px}
.bhppil .prose .iblock h3{font-size:18.5px;margin-bottom:8px}
.bhppil .prose .iblock p{font-size:15.5px}
.bhppil .prose .igrid+p{margin-top:34px;max-width:70ch}

/* numbered two-column list: content that must not be another card wall */
.bhppil .plist{list-style:none;margin:38px 0 0;padding:0;display:grid;
  grid-template-columns:1fr 1fr;gap:0 64px;counter-reset:pl;max-width:none}
.bhppil .plist li{counter-increment:pl;position:relative;padding:24px 0 24px 62px;
  border-top:1px solid var(--line)}
.bhppil .plist li::before{content:counter(pl,decimal-leading-zero);position:absolute;
  left:0;top:26px;font-family:var(--disp);font-style:italic;font-weight:500;
  font-size:22px;line-height:1;color:var(--gold)}
.bhppil .plist h3{font-size:18px;margin:0 0 6px}
.bhppil .plist p{font-size:15px;line-height:1.6;color:var(--slate);margin:0;max-width:none}
.bhppil .bg-dark .plist li,.bhppil .bg-deep .plist li{border-top-color:rgba(255,255,255,.14)}
.bhppil .bg-dark .plist p,.bhppil .bg-deep .plist p{color:rgba(255,255,255,.72)}
@media (max-width:800px){.bhppil .plist{grid-template-columns:1fr}}


.bhppil .pcard .ph{width:76px;height:76px;border-radius:50%;object-fit:cover;
  object-position:50% 22%;margin-bottom:16px;box-shadow:0 8px 22px rgba(23,29,58,.16)}

.bhppil .prose .igrid.ig3{grid-template-columns:repeat(3,1fr)}
@media (max-width:1000px){.bhppil .prose .igrid.ig3{grid-template-columns:1fr}}

/* quote cards carry the homepage testimonial signature: gold-to-navy top bar */
.bhppil .prose .qgrid .pquote{position:relative;overflow:hidden;padding-top:32px}
/* featured-quote split: one voice leads, two echo. Mirrors the site's
   dark-panel + aside split language instead of three equal boxes. */
.bhppil .prose .qsplit{display:grid;grid-template-columns:7fr 5fr;gap:22px;margin:34px 0 0;
  max-width:none;align-items:stretch}
.bhppil .prose .qsplit figure{margin:0}
.bhppil .prose .qsplit blockquote{margin:0;border:0;padding:0}
.bhppil .qfeat{position:relative;background:linear-gradient(160deg,#232B4A 0%,#0E1428 100%);
  border-radius:18px;padding:46px 44px 42px;display:flex;align-items:center;overflow:hidden}
.bhppil .qfeat::before{content:"\201C";position:absolute;left:26px;top:-14px;
  font-family:var(--disp);font-weight:600;font-size:150px;line-height:1;
  color:rgba(255,176,0,.22);pointer-events:none}
.bhppil .qfeat p{font-size:17px;line-height:1.8;color:rgba(255,255,255,.92);margin:0;max-width:none;
  position:relative}
.bhppil .qside{display:grid;gap:22px;align-content:stretch}
.bhppil .qmini{position:relative;background:var(--cream);border:1px solid rgba(23,29,58,.07);
  border-radius:18px;padding:30px 32px;display:flex;align-items:center;overflow:hidden}
.bhppil .bg-white .prose .qmini{background:var(--cream)}
.bhppil .qmini::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;
  border-radius:2px;background:var(--gold)}
.bhppil .qmini p{font-family:var(--disp);font-style:italic;font-weight:500;font-size:20px;
  line-height:1.5;color:var(--navy);margin:0;max-width:none}
@media (max-width:880px){.bhppil .prose .qsplit{grid-template-columns:1fr}
  .bhppil .qfeat{padding:38px 28px 34px}}
.bhppil .prose .qgrid .pquote::before{content:"";position:absolute;left:0;right:0;top:0;
  height:5px;background:linear-gradient(90deg,var(--gold),#1D2547)}


/* ---- service explorer: numbered menu drives a live pane ---- */
.bhppil .pexp{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;margin-top:40px;align-items:start}
.bhppil .pexp-nav{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.bhppil .pexp-nav button{display:flex;align-items:center;gap:18px;width:100%;text-align:left;
  background:none;border:0;border-bottom:1px solid var(--line);padding:18px 12px 18px 4px;
  font-family:var(--body);font-size:17px;font-weight:600;color:var(--slate);cursor:pointer;
  position:relative;transition:color .25s var(--ease),padding-left .25s var(--ease)}
.bhppil .pexp-nav button span{font-family:var(--disp);font-style:italic;font-weight:500;
  font-size:15px;color:rgba(23,29,58,.35);min-width:26px;transition:color .25s var(--ease)}
.bhppil .pexp-nav button::after{content:"";position:absolute;left:0;bottom:-1px;height:2px;
  width:0;background:var(--gold);transition:width .35s var(--ease)}
.bhppil .pexp-nav button:hover{color:var(--navy)}
.bhppil .pexp-nav button.on{color:var(--navy);padding-left:12px}
.bhppil .pexp-nav button.on span{color:var(--gold)}
.bhppil .pexp-nav button.on::after{width:100%}
.bhppil .pexp-panes{position:static;background:#fff;border:1px solid var(--line);
  border-radius:16px;padding:40px 42px;box-shadow:0 22px 60px rgba(23,29,58,.08);
  min-height:280px;overflow:hidden}
.bhppil .bg-white .pexp-panes{background:var(--cream);border-color:transparent}
.bhppil .pexp-pane{display:none}
.bhppil .pexp-pane.on{display:block;animation:pexpIn .45s var(--ease)}
@keyframes pexpIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.bhppil .pexp-pane .pn{display:block;font-family:var(--disp);font-style:italic;font-weight:500;
  font-size:34px;line-height:1;color:var(--gold);margin-bottom:16px}
.bhppil .pexp-pane h3{font-size:24px;margin-bottom:14px}
.bhppil .pexp-pane p{font-size:16.5px;line-height:1.7;margin:0;max-width:none}
@media (max-width:900px){
  .bhppil .pexp{grid-template-columns:1fr;gap:22px}
  .bhppil .pexp-nav{flex-direction:row;overflow-x:auto;border-top:0;gap:8px;
    scrollbar-width:none;padding-bottom:4px}
  .bhppil .pexp-nav::-webkit-scrollbar{display:none}
  .bhppil .pexp-nav button{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;
    padding:11px 18px;font-size:14px}
  .bhppil .pexp-nav button.on{border-color:var(--gold);background:rgba(255,176,0,.1);padding-left:18px}
  .bhppil .pexp-nav button::after{content:none}
  .bhppil .pexp-panes{position:static}
}

/* ---- vertical timeline: the homepage steps language for narrative runs ---- */
.bhppil .tline{position:relative;max-width:860px;margin-top:44px}
.bhppil .tline::before{content:"";position:absolute;left:7px;top:14px;bottom:26px;width:2px;
  background:rgba(255,176,0,.3)}
.bhppil .titem{position:relative;padding:0 0 46px 58px}
.bhppil .titem:last-child{padding-bottom:0}
.bhppil .titem::before{content:"";position:absolute;left:1px;top:8px;width:14px;height:14px;
  border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(255,176,0,.18)}
.bhppil .titem .tn{display:block;font-family:var(--disp);font-style:italic;font-weight:500;
  font-size:22px;line-height:1;color:var(--gold);margin-bottom:10px}
.bhppil .titem h2{font-size:26px;margin-bottom:12px;max-width:none}
.bhppil .titem p{font-size:16.5px;max-width:72ch}
.bhppil .titem p:last-child{margin-bottom:0}

/* ---- scroll reveal: the homepage's motion, applied to pillar content ---- */
.bhppil .prv{opacity:1;transform:none}

/* every pcard responds, linked or not */
.bhppil div.pcard{transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhppil div.pcard:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(23,29,58,.10)}
.bhppil div.pcard:hover::after{transform:scaleX(1)}
.bhppil .plist li{transition:background .3s var(--ease)}
.bhppil .plist li:hover::before{color:var(--navy)}


/* ---- scroll-driven explorer: sticks while scroll steps through services ---- */
.bhppil .sec-pexp{padding:40px 0}
.bhppil .pexp-outer{height:auto}
.bhppil .pexp-stick{position:static;height:auto;display:flex;flex-direction:column;
  justify-content:center;padding-top:84px;box-sizing:border-box}
.bhppil .pexp-head h2{margin-bottom:14px}
.bhppil .pexp-head p{margin-bottom:8px}
.bhppil .pexp{margin-top:28px}
@media (max-width:900px),(max-height:700px),(prefers-reduced-motion:reduce){
  .bhppil .sec-pexp{padding:72px 0}
  .bhppil .pexp-outer{height:auto}
  .bhppil .pexp-stick{position:static;height:auto;display:block;padding-top:0}
}

/* ---- chapters: sticky roman rail + scroll-spy, replaces the dot timeline ---- */
.bhppil .chap{display:grid;grid-template-columns:280px minmax(0,1fr);gap:64px;
  align-items:start;margin-top:44px;max-width:none}
.bhppil .chap-rail{position:sticky;top:130px}
.bhppil .chap-big{display:block;font-family:var(--disp);font-style:italic;font-weight:500;
  font-size:96px;line-height:1;color:var(--gold);margin-bottom:26px;
  transition:opacity .35s var(--ease),transform .35s var(--ease)}
.bhppil .chap-big.swap{opacity:0;transform:translateY(10px)}
.bhppil .chap-rail nav{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.bhppil .chap-rail nav a{display:block;padding:13px 2px;border-bottom:1px solid var(--line);
  font-size:14.5px;font-weight:600;color:var(--slate);text-decoration:none;position:relative;
  transition:color .25s var(--ease),padding-left .25s var(--ease)}
.bhppil .chap-rail nav a::before{content:"";position:absolute;left:0;top:50%;
  transform:translateY(-50%);height:60%;width:3px;background:var(--gold);opacity:0;
  transition:opacity .25s var(--ease)}
.bhppil .chap-rail nav a:hover{color:var(--navy)}
.bhppil .chap-rail nav a.on{color:var(--navy);padding-left:14px}
.bhppil .chap-rail nav a.on::before{opacity:1}
.bhppil .chap-item{padding:0 0 58px;scroll-margin-top:140px}
.bhppil .chap-item:last-child{padding-bottom:0}
.bhppil .chap-item h2{font-size:27px;margin-bottom:14px;max-width:none}
.bhppil .chap-item p{font-size:16.5px;max-width:70ch}
.bhppil .chap-item p:last-child{margin-bottom:0}
@media (max-width:640px){
  /* nothing in a pillar section may reach the viewport edge (Aug 22 QA) */
  .bhppil .wrap{padding-left:20px;padding-right:20px;max-width:100%;overflow-x:clip}
  .bhppil h1,.bhppil h2,.bhppil h3,.bhppil p,.bhppil .eyebrow,.bhppil .lead{max-width:100%;
    overflow-wrap:anywhere;word-break:normal}
  .bhppil .phgrid,.bhppil .psplit,.bhppil .lsplit,.bhppil .duo,.bhppil .igrid{min-width:0}
  .bhppil .phgrid>*,.bhppil .psplit>*,.bhppil .lsplit>*{min-width:0;max-width:100%}
  .bhppil .phgrid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:900px){
  .bhppil .chap{grid-template-columns:minmax(0,1fr);gap:26px}
  .bhppil .chap-rail{position:static;min-width:0;max-width:100%}
  .bhppil .chap-body{min-width:0}
  .bhppil .chap-big{display:none}
  .bhppil .chap-rail nav{flex-direction:row;overflow-x:auto;border-top:0;gap:8px;
    scrollbar-width:none}
  .bhppil .chap-rail nav::-webkit-scrollbar{display:none}
  .bhppil .chap-rail nav a{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;
    padding:10px 16px;border-bottom:1px solid var(--line)}
  .bhppil .chap-rail nav a.on{border-color:var(--gold);background:rgba(255,176,0,.1);padding-left:16px}
  .bhppil .chap-rail nav a::before{content:none}
}

/* ---- rankviz: decorative SERP panel for the dark section's right track.
       All text lives in CSS content, so it adds zero words to the page. ---- */
.bhppil .paside.rvz{background:none;border:0;padding:0;box-shadow:none;position:sticky;top:130px}
.bhppil .rankviz{background:rgba(255,255,255,.05);border:1px solid rgba(255,176,0,.3);
  border-radius:16px;padding:26px;box-shadow:0 30px 80px rgba(9,13,28,.4)}
.bhppil .rv-pill{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:12px 18px;
  font-size:13.5px;color:rgba(255,255,255,.85);margin-bottom:18px}
.bhppil .rv-pill::before{content:"";width:14px;height:14px;border-radius:50%;
  border:2px solid var(--gold);border-right-color:transparent;transform:rotate(-45deg)}
.bhppil .rv-pill::after{content:"drug rehab near me";letter-spacing:.01em}
.bhppil .rv-row{display:flex;align-items:center;gap:14px;padding:13px 16px;border-radius:10px;
  margin-bottom:10px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08)}
.bhppil .rv-row .rv-pos{font-family:var(--disp);font-style:italic;font-weight:500;font-size:18px;
  color:rgba(255,255,255,.4);min-width:22px}
.bhppil .rv-row .rv-txt{flex:1;display:block;min-width:0}
.bhppil .rv-row .rv-name{display:block;font-size:14.5px;font-weight:600;
  color:rgba(255,255,255,.75);margin-bottom:6px}
.bhppil .rv-row.two .rv-name::after{content:"Competitor A"}
.bhppil .rv-row.three .rv-name::after{content:"Competitor B"}
.bhppil .rv-row.one .rv-name{color:#fff}
.bhppil .rv-row.one .rv-name::after{content:"Your Center · Admissions Open"}
.bhppil .rv-row .rv-bar{display:block}
.bhppil .rv-row .rv-bar::before{content:"";display:block;height:7px;border-radius:5px;
  background:rgba(255,255,255,.12);width:74%}
.bhppil .rv-row .rv-bar::after{content:none}
.bhppil .rv-row.one .rv-bar::before{background:rgba(255,176,0,.55);width:58%}
.bhppil .rv-up{font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--gold);
  white-space:nowrap;opacity:0;animation:rvUp 8s var(--ease) infinite}
.bhppil .rv-up::after{content:"\2191 +2"}
@keyframes rvUp{0%,30%{opacity:0}42%,88%{opacity:1}96%,100%{opacity:0}}
.bhppil .rv-row.one{background:rgba(255,176,0,.1);border-color:rgba(255,176,0,.5);
  animation:rvClimb 8s var(--ease) infinite}
.bhppil .rv-row.one .rv-pos{color:var(--gold)}
.bhppil .rv-row.one .rv-bar::before{background:var(--gold);width:46%}
.bhppil .rv-row.one .rv-bar::after{background:rgba(255,176,0,.35);width:74%}
.bhppil .rv-row.two{animation:rvYield 8s var(--ease) infinite}
.bhppil .rv-row.three{animation:rvYield 8s var(--ease) infinite}
.bhppil .rv-pill::before{animation:rvSpin 1.4s linear infinite}
/* the story: your result starts at 3, climbs to 1, holds with a glow, then
   glides back and repeats. Pure transforms - nothing ever blinks out. */
@keyframes rvClimb{
  0%,16%{transform:translateY(150px)}
  32%,86%{transform:translateY(0)}
  46%{box-shadow:0 0 0 0 rgba(255,176,0,.3)}
  55%{box-shadow:0 0 0 10px rgba(255,176,0,0)}
  64%{box-shadow:0 0 0 0 rgba(255,176,0,.3)}
  73%{box-shadow:0 0 0 10px rgba(255,176,0,0)}
  100%{transform:translateY(150px)}
}
@keyframes rvYield{
  0%,16%{transform:translateY(-75px)}
  32%,86%{transform:translateY(0)}
  100%{transform:translateY(-75px)}
}
@keyframes rvSpin{to{transform:rotate(315deg)}}
.bhppil .rv-note{margin-top:16px;text-align:center;font-family:var(--disp);font-style:italic;
  font-size:15px;color:rgba(255,255,255,.6)}
.bhppil .rv-note::after{content:"The call that ranking produces is free."}
@media (prefers-reduced-motion:reduce){
  .bhppil .rv-row.one,.bhppil .rv-row.two,.bhppil .rv-row.three,
  .bhppil .rv-up,.bhppil .rv-pill::before{animation:none}
  .bhppil .rv-up{opacity:1}}

/* ---- 3D flip profiles ---- */
.bhppil .f3grid{gap:26px}
.bhppil .fcard3d{perspective:1400px;min-height:400px;cursor:pointer;outline:none}
.bhppil .f3-in{position:relative;width:100%;height:100%;min-height:400px;
  transform-style:preserve-3d;-webkit-transform-style:preserve-3d;
  transition:transform .8s var(--ease)}
.bhppil .fcard3d:hover .f3-in,.bhppil .fcard3d:focus-visible .f3-in,
.bhppil .fcard3d.flip .f3-in{transform:rotateY(180deg)}
.bhppil .f3-front,.bhppil .f3-back{position:absolute;inset:0;backface-visibility:hidden;
  -webkit-backface-visibility:hidden;border-radius:16px;padding:34px 30px;
  display:flex;flex-direction:column}
.bhppil .f3-front{transform:rotateY(0deg) translateZ(1px);-webkit-transform:rotateY(0deg) translateZ(1px)}
.bhppil .f3-back{transform:rotateY(180deg);-webkit-transform:rotateY(180deg)}
.bhppil .f3-front{background:var(--deep);padding:0;overflow:hidden;
  box-shadow:0 16px 44px rgba(23,29,58,.14);justify-content:flex-end}
.bhppil .f3-front img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  object-position:50% 18%;margin:0;border-radius:0;box-shadow:none}
.bhppil .f3-front::after{content:"";position:absolute;left:0;right:0;bottom:0;height:55%;
  background:linear-gradient(to top,rgba(13,18,38,.92) 12%,rgba(13,18,38,0));z-index:1}
.bhppil .f3-front .pk,.bhppil .f3-back .pk{display:block;font-size:11px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.bhppil .f3-front .pk{position:relative;z-index:2;margin:0 28px 6px}
.bhppil .f3-front h3{position:relative;z-index:2;color:#fff;font-size:23px;margin:0 28px 28px}
.bhppil .fcard3d{min-height:460px}
/* wider cards ride the cover crop lower to keep faces in frame */
.bhppil .grid.c2 .f3-front img{object-position:50% 28%}
.bhppil .grid.c4 .fcard3d,.bhppil .grid.c4 .f3-in{min-height:400px}
.bhppil .grid.c4 .f3-front h3{font-size:19px;margin:0 22px 22px}
.bhppil .grid.c4 .f3-front .pk{margin:0 22px 6px}
@media (max-width:1000px){.bhppil .f3grid.c4{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.bhppil .f3grid.c4{grid-template-columns:1fr}}
/* homepage team slider cards: the global flip card, slider-sized
   (the v10 namespacer renames the modifier, so both spellings are covered) */
.bhppil.tmflip,.bhppil.v10-tmflip{flex:0 0 288px;min-width:288px}
.bhppil.tmflip .fcard3d,.bhppil.v10-tmflip .fcard3d,
.bhppil.tmflip .f3-in,.bhppil.v10-tmflip .f3-in{min-height:400px}
.bhppil.tmflip .f3-front h3,.bhppil.v10-tmflip .f3-front h3{font-size:20px;margin:0 24px 24px}
.bhppil.tmflip .f3-front .pk,.bhppil.v10-tmflip .f3-front .pk{margin:0 24px 6px}
.bhppil.tmflip .f3-back,.bhppil.v10-tmflip .f3-back{padding:28px 26px}
.bhppil.tmflip .f3-back p,.bhppil.v10-tmflip .f3-back p{font-size:14.5px;line-height:1.6;flex:1;
  overflow:hidden;display:-webkit-box;-webkit-line-clamp:9;-webkit-box-orient:vertical}
.bhppil.tmflip .f3-back .go,.bhppil.v10-tmflip .f3-back .go{margin-top:14px;font-weight:600;
  font-size:14.5px;color:#fff;box-shadow:inset 0 -2px 0 var(--gold);align-self:flex-start;
  text-decoration:none}
@media (max-width:700px){.bhppil.tmflip,.bhppil.v10-tmflip{flex:0 0 78%;min-width:0}}

/* mobile: the profile deck becomes a swipe slider so it stops eating the page */
@media (max-width:700px){
  .bhppil .f3grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;
    gap:16px;padding:4px 4px 16px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .bhppil .f3grid::-webkit-scrollbar{display:none}
  .bhppil .f3grid>.fcard3d{flex:0 0 82%;scroll-snap-align:center;min-height:440px}
  .bhppil .f3grid::after{content:"";flex:0 0 4px}
}
.bhppil .f3-in{min-height:460px}
.bhppil .f3-back{background:linear-gradient(160deg,#171D3A 0%,#141F3B 45%,#112337 100%);color:#fff;
  transform:rotateY(180deg);justify-content:center;gap:14px}
.bhppil .f3-back .pk{color:var(--gold)}
.bhppil .f3-back p{font-size:15px;line-height:1.65;color:rgba(255,255,255,.82);margin:0;max-width:none}
.bhppil .f3-back .go{align-self:flex-start;margin-top:6px;font-weight:600;color:#fff;
  text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold);transition:color .25s var(--ease)}
.bhppil .f3-back .go:hover{color:var(--gold)}
@media (prefers-reduced-motion:reduce){.bhppil .f3-in{transition:none}}


.bhppil .chap-item h3{font-size:24px;letter-spacing:-.015em;margin-bottom:12px;max-width:none}
.bhppil .chap-item .goldlink{margin-top:2px}

/* 50-state directory cloud: named, unlinked until each guide ships */
.bhppil .gmapwrap{position:relative;border-radius:18px;overflow:hidden;
  border:1px solid rgba(23,29,58,.12);box-shadow:0 24px 60px rgba(23,29,58,.12);min-height:420px}
.bhppil .gmapwrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.bhppil .statecloud{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;
  margin-top:38px;max-width:none;padding-top:28px;border-top:1px solid rgba(23,29,58,.12)}
.bhppil .statecloud span{display:flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;
  color:var(--navy);background:#fff;border:1px solid rgba(23,29,58,.08);border-radius:9px;
  padding:7px 10px;cursor:pointer;line-height:1.2;
  transition:border-color .2s,background .2s,transform .15s var(--ease)}
.bhppil .statecloud span::before{content:attr(data-st);flex:0 0 26px;height:19px;border-radius:5px;
  background:rgba(255,176,0,.16);color:#8A5A00;font-size:9.5px;font-weight:700;letter-spacing:.05em;
  display:inline-flex;align-items:center;justify-content:center}
.bhppil .statecloud span:hover{border-color:var(--gold);transform:translateY(-1px)}
.bhppil .statecloud span.on{background:var(--navy);border-color:var(--navy);color:#fff}
.bhppil .statecloud span.on::before{background:var(--gold);color:var(--navy)}
.bhppil .bg-white .statecloud span{background:var(--cream);border-color:transparent}
@media (max-width:1080px){.bhppil .statecloud{grid-template-columns:repeat(4,1fr)}}
@media (max-width:860px){.bhppil .statecloud{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){
  .bhppil .statecloud{display:grid;grid-auto-flow:column;grid-template-rows:repeat(9,auto);
    grid-template-columns:none;grid-auto-columns:70%;overflow-x:auto;
    scroll-snap-type:x proximity;padding-bottom:14px;scrollbar-width:none;
    -webkit-overflow-scrolling:touch}
  .bhppil .statecloud::-webkit-scrollbar{display:none}
  .bhppil .statecloud span{scroll-snap-align:start}
}

/* interactive 50-state map: text left, map right, chip cloud synced below */
.bhppil .mapsplit{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center}

/* proof photo beside the manifesto statement */
.bhppil .proofshot{margin:0;position:relative;border-radius:18px;overflow:hidden;
  box-shadow:0 26px 64px rgba(23,29,58,.16);align-self:stretch}
.bhppil .proofshot img{display:block;width:100%;height:100%;min-height:340px;object-fit:cover}
.bhppil .manifesto .lsplit{align-items:stretch;gap:48px}
.bhppil .manifesto .say{margin-top:0}
.bhppil .proofshot figcaption{position:absolute;left:16px;bottom:16px;background:rgba(17,23,49,.85);
  color:#fff;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  padding:9px 16px;border-radius:999px;border:1px solid rgba(255,176,0,.4)}

/* aside variants (Aug 21): two alternatives to the gold-bar callout card */
.bhppil .paside.v-navy{background:linear-gradient(160deg,#232B4A 0%,#111731 100%);border:0;
  border-radius:18px;padding:34px 34px 30px;position:relative;overflow:hidden}
.bhppil .paside.v-navy::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--gold),rgba(255,176,0,0))}
.bhppil .paside.v-navy::after{content:"";position:absolute;right:-60px;bottom:-60px;width:190px;height:190px;
  border-radius:50%;background:radial-gradient(circle,rgba(255,176,0,.14),transparent 68%)}
.bhppil .paside.v-navy .prose p{color:rgba(255,255,255,.88);font-size:16px;line-height:1.7}
.bhppil .paside.v-navy .prose p:first-child::first-letter{color:var(--gold)}
.bhppil .paside.v-note{background:none;border:0;border-left:2px solid rgba(255,176,0,.65);
  border-radius:0;padding:6px 0 6px 30px;box-shadow:none}
.bhppil .paside.v-note .prose p{font-family:Fraunces,serif;font-size:18.5px;line-height:1.65;
  color:var(--navy);font-weight:500}
.bhppil .paside.v-note::before{content:"From the operators";display:block;font-family:Geist,sans-serif;
  font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8A5A00;margin-bottom:10px}
.bhppil .vmid{align-items:center}
.bhppil .mapwrap{position:relative}
.bhppil .usmap{display:block;width:100%;height:auto}
.bhppil .usmap path{fill:#fff;stroke:#DCD5C4;stroke-width:.8;stroke-linejoin:round;
  cursor:pointer;transition:fill .25s var(--ease)}
.bhppil .bg-white .usmap path{fill:var(--cream);stroke:#E2DccD}
.bhppil .usmap path:hover,.bhppil .usmap path.on{fill:var(--gold);stroke:#E09B00}
.bhppil .usmap path.hot{fill:#FFE2A6;stroke:#E7C069;animation:bhp-fl 3.2s ease-in-out infinite}
.bhppil .usmap path.hot:hover,.bhppil .usmap path.hot.on{fill:var(--gold);animation:none}
@keyframes bhp-fl{0%,100%{fill:#FFE2A6}50%{fill:#FFD07A}}
.bhppil .usmap .sep{stroke:#DCD5C4;stroke-width:1.5;fill:none;pointer-events:none}
.bhppil .maptip{position:absolute;z-index:5;pointer-events:none;opacity:0;
  background:var(--navy);color:#fff;font-size:12.5px;font-weight:600;letter-spacing:.02em;
  padding:7px 13px;border-radius:999px;white-space:nowrap;transform:translate(-50%,-130%);
  box-shadow:0 10px 26px rgba(11,18,32,.28);transition:opacity .18s var(--ease)}
.bhppil .maptip.show{opacity:1}
.bhppil .maptip small{display:block;font-weight:500;font-size:11px;color:rgba(255,255,255,.66);letter-spacing:.03em}
.bhppil .mapkey{display:flex;gap:22px;margin-top:18px;font-size:12.5px;font-weight:600;color:var(--slate)}
.bhppil .mapkey i{display:inline-block;width:12px;height:12px;border-radius:4px;margin-right:7px;vertical-align:-1px}
.bhppil .mapkey .k1 i{background:#FFD07A}
.bhppil .mapkey .k2 i{background:var(--gold)}
@media (max-width:900px){.bhppil .mapsplit{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.bhppil .usmap path.hot{animation:none}}

/* duo: a pair of contrasting panels for two-heading editorial sections */
.bhppil .duo{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:none;margin-top:8px}
.bhppil .duo>div{border-radius:22px;padding:48px 46px 44px;position:relative;overflow:hidden}
.bhppil .duo .d-k{font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:44px;line-height:1;color:var(--gold);display:block;margin-bottom:18px}
.bhppil .duo h2{font-size:29px;letter-spacing:-.015em;margin:0 0 16px;max-width:none}
.bhppil .duo p{max-width:none;margin:0 0 16px}
.bhppil .duo p:last-child{margin-bottom:0}
.bhppil .duo p.lede{font-size:19px;line-height:1.55;font-weight:500;color:var(--navy)}
.bhppil .duo .d-cream{background:var(--cream);border:1px solid rgba(23,29,58,.07)}
.bhppil .duo .d-navy{background:linear-gradient(160deg,#232B4A 0%,#0E1428 100%)}
.bhppil .duo .d-navy h2{color:#fff}
.bhppil .duo .d-navy p{color:rgba(255,255,255,.78)}
.bhppil .duo .d-navy p.lede{color:#fff}
.bhppil .duo .d-navy::after{content:"";position:absolute;right:-70px;top:-70px;width:230px;height:230px;
  border-radius:50%;background:radial-gradient(circle,rgba(255,176,0,.16),transparent 68%);pointer-events:none}
@media (max-width:900px){.bhppil .duo{grid-template-columns:1fr}.bhppil .duo>div{padding:36px 30px 32px}}

/* inline highlight: key verbatim phrases get a gold underline wash */
.bhppil .prose .hl{font-style:normal;font-weight:600;color:inherit;
  text-decoration:underline;text-decoration-color:rgba(255,176,0,.95);
  text-decoration-thickness:2.5px;text-underline-offset:.3em;text-decoration-skip-ink:none}
.bhppil .bg-dark .prose .hl,.bhppil .bg-deep .prose .hl{text-decoration-color:var(--gold)}

/* narrative band: lede + two-column body, replaces the tall text-wall cards */
.bhppil .prose .lede{font-family:Fraunces,serif;font-size:clamp(20px,2.2vw,26px);line-height:1.5;
  font-weight:500;color:var(--navy);max-width:56ch;margin:0 0 26px}
.bhppil .bg-dark .prose .lede,.bhppil .bg-deep .prose .lede{color:#fff}
.bhppil .narr .cols{column-count:2;column-gap:52px;max-width:none}
.bhppil .narr .cols p{break-inside:avoid;max-width:none}
@media (max-width:900px){.bhppil .narr .cols{column-count:1}}

/* acuity ladder: level-of-care rungs drawn from the section's own copy */
.bhppil .ladder{display:grid;gap:12px;max-width:none;counter-reset:rung}
.bhppil .ladder>div{display:flex;gap:18px;align-items:flex-start;background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.13);border-radius:14px;padding:18px 22px;position:relative}
.bhppil .ladder>div::before{counter-increment:rung;content:counter(rung);flex:0 0 34px;height:34px;
  display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--gold);
  color:var(--navy);font-family:Fraunces,serif;font-weight:600;font-size:17px}
.bhppil .ladder b{display:block;color:#fff;font-size:16px;margin-bottom:2px}
.bhppil .ladder span{display:block;font-size:14px;line-height:1.55;color:rgba(255,255,255,.72)}
.bhppil .ladder .lhead{font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);margin:0 0 2px;background:none;border:0;padding:0;display:block}
.bhppil .ladder .lhead::before{display:none}

/* state finder */
.bhppil .statepick{margin-top:30px;max-width:430px}
.bhppil .statepick label{display:block;font-size:11.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--slate);margin-bottom:9px}
.bhppil .statepick .sprow{position:relative}
.bhppil .statepick select{width:100%;appearance:none;-webkit-appearance:none;font-family:inherit;
  font-size:15.5px;font-weight:600;color:var(--navy);background:#fff;border:1px solid rgba(23,29,58,.16);
  border-radius:12px;padding:15px 48px 15px 18px;cursor:pointer;transition:border-color .25s}
.bhppil .statepick select:hover,.bhppil .statepick select:focus{border-color:var(--gold);outline:none}
.bhppil .statepick .sprow svg{position:absolute;right:16px;top:50%;transform:translateY(-50%);
  width:18px;height:18px;color:var(--gold);pointer-events:none}
.bhppil .statepick .spnote{font-size:14.5px;line-height:1.6;color:var(--slate);margin:12px 0 0;min-height:1em}
.bhppil .usmap path.picked{fill:var(--gold);stroke:#E09B00;animation:none}

/* manifesto band: statement line under the heading, body in columns */
.bhppil .manifesto{max-width:none}
.bhppil .manifesto .say{font-family:Fraunces,serif;font-style:italic;font-weight:500;
  font-size:clamp(21px,2.6vw,30px);line-height:1.42;color:var(--navy);max-width:30ch;
  margin:6px 0 30px;padding-left:26px;border-left:4px solid var(--gold)}
.bhppil .bg-dark .manifesto .say,.bhppil .bg-deep .manifesto .say{color:#fff}
.bhppil .manifesto .cols{column-count:2;column-gap:52px;max-width:none}
.bhppil .manifesto .cols p{break-inside:auto;max-width:none}
@media (max-width:900px){.bhppil .manifesto .cols{column-count:1}}

/* route rows: prominent next-step links instead of another gold-bar callout.
   kses strips svg from widget bodies, so the glyphs are pure CSS */
.bhppil .routes{display:grid;gap:14px;max-width:none;align-self:center}
.bhppil .routes a{display:flex;align-items:center;gap:18px;text-decoration:none;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:14px;
  padding:21px 24px;transition:border-color .25s,transform .25s var(--ease),background .25s}
.bhppil .routes a:hover{border-color:var(--gold);background:rgba(255,176,0,.08);transform:translateX(4px)}
.bhppil .routes a b{display:block;color:#fff;font-size:16.5px;font-weight:600;line-height:1.4}
.bhppil .routes a small{display:block;font-size:13.5px;color:rgba(255,255,255,.62);margin-top:3px;font-weight:400}
.bhppil .routes a::before{content:counter(rt,upper-roman);counter-increment:rt;flex:0 0 44px;height:44px;
  border-radius:12px;background:rgba(255,176,0,.15);color:var(--gold);display:flex;align-items:center;
  justify-content:center;font-family:Fraunces,serif;font-style:italic;font-weight:600;font-size:18px}
.bhppil .routes{counter-reset:rt}
.bhppil .routes a::after{content:"\2192";margin-left:auto;flex:0 0 40px;height:40px;border-radius:50%;
  border:1px solid rgba(255,176,0,.5);color:var(--gold);display:flex;align-items:center;
  justify-content:center;font-size:17px;transition:background .25s,color .25s}
.bhppil .routes a:hover::after{background:var(--gold);color:var(--navy)}

/* generic 6/5 split for prose beside a component (ladder, routes) */
.bhppil .lsplit{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:56px;
  max-width:none;align-items:start}
.bhppil .lsplit .ladder{position:sticky;top:110px}
@media (max-width:940px){.bhppil .lsplit{grid-template-columns:1fr;gap:36px}}

/* hero with portrait (person pages) */
.bhppil .phgrid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:center}
.bhppil .phport img{display:block;width:100%;max-width:430px;aspect-ratio:4/5;object-fit:cover;
  object-position:50% 18%;border-radius:18px;border:1px solid rgba(255,176,0,.4);
  box-shadow:0 30px 70px rgba(0,0,0,.4);justify-self:end;margin-left:auto}
.bhppil .hq{font-family:Fraunces,serif;font-style:italic;font-weight:600;color:var(--gold);
  font-size:clamp(20px,2.4vw,27px);margin:2px 0 20px;padding:12px 24px 12px 20px;display:inline-block;
  border-left:4px solid var(--gold);background:rgba(255,176,0,.09);border-radius:0 10px 10px 0}
@media (max-width:900px){.bhppil .phgrid{grid-template-columns:1fr;gap:34px}
  .bhppil .phport img{max-width:320px;justify-self:start;margin-left:0}}

/* fact row: verbatim credential facts, gold-ruled, Fraunces */
.bhppil .factrow{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;max-width:none;margin-top:6px}
.bhppil .factrow p{font-family:Fraunces,serif;font-size:18px;font-weight:600;line-height:1.4;
  color:#fff;margin:0;padding:8px 0 8px 22px;border-left:3px solid var(--gold);max-width:none}
@media (max-width:900px){.bhppil .factrow{grid-template-columns:1fr 1fr;gap:20px}}
@media (max-width:560px){.bhppil .factrow{grid-template-columns:1fr}}

/* section intro under centered team headings */
.bhppil .secintro{text-align:center;max-width:64ch;margin:0 auto 44px;color:var(--slate)}
.bhppil .bg-dark .secintro,.bhppil .bg-deep .secintro{color:rgba(255,255,255,.75)}

/* leadership cards: photo | content, whole card is the link */
.bhppil .lgrid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.bhppil .lcard{position:relative;display:grid;grid-template-columns:200px 1fr;gap:0;text-decoration:none;
  color:inherit;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhppil .bg-cream .lcard{border-color:transparent}
.bhppil .lcard::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:4px;
  background:var(--gold);transition:right .35s var(--ease)}
.bhppil .lcard:hover{transform:translateY(-4px);box-shadow:0 24px 54px rgba(23,29,58,.14)}
.bhppil .lcard:hover::after{right:0}
.bhppil .lcard[aria-disabled]{cursor:default}
.bhppil .lcard[aria-disabled]:hover{transform:none;box-shadow:none}
.bhppil .lcard[aria-disabled]:hover::after{right:100%}
.bhppil .lphoto{display:block;height:100%;min-height:250px}
.bhppil .lphoto img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.bhppil .lbody{display:flex;flex-direction:column;gap:8px;padding:26px 28px 24px;align-items:flex-start}
.bhppil .lname{font-family:Fraunces,serif;font-weight:600;font-size:23px;letter-spacing:-.01em;color:var(--navy)}
.bhppil .lrole{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.bhppil .lbio{font-size:14.5px;line-height:1.6;color:var(--slate)}
.bhppil .lcard .goldlink{margin-top:auto;padding-top:8px;font-size:14.5px}
.bhppil .chips{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 4px}
.bhppil .chip{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--navy);border:1px solid var(--gold);border-radius:999px;padding:5px 12px}
@media (max-width:1000px){.bhppil .lgrid{grid-template-columns:1fr}}
@media (max-width:640px){.bhppil .lcard{grid-template-columns:1fr}
  .bhppil .lphoto{aspect-ratio:4/3;min-height:0}}

/* standard team cards: photo top, 4-up, second row left-aligned */
.bhppil .tgrid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.bhppil .tcard4{position:relative;display:flex;flex-direction:column;text-decoration:none;color:inherit;
  background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhppil .bg-cream .tcard4{border-color:transparent}
.bhppil .tcard4::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:4px;
  background:var(--gold);transition:right .35s var(--ease)}
.bhppil .tcard4:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(23,29,58,.13)}
.bhppil .tcard4:hover::after{right:0}
.bhppil .tcard4[aria-disabled]{cursor:default}
.bhppil .tcard4[aria-disabled]:hover{transform:none;box-shadow:none}
.bhppil .tcard4[aria-disabled]:hover::after{right:100%}
.bhppil .tphoto{display:block;aspect-ratio:1/1;overflow:hidden}
.bhppil .tphoto img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.bhppil .tmeta{display:flex;flex-direction:column;gap:6px;padding:18px 20px 20px}
.bhppil .tcard4 .lname{font-size:18.5px}
.bhppil .tcard4 .lbio{font-size:13.5px}
@media (max-width:1000px){.bhppil .tgrid4{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.bhppil .tgrid4{grid-template-columns:1fr}}

/* media features: outlets with gold-underline links */
.bhppil .mediagrid{display:grid;grid-template-columns:1fr 1fr;gap:6px 44px;max-width:none;margin-top:34px}
.bhppil .mitem{padding:18px 0;border-bottom:1px solid rgba(23,29,58,.12)}
.bhppil .mitem .outlet{font-family:Fraunces,serif;font-weight:600;font-size:18.5px;max-width:none;margin:0}
.bhppil .mitem .outlet a{color:var(--navy);text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold);
  transition:color .25s var(--ease)}
.bhppil .mitem .outlet a:hover{color:var(--gold)}
.bhppil .mitem p{font-size:14px;color:var(--slate);margin:7px 0 0;max-width:none}
@media (max-width:900px){.bhppil .mediagrid{grid-template-columns:1fr}}

/* built cards: title + gold rule + body + verifiable links */
.bhppil .xgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:none;margin-top:34px}
.bhppil .xcard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px 32px 28px;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhppil .bg-cream .xcard{border-color:transparent}
.bhppil .xcard:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(23,29,58,.12)}
.bhppil .xcard h3{font-size:22px;margin:0 0 14px;max-width:none}
.bhppil .xcard h3::after{content:"";display:block;width:44px;height:3px;background:var(--gold);
  margin-top:12px;border-radius:2px}
.bhppil .xcard p{font-size:15px;color:var(--slate);max-width:none;margin:0 0 14px}
.bhppil .xcard .xlinks{display:flex;flex-wrap:wrap;gap:8px 20px}
.bhppil .xcard .xlinks a{font-size:14px;font-weight:600;color:var(--navy);text-decoration:none;
  box-shadow:inset 0 -2px 0 var(--gold);transition:color .25s var(--ease)}
.bhppil .xcard .xlinks a:hover{color:var(--gold)}
@media (max-width:900px){.bhppil .xgrid{grid-template-columns:1fr}}

/* book pane: styled stand-in until the real cover asset ships */
.bhppil .bookpane{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;
  aspect-ratio:2/3;max-width:280px;margin:0 auto;border-radius:12px;text-align:center;padding:34px 26px;
  background:linear-gradient(165deg,#171D3A 0%,#374763 100%);box-shadow:0 26px 52px rgba(23,29,58,.3);
  border:1px solid rgba(255,176,0,.35)}
.bhppil .bookpane .bt{font-family:Fraunces,serif;font-weight:700;font-size:26px;line-height:1.2;color:var(--gold)}
.bhppil .bookpane .bs{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.65)}
.bhppil .bookpane .ba{font-family:Fraunces,serif;font-style:italic;font-size:15px;color:#fff}

/* revenue calculator: on-brand port of the proforma mockup interactive */
.bhppil .calcbox{background:#fff;border:1px solid rgba(23,29,58,.08);border-radius:22px;
  padding:44px 42px 40px;max-width:860px;margin:0 auto}
.bhppil .cq{font-weight:700;color:var(--navy);font-size:16.5px;margin:26px 0 12px;max-width:none}
.bhppil .cq:first-child{margin-top:0}
.bhppil .loccards{display:flex;flex-wrap:wrap;gap:10px}
.bhppil .loccard{font:inherit;font-size:14.5px;font-weight:600;color:var(--navy);background:#fff;
  border:1.5px solid rgba(23,29,58,.22);border-radius:999px;padding:12px 20px 12px 42px;cursor:pointer;
  position:relative;transition:.22s var(--ease)}
.bhppil .loccard::before{content:"";position:absolute;left:16px;top:50%;transform:translateY(-50%);
  width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(23,29,58,.35);background:#fff;
  transition:.22s var(--ease)}
.bhppil .loccard:hover{border-color:var(--gold);box-shadow:0 4px 14px rgba(23,29,58,.08)}
.bhppil .loccard[aria-pressed="true"]{background:var(--navy);color:#fff;border-color:var(--navy)}
.bhppil .loccard[aria-pressed="true"]::before{background:var(--gold);border-color:var(--gold);
  content:"\2713";display:flex;align-items:center;justify-content:center;font-size:10.5px;
  font-weight:700;color:var(--navy)}
.bhppil .steppers .steprow{display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:10px 0;border-bottom:1px solid rgba(23,29,58,.08)}
.bhppil .steprow .lbl{font-size:15px;color:var(--navy);font-weight:500}
.bhppil .stepctl{display:inline-flex;align-items:stretch;border:1.5px solid rgba(23,29,58,.22);
  border-radius:12px;overflow:hidden;background:#fff}
.bhppil .stepctl button{width:42px;border:0;background:var(--cream);font-size:18px;line-height:1;
  color:var(--navy);cursor:pointer;transition:.18s var(--ease);display:flex;align-items:center;
  justify-content:center}
.bhppil .stepctl button:hover{background:var(--gold)}
.bhppil .stepctl input{width:62px;height:42px;text-align:center;font:inherit;font-size:15.5px;
  font-weight:600;border:0;border-left:1.5px solid rgba(23,29,58,.14);
  border-right:1.5px solid rgba(23,29,58,.14);color:var(--navy);-moz-appearance:textfield}
.bhppil .stepctl input::-webkit-outer-spin-button,
.bhppil .stepctl input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.bhppil .seg{display:inline-flex;border:1.5px solid rgba(23,29,58,.22);border-radius:999px;overflow:hidden}
.bhppil .seg button{font:inherit;font-size:14.5px;font-weight:600;padding:12px 22px;border:0;
  background:#fff;color:var(--slate);cursor:pointer;transition:.2s var(--ease)}
.bhppil .seg button[aria-pressed="true"]{background:var(--navy);color:#fff}
.bhppil .calcgo{margin-top:26px}
.bhppil .calcgo .pilbtn{border:0;cursor:pointer;font:inherit}
.bhppil .calcgo .pilbtn:disabled{background:#EFE9DA;color:#8A93A8;box-shadow:none;
  cursor:not-allowed;transform:none;opacity:1}
.bhppil .helper{font-size:13.5px;color:var(--slate);margin:10px 0 0}
.bhppil .result{display:none;margin-top:30px;background:linear-gradient(165deg,#171D3A 0%,#374763 130%);
  border-radius:18px;padding:34px 34px 30px;color:#fff;text-align:center}
.bhppil .result.on{display:block}
.bhppil .result .fig{font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:clamp(24px,3vw,34px);color:var(--gold)}
.bhppil .result .figlbl{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(255,255,255,.7);margin:4px 0 18px}
.bhppil .result .rnote{font-size:13px;color:rgba(255,255,255,.65);margin:0 0 20px;max-width:none}
.bhppil .calcnote{font-size:13.5px;color:var(--slate);max-width:76ch;margin:26px auto 0}
.bhppil .calcbtn2{text-align:center;margin:26px 0 0;max-width:none}
@media (max-width:640px){.bhppil .calcbox{padding:28px 20px 26px}}

/* linked photo gallery (photography page) */
.bhppil .pgallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:none;margin-top:34px}
.bhppil .pgallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;display:block}
@media (max-width:900px){.bhppil .pgallery{grid-template-columns:1fr 1fr}}

/* goldlink chips row (linklist / engine-links) */
.bhppil .statecloud a{display:inline-block;font-size:13.5px;font-weight:600;color:var(--navy);
  text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:999px;
  padding:9px 16px;transition:.25s var(--ease)}
.bhppil .statecloud a:hover{border-color:var(--gold);transform:translateY(-2px)}
.bhppil .bg-white .statecloud a,.bhppil .bg-dark .statecloud a,.bhppil .bg-deep .statecloud a{background:var(--cream)}

/* contact split: white form card | navy direct card */
.bhppil .ctgrid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:26px;align-items:start}
.bhppil .ctform{background:#fff;border-radius:22px;padding:44px 42px 40px;border:1px solid rgba(23,29,58,.07)}
.bhppil .ctform h2{max-width:none}
.bhppil .ctlead{color:var(--slate);margin:0 0 26px;max-width:none}
.bhppil .ctmicro{font-size:13.5px;color:var(--slate);margin:14px 0 0}
.bhppil .ctdirect{background:linear-gradient(165deg,#171D3A 0%,#374763 130%);border-radius:22px;
  padding:44px 40px 40px;color:#fff;position:sticky;top:120px}
.bhppil .ctdirect h2{color:#fff;font-size:28px;max-width:none;margin-bottom:20px}
.bhppil .ctphone{display:inline-block;font-family:Fraunces,serif;font-weight:600;font-size:30px;
  color:var(--gold);text-decoration:none;margin-bottom:4px}
.bhppil .cthours{color:rgba(255,255,255,.75);font-size:14.5px;margin:0 0 22px;max-width:none}
.bhppil .ctaddr{display:block;color:#fff;text-decoration:none;line-height:1.6;margin-bottom:18px;
  box-shadow:none;border-left:3px solid var(--gold);padding-left:14px}
.bhppil .ctaddr:hover{color:var(--gold)}
.bhppil .ctmap{border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.18);margin-bottom:20px}
.bhppil .ctmap iframe{display:block;width:100%;height:230px;border:0}
.bhppil .ctcal{color:rgba(255,255,255,.8);font-size:15px;line-height:1.7;margin:0;max-width:none}
@media (max-width:900px){.bhppil .ctgrid{grid-template-columns:1fr}
  .bhppil .ctdirect{position:static}.bhppil .ctform{padding:32px 24px 28px}}

/* Gravity Forms skin: 48px inputs, slate borders, gold focus, gold submit */
.bhppil .ctform .gform_wrapper{margin:0}
.bhppil .ctform .gform_wrapper input[type=text],.bhppil .ctform .gform_wrapper input[type=email],
.bhppil .ctform .gform_wrapper input[type=tel],.bhppil .ctform .gform_wrapper select{
  width:100%;min-height:48px;padding:10px 14px;font:inherit;font-size:15.5px;color:var(--navy);
  background:#fff;border:1.5px solid var(--slate);border-radius:10px;outline:none;
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.bhppil .ctform .gform_wrapper textarea{width:100%;min-height:130px;padding:12px 14px;font:inherit;
  font-size:15.5px;color:var(--navy);border:1.5px solid var(--slate);border-radius:10px;outline:none;
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.bhppil .ctform .gform_wrapper input:focus,.bhppil .ctform .gform_wrapper select:focus,
.bhppil .ctform .gform_wrapper textarea:focus{border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(255,176,0,.25)}
.bhppil .ctform .gform_wrapper .gfield_label{font-size:13.5px;font-weight:600;color:var(--navy);
  margin-bottom:6px;display:inline-block}
.bhppil .ctform .gform_wrapper .gfield_required{color:#B00020}
.bhppil .ctform .gform_wrapper .gform_fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}
.bhppil .ctform .gform_wrapper .gfield{grid-column:span 2}
.bhppil .ctform .gform_wrapper #field_2_6,
.bhppil .ctform .gform_wrapper #field_2_7{grid-column:span 1}
.bhppil .ctform .gfield--type-honeypot,.bhppil .ctform .gfield--type-hidden{display:none}
.bhppil .ctform .gfield_required{margin-left:4px}
.bhppil .ctform .gform_wrapper .gform_footer{margin-top:22px}
.bhppil .ctform .gform_wrapper input[type=submit],.bhppil .ctform .gform_wrapper .gform_button,
.bhppil .ctform .gform_wrapper button[type=submit]{
  display:inline-flex!important;align-items:center;width:auto!important;
  background:var(--gold)!important;color:var(--navy)!important;font-weight:700;
  font-size:16px!important;padding:16px 34px!important;border:0!important;border-radius:999px!important;
  cursor:pointer;box-shadow:0 16px 40px rgba(255,176,0,.28)!important;
  transition:transform .25s var(--ease)}
.bhppil .ctform .gform_wrapper input[type=submit]:hover,
.bhppil .ctform .gform_wrapper button[type=submit]:hover{transform:translateY(-2px)}
.bhppil .ctform .gform_wrapper .gform_validation_errors,.bhppil .ctform .gfield_validation_message{
  color:#B00020;font-size:13.5px}
@media (max-width:640px){.bhppil .ctform .gform_wrapper .gform_fields{grid-template-columns:1fr}
  .bhppil .ctform .gform_wrapper .gfield,.bhppil .ctform .gform_wrapper .gfield--type-text:nth-of-type(-n+2){grid-column:span 1}}

/* values line on dark standards band */
.bhppil .valuesline{font-family:Fraunces,serif;font-weight:600;font-size:clamp(23px,3vw,33px);
  line-height:1.3;color:#fff;max-width:none;margin:0 0 22px}
.bhppil .valuesline em{font-style:italic;color:var(--gold)}

/* values strip: the three values as a numbered triptych */
.bhppil .valstrip{display:grid;grid-template-columns:repeat(3,1fr);max-width:none;margin-top:56px;
  border-top:1px solid rgba(255,176,0,.35);border-bottom:1px solid rgba(255,176,0,.35)}
.bhppil .valstrip>div{padding:38px 26px;text-align:center;border-left:1px solid rgba(255,176,0,.22)}
.bhppil .valstrip>div:first-child{border-left:none}
.bhppil .valstrip .vn{display:block;font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:20px;color:var(--gold);margin-bottom:10px}
.bhppil .valstrip .vt{font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:clamp(21px,2.2vw,27px);color:#fff;line-height:1.25}
@media (max-width:760px){.bhppil .valstrip{grid-template-columns:1fr}
  .bhppil .valstrip>div{border-left:none;border-top:1px solid rgba(255,176,0,.22);padding:24px 10px}
  .bhppil .valstrip>div:first-child{border-top:none}}

/* refusal cards: numbered statements, said out loud */
.bhppil .rgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:none;margin-top:40px;
  counter-reset:rf}
.bhppil .rcard{counter-increment:rf;position:relative;background:var(--cream);border-radius:18px;
  padding:40px 36px 36px 122px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhppil .bg-cream .rcard{background:#fff;border:1px solid var(--line)}
.bhppil .rcard:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(23,29,58,.12)}
.bhppil .rcard::before{content:"0" counter(rf);position:absolute;left:36px;top:34px;
  font-family:Fraunces,serif;font-style:italic;font-weight:600;font-size:44px;line-height:1;
  color:var(--gold)}
.bhppil .rcard::after{content:"";position:absolute;left:40px;top:88px;width:34px;height:3px;
  background:rgba(255,176,0,.45);border-radius:2px}
.bhppil .rcard p{margin:0;max-width:none;font-size:17px;line-height:1.6;font-weight:500;color:var(--navy)}
@media (max-width:860px){.bhppil .rgrid{grid-template-columns:1fr}
  .bhppil .rcard{padding:88px 30px 30px 30px}
  .bhppil .rcard::before{left:30px;top:28px}.bhppil .rcard::after{left:34px;top:82px}}

/* proof split: the facility photo carries the stat grid */
.bhppil .proofsplit{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;
  align-items:stretch;margin-top:8px}
.bhppil .proofsplit .pimgwrap{position:relative;border-radius:18px;overflow:hidden;min-height:340px;
  border:1px solid rgba(255,176,0,.4);box-shadow:0 26px 60px rgba(0,0,0,.35)}
.bhppil .proofsplit .pimgwrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bhppil .proofsplit .pimgwrap figcaption{position:absolute;left:0;right:0;bottom:0;padding:44px 22px 16px;
  font-size:13px;font-weight:600;letter-spacing:.04em;color:#fff;
  background:linear-gradient(180deg,rgba(11,15,32,0) 0%,rgba(11,15,32,.88) 75%)}
.bhppil .proofsplit .sgrid{grid-template-columns:1fr 1fr}
@media (max-width:900px){.bhppil .proofsplit{grid-template-columns:1fr}}

/* floating headshot mosaic: the 13 real faces as the hero visual */
.bhppil .phmosaic{position:relative;display:grid;grid-template-columns:repeat(4,84px);
  gap:22px 20px;justify-content:center;align-content:center;padding:20px 0}
.bhppil .phmosaic .mz{display:block;border-radius:50%;overflow:hidden;width:84px;height:84px;
  border:2px solid rgba(255,176,0,.55);box-shadow:0 14px 34px rgba(0,0,0,.35);
  animation:bhp-float 7s ease-in-out infinite}
.bhppil .phmosaic .mz img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.bhppil .phmosaic .mz:nth-child(4n+2){transform:translateY(26px)}
.bhppil .phmosaic .mz:nth-child(4n+3){transform:translateY(-14px)}
.bhppil .phmosaic .mz:nth-child(4n){transform:translateY(14px)}
.bhppil .phmosaic .mz1{animation-delay:-1.2s}.bhppil .phmosaic .mz2{animation-delay:-2.4s}
.bhppil .phmosaic .mz3{animation-delay:-3.6s}.bhppil .phmosaic .mz4{animation-delay:-4.8s}
.bhppil .phmosaic .mz5{animation-delay:-6s}
@keyframes bhp-float{0%,100%{margin-top:0}50%{margin-top:-9px}}
@media (max-width:900px){.bhppil .phmosaic{grid-template-columns:repeat(5,64px);gap:16px 14px;padding:6px 0}
  .bhppil .phmosaic .mz{width:64px;height:64px}}
@media (prefers-reduced-motion:reduce){.bhppil .phmosaic .mz{animation:none}}

/* centered section headings: the base h2 is a 26ch left-anchored box, so
   centered sections must center the box itself, not just the text */
.bhppil .seccenter{text-align:center;margin-left:auto;margin-right:auto;max-width:none}

/* centered statement band: oversized Fraunces quote between two short lines */
.bhppil .bigquote{text-align:center;max-width:900px;margin:0 auto}
.bhppil .bigquote h2{margin-left:auto;margin-right:auto}
.bhppil .bigquote>p{max-width:none}
.bhppil .bigquote .bq-mark{display:block;font-family:Fraunces,serif;font-size:110px;line-height:.4;
  color:var(--gold);margin:34px 0 6px}
.bhppil .bigquote .bq{font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:clamp(26px,3.6vw,40px);line-height:1.28;color:var(--navy);margin:0 0 26px;
  text-wrap:balance}
.bhppil .bigquote .bq-close{font-family:Fraunces,serif;font-style:italic;font-size:19px;color:var(--slate)}
.bhppil .bg-dark .bigquote .bq,.bhppil .bg-deep .bigquote .bq{color:#fff}
.bhppil .bg-dark .bigquote .bq-close,.bhppil .bg-deep .bigquote .bq-close{color:rgba(255,255,255,.75)}
.bhppil .bg-dark .prose h3,.bhppil .bg-deep .prose h3{color:#fff}
.bhppil .vq{font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:clamp(26px,3vw,36px);line-height:1.3;color:#fff;margin:0 0 10px;max-width:none;
  padding-left:22px;border-left:4px solid var(--gold)}
.bhppil .vqa{font-family:Fraunces,serif;font-style:italic;font-size:15.5px;color:var(--gold);
  margin:0 0 30px;padding-left:26px}
.bhppil .vstage{max-width:920px;margin:40px auto 0}
.bhppil .vstage .vframe{box-shadow:0 34px 80px rgba(0,0,0,.45)}

/* horizontal story rail: the section pins and the chapters travel sideways
   like film frames. Default is a stacked fallback; JS adds .hs-on to arm the
   cinematic mode on desktop with motion allowed. */
.bhppil .hs-outer{max-width:none}
.bhppil .hs-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;
  gap:18px 48px;margin-bottom:26px}
.bhppil section:has(.hs-outer){padding-top:34px;padding-bottom:34px}
.bhppil .hs-top h2{margin:0}
.bhppil .hs-meterwrap{display:none;align-items:center;gap:16px;flex:0 1 340px}
.bhppil .hs-on .hs-meterwrap{display:flex}
.bhppil .hs-meter{flex:1;height:2px;background:rgba(255,255,255,.18);border-radius:2px;overflow:hidden}
.bhppil .hs-meter i{display:block;height:100%;width:0;background:var(--gold)}
.bhppil .hs-count{font-family:Fraunces,serif;font-style:italic;font-weight:600;
  color:var(--gold);font-size:17px;white-space:nowrap}
.bhppil .hs-track{display:grid;grid-template-columns:1fr 1fr;gap:38px 26px;padding-top:26px}
@media (max-width:860px){.bhppil .hs-track{grid-template-columns:1fr;gap:30px}}
.bhppil .hs-slide{position:relative;padding:60px 34px 34px;border:1px solid rgba(255,255,255,.14);
  border-radius:22px;background:rgba(255,255,255,.045)}
.bhppil .hs-num{position:absolute;top:-24px;right:22px;font-family:Fraunces,serif;font-style:italic;
  font-weight:700;font-size:110px;line-height:1;color:transparent;
  -webkit-text-stroke:1.5px rgba(255,176,0,.55);pointer-events:none}
.bhppil .hs-k{display:block;font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:clamp(24px,2.4vw,30px);color:var(--gold);margin-bottom:16px}
.bhppil .hs-slide p{margin:0;max-width:none;font-size:17.5px;line-height:1.75;color:rgba(255,255,255,.88)}
.bhppil .hs-slide a{color:#fff;text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold);
  transition:color .25s var(--ease)}
.bhppil .hs-slide a:hover{color:var(--gold)}
.bhppil .bg-dark .bigquote .bq em,.bhppil .bg-deep .bigquote .bq em{color:var(--gold)}
.bhppil .tgrid4.t3{grid-template-columns:repeat(3,1fr)}
@media (max-width:1000px){.bhppil .tgrid4.t3{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.bhppil .tgrid4.t3{grid-template-columns:1fr}}

/* chips on the dark flip back */
.bhppil .chip-dark{color:#fff;border-color:rgba(255,176,0,.75)}
.bhppil .f3-back .chips{justify-content:flex-start;margin:0}
.bhppil .f3-back .godim{opacity:.55;box-shadow:none;cursor:default;font-size:13px;
  letter-spacing:.06em;text-transform:uppercase}

/* slide cards: full photo, name plate at rest, bio slides up on hover */
.bhppil .tslide{position:relative;display:block;border-radius:16px;overflow:hidden;
  aspect-ratio:4/5;text-decoration:none;color:inherit;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhppil .tslide:hover{transform:translateY(-4px);box-shadow:0 24px 54px rgba(23,29,58,.22)}
.bhppil .tslide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.bhppil .tslide .ts-plate{position:absolute;left:0;right:0;bottom:0;padding:44px 20px 16px;z-index:1;
  background:linear-gradient(180deg,rgba(11,15,32,0) 0%,rgba(11,15,32,.88) 78%);
  display:flex;flex-direction:column;gap:2px;transition:opacity .3s var(--ease)}
.bhppil .tslide .lname{color:#fff;font-size:19px}
.bhppil .tslide .lrole{font-size:10.5px}
.bhppil .tslide .ts-over{position:absolute;inset:0;z-index:2;padding:24px 22px;
  display:flex;flex-direction:column;gap:6px;justify-content:flex-end;
  background:linear-gradient(180deg,rgba(23,29,58,.42) 0%,rgba(11,15,32,.94) 62%);
  opacity:0;transform:translateY(14px);transition:opacity .32s var(--ease),transform .32s var(--ease)}
.bhppil .tslide:hover .ts-over,.bhppil .tslide:focus-visible .ts-over{opacity:1;transform:none}
.bhppil .tslide:hover .ts-plate{opacity:0}
.bhppil .tslide .ts-bio{font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.85)}
.bhppil .tslide .ts-go{margin-top:8px;font-size:13px;font-weight:600;color:#fff;
  box-shadow:inset 0 -2px 0 var(--gold);align-self:flex-start;padding-bottom:2px}
.bhppil .tslide .ts-dim{box-shadow:none;opacity:.6;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase}
.bhppil .tslide[aria-disabled]{cursor:default}
@media (hover:none){.bhppil .tslide .ts-over{opacity:1;transform:none;
  background:linear-gradient(180deg,rgba(23,29,58,0) 0%,rgba(11,15,32,.95) 45%)}
  .bhppil .tslide .ts-plate{opacity:0}}

/* numbered insight blocks (roman) */
.bhppil .igrid.nums{counter-reset:ib}
.bhppil .igrid.nums .iblock{counter-increment:ib;position:relative;padding-top:64px}
.bhppil .igrid.nums .iblock::before{content:counter(ib,upper-roman);position:absolute;top:22px;left:30px;
  font-family:Fraunces,serif;font-style:italic;font-weight:600;font-size:30px;color:var(--gold)}

/* journey timeline: gold spine, node dots, year plates */
.bhppil .jline{position:relative;max-width:860px;margin:38px auto 0;padding-left:0}
.bhppil .jline::before{content:"";position:absolute;left:24px;top:6px;bottom:6px;width:2px;
  background:linear-gradient(180deg,var(--gold) 0%,rgba(255,176,0,.25) 100%)}
.bhppil .jitem{position:relative;padding:0 0 40px 78px;max-width:none}
.bhppil .jitem:last-child{padding-bottom:6px}
.bhppil .jitem::before{content:"";position:absolute;left:17px;top:6px;width:16px;height:16px;
  border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(255,176,0,.22)}
.bhppil .jitem .jk{display:block;font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:22px;color:var(--gold);margin-bottom:8px}
.bhppil .bg-white .jitem .jk,.bhppil .bg-cream .jitem .jk{color:#B77E00}
.bhppil .jitem p{max-width:none;margin:0}
@media (max-width:640px){.bhppil .jitem{padding-left:58px}}

/* press wall: captured coverage, image cards + branded tiles */
.bhppil .pressgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:none;margin-top:38px}
.bhppil .pcard-x{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);
  border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bhppil .prose a.pcard-x,.bhppil .prose a.pcard-x:hover{box-shadow:none;color:inherit;
  border-bottom:none;background:#fff;text-decoration:none !important}
.bhppil .prose a.pcard-x *{text-decoration:none}
.bhppil .prose .pressgrid a{text-decoration:none}
.bhppil .prose a.pcard-x:hover{transform:translateY(-4px);box-shadow:0 24px 52px rgba(23,29,58,.16)}
.bhppil .bg-cream .pcard-x{border-color:transparent}
.bhppil .pcard-x:hover{transform:translateY(-4px);box-shadow:0 24px 52px rgba(23,29,58,.16)}
.bhppil .pcard-x .pim{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--deep)}
.bhppil .pcard-x .pim img{display:block;width:100%;height:100%;object-fit:cover;
  transition:transform .5s var(--ease)}
.bhppil .pcard-x:hover .pim img{transform:scale(1.045)}
.bhppil .pcard-x .pim.ptile{display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#232B4A 0%,#0E1428 100%)}
.bhppil .pcard-x .pim.ptile b{font-family:Fraunces,serif;font-style:italic;font-weight:600;
  font-size:22px;color:var(--gold);padding:0 30px;text-align:center;line-height:1.3}
.bhppil .pcard-x .pmeta{display:flex;flex-direction:column;gap:6px;padding:18px 22px 20px}
.bhppil .pcard-x .pout{font-family:Fraunces,serif;font-weight:600;font-size:18px;color:var(--navy)}
.bhppil .pcard-x .pline{font-size:13.5px;line-height:1.55;color:var(--slate)}
.bhppil .pcard-x .pgo{margin-top:4px;font-size:12px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--navy);box-shadow:inset 0 -2px 0 var(--gold);align-self:flex-start}
@media (max-width:1000px){.bhppil .pressgrid{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.bhppil .pressgrid{grid-template-columns:1fr}}

/* built cards with live screenshots on top */
.bhppil .xcard{padding:0}
.bhppil .xcard .xim{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--deep)}
.bhppil .xcard .xim img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0}
.bhppil .xcard .xbody{display:block;padding:28px 32px 28px}
.bhppil .xcard.noimg .xbody{padding-top:32px}

/* real book cover */
.bhppil .bookimg{display:block;width:100%;max-width:280px;margin:0 auto;border-radius:10px;
  box-shadow:0 26px 52px rgba(23,29,58,.32)}

/* insight panels keep their cream face on dark bands */
.bhppil .bg-dark .prose .iblock,.bhppil .bg-deep .prose .iblock{background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.13);border-top:1px solid rgba(255,255,255,.13);
  border-radius:14px;padding:30px 30px 26px}
.bhppil .bg-dark .prose .iblock h2,.bhppil .bg-deep .prose .iblock h2,
.bhppil .bg-dark .prose .iblock h3,.bhppil .bg-deep .prose .iblock h3{color:#fff}
.bhppil .bg-dark .prose .iblock p,.bhppil .bg-deep .prose .iblock p{color:rgba(255,255,255,.78)}

.bhppil .pcrumbs{display:flex;align-items:center;gap:10px;font-size:13px;
  color:rgba(255,255,255,.6);margin:0 0 34px}
.bhppil .pcrumbs a{color:rgba(255,255,255,.7);text-decoration:none}
.bhppil .pcrumbs a:hover{color:var(--gold)}
.bhppil .pcrumbs b{font-weight:500;color:rgba(255,255,255,.85)}

.bhppil .pilbtn{display:inline-flex;align-items:center;gap:10px;background:var(--gold);
  color:var(--navy);font-weight:600;font-size:16px;padding:17px 32px;border-radius:999px;
  text-decoration:none !important;box-shadow:0 18px 46px rgba(255,176,0,.28);
  transition:transform .25s var(--ease)}
.bhppil .pilbtn:hover{transform:translateY(-3px)}

.bhppil .prose .pquote{display:flex;gap:18px;align-items:flex-start;background:#fff;
  border:1px solid var(--line);border-radius:14px;padding:26px 28px;margin:0 0 18px;max-width:76ch}
.bhppil .bg-white .prose .pquote{background:var(--cream);border-color:transparent}
.bhppil .prose .pquote img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:0 0 56px}
.bhppil .prose .pquote p{font-size:16.5px;line-height:1.65;margin:0 0 10px}
.bhppil .prose .pquote .who{font-size:13px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:var(--slate);margin:0}

.bhppil .prose details{border:1px solid var(--line);border-radius:12px;padding:0 20px;
  margin-bottom:12px;background:#fff;max-width:76ch}
.bhppil .prose summary{list-style:none;cursor:pointer;display:flex;align-items:center;
  justify-content:space-between;gap:16px;padding:18px 0;font-weight:600;font-size:17px}
.bhppil .prose summary::-webkit-details-marker{display:none}
.bhppil .prose summary::after{content:"+";font-family:var(--disp);font-size:1.5rem;
  color:var(--gold);line-height:1;transition:transform .3s var(--ease);flex:0 0 auto}
.bhppil .prose details[open] summary::after{transform:rotate(45deg)}
.bhppil .prose details > div{overflow:hidden;transition:height .38s var(--ease)}
.bhppil .prose details > div p{padding-bottom:18px;margin:0;color:var(--slate);font-size:16px}
@media (prefers-reduced-motion:reduce){.bhppil .prose details > div{transition:none}}

.bhppil .prose .authorline{font-size:14.5px;color:var(--slate);border-top:1px solid var(--line);
  padding-top:20px;margin-top:34px;max-width:76ch}

@media (max-width:1000px){
  .bhppil .grid.c3,.bhppil .grid.c4,.bhppil .sgrid.c3,.bhppil .sgrid.c4{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .bhppil section{padding:72px 0}
  .bhppil .phero{padding:128px 0 64px}
  .bhppil .grid.c2,.bhppil .grid.c3,.bhppil .grid.c4,.bhppil .sgrid.c3,.bhppil .sgrid.c4{grid-template-columns:1fr}
}

/* ---- guide: chapter rail + chapter footer nav ---------------------------- */
.bhpblog .chapters{background:#fff;border:1px solid var(--line);border-radius:12px;
  padding:20px 20px 16px;box-shadow:0 10px 30px rgba(23,29,58,.06)}
.bhpblog .chapters .lbl{font-size:11px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--slate);margin-bottom:12px}
.bhpblog .chapters ol{list-style:none;margin:0;padding:0;counter-reset:ch}
.bhpblog .chapters .ov{display:block;padding:9px 0 12px;margin-bottom:8px;
  border-bottom:1px solid var(--line);font-size:14px;line-height:1.35;color:var(--slate);
  text-decoration:none;font-weight:600;transition:color .25s var(--ease)}
.bhpblog .chapters .ov:hover{color:var(--navy)}
.bhpblog .chapters .ov.on{color:var(--navy)}
.bhpblog .chapters .ov span{display:block;font-size:10.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gold);margin-top:3px}
.bhpblog .chapters li{counter-increment:ch;margin-bottom:2px}
.bhpblog .chapters ol a{display:flex;gap:11px;padding:8px 0;font-size:14px;line-height:1.4;
  color:var(--slate);text-decoration:none;transition:color .25s var(--ease)}
.bhpblog .chapters ol a::before{content:counter(ch);flex:0 0 20px;font-family:var(--disp);
  font-weight:600;color:var(--gold);font-size:14px}
.bhpblog .chapters ol a:hover{color:var(--navy)}
.bhpblog .chapters li.on a{color:var(--navy);font-weight:600}
.bhpblog .chapters li.on a::before{color:var(--navy)}

.bhpblog .chapnav{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:70ch;margin:40px 0 0}
.bhpblog .chapnav a{display:block;border:1px solid var(--line);border-radius:var(--r);
  padding:18px 20px;text-decoration:none;color:var(--navy);transition:.28s var(--ease)}
.bhpblog .chapnav a:hover{border-color:var(--gold);transform:translateY(-2px)}
.bhpblog .chapnav .k{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--slate);margin-bottom:6px}
.bhpblog .chapnav b{display:block;font-family:var(--disp);font-size:1.05rem;line-height:1.3}
.bhpblog .chapnav .nx{text-align:right}
@media (max-width:700px){.bhpblog .chapnav{grid-template-columns:1fr}.bhpblog .chapnav .nx{text-align:left}}

/* ---- video: the stage ---------------------------------------------------- */
.bhpvid{--navy:var(--bhp-navy,#171D3A);--deep:#112337;--gold:var(--bhp-gold,#FFB000);--cream:var(--bhp-cream,#F7F2E7);--slate:var(--bhp-slate,#374763);
  --line:rgba(23,29,58,.12);--disp:var(--bhp-disp,"Fraunces",Georgia,serif);
  --body:var(--bhp-body,"Geist",-apple-system,Segoe UI,Roboto,sans-serif);
  --ease:cubic-bezier(.22,.61,.36,1);font-family:var(--body);color:var(--navy)}
.bhpvid *,.bhpvid *::before,.bhpvid *::after{box-sizing:border-box}
.bhpvid .wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.bhpvid .stage{position:relative;padding:122px 0 64px;overflow:hidden;
  background:linear-gradient(160deg,#171D3A 0%,#141F3B 45%,#112337 100%)}
.bhpvid .stage::before{content:"";position:absolute;left:50%;top:6%;width:1100px;height:620px;
  transform:translateX(-50%);pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,176,0,.08),transparent 70%)}
.bhpvid .stage .wrap{position:relative;max-width:1008px}
.bhpvid .crumbs{margin-bottom:26px}
.bhpvid .crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;
  font-size:13px;color:rgba(255,255,255,.6)}
.bhpvid .crumbs a{color:rgba(255,255,255,.7);text-decoration:none}
.bhpvid .crumbs a:hover{color:var(--gold)}
.bhpvid .crumbs li+li::before{content:"›";margin-right:8px;opacity:.5}

.bhpvid .plate{display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,176,0,.28);border-radius:10px;
  padding:11px 16px;margin-bottom:12px;flex-wrap:wrap}
.bhpvid .plate .mark{font-family:var(--disp);font-size:14.5px;color:#fff}
.bhpvid .plate .mark b{color:var(--gold);font-weight:600}
.bhpvid .plate .tag{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.5);margin-left:8px}
.bhpvid .plate .rt{display:flex;align-items:center;gap:12px}
.bhpvid .plate .dur{font-size:13px;color:rgba(255,255,255,.72)}
.bhpvid .chip{font-size:10.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  color:var(--navy);background:var(--gold);padding:5px 11px;border-radius:999px;text-decoration:none}

.bhpvid .frame{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;
  border:1px solid rgba(255,176,0,.5);
  box-shadow:0 10px 30px rgba(9,13,28,.5),0 26px 70px rgba(9,13,28,.45),0 50px 120px rgba(9,13,28,.4)}
.bhpvid .frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.bhpvid .facade{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;
  cursor:pointer;background:#000;display:block}
.bhpvid .facade img{width:100%;height:100%;object-fit:cover;display:block}
.bhpvid .facade::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(17,35,55,.1),rgba(17,35,55,.55))}
.bhpvid .facade .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:96px;height:68px;border-radius:16px;background:#FF0033;display:flex;
  align-items:center;justify-content:center;z-index:2;transition:transform .3s var(--ease),background .2s;
  box-shadow:0 12px 34px rgba(8,14,32,.45)}
.bhpvid .facade:hover .play,.bhpvid .facade:focus-visible .play{transform:translate(-50%,-50%) scale(1.06);background:#e50029}
.bhpvid .facade .play svg{width:34px;height:34px;fill:#fff;margin-left:4px}
.bhpvid .facade:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.bhpvid .facade .badge{position:absolute;right:14px;bottom:14px;z-index:2;background:rgba(9,13,28,.82);
  color:#fff;font-size:12.5px;padding:5px 10px;border-radius:6px}

.bhpvid h1{font-family:var(--disp);font-weight:600;color:#fff;line-height:1.1;letter-spacing:-.02em;
  font-size:clamp(2rem,4.6vw,3.2rem);margin:28px 0 0;max-width:30ch;text-wrap:balance}
.bhpvid .vmeta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;
  font-size:14px;color:rgba(255,255,255,.66)}

.bhpvid .moments{margin-top:34px}
.bhpvid .moments h2{font-family:var(--disp);font-weight:600;color:#fff;font-size:1.3rem;
  letter-spacing:-.01em;margin:0 0 14px}
.bhpvid .moments h2 em{font-family:var(--disp);font-style:italic;color:var(--gold);box-shadow:none}
.bhpvid .momhead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.bhpvid .momhead h2{margin:0}
.bhpvid .marrows{display:flex;gap:8px;flex:0 0 auto}
.bhpvid .marrows button{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.22);color:#fff;display:flex;align-items:center;
  justify-content:center;cursor:pointer;transition:.25s var(--ease);padding:0}
.bhpvid .marrows button:hover:not(:disabled){background:var(--gold);border-color:var(--gold);color:var(--navy)}
.bhpvid .marrows button:disabled{opacity:.3;cursor:default}
.bhpvid .marrows svg{width:16px;height:12px;fill:none;stroke:currentColor;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round}
.bhpvid .pills{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scroll-behavior:smooth;
  scrollbar-width:none;-ms-overflow-style:none}
.bhpvid .pills::-webkit-scrollbar{display:none}
.bhpvid .pills button{flex:0 0 auto;min-height:44px;display:flex;align-items:center;gap:9px;
  background:transparent;border:1px solid rgba(255,176,0,.55);border-radius:999px;
  padding:10px 18px;color:#fff;font-size:13.5px;cursor:pointer;white-space:nowrap;
  transition:.25s var(--ease);font-family:var(--body)}
.bhpvid .pills button span{color:var(--gold);font-weight:600}
.bhpvid .pills button:hover{background:rgba(255,176,0,.14)}
.bhpvid .pills button.on{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.bhpvid .pills button.on span{color:var(--navy)}

/* ---- video: light band ---------------------------------------------------- */
.bhpvid .about{padding:72px 0}
.bhpvid .about .g{display:grid;grid-template-columns:1.35fr .65fr;gap:52px;align-items:start}
.bhpvid h2{font-family:var(--disp);font-weight:600;letter-spacing:-.015em;
  font-size:clamp(1.5rem,2.6vw,1.95rem);line-height:1.22;margin:0 0 18px}
.bhpvid h2 em{font-family:var(--disp);font-style:italic;color:var(--gold);box-shadow:none}
.bhpvid .about p{font-size:20px;line-height:1.7;margin:0 0 18px;max-width:62ch}
.bhpvid .why{font-family:var(--disp);font-style:italic;font-size:1.1rem;line-height:1.5;
  border-left:3px solid var(--gold);padding-left:18px;color:var(--navy);margin-top:26px}
.bhpvid .readcard{background:var(--cream);border:2px solid var(--gold);border-radius:14px;
  padding:26px 24px;text-decoration:none;display:block;color:var(--navy);
  transition:transform .28s var(--ease),box-shadow .28s var(--ease)}
.bhpvid .readcard:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(23,29,58,.14)}
.bhpvid .readcard .k{font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--slate);margin-bottom:8px}
.bhpvid .readcard b{display:block;font-family:var(--disp);font-size:1.2rem;line-height:1.3;margin-bottom:8px}
.bhpvid .readcard .pt{font-size:14.5px;line-height:1.6;color:var(--slate);margin:0 0 12px}
.bhpvid .readcard .go{font-weight:600;box-shadow:inset 0 -2px 0 var(--gold)}
.bhpvid .upnext .uplead{font-size:16.5px;line-height:1.6;color:var(--slate);max-width:58ch;margin:10px 0 6px}
.bhpvid .share{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:26px}
.bhpvid .share .lbl{flex:0 0 100%;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.bhpvid .share a,.bhpvid .share button{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);
  background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;
  transition:.25s var(--ease)}
.bhpvid .share a:hover,.bhpvid .share button:hover{border-color:var(--gold);background:rgba(255,176,0,.1)}
.bhpvid .share svg{width:17px;height:17px;fill:var(--slate)}
.bhpvid .copied{font-size:13px;color:var(--slate);opacity:0;transition:opacity .3s}
.bhpvid .copied.on{opacity:1}

/* ---- video: up next + subscribe ------------------------------------------- */
.bhpvid .upnext{background:var(--cream);padding:72px 0}
.bhpvid .upnext .k{font-size:11.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--slate);margin-bottom:10px}
.bhpvid .vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:26px}
.bhpvid .vgrid a{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;
  overflow:hidden;text-decoration:none;color:var(--navy);transition:.3s var(--ease)}
.bhpvid .vgrid a:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(23,29,58,.12)}
.bhpvid .vgrid .th{display:block;position:relative;aspect-ratio:16/9;
  background:var(--deep);overflow:hidden}
.bhpvid .vgrid .th img{width:100%;height:100%;object-fit:cover;display:block}
.bhpvid .vgrid .pb{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;
  height:42px;border-radius:10px;background:#FF0033;display:flex;align-items:center;
  justify-content:center;box-shadow:0 8px 22px rgba(8,14,32,.35)}
.bhpvid .vgrid .pb svg{width:18px;height:18px;fill:#fff;margin-left:2px}
.bhpvid .vgrid .in{display:block;padding:18px 20px 22px}
.bhpvid .vgrid .in .k{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--slate)}
.bhpvid .vgrid b{display:block;font-size:16px;line-height:1.35;margin-top:8px}
.bhpvid .browse{display:inline-block;margin-top:26px;font-weight:600;color:var(--navy);
  text-decoration:none;box-shadow:inset 0 -2px 0 var(--gold)}
.bhpvid .subs{background:linear-gradient(160deg,#171D3A 0%,#141F3B 45%,#112337 100%);color:#fff;
  padding:110px 0;text-align:center}
.bhpvid .subs .eb{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:26px}
.bhpvid .subs .eb i{display:block;width:30px;height:2px;background:var(--gold)}
.bhpvid .subs h2{color:#fff;margin:0 auto 18px;max-width:22ch}
.bhpvid .subs p{color:rgba(255,255,255,.72);max-width:52ch;margin:0 auto 30px;font-size:18px}
.bhpvid .subs .row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;
  max-width:520px;margin:0 auto}
.bhpvid .subs input{flex:1 1 260px;min-width:0;padding:17px 20px;border-radius:999px;
  border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.07);color:#fff;
  font-family:var(--body);font-size:15.5px}
.bhpvid .subs input::placeholder{color:rgba(255,255,255,.45)}
.bhpvid .subs input:focus{outline:none;border-color:var(--gold)}
.bhpvid .subs button{flex:0 0 auto;background:var(--gold);color:var(--navy);border:0;
  border-radius:999px;padding:17px 34px;font-weight:600;font-size:15.5px;cursor:pointer;
  font-family:var(--body);box-shadow:0 14px 34px rgba(255,176,0,.3);
  transition:transform .25s var(--ease)}
.bhpvid .subs button:hover{transform:translateY(-2px)}
.bhpvid .subs .subcta,.bhphub .subs .subcta{display:inline-block;background:var(--gold);color:var(--navy);
  font-weight:600;font-size:15.5px;padding:17px 34px;border-radius:999px;text-decoration:none;
  box-shadow:0 14px 34px rgba(255,176,0,.3);transition:transform .25s var(--ease)}
.bhpvid .subs .subcta:hover,.bhphub .subs .subcta:hover{transform:translateY(-2px)}
.bhpvid .subs .alt{margin:26px auto 0;font-size:16px;color:rgba(255,255,255,.72)}
.bhpvid .subs .alt a{color:var(--gold);font-weight:600;text-decoration:none;
  box-shadow:inset 0 -2px 0 rgba(255,176,0,.5)}

/* 5.x watch-page final CTA band (One Partner Per Market) */
.bhpvid .fincta{background:var(--navy);color:#fff;padding:76px 0;text-align:center}
.bhpvid .fincta .eb{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.bhpvid .fincta .eb i{display:block;width:30px;height:2px;background:var(--gold)}
.bhpvid .fincta h2{color:#fff;margin:0 auto 16px;max-width:24ch}
.bhpvid .fincta h2 em{font-style:italic;color:var(--gold)}
.bhpvid .fincta p{color:rgba(255,255,255,.72);max-width:52ch;margin:0 auto 30px;font-size:18px}
.bhpvid .fincta .fbtn{display:inline-block;background:var(--gold);color:var(--navy);font-weight:600;
  font-size:15.5px;padding:17px 34px;border-radius:999px;text-decoration:none;
  box-shadow:0 14px 34px rgba(255,176,0,.3);transition:transform .25s var(--ease)}
.bhpvid .fincta .fbtn:hover{transform:translateY(-2px)}
@media (max-width:900px){
  .bhpvid .about .g{grid-template-columns:1fr;gap:34px}
  .bhpvid .vgrid{grid-template-columns:1fr}
  .bhpvid .stage{padding-top:104px}
}


/* ==========================================================================
   2026-09-05: the same gold glow the pages' dark bands carry, so a post band reads as the same
   surface. The linear gradient alone is three shades of one navy and looks flat without it.
   ========================================================================== */
.bhpblog .final,.bhphub .hhero,.bhppil .phero,.bhppil .bg-dark,.bhpvid .subs,.bhpvid .stage{
  position:relative;isolation:isolate}
.bhpblog .final::after,.bhphub .hhero::after,.bhppil .phero::after,.bhppil .bg-dark::after,
.bhpvid .subs::after,.bhpvid .stage::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(50% 60% at 100% 0%,rgba(255,176,0,.12),rgba(255,176,0,0) 70%)}
.bhpblog .final>*,.bhphub .hhero>*,.bhppil .phero>*,.bhppil .bg-dark>*,
.bhpvid .subs>*,.bhpvid .stage>*{position:relative;z-index:1}


/* 2026-09-05: the watch headline was painting its first line at about 88% brightness while `color`
   computed to pure white. Stating the fill as well as the colour paints every line the same. */
.bhpvid h1,.bhpvid .stage h1{color:#fff;-webkit-text-fill-color:#fff;background:none;
  -webkit-background-clip:border-box;background-clip:border-box;opacity:1;
  -webkit-mask-image:none;mask-image:none}


/* ---- the rail's folded on-page list, 2026-09-24 ----
   Closed by default so the three rail blocks are the same size and the CTA is above the fold. */
.bhpblog .rail .toc-fold{border:1px solid rgba(23,29,58,.1);border-radius:14px;background:#fff;
  overflow:hidden}
.bhpblog .rail .toc-fold .foldbtn{display:flex;align-items:center;justify-content:space-between;
  gap:12px;width:100%;appearance:none;background:none;border:0;cursor:pointer;text-align:left;
  padding:16px 18px;font:600 11px/1.4 Geist,system-ui,sans-serif;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(23,29,58,.62)}
.bhpblog .rail .toc-fold .foldbtn:hover{color:var(--navy)}
.bhpblog .rail .toc-fold .foldbtn i{position:relative;width:11px;height:11px;flex:0 0 11px}
/* drawn, not a glyph: an icon font's chevron is not centred in its own box, which is the defect
   the client reported twice on the accordion icons */
.bhpblog .rail .toc-fold .foldbtn i::before,
.bhpblog .rail .toc-fold .foldbtn i::after{content:"";position:absolute;left:50%;top:50%;
  background:currentColor;border-radius:1.5px;transform:translate(-50%,-50%)}
.bhpblog .rail .toc-fold .foldbtn i::before{width:11px;height:2px}
.bhpblog .rail .toc-fold .foldbtn i::after{width:2px;height:11px;transition:opacity .2s ease}
.bhpblog .rail .toc-fold.open .foldbtn i::after{opacity:0}
.bhpblog .rail .toc-fold ol{margin:0;padding:0 18px 16px;max-height:52vh;overflow-y:auto}
.bhpblog .rail .toc-fold[hidden]{display:none}

/* The downloadable that belongs to a post (client 2026-09-28). Sits at the foot of the article,
   clearly ours rather than part of the client's prose. */
.bhpblog .article .dlcard{display:flex;align-items:center;gap:16px;margin:38px 0 8px;padding:18px 20px;
  border:1px solid var(--gold);border-radius:16px;background:rgba(255,176,0,.07)}
.bhpblog .article .dlcard .dl-ico{display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:var(--gold);color:var(--navy)}
.bhpblog .article .dlcard .dl-in{flex:1 1 auto;min-width:0}
.bhpblog .article .dlcard .dl-in b{display:block;font-family:var(--disp);font-weight:600;
  font-size:1.12rem;line-height:1.3;color:var(--navy)}
.bhpblog .article .dlcard .dl-in small{display:block;margin-top:3px;font-size:14.5px;line-height:1.5;
  color:var(--slate)}
.bhpblog .article .dlcard .dl-go{flex:0 0 auto;display:inline-flex;align-items:center;min-height:44px;
  padding:11px 20px;border-radius:999px;background:var(--navy);color:#fff;text-decoration:none;
  font:600 14.5px/1 var(--body);transition:transform .2s,background .2s}
.bhpblog .article .dlcard .dl-go:hover{background:var(--deep);transform:translateY(-1px);color:#fff}
@media (max-width:620px){
  .bhpblog .article .dlcard{flex-wrap:wrap}
  .bhpblog .article .dlcard .dl-go{width:100%;justify-content:center}
}


/* ---------- article visuals (Adam's pack, 2026-09-28) ----------
   135 images across 57 blog and guide articles, inserted into the body at the placement he
   specified per image. Two kinds: an infographic is a tall, information-bearing graphic that
   wants to be read, so it is capped and centred rather than stretched; an editorial image is a
   16:9 scene and runs the full measure. */
.bhpblog .article .bhp-artfig,
.bhpguide .article .bhp-artfig{margin:34px 0;display:flex;flex-direction:column;align-items:center}
.bhpblog .article .bhp-artfig img,
.bhpguide .article .bhp-artfig img{display:block;max-width:100%;height:auto;border-radius:12px;
  border:1px solid var(--line,#E6E0D2)}
.bhpblog .article .bhp-artfig--infographic img,
.bhpguide .article .bhp-artfig--infographic img{max-width:min(560px,100%)}
/* a landscape infographic loses its labels at 560px, so it takes the full measure */
.bhpblog .article .bhp-artfig--wide img,
.bhpguide .article .bhp-artfig--wide img{max-width:100%;width:100%}
.bhpblog .article .bhp-artfig--editorial img,
.bhpguide .article .bhp-artfig--editorial img{width:100%}
.bhpblog .article .bhp-artfig figcaption,
.bhpguide .article .bhp-artfig figcaption{margin-top:10px;max-width:640px;text-align:center;
  font:400 14px/1.55 var(--body,Geist),system-ui,sans-serif;color:var(--slate,#374763)}
@media (max-width:640px){
  .bhpblog .article .bhp-artfig,
  .bhpguide .article .bhp-artfig{margin:26px 0}
  .bhpblog .article .bhp-artfig figcaption,
  .bhpguide .article .bhp-artfig figcaption{font-size:13.5px;text-align:left}
}

/* the rail CTA's address is a link now (client 2026-09-28) but must still read as an address.
   It also has to WRAP: as an inline-block with a border-bottom it ran straight out of the rail
   and over the article beside it (client: "it is going out of the sidebar"). A border-bottom
   cannot break across lines, so the underline is a box-shadow on an inline box instead. */
.bhpblog .railcta .contact address{display:block;max-width:100%}
.bhpblog .railcta .contact address a{display:inline;color:inherit;text-decoration:none;
  border-bottom:0;box-shadow:inset 0 -1px 0 rgba(247,242,231,.28);
  /* .railcta a is the gold CTA button and is nowrap on purpose. The address is a link in the
     same card and inherited it, so a 60-character address ran 149px past the rail and over the
     article. Only this link opts back out. */
  white-space:normal!important;overflow-wrap:anywhere;word-break:normal;line-height:1.7;
  padding:0!important;background:none!important;border:0!important;font:inherit!important}
.bhpblog .railcta .contact address a:hover{color:var(--gold);box-shadow:inset 0 -1px 0 var(--gold)}
