/* CONTENTUM.COM — ink black, alarm red, condensed uppercase display, mono labels, hairlines,
   square corners. No outside fonts or requests (Anton, SIL Open Font License, is self-hosted). */
@font-face{font-family:'Anton';src:url(anton.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{
  --bg:#0a0a0b;--bg2:#121214;--panel:#18181b;--ink:#f3f1ea;--muted:#9a9790;--hair:rgba(255,255,255,.12);--hair2:rgba(255,255,255,.24);
  --cyan:#e5484d;--cyan2:#f07a7d;--blue:#b3261c;--soft:#a7a399;--ink2:#e9e6de;--on:#111111;--ok:#5fe0a8;--warn:#ff8a3d;--bad:#ff7a7a;
  --display:'Anton',Impact,'Haettenschweiler','Arial Narrow Bold','Arial Narrow',Arial,sans-serif;--body:Arial,Helvetica,sans-serif;--mono:'Courier New',ui-monospace,monospace;
  --max:1240px;--pad:clamp(16px,4vw,48px);
  --tA:#e5484d;--tB:#f2a39f;--tC:#8f8b82;--tP:#4a4844;--tM:#ffb020;--tT:#f3f1ea;
}
*{box-sizing:border-box}
html{background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;scroll-padding-top:80px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--ink)}a:hover{color:var(--ink)}
::selection{background:var(--cyan);color:var(--on)}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.skip{position:absolute;inset-inline-start:8px;top:0;background:var(--cyan);color:var(--on);padding:8px 12px;z-index:99;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip:focus{clip-path:none;width:auto;height:auto;overflow:visible}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--pad)}
.wrap.wide{max-width:1560px}.wrap.narrow{max-width:820px}
img,svg{max-width:100%}

/* header / footer */
.top{position:sticky;top:0;z-index:20;background:rgba(10,10,11,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--hair)}
.top .wrap{display:flex;align-items:center;gap:24px;min-height:64px}
.brand{display:inline-flex;align-items:baseline;gap:10px;text-decoration:none;color:var(--ink)}
.wm{font-family:var(--display);font-size:26px;letter-spacing:.14em;line-height:1}
.bsub{font-family:var(--mono);font-size:12px;letter-spacing:.3em;color:var(--ink)}
.brand .tag{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--on);background:var(--cyan);padding:2px 6px}
.top nav{display:flex;gap:22px;margin-inline-start:auto;flex-wrap:wrap}
.top nav a{color:var(--muted);text-decoration:none;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:10px 0}
.top nav a:hover,.top nav a[aria-current]{color:var(--ink)}
@media (max-width:760px){.top .wrap{flex-wrap:wrap;gap:8px 16px;padding-block:8px}.top nav{order:3;width:100%;gap:16px;overflow-x:auto;flex-wrap:nowrap;margin:0}.top .btn-sm,.top .ghost{margin-inline-start:auto}}
.foot{border-top:1px solid var(--hair);margin-top:64px;padding:40px 0;color:var(--muted);font-size:13px}
.foot .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
.foot nav{display:flex;gap:18px;flex-wrap:wrap}.foot a{color:var(--muted);text-decoration:none}.foot a:hover{color:var(--ink)}
.foot .wm{font-size:20px}

/* type */
.kicker{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin:0 0 12px}
.kicker a{color:inherit}
h1,h2,.h1s,.h2{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:1;margin:.2em 0 .35em;text-wrap:balance}
h1{font-size:clamp(56px,11vw,150px)}
.h1s{font-size:clamp(44px,7vw,96px)}
h2{font-size:clamp(40px,6vw,82px)}
.h2{font-size:clamp(30px,4vw,52px);line-height:1}
.h3,h3{font-family:var(--body);font-weight:700;font-size:15px;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;margin:28px 0 10px}
h3.mini,h2.mini{font-family:var(--mono);font-weight:400;font-size:12px;letter-spacing:.14em;text-transform:uppercase;line-height:1.4;color:var(--muted);margin:22px 0 8px}
.hl{color:var(--ink)}
.lede{font-size:clamp(18px,2vw,22px);line-height:1.45;color:#e2dfd7;max-width:760px}.lede.small{font-size:17px}
.num{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--hair);padding-top:14px;margin:0 0 10px}
.src,.small{font-size:13px;color:var(--muted)}
.mono{font-family:var(--mono)}
.quote{font-size:clamp(20px,2.4vw,28px);line-height:1.35;border-inline-start:3px solid var(--cyan);padding-inline-start:20px;margin:40px 0 0;max-width:900px}
.big{font-size:clamp(20px,2.4vw,30px);line-height:1.3;max-width:980px;margin-top:40px}

/* buttons */
.btn,.ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:1px solid var(--cyan);cursor:pointer}
.btn{background:var(--cyan);color:var(--on);font-weight:700}.btn:hover{background:var(--cyan2);color:var(--on)}
.ghost{background:transparent;color:var(--ink)}.ghost:hover{background:rgba(255,59,48,.1)}
.btn-sm{min-height:36px;padding:0 14px;font-size:11px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;align-items:center}

/* sections */
.sec{padding:clamp(56px,8vw,110px) 0 0}.sec.first{padding-top:clamp(36px,5vw,64px)}
.sec.alt{background:linear-gradient(180deg,var(--bg2),var(--bg));padding-bottom:clamp(56px,8vw,96px);margin-top:clamp(56px,8vw,96px);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.sec.alt + .sec{padding-top:clamp(56px,8vw,96px)}
.hero{padding:clamp(40px,7vw,96px) 0 20px;background:radial-gradient(1200px 500px at 85% 0%,rgba(255,59,48,.16),transparent 60%)}
.hero h1 .hl{color:var(--soft)}
.ticker{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--hair);margin:48px 0 10px}
.ticker div{padding:22px;border-inline-end:1px solid var(--hair)}.ticker div:last-child{border:0}
.ticker dt{font-family:var(--display);font-size:clamp(40px,5vw,64px);color:var(--ink);line-height:1}
.ticker dd{margin:8px 0 0;color:var(--muted);font-size:14px}
@media (max-width:760px){.ticker{grid-template-columns:1fr}.ticker div{border-inline-end:0;border-bottom:1px solid var(--hair)}}
.cards3,.cards4{display:grid;gap:1px;background:var(--hair);border:1px solid var(--hair);margin-top:28px}
.cards3{grid-template-columns:repeat(3,1fr)}.cards4{grid-template-columns:repeat(4,1fr)}
@media (max-width:960px){.cards4{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.cards3,.cards4{grid-template-columns:1fr}}
.card{background:var(--bg);padding:24px}.sec.alt .card{background:var(--bg2)}
.card h3{margin-top:0;color:var(--ink)}.card p{margin:0;color:#d6d3cb}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px);align-items:start}
@media (max-width:900px){.split{grid-template-columns:1fr}}
.map-split{grid-template-columns:1.1fr .9fr}.map-split > figure{order:0}
@media (max-width:900px){.map-split{grid-template-columns:1fr}}
.ticks{list-style:none;padding:0;margin:0;border-top:1px solid var(--hair)}
.ticks li{padding:16px 0 16px 28px;border-bottom:1px solid var(--hair);position:relative;color:#d6d3cb}
.ticks li::before{content:'+';position:absolute;left:0;top:14px;color:var(--ink);font-family:var(--mono);font-size:18px}
.ticks b{display:block;color:var(--ink);text-transform:uppercase;letter-spacing:.08em;font-size:14px;margin-bottom:2px}
.steps{list-style:none;counter-reset:s;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.steps li{counter-increment:s;background:var(--bg2);padding:28px}
.steps li::before{content:'0' counter(s);font-family:var(--display);font-size:56px;color:var(--ink);line-height:1;display:block;margin-bottom:10px}
.steps b{text-transform:uppercase;letter-spacing:.1em}.steps p{margin:6px 0 0;color:#d6d3cb}
@media (max-width:760px){.steps{grid-template-columns:1fr}}
.svcgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair);margin-top:28px}
@media (max-width:960px){.svcgrid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.svcgrid{grid-template-columns:1fr}}
.svc{background:var(--bg);padding:26px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:8px;min-height:220px;transition:background .15s}
.svc:hover{background:var(--panel);color:var(--ink)}
.svc .n{font-family:var(--mono);color:var(--ink);font-size:12px;letter-spacing:.2em}
.svc h3{margin:4px 0 0;font-size:16px}.svc p{margin:0;color:#c9c6be;font-size:15px;flex:1}
.svc .more,.svc .cnt{font-family:var(--mono);font-size:12px;color:var(--ink);letter-spacing:.06em}
.vs{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--hair);border:1px solid var(--hair);margin-top:24px}
.vs > div{padding:28px;background:var(--bg)}.vs-b{background:linear-gradient(135deg,rgba(255,59,48,.16),var(--bg)) !important}
.vs h3{margin-top:0}.vs ul{margin:0;padding-inline-start:18px;color:#d6d3cb}.vs li{margin:6px 0}
.vs-a h3{color:var(--muted)}.vs-b h3{color:var(--ink)}
@media (max-width:760px){.vs{grid-template-columns:1fr}}
.contact{font-family:var(--mono);font-size:15px;line-height:2}
.panel{border:1px solid var(--hair);background:var(--bg2);padding:22px;margin-bottom:18px}
.panel h2:first-child,.panel h3:first-child,.panel .h3:first-child{margin-top:0}
.stat b{font-family:var(--display);font-size:56px;color:var(--ink);display:block;line-height:1}
.partner{border:1px solid var(--hair2);padding:12px 16px;margin:20px 0;font-size:14px;color:#d6d3cb}

/* bars */
.bars{list-style:none;padding:0;margin:0}
.bars li{margin:0}
.bars li > a,.bars li > span{display:grid;grid-template-columns:minmax(120px,1.1fr) 2fr 54px;align-items:center;gap:10px;padding:5px 0;color:var(--ink);text-decoration:none;font-size:14px}
.bars li > a:hover b{color:var(--ink)}
.bars b{font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bars i{display:block;height:8px;background:linear-gradient(90deg,#4a4950,#a9a59c);width:var(--w)}
.bars em{font-style:normal;font-family:var(--mono);font-size:13px;color:var(--muted);text-align:end}

/* map */
.mapbox{margin:0;border:1px solid var(--hair);background:radial-gradient(600px 500px at 40% 40%,rgba(255,59,48,.08),transparent 70%),var(--bg);padding:12px}
.demap{display:block;width:100%;height:auto}
.int .demap{max-height:80vh}
.demap .land{fill:#17171a;stroke:var(--hair2);stroke-width:1.2}
.demap circle{fill:var(--tC);fill-opacity:.85;stroke:var(--bg);stroke-width:.6}
.demap circle.tA{fill:var(--tA)}.demap circle.tB{fill:var(--tB)}.demap circle.tC{fill:var(--tC)}.demap circle.tM{fill:var(--tM)}.demap circle.tT{fill:var(--tT)}.demap circle.tP{fill:#4a4844;fill-opacity:.55}
.demap a circle:hover{stroke:#fff;stroke-width:1.5}
.demap .mark path{fill:var(--warn)}.demap .mark text{fill:var(--warn);font-family:var(--mono);font-size:14px}
figcaption{font-size:12px;color:var(--muted);padding:10px 4px 2px;font-family:var(--mono);line-height:2}
.lg{display:inline-block;width:10px;height:10px;border-radius:50%;margin:0 6px 0 10px;vertical-align:-1px;background:var(--tC)}
.lg.tA{background:var(--tA)}.lg.tB{background:var(--tB)}.lg.tC{background:var(--tC)}.lg.tM{background:var(--tM)}.lg.tT{background:var(--tT)}.lg.tP{background:#4a4844}
.defs{list-style:none;padding:0;margin:0;font-size:14px;color:#d6d3cb}.defs li{margin:6px 0}.defs .lg{margin-left:0}
.chiprow{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.chiprow a{font-family:var(--mono);font-size:12px;border:1px solid var(--hair2);padding:6px 10px;text-decoration:none;color:var(--muted)}
.chiprow a[aria-current]{border-color:var(--ink);color:var(--on);background:var(--cyan)}

/* forms */
.form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted);letter-spacing:.04em}
.form input,.form select,.form textarea,.filters input,.filters select{font:inherit;font-size:15px;color:var(--ink);background:var(--bg);border:1px solid var(--hair2);border-radius:0;padding:11px 12px;min-height:44px;width:100%}
.form textarea{resize:vertical;min-height:90px}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--ink);outline:none}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid2 .span2{grid-column:span 2}
@media (max-width:600px){.grid2{grid-template-columns:1fr}.grid2 .span2{grid-column:auto}}
fieldset{border:0;padding:0;margin:18px 0 0}legend{font-size:13px;color:var(--muted);margin-bottom:8px}
.chips{display:flex;flex-wrap:wrap;gap:4px}
td.chips{display:table-cell}
.chk{flex-direction:row !important;align-items:flex-start;gap:8px !important;cursor:pointer}
.chips .chk input{position:absolute;opacity:0;width:1px;height:1px}
.chips .chk span{border:1px solid var(--hair2);padding:7px 11px;font-size:13px;color:var(--ink)}
.chips .chk input:checked + span{background:var(--cyan);color:var(--on);border-color:var(--ink)}
.chips .chk input:focus-visible + span{outline:2px solid var(--cyan);outline-offset:2px}
.consent{margin-top:18px;font-size:13px;color:var(--muted)}.consent input{width:18px;min-height:18px;margin-top:2px;flex:none}
.hp{position:absolute !important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.err{border:1px solid var(--bad);color:#ffd0d0;padding:10px 14px;margin:0 0 14px}
.ok{border:1px solid var(--ok);color:#c9ffe6;padding:10px 14px}
.form .form label + label{margin-top:12px}

/* internal */
body.int{font-size:14px}
.kpis{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair);margin:16px 0}
.kpis a{background:var(--bg);padding:16px;text-decoration:none;color:var(--ink)}.kpis a:hover{background:var(--panel)}
.kpis b{display:block;font-family:var(--display);font-size:40px;color:var(--ink);line-height:1}.kpis span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
@media (max-width:900px){.kpis{grid-template-columns:repeat(3,1fr)}}@media (max-width:520px){.kpis{grid-template-columns:repeat(2,1fr)}}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cols2.detail{grid-template-columns:1.1fr .9fr;margin-top:18px}
@media (max-width:980px){.cols2,.cols2.detail{grid-template-columns:1fr}}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;align-items:center}
.filters input[type=search]{flex:2 1 220px;width:auto}.filters select{flex:1 1 150px;width:auto;min-height:40px;padding:8px}
.tools{font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.tools a[aria-current]{color:var(--ink);font-weight:700;text-decoration:none}.tools .sp{flex:1}
.tblwrap{overflow-x:auto;border:1px solid var(--hair)}
.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th{text-align:start;font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:10px;border-bottom:1px solid var(--hair2);background:var(--bg2);position:sticky;top:0}
.tbl td{padding:10px;border-bottom:1px solid var(--hair);vertical-align:top}
.tbl tr:hover td{background:rgba(255,59,48,.04)}
.tbl a{text-decoration:none;font-weight:700}
.tbl .sub,.sub{font-size:12px;color:var(--muted);margin-top:2px;font-weight:400}
.tbl td.sc{font-family:var(--display);font-size:22px;color:var(--ink);width:56px}
.tbl td.msg{max-width:360px;white-space:pre-wrap}
.tbl.leads td:nth-child(5){max-width:280px}
.chip{display:inline-block;font-size:10.5px;border:1px solid var(--hair2);padding:1px 6px;margin:1px 3px 1px 0;color:var(--ink);text-decoration:none;white-space:nowrap;font-weight:400 !important}
a.chip:hover{border-color:var(--ink)}
a.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.filters label.small{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.filters input[type=checkbox]{width:18px;height:18px;min-height:0;padding:0;margin:0;flex:none;accent-color:var(--ink)}
.sig{display:inline-block;font-family:var(--mono);font-size:11px;padding:2px 7px;white-space:nowrap}
.sig.tA{background:var(--tA);color:var(--on)}.sig.tB{background:var(--tB);color:var(--on)}.sig.tC{background:var(--tC);color:#fff}.sig.tM{background:var(--tM);color:var(--on)}.sig.tT{background:var(--tT);color:var(--on)}.sig.tP{background:transparent;color:var(--muted);border:1px dashed var(--hair2)}
.stage{display:inline-block;font-family:var(--mono);font-size:11px;padding:2px 7px;border:1px solid var(--hair2);white-space:nowrap}
.st-kontaktiert,.st-gespraech{border-color:var(--ink);color:var(--ink)}.st-audit,.st-angebot{border-color:var(--warn);color:var(--warn)}.st-gewonnen{background:var(--ok);color:var(--on);border-color:var(--ok)}.st-verloren{color:var(--muted)}
.demap circle.st-neu{fill:#6b6860}.demap circle.st-recherche{fill:#8f8b82}.demap circle.st-bereit{fill:#ff8a80}.demap circle.st-kontaktiert{fill:#ff3b30}.demap circle.st-gespraech{fill:#b3261c}.demap circle.st-audit{fill:#ff8a3d}.demap circle.st-angebot{fill:#ff6a5e}.demap circle.st-gewonnen{fill:#5fe0a8}.demap circle.st-verloren{fill:#3a3936}
.lg.st-neu{background:#6b6860}.lg.st-recherche{background:#8f8b82}.lg.st-bereit{background:#ff8a80}.lg.st-kontaktiert{background:#ff3b30}.lg.st-gespraech{background:#b3261c}.lg.st-audit{background:#ff8a3d}.lg.st-angebot{background:#ff6a5e}.lg.st-gewonnen{background:#5fe0a8}.lg.st-verloren{background:#3a3936}
.pager{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0;font-family:var(--mono)}.pager a,.pager b{padding:6px 10px;border:1px solid var(--hair)}.pager b{background:var(--cyan);color:var(--on)}
.log{list-style:none;padding:0;margin:0;font-size:13px}.log li{padding:8px 0;border-bottom:1px solid var(--hair)}.log time{font-family:var(--mono);color:var(--muted);font-size:12px}.log p{margin:4px 0 0;white-space:pre-wrap}
.lhead{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.scorebox{border:1px solid var(--cyan);padding:8px 16px;text-align:center}.scorebox b{display:block;font-family:var(--display);font-size:44px;color:var(--ink);line-height:1}.scorebox span{font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase}
.facts{width:100%;border-collapse:collapse;font-size:14px}.facts th{text-align:start;font-weight:400;color:var(--muted);padding:7px 12px 7px 0;width:38%;vertical-align:top}.facts td{padding:7px 0;border-bottom:1px solid var(--hair)}
.why{padding-inline-start:18px;color:#d6d3cb}.why li{margin:6px 0}
.parts{list-style:none;padding:0;margin:0;font-size:13px}.parts li{display:flex;justify-content:space-between;border-bottom:1px solid var(--hair);padding:5px 0}.parts b{font-family:var(--mono);color:var(--ink)}
.job{border-inline-start:2px solid var(--cyan);padding:4px 0 4px 14px;margin:12px 0}.job a{font-weight:700}
blockquote{margin:8px 0 0;padding:8px 12px;background:var(--panel);color:#d6d3cb;font-size:14px;border-inline-start:2px solid var(--hair2)}
.drafts textarea{width:100%;font-family:var(--body);font-size:14px;line-height:1.5;color:var(--ink);background:var(--bg);border:1px solid var(--hair2);padding:10px;resize:vertical}
.drafts .copy{margin:6px 0 4px}
.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:10px;overflow-x:auto;padding-bottom:12px;margin-top:10px}
.col{background:var(--bg2);border:1px solid var(--hair);padding:10px;min-height:300px}
.col.over{border-color:var(--ink);background:var(--panel)}
.col h2{font-family:var(--mono);font-size:12px;letter-spacing:.12em;margin:0;display:flex;justify-content:space-between;line-height:1.4}.col h2 span{color:var(--ink)}
.col .hint{font-size:11px;color:var(--muted);margin:4px 0 10px;min-height:30px}
.kcard{background:var(--bg);border:1px solid var(--hair);padding:9px;margin-bottom:8px;cursor:grab}.kcard.drag{opacity:.4}
.kcard > a{font-weight:700;text-decoration:none;font-size:13px;display:block}
.kcard .chips{margin-top:4px}.kcard select{width:100%;margin-top:6px;background:var(--bg2);color:var(--muted);border:1px solid var(--hair);font-size:12px;padding:4px}
.col .more{font-size:12px}
.mapbox.big .demap{max-height:84vh}
.legal h2{margin-top:28px}.legal p{color:#d6d3cb}
@media (prefers-reduced-motion:reduce){*{transition:none !important}}
@media print{.top,.foot,.filters,.tools{display:none}body{background:#fff;color:#000}}
/* ---- Domination Matrix ---- */
.mxpage main .wrap{max-width:none}
.mx-top{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between;margin-bottom:12px}
.mx-top .h2{margin:.1em 0 .2em}
.mx-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}
.mx-kpis div{border:1px solid var(--hair2);background:var(--bg2);padding:12px 14px;min-width:150px}
.mx-kpis div.hl{border-color:var(--ink)}
.mx-kpis span{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.mx-kpis b{display:block;font-family:var(--display);font-size:34px;line-height:1.1;color:var(--ink)}
.mx-kpis div.hl b{color:var(--ink)}
.mx-kpis em{display:block;font-style:normal;font-size:12px;color:var(--muted);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:900px){.mx-kpis{grid-template-columns:repeat(2,1fr)}}
.mx-date{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px}
.mx-date label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.mx-date input{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--hair2);padding:6px 8px;color-scheme:dark}
.mx-views{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 12px}
.mchip{font-family:var(--mono);font-size:12px;border:1px solid var(--hair2);background:transparent;color:var(--muted);padding:6px 10px;cursor:pointer}
.mchip[aria-pressed=true],.mchip[aria-selected=true]{background:var(--cyan);color:var(--on);border-color:var(--ink)}
.mx-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:14px;align-items:start}
@media (max-width:900px){.mx-layout{grid-template-columns:minmax(0,1fr)}.mx-side{order:2;position:static!important;max-height:none!important}}
.mx-side{position:sticky;top:76px;max-height:calc(100vh - 90px);overflow:auto}
.mx-side .panel{padding:12px;margin-bottom:10px}
.mx-side h3{margin:0 0 8px;font-family:var(--mono);font-weight:400;font-size:12px;letter-spacing:.14em;color:var(--ink)}
.mx-side label{display:block;font-size:12px;color:var(--muted);margin:10px 0 4px}
.mx-side select,.mx-side input[type=search],.mx-side input[type=number]{width:100%;font:inherit;font-size:14px;color:var(--ink);background:var(--bg);border:1px solid var(--hair2);padding:7px 8px}
.mx-chips{display:flex;flex-wrap:wrap;gap:4px}.mx-chips .mchip{font-size:11px;padding:4px 7px}
.mx-assume table{width:100%;border-collapse:collapse;font-size:13px}.mx-assume td{padding:2px 4px;vertical-align:middle}.mx-assume td input{width:90px!important}
.mx-assume .src{color:var(--muted);font-size:11px;padding-bottom:6px}.mx-assume summary{cursor:pointer}
.mx-stage{position:relative;height:calc(100vh - 230px);min-height:480px;border:1px solid var(--hair2);background:var(--bg);overflow:hidden}
.mx-stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}
.mx-stage canvas:active{cursor:grabbing}
.mx-wrap.mx-full{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:var(--bg);padding:8px}
.mx-wrap.mx-full .mx-stage{flex:1;height:auto;min-height:0}
body.mx-full-open{overflow:hidden}
.mx-tools{position:absolute;right:10px;top:10px;display:flex;gap:6px;z-index:5}
.mx-tools .ghost{background:rgba(10,10,11,.85);min-width:36px}
.mx-tip{position:fixed;pointer-events:none;z-index:1050;max-width:340px;background:#18181b;border:1px solid var(--cyan);color:var(--ink);padding:8px 10px;font-size:12px;line-height:1.4}
.mx-tip b{color:var(--ink)}
.mx-drawer{position:fixed;right:0;top:0;bottom:0;width:min(440px,100vw);background:var(--bg2);border-left:1px solid var(--hair2);z-index:1040;overflow:auto;padding:18px}
.mx-drawer[hidden]{display:none}
.mx-kv{display:grid;grid-template-columns:120px 1fr;gap:6px 10px;font-size:14px}.mx-kv dt{color:var(--muted);font-family:var(--mono);font-size:11px;text-transform:uppercase;padding-top:2px}.mx-kv dd{margin:0}
.ptag{display:inline-block;font-family:var(--mono);font-size:10px;padding:1px 6px;background:var(--warn);color:var(--on);margin-left:6px;vertical-align:2px}
/* project cards (start page) */
.plist{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair);margin-top:28px}
@media (max-width:960px){.plist{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.plist{grid-template-columns:1fr}}
.pcard{background:var(--bg);padding:20px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:6px;min-height:200px}
.pcard:hover{background:var(--panel);color:var(--ink)}
.pcard .n{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.12em}
.pcard h3{margin:2px 0 0;font-size:15px;color:var(--ink)}.pcard p{margin:0;color:#d6d3cb;font-size:14px}
.pcard .more{margin-top:auto;font-family:var(--mono);font-size:12px;color:var(--ink)}
.chk input[type=radio]{position:absolute;opacity:0;width:1px;height:1px}
.chips .chk input[type=radio]:checked + span{background:var(--cyan);color:var(--on);border-color:var(--ink)}
.split > *{min-width:0}
h1{font-size:clamp(34px,9.5vw,140px)}
h1,h2,.h1s,.h2{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.top nav a{white-space:nowrap}
.top .brand{gap:4px}
.mx-legend{border:1px solid var(--hair2);border-bottom:0;background:var(--bg2);padding:10px 12px;font-size:12.5px;line-height:1.5;color:#d6d3cb}
.mx-legend b{color:var(--ink)}.mx-legend .or{color:#ff8a3d}
.mx-key{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 18px}
@media (max-width:1100px){.mx-key{grid-template-columns:1fr}}
.mx-legend .sw{display:inline-flex;align-items:center;gap:5px;margin:0 10px 0 0;white-space:nowrap}
.mx-legend .sw i{display:inline-block;width:12px;height:12px;border:1px solid rgba(255,255,255,.25)}
.mx-scale{display:flex;flex-wrap:wrap;align-items:center;gap:6px 4px;margin-top:8px;padding-top:8px;border-top:1px solid var(--hair)}
.mx-scale b{margin-right:10px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.mx-scale .sw i{width:22px;height:14px}
/* --- v2.1: brand block, breadcrumbs, FAQ, language switch --- */
.brandx{border-block:1px solid var(--hair);background:var(--bg2);padding:72px 0;overflow:hidden}
.brandx .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:48px;align-items:center}
@media (max-width:900px){.brandx .wrap{grid-template-columns:1fr;gap:20px}}
.brandx .word{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-width:0}
.brandx h2{margin-top:0}
.brandx .punch{font-family:var(--display);text-transform:uppercase;font-size:clamp(28px,3.2vw,44px);line-height:1;margin:22px 0 0;letter-spacing:.02em}
.crumbwrap{padding-top:22px}
.crumbs{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--ink)}.crumbs i{font-style:normal;opacity:.5}.crumbs [aria-current]{color:var(--ink)}
.crumbwrap + .sec.first{padding-top:28px}
.faq{border-top:1px solid var(--hair);margin-top:18px}
.faq details{border-bottom:1px solid var(--hair)}
.faq summary{cursor:pointer;list-style:none;padding:18px 36px 18px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:4px;top:12px;font-family:var(--mono);font-size:24px;color:var(--ink)}
.faq details[open] summary::after{content:'–'}
.faq summary h3{margin:0;font-family:var(--body);text-transform:none;font-size:18px;line-height:1.35;letter-spacing:0;font-weight:700;color:var(--ink)}
.faq details p{margin:0 0 20px;color:#d6d3cb;max-width:760px}
.langsw{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--muted);text-decoration:none;border:1px solid var(--hair2);padding:7px 9px;line-height:1}
.langsw:hover{color:var(--ink);border-color:var(--ink)}
.top .wrap>.langsw{margin-inline-start:0}
.tick3{margin:22px 0}
.sigtab td.r{text-align:right;white-space:nowrap;padding-inline-start:12px}.sigtab th{width:30%}.sigtab td{vertical-align:top;padding-inline-end:8px}
.sigtab .lg{margin-inline-end:6px}
.lede.small{font-size:17px;max-width:720px;color:#c9c6be}
.hero h1{font-size:clamp(38px,8.6vw,128px);line-height:.92;margin:.15em 0 .3em}
@media (max-width:760px){.top .wrap>.langsw{margin-inline-start:auto}.top .wrap>.btn-sm{margin-inline-start:0;padding:9px 10px;font-size:10px;letter-spacing:.1em}.brandx{padding:44px 0}}

/* CONTENTUM: the word sits inside a container – contentum = contained */
.brandx .box{font-family:var(--display);text-transform:uppercase;font-size:clamp(46px,8.4vw,132px);line-height:.9;letter-spacing:.02em;color:var(--ink);border:clamp(4px,.7vw,9px) solid var(--cyan);padding:.12em .16em .08em;white-space:nowrap;max-width:100%;box-shadow:inset 0 0 0 3px var(--bg2),inset 0 0 0 5px rgba(255,59,48,.25)}
.brandx .gloss{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.wm .wmb{display:inline-block;border:2px solid var(--cyan);padding:3px 6px 1px;line-height:1}
.foot .wm .wmb{border-width:2px}
.pcard.tcard{border-left:3px solid var(--tT)}
.plist.plist2{grid-template-columns:repeat(2,1fr);margin-top:0}
@media (max-width:600px){.plist.plist2{grid-template-columns:1fr}}
@media (max-width:760px){.wm{font-size:20px;letter-spacing:.1em}.brandx .box{font-size:clamp(38px,11vw,64px)}}
.top .btn-sm{white-space:nowrap}
@media (min-width:761px) and (max-width:1180px){.top nav{gap:14px}.top nav a{font-size:10px;letter-spacing:.1em}}

/* v1.1 enterprise look: red is a signal accent only (logo frame, markers, thin rules, map), never text */
.hl{color:var(--soft)}
a{color:var(--ink);text-decoration-color:rgba(229,72,77,.6);text-underline-offset:3px}a:hover{color:#fff;text-decoration-color:var(--cyan)}
.kicker{color:var(--soft)}.kicker::before{content:'';display:inline-block;width:7px;height:7px;background:var(--cyan);margin-right:10px;vertical-align:1px}
.bsub{color:var(--soft)}
.btn{background:var(--ink);color:var(--on);border-color:var(--ink)}.btn:hover{background:#fff;color:var(--on);border-color:#fff}
.ghost{color:var(--ink);border-color:var(--hair2)}.ghost:hover{background:rgba(255,255,255,.06);border-color:var(--ink)}
.chiprow a[aria-current]{background:var(--ink);border-color:var(--ink);color:var(--on)}
.chips .chk input:checked + span,.chips .chk input[type=radio]:checked + span{background:var(--ink);border-color:var(--ink);color:var(--on)}
.mchip[aria-pressed=true],.mchip[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--on)}
.ticks li::before{color:var(--cyan)}
.steps li::before{color:var(--soft)}
.card h3,.vs-b h3{color:var(--ink)}.vs-b{border-color:var(--cyan)}
.chip{color:var(--ink2)}
.pcard h3{color:var(--ink);font-size:16px}.pcard .more{color:var(--soft)}
.ticker dt,.stat b,.kpis b,.scorebox b{color:var(--ink)}
.faq summary::after{color:var(--soft)}
.top nav a[aria-current]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--cyan)}
/* service cards with icons */
.svc{gap:12px;min-height:0;padding:28px 26px 24px}
.svc .ico{width:56px;height:56px;display:grid;place-items:center;border:1px solid var(--hair2);color:var(--ink);position:relative}
.svc .ico::after{content:'';position:absolute;right:-1px;top:-1px;width:7px;height:7px;background:var(--cyan)}
.svc .ico svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.svc:hover .ico{border-color:var(--ink)}
.svc h3{font-size:17px;letter-spacing:.02em}
.svc .cnt{display:flex;gap:8px;align-items:baseline;color:var(--soft);font-size:12px;border-top:1px solid var(--hair);padding-top:12px;margin-top:4px}
.svc .cnt b{font-family:var(--display);font-size:22px;color:var(--ink);font-weight:400;letter-spacing:.02em}
.ico-inline{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:10px;vertical-align:middle}
.ico-inline svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.h1s .ico-inline{width:56px;height:56px;border:1px solid var(--hair2);margin:0 0 18px;display:grid}.h1s .ico-inline svg{width:30px;height:30px}
/* Europe map */
.eumap{display:block;width:100%;height:auto}
.eumap path{fill:#141416;stroke:#2a2a2e;stroke-width:.5}
.eumap a path{cursor:pointer}
.eumap path.q0{fill:#1b1b1f}.eumap path.q1{fill:#2b2b31}.eumap path.q2{fill:#3b3a40}.eumap path.q3{fill:#55474a}.eumap path.q4{fill:#8a4447}.eumap path.q5{fill:#d0484d}
.eumap a:hover path{stroke:#fff;stroke-width:1}
.eulegend{display:flex;gap:4px;align-items:center;font-family:var(--mono);font-size:11px;color:var(--soft);flex-wrap:wrap}
.eulegend i{display:inline-block;width:18px;height:10px}

/* ----------------------------------------------------------------- project globe (Bot map of bots.work, CONTENTUM look) */
.ctmap{position:relative;height:calc(100svh - 64px);min-height:720px;max-height:1080px;overflow:hidden;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);background:radial-gradient(110% 85% at 55% 55%,#151517 0%,#0e0e10 55%,var(--bg) 100%)}
.ctglobe{position:absolute;inset:0;z-index:1;cursor:grab;overflow:hidden}.ctglobe:active{cursor:grabbing}
.ctempty{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:340px;text-align:center;color:var(--muted);font-size:14px;margin:0}
.ctmap.ready:not(.noglobe) .ctglobe .ctempty{display:none}
.ctintro{position:absolute;z-index:3;left:var(--pad);top:clamp(28px,5vh,56px);width:min(400px,30vw);pointer-events:none}
.ctintro>*{pointer-events:auto}
.ctintro .kicker{margin:0 0 14px;color:var(--soft)}
.ctmap [hidden]{display:none!important}
.cth{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(44px,5vw,80px);line-height:.92;margin:0 0 18px;letter-spacing:.01em}
.cth span{display:block}.cth .hl{color:var(--soft)}
.ctlead{font-size:16px;line-height:1.5;color:#d9d6ce;margin:0 0 20px}
.ctpicker{display:flex;align-items:center;gap:8px;padding:5px 5px 5px 14px;background:rgba(18,18,20,.92);border:1px solid var(--hair2)}
.ctpicker:focus-within{border-color:var(--ink)}
.ctpicker svg{width:18px;height:18px;color:var(--muted);flex:none}
.ctpicker input{flex:1;min-width:0;border:0;background:none;outline:none;color:var(--ink);font-size:15px;padding:9px 2px;font-family:var(--body)}
.ctpicker .btn{white-space:nowrap}
.ctpopular{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0;font-size:12.5px;align-items:center}
.ctpopular span{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-inline-end:4px}
.ctpopular a{text-decoration:none;color:var(--ink);padding:5px 10px;border:1px solid var(--hair2);background:rgba(10,10,11,.72)}
.ctpopular a b{color:var(--soft);font-weight:400;font-family:var(--mono);margin-inline-start:4px}
.ctpopular a:hover{border-color:var(--ink)}
.ctlegend{margin-top:26px;font-family:var(--mono);font-size:11px;letter-spacing:.03em;color:var(--muted)}
.ctlegend p{margin:0 0 10px;line-height:1.5}
.ctcats{display:flex;flex-wrap:wrap;gap:6px 14px;font-family:var(--body);font-size:12px;color:#cfccc4}
.ctcats i,.ctlayers i,.ctmap .fchips i,.ctsw,.ctmap .krow h4 i,.ctchip i{display:inline-block;width:9px;height:9px;background:var(--c,var(--soft));margin-inline-end:6px;vertical-align:0;flex:none}
.ctlayers{position:absolute;z-index:3;left:50%;transform:translateX(-50%);top:18px;display:flex;align-items:center;gap:6px;padding:5px;background:rgba(18,18,20,.9);border:1px solid var(--hair)}
.ctlayers span{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:0 8px}
.ctlayers button{display:flex;align-items:center;border:1px solid var(--hair2);background:transparent;color:var(--muted);font-size:13px;padding:7px 12px;cursor:pointer;font-family:var(--body)}
.ctlayers button i{background:var(--cyan)}.ctlayers button i.h{background:var(--soft)}
.ctlayers button[aria-pressed=true]{color:var(--ink);border-color:var(--ink);background:rgba(243,241,234,.06)}
.ctlayers button[aria-pressed=false] i{opacity:.35}
.cttools{position:absolute;z-index:3;right:calc(clamp(12px,1.6vw,24px) + 412px);bottom:22px;display:flex;gap:8px}
.cttools .ghost{background:rgba(10,10,11,.8);border-color:var(--hair2)}
.ctpanel{position:absolute;z-index:4;right:clamp(12px,1.6vw,24px);top:18px;bottom:18px;width:392px;display:flex;flex-direction:column;background:rgba(14,14,16,.93);backdrop-filter:blur(10px);border:1px solid var(--hair);overflow:hidden}
.ctpanel .modes{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:12px;padding:4px;border:1px solid var(--hair)}
.ctpanel .modes button{border:0;background:none;color:var(--muted);padding:10px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.ctpanel .modes button small{color:var(--soft);font-size:11px}
.ctpanel .modes button[aria-selected=true]{background:var(--ink);color:var(--on)}.ctpanel .modes button[aria-selected=true] small{color:var(--on)}
.ctbody{flex:1;overflow:auto;overscroll-behavior:contain}
.ctnote{font-size:13px;color:var(--muted);margin:4px 18px 10px;line-height:1.45}
.ctmap .rank{list-style:none;margin:0;padding:0}
.ctmap .rank li a{display:grid;grid-template-columns:24px minmax(0,1fr) 22% auto;gap:3px 12px;align-items:center;padding:10px 18px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.06);color:var(--ink)}
.ctmap .rank li a:hover,.ctmap .rank li.on a{background:rgba(243,241,234,.05)}
.ctmap .rank li.on a{box-shadow:inset 3px 0 var(--cyan)}
.ctmap .rk{font-family:var(--mono);font-size:12px;color:var(--muted)}
.ctmap .rn{min-width:0}.ctmap .rn b{display:block;font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ctmap .rn small{display:block;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ctmap .rbar{height:6px;background:rgba(255,255,255,.07);overflow:hidden}.ctmap .rbar i{display:block;height:100%;background:var(--c,var(--cyan))}
.ctmap .rv{font-family:var(--mono);font-size:13px;text-align:end;white-space:nowrap;color:var(--ink);min-width:36px}
.ctmap .chead{padding:4px 18px 14px;border-bottom:1px solid var(--hair)}
.ctmap .chead h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:44px;line-height:1;margin:8px 0 12px}
.ctmap .back{border:0;background:none;padding:4px 0;font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--muted);cursor:pointer}.ctmap .back:hover{color:var(--ink)}
.ctmap .cstats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--hair);border:1px solid var(--hair);margin:0 0 12px}
.ctmap .cstats div{background:var(--bg2);padding:10px 12px}.ctmap .cstats dt{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ctmap .cstats dd{margin:4px 0 0;font-family:var(--display);font-size:26px;line-height:1;color:var(--ink)}
.ctmap .fchips{display:flex;flex-wrap:wrap;gap:5px}.ctmap .fchips button{display:inline-flex;align-items:center;border:1px solid var(--hair2);background:none;color:#cfccc4;padding:5px 9px;font-size:12px;cursor:pointer;font-family:var(--body)}
.ctmap .fchips button small{color:var(--muted);margin-inline-start:5px;font-family:var(--mono)}
.ctmap .fchips button[aria-pressed=true]{border-color:var(--ink);color:var(--ink);background:rgba(243,241,234,.08)}
.ctmap .cfoot{padding:14px 18px}
.cttabs{display:flex;gap:4px;margin:0 12px 8px;border-bottom:1px solid var(--hair)}
.cttabs button{border:0;background:none;color:var(--muted);padding:9px 8px;font-size:12.5px;cursor:pointer;border-bottom:2px solid transparent;font-family:var(--body)}
.cttabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--cyan)}
.ctmap .krow{padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.06)}.ctmap .krow h4{display:flex;justify-content:space-between;margin:0 0 6px;font-size:13.5px;font-weight:700}.ctmap .krow h4 b{font-family:var(--mono);font-weight:400;color:var(--soft)}
.ctmap .kbar{position:relative;height:8px;background:rgba(255,255,255,.06)}.ctmap .kbar i{position:absolute;left:0;top:0;height:5px;background:var(--c,var(--soft))}.ctmap .kbar i.s{top:5px;height:3px;background:var(--soft)}
.ctdossier{position:absolute;z-index:5;left:var(--pad);top:18px;width:min(400px,30vw);min-width:320px;max-height:calc(100% - 36px);overflow:auto;background:var(--bg2);border:1px solid var(--hair2);border-top:2px solid var(--cyan);padding:22px 22px 20px}
.ctmap.dopen .ctintro{visibility:hidden}
.ctdossier .x{position:absolute;top:8px;right:10px;border:0;background:none;color:var(--muted);font-size:24px;cursor:pointer;line-height:1}
.ctdossier .dk{display:flex;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--soft);margin:0;padding-inline-end:24px}
.ctdossier h3{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.01em;font-size:28px;line-height:1.02;margin:8px 0 10px}
.ctdossier .sum{color:#d9d6ce;font-size:14px;line-height:1.5;margin:0 0 12px}
.ctdossier .dl{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.ctchips{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 14px}
.ctchip{display:inline-flex;align-items:center;border:1px solid var(--hair2);padding:4px 8px;font-size:12px;color:var(--ink);text-decoration:none}.ctchip:hover{border-color:var(--ink)}
.ctdossier .kgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:0 0 12px}.ctdossier .kgrid dt{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.ctdossier .kgrid dd{margin:3px 0 0;font-size:14px}
.ctdossier .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.cttag{display:inline-flex;align-items:center;gap:6px;transform:translate(-50%,-125%);padding:5px 9px;background:rgba(10,10,11,.92);border:1px solid var(--c);color:var(--ink);font-size:12px;font-family:var(--body);white-space:nowrap;cursor:pointer;pointer-events:auto}
.cttag b{font-weight:700}.cttag span{font-family:var(--mono);color:var(--soft)}.cttag i{font-family:var(--mono);font-style:normal;background:var(--c);color:var(--bg);padding:0 5px;font-size:11px}
.cttag.r{transform:translate(8px,-125%)}.cttag.l{transform:translate(calc(-100% - 8px),-125%)}.cttag.num{padding:2px 4px}.cttag.clip{opacity:0!important;pointer-events:none!important}
.cttip{background:var(--bg);border:1px solid var(--hair2);padding:7px 9px;font-family:var(--body);font-size:12px;max-width:280px;white-space:normal;color:var(--ink)}.cttip b{display:block;margin-bottom:2px}.cttip span{color:var(--muted)}
.ctlabels{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden}
.ctl{position:absolute;left:0;top:0;white-space:nowrap;font-size:11px;color:#a6a39a;text-shadow:0 0 3px var(--bg),0 0 6px var(--bg);will-change:transform}
.ctl.c b{font-weight:400;letter-spacing:.12em;text-transform:uppercase;font-size:10px}.ctl.c.big b{font-size:11.5px;color:#d9d6ce}
.ctl.p{display:flex;align-items:center;gap:4px}.ctl.p i{width:4px;height:4px;background:#d9d6ce;border-radius:50%}.ctl.p.cap i{background:none;border:1px solid #d9d6ce;width:6px;height:6px}
.ctl b{font-weight:400}
@media (max-width:600px){.cttag{font-size:11px;padding:4px 7px}.cttag b{max-width:34vw;overflow:hidden;text-overflow:ellipsis}.cttag span{display:none}.cttag.l,.cttag.r{transform:translate(-50%,-125%)}}
@media (max-width:1180px){.ctintro{width:min(330px,30vw)}.cth{font-size:clamp(40px,4.4vw,60px)}.ctlegend{display:none}}
@media (max-width:900px){
  .ctmap{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column;overflow:visible}
  .ctintro{position:static;width:auto;padding:28px 16px 8px;order:1}
  .ctlayers{position:static;transform:none;order:2;margin:10px 16px;flex-wrap:wrap;align-self:flex-start}
  .ctglobe{position:relative;inset:auto;height:min(62vh,112vw);min-height:340px;order:3}
  .ctmap.dopen .ctintro{visibility:visible}
  .cttools{position:static;order:4;margin:8px 16px;justify-content:flex-end}
  .ctpanel{position:static;width:auto;order:5;margin:8px 16px 20px;max-height:560px}
  .ctdossier{position:fixed;left:8px;right:8px;top:auto;bottom:8px;width:auto;max-height:70vh;z-index:60}
  .ctlegend{display:none}
}
/* v1.4 language menu (20 languages) */
.langmenu{position:relative}
.langmenu>summary{list-style:none;cursor:pointer;user-select:none}
.langmenu>summary::-webkit-details-marker{display:none}
.langmenu>summary::after{content:'';display:inline-block;width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-inline-start:7px;vertical-align:3px}
.langlist{position:absolute;inset-inline-end:0;top:calc(100% + 8px);z-index:60;display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:0;background:var(--bg);border:1px solid var(--hair2);padding:6px;box-shadow:0 18px 40px rgba(0,0,0,.45)}
.langlist a{display:block;text-align:left;padding:8px 10px;color:var(--muted);text-decoration:none;font-size:14px;line-height:1.3;white-space:nowrap}
.langlist a:hover,.langlist a:focus-visible{color:var(--ink);background:rgba(255,255,255,.06)}
.langlist a[aria-current]{color:var(--ink);box-shadow:inset 2px 0 0 var(--red,#e5484d)}
.int .langmenu>summary{display:inline-block}
@media (max-width:760px){.top .wrap>.langmenu{margin-inline-start:auto}.langlist{grid-template-columns:1fr 1fr;max-width:calc(100vw - 32px)}}
/* scripts without Latin capitals: no tracking, readable line height, system fonts with full coverage */
html:is([lang=ar],[lang=fa],[lang=ur],[lang=hi],[lang=zh],[lang=ja],[lang=ko]){--display:system-ui,-apple-system,'Segoe UI','Noto Sans','Noto Sans Arabic','Noto Sans Devanagari','PingFang SC','Hiragino Sans','Yu Gothic','Malgun Gothic','Microsoft YaHei',sans-serif;--body:system-ui,-apple-system,'Segoe UI','Noto Sans','Noto Sans Arabic','Noto Sans Devanagari','PingFang SC','Hiragino Sans','Malgun Gothic','Microsoft YaHei',Arial,sans-serif}
html:is([lang=ar],[lang=fa],[lang=ur],[lang=hi],[lang=zh],[lang=ja],[lang=ko]) :is(h1,h2,.h1s,.h2,.cth){font-weight:800;letter-spacing:0;line-height:1.2}
html:is([lang=ar],[lang=fa],[lang=ur]) *{letter-spacing:0!important}
html:is([lang=ar],[lang=fa],[lang=ur]) body{line-height:1.75}
html:is([lang=ar],[lang=fa],[lang=ur]) :is(.wm,.bsub,.brand){direction:ltr}
[dir=rtl] .crumbs,[dir=rtl] .kicker{direction:rtl}
[dir=rtl] .langlist a{text-align:right}
[dir=rtl] .langlist a[aria-current]{box-shadow:inset -2px 0 0 var(--red,#e5484d)}
html:is([lang=ar],[lang=fa],[lang=ur],[lang=hi],[lang=zh],[lang=ja],[lang=ko]) .wm{font-family:'Anton',Impact,'Arial Narrow',sans-serif;letter-spacing:.14em!important}
