/* v0.3.112: The large photograph above the service content is rendered by
   the theme's page.php as figure.es-service-process. The older 0.3.111 rules
   below addressed a different, section-04 photograph only. */
html body .es-service-template-grid article.entry-content > figure.es-service-process,
html body .es-service-template-grid article.entry-content .es-pro-service-body > figure.es-service-process,
html body .es-content .es-service-process {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0 0 30px;
    box-sizing: border-box;
    overflow: hidden !important;
    border: 1px solid #e1e8da;
    border-radius: 12px !important;
    background: #f6f8f3;
    isolation: isolate;
}
html body .es-service-process > img.es-service-process-image,
html body .es-service-process > picture img,
html body .es-service-process img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: 440px;
    aspect-ratio: 16/8;
    object-fit: cover;
    margin: 0;
    border-radius: 12px !important;
}
@media (max-width: 760px) {
  html body .es-service-process img { aspect-ratio: 4/3; max-height: none; }
  html body .es-content .es-service-process { margin-bottom: 23px; }
}

/* v0.3.111 — Use the existing EnviroSolution service card geometry for every
   service's technical-detail photograph. No change to the theme's layout. */
html body .es-pro-service-body .es-pro-section figure.es-pro-service-photo,
html body .es-pro-service-body .es-pro-authority-detail figure.es-pro-service-photo--wide {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 18px 0;
    padding: 0;
    border: 1px solid #e1e8da !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #fff;
    box-sizing: border-box;
    /* Ensures the image is clipped even if a theme selector overrides overflow. */
    isolation: isolate;
}
html body .es-pro-service-body figure.es-pro-service-photo > img,
html body .es-pro-service-body figure.es-pro-service-photo--wide > img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    border: 0;
    border-radius: 0 !important;
    object-fit: cover;
}
html body .es-pro-service-body figure.es-pro-service-photo figcaption {
    margin: 0;
    border-top: 1px solid #e9eee3;
    background: #fff;
}
@media (max-width: 760px) {
    html body .es-pro-service-body .es-pro-section figure.es-pro-service-photo,
    html body .es-pro-service-body .es-pro-authority-detail figure.es-pro-service-photo--wide {
        margin: 16px 0;
    }
}
