/* V21 — complete technical-focus image, full cell visible without cropping */
.focus{
  padding:clamp(92px,8vw,132px) 0;
  background:#0c2740;
}
.focus-shell{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(400px,.82fr);
  align-items:stretch;
  min-height:0;
  overflow:hidden;
  background:#12324f;
  box-shadow:0 22px 54px rgba(2,14,25,.22);
}
.focus-image{
  position:relative;
  margin:0;
  padding:0;
  width:100%;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#081d30;
}
.focus-image img{
  width:100%;
  height:auto;
  max-height:none;
  display:block;
  object-fit:contain;
  object-position:center;
  background:#081d30;
  filter:none;
}
.focus-image figcaption{
  position:absolute;
  left:16px;
  bottom:14px;
  z-index:2;
  padding:8px 11px;
  background:rgba(5,20,33,.88);
  color:#dfe9ee;
  font-size:.64rem;
  font-weight:760;
  letter-spacing:.085em;
  text-transform:uppercase;
  backdrop-filter:blur(5px);
}
.focus-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(30px,3.2vw,48px);
  background:#12324f;
}
.focus-copy h2{
  max-width:11ch;
  font-size:clamp(2.5rem,3.15vw,3.9rem);
  line-height:.99;
  margin:10px 0 20px;
}
.focus-list{display:grid;gap:0;}
.focus-list article{
  grid-template-columns:minmax(122px,.72fr) 1.28fr;
  gap:14px;
  padding:10px 0;
  margin:0;
}
.focus-list strong{font-size:.72rem;line-height:1.3;}
.focus-list p{font-size:.74rem;line-height:1.42;}
@media (max-width:1120px){
  .focus-shell{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);}
  .focus-copy{padding:30px 28px;}
}
@media (max-width:900px){
  .focus-shell{grid-template-columns:1fr;}
  .focus-image{width:100%;}
  .focus-copy{padding:42px 30px 48px;}
  .focus-copy h2{max-width:13ch;}
  .focus-list article{grid-template-columns:minmax(130px,.65fr) 1.35fr;}
}
@media (max-width:560px){
  .focus{padding:74px 0;}
  .focus-image figcaption{left:10px;bottom:10px;font-size:.57rem;}
  .focus-copy{padding:32px 22px 38px;}
  .focus-list article{grid-template-columns:1fr;gap:4px;padding:12px 0;}
  .focus-list strong{font-size:.76rem;}
  .focus-list p{font-size:.79rem;}
}
