/* ===== Steele Group — industry deep-dive pages (radar + playbook) ===== */

/* hero: allow video OR image background, slow ken-burns drift */
.phero video.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.35) brightness(.5) contrast(1.05)}
.ind-hero .bg{animation:kb 26s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1.02)}to{transform:scale(1.13)}}
.ind-hero .inner .meta{display:flex;gap:26px;flex-wrap:wrap;margin-top:26px}
.ind-hero .meta span{font-family:'JetBrains Mono';font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72);display:flex;align-items:center;gap:9px}
.ind-hero .meta span::before{content:"";width:6px;height:6px;background:var(--red);border-radius:50%;flex:0 0 auto}
.ind-hero .hbtns{margin-top:34px;display:flex;gap:14px;flex-wrap:wrap}
.ind-hero .hbtns .btn{background:#fff;color:#0C0E12}
.ind-hero .hbtns .btn:hover{background:var(--red);color:#fff}
.ind-hero .hbtns .btn2{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff}
.ind-hero .hbtns .btn2:hover{border-color:#fff}

/* intro statement */
.ind-intro{max-width:1150px;margin:0 auto;padding:clamp(64px,9vw,130px) var(--gut) clamp(30px,4vw,50px)}
.ind-intro h2{font-size:clamp(26px,3.6vw,50px);line-height:1.15;max-width:20ch}
.ind-intro h2 .red{color:var(--red)}
.ind-intro p{color:var(--muted);max-width:60ch;margin-top:26px;font-size:16.5px;line-height:1.75}

/* ===== SIGNATURE: Facility Demand Profile radar ===== */
.radar-sec{padding:clamp(50px,7vw,110px) var(--gut) clamp(70px,9vw,130px);border-top:1px solid var(--line);overflow:hidden}
.radar-wrap{display:grid;grid-template-columns:1fr auto 1.15fr;gap:clamp(28px,4vw,72px);align-items:center;max-width:var(--maxw);margin:0 auto}
.radar-head .lab{display:block;margin-bottom:14px}
.radar-head h2{font-size:clamp(24px,2.9vw,42px);line-height:1.1;max-width:15ch}
.radar-head p{color:var(--muted);font-size:15.5px;line-height:1.7;margin-top:20px;max-width:36ch}
.radar-head .hint{margin-top:24px;font-family:'JetBrains Mono';font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);display:flex;align-items:center;gap:9px}
.radar-head .hint::before{content:"";width:16px;height:1px;background:var(--red)}

.radar{position:relative;width:min(44vw,440px);aspect-ratio:1;margin:0 auto}
.rgrid{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.rring{fill:none;stroke:var(--line);stroke-width:.35}
.rspoke{stroke:var(--line);stroke-width:.35}
.rhi{stroke:var(--red);stroke-width:1;stroke-linecap:round;opacity:0;filter:drop-shadow(0 0 2px rgba(229,64,46,.55));transition:opacity .25s}
.rhi.on{opacity:1}
.rdata{fill:rgba(229,64,46,.15);stroke:var(--red);stroke-width:.9;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(229,64,46,.45))}
.rvtx{fill:var(--red);stroke:#fff;stroke-width:.3;r:1.1;transition:r .25s}
.rvtx.on{r:2.1;stroke-width:.4;filter:drop-shadow(0 0 1px rgba(229,64,46,.9));animation:vpulse 1.5s ease-in-out infinite}
@keyframes vpulse{0%,100%{r:1.9px}50%{r:2.9px}}
.rnode{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:7px;background:none;border:0;cursor:pointer;color:var(--muted);font-family:'JetBrains Mono';font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;transition:color .25s;padding:6px 8px;white-space:nowrap}
.rnode .rn-dot{width:7px;height:7px;border-radius:50%;background:var(--line);transition:.25s}
.rnode:hover{color:var(--ink)}
.rnode.active{color:var(--ink)}
.rnode.active .rn-dot{background:var(--red);box-shadow:0 0 0 4px rgba(229,64,46,.18)}

/* detail panel */
.rd{min-height:230px}
.rd-panel{transition:opacity .18s ease,transform .18s ease}
.rd-panel.swap{opacity:0;transform:translateY(7px)}
.rd-top{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}
.rd-dim{font-family:'JetBrains Mono';text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--red)}
.rd-score{font-family:'JetBrains Mono';font-size:12px;color:var(--faint)}
.rd-meter{display:flex;gap:5px;margin:14px 0 22px}
.rd-meter i{width:38px;height:5px;background:var(--line);transition:background .45s ease}
.rd-meter i.fill{background:var(--red)}
.rd-spec{font-size:clamp(17px,1.55vw,21px);line-height:1.45;font-weight:500;letter-spacing:-.01em}
.rd-why{margin-top:18px;color:var(--muted);font-size:14.5px;line-height:1.7;max-width:48ch}
.rd-why b{color:var(--ink);font-weight:600}

/* ===== Site-selection playbook (accordion) ===== */
.pb{border-top:1px solid var(--line)}
.pb-item{border-bottom:1px solid var(--line)}
.pb-head{display:flex;align-items:center;gap:clamp(16px,2.5vw,34px);padding:clamp(22px,2.6vw,32px) 4px;cursor:pointer;transition:padding-left .3s}
.pb-item:hover .pb-head{padding-left:10px}
.pb-num{font-family:'JetBrains Mono';font-size:12.5px;color:var(--faint);width:34px;flex:0 0 auto}
.pb-title{font-size:clamp(18px,2vw,27px);font-weight:600;flex:1;letter-spacing:-.01em;transition:color .25s}
.pb-item.open .pb-title{color:var(--red)}
.pb-ico{width:20px;height:20px;position:relative;flex:0 0 auto;transition:transform .35s}
.pb-ico::before,.pb-ico::after{content:"";position:absolute;background:var(--muted);left:50%;top:50%}
.pb-ico::before{width:14px;height:1.5px;transform:translate(-50%,-50%)}
.pb-ico::after{width:1.5px;height:14px;transform:translate(-50%,-50%);transition:transform .35s}
.pb-item.open .pb-ico::after{transform:translate(-50%,-50%) scaleY(0)}
.pb-body{max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.16,1,.3,1)}
.pb-item.open .pb-body{max-height:260px}
.pb-body .in{padding:2px 4px 30px 68px}
.pb-body p{color:var(--muted);font-size:15.5px;line-height:1.75;max-width:74ch}
.pb-body .spec{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}
.pb-body .spec b{font-family:'JetBrains Mono';font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);border:1px solid var(--line);padding:6px 11px}
@media(max-width:680px){.pb-body .in{padding-left:4px}}

/* ===== Capabilities grid (how we help) ===== */
.caps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cap{border:1px solid var(--line);padding:clamp(24px,2.4vw,34px);transition:border-color .3s,transform .3s}
.cap:hover{border-color:var(--red);transform:translateY(-4px)}
.cap .cn{font-family:'JetBrains Mono';font-size:12px;color:var(--red)}
.cap h3{font-size:clamp(18px,1.5vw,22px);font-weight:600;margin:16px 0 12px;letter-spacing:-.01em}
.cap p{color:var(--muted);font-size:14.5px;line-height:1.65}
@media(max-width:900px){.caps{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.caps{grid-template-columns:1fr}}

/* responsive radar */
@media(max-width:1040px){
  .radar-wrap{grid-template-columns:1fr}
  .radar{width:min(78vw,420px)}
  .radar-head{text-align:left}
  .rd{min-height:0;margin-top:10px}
}

/* ===== Site-selection console (rail stepper) ===== */
.console{max-width:var(--maxw);margin:0 auto}
.rail{position:relative;margin:0 clamp(30px,5vw,70px);cursor:pointer;padding:46px 0 48px}
.rail-track{position:relative;height:2px;background:var(--line);margin:0}
.rail-fill{position:absolute;left:0;top:0;height:100%;background:var(--red);width:0;box-shadow:0 0 12px rgba(229,64,46,.6);transition:width .6s cubic-bezier(.16,1,.3,1)}
.rail-nodes{position:absolute;left:0;right:0;top:50%;height:0}
.rnode2{position:absolute;top:0;transform:translate(-50%,-50%);background:none;border:0;cursor:pointer;padding:0;display:block;z-index:2}
.rnode2 .dot{display:block;width:12px;height:12px;border-radius:50%;background:var(--black);border:2px solid var(--faint);transition:background .3s,border-color .3s}
.rnode2 .rn-num{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);font-family:'JetBrains Mono';font-size:12px;color:var(--faint);transition:color .3s}
.rnode2 .rn-lab{position:absolute;top:18px;left:50%;transform:translateX(-50%);font-family:'JetBrains Mono';font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap;transition:color .3s}
.rnode2:hover .dot{border-color:var(--red)}
.rnode2:hover .rn-lab{color:var(--ink)}
.rnode2.active .dot{background:var(--red);border-color:var(--red);animation:pulse2 1.7s ease-in-out infinite}
.rnode2.active .rn-num{color:var(--red)}
.rnode2.active .rn-lab{color:var(--ink)}
@keyframes pulse2{0%,100%{box-shadow:0 0 0 4px rgba(229,64,46,.16)}50%{box-shadow:0 0 0 9px rgba(229,64,46,.03)}}

.stage{display:grid;grid-template-columns:auto 1fr;gap:clamp(22px,4vw,64px);align-items:start;margin-top:clamp(30px,4vw,54px);min-height:212px}
.stage-num{font-family:'Schibsted Grotesk',sans-serif;font-size:clamp(72px,11vw,150px);font-weight:700;line-height:.8;color:transparent;-webkit-text-stroke:1.3px var(--line);letter-spacing:-.03em;user-select:none}
.stage-main{max-width:760px;transition:opacity .18s ease,transform .18s ease}
.stage-main.swap{opacity:0;transform:translateY(8px)}
.stage-title{font-size:clamp(23px,2.9vw,40px);font-weight:600;letter-spacing:-.02em;line-height:1.08}
.stage-desc{color:var(--muted);font-size:16.5px;line-height:1.75;margin-top:18px;max-width:66ch}
.stage-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.stage-chips b{font-family:'JetBrains Mono';font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);border:1px solid var(--line);padding:8px 13px;opacity:0;transform:translateY(6px);animation:chipIn .45s ease forwards}
@keyframes chipIn{to{opacity:1;transform:translateY(0)}}
@keyframes numIn{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
@media(max-width:760px){
  .rnode2 .rn-lab{display:none}
  .stage{grid-template-columns:1fr;gap:8px}
  .stage-num{font-size:58px}
}

/* ===== Capabilities — interactive index list ===== */
.index{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,80px);max-width:var(--maxw);margin:0 auto;align-items:stretch}
.index-list{border-top:1px solid var(--line)}
.cap-row{display:flex;align-items:center;gap:18px;width:100%;padding:clamp(22px,2.6vw,30px) 4px;border:0;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left;color:var(--muted);transition:padding-left .3s,color .3s}
.cap-row:hover,.cap-row.active{padding-left:14px;color:var(--ink)}
.cap-row .cr-num{font-family:'JetBrains Mono';font-size:12px;color:var(--faint);width:26px;flex:0 0 auto;transition:color .3s}
.cap-row.active .cr-num{color:var(--red)}
.cap-row .cr-title{font-size:clamp(17px,1.7vw,23px);font-weight:600;flex:1;letter-spacing:-.01em;line-height:1.15}
.cap-row .cr-arrow{color:var(--red);opacity:0;transform:translateX(-8px);transition:opacity .3s,transform .3s}
.cap-row:hover .cr-arrow,.cap-row.active .cr-arrow{opacity:1;transform:none}
.index-detail{border-left:2px solid var(--red);padding-left:clamp(24px,3vw,46px);min-height:210px;display:flex;flex-direction:column}
.index-num{font-family:'Schibsted Grotesk',sans-serif;font-size:clamp(42px,5vw,76px);font-weight:700;color:transparent;-webkit-text-stroke:1.2px var(--line);line-height:1;letter-spacing:-.03em;user-select:none}
.index-body{margin-top:20px;transition:opacity .18s ease,transform .18s ease}
.index-body.swap{opacity:0;transform:translateY(8px)}
.index-body h3{font-size:clamp(21px,2.3vw,31px);font-weight:600;letter-spacing:-.02em;line-height:1.1}
.index-body p{color:var(--muted);font-size:16px;line-height:1.75;margin-top:16px;max-width:50ch}
.index-points{list-style:none;margin-top:26px}
.index-points li{position:relative;padding:13px 0 13px 22px;border-top:1px solid var(--line);font-size:14.5px;color:var(--muted);opacity:0;transform:translateY(6px);animation:chipIn .45s ease forwards}
.index-points li:last-child{border-bottom:1px solid var(--line)}
.index-points li::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:var(--red)}
@media(max-width:820px){
  .index{grid-template-columns:1fr}
  .index-detail{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:26px;margin-top:6px}
}
