.ind-hero{
 position: relative;
 padding: 180px var(--pad-x) 130px;
 background: linear-gradient(135deg, #061d4e 0%, #1a4ba0 50%, #2a7de1 100%);
 color: #fff;
 overflow: hidden;
}
/*
 * Each static industries-*.html page redefines .ind-hero's background in
 * its own per-page inline <style> block (not the shared applab.css) — the
 * theme's port only ever carried over one of those (government's blue),
 * so every industry showed the same gradient. Scoped by slug via
 * data-c on the <header> (patterns/industry-detail.php) instead of the
 * .ind-hero base rule above, which stays as the government/default fallback.
 */
.ind-hero[data-c="culture"]{ background: linear-gradient(135deg, #4a1c4a 0%, #8c3478 50%, #d9477b 100%); }
.ind-hero[data-c="energy"]{ background: linear-gradient(135deg, #3d1f00 0%, #c47a18 50%, #f5b955 100%); }
.ind-hero[data-c="finance"]{ background: linear-gradient(135deg, #1d3557 0%, #2a7de1 50%, #67b6f8 100%); }
.ind-hero[data-c="government"]{ background: linear-gradient(135deg, #061d4e 0%, #1a4ba0 50%, #2a7de1 100%); }
.ind-hero[data-c="health"]{ background: linear-gradient(135deg, #0a4f4f 0%, #0d987a 50%, #3dd4b8 100%); }
.ind-hero[data-c="nonprofit"]{ background: linear-gradient(135deg, #1a1a2e 0%, #3a3a5e 50%, #5e5e8a 100%); }
.ind-hero[data-c="planning"]{ background: linear-gradient(135deg, #2a1f5e 0%, #4f37b8 50%, #7e63db 100%); }
.ind-hero[data-c="sports"]{ background: linear-gradient(135deg, #1a4d36 0%, #0d987a 50%, #2ad99e 100%); }
.ind-hero[data-c="telecom"]{ background: linear-gradient(135deg, #4a1010 0%, #a32424 50%, #e74c4c 100%); }
.ind-hero[data-c="transport"]{ background: linear-gradient(135deg, #0a2840 0%, #0d5b8a 50%, #00a0df 100%); }
.ind-hero::before{
 content: ''; position: absolute; inset: 0;
 background:
 radial-gradient(ellipse 80% 60% at 90% 30%, rgba(255,255,255,.12), transparent 60%),
 radial-gradient(ellipse 50% 80% at 0% 100%, rgba(0,0,0,.25), transparent 60%);
}
.ind-hero-inner{ position: relative; z-index: 2; max-width: 1100px; }
.ind-hero .eyebrow-pill{
 display: inline-flex; align-items: center;
 padding: 8px 18px;
 background: rgba(255,255,255,.12);
 border: 1px solid rgba(255,255,255,.22);
 border-radius: 100px;
 font-family: var(--mono); font-size: 11px; letter-spacing: .18em;
 text-transform: uppercase; margin-bottom: 32px;
 backdrop-filter: blur(10px);
}
.ind-hero h1{
 font-family: var(--display); font-weight: 700;
 font-size: clamp(48px, 7.5vw, 88px);
 line-height: 1; letter-spacing: -.04em;
 margin-bottom: 32px;
 color: #fff;
}
.ind-hero .lead{
 font-size: 18px; line-height: 1.6;
 color: rgba(255,255,255,.85);
 max-width: 760px;
}

.ind-overview{
 padding: clamp(80px, 10vw, 140px) var(--pad-x);
 background: var(--paper);
}
.ind-overview .row-head{ margin-bottom: clamp(50px,6vw,70px); }
.ind-stats{
 display: grid; grid-template-columns: repeat(3, 1fr);
 gap: 1px;
 background: var(--line);
 border: 1px solid var(--line);
 border-radius: 20px;
 overflow: hidden;
 margin-bottom: clamp(50px,5vw,70px);
}
@media(max-width:780px){ .ind-stats{ grid-template-columns: 1fr; } }
.ind-stat{ padding: 32px 28px; background: #fff; text-align: center; }
.ind-stat b{
 display: block; font-family: var(--display); font-weight: 800;
 font-size: clamp(32px, 4vw, 48px); color: var(--blue);
 letter-spacing: -.04em; line-height: 1; margin-bottom: 12px;
}
.ind-stat span{
 font-family: var(--mono); font-size: 11px;
 letter-spacing: .14em; text-transform: uppercase; color: var(--grey-1);
}

.ind-highlights{
 display: grid; grid-template-columns: repeat(3, 1fr);
 gap: clamp(24px, 3vw, 36px);
}
@media(max-width:880px){ .ind-highlights{ grid-template-columns: 1fr; } }
.ind-hi{
 padding: 36px 30px;
 background: #fff;
 border-radius: 18px;
 border-top: 3px solid var(--blue);
}
.ind-hi h3{
 font-family: var(--display); font-weight: 700;
 font-size: 21px; letter-spacing: -.015em;
 color: var(--ink); margin-bottom: 14px;
}
.ind-hi p{ font-size: 14.5px; line-height: 1.6; color: var(--grey-1); }

.ind-cases{
 padding: clamp(80px, 11vw, 140px) var(--pad-x);
 background: var(--off);
}
.ind-cases .row-head{ margin-bottom: clamp(40px,5vw,60px); }
.ind-case-grid{
 display: grid; grid-template-columns: repeat(3, 1fr);
 gap: clamp(20px, 2.5vw, 32px);
}
@media(max-width:980px){ .ind-case-grid{ grid-template-columns: 1fr 1fr; } }
@media(max-width:560px){ .ind-case-grid{ grid-template-columns: 1fr; } }
.ind-case{
 display: flex; flex-direction: column;
 background: #fff;
 border-radius: 18px;
 overflow: hidden;
 border: 1px solid var(--line);
 text-decoration: none; color: inherit;
 transition: all .35s var(--ease);
}
.ind-case:hover{ transform: translateY(-4px); box-shadow: 0 22px 50px rgba(2,6,31,.10); }
.ind-case-img{ position: relative; aspect-ratio: 4/3; overflow: hidden; background: var(--off); }
.ind-case-img img{ width: 100%; height: 100%; object-fit: cover; }
.ind-case-body{ padding: 24px 22px 26px; display: flex; flex-direction: column; gap: 8px; }
.ind-case-cap{
 font-family: var(--mono); font-size: 10.5px;
 letter-spacing: .14em; text-transform: uppercase; color: var(--blue);
 margin-bottom: 4px;
}
.ind-case-client{
 font-family: var(--display); font-weight: 600;
 font-size: 14px; color: var(--grey-1);
 letter-spacing: -.005em;
}
.ind-case-title{
 font-family: var(--display); font-weight: 700;
 font-size: 19px; line-height: 1.25;
 letter-spacing: -.015em;
 color: var(--ink); margin-bottom: 4px;
}
.ind-case-arr{
 margin-top: auto; padding-top: 12px;
 font-family: var(--mono); font-size: 11px;
 letter-spacing: .14em; text-transform: uppercase;
 color: var(--blue);
}
.no-cases{
 padding: 60px 30px;
 background: #fff;
 border-radius: 18px;
 text-align: center;
 color: var(--grey-1);
 font-size: 16px;
}

.cta{
 padding: clamp(80px, 11vw, 140px) var(--pad-x);
 background: var(--navy-black);
 color: #fff;
 text-align: center;
 position: relative;
 overflow: hidden;
}
.cta::before{
 content:''; position: absolute; inset: 0;
 background: radial-gradient(ellipse 60% 50% at 50% 100%, rgba(0,160,223,.20), transparent 60%);
}
.cta > *{ position: relative; z-index: 2; }
.cta h2{ max-width: 22ch; margin-left: auto; margin-right: auto; color: #fff; }
.cta h2 .em{ color: var(--cyan); }
.cta .lead{ margin: 26px auto 36px; color: rgba(255,255,255,.75); max-width: 600px; }
.cta-actions{ display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
