/* Layout styles for banner-image-4. */
.banner-option-4 { position:relative; padding-top:5px; }
.banner-option-4::before { content:''; position:absolute; top:0; right:5px; left:5px; height:2px; background:linear-gradient(90deg,transparent 0%,rgba(97,220,255,.55) 5%,#61dcff 50%,rgba(97,220,255,.55) 95%,transparent 100%); box-shadow:0 0 8px rgba(97,220,255,.9); pointer-events:none; }
.banner-option-4 .bgTitleWrapper { border-radius:0 0 26px 26px; }
.bannerContainer .bgTitleWrapper { position: relative; background-size: cover; background-position: center; overflow: hidden; }
.bannerContainer .bgTitleWrapper::before { content: ''; position: absolute; inset: 0; background: var(--banner-cover, transparent); pointer-events: none; }
.bannerContainer .bgTitle { position: relative; display: flex; align-items: center; padding-block: 1.5rem; }
.bannerContainer .bgTitleInner { width: 100%; }
.bannerContainer .bgTitleInner h1 { display: flex; align-items: center; gap: .75rem; margin: 0; overflow-wrap: anywhere; }
.bannerContainer .bgTitleInner h1 span { min-width: 0; }
.bannerContainer .banner-align-center h1 { justify-content: center; text-align: center; }
.bannerContainer .banner-align-right h1 { justify-content: flex-end; text-align: right; }
.bannerContBoxed { max-width: 1140px; margin-inline: auto; }

.banner-option-4 .bgTitleInner h1,
.banner-option-4 .banner-service-title,
.banner-option-4 .banner-title-letter { color:#fff; font-weight:700; }
.banner-option-4 .bgTitleInner { padding-left:40px; }
.banner-option-4 .banner-title-bracket { flex:0 0 auto; color:#81c5f7; font-size:1.25em; font-weight:600; }
.banner-option-4 .banner-service-title { position:relative; top:4px; display:inline-block; min-width:0; }
.banner-option-4 .banner-title-letter { display:inline-block; white-space:pre; }
.banner-option-4 .banner-title-letter.is-changing { color:#9fe5ff; }
@media (max-width:575px) {
    .banner-option-4 .bgTitleInner { padding-left:8px; }
}
