/* Consultant section: a numbered list on the left, a client roster on the right, then a partner-program band. Limited to the content width. */
.byoband{padding:0 0 var(--cta-gap)}
.cbox{background:var(--cons-bg);color:var(--cons-fg);border-radius:var(--r-card);padding:22px 34px;box-shadow:0 0 0 1px var(--cons-ring) inset}
.byoband h2{font:500 clamp(24px,3vw,32px)/1.1 var(--head);letter-spacing:-.025em;color:var(--cons-fg);max-width:680px}
.byoband .lead{margin-top:8px;max-width:none;font-size:16px;line-height:1.5;color:var(--cons-mute)}
.cgrid{margin-top:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.cpts{list-style:none;border-top:1px solid var(--cons-line)}
.cpts{margin-top:18px}
.cpts li{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:baseline;padding:11px 0;border-bottom:1px solid var(--cons-line)}
.cpts b{font-size:13px;font-weight:500;color:var(--cons-num);padding-top:4px}
.cpts h3{font:500 16px/1.25 var(--head);letter-spacing:-.01em;color:var(--cons-fg)}
.cpts p{margin-top:6px;max-width:400px;font-size:15px;line-height:1.5;color:var(--cons-mute)}
/* roster: the same colour as the box, outlined, not a white card */
.roster{padding:0}
.rost{position:relative;inset:auto;padding:14px;display:flex;flex-direction:column;gap:6px;background:transparent;border:1px solid var(--cons-line);border-radius:12px}
.rost .rh{display:flex;align-items:center;justify-content:space-between;padding:0 4px 2px;font-size:13px;color:var(--cons-fg)}
.rost .rh .mono{font-size:11px;color:var(--cons-mute)}
.rost .cr{display:flex;align-items:center;gap:12px;height:40px;padding:0 12px;border-radius:10px;background:var(--cons-row);color:var(--cons-fg);font-size:13.5px;font-weight:500}
.rost .cr .av{width:24px;height:24px;font-size:9px;border-radius:7px}
.rost .cr>span{flex:1;white-space:nowrap}
.rost .cr s{text-decoration:none;height:22px;padding:0 10px;border-radius:11px;background:var(--cons-chip);color:var(--cons-fg);font:500 11.5px/22px var(--body)}
.rost .cr.on s{background:#fff;color:#0a0a0a}
.rost .cr em{font-style:normal;font-size:11.5px;width:34px;text-align:right;color:var(--cons-mute)}
.rost .add-unused{height:40px;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#0a0a0a}
/* partner program: plain text line for now; it becomes a CTA band later and is not designed yet */
.pnote{margin-top:26px;font-size:13.5px;font-weight:400;color:var(--cons-fg)}
.pnote a{color:var(--cons-link);border-bottom:1px solid var(--cons-link)}
@media (max-width:899px){.cgrid{grid-template-columns:1fr;gap:28px}}
@media (max-width:560px){.rost .cr{padding:0 10px;gap:8px}.rost .cr s{padding:0 8px}.rost .cr>span{white-space:normal;font-size:12.5px}}

/* P&C call to action: same banner as the AI one, the P&C mark sits over the bright centre of the picture and flips colour with what is under it */
.pcta{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-start;gap:18px;height:80px;margin-bottom:var(--cta-gap);padding:0 18px 0 28px;border-radius:var(--r-card);background:var(--card);overflow:hidden;color:var(--ink);box-shadow:0 1px 0 rgba(0,0,0,.03),0 12px 28px -22px rgba(0,0,0,.25)}
.pcta::before{content:"";position:absolute;inset:0;background:center/100% 100% no-repeat;filter:invert(var(--inv));-webkit-mask-image:linear-gradient(to right,transparent 42%,#000 64%,#000 86%,transparent 96%);mask-image:linear-gradient(to right,transparent 42%,#000 64%,#000 86%,transparent 96%)}
.pcta.lz::before{background-image:url(../assets/stipple-pc.png)}
.pcta .ct{position:relative;white-space:nowrap;font:500 clamp(18px,2.2vw,22px)/1.15 var(--head);letter-spacing:-.02em;color:var(--ink)}
.pcta img{position:relative;flex:none;height:32px;width:auto;mix-blend-mode:difference}
.pcta .go{position:relative;flex:none;margin-left:auto;width:40px;height:40px;border-radius:50%;background:var(--ink);color:var(--card);display:flex;align-items:center;justify-content:center}
.pcta:hover .go,.pcta:focus-visible .go{background:var(--orange);color:#0a0a0a}
.pcta:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
@media (max-width:899px){.cbox{padding:32px 26px}}
@media (max-width:700px){.pcta{padding:0 16px 0 20px;gap:12px}.pcta::before{display:none}.pcta .ct{font-size:16px;white-space:normal;line-height:1.2}.pcta img{height:26px}}

/* partnership meeting button under the roster */
.cright{display:flex;flex-direction:column;gap:12px}
.btn-m{width:100%;background:var(--cons-btn-bg);color:var(--cons-btn-fg);font-weight:600}
.btn-m:hover{background:color-mix(in srgb,var(--cons-btn-bg) 88%,#808080)}
.btn-m:focus-visible{outline:2px solid var(--cons-btn-fg);outline-offset:3px}
.roster .btn-m{margin-top:12px}

.rost .cr .fav{width:24px;height:24px;border-radius:7px;flex:none;display:block}
