/* ───────── v10 inner pages: services, industries, insights ───────── */
.hero h1.kw{font-size:clamp(40px,5.4vw,76px);max-width:19ch;line-height:1}
.hero .sub{font-family:var(--serif);font-size:clamp(24px,2.4vw,32px);line-height:1.25;color:var(--gold-hi);margin:0 0 20px;max-width:30ch}
.hero .hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.hero .facts{display:flex;flex-wrap:wrap;gap:12px 36px;margin:40px 0 0;padding:24px 0 0;border-top:1px solid var(--rule-d);list-style:none}
.hero .facts li{font-size:15px;color:var(--tx-d2)}
.hero .facts b{display:block;font:400 28px/1.1 var(--serif);color:var(--tx-d1)}

.blk{padding:104px 0}
.blk.alt{background:var(--stone)}
.blk.dark{background:var(--ink);color:var(--tx-d1)}
.blk.dark .muted,.blk.dark p{color:var(--tx-d2)}
.blk.dark .link{color:var(--gold-hi)}
.blk h2{font-size:clamp(34px,4.2vw,56px);line-height:1.04;max-width:20ch;margin-bottom:24px}
.blk h3{font-size:clamp(24px,2.2vw,30px);line-height:1.15;margin-bottom:10px}
.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:start}
.split>.head{position:sticky;top:110px}
.split>.head p{color:var(--tx-l2);max-width:40ch}
.blk.dark .split>.head p{color:var(--tx-d2)}
.prose{max-width:66ch}
.prose p,.prose li{color:var(--tx-l2)}
.blk.dark .prose p,.blk.dark .prose li{color:var(--tx-d2)}
.prose ul,.prose ol{padding-left:22px;margin:0 0 1.2em}
.prose li{margin-bottom:8px}
.prose strong{color:var(--tx-l1);font-weight:500}
.blk.dark .prose strong{color:var(--tx-d1)}

/* numbered list with serif numerals */
.nlist{list-style:none;margin:0;padding:0;counter-reset:n}
.nlist>li{counter-increment:n;display:grid;grid-template-columns:56px 1fr;gap:20px;padding:28px 0;border-top:1px solid var(--rule-l)}
.blk.dark .nlist>li{border-color:var(--rule-d)}
.nlist>li::before{content:counter(n,decimal-leading-zero);font:400 26px/1 var(--serif);color:var(--gold-deep);padding-top:4px}
.blk.dark .nlist>li::before{color:var(--gold)}
.nlist h3{margin-bottom:6px}
.nlist p{margin:0;color:var(--tx-l2)}
.blk.dark .nlist p{color:var(--tx-d2)}

/* flow diagram (HTML, wraps to vertical on phones) */
.flow{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));gap:0;counter-reset:f}
.flow>li{position:relative;padding:0 18px 0 0}
.flow>li:not(:last-child)::after{content:"";position:absolute;top:27px;left:62px;right:6px;height:1px;background:linear-gradient(90deg,var(--c,var(--gold)) 0 60%,transparent 0) 0 0/10px 1px repeat-x}
.flow .dot{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--c,var(--gold));color:var(--c,var(--gold));background:var(--paper);position:relative;z-index:1;margin-bottom:18px}
.blk.dark .flow .dot{background:var(--ink)}
.blk.alt .flow .dot{background:var(--stone)}
.flow .dot svg{width:24px;height:24px}
.flow h3{font:500 16px/1.35 var(--sans);letter-spacing:0;margin-bottom:6px}
.flow p{font-size:15px;line-height:1.55;margin:0;color:var(--tx-l2)}
.blk.dark .flow p{color:var(--tx-d2)}
.flow .who{display:inline-block;font-size:13px;margin-top:10px;padding:3px 10px;border-radius:999px;border:1px solid currentColor;color:var(--c-tx,var(--gold-deep))}
.flow .person{--c:var(--teal);--c-tx:var(--teal-deep)}
.flow .auto{--c:var(--gold);--c-tx:var(--gold-deep)}
.flow .admin{--c:var(--violet);--c-tx:#5B4BB8}
.blk.dark .flow .person{--c-tx:#5FD3C6}.blk.dark .flow .auto{--c-tx:var(--gold-hi)}.blk.dark .flow .admin{--c-tx:#B9AEF2}
.flow-note{margin-top:32px;padding:18px 22px;border-left:2px solid var(--teal);background:rgba(20,168,152,.06);font-size:15px;color:var(--tx-l2);max-width:70ch}
.blk.dark .flow-note{color:var(--tx-d2);background:rgba(20,168,152,.10)}
.legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:28px;font-size:14px;color:var(--tx-l3)}
.blk.dark .legend{color:var(--tx-d3)}
.legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;vertical-align:0}

/* ranked bars (hours saved) */
.bars{margin:36px 0 0;padding:0;list-style:none}
.bars li{display:grid;grid-template-columns:minmax(0,15em) minmax(0,1fr) 5.5em;gap:16px;align-items:center;padding:12px 0;border-top:1px solid var(--rule-l)}
.blk.dark .bars li{border-color:var(--rule-d)}
.bars .lb{font-size:15px;line-height:1.35}
.bars .tr{height:12px;border-radius:6px;background:rgba(138,121,228,.16);position:relative;overflow:hidden}
.bars .tr span{position:absolute;inset:0 auto 0 0;border-radius:6px;background:var(--gold);width:var(--w);transition:width 1.1s var(--ease)}
.bars .tr i{position:absolute;inset:0 auto 0 0;border-radius:6px;background:var(--violet);opacity:.55}
.bars.anim:not(.in) .tr span{width:0}
.bars .v{font:400 22px/1 var(--serif);text-align:right}
.bars .v small{font:400 12px/1 var(--sans);color:var(--tx-l3);margin-left:3px}
.blk.dark .bars .v small{color:var(--tx-d3)}
.bars-cap{font-size:14px;color:var(--tx-l3);margin-top:18px;max-width:70ch}
.blk.dark .bars-cap{color:var(--tx-d3)}
.bars-total{display:flex;align-items:baseline;gap:14px;margin-top:22px}
.bars-total b{font:300 clamp(48px,6vw,72px)/1 var(--serif);color:var(--gold-deep)}
.blk.dark .bars-total b{color:var(--gold)}
@media (prefers-reduced-motion:reduce){.bars .tr span{transition:none}}

/* course formats */
.formats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}
.fmt{border:1px solid var(--rule-l);border-radius:10px;padding:32px 28px;background:var(--paper);display:flex;flex-direction:column}
.fmt.feat{background:var(--ink);color:var(--tx-d1);border-color:var(--ink)}
.fmt h3{margin-bottom:6px}
.fmt .len{font-size:15px;color:var(--tx-l3);margin-bottom:20px}
.fmt.feat .len{color:var(--tx-d3)}
.fmt ul{list-style:none;padding:0;margin:0 0 24px;flex:1}
.fmt li{padding:9px 0 9px 22px;border-top:1px solid var(--rule-l);font-size:15px;color:var(--tx-l2);position:relative}
.fmt.feat li{border-color:var(--rule-d);color:var(--tx-d2)}
.fmt li::before{content:"";position:absolute;left:0;top:1.15em;width:10px;height:1px;background:var(--gold-deep)}
.fmt.feat li::before{background:var(--gold)}
.fmt .price{font:400 26px/1.1 var(--serif);margin-bottom:18px}
.fmt .price small{display:block;font:400 13px/1.4 var(--sans);color:var(--tx-l3);margin-top:4px}
.fmt.feat .price small{color:var(--tx-d3)}

/* role grid */
.roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--rule-l);margin-top:40px}
.roles>div{padding:32px 32px 32px 0;border-bottom:1px solid var(--rule-l)}
.roles>div:nth-child(even){padding:32px 0 32px 32px;border-left:1px solid var(--rule-l)}
.roles p{color:var(--tx-l2);margin:0 0 10px}
.roles .eg{font-size:15px;color:var(--tx-l3)}
.roles .eg b{font-weight:500;color:var(--teal-deep)}

/* comparison table */
.cmp-wrap{overflow-x:auto;margin-top:40px;-webkit-overflow-scrolling:touch}
.cmp{width:100%;border-collapse:collapse;min-width:620px;font-size:15px}
.cmp th,.cmp td{text-align:left;padding:16px 18px;border-bottom:1px solid var(--rule-l);vertical-align:top}
.cmp thead th{font:400 22px/1.2 var(--serif);border-bottom:1px solid var(--tx-l1)}
.cmp tbody th{font-weight:500;width:22%}
.cmp td{color:var(--tx-l2)}
.cmp .us{background:rgba(201,162,94,.10)}

/* hub diagram */
.hub{position:relative;aspect-ratio:16/9;max-width:980px;margin:48px auto 0}
.hub svg.lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.hub svg.lines line{stroke:var(--gold);stroke-width:1;stroke-dasharray:4 5;vector-effect:non-scaling-stroke}
.hub .core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:26%;aspect-ratio:1;border-radius:50%;background:var(--ink);color:var(--tx-d1);display:grid;place-items:center;text-align:center;padding:12px;box-shadow:0 0 0 10px rgba(201,162,94,.12),0 0 0 22px rgba(201,162,94,.06)}
.hub .core b{display:block;font:400 clamp(20px,2.4vw,30px)/1.05 var(--serif)}
.hub .core small{font-size:13px;color:var(--tx-d2)}
.hub .node{position:absolute;transform:translate(-50%,-50%);background:var(--paper);border:1px solid var(--rule-l);border-radius:999px;padding:10px 18px;font-size:15px;white-space:nowrap;display:flex;align-items:center;gap:10px;box-shadow:0 6px 24px -12px rgba(20,20,18,.25)}
.blk.alt .hub .node{background:var(--paper)}
.hub .node i{width:9px;height:9px;border-radius:50%;background:var(--c,var(--gold))}

/* example cards (varied: left rule) */
.examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 40px;margin-top:40px}
.ex{padding:4px 0 4px 24px;border-left:2px solid var(--c,var(--gold))}
.ex h3{font:500 18px/1.35 var(--sans);letter-spacing:0;margin-bottom:8px}
.ex p{color:var(--tx-l2);margin:0 0 8px;font-size:16px}
.ex a{font-size:15px}
.blk.dark .ex p{color:var(--tx-d2)}

/* cards linking to pages */
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}
.tile{display:flex;flex-direction:column;padding:28px;border:1px solid var(--rule-l);border-radius:10px;text-decoration:none;background:var(--paper);transition:border-color .2s,transform .2s var(--ease)}
.tile:hover{border-color:var(--gold-deep);transform:translateY(-2px)}
.tile h3{margin-bottom:10px}
.tile p{color:var(--tx-l2);font-size:16px;margin:0 0 18px;flex:1}
.tile .go{font-size:15px;color:var(--gold-deep);text-decoration:underline;text-underline-offset:4px}
.tile .meta{font-size:13px;color:var(--tx-l3);margin-bottom:12px}
.blk.dark .tile{background:var(--ink-2);border-color:var(--rule-d);color:var(--tx-d1)}
.blk.dark .tile p{color:var(--tx-d2)}.blk.dark .tile .go{color:var(--gold-hi)}.blk.dark .tile .meta{color:var(--tx-d3)}

/* service sections on hub */
.svc-sec{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,1fr);gap:32px;padding:44px 0;border-top:1px solid var(--rule-l);align-items:start}
.svc-sec .ic{width:56px;height:56px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold-deep)}
.svc-sec h2{font-size:clamp(28px,3vw,40px);margin:0 0 10px;max-width:none}
.svc-sec p{color:var(--tx-l2);margin:0 0 12px}
.svc-sec ul{margin:0;padding:0;list-style:none}
.svc-sec li{padding:8px 0;border-bottom:1px solid var(--rule-l);font-size:15px;color:var(--tx-l2)}

/* team */
.team{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:40px}
.mate{display:grid;grid-template-columns:96px 1fr;gap:24px;align-items:start;padding:28px;border:1px solid var(--rule-l);border-radius:10px;background:var(--paper)}
.mate .av{width:96px;height:96px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#2c2c28,var(--ink));color:var(--gold-hi);display:grid;place-items:center;font:400 34px/1 var(--serif)}
.mate h3{margin-bottom:2px}
.mate .role{font-size:14px;color:var(--tx-l3);margin-bottom:12px}
.mate p{color:var(--tx-l2);font-size:16px;margin:0}

/* page CTA */
.pcta{padding:112px 0;background:var(--ink);color:var(--tx-d1);position:relative;overflow:hidden}
.pcta::before{content:"";position:absolute;inset:auto -10% -60% 40%;height:120%;background:radial-gradient(closest-side,rgba(201,162,94,.18),transparent 70%)}
.pcta .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:end}
.pcta h2{font-size:clamp(38px,4.6vw,64px);line-height:1}
.pcta ul{list-style:none;padding:0;margin:0 0 28px;color:var(--tx-d2)}
.pcta li{padding:10px 0;border-bottom:1px solid var(--rule-d)}

/* related reading */
.reading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:32px}

/* articles */
.art-hero h1{font-size:clamp(38px,5vw,68px);max-width:20ch;line-height:1.02}
.art-meta{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:14px;color:var(--tx-d3);margin-top:8px}
.article{padding:88px 0 104px}
.article .shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:72px;align-items:start}
.art-body{max-width:68ch;font-size:18px;line-height:1.75}
.art-body h2{font-size:clamp(30px,3.2vw,42px);line-height:1.1;margin:56px 0 18px}
.art-body h3{font-size:26px;margin:36px 0 10px}
.art-body p,.art-body li{color:#3d3b36}
.art-body ul,.art-body ol{padding-left:22px}
.art-body li{margin-bottom:10px}
.art-body strong{font-weight:500;color:var(--tx-l1)}
.art-body a{color:var(--gold-deep);text-underline-offset:3px}
.art-body .lead{font:400 clamp(22px,2.2vw,27px)/1.45 var(--serif);color:var(--tx-l1)}
.art-body blockquote{margin:32px 0;padding:4px 0 4px 24px;border-left:2px solid var(--gold);font:400 24px/1.4 var(--serif);color:var(--tx-l1)}
.art-body table{width:100%;border-collapse:collapse;font-size:16px;margin:24px 0}
.art-body th,.art-body td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--rule-l);vertical-align:top}
.art-body thead th{border-bottom:1px solid var(--tx-l1);font-weight:500}
.art-body .tbl{overflow-x:auto}
.art-body figure{margin:36px 0}
.art-side{position:sticky;top:110px;display:grid;gap:20px}
.art-side .box{padding:24px;border-radius:10px;background:var(--stone)}
.art-side .box.dark{background:var(--ink);color:var(--tx-d1)}
.art-side .box.dark p{color:var(--tx-d2)}
.art-side h2{font:400 22px/1.2 var(--serif);margin-bottom:10px}
.art-side p{font-size:15px;color:var(--tx-l2);margin:0 0 14px}
.art-side ol{margin:0;padding-left:18px;font-size:15px}
.art-side ol a{color:var(--tx-l2);text-decoration:none}
.art-side ol a:hover{color:var(--gold-deep);text-decoration:underline}
.art-side .btn{padding:14px 20px;font-size:14px}
.src{font-size:15px;margin-top:56px;padding-top:24px;border-top:1px solid var(--rule-l)}
.src h2{font:500 15px/1.4 var(--sans);letter-spacing:0;margin:0 0 10px}
.src ol{padding-left:20px;color:var(--tx-l3)}
.src li{margin-bottom:6px;font-size:15px}

/* contact */
.addr{font-style:normal;color:var(--tx-l2);line-height:1.8}

@media (max-width:960px){
  .split,.pcta .wrap,.article .shell{grid-template-columns:1fr;gap:40px}
  .split>.head,.art-side{position:static}
  .formats,.tiles{grid-template-columns:1fr}
  .svc-sec{grid-template-columns:56px minmax(0,1fr)}
  .svc-sec>ul{grid-column:2}
}
@media (max-width:760px){
  .blk{padding:76px 0}.pcta{padding:80px 0}.article{padding:56px 0 72px}
  .flow{grid-template-columns:1fr;gap:0}
  .flow>li{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:0 0 26px}
  .flow>li:not(:last-child)::after{top:62px;bottom:6px;left:27px;right:auto;width:1px;height:auto;background:linear-gradient(180deg,var(--c,var(--gold)) 0 60%,transparent 0) 0 0/1px 10px repeat-y}
  .flow .dot{margin:0}
  .roles,.examples,.team,.reading{grid-template-columns:1fr}
  .roles>div,.roles>div:nth-child(even){padding:26px 0;border-left:0}
  .bars li{grid-template-columns:1fr 4.5em;gap:8px 12px}
  .bars .lb{grid-column:1/-1}
  .hub{aspect-ratio:auto;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
  .hub svg.lines{display:none}
  .hub .core{position:static;transform:none;width:100%;aspect-ratio:auto;border-radius:12px;padding:24px;margin-bottom:8px;box-shadow:none}
  .hub .node{position:static;transform:none}
  .mate{grid-template-columns:1fr}
  .art-body{font-size:17px}
}
.art-side ol a,.src li a{display:inline-block;padding:5px 0}
.svc-sec .link,.ex a{display:inline-block;padding:10px 0}
.art-body{min-width:0}
@media (max-width:960px){.article .shell{grid-template-columns:minmax(0,1fr)}}
.tbl:focus-visible,.cmp-wrap:focus-visible{outline:2px solid var(--gold-deep);outline-offset:4px}
.tiles.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.tiles.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1100px){.tiles.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.tiles.four,.tiles.two{grid-template-columns:1fr}}
.art-side ol a{display:block;padding:4px 0}
.bars-total b{white-space:nowrap;flex:none}
