/* Kwick Blocks modern page system (kbp-*): Partners, Case Studies, About, Products */
/* ===== Partners page redesign (kbp-*), aligned to the home page's navy sections ===== */
.kbp { --g1:#12E58A; --g2:#0A9BF0; --navy:#1f2833; --navy2:#263140; --deep:#141c26; --ink:#e8eef5; --mute:#9fb3c8;
       --grad:linear-gradient(100deg,var(--g1),var(--g2)); letter-spacing:normal; color:var(--ink); }
.kbp section { position:relative; }
.kbp .kbp-grad { background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
.kbp-eyebrow { font-family:'Open Sans',sans-serif; font-weight:600; font-size:14px; letter-spacing:0.14em; text-transform:uppercase; color:#5aa9dc; margin:0 0 14px; }
.kbp-eyebrow-dark { color:#2980b9; }
.kbp-h1 { font-family:'Raleway',sans-serif; font-weight:700; font-size:64px; line-height:1.06; letter-spacing:-0.01em; color:#fff; margin:0 0 22px; }
.kbp-h2 { font-family:'Raleway',sans-serif; font-weight:700; font-size:42px; line-height:1.12; color:#fff; margin:0 0 40px; }
.kbp-h2-dark { color:#1f2833; }
.kbp-lead { font-size:20px; line-height:1.6; color:#c9d6e3; max-width:560px; margin:0 0 30px; }

/* Hero */
.kbp-hero { background:radial-gradient(900px 500px at 78% 40%, rgba(10,155,240,0.16), transparent 60%),
                        radial-gradient(700px 420px at 12% 90%, rgba(18,229,138,0.10), transparent 60%), var(--deep);
            padding:170px 0 110px; overflow:hidden; }
.kbp-net { position:absolute; inset:0; width:100%; height:100%; }
.kbp-hero-grid { position:relative; display:grid; grid-template-columns:1.1fr 0.9fr; gap:40px; align-items:center; }
.kbp-ctas { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:28px; }
.kbp-btn { display:inline-block; padding:15px 28px; border-radius:4px; font-family:'Raleway',sans-serif; font-weight:700; font-size:14px;
           letter-spacing:0.06em; text-transform:uppercase; text-decoration:none !important; transition:transform .2s ease, box-shadow .2s ease; }
.kbp-btn-grad { background:var(--grad); color:#0b1520 !important; box-shadow:0 8px 30px rgba(10,155,240,0.28); }
.kbp-btn-grad:hover { transform:translateY(-2px); box-shadow:0 12px 36px rgba(18,229,138,0.32); }
.kbp-btn-ghost { border:2px solid rgba(255,255,255,0.7); color:#fff !important; }
.kbp-btn-ghost:hover { border-color:#fff; background:rgba(255,255,255,0.06); }
.kbp-trust { display:flex; align-items:center; gap:10px; font-size:15px; color:var(--mute); margin:0; }
.kbp-trust img { border-radius:50%; background:#fff; }
.kbp-dot { width:4px; height:4px; border-radius:50%; background:var(--mute); display:inline-block; }
.kbp-hero-art svg { width:100%; height:auto; max-width:500px; display:block; margin-left:auto; overflow:visible; }
.kbp-nt { font-family:'Raleway',sans-serif; font-weight:700; font-size:26px; fill:#fff; }
.kbp-ns { font-family:'Open Sans',sans-serif; font-size:16px; fill:var(--mute); }
.kbp-ns-acc { fill:#5ee6b0; }
.kbp-flow { fill:none; stroke:url(#kbpG); stroke-width:3; stroke-dasharray:6 10; animation:kbpFlow 1.4s linear infinite; }
.kbp-flow-b { animation-direction:reverse; }
@keyframes kbpFlow { to { stroke-dashoffset:-32; } }
.kbp-node { opacity:0; transform:translateY(16px); animation:kbpIn .7s cubic-bezier(.2,.8,.2,1) forwards; }
.kbp-n1 { animation-delay:.15s; } .kbp-n2 { animation-delay:.35s; } .kbp-n3 { animation-delay:.6s; }
@keyframes kbpIn { to { opacity:1; transform:none; } }

/* Ownership strip */
.kbp-strip { background:var(--navy); border-top:1px solid rgba(255,255,255,0.06); border-bottom:1px solid rgba(255,255,255,0.06); padding:34px 0; }
.kbp-strip-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.kbp-strip-grid > div { border-left:3px solid; border-image:var(--grad) 1; padding-left:18px; }
.kbp-k { display:block; font-family:'Raleway',sans-serif; font-weight:700; font-size:20px; color:#fff; margin-bottom:4px; }
.kbp-v { display:block; color:var(--mute); font-size:16px; line-height:1.5; }

/* Three ways */
.kbp-ways { background:var(--navy2); padding:100px 0; }
.kbp-ways-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.kbp-way { position:relative; background:#2b3747; border-radius:10px; padding:34px 30px 30px; isolation:isolate; transition:transform .25s ease; }
.kbp-way::before { content:""; position:absolute; inset:0; border-radius:10px; padding:1.5px; z-index:-1;
    background:conic-gradient(from var(--a,0deg), var(--g1), var(--g2), transparent 30%, transparent 70%, var(--g1));
    -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude;
    opacity:0; transition:opacity .3s ease; }
.kbp-way:hover { transform:translateY(-4px); }
.kbp-way:hover::before { opacity:1; animation:kbpSpin 2.4s linear infinite; }
@property --a { syntax:'<angle>'; initial-value:0deg; inherits:false; }
@keyframes kbpSpin { to { --a:360deg; } }
.kbp-way-ico { width:120px; height:90px; margin-bottom:18px; }
.kbp-num { position:absolute; top:26px; right:28px; font-family:'Raleway',sans-serif; font-weight:700; font-size:15px; color:#5aa9dc; }
.kbp-way h3 { font-family:'Raleway',sans-serif; font-weight:700; font-size:26px; color:#fff; margin:0 0 8px; }
.kbp-way-line { font-size:19px; color:#dfe8f1; margin:0 0 18px; }
.kbp-best { font-size:15px; line-height:1.55; color:var(--mute); margin:0; padding-top:16px; border-top:1px solid rgba(255,255,255,0.08); }
.kbp-best b { color:#c9d6e3; }

/* Bento */
.kbp-help { background:#f3f6f9; padding:100px 0; color:#3e3e3e; }
.kbp-bento { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.kbp-cell { position:relative; background:#fff; border:1px solid #e1e8ef; border-radius:12px; padding:30px 28px; overflow:hidden; transition:transform .2s ease, box-shadow .2s ease; }
.kbp-cell::after { content:""; position:absolute; inset:0; pointer-events:none; opacity:0; transition:opacity .25s;
    background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%), rgba(18,229,138,0.12), transparent 70%); }
.kbp-cell:hover { transform:translateY(-3px); box-shadow:0 14px 34px rgba(31,40,51,0.08); }
.kbp-cell:hover::after { opacity:1; }
.kbp-wide { grid-column:span 2; }
.kbp-cell h3 { font-family:'Raleway',sans-serif; font-weight:700; font-size:22px; color:#1f2833; margin:18px 0 8px; }
.kbp-cell p { font-size:16px; line-height:1.55; color:#5b6b7d; margin:0; }
.kbp-hex { display:inline-flex; width:52px; height:58px; align-items:center; justify-content:center; background:var(--grad);
           clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); }
.kbp-hex svg { width:24px; height:24px; fill:none; stroke:#fff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.kbp-wide h3 { font-size:26px; }

/* Blocks */
.kbp-blocks { background:var(--deep); padding:110px 0; overflow:hidden; }
.kbp-blocks-grid { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.kbp-proof { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:10px 0 30px; }
.kbp-big { display:block; font-family:'Raleway',sans-serif; font-weight:700; font-size:54px; line-height:1; background:var(--grad);
           -webkit-background-clip:text; background-clip:text; color:transparent; }
.kbp-big small { font-size:24px; }
.kbp-cap { display:block; font-size:15px; line-height:1.5; color:var(--mute); margin-top:8px; }
.kbp-link { font-weight:600; color:#5aa9dc !important; border-bottom:1px solid rgba(90,169,220,0.5); text-decoration:none !important; }
.kbp-help .kbp-link, .kbp-trustband .kbp-link { color:#2980b9 !important; }
.kbp-comb svg { width:100%; max-width:520px; height:auto; display:block; margin:0 auto; overflow:visible; }
.kbp-b polygon { fill:#1f2a37; stroke:url(#kbpG); stroke-width:3; }
.kbp-you polygon { stroke:none; fill:url(#kbpG); }
.kbp-b text { font-family:'Raleway',sans-serif; font-weight:700; font-size:19px; fill:#e8eef5; text-anchor:middle; }
.kbp-you text { fill:#0b1520; font-size:22px; }
.kbp-b { opacity:0; transition:opacity .5s ease, transform .6s cubic-bezier(.2,.8,.2,1); transform-box:fill-box; transform-origin:center; }
.kbp-b1 { transform:translate(-40px,-40px); } .kbp-b2 { transform:translate(40px,-40px); } .kbp-b3 { transform:translate(60px,0); }
.kbp-b4 { transform:translate(40px,40px); } .kbp-b5 { transform:translate(-40px,40px); } .kbp-b6 { transform:translate(-60px,0); }
.kbp-you { transform:scale(0.4); }
.kbp-comb.in .kbp-b { opacity:1; transform:none; }
.kbp-comb.in .kbp-b2 { transition-delay:.1s; } .kbp-comb.in .kbp-b3 { transition-delay:.2s; } .kbp-comb.in .kbp-b4 { transition-delay:.3s; }
.kbp-comb.in .kbp-b5 { transition-delay:.4s; } .kbp-comb.in .kbp-b6 { transition-delay:.5s; } .kbp-comb.in .kbp-you { transition-delay:.85s; }

/* Steps */
.kbp-steps { background:var(--navy); padding:100px 0; }
.kbp-track { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:24px; position:relative; }
.kbp-track::before { content:""; position:absolute; left:12%; right:12%; top:29px; height:2px; background:var(--grad); transform-origin:left;
                     transform:scaleX(0); transition:transform 1.4s cubic-bezier(.2,.8,.2,1); }
.kbp-track.in::before { transform:scaleX(1); }
.kbp-track li { text-align:center; position:relative; }
.kbp-step-hex { display:inline-flex; width:52px; height:60px; align-items:center; justify-content:center; background:var(--grad); color:#0b1520;
                font-family:'Raleway',sans-serif; font-weight:800; font-size:22px; clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); margin-bottom:18px; }
.kbp-track h3 { font-family:'Raleway',sans-serif; font-weight:700; font-size:22px; color:#fff; margin:0 0 8px; }
.kbp-track p { color:var(--mute); font-size:16px; line-height:1.5; margin:0; }

/* Trust */
.kbp-trustband { background:var(--navy2); padding:70px 0 90px; }
.kbp-trust-card { display:flex; gap:30px; align-items:center; background:#f3f6f9; border-radius:14px; padding:36px 40px; max-width:900px; margin:0 auto; color:#3e3e3e; }
.kbp-trust-card img { flex:none; }
.kbp-trust-card h3 { font-family:'Raleway',sans-serif; font-weight:700; font-size:26px; color:#1f2833; margin:0 0 8px; }
.kbp-trust-card p { font-size:17px; line-height:1.6; color:#5b6b7d; margin:0 0 12px; }

/* Reveal */
.kbp-reveal { opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1); }
.kbp-reveal.in { opacity:1; transform:none; }

@media (max-width: 991px) {
    .kbp-hero { padding:130px 0 80px; }
    .kbp-hero-grid, .kbp-blocks-grid { grid-template-columns:1fr; }
    .kbp-hero-art svg { margin:10px auto 0; max-width:380px; }
    .kbp-h1 { font-size:46px; } .kbp-h2 { font-size:34px; }
    .kbp-ways-grid, .kbp-strip-grid { grid-template-columns:1fr; }
    .kbp-bento { grid-template-columns:1fr 1fr; }
    .kbp-track { grid-template-columns:1fr 1fr; row-gap:40px; } .kbp-track::before { display:none; }
}
@media (max-width: 600px) {
    .kbp-h1 { font-size:38px; } .kbp-lead { font-size:18px; }
    .kbp-bento { grid-template-columns:1fr; } .kbp-wide { grid-column:auto; }
    .kbp-proof { grid-template-columns:1fr; }
    .kbp-trust-card { flex-direction:column; text-align:center; padding:30px 24px; }
    .kbp-ways, .kbp-help, .kbp-blocks, .kbp-steps { padding:70px 0; }
}
@media (prefers-reduced-motion: reduce) {
    .kbp-reveal, .kbp-b, .kbp-node { opacity:1 !important; transform:none !important; transition:none !important; animation:none !important; }
    .kbp-flow, .kbp-way:hover::before { animation:none; }
    .kbp-track::before { transform:scaleX(1); transition:none; }
}

/* ===== Shared page hero (Case Studies, About, Products) ===== */
.kbp-hero-sm { padding:160px 0 90px; }
.kbp-hero-sm .kbp-h1 { font-size:58px; }

/* Proof strip (Case Studies) */
.kbp-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.kbp-stat { border-left:3px solid; border-image:var(--grad) 1; padding-left:18px; }
.kbp-stat .kbp-big { font-size:44px; }
.kbp-stat .kbp-cap { margin-top:6px; }

/* Case study rows */
.kbp-case { padding:100px 0; background:var(--navy2); }
.kbp-case.kbp-alt { background:var(--navy); }
.kbp-case-grid { display:grid; grid-template-columns:1.15fr 0.85fr; gap:56px; align-items:center; }
.kbp-case-flip .kbp-case-grid > :first-child { order:2; }
.kbp-case h2 { font-family:'Raleway',sans-serif; font-weight:700; font-size:38px; line-height:1.15; color:#fff; margin:0 0 30px; }
.kbp-flowlist { list-style:none; margin:0 0 28px; padding:0; position:relative; }
.kbp-flowlist::before { content:""; position:absolute; left:21px; top:30px; bottom:30px; width:2px; background:linear-gradient(var(--g1),var(--g2)); opacity:.5; }
.kbp-flowlist li { position:relative; padding:0 0 22px 66px; }
.kbp-flowlist li:last-child { padding-bottom:0; }
.kbp-flowlist .kbp-step-hex { position:absolute; left:0; top:0; width:44px; height:50px; font-size:15px; margin:0; }
.kbp-flowlist b { display:block; font-family:'Raleway',sans-serif; font-size:18px; color:#fff; margin-bottom:4px; }
.kbp-flowlist span { color:#c9d6e3; font-size:17px; line-height:1.55; }
.kbp-flowlist li.kbp-res span { color:#fff; }
.kbp-tags { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 24px; padding:0; list-style:none; }
.kbp-tags li { font-size:14px; color:#c9d6e3; background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.10); border-radius:4px; padding:6px 10px 6px 26px; position:relative; }
.kbp-tags li::before { content:""; position:absolute; left:9px; top:50%; width:10px; height:11px; margin-top:-5.5px; background:var(--grad);
    clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); }
.kbp-showcase { position:relative; border-radius:16px; padding:46px 40px; background:linear-gradient(160deg,#18222e,#111821); overflow:hidden; isolation:isolate; }
.kbp-showcase::before { content:""; position:absolute; inset:0; border-radius:16px; padding:1.5px; z-index:-1; background:var(--grad);
    -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; opacity:.7; }
.kbp-showcase::after { content:""; position:absolute; width:340px; height:340px; right:-120px; bottom:-140px; z-index:-1; opacity:.12; background:var(--grad);
    clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); }
.kbp-showcase .kbp-eyebrow { margin-bottom:22px; }
.kbp-showcase .kbp-big { font-size:76px; }
.kbp-showcase .kbp-big small { font-size:30px; }
.kbp-showcase .kbp-word { font-family:'Raleway',sans-serif; font-weight:700; font-size:46px; line-height:1.1; color:#fff; display:block; }
.kbp-showcase .kbp-cap { font-size:17px; margin-top:14px; max-width:320px; }
.kbp-showcase .kbp-ico { width:64px; height:72px; display:flex; align-items:center; justify-content:center; background:var(--grad); margin-bottom:26px;
    clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); }
.kbp-showcase .kbp-ico svg { width:30px; height:30px; fill:none; stroke:#0b1520; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }

/* Solutions band */
.kbp-sol { background:#f3f6f9; padding:90px 0; color:#3e3e3e; }
.kbp-sol-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-bottom:30px; }
.kbp-sol .kbp-cell .kbp-big { font-size:40px; margin-top:16px; }
.kbp-center { text-align:center; }

/* Founders (About) */
.kbp-founders { background:var(--navy2); padding:100px 0; }
.kbp-founder { display:grid; grid-template-columns:300px 1fr; gap:56px; align-items:center; margin-bottom:90px; }
.kbp-founder:last-child { margin-bottom:0; }
.kbp-founder.kbp-case-flip { grid-template-columns:1fr 300px; }
.kbp-founder.kbp-case-flip .kbp-photo { order:2; }
.kbp-photo { position:relative; width:300px; height:340px; }
.kbp-photo::before { content:""; position:absolute; inset:-8px; background:var(--grad); clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); }
.kbp-photo img { position:relative; width:100%; height:100%; object-fit:cover; clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); }
.kbp-founder h2 { font-family:'Raleway',sans-serif; font-weight:700; font-size:38px; color:#fff; margin:0 0 6px; }
.kbp-role { font-family:'Open Sans',sans-serif; font-weight:600; font-size:16px; letter-spacing:0.08em; text-transform:uppercase; margin:0 0 24px; display:inline-block; }
.kbp-founder p { color:#c9d6e3; font-size:18px; line-height:1.7; margin:0 0 16px; }
.kbp-quote { font-family:'Raleway',sans-serif; font-weight:700; font-size:24px !important; line-height:1.4 !important; color:#fff !important; border-left:3px solid; border-image:var(--grad) 1; padding-left:20px; margin:24px 0 !important; }
.kbp-values { background:var(--navy); padding:70px 0; }

/* Product cards (Products) */
.kbp-prod { background:#f3f6f9; padding:100px 0; color:#3e3e3e; }
.kbp-prod-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.kbp-card { position:relative; background:#fff; border:1px solid #e1e8ef; border-radius:14px; overflow:hidden; display:flex; flex-direction:column; transition:transform .25s ease, box-shadow .25s ease; }
.kbp-card:hover { transform:translateY(-5px); box-shadow:0 18px 40px rgba(31,40,51,0.12); }
.kbp-card-img { position:relative; height:190px; overflow:hidden; }
.kbp-card-img img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.kbp-card:hover .kbp-card-img img { transform:scale(1.06); }
.kbp-card-img::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(20,28,38,0.55)); }
.kbp-card > .kbp-hex { position:absolute; left:22px; top:164px; z-index:2; }
.kbp-card-body { padding:44px 26px 26px; flex:1; display:flex; flex-direction:column; }
.kbp-card h3 { font-family:'Raleway',sans-serif; font-weight:700; font-size:22px; color:#1f2833; margin:0 0 10px; }
.kbp-card p { font-size:16px; line-height:1.55; color:#5b6b7d; margin:0 0 16px; }
.kbp-ideal { margin-top:auto !important; padding-top:14px; border-top:1px solid #e9eef3; font-size:14px !important; }
.kbp-ideal b { color:#1f2833; }
.kbp-card-feature { grid-column:span 2; flex-direction:row; }
.kbp-card-feature .kbp-card-img { height:auto; min-height:300px; width:50%; flex:none; }
.kbp-card-feature > .kbp-hex { left:calc(50% - 26px); top:30px; }
.kbp-card-feature .kbp-card-body { padding:40px 34px 30px 50px; }
.kbp-card-feature h3 { font-size:28px; }

@media (max-width: 991px) {
    .kbp-hero-sm .kbp-h1 { font-size:44px; }
    .kbp-stats { grid-template-columns:1fr 1fr; }
    .kbp-case-grid, .kbp-founder, .kbp-founder.kbp-case-flip { grid-template-columns:1fr; gap:36px; }
    .kbp-case-flip .kbp-case-grid > :first-child, .kbp-founder.kbp-case-flip .kbp-photo { order:0; }
    .kbp-photo { margin:0 auto; }
    .kbp-prod-grid { grid-template-columns:1fr 1fr; }
    .kbp-sol-grid { grid-template-columns:1fr; }
}
@media (max-width: 600px) {
    .kbp-hero-sm .kbp-h1 { font-size:36px; }
    .kbp-case h2, .kbp-founder h2 { font-size:30px; }
    .kbp-showcase .kbp-big { font-size:58px; }
    .kbp-showcase { padding:36px 28px; }
    .kbp-stats { grid-template-columns:1fr; }
    .kbp-prod-grid { grid-template-columns:1fr; }
    .kbp-card-feature { grid-column:auto; flex-direction:column; }
    .kbp-card-feature .kbp-card-img { width:100%; height:190px; min-height:0; }
    .kbp-card-feature > .kbp-hex { left:22px; top:164px; }
    .kbp-card-feature .kbp-card-body { padding:44px 26px 26px; }
    .kbp-photo { width:240px; height:272px; }
    .kbp-case, .kbp-founders, .kbp-prod, .kbp-sol { padding:70px 0; }
}

/* Left-align content blocks (the base theme centres section text) */
.kbp-case-grid, .kbp-founder, .kbp-card, .kbp-cell, .kbp-hero-copy, .kbp-strip-grid, .kbp-stats { text-align:left; }
.kbp-case h2, .kbp-founder h2, .kbp-case .kbp-eyebrow, .kbp-founder .kbp-role { text-align:left !important; }

/* ===== Home page body (kbp redesign) ===== */
.kbp-home-intro { padding:110px 0; }
.kbp-home-intro .kbp-lead { max-width:600px; }
.kbp-ways-2 { grid-template-columns:repeat(2,1fr); }
.kbp-ways-2 .kbp-num { position:static; display:block; font-family:'Open Sans',sans-serif; font-size:13px; letter-spacing:0.14em; text-transform:uppercase; margin-bottom:10px; }
.kbp-ways-2 .kbp-way { padding:36px 34px; text-align:left; }
.kbp-ways-2 .kbp-way h3 { font-size:28px; }
.kbp-ways-2 .kbp-way-line { font-size:18px; line-height:1.6; color:#c9d6e3; margin-bottom:26px; }
.kbp-home-proof .kbp-cell .kbp-eyebrow { font-size:12px; margin:0; }
.kbp-home-proof .kbp-cell h3 { margin-top:10px; }
.kbp-home-proof .kbp-cell .kbp-big { font-size:46px; margin:14px 0 4px; }
.kbp-home-proof .kbp-cell .kbp-link { display:inline-block; margin-top:14px; }
.kbp-video { position:relative; max-width:1000px; margin:0 auto; border-radius:14px; overflow:hidden; isolation:isolate; padding:2px; background:var(--grad);
    box-shadow:0 30px 80px rgba(10,155,240,0.18); }
.kbp-video video { display:block; width:100%; border-radius:12px; background:#0b1520; }
.kbp-family { background:var(--deep) !important; padding:100px 0 !important; }
.kbp-family .product-strip { margin-bottom:36px; }
@media (max-width: 991px) { .kbp-ways-2 { grid-template-columns:1fr; } .kbp-home-intro { padding:80px 0; } }

/* Client logos on case study bands */
.kbp-case-logo { display:block; height:28px; width:auto; max-width:200px; object-fit:contain; object-position:left center; margin:0 0 28px; opacity:.95; }
[id="8mgmt"] .kbp-case-logo, #rocmep .kbp-case-logo { height:40px; }
.kbp-brandrow { display:flex; align-items:center; gap:20px; margin-bottom:26px; }
.kbp-brandrow .kbp-ico, .kbp-brandrow .kbp-case-logo { margin:0; }
[id="8mgmt"] .kbp-brandrow .kbp-case-logo { height:62px; }
