/* Semantic heading and responsive-image refinements. */
.ifl-hero-visual picture { display: block; height: 100%; }
.ifl-hero-visual picture img { height: 100%; width: 100%; object-fit: cover; }
.ifl-tool-section .ifl-section-head h1,
.ifl-tool-section .ifl-section-head h2 { font-size: clamp(2.8rem, 4.5vw, 4.5rem); }
.ifl-room > picture { display: block; }
.ifl-room > picture,
.ifl-room > picture img { width: 100%; height: 100%; object-fit: cover; }
.ifl-before-layer picture { display: block; height: 100%; }

@media (max-width: 650px) {
  .ifl-tool-section .ifl-section-head h2 { font-size: clamp(2.8rem, 12vw, 4.2rem); }
}
