/* Document content only; original Insights cards, filters and dialogs retain their styles. */
.page-insights .insights-document-section { overflow: hidden; scroll-margin-top: 30px; }
.page-insights .insights-document-section [hidden] { display: none !important; }
.page-insights .insights-document-section .section-heading { max-width: 1160px; text-align: center; margin: 0 auto 48px; }
.page-insights .insights-document-section .section-heading h2 { margin: 0; }
.page-insights .insights-document-section .section-heading .eyebrow { margin-bottom: 20px; }
.page-insights .insights-document-section .section-heading > .insights-document-rich { max-width: 1040px; margin: 24px auto 0; }
.page-insights .insights-document-rich { color: #5c5c5c; font-size: 18px; line-height: 1.7; overflow-wrap: anywhere; }
.page-insights .insights-document-rich p { margin: 0 0 14px; }
.page-insights .insights-document-rich > :last-child { margin-bottom: 0; }
.page-insights .insights-document-rich ul,.page-insights .insights-document-rich ol { padding-left: 22px; }
.page-insights .insights-document-items { display: grid; gap: 28px; }
.page-insights .insights-document-item { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; position: relative; }
.page-insights .insights-document-copy { flex: 1; min-width: 0; }
.page-insights .insights-document-item h3 { font-size: 24px; line-height: 1.4; color: #00719c; font-weight: 600; margin: 0 0 16px; overflow-wrap: anywhere; }
.page-insights .insights-document-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 26px; color: #00719c; font-size: 16px; line-height: 1.5; }
.page-insights .insights-document-link span { flex-shrink: 0; color: inherit; }
.page-insights .insights-document-types { background: #f0f5ff; }
.page-insights .insights-document-types .insights-document-items { grid-template-columns: repeat(4,minmax(0,1fr)); }
.page-insights .insights-document-types .insights-document-item { padding: 28px; border: 1px solid #dce7fa; border-top: 3px solid #4786ff; border-radius: 16px; background: #fff; box-shadow: 0 8px 24px #123c6808; }
.page-insights .insights-document-icon { display: grid; place-items: center; flex-shrink: 0; width: 66px; height: 66px; border-radius: 18px; background: #edf3ff; border: 1px solid #dfebff; margin-bottom: 24px; }
.page-insights .insights-document-icon img { width: 34px; height: 34px; object-fit: contain; filter: invert(41%) sepia(86%) saturate(1511%) hue-rotate(202deg) brightness(101%) contrast(98%); }
.page-insights .insights-document-item:nth-child(even) .insights-document-icon { background: #edf8f2; }
.page-insights .insights-document-topics .insights-document-items { display: flex; justify-content: center; flex-wrap: wrap; }
.page-insights .insights-document-topics .insights-document-item { flex: 0 1 calc((100% - 56px)/3); padding: 30px; border: 1px solid #dce7fa; border-radius: 16px; background: linear-gradient(140deg,#fff 40%,#f3f7ff); }
.page-insights .insights-document-featured { background: #edf8f2; }
.page-insights .insights-document-featured .insights-document-items { grid-template-columns: repeat(3,minmax(0,1fr)); }
.page-insights .insights-document-featured .insights-document-item { align-items: stretch; border: 1px solid #dce7fa; border-radius: 16px; overflow: hidden; background: #fff; box-shadow: 0 10px 25px #11384e08; }
.page-insights .insights-document-photo { height: 235px; overflow: hidden; }
.page-insights .insights-document-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.page-insights .insights-document-featured .insights-document-copy { padding: 26px; }
.page-insights .insights-document-featured .insights-document-link { margin: 0 26px 28px; align-self: flex-start; }
.page-insights .insights-document-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; color: #00719c; font-size: 13px; line-height: 1.5; font-weight: 600; margin-bottom: 20px; }
.page-insights .insights-document-meta span { padding: 5px 10px; border-radius: 6px; background: #eff5ff; }
.page-insights .insights-document-meta time { flex-basis: 100%; color: #666; font-weight: 400; font-size: 14px; }
.page-insights .insights-document-filters { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; max-width: 900px; margin: 0 auto 32px; }
.page-insights .insights-document-filters label { display: grid; gap: 10px; color: #00719c; font-size: 16px; font-weight: 600; min-width: 0; }
.page-insights .insights-document-filters select { width: 100%; min-width: 0; background: #fff; color: #333; border: 1px solid #ccdafa; border-radius: 10px; padding: 14px; font: inherit; }
.page-insights .insights-document-empty { padding: 35px; text-align: center; background: #fff; border: 1px solid #dbe5f6; border-radius: 14px; color: #5c5c5c; }
.page-insights .insights-document-action { display: flex; justify-content: center; margin-top: 36px; }
.page-insights .insights-document-action .button { gap: 18px; }
.page-insights .insights-consultation .consultation-copy > .eyebrow { margin-bottom: 18px; }
.page-insights .insights-contact-description { margin-bottom: 30px; color: #5c5c5c; font-size: 18px; line-height: 29px; }
.page-insights .insights-contact-description > :last-child { margin-bottom: 0; }
.page-insights .insights-contact-description ul,.page-insights .insights-contact-description ol { padding-left: 22px; }
@media(max-width:1100px) {
 .page-insights .insights-document-types .insights-document-items,.page-insights .insights-document-featured .insights-document-items { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .page-insights .insights-document-topics .insights-document-item { flex-basis: calc((100% - 28px)/2); }
 .page-insights .insights-document-photo { height: 210px; }
}
@media(max-width:700px) {
 .page-insights .insights-document-section .section-heading { margin-bottom: 32px; }
 .page-insights .insights-document-rich { font-size: 16px; }
 .page-insights .insights-document-types .insights-document-items,.page-insights .insights-document-featured .insights-document-items,.page-insights .insights-document-filters { grid-template-columns: 1fr; gap: 20px; }
 .page-insights .insights-document-topics .insights-document-item { flex-basis: 100%; }
 .page-insights .insights-document-item h3 { font-size: 22px; }
 .page-insights .insights-document-types .insights-document-item,.page-insights .insights-document-topics .insights-document-item { padding: 24px; }
}
