
/* Shared full-bleed service photography; isolated from the homepage hero. */
body.industry-theme .hero.visual-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:620px;padding:75px 0;background:#102a36;border:0;overflow:hidden}
.visual-hero .visual-hero-photo{position:absolute;inset:0;margin:0;z-index:-2;width:100%;height:100%}
.visual-hero .visual-hero-photo img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:70% center;border-radius:0}
.visual-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,24,33,.93) 0%,rgba(7,24,33,.83) 35%,rgba(7,24,33,.3) 68%,rgba(7,24,33,.1) 100%)}
.visual-hero .visual-hero-copy{max-width:690px;position:relative}.industry-theme .visual-hero h1{max-width:690px;color:#fff;font-size:clamp(38px,4.4vw,62px);line-height:1.1}
.visual-hero .visual-hero-copy>.intro{max-width:600px;color:#eef3f5;font-size:18px;line-height:1.7;margin:24px 0 30px}
.visual-hero .actions{display:flex;flex-wrap:wrap;gap:12px}.visual-hero .button{margin:0}.visual-hero .button.secondary{color:#fff;border-color:#d9e4e9;background:rgba(10,30,40,.2)}
.visual-hero .button.secondary:hover{background:#fff;color:#14313e}.visual-hero a:focus-visible,.visual-story a:focus-visible{outline:3px solid white;outline-offset:5px}
.visual-story{position:relative;isolation:isolate;display:flex;align-items:center;min-height:440px;padding:65px 0;background:#102a36;overflow:hidden}
.visual-story>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:65% center}
.visual-story:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,24,33,.91),rgba(7,24,33,.8) 35%,rgba(7,24,33,.18))}
.visual-story .visual-story-copy{max-width:620px}.industry-theme .visual-story h2{color:#fff;font-size:clamp(30px,3.4vw,46px);line-height:1.15}.visual-story p{color:#edf3f6;max-width:550px;margin:22px 0 28px;font-size:18px;line-height:1.65}
@media(max-width:760px){body.industry-theme .hero.visual-hero{min-height:730px;align-items:flex-end;padding:270px 0 42px}.visual-hero .visual-hero-photo img{object-position:72% center}.visual-hero:before{background:linear-gradient(180deg,rgba(7,24,33,.08) 0%,rgba(7,24,33,.25) 25%,rgba(7,24,33,.87) 49%,rgba(7,24,33,.98) 100%)}.industry-theme .visual-hero h1{font-size:clamp(34px,8.7vw,43px)}.visual-hero .visual-hero-copy>.intro{font-size:16px;line-height:1.65;margin:20px 0 24px}.visual-hero .actions{gap:10px}.visual-hero .actions .button{white-space:normal}.visual-story{min-height:520px;align-items:flex-end;padding:220px 0 40px}.visual-story:before{background:linear-gradient(180deg,rgba(7,24,33,.1),rgba(7,24,33,.85) 48%,#102a36)}.visual-story>img{object-position:65% center}.visual-story p{font-size:16px}.page-home .home-service-story p{line-height:1.6}}
.industry-theme .hero.visual-hero>.wrap,.industry-theme .visual-story>.wrap{width:min(1200px,calc(100% - 64px));max-width:1200px;margin:0 auto;flex:0 0 auto}@media(max-width:760px){.industry-theme .hero.visual-hero>.wrap,.industry-theme .visual-story>.wrap{width:calc(100% - 40px)}}
