/* Service cards share the page container width. */
.home-services{background:#fff;padding:60px 0!important}
.home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:100%;margin:auto}
.home-service-intro{grid-column:1 / -1;display:flex;justify-content:center;text-align:center;padding:0 20px 24px}
.home-service-intro h2{font-size:clamp(28px,2.6vw,38px);line-height:1.4;letter-spacing:-.045em;color:#142d49;margin:0;font-weight:700;word-break:keep-all}
.home-service-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 124px;grid-template-rows:auto 1fr;column-gap:12px;min-width:0;height:210px;padding:21px 22px 12px;border:1px solid #d6e0ed;border-radius:12px;overflow:hidden;color:#162a40;background:#fff;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s}
.home-service-card:hover{transform:translateY(-3px);border-color:#6e9ee3;box-shadow:0 10px 25px #163b6818}
.home-service-card:focus-visible{outline:3px solid #1865e8;outline-offset:4px}
.home-service-copy{display:contents}
.home-service-copy h3{grid-column:1 / -1;font-size:20px;line-height:1.5;letter-spacing:-.035em;word-break:keep-all;margin:0;padding-right:23px;color:inherit;font-weight:700}
.home-service-copy p{grid-column:1;grid-row:2;align-self:center;margin:0;font-size:15px;line-height:1.7;color:#61748a;letter-spacing:-.025em}
.home-service-copy p span{display:block;white-space:nowrap}
.home-service-arrow{position:absolute;right:22px;top:21px;font-size:21px;line-height:1.5;color:#9bb2cf}
.home-service-art{grid-column:2;grid-row:2;align-self:center;min-width:0;height:120px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.home-service-art img{display:block;width:100%;height:100%;object-fit:contain;transform:scale(1.18);mix-blend-mode:multiply}
.home-service-card--1{background:linear-gradient(145deg,#0b1d36,#173e70);border-color:#173e70;color:#fff}
.home-service-card--1 .home-service-copy p{color:#d5e5fa}
.home-service-card--1 .home-service-arrow{color:#b8d7ff}
.home-service-card--1 .home-service-art img{filter:none;mix-blend-mode:normal}
.home-service-card--6{background:#edf5ff;border-color:#c5d9f4}
@media(max-width:1100px){.home-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-service-card:last-child{grid-column:1 / -1}}
@media(max-width:600px){.home-services{padding:38px 0!important}.home-service-grid{grid-template-columns:minmax(0,1fr);gap:12px}.home-service-intro{padding:0 0 16px}.home-service-intro h2{font-size:27px}.home-service-card{height:160px;padding:16px 17px 10px;grid-template-columns:minmax(0,1fr) 86px;column-gap:8px}.home-service-copy h3{font-size:17px}.home-service-copy p{font-size:13px;line-height:1.7}.home-service-arrow{top:16px;right:17px;font-size:19px}.home-service-art{height:90px}.home-service-card:last-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.home-service-card{transition:none}.home-service-card:hover{transform:none}}
/* 2026-10-25: tall policy card, half-width specialist cards, final more tile. */
@media(min-width:1101px){
 .home-service-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:auto repeat(3,210px)}
 .home-service-card{grid-column:span 2;height:100%}
 .home-service-card--1{grid-column:1 / 3;grid-row:2 / 4;grid-template-columns:1fr;grid-template-rows:auto auto 1fr}
 .home-service-card--1 .home-service-copy p{grid-row:2;align-self:start;margin-top:16px}
 .home-service-card--1 .home-service-art{grid-column:1;grid-row:3;height:230px;width:100%;align-self:end}
 .home-service-card--2{grid-column:3 / 5;grid-row:2}
 .home-service-card--3{grid-column:5;grid-row:2}
 .home-service-card--7{grid-column:6;grid-row:2}
 .home-service-card--4{grid-column:3 / 5;grid-row:3}
 .home-service-card--5{grid-column:5 / 7;grid-row:3}
 .home-service-card--6{grid-column:1 / 3;grid-row:4}
 .home-service-card--8{grid-column:3;grid-row:4}
 .home-service-card--9{grid-column:4;grid-row:4}
 .home-service-more{grid-column:5 / 7;grid-row:4}
}
@media(min-width:601px){
 .home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9){padding:16px;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:4px}
 .home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9) h3{font-size:16px;line-height:1.45;padding-right:16px}
 .home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9) p{font-size:12px;line-height:1.5;align-self:start;margin-top:4px}
 .home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9) p span{white-space:normal}
 .home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9) .home-service-art{grid-column:1;grid-row:3;justify-self:end;height:70px;width:78px}
 .home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9) .home-service-arrow{right:12px;top:14px;font-size:17px}
}
@media(min-width:601px) and (max-width:1100px){
 .home-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto;grid-auto-rows:210px;grid-auto-flow:row dense}
 .home-service-intro{grid-row:1;height:auto}
 .home-service-card{grid-column:span 2;height:100%}
 .home-service-card--1{grid-row:span 2;grid-template-columns:1fr;grid-template-rows:auto auto 1fr}
 .home-service-card--1 .home-service-art{grid-column:1;grid-row:3;height:210px}
 .home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9){grid-column:span 1}
 .home-service-card.home-service-more{grid-column:span 2}
}
.home-service-card.home-service-more{display:flex;align-items:center;justify-content:center;gap:20px;background:#f3f6fb;font-size:23px;font-weight:600}
@media(max-width:600px){.home-service-card.home-service-more{height:100px}}

.home-service-intro{flex-direction:column;align-items:center;gap:6px}
.home-service-intro .home-service-subtitle{margin:0;color:#2267e8;font-size:18px;font-weight:500;line-height:1.6;word-break:keep-all}
@media(max-width:600px){.home-service-intro .home-service-subtitle{font-size:16px}}

/* Match Compare card headings and place the introduction in the survey slot. */
.home-service-card .home-service-copy h3{font-size:24px;line-height:1.45}
@media(min-width:601px){
.home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9) h3{font-size:24px;overflow-wrap:anywhere}
.home-service-grid{grid-auto-rows:minmax(230px,auto)}
.home-service-card{min-height:230px}
.home-service-intro{padding:12px;text-align:center}
.home-service-intro h2{font-size:clamp(28px,2.6vw,38px)}
.home-service-card.home-service-more{min-height:80px;height:80px;grid-column:1 / -1;grid-row:auto}
}
@media(min-width:1101px){
.home-service-grid{grid-template-rows:repeat(3,minmax(230px,auto)) auto}
.home-service-intro{grid-column:3 / 5;grid-row:1}
.home-service-card--1{grid-column:1 / 3;grid-row:1 / 3}
.home-service-card--2{grid-column:3 / 5;grid-row:2}
.home-service-card--3{grid-column:5;grid-row:1}
.home-service-card--7{grid-column:6;grid-row:1}
.home-service-card--4{grid-column:5 / 7;grid-row:2}
.home-service-card--5{grid-column:1 / 3;grid-row:3}
.home-service-card--6{grid-column:3 / 5;grid-row:3}
.home-service-card--8{grid-column:5;grid-row:3}
.home-service-card--9{grid-column:6;grid-row:3}
.home-service-card.home-service-more{grid-row:4}
}
@media(min-width:601px) and (max-width:1100px){
.home-service-grid{grid-template-rows:auto;grid-auto-flow:row}
.home-service-intro{grid-column:3 / 5;grid-row:1}
.home-service-card--1{grid-column:1 / 3;grid-row:1 / 3}
.home-service-card--2{grid-column:3 / 5;grid-row:2}
}
@media(max-width:720px){.home-service-card .home-service-copy h3{font-size:23px}}
@media(max-width:600px){.home-service-card{height:auto;min-height:150px}.home-service-intro{grid-column:1 / -1;grid-row:1}.home-service-card.home-service-more{height:100px;min-height:100px}}

/* Consistent body typography with separate text and artwork tracks. */
.home-service-card .home-service-copy p{font-size:16px;line-height:1.65;min-width:0}
.home-service-card .home-service-copy p span{white-space:normal;overflow-wrap:break-word}
@media(min-width:601px){.home-service-card:is(.home-service-card--2,.home-service-card--4,.home-service-card--5,.home-service-card--6){grid-template-columns:minmax(0,1fr) clamp(76px,8vw,124px)}}
@media(max-width:600px){
.home-service-card{grid-template-columns:minmax(0,1fr) 76px;column-gap:10px;row-gap:8px}
.home-service-card .home-service-copy p{font-size:15px;line-height:1.65}
.home-service-art{height:84px;width:76px}
}


/* Keep descriptions close to titles; move data analysis to the top right. */
.home-service-card,.home-service-card:is(.home-service-card--3,.home-service-card--7,.home-service-card--8,.home-service-card--9){row-gap:0}
.home-service-card .home-service-copy p{align-self:start;margin-top:8px}
@media(min-width:1101px){
.home-service-card--6{grid-column:5 / 7;grid-row:1}
.home-service-card--3{grid-column:3;grid-row:3}
.home-service-card--7{grid-column:4;grid-row:3}
}

/* Anchor the policy illustration in the lower-right with consistent inset. */
@media(min-width:601px){
.home-service-card--1 .home-service-art{justify-self:end;align-self:end;width:min(82%,280px);height:auto;aspect-ratio:1;margin:24px 8px 16px;overflow:visible}
.home-service-card--1 .home-service-art img{width:100%;height:100%;transform:none;object-fit:contain}
}

/* Slightly tighter title and body leading on all service cards. */
.home-service-card .home-service-copy h3{line-height:1.35}
.home-service-card .home-service-copy p{line-height:1.5}
