/* Reusable native Image blocks: the image remains editable, while CSS supplies
   blur and opacity. Only selected sections receive a decorative photograph. */
.ia-ambient-section { position:relative; isolation:isolate; overflow:hidden; }
.ia-ambient-section > .ia-ambient-image {
  position:absolute; inset:-18px; z-index:-1; max-width:none; margin:0!important;
  pointer-events:none; opacity:.055; filter:blur(12px) saturate(.65);
}
.ia-ambient-section.ia-section-dark > .ia-ambient-image { opacity:.13; }
.ia-ambient-image img { display:block; width:100%; height:100%; object-fit:cover; }
.ia-ambient-section > .ia-shell { position:relative; z-index:1; }
.ia-hero-scene.ia-soft-hero > .ia-hero-background {
  inset:-18px; background-attachment:scroll; opacity:.25;
  filter:blur(9px) saturate(.7);
}
.ia-hero.ia-soft-hero::before { background:linear-gradient(90deg,#0d1016ed,#0d1016c9 60%,#0d1016a6); }
.ia-hero.ia-soft-hero::after { opacity:.055; }
.ia-section .ia-intro-with-image {
  display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);
  column-gap:clamp(1.5rem,4vw,4rem); align-items:start;
}
.ia-intro-with-image > :not(.ia-editorial-image) { grid-column:1; }
.ia-intro-with-image > .ia-editorial-image { grid-column:2; grid-row:1 / span 3; align-self:center; margin:0!important; }
.sa-narrative-home .ia-intro-with-image .ia-lead { width:100%; max-width:64ch; }
.ia-editorial-image img { display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; border-radius:4px; }
.ia-inner-page .ia-service-image img { object-position:center; }
@media(max-width:800px) {
  .ia-section .ia-intro-with-image { grid-template-columns:1fr; gap:1.25rem; }
  .ia-intro-with-image > .ia-editorial-image { grid-column:1; grid-row:auto; max-width:520px; }
  .ia-editorial-image img { aspect-ratio:16/9; }
  .ia-ambient-section > .ia-ambient-image { filter:blur(8px) saturate(.65); }
}
