@font-face{font-family:"Urbanist";font-weight:400;font-style:normal;font-display:swap;src:url(fonts/ur-400.woff2) format("woff2")}
@font-face{font-family:"Urbanist";font-weight:600;font-style:normal;font-display:swap;src:url(fonts/ur-600.woff2) format("woff2")}
@font-face{font-family:"Urbanist";font-weight:800;font-style:normal;font-display:swap;src:url(fonts/ur-800.woff2) format("woff2")}
@font-face{font-family:"Nunito";font-weight:300;font-style:normal;font-display:swap;src:url(fonts/nu-300.woff2) format("woff2")}
@font-face{font-family:"Nunito";font-weight:400;font-style:normal;font-display:swap;src:url(fonts/nu-400.woff2) format("woff2")}
@font-face{font-family:"Nunito";font-weight:400;font-style:italic;font-display:swap;src:url(fonts/nu-400i.woff2) format("woff2")}
@font-face{font-family:"Nunito";font-weight:600;font-style:normal;font-display:swap;src:url(fonts/nu-600.woff2) format("woff2")}
@font-face{font-family:"Nunito";font-weight:700;font-style:normal;font-display:swap;src:url(fonts/nu-700.woff2) format("woff2")}

:root{
  --ink:#0B1320; --ink2:#111C2E; --line:#23324B; --bone:#EEECE5; --mute:#8E9AB0;
  --signal:#C8964F; --onsignal:#0B1320; --blue:#0A2BFF;
  --display:"Urbanist","Century Gothic","Segoe UI",system-ui,sans-serif;
  --sans:"Nunito","Segoe UI",system-ui,-apple-system,Arial,sans-serif;
  --mono:"Urbanist","Segoe UI",system-ui,sans-serif;
  --r:28px; --rs:14px;
  color-scheme:dark;
}
@media (prefers-color-scheme: light){
  :root:not([data-theme="dark"]){--ink:#EFEDE7;--ink2:#E3E0D7;--line:#C9C3B6;--bone:#0E1626;--mute:#5B6579;--signal:#8A5A22;--onsignal:#FFFFFF;color-scheme:light}
}
:root[data-theme="light"]{--ink:#EFEDE7;--ink2:#E3E0D7;--line:#C9C3B6;--bone:#0E1626;--mute:#5B6579;--signal:#8A5A22;--onsignal:#FFFFFF;color-scheme:light}
:root[data-theme="dark"]{--ink:#0B1320;--ink2:#111C2E;--line:#23324B;--bone:#EEECE5;--mute:#8E9AB0;--signal:#C8964F;--onsignal:#0B1320;color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--ink);color:var(--bone);font:400 18px/1.62 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:2px solid var(--signal);outline-offset:4px}
.wrap{max-width:1240px;margin:0 auto;padding-inline:clamp(16px,4vw,48px)}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.d{font-family:var(--display);text-transform:uppercase;line-height:.86;letter-spacing:.005em;margin:0;text-wrap:balance}
p{margin:0}

/* bar */
.bar{position:fixed;top:0;left:0;right:0;z-index:20;padding-top:env(safe-area-inset-top,0px)}
.bar>.wrap{mix-blend-mode:difference;color:#fff}
.bar .wrap{display:flex;justify-content:space-between;align-items:center;padding-block:18px}
.bar a{text-decoration:none;color:#fff}
.brand{font-family:var(--display);font-weight:900;font-size:20px;letter-spacing:.14em;text-transform:uppercase}
.nav{display:flex;gap:26px}
.nav a{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase}
@media (max-width:760px){.nav{display:none}}

/* hero */
.hero{position:relative;min-height:0;overflow:hidden;padding-top:88px}
.fan{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:repeat(12,1fr);gap:0 clamp(12px,2vw,24px);padding-block:clamp(24px,5vw,56px) 0}
.kicker{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px}
.name{grid-column:1/-1;grid-row:2;position:relative;z-index:2;margin-top:clamp(16px,3vw,32px)}
.name .d{font-weight:900;font-size:clamp(88px,19.5vw,300px)}
.name .l1{display:block}
.name .l2{display:block;color:transparent;-webkit-text-stroke:2px var(--bone);padding-left:clamp(0px,14vw,210px)}
.duo{grid-column:8/13;grid-row:2/5;align-self:start;position:relative;margin:clamp(40px,9vw,130px) 0 0;z-index:1;background:#C8964F;aspect-ratio:460/586;overflow:hidden}
.duo img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.25) brightness(1.05);mix-blend-mode:multiply}
.duo::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(0,0,0,.08) 3px 4px);pointer-events:none}
.duo .cap{position:absolute;left:12px;bottom:10px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#0B1320;mix-blend-mode:normal;z-index:2}
.pitch{grid-column:1/7;grid-row:3;align-self:end;padding-block:clamp(24px,4vw,48px)}
.pitch p{font-size:clamp(20px,2.1vw,26px);line-height:1.42;max-width:30ch;font-weight:400}
.pitch p em{font-style:italic;font-weight:300;color:var(--signal)}
.facts{grid-column:1/7;grid-row:4;display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:clamp(20px,4vw,56px);padding-block:8px clamp(40px,6vw,72px)}
.facts div{display:grid;gap:4px}
.facts b{font-family:var(--display);font-weight:700;font-size:clamp(44px,5vw,64px);line-height:.9;font-variant-numeric:tabular-nums}
@media (max-width:860px){
  .name{grid-row:auto}
  .name .l2{padding-left:0}
  .duo{grid-column:1/-1;grid-row:auto;max-width:360px;margin-top:24px}
  .pitch,.facts{grid-column:1/-1;grid-row:auto}
  .facts{grid-template-columns:repeat(3,1fr)}
}

/* marquee */
.band{background:var(--signal);color:var(--onsignal);overflow:hidden;white-space:nowrap;border-block:1px solid var(--signal)}
.band .track{display:inline-flex;gap:0;padding-block:14px;animation:slide 38s linear infinite}
.band span{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:.06em;text-transform:uppercase;padding-inline:22px}
.band span::after{content:"✳";margin-left:44px;font-size:.7em;vertical-align:.18em}
@keyframes slide{to{transform:translateX(-50%)}}

section{position:relative;padding-block:clamp(72px,10vw,140px)}
.shead{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(12px,2vw,24px);align-items:end;margin-bottom:clamp(36px,6vw,72px)}
.shead .d{grid-column:1/9;font-weight:900;font-size:clamp(56px,9vw,132px)}
.shead p{grid-column:9/13;color:var(--mute);font-size:17px}
@media (max-width:860px){.shead .d,.shead p{grid-column:1/-1}}

/* ventures index */
.index{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.index li{border-bottom:1px solid var(--line)}
.index a,.index .row{display:grid;grid-template-columns:120px 1fr 1.1fr 40px;gap:clamp(12px,3vw,40px);align-items:center;padding-block:clamp(20px,3vw,34px);text-decoration:none;color:var(--bone);position:relative}
.index .tagx{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--signal)}
.index .nm{font-family:var(--display);font-weight:900;font-size:clamp(36px,5.2vw,74px);line-height:.9;text-transform:uppercase;transition:transform .35s cubic-bezier(.2,.7,.2,1),color .2s}
.index .ds{font-size:16px;color:var(--mute);max-width:44ch}
.index .ar{font-family:var(--display);font-size:40px;line-height:1;transition:transform .3s}
.index a::before{content:"";position:absolute;inset:0 -16px;background:var(--ink2);opacity:0;transition:opacity .25s;z-index:-1}
.index a:hover::before,.index a:focus-visible::before{opacity:1}
.index a:hover .nm,.index a:focus-visible .nm{transform:translateX(14px);color:var(--signal)}
.index a:hover .ar{transform:translate(6px,-6px)}
@media (max-width:860px){.index a,.index .row{grid-template-columns:1fr 32px}.index .tagx{grid-column:1/-1}.index .ds{grid-column:1/-1;order:3}.index .nm{grid-column:1}}

/* arena */
.arena{background:var(--ink2);overflow:hidden;padding-block:0;contain:paint}
.arena .photo{position:absolute;inset:0;background:url(img/karlsruhe.jpg) center 60%/cover no-repeat;opacity:.28;filter:grayscale(1) contrast(1.1)}
.arena .ghost{position:absolute;left:-2vw;bottom:-3.5vw;font-family:var(--display);font-weight:900;font-size:24vw;line-height:.8;text-transform:uppercase;color:transparent;-webkit-text-stroke:1px var(--line);white-space:nowrap;pointer-events:none}
.arena .wrap{position:relative;padding-block:clamp(90px,13vw,190px)}
.arena blockquote{margin:0;font-weight:300;font-style:italic;font-size:clamp(28px,4.2vw,58px);line-height:1.14;max-width:22ch}
.arena blockquote mark{background:none;color:var(--signal);font-style:normal;font-weight:600}
.arena cite{display:flex;gap:18px;flex-wrap:wrap;margin-top:36px;font-style:normal}

/* timeline */
.tl{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.tl li{display:grid;grid-template-columns:minmax(200px,1fr) 2fr;gap:clamp(16px,4vw,64px);padding-block:clamp(24px,3.5vw,40px);border-bottom:1px solid var(--line);align-items:start}
.tl .yr{font-family:var(--display);font-weight:900;font-size:clamp(64px,8vw,120px);line-height:.8;color:transparent;-webkit-text-stroke:1.5px var(--mute);font-variant-numeric:tabular-nums;transition:color .3s,-webkit-text-stroke-color .3s}
.tl li:hover .yr,.tl li.now .yr{color:var(--signal);-webkit-text-stroke-color:var(--signal)}
.tl .span{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-top:12px;-webkit-text-stroke:0}
.tl h3{font-family:var(--display);font-weight:700;font-size:clamp(28px,3vw,40px);line-height:.95;text-transform:uppercase;margin:0 0 12px}
.tl p{max-width:58ch;opacity:.9}
@media (max-width:700px){.tl li{grid-template-columns:1fr}}

/* quals + focus */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px)}
@media (max-width:900px){.split{grid-template-columns:1fr}}
.quals{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.quals li{display:grid;grid-template-columns:118px 1fr;gap:18px;padding-block:14px;border-bottom:1px solid var(--line)}
.quals .y{font-family:var(--mono);font-size:13.5px;color:var(--signal);font-variant-numeric:tabular-nums;padding-top:3px}
.quals b{font-weight:600;display:block;line-height:1.35}
.quals span{color:var(--mute);font-size:15px}
.focus{display:grid;gap:clamp(22px,3vw,34px)}
.fb{display:grid;grid-template-columns:auto 1fr;gap:6px 22px;align-items:baseline}
.fb .big{font-family:var(--display);font-weight:900;font-size:clamp(46px,5vw,70px);line-height:.85;text-transform:uppercase;grid-row:1/3}
.fb .chips{display:flex;flex-wrap:wrap;gap:8px}
.fb .chips span{font-family:var(--mono);font-size:12.5px;border:1px solid var(--line);padding:5px 10px}
.fb p{color:var(--mute);font-size:16px}

/* writing */
.writing{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(24px,4vw,56px)}
.card{background:var(--ink2);padding:clamp(24px,3.5vw,44px);display:grid;gap:16px;align-content:start}
.card .d{font-weight:900;font-size:clamp(40px,4.6vw,64px)}
.card.alt{background:var(--signal);color:var(--onsignal)}
.card.alt .mono{color:var(--onsignal);opacity:.75}
.card .lead{font-size:20px;line-height:1.5}
.card .lead::first-letter{font-family:var(--display);font-weight:900;float:left;font-size:4.2em;line-height:.8;padding:6px 10px 0 0;color:var(--signal)}
.card a.go{font-family:var(--mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-bottom:2px solid currentColor;justify-self:start;padding-bottom:2px}
@media (max-width:860px){.writing{grid-template-columns:1fr}}

/* contact */
.contact{padding-bottom:0}
.contact .d{font-weight:900;font-size:clamp(64px,13vw,200px)}
.contact .d em{font-style:normal;color:var(--signal)}
.mailbig{display:inline-block;margin-top:clamp(20px,3vw,36px);font-family:var(--display);font-weight:700;font-size:clamp(30px,5vw,68px);text-transform:lowercase;letter-spacing:.01em;text-decoration:none;border-bottom:3px solid var(--signal);line-height:1.05;word-break:break-all}
.cgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,3vw,40px);margin-top:clamp(40px,6vw,72px);border-top:1px solid var(--line);padding-block:24px clamp(56px,8vw,96px)}
.cgrid div{display:grid;gap:6px;align-content:start}
.cgrid .v{font-size:18px;line-height:1.45}
.cgrid a{text-decoration-color:var(--signal)}
.copy{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:none;border:1px solid var(--line);color:var(--mute);padding:4px 9px;cursor:pointer;justify-self:start}
.copy:hover{color:var(--bone);border-color:var(--bone)}
@media (max-width:860px){.cgrid{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.cgrid{grid-template-columns:1fr}}

footer{border-top:1px solid var(--line)}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:24px}
footer a{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);text-decoration:none;margin-right:22px}
footer a:hover{color:var(--bone)}

@media (prefers-reduced-motion:no-preference){
  .name .l1{animation:up .9s cubic-bezier(.2,.8,.2,1) both}
  .name .l2{animation:up .9s .1s cubic-bezier(.2,.8,.2,1) both}
  .duo{animation:wipe 1.1s .25s cubic-bezier(.7,0,.2,1) both}
  @keyframes up{from{transform:translateY(22px)}to{transform:none}}
  @keyframes wipe{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
}
@media (prefers-reduced-motion:reduce){.band .track{animation:none}}

/* sans body tuning */
body{font-size:17.5px;line-height:1.6;letter-spacing:.003em}
.pitch p{font-weight:400;letter-spacing:-.005em}
.pitch p em{font-style:normal;font-weight:600}
.arena blockquote{font-style:normal;font-weight:300;letter-spacing:-.01em}
.arena blockquote mark{font-weight:600}

/* nav state + mobile */
.nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.burger{display:none;background:none;border:1px solid #fff;color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:6px 10px;cursor:pointer}
.mnav{mix-blend-mode:normal;background:var(--ink);border-bottom:1px solid var(--line);display:grid;padding:8px clamp(16px,4vw,48px) 16px}
.mnav a{color:var(--bone);font-family:var(--display);font-weight:700;font-size:34px;text-transform:uppercase;text-decoration:none;padding-block:6px}
@media (max-width:760px){.burger{display:block}}
.more{display:inline-block;margin-top:22px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border-bottom:2px solid var(--signal);padding-bottom:3px}

/* sub page hero */
.phero{position:relative;overflow:hidden;padding-top:88px;border-bottom:1px solid var(--line)}
.phero .wrap{position:relative;padding-block:clamp(24px,5vw,56px) clamp(48px,7vw,96px)}
.ptitle{font-weight:900;font-size:clamp(72px,14vw,210px);margin-top:clamp(20px,3vw,36px)}
.ptitle .ol{color:transparent;-webkit-text-stroke:2px var(--bone)}
.plede{margin-top:28px;font-size:clamp(18px,1.8vw,22px);max-width:52ch;color:var(--bone)}
.tone{background:var(--ink2)}
.fan-low{opacity:.6}
.contact{overflow:hidden}
.contact .wrap{position:relative}

/* teasers */
.teasers{padding-block:clamp(56px,8vw,110px)}
.tgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,32px)}
.teaser{position:relative;display:grid;gap:14px;align-content:start;padding:clamp(24px,3.5vw,44px);background:var(--ink2);text-decoration:none;color:var(--bone);min-height:280px;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.teaser .tt{font-weight:900;font-size:clamp(40px,5vw,72px)}
.teaser .tx{color:var(--mute);max-width:40ch}
.teaser .ar{position:absolute;right:clamp(20px,3vw,36px);bottom:clamp(16px,2.5vw,28px);font-family:var(--display);font-size:48px;line-height:1;transition:transform .3s}
.teaser:hover{transform:translateY(-4px)}.teaser:hover .ar{transform:translateX(8px)}
.teaser.alt{background:var(--signal);color:var(--onsignal)}
.teaser.alt .mono,.teaser.alt .tx{color:var(--onsignal);opacity:.8}
@media (max-width:820px){.tgrid{grid-template-columns:1fr}}

/* schriften */
.toc{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-bottom:1px solid var(--line)}
.toc a{display:grid;gap:4px;padding:22px 18px 22px 0;text-decoration:none;font-family:var(--display);font-weight:700;font-size:26px;text-transform:uppercase;line-height:1}
.toc a:hover{color:var(--signal)}
@media (max-width:760px){.toc{grid-template-columns:1fr}}
.essay{padding-block:clamp(64px,9vw,120px);border-bottom:1px solid var(--line)}
.egrid{display:grid;grid-template-columns:.9fr 1.3fr;gap:clamp(24px,5vw,80px);align-items:start}
.ehead{position:sticky;top:90px;display:grid;gap:14px}
.ehead .d{font-weight:900;font-size:clamp(44px,5.5vw,84px)}
.ebody{display:grid;gap:1.1em;font-size:18.5px;line-height:1.7;max-width:64ch}
.ebody .big{font-size:clamp(24px,2.4vw,32px);line-height:1.3;font-weight:300}
.drop p:first-child::first-letter{font-family:var(--display);font-weight:900;float:left;font-size:4.6em;line-height:.78;padding:6px 12px 0 0;color:var(--signal)}
@media (max-width:860px){.egrid{grid-template-columns:1fr}.ehead{position:static}}

/* legal */
.legal{display:grid;gap:14px;max-width:760px}
.legal h2{font-family:var(--display);font-weight:700;font-size:30px;text-transform:uppercase;margin:22px 0 0}
.legal p{max-width:64ch}

/* details */
[hidden]{display:none!important}
@media (min-width:761px){.mnav{display:none!important}}
::selection{background:var(--signal);color:var(--onsignal)}
.brand{display:inline-flex;align-items:center;gap:10px}
.brand .mark{width:30px;height:18px}
.shead{grid-template-columns:repeat(12,1fr)}
.shead .d{grid-column:1/-1;font-size:clamp(56px,9.5vw,140px)}
.shead p{grid-column:7/13;margin-top:8px}
@media (max-width:860px){.shead p{grid-column:1/-1}}
.hl{color:var(--signal)}
.index .nm .pre{color:var(--mute);font-weight:700}
.index a:hover .nm .pre{color:var(--bone)}
.arena .orig{margin-top:26px;font-family:var(--mono);font-size:13px;letter-spacing:.04em;color:var(--mute);max-width:none}
.intro{display:grid;grid-template-columns:220px 1fr;gap:clamp(24px,4vw,56px);align-items:end;margin-bottom:clamp(48px,7vw,88px)}
.intro .big{font-size:clamp(22px,2.4vw,32px);line-height:1.32;font-weight:300;max-width:34ch}
.duo.small{margin:0;grid-column:auto;grid-row:auto;animation:none;width:100%}
@media (max-width:700px){.intro{grid-template-columns:1fr}.duo.small{max-width:200px}}
.tl li{position:relative}
.tl li::before{content:"";position:absolute;left:-18px;top:calc(clamp(24px,3.5vw,40px) + 10px);width:7px;height:7px;background:var(--line);border-radius:50%}
.tl li.now::before{background:var(--signal)}
@media (max-width:1320px){.tl li::before{display:none}}
footer .flinks{display:flex;gap:4px;flex-wrap:wrap}
/* header: solid, theme-aware (no blend) */
.bar{background:color-mix(in srgb,var(--ink) 86%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.bar>.wrap{mix-blend-mode:normal;color:var(--bone)}
.bar a{color:var(--bone)}
.nav a{color:var(--mute)}.nav a:hover,.nav a[aria-current=page]{color:var(--bone)}
.burger{border-color:var(--line);color:var(--bone)}
.ptitle{line-height:.94}
.name .d{line-height:.9}
/* signet */
.brand .logo{width:34px;height:auto;display:block}
.sig{position:absolute;z-index:1;left:58%;top:84px;width:clamp(84px,9vw,132px);height:auto;transform:translateX(-50%);filter:drop-shadow(0 6px 18px rgba(0,0,0,.35))}
.phero .sig{left:78%;width:clamp(72px,7vw,110px)}
.flogo{width:40px;height:auto;display:block;margin-right:8px}
footer .wrap{align-items:center}
@media (max-width:860px){.sig{left:auto;right:16px;transform:none;top:74px;width:76px}.phero .sig{left:auto}}
.sig{width:clamp(96px,10vw,150px)}
.phero .sig{left:50%;width:clamp(80px,7.5vw,116px)}
@media (max-width:860px){.sig,.phero .sig{left:auto;right:16px;transform:none;width:76px}.kicker{padding-right:92px}}

/* ===== rund, mit einer Kante =====
   Leitmotiv: weiche Formen wie das Logo, eine Ecke bleibt spitz (unten links). */
.d{text-transform:none;line-height:.98;letter-spacing:-.025em;font-weight:800}
.name .d,.shead .d,.contact .d,.ptitle,.card .d,.teaser .tt,.ehead .d,.fb .big{font-weight:800}
.name .d{font-size:clamp(76px,16vw,250px);line-height:.92;letter-spacing:-.045em}
.name .l2{-webkit-text-stroke:2px var(--signal)}
.ptitle{font-size:clamp(60px,11vw,170px);letter-spacing:-.04em}
.ptitle .ol{-webkit-text-stroke:2px var(--signal)}
.mono{font-weight:600;font-size:12.5px;letter-spacing:.16em}
.brand{font-weight:800;font-size:20px;letter-spacing:-.01em;text-transform:none}
.nav a{font-weight:600;font-size:13px;letter-spacing:.06em;text-transform:none;padding:7px 14px;border-radius:999px;transition:background .2s,color .2s}
.nav{gap:4px}
.nav a[aria-current=page]{text-decoration:none;background:var(--ink2);color:var(--bone)}
.nav a:hover{background:var(--ink2)}
.burger{border-radius:999px;padding:8px 16px;font-weight:600;letter-spacing:.08em}
.mnav a{text-transform:none;font-weight:800;letter-spacing:-.02em}
/* Porträt: Bogen wie ein Schlossportal, unten links die Kante */
.duo{border-radius:999px 999px var(--r) 0;background:#C8964F}
.duo .cap{left:50%;transform:translateX(-50%);bottom:14px;white-space:nowrap;font-weight:700}
.duo.small{border-radius:999px 999px var(--rs) 0}
.facts b{font-weight:800;letter-spacing:-.03em}
.pitch p em{color:var(--signal);font-weight:700}
/* Band: runde Punkte statt Sterne */
.band span{text-transform:none;font-weight:800;letter-spacing:-.01em}
.band span::after{content:"";display:inline-block;width:.34em;height:.34em;border-radius:50%;background:currentColor;margin-left:44px;vertical-align:.2em}
/* Index */
.index .nm{text-transform:none;font-weight:800;letter-spacing:-.035em}
.index .pre{font-weight:600}
.index .tagx{font-weight:700;letter-spacing:.14em}
.index .tagx::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;margin-right:9px;vertical-align:.08em}
.index a::before{border-radius:var(--r) var(--r) var(--r) 0;inset:4px -18px}
.index .ar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1.5px solid var(--line);font-size:22px;font-family:var(--sans);transition:transform .3s,background .2s,border-color .2s,color .2s}
.index a:hover .ar{background:var(--signal);border-color:var(--signal);color:var(--onsignal)}
@media (max-width:860px){.index .ar{width:40px;height:40px;font-size:18px}}
/* Arena */
.arena .ghost{text-transform:none;font-weight:800;letter-spacing:-.05em}
.arena blockquote{font-family:var(--display);font-weight:600;letter-spacing:-.02em;line-height:1.12}
.arena blockquote mark{font-weight:800}
.arena .orig{font-family:var(--sans);font-style:italic;letter-spacing:0}
/* Karten & Teaser: runde Form, eine spitze Ecke */
.teaser,.card{border-radius:var(--r) var(--r) var(--r) 0}
.teaser .tt{text-transform:none;letter-spacing:-.035em}
.teaser .ar,.card .ar{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--ink);color:var(--bone);font-family:var(--sans);font-size:24px}
.teaser.alt .ar{background:var(--onsignal);color:var(--signal)}
.card .lead::first-letter,.drop p:first-child::first-letter{font-weight:800}
.card a.go,.more{font-weight:700;letter-spacing:.1em;border:0;padding:12px 22px;border-radius:999px 999px 999px 0;background:var(--signal);color:var(--onsignal)}
.card.alt a.go{background:var(--onsignal);color:var(--signal)}
.more{margin-top:26px}
/* Timeline / Qualis / Chips */
.tl .yr{font-weight:800;letter-spacing:-.04em}
.tl h3{text-transform:none;font-weight:800;letter-spacing:-.02em;line-height:1.05}
.tl li::before{width:10px;height:10px}
.quals .y{font-weight:700}
.fb .big{text-transform:none;letter-spacing:-.04em}
.fb .chips span{border-radius:999px;padding:6px 14px;font-weight:600;letter-spacing:.04em;font-size:13px}
.toc a{text-transform:none;font-weight:800;letter-spacing:-.02em;padding:22px 18px 22px 0}
.toc .mono{font-size:11.5px}
/* Kontakt */
.mailbig{text-transform:none;font-weight:800;letter-spacing:-.03em;border-bottom:0;text-decoration:underline;text-decoration-color:var(--signal);text-decoration-thickness:4px;text-underline-offset:10px;text-decoration-skip-ink:none}
.copy{border-radius:999px;padding:7px 14px;font-weight:600}
.cgrid{border-radius:0}
.legal h2{text-transform:none;font-weight:800;letter-spacing:-.02em}
footer a{text-transform:none;font-weight:600;letter-spacing:.02em;font-size:14px}
.sig{filter:drop-shadow(0 8px 22px rgba(0,0,0,.4))}
:focus-visible{border-radius:8px}
.name .l2{padding-left:clamp(0px,5vw,80px)}
.index a,.index .row{grid-template-columns:120px 1fr 1.1fr 56px}
@media (max-width:860px){.index a,.index .row{grid-template-columns:1fr 44px}}
/* ruhige Ausrichtung: feste Spalten im Index */
.index a,.index .row{grid-template-columns:130px minmax(0,1.15fr) minmax(0,1fr) 56px;align-items:center}
.index .nm{font-size:clamp(32px,3.9vw,58px);white-space:nowrap}
.index .ds{max-width:none}
.index .ar{justify-self:end}
@media (max-width:860px){.index a,.index .row{grid-template-columns:minmax(0,1fr) 44px}.index .nm{white-space:normal;font-size:clamp(30px,8vw,44px)}}
.tgrid{align-items:stretch}
/* Porträt: Kreis */
.duo,.duo.small{border-radius:50%;aspect-ratio:1/1}
.duo img{object-position:50% 22%}
.duo .cap{display:none}
.name .l2{padding-left:0}
/* Haltung */
.haltung{overflow:hidden}
.haltung .wrap{position:relative}
.hgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.5vw,28px)}
.hb{display:grid;gap:12px;align-content:start;padding:clamp(24px,3vw,40px);background:var(--ink2);border-radius:var(--r) var(--r) var(--r) 0}
.hb h3{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(26px,2.6vw,36px);letter-spacing:-.025em;line-height:1.05}
.hb p{max-width:62ch}
.hb .mono{color:var(--signal)}
.hb.wide{grid-column:1/-1;background:var(--signal);color:var(--onsignal)}
.hb.wide .mono{color:var(--onsignal);opacity:.75}
.hq{margin:clamp(56px,8vw,100px) 0 0;font-family:var(--display);font-weight:800;font-size:clamp(40px,6.5vw,96px);line-height:1;letter-spacing:-.04em;text-wrap:balance;max-width:16ch}
.hq cite{display:block;margin-top:22px;font-style:normal}
@media (max-width:760px){.hgrid{grid-template-columns:1fr}}
.name .d{font-size:clamp(76px,15vw,220px)}
.hb.accent{background:var(--signal);color:var(--onsignal)}
.hb.accent .mono{color:var(--onsignal);opacity:.75}
/* Können: feste Label-Spalte, Chips und Text bündig */
.fb{grid-template-columns:clamp(120px,11vw,170px) minmax(0,1fr);gap:10px clamp(16px,2vw,28px);align-items:start}
.fb .big{grid-row:1/3;font-size:clamp(40px,4.2vw,60px);line-height:.9;padding-top:2px}
.fb .chips{padding-top:6px}
@media (max-width:520px){.fb{grid-template-columns:1fr}.fb .big{grid-row:auto}}
/* Teaser: drei Spalten */
.tgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
.teaser .tt{font-size:clamp(32px,3.4vw,52px)}
@media (max-width:1000px){.tgrid{grid-template-columns:1fr}}
.haltung{padding-top:clamp(56px,7vw,96px)}
.teaser{padding-bottom:clamp(96px,9vw,120px)}
