/* Corporate IB: scoped layout, network diagram and responsive components. */
#corporate-ib-page { --cib-ink:#102e43; --cib-muted:#5b6e7b; --cib-line:#dbe4ea; --cib-red:#b52b35; --cib-header:136px; }
#corporate-ib-page .page-hero { padding:0; background:#102d42; color:#fff; }
#corporate-ib-page .page-hero .editorial-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0; width:100%; max-width:1440px; min-height:650px; padding:0; align-items:stretch; }
#corporate-ib-page .page-hero .editorial-hero-copy { display:flex; flex-direction:column; justify-content:center; min-width:0; max-width:none; padding:62px 64px 58px 80px; background:linear-gradient(130deg,#102d42,#21465e); }
#corporate-ib-page .page-hero .crumb { margin:0 0 30px; color:#c8d7e2; font-size:12px; }
#corporate-ib-page .page-hero .crumb a { color:inherit; }
#corporate-ib-page .cib-eyebrow { margin:0 0 22px; font-size:11px; line-height:1.8; text-transform:uppercase; letter-spacing:.1em; font-weight:500; color:var(--cib-red); }
#corporate-ib-page .page-hero .cib-eyebrow { color:#c8d9e5; }
#corporate-ib-page .page-hero h1 { padding:0 0 6px; margin:0 0 25px; font-size:clamp(56px,5.55vw,80px); font-weight:500; line-height:1.06; letter-spacing:-.045em; color:#fff; }
#corporate-ib-page .page-hero h1 span { display:block; color:#fff!important; }
#corporate-ib-page .page-hero .lead { margin:0 0 30px; max-width:550px; font-size:19px; line-height:1.85; color:#d2e0e9; }
#corporate-ib-page .cib-hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
#corporate-ib-page .cib-hero-actions .btn { white-space:normal; text-align:center; }
#corporate-ib-page .cib-hero-actions .btn.outline { color:#fff; border-color:#8ba4b7; background:transparent; }
#corporate-ib-page .page-hero .chips { display:flex; flex-wrap:wrap; gap:12px 20px; margin:30px 0 0; padding-top:22px; border-top:1px solid #ffffff30; }
#corporate-ib-page .page-hero .chip { color:#d3e0e9; font-size:12px; }
#corporate-ib-page .page-hero .chip i { background:#dc6771; }
#corporate-ib-page .cib-hero-visual { display:flex; flex-direction:column; justify-content:center; min-width:0; background:#f7f9fa; padding:40px; }
#corporate-ib-page .page-hero .editorial-art { position:relative; inset:auto; width:100%; height:430px; min-height:0; max-height:none; aspect-ratio:auto; margin:0; padding:0; background:transparent; border:0; border-radius:0; overflow:hidden; }
#corporate-ib-page .page-hero .editorial-art > img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:center; mix-blend-mode:multiply; opacity:1; }
#corporate-ib-page .page-hero .editorial-art::after { background:none; }
#corporate-ib-page .page-hero .motion-toggle { right:10px; bottom:10px; }
#corporate-ib-page .cib-hero-caption { margin:20px 20px 0; padding-top:24px; border-top:1px solid var(--cib-line); }
#corporate-ib-page .cib-hero-caption > span { color:var(--cib-ink); font-size:20px; line-height:1.5; }
#corporate-ib-page .cib-hero-caption p { margin:8px 0 0; font-size:14px; line-height:1.7; color:var(--cib-muted); }
#corporate-ib-page .page-body { padding:0 0 64px; }
#corporate-ib-page .cib-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:0; padding:30px 0; background:#fff; border:0; border-bottom:1px solid var(--cib-line); border-radius:0; }
#corporate-ib-page .cib-metrics .stat-cell { padding:8px 30px; border:0; border-right:1px solid var(--cib-line); background:none; text-align:left; }
#corporate-ib-page .cib-metrics .stat-cell:first-child { padding-left:0; }
#corporate-ib-page .cib-metrics .stat-cell:last-child { border-right:0; }
#corporate-ib-page .cib-metrics strong { font-size:40px; line-height:1.2; letter-spacing:-.035em; font-weight:500; color:var(--cib-ink); }
#corporate-ib-page .cib-metrics span { display:block; margin-top:10px; color:var(--cib-muted); font-size:11px; line-height:1.7; letter-spacing:.025em; text-transform:uppercase; }
#corporate-ib-page .cib-nav { position:sticky; top:var(--cib-header); z-index:25; display:flex; flex-wrap:wrap; align-items:center; gap:10px 26px; margin:0; padding:14px 0; border:0; border-bottom:1px solid var(--cib-line); border-radius:0; background:#fff; }
#corporate-ib-page .cib-nav strong { margin-right:auto; font-size:11px; line-height:1.6; letter-spacing:.04em; text-transform:uppercase; color:var(--cib-muted); font-weight:500; }
#corporate-ib-page .cib-nav a { padding:8px 0; border-bottom:2px solid transparent; color:#3b596f; font-size:13px; text-decoration:none; }
#corporate-ib-page .cib-nav a:is(:hover,[aria-current="location"]) { color:var(--cib-red); border-bottom-color:var(--cib-red); }
#corporate-ib-page :is(#structure,#benefits,#requirements,#onboarding,#faqs) { scroll-margin-top:calc(var(--cib-header) + 110px); }
#corporate-ib-page .cib-section-index { display:block; margin:0 0 24px; color:var(--cib-red); font-size:11px; line-height:1.7; letter-spacing:.1em; text-transform:uppercase; }
#corporate-ib-page .page-body h2 { margin:0; font-size:clamp(34px,3.35vw,48px); font-weight:500; line-height:1.18; letter-spacing:-.035em; text-align:left; color:var(--cib-ink); }
#corporate-ib-page .page-body p { color:var(--cib-muted); line-height:1.85; }
#corporate-ib-page .page-body a { text-underline-offset:4px; }
#corporate-ib-page .cib-section-heading { margin-bottom:36px; }
#corporate-ib-page .cib-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; padding:12px 0; color:var(--cib-red); font-size:14px; line-height:1.7; font-weight:500; text-decoration:none; border-bottom:1px solid var(--cib-line); }
#corporate-ib-page .cib-text-link span { font-size:21px; line-height:1; }
#corporate-ib-page .cib-structure { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:64px; align-items:center; padding:80px 0; }
#corporate-ib-page .cib-structure-copy { min-width:0; }
#corporate-ib-page .cib-structure-copy p { margin:22px 0; font-size:16px; }
#corporate-ib-page .cib-structure-copy p.cib-lead { margin-top:28px; font-size:20px; }
#corporate-ib-page .cib-network { min-width:0; padding:32px; background:#f3f6f8; border:1px solid var(--cib-line); border-radius:5px; }
#corporate-ib-page .cib-network-heading .cib-eyebrow { margin:0 0 8px; }
#corporate-ib-page .cib-network-heading p { margin:0 0 28px; font-size:14px; }
#corporate-ib-page .cib-network-tree { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 18px; padding-top:4px; }
#corporate-ib-page .cib-node { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; min-width:0; width:100%; padding:17px 12px; border:1px solid #b9c9d4; border-radius:4px; background:#fff; color:var(--cib-ink); text-align:center; font:inherit; cursor:pointer; transition:background .2s,border-color .2s,color .2s; }
#corporate-ib-page .cib-node > span { display:block; font-size:10px; line-height:1.65; text-transform:uppercase; letter-spacing:.035em; color:var(--cib-muted); margin-bottom:5px; }
#corporate-ib-page .cib-node strong { display:block; font-size:18px; line-height:1.35; font-weight:500; }
#corporate-ib-page .cib-node:hover { background:#e8eff4; border-color:#698ba3; }
#corporate-ib-page .cib-node[aria-pressed="true"] { background:#173b53; border-color:#173b53; box-shadow:inset 0 3px #c14550; color:#fff; }
#corporate-ib-page .cib-node[aria-pressed="true"] > span { color:#d1e0eb; }
#corporate-ib-page .cib-node-root { grid-column:1 / -1; justify-self:center; width:calc((100% - 18px) / 2); }
#corporate-ib-page .cib-node-root::after { content:""; position:absolute; left:50%; bottom:-13px; height:12px; border-left:1px solid #8fa8ba; }
#corporate-ib-page .cib-node-direct::before,#corporate-ib-page .cib-node-partners::before { content:""; position:absolute; top:-13px; height:12px; width:calc(50% + 10px); border-top:1px solid #8fa8ba; }
#corporate-ib-page .cib-node-direct::before { left:50%; border-left:1px solid #8fa8ba; }
#corporate-ib-page .cib-node-partners::before { right:50%; border-right:1px solid #8fa8ba; }
#corporate-ib-page .cib-node-clients { grid-column:2; }
#corporate-ib-page .cib-node-clients::before { content:""; position:absolute; left:50%; top:-25px; height:24px; border-left:1px solid #8fa8ba; }
#corporate-ib-page .cib-network-details { min-height:144px; margin-top:28px; padding-top:24px; border-top:1px solid var(--cib-line); }
#corporate-ib-page .cib-network-details h3 { margin:0 0 10px; font-size:19px; line-height:1.4; font-weight:500; color:var(--cib-ink); }
#corporate-ib-page .cib-network-details p { margin:0; font-size:14px; }
#corporate-ib-page .cib-network-details > div { animation:cib-panel-in .25s ease; }
#corporate-ib-page .cib-network-details [hidden] { display:none; }
#corporate-ib-page .cib-network-note { margin:18px 0 0; padding-top:16px; border-top:1px solid var(--cib-line); font-size:11px; }
#corporate-ib-page .cib-heading-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); align-items:end; gap:70px; }
#corporate-ib-page .cib-heading-split > p { margin:0; font-size:17px; }
#corporate-ib-page .cib-benefits { padding-bottom:80px; }
#corporate-ib-page .cib-benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
#corporate-ib-page .cib-benefit { display:flex; flex-direction:column; align-items:flex-start; min-width:0; padding:34px; background:#f8fafb; border:1px solid var(--cib-line); border-radius:4px; }
#corporate-ib-page .cib-card-index { display:block; margin-bottom:34px; font-size:11px; line-height:1.7; text-transform:uppercase; letter-spacing:.06em; color:var(--cib-muted); }
#corporate-ib-page .cib-benefit h3 { margin:0 0 20px; font-size:27px; line-height:1.25; font-weight:500; letter-spacing:-.025em; color:var(--cib-ink); }
#corporate-ib-page .cib-benefit p { margin:0 0 28px; font-size:15px; }
#corporate-ib-page .cib-benefit .cib-text-link { margin-top:auto; width:100%; }
#corporate-ib-page .cib-benefit-featured { background:linear-gradient(135deg,#15354c,#285269); border-color:#173b53; }
#corporate-ib-page .cib-benefit-featured :is(h3,.cib-text-link) { color:#fff; }
#corporate-ib-page .cib-benefit-featured :is(p,.cib-card-index) { color:#d0e0eb; }
#corporate-ib-page .cib-benefit-featured .cib-text-link { border-color:#ffffff30; }
#corporate-ib-page .cib-requirements { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); margin-bottom:78px; border:1px solid var(--cib-line); border-radius:5px; overflow:hidden; }
#corporate-ib-page .cib-requirements-intro { padding:44px; min-width:0; background:#102e43; }
#corporate-ib-page .cib-requirements-intro .cib-section-index { color:#c1d7e5; }
#corporate-ib-page .cib-requirements-intro h2 { color:#fff; font-size:42px; }
#corporate-ib-page .cib-requirements-intro p { margin:28px 0; font-size:16px; color:#d0e0eb; }
#corporate-ib-page .cib-requirements-intro .cib-text-link { color:#fff; border-color:#ffffff30; }
#corporate-ib-page .cib-requirement-list { padding:12px 38px; background:#f5f8fa; min-width:0; }
#corporate-ib-page .cib-requirement-list article { display:grid; grid-template-columns:28px minmax(0,1fr); gap:20px; padding:25px 0; border-bottom:1px solid var(--cib-line); }
#corporate-ib-page .cib-requirement-list article:last-child { border-bottom:0; }
#corporate-ib-page .cib-requirement-number { font-size:13px; line-height:1.9; color:var(--cib-red); }
#corporate-ib-page .cib-requirement-list h3 { margin:0 0 10px; font-size:21px; font-weight:500; line-height:1.4; color:var(--cib-ink); }
#corporate-ib-page .cib-requirement-list p { margin:0; font-size:14px; }
#corporate-ib-page .cib-onboarding { padding-bottom:78px; }
#corporate-ib-page .cib-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
#corporate-ib-page .cib-step { min-width:0; padding:28px 0 0; border-top:2px solid #b1c4d0; }
#corporate-ib-page .cib-step-number { display:grid; place-items:center; width:46px; height:46px; margin-bottom:24px; border:1px solid #b0c1ce; border-radius:50%; font-size:16px; line-height:1; color:var(--cib-ink); }
#corporate-ib-page .cib-step h3 { margin:0 0 18px; font-size:24px; font-weight:500; line-height:1.3; color:var(--cib-ink); }
#corporate-ib-page .cib-step p { margin:0; font-size:15px; }
#corporate-ib-page .cib-faq { display:grid; grid-template-columns:minmax(0,.34fr) minmax(0,.66fr); gap:64px; padding-top:50px; border-top:1px solid var(--cib-line); }
#corporate-ib-page .cib-faq .cib-section-heading > p { margin:24px 0 0; font-size:15px; }
#corporate-ib-page .cib-faq .faq { min-width:0; margin:0; }
#corporate-ib-page .cib-faq details { margin:0 0 12px; padding:0; border:1px solid var(--cib-line); border-radius:4px; background:#fff; }
#corporate-ib-page .cib-faq summary { position:relative; display:block; padding:22px 58px 22px 24px; margin:0; font-size:17px; font-weight:500; line-height:1.65; color:var(--cib-ink); list-style:none; }
#corporate-ib-page .cib-faq summary::before { position:absolute; top:25px; left:auto; right:20px; width:22px; height:22px; margin:0; line-height:22px; }
#corporate-ib-page .cib-faq summary::-webkit-details-marker { display:none; }
#corporate-ib-page .cib-faq details p { margin:0; padding:0 24px 24px; font-size:15px; line-height:1.85; }
#corporate-ib-page .cib-risk-note { padding:24px 28px; margin:38px 0 0; font-size:13px; line-height:1.85; text-align:left; }
#corporate-ib-page .cib-final-cta { padding:64px 0; background:linear-gradient(115deg,#102d42,#264d65); }
#corporate-ib-page .cib-final-cta > .container { display:flex; align-items:center; justify-content:space-between; gap:40px; }
#corporate-ib-page .cib-final-cta .cib-eyebrow { color:#c5d9e6; margin-bottom:20px; }
#corporate-ib-page .cib-final-cta h2 { margin:0; font-size:clamp(34px,3.6vw,50px); font-weight:500; line-height:1.18; letter-spacing:-.035em; color:#fff; }
#corporate-ib-page .cib-final-actions { display:flex; flex-wrap:wrap; gap:12px; }
#corporate-ib-page .cib-final-actions .btn { white-space:normal; }
#corporate-ib-page :is(.cib-nav a,.cib-node,.cib-text-link,.cib-faq summary):focus-visible { outline:2px solid var(--cib-red); outline-offset:4px; }
#corporate-ib-page :is(.cib-benefit-featured,.cib-requirements-intro) .cib-text-link:focus-visible { outline-color:#fff; }
@keyframes cib-panel-in { from { opacity:0; transform:translateY(3px); } to { opacity:1; transform:none; } }
@media(max-width:1200px) {
 #corporate-ib-page .page-hero .editorial-hero-copy { padding:48px; }
 #corporate-ib-page .cib-hero-visual { padding:28px; }
 #corporate-ib-page .page-hero .editorial-art { height:390px; }
 #corporate-ib-page .cib-structure { gap:40px; }
 #corporate-ib-page .cib-network { padding:28px; }
 #corporate-ib-page .cib-benefit { padding:28px; }
 #corporate-ib-page .cib-requirements-intro { padding:36px; }
 #corporate-ib-page .cib-requirements-intro h2 { font-size:36px; }
 #corporate-ib-page .cib-requirement-list { padding-inline:30px; }
}
@media(max-width:1050px) { #corporate-ib-page { --cib-header:74px; } }
@media(max-width:900px) {
 #corporate-ib-page .page-hero .editorial-hero-grid { grid-template-columns:1fr; min-height:0; }
 #corporate-ib-page .page-hero .editorial-hero-copy { padding:44px 32px; }
 #corporate-ib-page .page-hero .lead { max-width:680px; }
 #corporate-ib-page .cib-hero-visual { padding:28px 32px; }
 #corporate-ib-page .page-hero .editorial-art { height:320px; }
 #corporate-ib-page .cib-hero-caption { margin:12px 0 0; padding-top:22px; }
 #corporate-ib-page .cib-metrics .stat-cell { padding-inline:20px; }
 #corporate-ib-page .cib-metrics strong { font-size:34px; }
 #corporate-ib-page .cib-nav { gap:8px 22px; }
 #corporate-ib-page .cib-nav strong { width:100%; }
 #corporate-ib-page .cib-structure { grid-template-columns:1fr; gap:34px; padding:56px 0; }
 #corporate-ib-page .cib-network { padding:32px; }
 #corporate-ib-page .cib-network-details { min-height:114px; }
 #corporate-ib-page .cib-heading-split { grid-template-columns:1fr; gap:24px; }
 #corporate-ib-page .cib-benefit-grid { gap:18px; }
 #corporate-ib-page .cib-benefit { padding:24px; }
 #corporate-ib-page .cib-benefit h3 { font-size:23px; }
 #corporate-ib-page .cib-requirements { grid-template-columns:1fr; margin-bottom:54px; }
 #corporate-ib-page .cib-requirements-intro { padding:34px; }
 #corporate-ib-page .cib-requirements-intro p { max-width:580px; }
 #corporate-ib-page .cib-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
 #corporate-ib-page .cib-faq { grid-template-columns:1fr; gap:0; }
 #corporate-ib-page .cib-final-cta > .container { flex-direction:column; align-items:flex-start; }
}
@media(max-width:800px) {
 #corporate-ib-page .cib-nav { position:static; }
 #corporate-ib-page :is(#structure,#benefits,#requirements,#onboarding,#faqs) { scroll-margin-top:110px; }
 #corporate-ib-page .cib-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); padding:18px 0; }
 #corporate-ib-page .cib-metrics .stat-cell,#corporate-ib-page .cib-metrics .stat-cell:first-child { padding:22px; }
 #corporate-ib-page .cib-metrics .stat-cell:nth-child(even) { border-right:0; }
 #corporate-ib-page .cib-metrics .stat-cell:nth-child(-n+2) { border-bottom:1px solid var(--cib-line); }
 #corporate-ib-page .cib-benefit-grid { grid-template-columns:1fr; }
}
@media(max-width:600px) {
 #corporate-ib-page .page-hero .editorial-hero-copy { padding:36px 20px; }
 #corporate-ib-page .page-hero h1 { font-size:clamp(48px,12vw,66px); }
 #corporate-ib-page .page-hero .lead { font-size:17px; }
 #corporate-ib-page .page-hero .chip { font-size:11px; }
 #corporate-ib-page .cib-hero-visual { padding:22px 20px; }
 #corporate-ib-page .page-hero .editorial-art { height:235px; }
 #corporate-ib-page .cib-hero-caption > span { font-size:18px; }
 #corporate-ib-page .cib-hero-caption p { font-size:13px; }
 #corporate-ib-page .cib-metrics strong { font-size:31px; }
 #corporate-ib-page .cib-metrics .stat-cell,#corporate-ib-page .cib-metrics .stat-cell:first-child { padding:20px 14px; }
 #corporate-ib-page .cib-metrics span { font-size:10px; }
 #corporate-ib-page .cib-nav { gap:6px 18px; padding:18px 0; }
 #corporate-ib-page .cib-nav a { font-size:12px; }
 #corporate-ib-page .page-body h2 { font-size:34px; }
 #corporate-ib-page .cib-section-index { margin-bottom:20px; font-size:10px; }
 #corporate-ib-page .cib-structure-copy p.cib-lead { font-size:19px; }
 #corporate-ib-page .cib-network { padding:24px 20px; }
 #corporate-ib-page .cib-network-tree { column-gap:14px; }
 #corporate-ib-page .cib-node-root { width:calc((100% - 14px) / 2); }
 #corporate-ib-page .cib-node-direct::before,#corporate-ib-page .cib-node-partners::before { width:calc(50% + 8px); }
 #corporate-ib-page .cib-node { padding:15px 9px; }
 #corporate-ib-page .cib-node strong { font-size:16px; }
 #corporate-ib-page .cib-node > span { font-size:9px; letter-spacing:0; }
 #corporate-ib-page .cib-network-details { min-height:180px; }
 #corporate-ib-page .cib-network-details h3 { font-size:18px; }
 #corporate-ib-page .cib-benefits,#corporate-ib-page .cib-onboarding { padding-bottom:54px; }
 #corporate-ib-page .cib-benefit { padding:30px 28px; }
 #corporate-ib-page .cib-benefit h3 { font-size:27px; }
 #corporate-ib-page .cib-requirements-intro { padding:30px 24px; }
 #corporate-ib-page .cib-requirement-list { padding:4px 24px; }
 #corporate-ib-page .cib-requirement-list article { grid-template-columns:22px minmax(0,1fr); gap:14px; }
 #corporate-ib-page .cib-requirement-list h3 { font-size:20px; }
 #corporate-ib-page .cib-steps { grid-template-columns:1fr; gap:30px; }
 #corporate-ib-page .cib-faq { padding-top:40px; }
 #corporate-ib-page .cib-faq summary { padding:20px 50px 20px 20px; font-size:16px; }
 #corporate-ib-page .cib-faq summary::before { right:16px; top:24px; }
 #corporate-ib-page .cib-faq details p { padding:0 20px 22px; }
 #corporate-ib-page .cib-risk-note { padding:24px; }
 #corporate-ib-page .page-body { padding-bottom:48px; }
 #corporate-ib-page .cib-final-cta { padding:50px 0; }
}
@media(prefers-reduced-motion:reduce) { #corporate-ib-page .cib-node { transition:none; } #corporate-ib-page .cib-network-details > div { animation:none; } }
