.machine>img,.photo>img,.recruit-photo img{width:100%;height:100%;object-fit:cover;display:block}
.machine>img{position:absolute;inset:0;object-position:center}.machine:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,26,56,.3),transparent 45%)}
.photo{overflow:hidden}.photo:before{display:none}.photo>img{transition:transform .8s ease}.business-grid article:hover .photo>img{transform:scale(1.04)}
.recruit{display:grid;grid-template-columns:1fr 1fr;padding:0}.recruit-copy{padding:100px 8vw}.recruit-photo{min-height:520px;overflow:hidden}.recruit-photo img{object-position:center}
h1,h2{text-wrap:balance;word-break:keep-all}
@media(max-width:720px){.recruit{grid-template-columns:1fr}.recruit-photo{min-height:360px}.machine>img{object-position:62% center}}
@media(max-width:720px){body{overflow-x:hidden}.hero{grid-template-columns:minmax(0,1fr)}.copy,.machine,.recruit-copy,.recruit-photo{min-width:0;width:100%}.recruit{padding:0}.recruit-copy{padding:75px 25px}h1,h2{word-break:normal}h1{font-size:42px}.statement h2,.strength h2,.business h2,.recruit h2,.company h2,.cta h2{font-size:36px}}

@media(max-width:720px){
  .business{padding:78px 20px}
  .business>h2{margin-bottom:30px}
  .business-grid{gap:22px;margin:0 auto 24px}
  .business-grid article{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:12px;padding:0 18px 20px;overflow:hidden;border:1px solid #d9e2ea;border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(6,26,56,.08)}
  .business-grid .photo{grid-column:1/-1;height:auto;aspect-ratio:4/3;margin:0 -18px 18px}
  .business-grid .photo>img{object-position:center}
  .business-grid span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;font-size:12px;line-height:1}
  .business-grid h3{min-width:0;margin:0;font-size:20px;line-height:1.45}
  .business-grid p{grid-column:2;margin:7px 0 0;font-size:13px;line-height:1.75}
  .business>small{display:block;font-size:10px;line-height:1.7}
}

:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
