.service-opening{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:20px 0 80px;align-items:start}.service-opening h2{font-size:clamp(30px,3.8vw,48px);line-height:1.6;margin:0}.service-opening>p{font-size:17px;line-height:2;margin:10px 0 0}.service-entry{display:grid;grid-template-columns:60px 1fr 32px;gap:24px;padding:36px 20px 36px 0;border-top:1px solid var(--line);transition:background .35s}.service-entry:last-child{border-bottom:1px solid var(--line)}.service-entry .en{font-size:13px;margin:0 0 12px;color:var(--muted)}.service-entry h2{font-size:25px;font-weight:500;line-height:1.6;margin:0 0 14px}.service-entry p{margin:0;font-size:15px;line-height:1.9}.service-entry:hover{background:#edf2f55e}.service-arrow{font-size:25px;transition:transform .35s}.service-entry:hover .service-arrow,.service-entry:focus-visible .service-arrow{transform:translate(4px,-4px)}.service-entry:focus-visible{outline-offset:0}.service-ai{padding:70px 0;border-bottom:1px solid var(--line)}.service-ai h2{font-size:26px}.service-description{max-width:760px;margin:0 auto 60px;font-size:17px;line-height:2.1}.service-description h2{font-size:25px;margin-bottom:24px}.service-description p{margin:0 0 26px}.service-kicker{font-size:14px!important;letter-spacing:.1em;color:var(--muted);margin-top:40px}.service-consult{max-width:760px;padding-top:64px;margin:auto}.service-consult h2{font-size:25px;line-height:1.6}.service-consult p{line-height:2}.work-services{border-top:1px solid var(--line);margin-top:44px;padding:24px 0;display:flex;flex-wrap:wrap;gap:18px 32px}.work-services p{width:100%;font-size:14px;margin:0;color:var(--muted)}@media(max-width:640px){.service-opening{grid-template-columns:1fr;gap:24px;padding-bottom:44px}.service-opening>p,.service-description{font-size:16px}.service-entry{grid-template-columns:24px 1fr 20px;gap:12px;padding:28px 0}.service-entry h2{font-size:20px}.service-entry p{font-size:14px}.service-ai{padding:48px 0}.service-consult{padding-top:40px}.service-consult h2{font-size:22px}}@media(prefers-reduced-motion:reduce){.service-entry,.service-arrow{transition:none}.service-entry:hover .service-arrow{transform:none}}
/* Replaceable square artwork, scoped to the service directory. */
.service-entry{grid-template-columns:40px 144px minmax(0,1fr) 32px;align-items:center;gap:28px}.service-visual{width:144px;aspect-ratio:1;background:#f0f5f6;overflow:hidden}.service-visual img{display:block;width:100%;height:100%;object-fit:contain}.service-ai{display:grid;grid-template-columns:144px minmax(0,1fr);gap:28px;align-items:center}.service-ai-copy h2{margin-top:12px}@media(max-width:640px){.service-entry{grid-template-columns:24px 80px minmax(0,1fr) 16px;gap:10px}.service-visual{width:80px}.service-entry h2{font-size:17px}.service-entry .en{font-size:11px}.service-entry p{font-size:13px}.service-ai{grid-template-columns:80px minmax(0,1fr);gap:20px}}@media(max-width:380px){.service-entry{grid-template-columns:20px 64px minmax(0,1fr) 14px;gap:8px}.service-entry .service-visual{width:64px}}

/* Service artwork: transform-only feedback, no continuous JS or layout changes. */
.service-visual{transition:transform 650ms cubic-bezier(.22,1,.36,1)}
.service-visual img{transition:transform 650ms cubic-bezier(.22,1,.36,1);transform-origin:50% 50%}
@media(hover:hover) and (pointer:fine){
 .service-entry:hover .service-visual,.service-ai .service-visual:hover{transform:translateY(-4px) rotate(-1deg);transition-duration:320ms}
 .service-entry:hover .service-visual img,.service-ai .service-visual:hover img{transform:scale(1.075);transition-duration:380ms}
}
.service-entry:focus-visible .service-visual,.service-ai:focus-within .service-visual{transform:translateY(-4px)}
.service-entry:focus-visible .service-visual img,.service-ai:focus-within .service-visual img{transform:scale(1.075)}
@media(hover:none){.service-entry:active .service-visual,.service-ai .service-visual:active{transform:scale(.97);transition-duration:140ms}}
@media(prefers-reduced-motion:reduce){.service-visual,.service-visual img{transition:none!important;transform:none!important}}
