/* Card-led alternative: direct service grids and photographic brand panels. */
.reference-hero.hero { min-height: 535px; }
.reference-hero .hero-copy { padding-top: 56px; padding-bottom: 48px; }
.reference-hero .hero-note { margin-top: 25px; }
.reference-hero h1 { font-size: 51px; }
.hero-photo { width: 61%; }
.hero-angle { width: 64%; }
.services.section { padding-top: 65px; padding-bottom: 80px; }
.services .section-heading { margin-bottom: 42px; }
.reference-service-groups { display: grid; gap: 50px; }
.service-group-heading { display: flex; align-items: end; justify-content: space-between; gap: 25px; padding: 0 0 22px; border-bottom: 2px solid #c4bfb3; margin-bottom: 24px; }
.service-group-heading h3 { font: 500 23px/1.35 'Noto Sans',sans-serif; margin: 0; max-width: 650px; }
.service-group-heading p { font-size: 15px; color: #526470; margin: 0; text-align: left; max-width: 370px; }
.reference-service-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.reference-service-card { padding: 32px 34px; background: #fff; border: 1px solid #e8ebea; box-shadow: 0 7px 24px #101e2810; display: flex; flex-direction: column; scroll-margin-top: 155px; transition: border-color .25s, box-shadow .25s; }
.reference-service-card h3 { font: 600 24px/1.35 'Noto Sans',sans-serif; letter-spacing: -.4px; margin-bottom: 22px; }
.reference-service-card p { font-size: 17px; line-height: 1.65; color: #435660; margin-bottom: 30px; }
.card-detail-link { border: 0; padding: 0; background: none; font-size: 16px; color: #335b70; font-weight: 600; display: inline-flex; align-items: center; gap: 12px; align-self: flex-start; margin-top: auto; text-align: left; }
.card-detail-link svg { width: 18px; height: 18px; }
.reference-service-card:hover { border-color: #9db7c5; box-shadow: 0 10px 30px #101e2817; }
.reference-service-card:target { border-color: #537a8e; }
.positioning { background: #f2f3f1; }
.reference-trust-grid { display: grid; grid-template-columns: repeat(12,1fr); gap: 24px; }
.trust-card { position: relative; isolation: isolate; min-height: 295px; padding: 35px; overflow: hidden; box-shadow: 0 7px 22px #101e2812; }
.reference-trust-grid .trust-card { grid-column: span 6; }
.reference-trust-grid .trust-card:nth-child(3) { grid-column: span 5; }
.reference-trust-grid .trust-card:nth-child(4) { grid-column: span 7; }
.trust-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .7s ease; }
.trust-card::before { content: ''; position: absolute; inset: 0; z-index: -1; }
.trust-navy { color: #fff; }.trust-navy::before { background: #101e28e8; }
.trust-blue { color: #101e28; }.trust-blue::before { background: #bcd5e3eB; }
.trust-stone { color: #101e28; }.trust-stone::before { background: #c4bfb3eb; }
.trust-card h3 { font: 600 26px/1.3 'Noto Sans',sans-serif; letter-spacing: -.4px; margin-bottom: 24px; }
.trust-card p { font-size: 17px; line-height: 1.65; color: inherit; margin: 0; }
.trust-card > div > span { display: block; font-size: 15px; margin-top: 25px; border-top: 1px solid currentColor; padding-top: 18px; opacity: .85; }
.business-value { background: white; color: var(--navy); }
.business-value .eyebrow { color: #526470; }
.business-value .section-heading > p { color: #435660; }
.business-value > .section-finance { display: none; }
.reference-result-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.reference-result-cards .trust-card:last-child { grid-column: 1 / -1; min-height: 245px; }
.reference-result-cards .trust-card:last-child > div { max-width: 850px; }
.reference-result-cards .trust-card p { color: inherit; }
.reference-role-cards, .reference-problem-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.reference-role-cards { grid-template-columns: repeat(3,1fr); }
.reference-role-cards article, .reference-problem-cards article { padding: 30px; background: white; box-shadow: 0 7px 24px #101e2810; border: 1px solid #e6ecee; }
.reference-role-cards h3, .reference-problem-cards h3 { font: 600 23px/1.35 'Noto Sans',sans-serif; margin-bottom: 20px; }
.reference-role-cards p, .reference-problem-cards p { font-size: 17px; line-height: 1.65; color: #435660; margin-bottom: 0; }
.reference-problem-cards .problem-question { font-size: 15px; margin-bottom: 18px; }
@media(hover:hover) and (pointer:fine) { .trust-card:hover > img { transform: scale(1.03); } .card-detail-link:hover { color: #101e28; } }
@media(max-width:1100px) and (min-width:801px) { .reference-hero h1 { font-size: 44px; } .reference-role-cards { grid-template-columns: 1fr; } }
@media(max-width:800px) {
 .reference-hero.hero { min-height: auto; padding-bottom: 0; }
 .reference-hero .hero-copy { padding: 15px 0 40px; }
 .reference-hero h1 { font-size: 42px; }
 .hero-photo { width: 100%; }
 .hero-angle { width: 100%; }
 .services.section { padding-top: 45px; }
 .service-group-heading { display: block; }
 .service-group-heading h3 { font-size: 22px; margin-bottom: 12px; }
 .reference-service-cards,.reference-role-cards,.reference-problem-cards,.reference-result-cards { grid-template-columns: 1fr; }
 .reference-service-card { padding: 27px 24px; }
 .reference-service-card h3 { font-size: 22px; }
 .reference-trust-grid { grid-template-columns: 1fr; }
 .reference-trust-grid .trust-card, .reference-trust-grid .trust-card:nth-child(3), .reference-trust-grid .trust-card:nth-child(4), .reference-result-cards .trust-card:last-child { grid-column: auto; }
 .trust-card { padding: 28px 25px; min-height: 285px; }
 .trust-card h3 { font-size: 24px; }
}
@media(prefers-reduced-motion:reduce) { .trust-card:hover > img { transform: none; } }
