/* §0 hero — headline over a document sheet: redline statement + metadata column */
.cbf-hero{position:relative;padding-top:var(--bdh-hero-t);padding-bottom:clamp(64px,7vw,112px);overflow:hidden;background:var(--paper)}
.cbf-hero__ground{position:absolute;inset:auto 0 0;height:62%;opacity:.7;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 40%);mask-image:linear-gradient(to bottom,transparent,#000 40%);pointer-events:none}
.cbf-hero__in{position:relative}

.cbf-hero__crumb ol{list-style:none;margin:0 0 clamp(28px,3.4vw,44px);padding:0;display:flex;flex-wrap:wrap;gap:6px 0;font-size:var(--t-xs);color:var(--muted)}
.cbf-hero__crumb li{display:inline-flex;align-items:center}
.cbf-hero__crumb li+li::before{content:"/";margin:0 10px;color:var(--ghost)}
.cbf-hero__crumb a{color:var(--muted);text-decoration:none;border-bottom:1px solid transparent;transition:color var(--d1),border-color var(--d1)}
.cbf-hero__crumb a:hover{color:var(--ink);border-color:var(--line-3)}
.cbf-hero__crumb [aria-current]{color:var(--ink);font-weight:500}

.cbf-hero__top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);column-gap:var(--bdh-gap-l);row-gap:28px;align-items:end;margin-bottom:clamp(44px,5.4vw,80px)}
.cbf-hero__say{display:flex;flex-direction:column;gap:22px}
.cbf-hero__say .lbl{display:block;line-height:1.6}
.cbf-hero__say .lbl .dot{display:inline-block;vertical-align:.12em;margin-right:.55em}
.cbf-doc__ref{white-space:nowrap}
.cbf-hero__h{font-family:var(--f-h);font-weight:500;font-size:clamp(2.4rem,6.2vw,5.4rem);line-height:.98;letter-spacing:-.035em;color:var(--ink);margin:0;max-width:12ch}
.cbf-hero__h .g{display:block}
.cbf-hero__aside{display:flex;flex-direction:column;gap:26px;padding-bottom:.4em}
.cbf-hero__act{display:flex;flex-wrap:wrap;gap:12px}

/* the sheet */
.cbf-doc{position:relative;background:var(--paper);border:1px solid var(--line-3);border-radius:var(--r-lg);box-shadow:var(--sh-2)}
.cbf-doc__bar,.cbf-doc__foot{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;padding:14px clamp(18px,2.4vw,32px)}
.cbf-doc__bar{border-bottom:1px solid var(--line)}
.cbf-doc__id,.cbf-doc__page{font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.cbf-doc__bar-r{display:inline-flex;align-items:center;gap:14px}
.cbf-doc__body{display:grid;grid-template-columns:var(--cbf-margin) minmax(0,1fr) minmax(220px,.34fr)}
.cbf-doc__margin{padding:clamp(24px,3vw,40px) 0 24px clamp(18px,2.4vw,32px);display:flex;flex-direction:column;gap:6px;border-right:1px solid var(--line-2)}
.cbf-doc__sec{font-family:var(--f);font-size:.8125rem;color:var(--ink);letter-spacing:.02em}
.cbf-doc__sec-n{font-family:var(--f);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.cbf-doc__lines{margin-top:auto;display:flex;flex-direction:column;gap:14px;font-family:var(--f);font-size:10px;color:var(--ghost);font-style:normal}
.cbf-doc__lines i{font-style:normal}
.cbf-doc__main{padding:clamp(24px,3vw,40px) clamp(20px,3vw,48px);display:flex;flex-direction:column;gap:clamp(20px,2.4vw,32px);min-width:0}
.cbf-doc__line{font-family:var(--f-h);font-weight:500;font-size:clamp(1.45rem,2.9vw,2.6rem);line-height:1.22;letter-spacing:-.022em;color:var(--ink);margin:0;min-height:3.66em;max-width:30ch}
.cbf-doc__slot{transition:opacity .3s var(--e)}
.cbf-doc__del{position:relative;color:var(--faint);text-decoration:none;display:inline}
.cbf-doc__del{background-image:linear-gradient(var(--blue),var(--blue));background-repeat:no-repeat;background-position:0 58%;background-size:100% 2px;transition:background-size .7s var(--e),color .4s var(--e)}
.cbf-doc__ins{text-decoration:none;color:var(--ink);box-shadow:inset 0 -.16em 0 var(--blue-wash-2)}
.cbf-doc__ins.is-typing::after{content:"";display:inline-block;width:2px;height:.9em;margin-left:2px;vertical-align:-.08em;background:var(--blue);animation:cbfCaret 1s steps(1) infinite}
.cbf-doc.is-play .cbf-doc__del.is-pre{background-size:0 2px;color:var(--ink)}
@keyframes cbfCaret{50%{opacity:0}}

.cbf-doc__note{margin:0;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:12px 14px;border-left:2px solid var(--blue);background:var(--paper-2);border-radius:0 var(--r-xs) var(--r-xs) 0;max-width:62ch;transition:opacity .35s var(--e),transform .35s var(--e)}
.cbf-doc__note.is-out{opacity:0;transform:translateX(-8px)}
.cbf-doc__who{font-family:var(--f);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);white-space:nowrap}
.cbf-doc__say{font-size:var(--t-sm);line-height:1.55;color:var(--txt)}

.cbf-doc__meta{margin:0;padding:clamp(24px,3vw,40px) clamp(18px,2.4vw,32px);border-left:1px solid var(--line-2);display:flex;flex-direction:column;gap:18px}
.cbf-doc__meta div{display:flex;flex-direction:column;gap:5px}
.cbf-doc__meta dt{font-family:var(--f);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.cbf-doc__meta dd{margin:0;font-size:var(--t-sm);color:var(--ink);font-weight:500;line-height:1.4;display:flex;align-items:center;gap:8px}
.cbf-doc__meta dd[data-k="ver"]{font-family:var(--f);font-size:1.05rem;font-weight:500;letter-spacing:-.01em}
.cbf-doc__led{width:7px;height:7px;border-radius:50%;background:var(--blue);flex:none;box-shadow:0 0 0 4px var(--blue-wash)}
.cbf-doc__steps dd{flex-wrap:wrap;gap:6px}
.cbf-doc__steps i{font-style:normal;font-family:var(--f);font-size:10px;letter-spacing:.04em;padding:3px 6px;border-radius:4px;border:1px solid var(--line);color:var(--faint);transition:color .3s,border-color .3s,background-color .3s}
.cbf-doc__steps i.is-done{color:var(--muted);border-color:var(--line-3)}
.cbf-doc__steps i.is-on{color:var(--on-ink);background:var(--blue);border-color:var(--blue)}
.cbf-doc__foot{border-top:1px solid var(--line);justify-content:flex-start;gap:10px clamp(24px,4vw,64px)}
.cbf-doc__foot p{margin:0;display:flex;align-items:baseline;gap:10px;font-size:var(--t-sm);color:var(--ink);font-weight:500}
.cbf-doc__foot span{font-family:var(--f);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-weight:400}
.cbf-doc__foot b{font-weight:500}

@media (max-width:1024px){
  .cbf-hero__top{grid-template-columns:minmax(0,1fr)}
  .cbf-doc__body{grid-template-columns:minmax(0,1fr) minmax(200px,.4fr)}
  .cbf-doc__margin{display:none}
}
@media (max-width:720px){
  .cbf-doc__body{grid-template-columns:minmax(0,1fr)}
  .cbf-doc__meta{border-left:0;border-top:1px solid var(--line-2);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .cbf-doc__steps{grid-column:1 / -1}
  .cbf-doc__line{min-height:0}
  .cbf-doc__foot{flex-direction:column;align-items:flex-start}
  .cbf-doc__id{letter-spacing:.08em}
}
@media (max-width:600px){.cbf-hero__act .btn{width:100%;white-space:normal}}
@media (prefers-reduced-motion:reduce){.cbf-doc__del,.cbf-doc__note,.cbf-doc__slot{transition:none}}
