/* Industry pages (HVAC, dental): imagery, market momentum, roadmap. Loaded only on the niche pages. */
.hero.hero-photo .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;animation:kb 24s ease-out both}
.hero.hero-photo::before{background:linear-gradient(100deg,rgba(3,38,102,.94) 0%,rgba(3,38,102,.82) 45%,rgba(3,38,102,.45) 100%)}
@keyframes kb{from{transform:scale(1.08)}to{transform:scale(1)}}
@media(max-width:768px){.hero.hero-photo::before{background:linear-gradient(180deg,rgba(3,38,102,.78),rgba(3,38,102,.92))}}

.img-break{position:relative;height:clamp(280px,52vh,560px);overflow:hidden;margin:0;background:var(--navy-deep)}
.img-break img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.06);transition:transform 1.6s cubic-bezier(.22,1,.36,1)}
.img-break.v img{transform:scale(1)}
.img-break::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,38,102,0) 40%,rgba(3,38,102,.75));pointer-events:none}
.img-break figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:0 0 40px}
.img-break figcaption p{font-family:var(--font-d);color:#fff;font-size:clamp(24px,3.6vw,40px);line-height:1.2;max-width:720px}
.img-break figcaption p em{font-style:italic;font-weight:700;color:var(--accent)}

.momentum{background:var(--navy-deep);color:#fff;padding:96px 0;position:relative;overflow:hidden}
.momentum::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 85% 20%,rgba(200,149,108,.12),transparent 55%);pointer-events:none}
.momentum .ctn{position:relative}
.momentum .ey{color:var(--accent)}
.momentum h2{color:#fff;font-size:clamp(32px,4.6vw,54px);max-width:820px;margin:10px 0 18px}
.momentum h2 em{font-style:italic;font-weight:700;color:var(--accent)}
.momentum .lede{color:rgba(255,255,255,.7);font-size:17px;line-height:1.8;max-width:680px}
.mo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12);margin-top:44px;border-radius:var(--r);overflow:hidden}
.mo-item{background:var(--navy-deep);padding:30px 26px}
.mo-item b{display:block;font-family:var(--font-d);font-weight:500;font-size:clamp(34px,4vw,46px);color:var(--accent);line-height:1;margin-bottom:12px}
.mo-item p{color:rgba(255,255,255,.75);font-size:15px;line-height:1.65}
.mo-src{font-size:11px;color:rgba(255,255,255,.42);line-height:1.6;margin-top:22px;max-width:900px}
.mo-close{color:#fff;font-family:var(--font-d);font-size:clamp(20px,2.4vw,26px);margin-top:36px;max-width:720px}
@media(max-width:768px){.mo-grid{grid-template-columns:1fr}.momentum{padding:72px 0}}

.roadmap{background:var(--bg)}
.rm-track{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px;position:relative}
.rm-track::before{content:'';position:absolute;left:0;right:0;top:11px;height:2px;background:linear-gradient(90deg,var(--accent),var(--navy-deep))}
.rm-stop{position:relative;padding-top:40px}
.rm-stop::before{content:'';position:absolute;top:2px;left:0;width:20px;height:20px;border-radius:50%;background:var(--bg);border:3px solid var(--accent)}
.rm-stop:nth-child(3)::before{background:var(--accent)}
.rm-when{font-family:var(--font-m);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
.rm-stop h3{font-size:clamp(20px,2.2vw,24px);margin-bottom:10px}
.rm-stop ul{list-style:none;margin-bottom:14px}
.rm-stop li{font-size:14px;color:var(--text-2);line-height:1.6;padding:4px 0 4px 14px;position:relative}
.rm-stop li::before{content:'';position:absolute;left:0;top:13px;width:5px;height:5px;border-radius:50%;background:var(--navy-deep);opacity:.5}
.rm-dec{display:inline-block;font-family:var(--font-d);font-style:italic;font-size:15px;color:var(--navy-deep);background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:6px 12px;margin:0 6px 6px 0}
@media(max-width:900px){
  .rm-track{grid-template-columns:1fr;gap:0;padding-left:30px}
  .rm-track::before{left:9px;right:auto;top:0;bottom:0;width:2px;height:auto;background:linear-gradient(180deg,var(--accent),var(--navy-deep))}
  .rm-stop{padding:0 0 32px}
  .rm-stop::before{left:-30px;top:2px}
}
@media(prefers-reduced-motion:reduce){.hero.hero-photo .hero-img{animation:none}.img-break img{transform:none;transition:none}}
.mo-close em{font-style:italic;font-weight:700;color:var(--accent)}
@media(max-width:900px){.rm-track{padding-left:40px}.rm-stop::before{left:-40px}}
@media(max-width:768px){.img-break::after{background:linear-gradient(180deg,rgba(3,38,102,0) 25%,rgba(3,38,102,.88))}.img-break figcaption{padding-bottom:28px}}
