/* V39: no moving photographs in ANY banner; photographs sit beneath banners. */
.sm-static section.hero,
.sm-static .hero,
.sm-static section.hero.sm39-text-banner,
.sm-static .hero.sm16-photo-hero,
.sm-static .hero.sm21-real-hero,
.sm-static .hero.sm37-hero,
.sm-static .hero.sm38-clean-hero {
  background:#103d2a!important;
  background-image:linear-gradient(120deg,#082e20 0%,#114b33 63%,#206044 100%)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  color:#fff!important;
  position:relative;
  isolation:isolate;
}
.sm-static section.hero::before,
.sm-static section.hero::after,
.sm-static .hero.sm16-photo-hero::before,
.sm-static .hero.sm21-real-hero::before,
.sm-static .hero.sm37-hero::before {
  background-image:none!important;
  background:none!important;
  content:none!important;
  display:none!important;
}
.sm-static section.hero h1,.sm-static section.hero h2,.sm-static section.hero .lead,
.sm-static section.hero .crumb,.sm-static section.hero .crumb a,
.sm-static section.hero p:not(.eyebrow) {color:#fff!important;text-shadow:none!important}
.sm-static section.hero .eyebrow {background:#e8f6eb!important;border-color:#a6d4b0!important;color:#174e2e!important}
.sm-static section.hero .btn:not(.alt){background:#fff!important;color:#184b31!important;border-color:#fff!important;}
.sm-static section.hero .btn.alt{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.65)!important}
.sm-static section.hero .btn.alt:hover{background:rgba(255,255,255,.16)!important}
.sm-static section.hero.sm39-text-banner{padding-top:clamp(96px,9vw,132px)!important;padding-bottom:clamp(55px,7vw,86px)!important;min-height:0!important}
.sm-static section.hero.sm39-text-banner>.wrap,
.sm-static section.hero.sm39-text-banner>.container {width:min(1120px,calc(100% - 36px));margin:0 auto;position:relative;z-index:1}
/* Photo gallery is a separate block AFTER the closing banner tag. */
.sm-static .sm39-photo-strip{display:block!important;background:#f4f8f4!important;border-bottom:1px solid #e1ece3!important;padding:clamp(25px,4.2vw,54px) 18px!important;color:#173f29!important;}
.sm-static .sm39-photo-inner{width:min(1080px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(280px,1.13fr) minmax(240px,.87fr);gap:clamp(20px,5vw,75px);align-items:center;}
.sm-static .sm39-photo-frame{margin:0!important;width:100%;height:clamp(240px,26vw,320px);position:relative;}
.sm-static .sm39-photo-frame img{position:absolute;object-fit:cover;display:block;background:#e4ece5;box-shadow:0 14px 30px rgba(9,40,24,.13);}
.sm-static .sm39-photo-frame img:first-child{inset:0 auto auto 0;width:84%;height:85%;border-radius:18px;}
.sm-static .sm39-photo-frame img:nth-child(2){right:0;bottom:0;width:44%;height:56%;border-radius:16px;border:5px solid #f4f8f4;}
.sm-static .sm39-photo-copy>span{display:block;color:#247c4d;font-size:12px;letter-spacing:.12em;font-weight:800;margin-bottom:8px;}
.sm-static .sm39-photo-copy h2{font-size:clamp(24px,2.8vw,34px);line-height:1.15;letter-spacing:-.035em;color:#153e2b!important;margin:0 0 14px!important;}
.sm-static .sm39-photo-copy p{color:#40594c!important;font-size:15px;line-height:1.65;margin:0}
/* Existing photo strips on service/route pages are ALREADY below the banner. */
.sm-static .sm33-gallery-strip,.sm-static .sm38-photo-feature{position:relative;background:#f4f8f4!important}
/* Home page: photograph is in the following gallery, never over the home hero. */
main.relative > section:first-child .sm16-home-top-photo{display:none!important;background:none!important}
@media(max-width:740px){
 .sm-static section.hero.sm39-text-banner{padding-top:104px!important;padding-bottom:60px!important}
 .sm-static section.hero h1{font-size:clamp(36px,10vw,56px)!important;line-height:1.09!important}
 .sm-static .sm39-photo-inner{grid-template-columns:1fr;gap:18px}
 .sm-static .sm39-photo-frame{height:235px}
 .sm-static .sm39-photo-copy h2{font-size:25px}
 .sm-static .sm39-photo-strip{padding:26px 18px 35px!important}
}
