/* Telecommunications industry page */
.tc { --tc-navy:var(--bg-surface-elevated); --tc-navy-2:var(--bg-surface-elevated); --tc-line:rgba(22, 28, 22,.08); --tc-ink:#161C16; --tc-ink-2:#232B22; --tc-ink-3:#8F948C; --tc-glass:rgba(22, 28, 22,.035); --tc-glass-b:rgba(22, 28, 22,.14); --tc-accent-t:#FF0000; --tc-panel:#F5F5ED; --tc-gbg:#F5F5ED; --tc-gnode:#F5F5ED; --tc-gline:rgba(22, 28, 22,.28); --tc-bar:#8F948C; --tc-off:var(--bg-surface-elevated); --tc-ok:#10B981; --tc-warn:#F59E0B; --tc-red:var(--brand-crimson,#FF0000); }
.tc h1,.tc h2,.tc h3{letter-spacing:-.02em;color:inherit}
.tc-section{padding:5.5rem 0;position:relative}
.tc-light{background:var(--tc-off)}
[data-theme="dark"] .tc{--tc-navy:var(--bg-surface-elevated); --tc-navy-2:var(--bg-surface-elevated); --tc-line:rgba(148,163,184,.12); --tc-ink:#F1F5F9; --tc-ink-2:#CBD5E1; --tc-ink-3:#8F948C; --tc-glass:rgba(255,255,255,.04); --tc-glass-b:rgba(203,213,225,.25); --tc-accent-t:#FF0000; --tc-panel:var(--bg-surface); --tc-gbg:var(--bg-surface-inset); --tc-gnode:rgba(255,255,255,.06); --tc-gline:rgba(203,213,225,.45); --tc-bar:#8F948C; --tc-off:var(--bg-surface-elevated)}
.tc-dark{background:linear-gradient(160deg,var(--tc-navy),var(--tc-navy-2));color:var(--tc-ink);position:relative;overflow:hidden;border-bottom:1px solid var(--tc-line)}
.tc-dark .tc-body,.tc-dark .tc-lead{color:var(--tc-ink-2)}
.tc-rel{position:relative;z-index:1}
.tc-grid-bg{position:absolute;inset:0;background-image:linear-gradient(var(--tc-line) 1px,transparent 1px),linear-gradient(90deg,var(--tc-line) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle at 70% 40%,#161C16 0%,transparent 75%);opacity:.5;pointer-events:none}
.tc-eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--tc-red);margin-bottom:.9rem}
.tc-dark .tc-eyebrow{color:var(--brand-crimson,#FF0000)}
.tc h2{font-size:clamp(1.8rem,3.6vw,2.6rem);font-weight:800;line-height:1.15;margin-bottom:1rem;max-width:760px}
.tc-body{color:var(--text-secondary);font-size:1.05rem;line-height:1.7;max-width:680px;margin-bottom:1rem}
.tc-lead{font-size:1.15rem;line-height:1.65;max-width:600px;margin-bottom:2rem}
.tc-h3{font-size:1.05rem;font-weight:700;margin:1.8rem 0 .7rem}

/* Hero */
.tc-hero{padding:6rem 0 5rem}
.tc-hero-inner{display:grid;grid-template-columns:1.05fr 1fr;gap:3rem;align-items:center;position:relative;z-index:1}
.tc-hero h1{font-size:clamp(2.2rem,4.6vw,3.5rem);font-weight:800;line-height:1.08;margin-bottom:1.3rem;color:var(--tc-ink)}
.tc-ctas{display:flex;flex-wrap:wrap;gap:.8rem}
.tc-center{justify-content:center}
.tc-btn{display:inline-flex;align-items:center;padding:.85rem 1.4rem;border-radius:0.125rem;font-weight:700;font-size:.95rem;text-decoration:none;transition:transform .2s,background .2s,box-shadow .2s}
.tc-btn-primary{background:var(--tc-red);color:#F5F5ED}
.tc-btn-primary:hover{background:var(--brand-crimson-hover,#FF0000);transform:translateY(-1px);box-shadow:none}
.tc-btn-ghost{border:1px solid var(--tc-glass-b);color:var(--tc-ink)}
.tc-btn-ghost:hover{border-color:var(--tc-ink);background:var(--tc-glass)}
.tc-light .tc-btn-ghost,.tc-section:not(.tc-dark) .tc-btn-ghost{color:var(--text-primary);border-color:var(--border-strong)}
.tc-hero-graphic svg{width:100%;height:auto}
.tc-node{fill:var(--tc-gnode);stroke:var(--tc-glass-b)}
.tc-streams text{fill:var(--tc-ink)}
.tc-flow path{stroke:var(--tc-gline);stroke-dasharray:5 6;animation:tc-dash 1.6s linear infinite}
.tc-core{fill:rgba(255, 0, 0,.12);stroke:var(--tc-red);stroke-width:1.5}
.tc-core-t{fill:var(--tc-ink)}.tc-core-s{fill:var(--tc-accent-t)}
.tc-ok-l{stroke:var(--tc-ok)}.tc-warn-l{stroke:var(--tc-warn)}.tc-bad-l{stroke:var(--tc-red)}
.tc-out{fill:var(--tc-gnode)}
.tc-out-ok{stroke:var(--tc-ok)}.tc-out-warn{stroke:var(--tc-warn)}.tc-out-bad{stroke:var(--tc-red)}
.tc-out+text{fill:var(--tc-ink)}
@keyframes tc-dash{to{stroke-dashoffset:-22}}

/* Problem */
.tc-split{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center}
.tc-systems svg{width:100%;height:auto}
.tc-sys-links path{stroke:var(--text-muted)}
.tc-chip-s{fill:var(--bg-surface);stroke:var(--border-strong)}
.tc-systems text{fill:var(--text-primary)}
.tc-gap{fill:var(--brand-rose-subtle);stroke:var(--tc-red)}
.tc-systems .tc-gap-t{fill:var(--tc-red)}
.tc-problems{list-style:none;padding:0;margin:3rem 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;counter-reset:none}
.tc-problems li{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:0.125rem;padding:1.4rem;position:relative;transition:border-color .2s,transform .2s}
.tc-problems li:hover{border-color:var(--brand-rose-border);transform:translateY(-2px)}
.tc-problems li:not(:last-child)::after{content:"";position:absolute;right:-1rem;top:50%;width:1rem;height:1px;background:var(--tc-red);opacity:.4}
.tc-problems span{font-family:var(--font-mono);font-size:.75rem;color:var(--tc-red);font-weight:700}
.tc-problems h3{font-size:1rem;font-weight:700;margin-top:.5rem;line-height:1.35}

/* Explorer */
.tc-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:2rem 0 1.6rem}
.tc-chip{border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);padding:.5rem 1rem;border-radius:0.125rem;font-weight:600;font-size:.85rem;cursor:pointer;font-family:inherit}
.tc-chip[aria-pressed="true"]{background:var(--text-primary);color:var(--bg-main);border-color:var(--text-primary)}
.tc-chip:focus-visible,.tc-card:focus-visible,.tc-modal-x:focus-visible,.tc-btn:focus-visible{outline:2px solid var(--tc-red);outline-offset:3px}
.tc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.1rem}
.tc-card{text-align:left;font-family:inherit;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:0.125rem;padding:1.5rem;cursor:pointer;display:flex;flex-direction:column;gap:.7rem;color:var(--text-primary);transition:border-color .2s,transform .2s,box-shadow .2s}
.tc-card:hover{border-color:var(--brand-rose-border);transform:translateY(-3px);box-shadow:none}
.tc-card h3{font-size:1.08rem;font-weight:700;line-height:1.35}
.tc-card p{color:var(--text-secondary);font-size:.93rem;line-height:1.6;flex:1}
.tc-card-more{font-size:.85rem;font-weight:700;color:var(--tc-red)}
.tc-chip-tag{align-self:flex-start;display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .65rem;border-radius:0.125rem;background:var(--brand-rose-subtle);color:var(--brand-wine,#FF0000);border:1px solid var(--brand-rose-border)}
[data-theme="dark"] .tc-chip-tag{color:#FCA5A5}

/* Case study */
.tc-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem;margin:1.6rem 0}
.tc-metric{border:1px solid var(--tc-glass-b);border-radius:0.125rem;padding:1rem;background:var(--tc-glass)}
.tc-metric strong{display:block;font-size:1.5rem;font-weight:800;color:var(--tc-ink)}
.tc-metric span{font-size:.85rem;color:var(--tc-ink-2)}
.tc-metric-hero{grid-column:1/-1;border-color:rgba(255, 0, 0,.5);background:rgba(255, 0, 0,.08)}
.tc-metric-hero strong{font-size:2.4rem;color:var(--tc-accent-t)}
.tc-list{padding-left:1.1rem;color:var(--tc-ink-2);line-height:1.9}
.tc-note{font-size:.85rem;color:var(--tc-ink-3);font-style:italic;margin:1.2rem 0 1.6rem;max-width:620px}
.tc-note-dark{color:var(--text-muted);margin-top:2rem}
.tc-dash{background:var(--tc-panel);border:1px solid var(--tc-glass-b);border-radius:0.125rem;padding:1.5rem;box-shadow:none}
.tc-dash-head{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--tc-ink-3);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.tc-dot{width:8px;height:8px;border-radius:50%;background:var(--tc-red);box-shadow:none}
.tc-dash-big{margin:1.2rem 0;padding:1.2rem;border-radius:0.125rem;background:rgba(255, 0, 0,.1);border:1px solid rgba(255, 0, 0,.35)}
.tc-dash-big small{display:block;color:var(--tc-accent-t);font-size:.8rem;font-weight:600}
.tc-dash-big strong{font-size:2.6rem;font-weight:800;color:var(--tc-ink)}
.tc-dash-rows div{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:.8rem;margin:.6rem 0;font-size:.82rem;color:var(--tc-ink-2)}
.tc-dash-rows i,.tc-stack i{display:block;height:8px;border-radius:0.125rem;width:var(--w);background:var(--tc-bar);animation:tc-grow 1.2s ease-out both}
.tc-dash-rows .tc-warn-bar{background:var(--tc-warn)}
.tc-dash-sub{font-size:.8rem;color:var(--tc-ink-3);margin:1.2rem 0 .5rem;font-weight:700}
.tc-stack{display:flex;gap:3px}
.tc-stack i{height:12px}
.tc-stack i:nth-child(1){background:var(--tc-red)}.tc-stack i:nth-child(2){background:#F87171}.tc-stack i:nth-child(3){background:#FECACA}
.tc-legend{list-style:none;padding:0;display:flex;gap:1rem;flex-wrap:wrap;font-size:.75rem;color:var(--tc-ink-2);margin:.6rem 0 0}
.tc-dash figcaption{font-size:.7rem;color:var(--tc-ink-3);margin-top:1rem}

/* Steps & flow */
.tc-steps{list-style:none;padding:0;margin:2.4rem 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.tc-steps li{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:0.125rem;padding:1.6rem;border-top:3px solid var(--tc-red)}
.tc-steps span{font-family:var(--font-mono);font-size:.75rem;color:var(--tc-red);font-weight:700}
.tc-steps h3{font-size:1.2rem;margin:.4rem 0 .5rem}
.tc-steps p{color:var(--text-secondary);line-height:1.6;font-size:.95rem}
.tc-hflow{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center;padding:1.6rem;border:1px dashed var(--border-strong);border-radius:0.125rem;background:var(--bg-surface)}
.tc-hf-col{display:flex;flex-direction:column;gap:.35rem}
.tc-hf-col b{font-size:.8rem;font-weight:600;padding:.3rem .7rem;border-radius:0.125rem;border:1px solid var(--border-strong);color:var(--text-primary);text-align:center}
.tc-hf-core{padding:1.2rem 1.4rem;border-radius:0.125rem;background:var(--tc-red);color:#F5F5ED;font-weight:800}
.tc-hf-mid{padding:1rem 1.2rem;border-radius:0.125rem;border:1px solid var(--brand-rose-border);background:var(--brand-rose-subtle);font-weight:700;color:var(--text-primary)}
.tc-arrow{color:var(--tc-red);font-size:1.4rem;font-weight:800}

/* Outcomes & sources */
.tc-outcomes{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.2rem}
.tc-outcomes article{padding:1.5rem;border-radius:0.125rem;border:1px solid var(--border-subtle);background:var(--bg-surface);transition:border-color .2s}
.tc-outcomes article:hover{border-color:var(--brand-rose-border)}
.tc-outcomes h3{font-size:1.05rem;margin-bottom:.5rem}
.tc-outcomes p{color:var(--text-secondary);font-size:.93rem;line-height:1.6}
.tc-sources{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.tc-sources li{padding:1rem 1.1rem;border-radius:0.125rem;border:1px solid var(--border-subtle);background:var(--bg-surface);font-weight:600;font-size:.92rem;color:var(--text-primary);border-left:3px solid var(--tc-red)}
.tc-final{text-align:center}
.tc-final h2,.tc-final .tc-lead{margin-left:auto;margin-right:auto}

/* Modal */
.tc-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem}
.tc-modal[hidden]{display:none}
.tc-modal-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.7);backdrop-filter:blur(3px)}
.tc-modal-panel{position:relative;background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:0.125rem;max-width:980px;width:100%;max-height:90vh;overflow:auto;padding:2rem;box-shadow:none;animation:tc-pop .25s ease}
@keyframes tc-pop{from{opacity:0;transform:translateY(12px) scale(.98)}}
.tc-modal-x{position:absolute;top:.8rem;right:.9rem;width:40px;height:40px;border-radius:50%;border:1px solid var(--border-subtle);background:var(--bg-surface);font-size:1.5rem;cursor:pointer;color:var(--text-primary)}
.tc-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
.tc-modal-graphic{background:var(--tc-gbg);border:1px solid var(--tc-line);border-radius:0.125rem;padding:1.2rem;position:sticky;top:0}
.tc-modal-graphic svg{width:100%;height:auto;display:block}
.tc-modal-graphic text{font-family:inherit}
.tc-modal h3{font-size:1.5rem;font-weight:800;margin:.8rem 0 .5rem;padding-right:2rem}
.tc-m-summary{color:var(--text-secondary);margin-bottom:1rem}
.tc-modal h4{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--tc-red);margin:1.1rem 0 .35rem;font-weight:800}
.tc-modal p{line-height:1.65;font-size:.95rem}
.tc-modal .tc-btn{margin-top:1.5rem}

/* Use-case graphics (theme-aware, animated, hover detail) */
@keyframes tc-grow{from{width:0}}
.tc-modal-graphic{--g-ok:#059669;--g-warn:#D97706;--g-bad:var(--tc-red)}
[data-theme="dark"] .tc-modal-graphic{--g-ok:#10B981;--g-warn:#F59E0B}
.g-node{fill:var(--tc-gnode);stroke:var(--tc-gline);stroke-width:1.2;transition:stroke-width .15s,filter .15s}
.g-t{fill:var(--tc-ink)}.g-lbl{fill:var(--tc-ink-3);font-weight:700;letter-spacing:.06em}
.g-t-bad{fill:var(--g-bad)}.g-t-ok{fill:var(--g-ok)}.g-t-inv{fill:#F8FAFC}
.g-s-ok{stroke:var(--g-ok)}.g-s-warn{stroke:var(--g-warn)}.g-s-bad{stroke:var(--g-bad)}.g-s-line{stroke:var(--tc-gline)}
.g-link{stroke-width:2;fill:none}
.g-flow{stroke-dasharray:6 5;animation:tc-dash 1.4s linear infinite}
.g-broken{stroke-dasharray:4 4;animation:g-blink 1.6s ease-in-out infinite}
.g-draw{stroke-dasharray:600;stroke-dashoffset:600;animation:g-draw 2.2s ease-out forwards}
.g-hit{stroke:transparent;stroke-width:14;fill:none}.g-hit-c{fill:transparent}
.g-pkt{filter:none}
.g-f-ok{fill:var(--g-ok);color:var(--g-ok)}.g-f-warn{fill:var(--g-warn);color:var(--g-warn)}.g-f-bad,.g-f-red{fill:var(--g-bad);color:var(--g-bad)}
.g-area{opacity:.14;animation:g-blink 2.4s ease-in-out infinite}
.g-dot-ok{fill:var(--g-ok)}.g-dot-bad{fill:none;stroke:var(--g-bad);stroke-width:2;stroke-dasharray:3 3}
.g-bar{fill:var(--tc-bar);transform-box:fill-box;transform-origin:bottom;animation:g-rise .6s ease-out both}.g-bar-bad{fill:var(--g-bad)}
.g-pulse{animation:g-blink 1.8s ease-in-out infinite}
.g-hot{cursor:help;outline:none}
.g-hot:hover .g-node,.g-hot:focus-visible .g-node{stroke-width:2.5;filter:none}
.g-hot:hover .g-link{stroke-width:3.5}
.g-hot:hover .g-bar,.g-hot:hover circle{filter:brightness(1.2)}
@keyframes g-blink{50%{opacity:.4}}
@keyframes g-draw{to{stroke-dashoffset:0}}
@keyframes g-rise{from{transform:scaleY(0)}}
.tc-modal-graphic{position:relative}
.tc-tip{position:absolute;transform:translate(-50%,calc(-100% - 12px));max-width:220px;background:var(--text-primary);color:var(--bg-main);font-size:.78rem;line-height:1.4;font-weight:600;padding:.5rem .7rem;border-radius:0.125rem;pointer-events:none;box-shadow:none;z-index:3;text-align:center}
.tc-tip[hidden]{display:none}
.tc-graphic-hint{font-size:.75rem!important;color:var(--tc-ink-3);text-align:center;margin:.6rem 0 0}

@media (max-width:980px){
  .tc-hero-inner,.tc-split,.tc-modal-grid{grid-template-columns:1fr}
  .tc-problems,.tc-outcomes{grid-template-columns:1fr 1fr}
  .tc-problems li::after{display:none}
  .tc-steps{grid-template-columns:1fr}
  .tc-modal-graphic{position:static}
}
@media (max-width:600px){
  .tc-section{padding:4rem 0}
  .tc-problems,.tc-outcomes,.tc-sources,.tc-metrics{grid-template-columns:1fr}
  .tc-hflow{flex-direction:column}.tc-arrow{transform:rotate(90deg)}
  .tc-modal-panel{padding:1.4rem}
}
@media (prefers-reduced-motion:reduce){
  .tc *{animation:none!important;transition:none!important}
}
/* Hero RedOwl core + moving outcome lines */
.tc-core-glow{fill:rgba(255, 0, 0,.08);stroke:rgba(255, 0, 0,.35);stroke-dasharray:3 6;animation:tc-dash 3s linear infinite}
.tc-core-owl{animation:tc-owl 3s ease-in-out infinite;transform-origin:290px 180px}
@keyframes tc-owl{50%{transform:scale(1.04)}}
.tc-out-flow path{stroke-dasharray:6 5;animation:tc-dash 1s linear infinite}
.tc-pk-ok{fill:var(--tc-ok)}.tc-pk-warn{fill:var(--tc-warn)}.tc-pk-bad{fill:var(--tc-red)}
.tc-out-ok,.tc-out-warn,.tc-out-bad{animation:g-blink 2.4s ease-in-out infinite}
/* Hero icons with labels */
.tc-ic-c{fill:var(--tc-gnode);stroke:var(--tc-glass-b);stroke-width:1.5;transition:transform .2s}
.tc-ic-p{fill:none;stroke:var(--tc-ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.tc-ic-l{fill:var(--tc-ink)}
.tc-ic-ok .tc-ic-c{stroke:var(--tc-ok);fill:rgba(16,185,129,.1)}.tc-ic-ok .tc-ic-p{stroke:var(--tc-ok)}
.tc-ic-warn .tc-ic-c{stroke:var(--tc-warn);fill:rgba(245,158,11,.1)}.tc-ic-warn .tc-ic-p{stroke:var(--tc-warn)}
.tc-ic-bad .tc-ic-c{stroke:var(--tc-red);fill:rgba(255, 0, 0,.08)}.tc-ic-bad .tc-ic-p{stroke:var(--tc-red)}
.tc-ic-ok .tc-ic-c,.tc-ic-warn .tc-ic-c,.tc-ic-bad .tc-ic-c{animation:g-blink 2.4s ease-in-out infinite}
/* Use case heading icons */
.tc-uc-h{display:flex;align-items:flex-start;gap:.65rem}
.tc-uc-ic{flex-shrink:0;width:36px;height:36px;border-radius:0.125rem;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-rose-subtle);border:1px solid var(--brand-rose-border);color:var(--tc-red);margin-top:-.15rem}
.tc-uc-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tc-card:hover .tc-uc-ic{background:var(--tc-red);color:#F5F5ED;transition:background .2s,color .2s}

/* Seamless alternating sections: elevated / main, one neutral palette */
.tc-section,.tc-hero{border-top:1px solid var(--border-subtle)}
.tc-dark{border-bottom:0}
.tc-plain{background:var(--bg-main)!important}
.tc-plain .tc-grid-bg{display:none}
.tc-plain .tc-split{align-items:start}.tc-plain .tc-dash{position:sticky;top:110px}
/* Graphic status colours available to every diagram on industry pages (not only pop-ups) */
.tc{--g-ok:#059669;--g-warn:#D97706;--g-bad:var(--tc-red)}
[data-theme="dark"] .tc{--g-ok:#10B981;--g-warn:#F59E0B}
/* Industry margin-leakage section artwork (second section on each industry page) */
.tc-section.tc-bgart{background-image:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.92) 45%,rgba(255,255,255,.45) 75%,rgba(255,255,255,.2) 100%),var(--ind-bg)!important;background-size:cover;background-position:center;background-repeat:no-repeat}
[data-theme="dark"] .tc-section.tc-bgart{background-image:linear-gradient(90deg,rgba(22, 28, 22,.96) 0%,rgba(22, 28, 22,.9) 45%,rgba(22, 28, 22,.7) 100%),var(--ind-bg)!important}
@media (max-width:767px){.tc-section.tc-bgart{background-position:68% center;background-image:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.9)),var(--ind-bg)!important}[data-theme="dark"] .tc-section.tc-bgart{background-image:linear-gradient(rgba(22, 28, 22,.92),rgba(22, 28, 22,.92)),var(--ind-bg)!important}}
/* Text sits directly on the artwork; boxes are see-through */
.tc-section.tc-bgart{background-image:linear-gradient(90deg,rgba(255,255,255,.72) 0%,rgba(255,255,255,.5) 45%,rgba(255,255,255,.15) 100%),var(--ind-bg)!important}
[data-theme="dark"] .tc-section.tc-bgart{background-image:linear-gradient(90deg,rgba(22, 28, 22,.8) 0%,rgba(22, 28, 22,.65) 50%,rgba(22, 28, 22,.45) 100%),var(--ind-bg)!important}
.tc-bgart article,.tc-bgart li,.tc-bgart [class*="card"],.tc-bgart .tc-dash{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
.tc-bgart .tc-body,.tc-bgart p{color:var(--text-primary)}
.tc-bgart .tc-eyebrow{color:var(--tc-red)!important}
.tc-bgart h2,.tc-bgart h3,.tc-bgart p{text-shadow:none}
[data-theme="dark"] .tc-bgart h2,[data-theme="dark"] .tc-bgart h3,[data-theme="dark"] .tc-bgart p{text-shadow:none}
/* Last two boxes sit over the artwork: frosted white, no border */
.tc-bgart article:nth-last-child(-n+2),.tc-bgart li:nth-last-child(-n+2),.tc-bgart [class*="card"]:nth-last-child(-n+2){background:rgba(255,255,255,.45)!important;border-color:transparent!important;backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important}
[data-theme="dark"] .tc-bgart article:nth-last-child(-n+2),[data-theme="dark"] .tc-bgart li:nth-last-child(-n+2),[data-theme="dark"] .tc-bgart [class*="card"]:nth-last-child(-n+2){background:rgba(22, 28, 22,.45)!important}
.tc-card .tc-chip-tag{display:none!important}
/* Wide screens: keep the artwork on the right, away from the text */
@media (min-width:1200px){
.tc-section.tc-bgart{background-size:auto 100%,auto 100%!important;background-position:0 0,right center!important;background-image:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.92) 42%,rgba(255,255,255,.55) 56%,rgba(255,255,255,.12) 76%,rgba(255,255,255,0) 100%),var(--ind-bg)!important;background-color:var(--bg-primary,#F5F5ED)}
.tc-section.tc-bgart{background-size:100% 100%,auto 100%!important;background-repeat:no-repeat!important}
[data-theme="dark"] .tc-section.tc-bgart{background-image:linear-gradient(90deg,rgba(22, 28, 22,.97) 0%,rgba(22, 28, 22,.92) 42%,rgba(22, 28, 22,.6) 56%,rgba(22, 28, 22,.3) 100%),var(--ind-bg)!important}
}

/* Use-case grid: featured pair side by side, then even rows of three */
@media (min-width:900px){
.tc .tc-cards{grid-template-columns:repeat(12,minmax(0,1fr))}
.tc .tc-cards>.tc-card{grid-column:span 4}
.tc .tc-cards>.tc-card.tc-card-featured{grid-column:span 6;order:-1}
.tc .tc-cards>.tc-card.uc-w6{grid-column:span 6}
.tc .tc-cards>.tc-card.uc-w12{grid-column:span 12}
.tc .tc-cards>.tc-card{display:flex;flex-direction:column}
.tc .tc-cards>.tc-card>:last-child{margin-top:auto}
}

/* Systems and data cards (shared by all industry pages) */
.tl-sys { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; margin-top: 1.5rem; }
.tl-sys article { background: var(--bg-surface-elevated, var(--bg-main)); border: 1px solid var(--border-subtle); border-radius: 0.125rem; padding: 1.25rem; }
.tl-sys h3 { font-size: .74rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--tc-red, #FF0000); margin: 0 0 .8rem; }
.tl-sys ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .55rem; }
.tl-sys li { font-size: .92rem; color: var(--text-secondary); line-height: 1.45; padding-left: .9rem; position: relative; }
.tl-sys li::before { content: ""; position: absolute; left: 0; top: .6em; width: 4px; height: 4px; border-radius: 50%; background: var(--text-muted); }
@media (max-width:640px){.tl-sys{grid-template-columns:1fr!important}}
/* Sequenced evidence chain */
.sq-base{stroke:var(--tc-gline);stroke-width:1.2;opacity:.6}
.sq-seg{stroke-width:2.2;stroke:var(--g-ok);fill:none}.sq-seg[data-tone="bad"]{stroke:var(--g-bad)}
.sq-dot{fill:var(--g-ok);transition:fill .3s}.sq-dot[data-tone="bad"]{fill:var(--g-bad)}
.sq-shape{transition:fill .5s,stroke .5s,stroke-width .15s}.sq-txt{transition:fill .5s}
.sq-n[data-tone="ok"] .sq-shape{stroke:var(--g-ok);fill:color-mix(in srgb,var(--g-ok) 12%,var(--tc-gnode))}.sq-n[data-tone="ok"] .sq-txt{fill:var(--g-ok)}
.sq-n[data-tone="warn"] .sq-shape{stroke:var(--g-warn);fill:color-mix(in srgb,var(--g-warn) 12%,var(--tc-gnode))}.sq-n[data-tone="warn"] .sq-txt{fill:var(--g-warn)}
.sq-n[data-tone="bad"] .sq-shape{stroke:var(--g-bad);fill:color-mix(in srgb,var(--g-bad) 12%,var(--tc-gnode))}.sq-n[data-tone="bad"] .sq-txt{fill:var(--g-bad)}
.sq-n.sq-sel .sq-shape{stroke-width:1.2}
/* Wide screens: artwork as one seamless layer on the right, feathered into the page on its left edge */
@media (min-width:1200px){
.tc-section.tc-bgart{background-image:none!important;background-color:var(--bg-primary,#F5F5ED)!important;position:relative;isolation:isolate;overflow:hidden}
.tc-section.tc-bgart::before{content:"";position:absolute;top:0;right:0;bottom:0;width:62%;z-index:-1;pointer-events:none;background:var(--ind-bg) right center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 22%,#161C16 50%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 22%,#161C16 50%)}
[data-theme="dark"] .tc-section.tc-bgart{background-color:var(--bg-main,#161C16)!important}
[data-theme="dark"] .tc-section.tc-bgart::before{opacity:.45}
}
.tc-core-glow.tc-core-solid{fill:var(--tc-red,#FF0000);stroke:none;animation:none}
/* Keep the outline on the last two boxes over the background picture (matches the other boxes) */
.tc-bgart article:nth-last-child(-n+2),.tc-bgart [class*="card"]:nth-last-child(-n+2){border:1px solid var(--border-subtle)!important}
/* Night mode: background picture covers the whole section, with an even dark tint for readable text */
[data-theme="dark"] .tc-section.tc-bgart::before{left:0!important;width:auto!important;opacity:1!important;-webkit-mask-image:none!important;mask-image:none!important;background:linear-gradient(rgba(22,28,22,.72),rgba(22,28,22,.72)),var(--ind-bg) center/cover no-repeat!important}
[data-theme="dark"] .tc-bgart article,[data-theme="dark"] .tc-bgart [class*="card"]{background:rgba(22,28,22,.55)!important;border:1px solid var(--border-subtle)!important}
/* Use cases: every non-featured box is the same width and height */
@media (min-width:900px){.tc .tc-cards{grid-auto-rows:1fr}.tc .tc-cards>.tc-card:not(.tc-card-featured){grid-column:span 4!important}}
/* Italic disclaimers under graphics fill the full line */
.tc-note,.tc-note-dark{max-width:none!important;width:100%}
/* Case study boxes: equal size */
.en-scen,.tc-dash [class*="-grid"],.tc-dash [class*="-cards"]{grid-auto-rows:1fr}
/* Chain graphic: opaque backing so the connecting line sits behind the boxes */
.sq-back{fill:var(--tc-dash-bg,var(--bg-main,#161C16));stroke:none}
:root:not([data-theme="dark"]) .sq-back{fill:#F8FAFC}
/* Margin-leakage background image scales with the browser width (whole image kept, anchored right) */
html:not([data-theme="dark"]) .tc-section.tc-bgart::before{left:0!important;width:auto!important;background-size:cover!important;background-position:right center!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 38%,rgba(0,0,0,.4) 56%,#000 76%)!important;mask-image:linear-gradient(90deg,transparent 0%,transparent 38%,rgba(0,0,0,.4) 56%,#000 76%)!important}
