/* Service listing matches the established homepage diagrams and responsive rows. */
.inner-page #services .section-heading { margin-bottom:40px; }
.inner-page #services .service-grid { display:block; }
.inner-page #services .service-card { display:grid; grid-template-columns:clamp(168px,16vw,224px) minmax(260px,.9fr) minmax(300px,1.1fr) 32px; grid-template-rows:auto; align-items:center; gap:28px; padding:26px 0!important; background:transparent; }
.inner-page #services .service-card:hover { background:transparent; }
.inner-page #services .service-diagram { grid-area:auto; margin:0; width:100%; align-self:center; background:#edf0e8; color:#293229; }
.inner-page #services .service-diagram-caption { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:14px 16px 0; font-family:Inter,sans-serif; font-size:9px; font-weight:600; letter-spacing:.075em; }
.inner-page #services .service-diagram-caption>span:first-child { color:#697364; }
.inner-page #services .service-diagram svg { display:block; width:100%; height:auto; }
.inner-page #services .service-diagram--operations { background:#253126; color:#f4f6ef; }
.inner-page #services .service-diagram--operations .service-diagram-caption>span:first-child { color:var(--brand-lime); }
.inner-page #services .service-diagram--ai { background:var(--brand-lime); }
.inner-page #services .service-heading,.inner-page #services .service-details { min-width:0; }
.inner-page #services .service-card h3 { margin:0; font-size:clamp(27px,2.25vw,36px); line-height:1.55; font-weight:650; letter-spacing:-.055em; }
.inner-page #services .service-card:hover h3 { color:#526b37; }
.inner-page #services .service-jp { margin:12px 0 0; font-size:12px; line-height:1.7; color:#697165; }
.inner-page #services .service-body { margin:0; font-size:15px; line-height:1.95; color:#696d67; }
.inner-page #services .service-tags { margin:15px 0 0; gap:5px 8px; }
.inner-page #services .service-tags li { padding:0; font-size:10px; line-height:1.6; color:#7a8076; background:none; }
.inner-page #services .service-tags li+li::before { margin-right:8px; color:#c1c7ba; }
.inner-page #services .service-link { grid-area:auto; align-self:center; margin:0; padding:0; width:auto; min-width:0; font-size:0; }
.inner-page #services .service-link>span { color:#526b37; font-size:30px; }
.inner-page #services .service-card:focus-visible { outline:2px solid #526b37; outline-offset:5px; }
.inner-page #services .section-end-link { margin-top:26px; }
@media(max-width:1100px) {
 .inner-page #services .service-card { grid-template-columns:172px minmax(0,1fr) 28px; gap:18px 26px; }
 .inner-page #services .service-diagram { grid-column:1; grid-row:1/3; }
 .inner-page #services .service-heading { grid-column:2; grid-row:1; }
 .inner-page #services .service-details { grid-column:2; grid-row:2; }
 .inner-page #services .service-link { grid-column:3; grid-row:1/3; }
 .inner-page #services .service-card h3 { font-size:29px; line-height:1.45; }
 .inner-page #services .service-card h3 br { display:none; }
 .inner-page #services .service-jp { margin-top:7px; }
 .inner-page #services .service-body { font-size:14px; }
 .inner-page #services .service-tags { margin-top:12px; }
}
@media(max-width:850px) {
 .inner-page #services .service-card { grid-template-columns:152px minmax(0,1fr) 24px; gap:15px 22px; }
 .inner-page #services .service-card h3 { font-size:27px; }
}
@media(max-width:600px) {
 .inner-page #services .section-heading { margin-bottom:28px; }
 .inner-page #services .service-card { grid-template-columns:108px minmax(0,1fr) 20px; gap:20px 14px; padding:25px 0!important; }
 .inner-page #services .service-diagram { grid-column:1; grid-row:1; align-self:start; }
 .inner-page #services .service-diagram-caption { padding:9px 9px 0; font-size:6px; letter-spacing:.04em; gap:4px; }
 .inner-page #services .service-heading { grid-column:2/-1; grid-row:1; align-self:center; }
 .inner-page #services .service-card h3 { font-size:clamp(20px,5vw,27px); line-height:1.6; }
 .inner-page #services .service-card h3 br { display:initial; }
 .inner-page #services .service-jp { font-size:10px; line-height:1.5; margin-top:8px; }
 .inner-page #services .service-details { grid-column:1/3; grid-row:2; }
 .inner-page #services .service-body { font-size:14px; line-height:1.95; }
 .inner-page #services .service-tags { margin-top:12px; }
 .inner-page #services .service-tags li { font-size:10px; }
 .inner-page #services .service-link { grid-column:3; grid-row:2; align-self:start; }
 .inner-page #services .service-link>span { font-size:25px; }
}
@media(max-width:360px) {
 .inner-page #services .service-card { grid-template-columns:88px minmax(0,1fr) 18px; column-gap:11px; }
 .inner-page #services .service-diagram-caption { padding:8px 7px 0; font-size:5px; }
 .inner-page #services .service-card h3 { font-size:18px; }
 .inner-page #services .service-jp { font-size:9px; }
}

.inner-page #services .service-card{padding-block:22px!important}
.inner-page #services .service-diagram{max-height:164px;overflow:hidden}
.inner-page #services .service-diagram svg{height:128px}
.inner-page #services .service-card h3{font-size:clamp(26px,2.1vw,34px)}
@media(max-width:600px){
 .inner-page #services .service-card{padding-block:20px!important}
 .inner-page #services .service-diagram{max-height:110px}
 .inner-page #services .service-diagram-caption{font-size:8px;padding:10px 10px 0}
 .inner-page #services .service-diagram svg{height:82px}
 .inner-page #services .service-card h3{font-size:25px}
}

