/* CFO local draft: page-scoped additions to the shared Studio stylesheet. */
.cfo-page{--cfo-gap:clamp(28px,4vw,64px)}
.cfo-page .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cfo-page section[id],.cfo-page #quadro-banca{scroll-margin-top:100px}
.cfo-page .cfo-hero{padding-bottom:0}
.cfo-page .cfo-hero h1{margin-top:12px;font-size:clamp(36px,4.7vw,60px);text-wrap:pretty}
.cfo-subtitle{margin-top:22px;font-family:var(--serif);font-size:clamp(22px,2.1vw,29px);line-height:1.4;color:var(--on-navy)}
.cfo-intro{margin-top:20px;max-width:87ch;color:var(--on-navy-dim)}
.cfo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 26px;margin-top:28px}
.cfo-text-link{display:inline-flex;gap:12px;align-items:center;min-height:44px;font-size:14px;font-weight:600}
.cfo-hero .cfo-text-link,.cfo-contact .cfo-text-link{color:var(--on-navy)}
.cfo-questions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:48px;border-top:1px solid var(--navy-line);padding:30px 0 34px}
.cfo-questions>div+div{border-left:1px solid var(--navy-line);padding-left:28px}
.cfo-page .cfo-questions h2{font-size:clamp(21px,2vw,27px);line-height:1.3;color:var(--on-navy);margin-top:12px;text-wrap:pretty}
.cfo-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:var(--cfo-gap)}
.cfo-section-intro h2,.cfo-bank-copy h2{margin-top:12px}
.cfo-section-intro>p:last-child{margin-top:22px}
.cfo-context-copy p+p{margin-top:20px}
.cfo-context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,44px);margin-top:44px}
.cfo-context-grid article{border-top:2px solid var(--blu);padding-top:24px}
.cfo-context-grid h3{margin-top:12px;font-size:clamp(23px,2.1vw,28px);text-wrap:pretty}
.cfo-context-grid h3+p{margin-top:16px;font-size:15px}
.cfo-context-link{display:inline-block;margin-top:12px;padding:8px 0;font-size:13px;font-weight:600}
.cfo-steps{list-style:none;margin:0;padding:0}
.cfo-steps li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:18px;padding:24px 0;border-top:1px solid var(--line)}
.cfo-steps li:first-child{padding-top:0;border-top:0}
.cfo-steps li:last-child{padding-bottom:0}
.cfo-step-number{color:var(--blu);font-size:15px;font-weight:500;padding-top:4px}
.cfo-steps p{margin-top:10px;font-size:15px}
.cfo-page .shead>p:last-child{max-width:90ch}
.cfo-cash{background:var(--sunk)}
.cfo-cash-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.cfo-cash-grid>div{border-top:2px solid var(--blu);padding-top:22px}
.cfo-cash-grid p{margin-top:12px;font-size:15px}
.cfo-tool-link{margin-top:36px;border-top:1px solid var(--line);padding-top:24px}
.cfo-tool-link>a{display:inline-block;padding-block:10px;font-weight:600;font-size:14px}
.cfo-small{font-size:13px;line-height:1.6;color:var(--muted)}
.cfo-bank-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:var(--cfo-gap);align-items:start}
.cfo-bank-copy>p:not(.eyebrow){margin-top:20px}
.cfo-bank-copy .lead{font-size:21px;line-height:1.5}
.cfo-eba{background:var(--surface);border:1px solid var(--line);border-top:2px solid var(--blu);padding:clamp(22px,2.5vw,34px)}
.cfo-eba h3{font-size:26px;margin:12px 0 20px}
.cfo-eba>p:not(.eyebrow){font-size:14px}
.cfo-eba-details{padding:0;margin:24px 0 0;border:0;border-top:1px solid var(--line)}
.cfo-eba-details summary{font-size:14px;font-weight:600;min-height:52px;padding:16px 0;cursor:pointer;color:var(--blu)}
.cfo-eba-details summary:focus-visible{outline:2px solid var(--blu);outline-offset:4px}
.cfo-eba-details dl{margin:0 0 18px}
.cfo-eba-details dl>div+div{margin-top:16px}
.cfo-eba-details dt{font-size:14px;font-weight:600;color:var(--ink)}
.cfo-eba-details dd{margin:4px 0 0;font-size:13px}
.cfo-eba .cfo-source{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}
.cfo-source a{display:inline-block;padding:6px 0;text-decoration:underline;text-underline-offset:3px}
.cfo-deliverables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 44px;margin:0}
.cfo-deliverables>div{padding:22px 0;border-top:1px solid var(--line)}
.cfo-deliverables dt{font-family:var(--serif);font-size:23px;color:var(--ink);line-height:1.3}
.cfo-deliverables dd{margin:12px 0 0;font-size:15px}
.cfo-human{margin-top:28px;border-left:2px solid var(--blu);padding-left:22px;max-width:90ch;font-size:14px}
.cfo-contact h2{margin-top:12px}
.cfo-page .cfo-contact p{max-width:90ch}
.cfo-contact .eyebrow{color:var(--on-navy-dim);font-size:11.5px}
@media(max-width:800px){
  .cfo-split,.cfo-bank-grid,.cfo-context-grid{grid-template-columns:minmax(0,1fr)}
  .cfo-questions{gap:22px}
  .cfo-questions>div+div{padding-left:22px}
  .cfo-desktop-break{display:none}
  .cfo-cash-grid{gap:20px}
}
@media(max-width:580px){
  .cfo-questions,.cfo-cash-grid,.cfo-deliverables{grid-template-columns:minmax(0,1fr)}
  .cfo-questions{gap:0;margin-top:32px;padding:4px 0 12px}
  .cfo-questions>div{padding:22px 0}
  .cfo-questions>div+div{padding:22px 0;border-left:0;border-top:1px solid var(--navy-line)}
  .cfo-cash-grid{gap:28px}
  .cfo-deliverables{gap:0}
  .cfo-steps li{gap:12px;grid-template-columns:28px minmax(0,1fr)}
  .cfo-eba{padding:24px 20px}
  .cfo-subtitle{font-size:24px}
}
