/* Selected palette: Corporate Blue. */
:root{--ink:#123650;--blue:#2476aa;--pale:#e6f1f8;--line:#cbdfea;--corporate-blue:#2476aa;--corporate-navy:#123650}
.utility,.about{background:var(--corporate-navy)}
.hero{background:#e6f1f8;border-bottom-color:#cbdfea}
.hero h1 span{color:var(--corporate-blue)}
.hero-panel{background:linear-gradient(145deg,#1b4c6d,#123650);border-color:#315b78;border-top-color:#2476aa}
.panel-bottom{background:#0d2a40}
.button{background:#2476aa;box-shadow:0 4px 12px #2476aa18}
.button:hover{background:#1b608c;box-shadow:0 6px 16px #2476aa25}
.button.small{background:white;color:#123650;border-color:#aac7db}
.button.small:hover{background:#e6f1f8;color:#123650}
#services,.portfolio{background:#eef5fa}
.card,.service-block{border-color:#cbdfea;border-top-color:#2476aa}
.solution-links a{border-color:#cbdfea;border-top:3px solid #2476aa}
.solution-links a:hover,.project[open]{border-color:#2476aa}
.service-cta,.contact-grid,.company-history,.company-person,.coverage-map,.bank-panel{background:#e6f1f8;border-color:#cbdfea}
.page-back{border-color:#cbdfea}.page-back:hover{background:#e6f1f8;color:#1b608c}
.partner-list{border-color:#cbdfea}.partner-list li{color:#123650}
footer{background:#123650;color:#dcebf5;border-top-color:#284c68}
.footer-top p,.footer-bottom,.site-notice,.site-updated{color:#dcebf5}
.footer-bottom{border-top-color:#365972}
footer a[href='terms.html'],footer a[href='acceptable-use.html'],footer a[href='privacy.html'],footer a[href='banking.html']{color:#ff8fa7}
footer a[href='terms.html']:hover,footer a[href='acceptable-use.html']:hover,footer a[href='privacy.html']:hover,footer a[href='banking.html']:hover{color:#ffb7c7}

.copyright-zero{color:#ff8fa7;font-weight:700}

.hero-tagline{display:inline-block;max-width:100%;text-align:center}.hero-tagline span{display:block}

#navigation a[aria-current="page"]{color:#1b608c;text-decoration:underline;text-underline-offset:7px}

/* More compact page introductions and company spacing. */
.service-page,.legal{padding-top:22px}
.service-intro{padding:10px 0 20px}
.service-intro h1,.legal h1{margin-bottom:14px}
.service-intro .lead{margin-bottom:8px}
.company-section{margin-top:8px}
.company-history{margin:16px 0;padding:24px}
.company-grid,.company-person{margin:20px 0}
.segmented-intro{padding-top:22px}
.segmented-section{padding-top:22px}
@media(max-width:760px){.service-page,.legal{padding-top:18px}.service-intro{padding:8px 0 16px}.company-section{margin-top:4px}.company-history,.company-person{padding:22px}}

/* Compact spacing refinement. */
header .nav{padding:12px 0}
.service-page,.legal{padding-top:14px}
.service-intro{padding:4px 0 12px}
.service-intro h1,.legal h1{margin-bottom:10px}
.service-intro .lead{margin-bottom:0}
.company-section{margin-top:0}
.company-history{margin:12px 0;padding:20px}
.company-grid,.company-person{margin:16px 0}
.company-person{padding:24px}
.segmented-intro{padding-top:16px}
.segmented-section{padding-top:16px}
@media(max-width:760px){header .nav{padding:10px 0}.service-page,.legal{padding-top:12px}.service-intro{padding:4px 0 10px}.company-history,.company-person{padding:20px}}

.about-page{padding-top:2px!important}.about-page .service-intro{padding-top:0!important}.about-page .service-intro h1{margin-top:0}

.about-page .company-grid .service-block{padding-top:16px}.about-page .company-grid .service-block h2{margin-top:0;margin-bottom:12px}@media(max-width:760px){.about-page .company-grid .service-block{padding-top:14px}}

/* Consistent compact heading inset across site cards. */
.service-block,.card,.solution-links a,.company-history,.company-person,.service-cta,.bank-panel,.contact-grid,.more-services{padding-top:16px}
.service-block>h2,.card>h3,.company-history>h3,.company-person>h2,.service-cta>h2,.bank-panel>h2,.more-services h3{margin-top:0}
.project summary,.portfolio-client{padding-top:16px}
@media(max-width:760px){.service-block,.card,.solution-links a,.company-history,.company-person,.service-cta,.bank-panel,.contact-grid,.more-services,.project summary,.portfolio-client{padding-top:14px}}

.service-block,.card,.solution-links a,.company-history,.company-person,.service-cta,.bank-panel,.contact-grid,.more-services,.project summary,.portfolio-client,.about-page .company-grid .service-block{padding-top:4px!important}

/* Compact lower inset, while keeping content clear of the border. */
.service-block,.card,.solution-links a,.company-history,.company-person,.service-cta,.bank-panel,.contact-grid,.more-services,.portfolio-client{padding-bottom:12px}
.service-block>:last-child,.card>:last-child,.company-history>:last-child,.company-person>:last-child,.service-cta>:last-child,.bank-panel>:last-child,.portfolio-client>:last-child{margin-bottom:0}
.project summary{padding-bottom:12px}
.project>p,.project-description{margin-bottom:12px}
@media(max-width:760px){.service-block,.card,.solution-links a,.company-history,.company-person,.service-cta,.bank-panel,.contact-grid,.more-services,.portfolio-client,.project summary{padding-bottom:10px}}

/* Unified card spacing: compact borders, consistent internal rhythm. */
.service-block,.card,.solution-links a,.company-history,.company-person,.service-cta,.bank-panel,.contact-grid,.more-services,.portfolio-client,.about-page .company-grid .service-block{padding-top:8px!important;padding-bottom:12px!important}
.service-block>h2,.card>h3,.company-history>h3,.company-person>h2,.service-cta>h2,.bank-panel>h2{margin:0 0 12px;line-height:1.3}
.service-block>p,.card>p,.company-history>p,.company-person>p,.service-cta>p,.bank-panel>p{margin:0 0 12px;line-height:1.6}
.service-block ul,.company-history ul,.company-person ul{margin:12px 0;padding-left:22px}
.service-block li,.company-history li,.company-person li{margin:4px 0;line-height:1.6}
.technical-details{margin-top:16px;padding-top:12px}
.technical-details>div{padding-top:12px}
.card .technical-details{margin-bottom:16px}
.service-block>:last-child,.card>:last-child,.company-history>:last-child,.company-person>:last-child,.service-cta>:last-child,.bank-panel>:last-child{margin-bottom:0}
.project summary,.portfolio-client{padding-top:12px;padding-bottom:12px}
.project h3{margin-top:8px;line-height:1.3}
.project-description{padding-top:12px;margin-bottom:12px}
.project-description h4{margin-bottom:8px}.project-description li{margin-bottom:4px}
.solution-links strong{margin-bottom:8px;line-height:1.3}
.company-grid,.company-person{margin:16px 0}

/* Compact, uniform page rhythm. */
.section{padding:32px 0}.partners.section,.partners{padding:24px 0}
.section-head{margin-bottom:20px;gap:24px}
.hero{padding:32px 0}.hero-grid{gap:32px}.hero-note{margin-top:16px}
.service-page,.legal{padding-top:12px;padding-bottom:32px}
.service-intro{padding:0 0 16px}.service-intro h1,.legal h1{margin:0 0 12px}
.service-intro .lead{margin:0 0 8px}.service-intro>p:last-child{margin-bottom:0}
.segmented-intro{padding-top:12px}.segmented-intro h1{margin:0}.segmented-section{padding-top:20px}
.cards,.service-grid,.portfolio-grid,.solution-links{gap:16px}
.service-cta{margin-top:20px}.service-cta .actions{margin-top:12px}
.company-section{margin-top:0}.company-history{margin:12px 0}.company-grid,.company-person{margin:16px 0}
.contact-grid{margin-top:20px;gap:20px}.contact-grid h3{margin:0 0 8px}.contact-grid .subheading{margin-top:16px}
.service-bottom{margin-top:20px;padding-top:16px}
footer{padding:20px 0}.footer-bottom{margin-top:16px;padding-top:16px}.site-notice{padding:16px 0}
.coverage-map{margin:16px 0;padding:16px}.coverage-form fieldset{margin:16px 0}.coverage-explanation,.coverage-privacy,.coverage-fallback{margin:12px 0}
@media(max-width:760px){.section{padding:24px 0}.hero{padding:24px 0}.partners.section,.partners{padding:20px 0}.service-page,.legal{padding-bottom:24px}.cards,.service-grid,.portfolio-grid,.solution-links{gap:16px}.contact-grid{margin-top:16px}.section-head{margin-bottom:16px}}

/* Slightly smaller, consistent body text and service lists. */
body{font-size:15px}
.card p,.card li,.service-block p,.service-block li,.project p,.project-description,.project-description li,.company-history p,.company-history li,.company-person p,.legal p,.legal li,.coverage-form{font-size:15px;line-height:1.6}
.service-benefit{font-size:15px!important}
.solution-links span{font-size:14px}
.intro,.section-head>p{font-size:16px}
.service-intro>p:last-child{font-size:16px}
.project-description h4{font-size:15px}

@media(min-width:1001px){.connected-heading{white-space:nowrap;font-size:32px;letter-spacing:-.8px}}@media(max-width:1000px){.connected-heading{white-space:normal}}

.section-head h2,.about h2,.contact-heading h2{font-size:clamp(28px,2.7vw,34px)}.section-head>div{min-width:0}.hero-panel h2{font-size:27px}

.solutions-heading{display:block}.solutions-heading>p{max-width:780px;margin:10px 0 0;text-align:left}

/* Uniform blue borders override legacy per-card colours. */
.card:nth-child(n),.service-block,.solution-links a,.bank-panel,.hero-panel{border-top-color:#2476aa!important}.project,.project[open],.company-history,.company-person,.service-cta,.contact-grid,.coverage-map,.more-services{border-color:#cbdfea}.solution-links a:hover{border-color:#2476aa}

.card .trend-summary p{margin:8px 0;line-height:1.5}.card .trend-summary ul{margin:8px 0;padding-top:0;border-top:0;padding-left:20px}.card .trend-summary li{margin:3px 0;line-height:1.5}.card .trend-summary p:last-child{margin-bottom:0}

/* Matching compact content spacing in all expandable tabs. */
details p,.card details p,.service-block details p{margin:8px 0;line-height:1.5}
details ul,.card details ul,.service-block details ul{margin:8px 0;padding-top:0;border-top:0;padding-left:20px}
details li,.card details li,.service-block details li{margin:3px 0;line-height:1.5}
details p:last-child,details ul:last-child{margin-bottom:0}
.technical-details>div{padding-top:8px}
.escan-content{padding-top:8px}.escan-content h4{margin:12px 0 8px}

.portfolio-intro span{display:block;overflow-wrap:break-word}
@media(max-width:760px){.portfolio .section-head{display:block}.portfolio-intro{max-width:100%!important;margin-top:10px!important;font-size:15px!important;line-height:1.5}.portfolio-grid{grid-template-columns:minmax(0,1fr)}.project{min-width:0}.project summary{min-height:48px}.project h3,.project-description{overflow-wrap:break-word}.portfolio-intro span+span{margin-top:4px}}

.project h3{font-size:18px;line-height:1.3;white-space:normal;overflow-wrap:break-word}@media(max-width:760px){.project h3{font-size:18px;max-width:100%}}
