/* Reach Insights Blog v0.1.0. Fully scoped: no site-wide Elementor/theme changes. */
.rib-root{--rib-navy:#02215f;--rib-teal:#00738e;--rib-orange:#ed7d31;--rib-muted:#52677b;--rib-line:#dbe3ed;color:var(--rib-navy);font-family:inherit;font-size:16px}
.rib-root *{box-sizing:border-box}
.rib-root .rib-container{width:min(1200px,calc(100% - 44px));margin-inline:auto}
.rib-root .rib-intro{background:#fff;border-bottom:1px solid #e3e8ef;padding:clamp(18px,2vw,30px) 0 18px}
.rib-root .rib-kicker{display:flex;align-items:center;gap:10px;color:#00546d;font-weight:800;font-size:11px;line-height:1.45;letter-spacing:.09em;text-transform:uppercase;margin:0 0 12px}
.rib-root .rib-kicker span{display:inline-block;width:24px;height:3px;background:var(--rib-orange);border-radius:5px}
.rib-root .rib-intro h1{color:var(--rib-navy);font-size:clamp(30px,2.9vw,45px);letter-spacing:-.04em;line-height:1.14;font-weight:800;margin:0 0 10px}
.rib-root .rib-intro h1 em{font-style:normal;color:var(--rib-teal)}
.rib-root .rib-lead{color:#394f66;font-size:clamp(15px,1.2vw,17px);line-height:1.55;max-width:74ch;margin:0}
.rib-root .rib-library{background:#f8fafc;padding:12px 0 62px}
.rib-root .rib-topic-nav{display:flex;align-items:stretch;min-height:48px;overflow-x:auto;scrollbar-width:thin;border:1px solid #dce5ef;background:white;border-radius:9px;margin-bottom:14px;box-shadow:0 5px 18px rgba(2,33,95,.035)}
.rib-root .rib-topic{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;white-space:nowrap;min-height:48px;padding:10px 16px;text-decoration:none;border-bottom:3px solid transparent;color:#3d526b;font-size:12px;font-weight:750;line-height:1.2}
.rib-root .rib-topic:hover,.rib-root .rib-topic:focus-visible{background:#f4f8fc;color:var(--rib-navy)}
.rib-root .rib-topic.is-active{border-bottom-color:var(--rib-orange);background:#f5f9fc;color:var(--rib-navy)}
.rib-root .rib-result-head{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:10px 20px;margin-bottom:16px}
.rib-root .rib-eyebrow{color:#00546d;text-transform:uppercase;font-size:10px;letter-spacing:.08em;font-weight:800;margin:0 0 5px}
.rib-root .rib-result-head h2{font-size:clamp(25px,2.3vw,34px);line-height:1.2;color:var(--rib-navy);margin:0;font-weight:800;letter-spacing:-.025em}
.rib-root .rib-count{font-size:12px;font-weight:650;color:#566a82;margin:0 0 3px}
.rib-root .rib-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.rib-root .rib-card{display:flex;flex-direction:column;background:#fff;border:1px solid #dbe3ed;border-radius:11px;box-shadow:0 6px 18px rgba(2,33,95,.045);overflow:hidden;min-width:0;margin:0}
.rib-root .rib-cover{display:block;position:relative;width:100%;aspect-ratio:16/7.4;overflow:hidden;background:#eaf0f7;text-decoration:none}
.rib-root .rib-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease;background:#eaf0f7}
.rib-root .rib-cover img.rib-image--graphic{object-fit:contain;background:#061c45}
.rib-root .rib-cover:hover img{transform:scale(1.025)}
.rib-root .rib-fallback{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:absolute;inset:0;padding:18px;background:linear-gradient(135deg,#02215f,#094477 70%,#00738e);color:#fff}
.rib-root .rib-fallback strong{font-size:22px;letter-spacing:-.02em;color:#fff}
.rib-root .rib-fallback small{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#eef5ff}
.rib-root .rib-card-content{display:flex;flex-direction:column;gap:9px;flex:1;min-width:0;padding:16px}
.rib-root .rib-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;color:#5a7088;font-size:10px;line-height:1.35}
.rib-root .rib-pill{display:inline-block;background:#e9f5f8;color:#00546d;font-size:10px;line-height:1.25;font-weight:800;text-transform:uppercase;border-radius:5px;padding:5px 7px;max-width:100%;overflow-wrap:anywhere}
.rib-root .rib-card h3{font-size:clamp(15px,1.05vw,18px);line-height:1.37;letter-spacing:-.015em;color:var(--rib-navy);font-weight:800;margin:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.rib-root .rib-card h3 a{color:inherit;text-decoration:none}
.rib-root .rib-card h3 a:hover{text-decoration:underline}
.rib-root .rib-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;color:#53677b;font-size:12px;line-height:1.6;margin:0}
.rib-root .rib-card-foot{border-top:1px solid #e3e9f0;margin-top:auto;padding-top:10px}
.rib-root .rib-card-foot a{display:inline-flex;align-items:center;gap:4px;color:var(--rib-navy);text-decoration:none;font-size:12px;font-weight:750}
.rib-root .rib-card-foot a:hover{text-decoration:underline}
.rib-root .rib-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:28px auto 0}
.rib-root .rib-page{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:38px;padding:6px 10px;border:1px solid #d0deed;background:#fff;border-radius:6px;color:var(--rib-navy);font-size:12px;font-weight:750;text-decoration:none}
.rib-root .rib-page:hover{border-color:var(--rib-orange);background:#f5f9fc}
.rib-root .rib-page.is-current{background:var(--rib-navy);border-color:var(--rib-navy);color:#fff}
.rib-root .rib-page-gap{color:#74859a;padding:0 5px}
.rib-root .rib-empty{padding:30px 20px;color:#52677b;background:#fff;border:1px dashed #c3d4e5;border-radius:9px}
.rib-root a:focus-visible{outline:2px solid var(--rib-orange);outline-offset:2px}
@media(max-width:1070px){.rib-root .rib-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rib-root .rib-card h3{font-size:17px}}
@media(max-width:680px){
 .rib-root .rib-container{width:min(100% - 28px,1200px)}
 .rib-root .rib-intro{padding:18px 0 14px}
 .rib-root .rib-intro h1{font-size:clamp(28px,7vw,36px)}
 .rib-root .rib-lead{font-size:14px}
 .rib-root .rib-topic-nav{margin-bottom:14px}
 .rib-root .rib-topic{padding:9px 12px;font-size:11px}
 .rib-root .rib-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .rib-root .rib-card{display:grid;grid-template-columns:minmax(110px,36%) minmax(0,1fr);min-height:151px}
 .rib-root .rib-cover{width:100%;height:100%;min-height:151px;aspect-ratio:auto}
 .rib-root .rib-card-content{padding:12px;gap:7px}
 .rib-root .rib-meta{font-size:9px;gap:5px}
 .rib-root .rib-pill{font-size:9px;padding:3px 5px}
 .rib-root .rib-card h3{font-size:14px;line-height:1.33;-webkit-line-clamp:4;line-clamp:4}
 .rib-root .rib-excerpt{display:none}
 .rib-root .rib-card-foot{border:0;padding-top:0}
 .rib-root .rib-card-foot a{font-size:11px}
 .rib-root .rib-fallback{padding:10px}
 .rib-root .rib-fallback strong{font-size:17px}
}
@media(max-width:360px){.rib-root .rib-card{grid-template-columns:104px minmax(0,1fr)}.rib-root .rib-card h3{font-size:13px}.rib-root .rib-card-content{padding:9px}}
@media(prefers-reduced-motion:reduce){.rib-root .rib-cover:hover img{transform:none}.rib-root .rib-cover img{transition:none}}
