:root { --deep:#090812; --violet:#171126; --line:rgba(255,255,255,.12); --signal:#a8f05a; --bone:#f1f0e7; --muted:rgba(241,240,247,.62); }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--deep); }
body { margin: 0; color: var(--bone); background: var(--deep); font-family: Manrope, sans-serif; }
a { color: inherit; }
.detail-nav { position: fixed; z-index: 20; inset: 0 0 auto; height: 76px; padding: 0 clamp(22px,4vw,68px); display:flex; align-items:center; justify-content:space-between; background:rgba(9,8,18,.84); border-bottom:1px solid var(--line); backdrop-filter:blur(18px); }
.detail-brand { display:flex; gap:14px; align-items:center; text-decoration:none; letter-spacing:.28em; font-weight:600; }
.detail-brand img { width:34px; height:34px; }
.detail-nav__links { display:flex; gap:28px; align-items:center; font:500 10px/1 "IBM Plex Mono",monospace; letter-spacing:.12em; text-transform:uppercase; }
.detail-nav__links a { text-decoration:none; color:rgba(255,255,255,.65); }
.detail-nav__links .detail-nav__cta { color:var(--signal); }
.detail-hero { min-height:78vh; padding:150px clamp(24px,6vw,110px) 80px; position:relative; display:grid; align-content:end; overflow:hidden; border-bottom:1px solid var(--line); }
.detail-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(9,8,18,.96) 0%,rgba(9,8,18,.75) 48%,rgba(18,12,36,.28)),url('../assets/08_maps/territory-satellite-violet.png') center/cover; filter:saturate(.7) contrast(1.08); }
.detail-hero::after { content:""; position:absolute; inset:0; background-image:radial-gradient(rgba(168,240,90,.14) .7px,transparent .7px); background-size:22px 22px; mask-image:linear-gradient(90deg,#000,transparent 70%); }
.detail-hero__content { position:relative; z-index:1; max-width:980px; }
.eyebrow { color:var(--signal); font:500 11px/1.4 "IBM Plex Mono",monospace; letter-spacing:.16em; text-transform:uppercase; }
.detail-hero h1 { margin:24px 0; font-size:clamp(54px,7.2vw,116px); line-height:.9; letter-spacing:-.065em; font-weight:500; }
.detail-hero h1 em { color:var(--signal); font-style:normal; }
.detail-hero p { max-width:710px; color:var(--muted); font-size:clamp(17px,1.45vw,22px); line-height:1.6; }
.detail-index { padding:0 clamp(24px,4vw,72px); display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid var(--line); }
.detail-index a { padding:27px 20px; text-decoration:none; border-left:1px solid var(--line); color:var(--muted); font:500 10px/1.5 "IBM Plex Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.detail-index a:last-child { border-right:1px solid var(--line); }
.detail-index a:hover { color:var(--signal); background:rgba(96,65,165,.12); }
.detail-section { padding:110px clamp(24px,6vw,110px); border-bottom:1px solid var(--line); }
.detail-heading { display:grid; grid-template-columns:minmax(260px,.8fr) 1.4fr; gap:9vw; margin-bottom:62px; }
.detail-heading h2 { margin:0; font-size:clamp(40px,5vw,78px); line-height:.98; letter-spacing:-.055em; font-weight:500; }
.detail-heading p { margin:0; color:var(--muted); font-size:18px; line-height:1.75; max-width:680px; }
.capability-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.capability { min-height:330px; padding:34px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:linear-gradient(145deg,rgba(96,65,165,.08),transparent); }
.capability span,.signal-group>span,.industry-detail__copy>span { color:var(--signal); font:500 10px/1.4 "IBM Plex Mono",monospace; letter-spacing:.13em; }
.capability h3 { margin:65px 0 16px; font-size:26px; font-weight:500; letter-spacing:-.025em; }
.capability p { color:var(--muted); line-height:1.65; }
.capability small { display:block; margin-top:30px; color:rgba(255,255,255,.43); font:400 10px/1.5 "IBM Plex Mono",monospace; text-transform:uppercase; }
.signal-grid { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.signal-group { padding:42px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.signal-group ul { list-style:none; padding:28px 0 0; margin:0; }
.signal-group li { padding:14px 0; border-top:1px solid rgba(255,255,255,.08); color:var(--muted); }
.signal-group li::before { content:"•"; color:var(--signal); margin-right:14px; }
.industry-detail { min-height:680px; display:grid; grid-template-columns:1fr 1fr; border-bottom:1px solid var(--line); scroll-margin-top:76px; }
.industry-detail__visual { position:relative; min-height:540px; overflow:hidden; background:linear-gradient(rgba(15,11,28,.4),rgba(15,11,28,.85)),url('../assets/08_maps/territory-satellite-violet.png') center/cover; border-right:1px solid var(--line); }
.industry-detail__visual svg { position:absolute; inset:10%; width:80%; height:80%; fill:rgba(96,65,165,.17); stroke:var(--signal); stroke-width:1.4; }
.industry-detail__visual svg circle { fill:var(--signal); }
.industry-detail__visual .route { fill:none; stroke-dasharray:8 8; stroke-width:3; }
.industry-detail__visual label { position:absolute; left:34px; bottom:28px; color:var(--signal); font:500 10px/1.4 "IBM Plex Mono",monospace; letter-spacing:.12em; }
.industry-detail__copy { padding:clamp(55px,7vw,115px); align-self:center; }
.industry-detail__copy h2 { margin:25px 0; font-size:clamp(42px,4.4vw,72px); line-height:1; letter-spacing:-.05em; font-weight:500; }
.industry-detail__copy>p { color:var(--muted); line-height:1.7; font-size:17px; }
.industry-detail__copy h3 { margin-top:42px; color:var(--bone); font-size:12px; text-transform:uppercase; letter-spacing:.1em; }
.industry-detail__copy ul { list-style:none; padding:0; color:var(--muted); }
.industry-detail__copy li { padding:11px 0; border-bottom:1px solid rgba(255,255,255,.08); }
.industry-detail__copy li::before { content:"+"; color:var(--signal); margin-right:12px; }
.detail-cta { padding:120px 24px; text-align:center; background:#151022; }
.detail-cta h2 { font-size:clamp(42px,6vw,88px); line-height:1; letter-spacing:-.055em; margin:0 auto 35px; max-width:1000px; font-weight:500; }
.detail-cta a { display:inline-block; color:#0a0912; background:var(--signal); text-decoration:none; padding:17px 24px; font:600 11px/1 "IBM Plex Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
@media(max-width:900px){.detail-index{grid-template-columns:repeat(2,1fr)}.detail-heading,.industry-detail{grid-template-columns:1fr}.capability-grid{grid-template-columns:repeat(2,1fr)}.industry-detail__visual{border-right:0;border-bottom:1px solid var(--line)}.detail-nav__links a:not(.detail-nav__cta){display:none}}
@media(max-width:600px){.capability-grid,.signal-grid{grid-template-columns:1fr}.detail-hero{min-height:88vh}.detail-section{padding-top:75px;padding-bottom:75px}.capability{min-height:280px}}
