/* Insight cards: visible edges, complete badges and aligned reading links. */
body .content-card.article-card{display:flex;flex-direction:column;overflow:visible;padding-bottom:45px;border:1px solid #c8dce7;background:#f5f9fc;min-width:0}
body .article-card .article-art{height:185px;flex:none;overflow:hidden;border-radius:31px 0 0 0;background:#dff1fa!important}
body .article-card .article-art.art-1{background:#e3edf6!important}
body .article-card .article-art.art-2{background:#dff3f3!important}
body .article-card .article-art>.line-icon,body .article-card .article-art>span .line-icon{width:60px;height:60px}
body .article-card .article-art small{font-size:12px;letter-spacing:.04em}
body .article-card .article-card-body{display:flex;flex-direction:column;flex:1;padding:28px 27px 26px;min-width:0}
body .article-card .article-card-body>.eyebrow{font-size:12px;line-height:1.7;letter-spacing:.025em;margin-bottom:18px}
body .article-card .article-card-body :is(h2,h3){font-size:24px;line-height:1.35;letter-spacing:-.025em;padding-bottom:22px;margin-bottom:20px;border-bottom:1px solid #d4e2eb}
body .article-card .article-card-body p{font-size:16px;line-height:1.8;flex:1;margin-bottom:27px}
body .article-card .article-card-body>.text-link{align-self:flex-start;margin-top:auto}
body .article-card>.card-icon{bottom:-35px;z-index:4}

body .article-card .article-card-body>.text-link{font-size:14px}
@media(max-width:1000px){body .insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){body .insights-grid{grid-template-columns:1fr}}
/* Small, local increases over the original compact typography. */
.reading-nav .reading-nav-intro>.eyebrow{font-size:11px}
.reading-nav .reading-nav-intro>p{font-size:13px}
.reading-nav .reading-count{font-size:11px}
.reading-nav nav a{font-size:12px}
.reading-nav nav a>span:first-child{font-size:11px}
.reading-nav .reading-question,.reading-nav .reading-question>span{font-size:11px}
.io-hero .io-kicker{font-size:11px}
.io-hero .io-hero-foot{font-size:11px}
.io-hero .io-secondary{font-size:13px}
.io-hero .io-hero-bottom{font-size:11px}
.io-hero .io-hero-bottom a{font-size:11px}
.io-system .io-system-top{font-size:11px}
.io-system .io-system-bottom{font-size:11px}
.io-system .io-node small{font-size:11px}
.io-system .io-node strong{font-size:12px}
.io-system .io-core small{font-size:11px}
.io-tech .io-tech-heading .eyebrow{font-size:11px}
.io-tech .io-tech-heading p{font-size:11px}
.io-tech .io-tech-item strong{font-size:14px}
.io-tech .io-tech-item small{font-size:11px}
#navigation .mega-services strong,#navigation .mega-links strong{font-size:15px}
#navigation .mega-services small,#navigation .mega-links small{font-size:12px}
#navigation .mega-footer,#navigation .mega-footer a{font-size:12px}
@media(max-width:1000px){#navigation .mega-services strong,#navigation .mega-links strong{font-size:14px}}
.io-system .io-core small{line-height:1.25;letter-spacing:0;max-width:95%}
@media(max-width:480px){.io-system .io-system-canvas{height:320px}}
/* Targeted accessibility polish; retain the established type scale and palette. */
#navigation>a[aria-current=page],.reading-nav nav a>span:first-child{color:#006d8c}
.io-tech-heading p,.io-tech-item small,.spotlight-scope-heading>span,.reading-question{color:#526d81}
.spotlight-outcome strong,body .process-grid>article>span:not(.card-icon),body :is(.sidebar-help,.accent-panel,.careers-strip) .eyebrow{color:#006d8c}
.contact-panel :is(input,select,textarea){scroll-margin-block:130px 90px}
.field-validation-error{display:block;margin-top:6px;color:#a51e35;font-size:13px;font-weight:500;line-height:1.6}
.field-validation-valid{display:none}
.validation-summary-errors{scroll-margin-top:130px}
.validation-summary-errors h3{font-size:18px;letter-spacing:0;margin:0 0 8px}
.validation-summary-errors a{text-decoration:underline;text-underline-offset:3px}
.enquiry-form[aria-busy=true] button{cursor:wait;opacity:.75}
.consent{min-height:44px;padding-block:8px}
@media(min-width:901px){.service-sidebar,.article-toc{max-height:calc(100dvh - 145px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}}
@media(min-width:801px){.reading-nav{max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}}
@media(max-width:760px){.contact-panel :is(input:not([type=checkbox]):not([type=file]),select,textarea){font-size:16px}.contact-panel :is(input[type=file],.form-note,.consent){font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.spotlight-link>span{transition:none}}
