/* ============================================================
   Michael Schippers — Homepage (Design B1)
   Technisch-editorial: Schibsted Grotesk + IBM Plex Mono,
   Off-White, monochrom Tannengrün, durchgehendes Ink-Raster.
   Schriften self-hosted — null externe Requests (DSGVO).
   ============================================================ */

/* ---------- LOKALE SCHRIFTEN (self-hosted) ---------- */
/* Schibsted Grotesk: variable Font, eine Datei deckt 400–900. */
@font-face{
  font-family:'Schibsted Grotesk';
  font-style:normal;
  font-weight:400 900;
  font-display:swap;
  src:url('fonts/schibsted-grotesk-latin-wght-normal.woff2') format('woff2');
}
/* IBM Plex Mono: statische Schnitte. */
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2');
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url('fonts/ibm-plex-mono-latin-500-normal.woff2') format('woff2');
}
/* Newsreader: variable Font (Gewichtsachse 200–800), für die Editorial-Serif-Headline. */
@font-face{
  font-family:'Newsreader';
  font-style:normal;
  font-weight:200 800;
  font-display:swap;
  src:url('fonts/newsreader-latin-wght-normal.woff2') format('woff2');
}
@font-face{
  font-family:'Newsreader';
  font-style:italic;
  font-weight:200 800;
  font-display:swap;
  src:url('fonts/newsreader-latin-wght-italic.woff2') format('woff2');
}

/* ---------- DESIGN-TOKENS ---------- */
:root{
  --font-display:'Schibsted Grotesk','Helvetica Neue',Arial,sans-serif;
  --font-ui:'Schibsted Grotesk','Helvetica Neue',Arial,sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;

  --paper:#FAF7F1;
  --paper-2:#F2ECE1;
  --ink:#21201C;
  --lead:#5C574D;
  --muted:#7C766B;
  --muted-light:#A39C8D;

  --leit:#1F4A3F;        /* Akzent: Tannengrün */
  --leit-dark:#15342C;
  --leit-deep:#0F2922;   /* CTA + Footer */
  --leit-tint:#EAF1EE;
  --chip-line:#CFDAD4;

  --line:#21201C;        /* Strukturlinien = Ink (durchgehendes Raster) */
  --line-soft:#DCD6C8;   /* dezente Trennlinie auf Paper, wo Ink zu hart wäre */
  --on-deep:#A7B4AC;     /* Fließtext auf tiefem Grün */
  --on-deep-mute:#8E988F;
  --on-deep-line:color-mix(in srgb, var(--on-deep) 45%, transparent);
  --radius-panel:12px;
  --radius-control:8px;

  --max:1140px;
}

/* ---------- RESET / BASIS ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-ui);
  font-size:16px;
  line-height:1.6;
  background:var(--paper);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  display:flex;
  flex-direction:column;
  min-height:100vh;
}
main{flex:1 0 auto;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
::selection{background:rgba(31,74,63,.18);color:var(--ink);}

.wrap{max-width:var(--max);margin:0 auto;padding:0 32px;}

/* ---------- TYPOGRAFIE ---------- */
h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.04;letter-spacing:-.022em;margin:0;color:var(--ink);overflow-wrap:break-word;}
h1{font-size:clamp(2.1rem,5.2vw,3.5rem);}
h2{font-size:clamp(1.9rem,3.4vw,2.3rem);}
h3{font-size:1.3rem;letter-spacing:-.015em;}
.accent{color:var(--leit);}

.lead{font-family:var(--font-ui);font-size:1.05rem;line-height:1.62;color:var(--lead);max-width:54ch;}
.muted{color:var(--muted);}

/* Mono-Labels (Kicker / Eyebrow / „// SECTION") */
.kicker{
  font-family:var(--font-display);
  font-size:.8rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--leit);
  margin:0;
  display:block;
}
.kicker.muted{color:var(--muted);}
/* Eyebrow mit vorangestelltem Strich (Hero/Seiten-Header) */
.eyebrow{
  font-family:var(--font-display);
  font-size:.8rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  margin:0 0 22px;
  display:inline-flex;
  align-items:center;
  gap:12px;
}

/* ---------- NAV / MASTHEAD ---------- */
.nav{position:sticky;top:0;z-index:50;background:rgba(250,247,241,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line-soft);}
.nav-inner{height:71px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;}
.brand{display:flex;align-items:center;gap:13px;}
.brand-mark{width:38px;height:38px;flex:0 0 auto;background:var(--leit);color:var(--paper);font-family:var(--font-display);font-weight:800;font-size:15px;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-control);}
.brand-name{font-family:var(--font-display);font-weight:700;font-size:.95rem;letter-spacing:-.01em;line-height:1.15;color:var(--ink);}
.brand-sub{font-family:var(--font-ui);font-size:.72rem;letter-spacing:.02em;color:var(--muted);}
.nav-links{display:flex;align-items:center;gap:28px;font-family:var(--font-ui);font-size:.9rem;font-weight:500;color:var(--muted);}
.nav-links a{transition:color .15s;padding:4px 0;position:relative;}
.nav-links a:hover{color:var(--ink);}
.nav-links a.is-current{color:var(--ink);}
.nav-links a.is-current::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--leit);}
a.nav-cta{padding:9px 18px;background:var(--leit);color:var(--paper)!important;transition:background .15s;border-radius:var(--radius-control);}
.nav-cta::after{display:none!important;}
.nav-cta:hover{background:var(--leit-dark);}
.nav-toggle{display:none;background:none;border:1px solid var(--ink);width:42px;height:42px;cursor:pointer;align-items:center;justify-content:center;}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{display:block;width:18px;height:1.5px;background:var(--ink);transition:.2s;}
.nav-toggle span{position:relative;}
.nav-toggle span::before,.nav-toggle span::after{content:"";position:absolute;left:0;}
.nav-toggle span::before{top:-6px;}
.nav-toggle span::after{top:6px;}
.nav-toggle[aria-expanded="true"] span{background:transparent;}
.nav-toggle[aria-expanded="true"] span::before{top:0;transform:rotate(45deg);}
.nav-toggle[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg);}

/* ---------- BUTTONS ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:600;font-size:.95rem;padding:13px 24px;cursor:pointer;border:1px solid transparent;border-radius:var(--radius-control);transition:background .15s,color .15s,border-color .15s;}
.btn .arr{transition:transform .2s;}
.btn:hover .arr{transform:translateX(3px);}
.btn.primary{background:var(--leit);color:#fff;border-color:var(--leit);}
.btn.primary:hover{background:var(--leit-dark);border-color:var(--leit-dark);}
.btn.secondary{background:transparent;color:var(--ink);border-color:var(--ink);}
.btn.secondary:hover{background:var(--ink);color:var(--paper);}
.btn.ghost-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.4);}
.btn.ghost-light:hover{background:rgba(255,255,255,.1);}
.btn.on-deep{background:#fff;color:var(--leit-deep);border-color:#fff;}
.btn.on-deep:hover{background:var(--paper);}

/* Mono-Textlink „öffnen →" */
.t-link{font-family:var(--font-display);font-size:.9rem;font-weight:600;color:var(--leit);display:inline-flex;align-items:center;gap:8px;}
.t-link .arr{transition:transform .2s;}
.t-link.is-soon{color:var(--muted-light);cursor:default;}

/* ---------- HERO ---------- */
.hero{padding:46px 0 50px;}
.hero-box{border:1px solid var(--line-soft);display:grid;grid-template-columns:1.26fr .84fr;}
.hero-main{padding:54px 44px 50px;}
.hero h1{margin:0;font-size:clamp(2.05rem,4.5vw,3.125rem);line-height:0.97;letter-spacing:-.03em;hyphens:manual;overflow-wrap:normal;}
.hero .lead{margin:24px 0 0;font-size:1.12rem;max-width:50ch;}
.profile-chips{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0 0;}
.chip{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.01em;color:var(--leit-dark);border:1px solid var(--chip-line);padding:6px 12px;}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin:34px 0 0;}

/* Werkstatt-Panel (rechte Spalte) */
.werkstatt-panel{border-left:1px solid var(--line-soft);background:#F5F1E9;padding:30px 34px;display:flex;flex-direction:column;}
.wp-head{display:flex;align-items:baseline;justify-content:space-between;padding:0 0 14px;border-bottom:1px solid var(--line-soft);}
.wp-head strong{font-family:var(--font-display);font-weight:700;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);}
.wp-live{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.04em;color:var(--muted);}
.wp-item{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line-soft);}
.wp-date{flex:0 0 auto;width:42px;font-family:var(--font-mono);font-size:.7rem;color:var(--muted-light);padding-top:2px;}
.wp-body strong{display:block;font-family:var(--font-display);font-size:.98rem;font-weight:700;color:var(--ink);letter-spacing:-.01em;}
.wp-body span{display:block;font-size:.84rem;color:var(--muted);margin-top:2px;line-height:1.45;}
.wp-tag{display:inline-block;margin-top:8px!important;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;color:var(--leit);}
.wp-foot{font-family:var(--font-ui);font-size:.84rem;color:var(--muted);padding-top:18px;}

/* ---------- SEITEN-HEADER (Unterseiten) ---------- */
.page-header{padding:60px 0 0;}
.page-header .wrap{border-bottom:1px solid var(--line-soft);padding-bottom:46px;}
.page-header h1{max-width:38rem;font-size:clamp(2.05rem,4.3vw,3rem);line-height:0.99;letter-spacing:-.028em;}
.page-header .lead{margin-top:20px;max-width:38rem;}
.page-header.justify-lead .lead{text-align:justify;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:9 4 3;}
.page-header.on-deep-head{background:var(--leit-deep);padding-bottom:0;}
.page-header.on-deep-head .wrap{border-bottom:none;padding-top:8px;padding-bottom:54px;}
.page-header.on-deep-head h1{color:#fff;}
.page-header.on-deep-head .eyebrow{color:#6FBfa0;}
.page-header.on-deep-head .lead{color:var(--on-deep);max-width:64ch;}
.page-header.on-deep-head .lead em{color:#fff;font-style:italic;}

/* ---------- SECTIONS ---------- */
.section{padding:56px 0;}
.section.tight{padding:42px 0;}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin:0 0 30px;}
/* Hintergrund-Zone: hebt eine Sektion dezent vom Creme ab (Rhythmus/Tiefe) */
.zone-tint{background:var(--paper-2);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);}
.section-head .left{max-width:52ch;}
.section-head .kicker{margin:0 0 14px;}
.section-head h2{margin:0;}
.section-head .count{font-family:var(--font-mono);font-size:.74rem;color:var(--muted-light);letter-spacing:.02em;white-space:nowrap;padding-bottom:4px;}

/* ---------- RASTER (Karten als durchgehendes Ink-Gitter) ---------- */
.grid-net{border-top:1px solid var(--ink);border-left:1px solid var(--ink);display:grid;}
.grid-net.cols-3{grid-template-columns:repeat(3,1fr);}
.grid-net.cols-2{grid-template-columns:repeat(2,1fr);}
.grid-net > *{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);}

/* Karte (Werke / Schaufenster) */
.cell{display:flex;flex-direction:column;padding:26px 26px 24px;background:transparent;transition:background .15s;min-height:0;}
a.cell:hover{background:rgba(31,74,63,.04);}
.kombi-entries .cell{box-shadow:inset 0 6px 0 var(--line-soft);}
.cell-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 18px;}
.cell-num{font-family:var(--font-mono);font-size:.72rem;color:var(--muted-light);}
.cell-tag{font-family:var(--font-ui);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--leit);text-align:right;}
.cell h3{margin:0 0 9px;}
.cell p{font-size:.9rem;color:var(--muted);line-height:1.55;margin:0 0 20px;flex:1;text-align:justify;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:9 4 3;}
.cell .t-link{margin-top:auto;}
.cell:hover .t-link .arr{transform:translateX(3px);}
.cell-visual{margin:0 0 18px;border:1px solid var(--line-soft);height:120px;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:14px;position:relative;}
.cell-new{position:absolute;top:0;right:0;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--leit);padding:3px 8px;}

/* Werke-Raster kompakt (3 pro Reihe — Platz für Wachstum) */
.werke-grid .cell{padding:22px 22px 20px;box-shadow:inset 0 6px 0 var(--leit);}
.werke-grid .cell-visual{height:104px;margin-bottom:16px;}
.werke-grid .cell-top{margin-bottom:14px;}
.werke-grid h3{font-size:1.16rem;}
.werke-grid p{font-size:.86rem;margin-bottom:16px;}

/* ---------- WERKE-FILTER ---------- */
.filter-row{display:flex;gap:0;flex-wrap:wrap;border:1px solid var(--ink);width:fit-content;margin:0 0 30px;}
.filter-row button{font-family:var(--font-ui);font-size:.76rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:transparent;border:none;border-right:1px solid var(--ink);padding:9px 17px;cursor:pointer;transition:.15s;}
.filter-row button:last-child{border-right:none;}
.filter-row button:hover{color:var(--ink);}
.filter-row button.is-active{background:var(--ink);color:var(--paper);}

/* ---------- WERKE-VISUALS (kleine schematische Grafiken) ---------- */
.viz{width:100%;height:100%;display:flex;align-items:center;justify-content:center;}
.viz-lzk{flex-direction:column;gap:5px;align-items:stretch;}
.viz-lzk .row{height:6px;background:var(--leit-tint);border:1px solid var(--chip-line);}
.viz-lzk .row.s{width:60%;}
.viz-lzk .cols{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:4px;}
.viz-lzk .col{border:1px solid var(--chip-line);padding:7px;display:flex;flex-direction:column;gap:4px;}
.viz-lzk .col b{font-family:var(--font-mono);font-size:.56rem;color:var(--leit);letter-spacing:.04em;}
.viz-lzk .col i{height:4px;background:var(--leit-tint);}
.viz-bruch{flex-direction:column;gap:9px;align-items:stretch;}
.viz-bruch .strip{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;}
.viz-bruch .strip span{height:22px;border:1px solid var(--chip-line);}
.viz-bruch .strip span.on{background:var(--leit);border-color:var(--leit);}
.viz-bruch .pill{font-family:var(--font-mono);font-size:.62rem;color:var(--leit);text-align:center;}
.viz-matrix{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;align-content:center;width:100%;height:100%;}
.viz-matrix span{border:1px solid var(--chip-line);}
.viz-matrix span.h{background:var(--leit);border-color:var(--leit);}
.viz-anon{flex-direction:column;gap:8px;align-items:stretch;justify-content:center;}
.viz-anon .ln{font-family:var(--font-mono);font-size:.6rem;color:var(--muted);}
.viz-anon .ln .m{background:var(--leit);color:#fff;padding:0 5px;}
.viz-prompt{flex-direction:column;gap:6px;align-items:stretch;justify-content:center;}
.viz-prompt .pr{border:1px solid var(--chip-line);border-left:2px solid var(--leit);padding:6px 9px;font-family:var(--font-mono);font-size:.58rem;color:var(--muted);}
.cell-visual.pq{background:var(--paper-2);}
.pq-inner{text-align:center;padding:0 8px;}
.pq-inner .pq-text{font-family:var(--font-mono);font-size:.72rem;color:var(--ink);line-height:1.5;font-weight:700;letter-spacing:-.01em;display:block;}
.pq-inner .pq-sub{font-family:var(--font-mono);font-size:.6rem;color:var(--leit);letter-spacing:.05em;text-transform:uppercase;margin-top:8px;display:block;}
.viz-leb{display:flex;align-items:center;justify-content:center;gap:6px;}
.viz-leb .leb-col{border:1px solid var(--chip-line);padding:8px 7px;display:flex;flex-direction:column;gap:4px;flex:1;}
.viz-leb .leb-col b{font-family:var(--font-mono);font-size:.5rem;color:var(--leit);text-align:center;}
.viz-leb .leb-col i{height:4px;background:var(--leit-tint);}
.viz-leb .leb-col i.ok{background:var(--leit);}
.viz-leb .leb-arrow{color:var(--muted-light);font-size:.8rem;flex:0 0 auto;}
.viz-sym{width:100%;height:100%;}
.viz-sym svg{width:100%;height:100%;max-height:88px;}
.viz-sym .axis{stroke:var(--leit);stroke-width:1.4;stroke-dasharray:4 4;}
.viz-sym .orig{fill:none;stroke:var(--muted);stroke-width:1.6;stroke-linejoin:round;}
.viz-sym .mirror{fill:var(--leit-tint);stroke:var(--leit);stroke-width:1.6;stroke-linejoin:round;}
.viz-sym .vtx{fill:var(--leit);}

/* ---------- „WAS ALS NÄCHSTES" (Text | YouTube) ---------- */
.next-box{border:1px solid var(--line-soft);display:grid;grid-template-columns:1fr 1fr;}
.next-main{padding:44px 46px;display:flex;flex-direction:column;align-items:flex-start;}
.next-main .kicker{margin:0 0 16px;color:var(--muted);}
.next-main h2{max-width:24ch;}
.next-main p{color:var(--muted);margin:18px 0 0;max-width:42ch;line-height:1.62;}
.next-main .btn{margin-top:28px;}
.next-media{border-left:1px solid var(--line-soft);padding:18px;display:flex;flex-direction:column;justify-content:center;gap:14px;min-width:0;}
.yt-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,var(--leit) 0%,var(--leit-deep) 100%);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--radius-panel);border:1px solid var(--on-deep-line);}
.yt-thumb::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 30%,rgba(255,255,255,.14),transparent 55%);}
.yt-thumb::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:30px 30px;}
.yt-play{width:62px;height:62px;border-radius:50%;background:rgba(250,247,241,.95);display:flex;align-items:center;justify-content:center;position:relative;z-index:2;}
.yt-play::after{content:"";width:0;height:0;border-left:19px solid var(--leit);border-top:12px solid transparent;border-bottom:12px solid transparent;margin-left:5px;}
.yt-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;}
.yt-meta span{font-size:.82rem;color:var(--muted);}
.yt-meta .soon{font-family:var(--font-ui);font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--leit);border:1px solid var(--chip-line);padding:3px 9px;}

/* ---------- CTA (tiefgrüner Block, randlos) ---------- */
.cta{background:var(--leit-deep);color:#fff;}
.cta .wrap{padding-top:58px;padding-bottom:58px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;}
.cta .kicker{color:#6FBfa0;margin:0 0 16px;}
.cta h2{color:#fff;max-width:20ch;}
.cta p{color:var(--on-deep);margin:14px 0 0;max-width:44ch;}

/* ---------- KONTAKT-KARTE (einheitlich, dunkel, am Seitenende) ---------- */
.kontakt-karte{background:var(--leit-deep);color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;gap:32px 48px;flex-wrap:wrap;border-radius:var(--radius-panel);border:1px solid var(--on-deep-line);}
.kontakt-karte .kicker{color:#6FBFA0;margin:0 0 10px;}
.kontakt-karte h2{color:#fff;font-size:clamp(1.35rem,2.1vw,1.65rem);}
.kontakt-karte p{color:var(--on-deep);margin:9px 0 0;max-width:68ch;font-size:.9rem;line-height:1.55;}
.kk-text{min-width:0;}
.mail-link{font-family:var(--font-mono);font-size:.98rem;color:#fff;border-bottom:1px solid rgba(255,255,255,.32);padding-bottom:4px;white-space:nowrap;display:inline-flex;align-items:center;gap:8px;transition:border-color .15s;}
.mail-link .arr{transition:transform .2s;}
.mail-link:hover{border-color:#fff;}
.mail-link:hover .arr{transform:translateX(3px);}

/* Newsletter-Band — dezenter Substack-Hinweis (B1) */
.nl-band{display:flex;justify-content:space-between;align-items:flex-start;gap:18px 40px;flex-wrap:wrap;background:var(--leit-tint);border:1px solid var(--chip-line);padding:22px 30px;}
.nl-band .nl-text{min-width:0;flex:1;}
.nl-band .kicker{margin:0 0 9px;}
.nl-band p{margin:0;font-family:var(--font-display);font-weight:600;font-size:1.1rem;line-height:1.32;color:var(--ink);max-width:48ch;}
.nl-band .nl-note{display:block;margin:9px 0 0;font-family:var(--font-ui);font-size:.78rem;line-height:1.55;color:var(--muted);max-width:52ch;}
.nl-action{display:flex;flex-direction:column;gap:10px;flex:1;}
.nl-action .nl-note{max-width:none;}
.nl-action .nl-cta{width:100%;justify-content:center;}
.nl-cta{font-family:var(--font-display);font-weight:600;font-size:.92rem;color:var(--paper)!important;background:var(--leit);padding:13px 22px;white-space:nowrap;display:inline-flex;align-items:center;gap:9px;transition:background .15s;border-radius:var(--radius-control);}
.nl-cta:hover{background:var(--leit-deep);}
.nl-cta .arr{transition:transform .2s;}
.nl-cta:hover .arr{transform:translateX(3px);}
@media(max-width:640px){.nl-band{flex-direction:column;align-items:flex-start;gap:15px;padding:20px 20px;}.nl-cta{width:100%;justify-content:center;}}

/* ---------- PROFIL ---------- */
.profil-intro{max-width:60ch;color:var(--lead);font-size:1.05rem;margin:0 0 38px;line-height:1.62;}
.profil-grid .cell h3{font-size:1.32rem;}
.pf-foot{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--ink);border-top:none;margin:0;}
.pf-item{flex:1 1 0;min-width:180px;padding:24px 26px;border-right:1px solid var(--ink);display:flex;flex-direction:column;gap:6px;}
.pf-item:last-child{border-right:none;}
.pf-item .k{font-family:var(--font-display);font-size:1.7rem;font-weight:800;color:var(--leit);line-height:1;}
.pf-item .v{font-size:.86rem;color:var(--muted);}

/* Prinzipien (gleiches Raster, Nummern hervorgehoben) */
.prinzip .cell-num{color:var(--leit);}

/* ---------- FORSCHUNG ---------- */
.f-feature{border:1px solid var(--ink);display:grid;grid-template-columns:.78fr 1.22fr;align-items:stretch;margin:0 0 28px;}
.f-feature-img{border-right:1px solid var(--ink);padding:34px;display:flex;align-items:center;justify-content:center;background:var(--paper-2);}
.f-feature-img img{max-height:380px;width:auto;max-width:100%;display:block;box-shadow:0 18px 40px rgba(15,41,34,.22);}
.f-feature-body{padding:40px 42px;display:flex;flex-direction:column;justify-content:center;}
.f-badge{font-family:var(--font-ui);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--leit);border:1px solid var(--chip-line);padding:5px 11px;align-self:flex-start;}
.f-feature-body h3{font-size:1.85rem;margin:18px 0 12px;}
.f-feature-body p{color:var(--muted);font-size:1rem;line-height:1.64;margin:0 0 16px;}
.f-note{font-family:var(--font-ui);font-size:.84rem;color:var(--muted);display:flex;align-items:center;gap:9px;}
.f-note::before{content:"";width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--leit);}
.f-feature.no-img{grid-template-columns:1fr;}
.f-feature.is-quiet{border-color:var(--line-soft);}
.f-feature.is-quiet .f-feature-body{padding:28px 32px;}
.f-feature.is-quiet .f-badge{color:var(--muted);border-color:var(--line-soft);}
.f-feature.is-quiet .f-feature-body h3{font-size:1.32rem;margin:14px 0 10px;}
.f-feature.is-quiet .f-note::before{background:var(--muted-light);}

.f-card-inner{display:flex;gap:22px;align-items:flex-start;}
.f-cover{flex:0 0 auto;width:84px;}
.f-cover img{width:84px;box-shadow:0 12px 26px rgba(15,41,34,.28);}
.f-lab-viz{flex:0 0 auto;width:92px;height:112px;display:flex;align-items:center;justify-content:center;background:var(--leit-deep);border-radius:var(--radius-control);overflow:hidden;}
.f-lab-viz svg{width:78px;height:auto;}
.f-card-text{flex:1;min-width:0;}
.f-card-text .cell-tag{display:block;text-align:left;margin:0 0 10px;}
.f-card h4{font-family:var(--font-display);font-size:1.2rem;font-weight:700;margin:0 0 9px;letter-spacing:-.01em;line-height:1.18;color:var(--ink);}
.f-card p{color:var(--muted);font-size:.9rem;line-height:1.56;margin:0 0 14px;flex:none;}
.f-card .f-link{margin-top:2px;}

.f-papers{margin:46px 0 0;border-top:1px solid var(--ink);padding-top:30px;}
.f-papers-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin:0 0 12px;}
.f-papers-head h3{font-size:1.32rem;}
.f-link{font-family:var(--font-display);font-size:.88rem;font-weight:600;color:var(--leit);display:inline-flex;align-items:center;gap:6px;transition:color .15s;}
.f-link:hover{color:var(--leit-dark);}
.f-paper-list{list-style:none;margin:0;padding:0;counter-reset:p;}
.f-paper-list li{counter-increment:p;}
.f-paper-list a{display:flex;gap:18px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--line-soft);transition:padding .15s;}
.f-paper-list a:hover{padding-left:8px;}
.f-paper-list a::before{content:counter(p,decimal-leading-zero);font-family:var(--font-mono);font-size:.72rem;color:var(--muted-light);flex:0 0 auto;padding-top:3px;}
.fp-title{flex:1;font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--ink);line-height:1.4;letter-spacing:-.005em;}
.fp-title em{font-style:italic;color:var(--muted);font-weight:400;}
.fp-meta{flex:0 0 auto;font-family:var(--font-mono);font-size:.72rem;color:var(--muted);}

/* ---------- KONTAKT ---------- */
.kontakt-band{background:var(--leit-deep);color:#fff;}
.kontakt-band .wrap{padding-top:56px;padding-bottom:56px;display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap;}
.kontakt-band .kicker{color:#6FBfa0;margin:0 0 16px;}
.kontakt-band h2{color:#fff;}
.kontakt-band p{color:var(--on-deep);margin:14px 0 0;max-width:46ch;}
.kontakt-mail{font-family:var(--font-mono);font-size:1.1rem;color:#fff;border-bottom:1px solid var(--leit);padding-bottom:4px;display:inline-block;transition:border-color .15s;}
.kontakt-mail:hover{border-color:#fff;}

/* ---------- FOOTER ---------- */
footer{flex-shrink:0;background:var(--leit-deep);color:var(--on-deep-mute);border-top:1px solid rgba(255,255,255,.08);padding:24px 0;}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;font-family:var(--font-ui);font-size:.8rem;}
.footer-links{display:flex;gap:20px;flex-wrap:wrap;}
.footer-links a{transition:color .15s;}
.footer-links a:hover{color:var(--paper);}
.tol-on{color:var(--leit-tint);font-style:italic;}
.nl-band .tol-on{color:var(--leit);} /* auf hellem Band: Tannengrün statt Tint (sonst unsichtbar) */

/* ---------- ZWEI-SÄULEN-WEGWEISER (Werkzeuge | Perspektiven) ---------- */
.pillars{align-items:stretch;}
.pillars .pillar{padding:34px 34px 30px;position:relative;}
.pillar-num{position:absolute;top:32px;right:34px;font-family:var(--font-mono);font-size:.88rem;letter-spacing:.04em;color:var(--muted-light);}
.pillar-kicker{font-family:var(--font-ui);font-size:.76rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--leit);}
.pillars h3{font-size:1.85rem;margin:14px 0 12px;letter-spacing:-.02em;}
.pillars > .pillar > p{font-size:.96rem;color:var(--muted);line-height:1.6;margin:0 0 20px;}
.pillar-list{list-style:none;margin:0 0 24px;padding:0;}
.pillar-list li{font-family:var(--font-ui);font-size:.9rem;color:var(--ink);padding:9px 0;border-top:1px solid var(--line-soft);display:flex;align-items:center;gap:10px;}
.pillar-list li::before{content:"";width:5px;height:5px;flex:0 0 auto;background:var(--leit);}
.pillar-list li.soon{color:var(--muted-light);}
.pillar-list li.soon::before{background:var(--muted-light);}
.pillar-list li .soon-tag{margin-left:auto;font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-light);}
.pillars .t-link{margin-top:auto;}

/* Perspektiven-Karten (Beitragsliste) */
.beitrag .cell-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 14px;}
.beitrag .cell-date{font-family:var(--font-mono);font-size:.72rem;color:var(--muted-light);}
.beitrag h3{font-size:1.32rem;margin:0 0 9px;}
.beitrag.soon{opacity:.72;}
.beitrag.soon .cell-tag{color:var(--muted-light);}

/* Vorschaubild (Mini-Cover des verlinkten Beitrags) — Fraunces nur hier, lazy geladen */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/fraunces-latin-opsz-normal.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:400 700;font-display:swap;src:url('fonts/fraunces-latin-opsz-italic.woff2') format('woff2');}
.beitrag.has-cover{padding-top:0;}
.beitrag-cover{margin:0 0 22px;border-bottom:1px solid var(--ink);background:var(--paper);padding:24px 26px 22px;position:relative;overflow:hidden;}
.beitrag-cover::after{content:"Beitrag · PDF-Stil";position:absolute;top:12px;right:14px;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-light);}
.cover-masthead{display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line-soft);padding-bottom:10px;margin-bottom:14px;}
.cover-mark{width:22px;height:22px;flex:0 0 auto;background:var(--leit);color:var(--paper);font-family:'Fraunces',serif;font-weight:600;font-size:11px;display:flex;align-items:center;justify-content:center;}
.cover-brand{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.cover-eyebrow{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.09em;text-transform:uppercase;color:#9A4A2F;margin:0 0 7px;}
.beitrag-cover .cover-title{font-family:'Fraunces',Georgia,serif;font-size:1.5rem;font-weight:600;line-height:1.1;letter-spacing:-.01em;color:var(--ink);margin:0;}
.beitrag-cover .cover-title em{font-style:italic;color:#C2603E;}
.cover-lines{display:flex;flex-direction:column;gap:5px;margin:16px 0 0;}
.cover-lines span{height:3px;background:var(--line-soft);}
.cover-lines span:nth-child(2){width:92%;}
.cover-lines span:nth-child(3){width:64%;}

/* ---------- RECHTSTEXTE (Impressum / Datenschutz) ---------- */
.legal{max-width:66ch;}
.legal h2{font-size:1.4rem;margin:42px 0 14px;}
.legal > h2:first-child{margin-top:0;}
.legal h3{font-size:1.04rem;font-weight:700;margin:26px 0 8px;letter-spacing:-.01em;}
.legal p{margin:0 0 14px;color:var(--lead);line-height:1.66;}
.legal a{color:var(--leit);border-bottom:1px solid var(--chip-line);transition:border-color .15s;}
.legal a:hover{border-color:var(--leit);}
.legal ul{margin:0 0 16px;padding-left:20px;color:var(--lead);line-height:1.66;}
.legal li{margin:0 0 6px;}
.legal .addr{font-family:var(--font-ui);font-size:.95rem;line-height:1.75;color:var(--ink);margin:0 0 16px;}
.legal .legal-updated{font-family:var(--font-ui);font-size:.78rem;color:var(--muted);margin-top:46px;padding-top:18px;border-top:1px solid var(--ink);}
/* Platzhalter — von Michael auszufüllen, vor Live-Gang entfernen */
.ph{background:#F3E2B7;color:#7A5C12;font-family:var(--font-mono);font-size:.86em;padding:1px 6px;white-space:nowrap;}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
  .nav-toggle{display:flex;}
  .nav-links{display:none;position:absolute;top:71px;left:-32px;right:-32px;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-bottom:1px solid var(--ink);padding:6px 0;font-size:.86rem;}
  .nav-links.open{display:flex;}
  .nav-links a{padding:13px 32px;}
  .nav-links a.is-current::after{display:none;}
  .nav-cta{margin:8px 32px;text-align:center;}
  .hero-box{grid-template-columns:1fr;}
  .hero-main{padding:36px 30px 34px;}
  .werkstatt-panel{border-left:none;border-top:1px solid var(--line-soft);}
  .grid-net.cols-3{grid-template-columns:repeat(2,1fr);}
  .next-box{grid-template-columns:1fr;}
  .next-main{padding:34px 30px;}
  .next-media{border-left:none;border-top:1px solid var(--line-soft);}
  .f-feature{grid-template-columns:1fr;}
  .f-feature-img{border-right:none;border-bottom:1px solid var(--ink);}
  .f-grid.cols-2{grid-template-columns:1fr;}
  .pf-item{min-width:140px;flex-basis:50%;}
}
@media(max-width:560px){
  .wrap{padding:0 20px;}
  .nav-links{left:-20px;right:-20px;}
  .section{padding:50px 0;}
  .hero{padding:32px 0 44px;}
  h1{hyphens:auto;}
  .hero-main{padding:30px 24px 32px;}
  .werkstatt-panel{padding:26px 24px;}
  .grid-net.cols-3,.grid-net.cols-2{grid-template-columns:1fr;}
  .pf-foot{flex-direction:column;}
  .pf-item{flex-basis:auto;border-right:none;border-bottom:1px solid var(--ink);}
  .pf-item:last-child{border-bottom:none;}
  .cta .wrap,.kontakt-band .wrap{flex-direction:column;align-items:flex-start;}
  .kontakt-karte{flex-direction:column;align-items:flex-start;gap:16px;padding:24px 22px;}
}

/* ---------- STARTSEITE: MODERNERE VARIANTE ---------- */
.home-redesign{
  background:#FBF8F2;
}
.home-redesign .nav{
  background:rgba(251,248,242,.84);
  border-bottom:1px solid rgba(33,32,28,.12);
  backdrop-filter:blur(18px);
}
.home-redesign .brand-mark{
  border-radius:10px;
}
.home-redesign .nav-cta{
  border-radius:999px;
  background:var(--ink);
  padding:10px 16px;
}
.home-modern{
  --hm-paper:#FBF8F2;
  --hm-cream:#F2ECE2;
  --hm-ink:#22211E;
  --hm-muted:#686159;
  --hm-green:#174F43;
  --hm-deep:#102F29;
  --hm-sage:#DBE9DF;
  --hm-blue:#DBE7EF;
  --hm-clay:#C96F46;
  --hm-line:#E0D8CA;
  background:var(--hm-paper);
  color:var(--hm-ink);
}
.hm-hero{
  padding:64px 0 72px;
}
.hm-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);
  gap:42px;
  align-items:center;
}
.hm-copy h1{
  max-width:9.4ch;
  margin:0 0 26px;
  font-size:clamp(3.25rem,6vw,5.7rem);
  line-height:.9;
  letter-spacing:-.055em;
  color:var(--hm-ink);
}
.hm-eyebrow,
.hm-kicker{
  margin:0 0 18px;
  font-family:var(--font-mono);
  font-size:.74rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--hm-green);
}
.hm-lead{
  max-width:56ch;
  margin:0 0 30px;
  color:var(--hm-muted);
  font-size:1.23rem;
  line-height:1.56;
}
.hm-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px;
  margin:0 0 30px;
}
.hm-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:13px 20px;
  border:1px solid transparent;
  border-radius:999px;
  font-weight:750;
  line-height:1;
  transition:transform .18s,background .18s,border-color .18s;
}
.hm-btn:hover{
  transform:translateY(-1px);
}
.hm-btn-primary{
  background:var(--hm-green);
  color:#fff;
}
.hm-btn-primary:hover{
  background:var(--hm-deep);
}
.hm-btn-secondary{
  background:#fff;
  border-color:var(--hm-line);
  color:var(--hm-ink);
}
.hm-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.hm-chips span{
  padding:7px 11px;
  border:1px solid var(--hm-line);
  border-radius:999px;
  background:rgba(255,255,255,.58);
  color:#4F5F58;
  font-family:var(--font-mono);
  font-size:.72rem;
  line-height:1.2;
}
.hm-visual{
  position:relative;
  min-height:560px;
}
.hm-stage{
  position:absolute;
  inset:0 0 70px 95px;
  overflow:hidden;
  border-radius:28px;
  background:
    linear-gradient(180deg,rgba(15,51,45,.06),rgba(15,51,45,.18)),
    url('assets/simplex.png') center/cover;
  box-shadow:0 34px 80px rgba(15,51,45,.18);
}
.hm-stage::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(23,79,67,.92),rgba(23,79,67,.45) 44%,rgba(251,248,242,.16));
  mix-blend-mode:multiply;
}
.hm-stage-label{
  position:absolute;
  left:26px;
  right:26px;
  bottom:26px;
  z-index:1;
  color:#fff;
}
.hm-stage-label span{
  display:block;
  margin:0 0 8px;
  font-family:var(--font-mono);
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.82;
}
.hm-stage-label strong{
  display:block;
  font-size:1.85rem;
  line-height:1;
  letter-spacing:-.035em;
}
.hm-feature-tool{
  position:absolute;
  right:0;
  top:54px;
  width:44%;
  min-width:245px;
  padding:20px;
  border-radius:22px;
  background:var(--hm-deep);
  color:#fff;
  box-shadow:0 26px 70px rgba(15,51,45,.28);
}
.hm-feature-tool h2{
  margin:9px 0 8px;
  color:#fff;
  font-size:1.35rem;
  line-height:1.08;
}
.hm-feature-tool p{
  margin:0;
  color:#BDD1C9;
  font-size:.94rem;
  line-height:1.45;
}
.hm-status,
.hm-tool-head em{
  font-family:var(--font-mono);
  font-style:normal;
  font-size:.68rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--hm-clay);
}
.hm-mini-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:16px;
}
.hm-mini-grid i{
  height:44px;
  border-radius:12px;
  background:rgba(255,255,255,.12);
}
.hm-mini-grid i:nth-child(2){
  background:rgba(201,111,70,.9);
}
.hm-tool-stack{
  position:absolute;
  left:0;
  bottom:0;
  width:58%;
  display:grid;
  gap:14px;
}
.hm-tool-card{
  display:block;
  padding:16px;
  border:1px solid var(--hm-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 22px 54px rgba(34,33,30,.12);
}
.hm-tool-head{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
  margin:0 0 12px;
}
.hm-tool-head strong{
  font-size:1rem;
  line-height:1.2;
}
.hm-bars{
  display:grid;
  gap:7px;
}
.hm-bars i{
  display:block;
  height:8px;
  border-radius:20px;
  background:var(--hm-sage);
}
.hm-bars i:nth-child(2){
  width:78%;
  background:var(--hm-blue);
}
.hm-bars i:nth-child(3){
  width:52%;
  background:#EAD9CA;
}
.hm-section{
  padding:68px 0;
}
.hm-start,
.hm-outlook{
  background:var(--hm-cream);
  border-top:1px solid var(--hm-line);
}
.hm-section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;
  margin:0 0 28px;
}
.hm-section-head h2,
.hm-current h2,
.hm-outlook h2,
.hm-contact h2{
  margin:0;
  color:var(--hm-ink);
  font-size:clamp(2rem,4vw,2.55rem);
  line-height:1;
  letter-spacing:-.045em;
}
.hm-section-head p{
  max-width:45ch;
  margin:0;
  color:var(--hm-muted);
}
.hm-entry-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.hm-entry{
  min-height:246px;
  display:flex;
  flex-direction:column;
  padding:22px;
  border:1px solid var(--hm-line);
  border-radius:22px;
  background:var(--hm-paper);
  transition:transform .18s,box-shadow .18s,border-color .18s;
}
.hm-entry:hover{
  transform:translateY(-2px);
  border-color:#CFC5B7;
  box-shadow:0 18px 42px rgba(34,33,30,.08);
}
.hm-entry-primary{
  background:var(--hm-green);
  color:#fff;
}
.hm-entry-num{
  font-family:var(--font-mono);
  font-size:.76rem;
  color:#AAA094;
}
.hm-entry-primary .hm-entry-num{
  color:#BDD1C9;
}
.hm-entry h3{
  margin:34px 0 10px;
  color:inherit;
  font-size:1.45rem;
  letter-spacing:-.025em;
}
.hm-entry p{
  margin:0 0 22px;
  color:var(--hm-muted);
  line-height:1.55;
}
.hm-entry-primary p{
  color:#BDD1C9;
}
.hm-entry > span:last-child{
  margin-top:auto;
  color:var(--hm-green);
  font-weight:750;
}
.hm-entry-primary > span:last-child{
  color:#fff;
}
.hm-current-grid{
  display:grid;
  grid-template-columns:.84fr 1.16fr;
  gap:46px;
  align-items:start;
}
.hm-current-list{
  display:grid;
  gap:12px;
}
.hm-current-list a{
  display:grid;
  grid-template-columns:74px 1fr auto;
  align-items:center;
  gap:16px;
  padding:18px 0;
  border-bottom:1px solid var(--hm-line);
}
.hm-current-list time,
.hm-current-list span{
  font-family:var(--font-mono);
  font-size:.72rem;
  color:#9D9489;
}
.hm-current-list span{
  color:var(--hm-green);
  text-transform:uppercase;
  letter-spacing:.04em;
}
.hm-outlook-box{
  display:grid;
  grid-template-columns:1fr .92fr;
  gap:32px;
  align-items:stretch;
}
.hm-outlook-box > div:first-child{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.hm-outlook-box p{
  max-width:48ch;
  margin:18px 0 26px;
  color:var(--hm-muted);
}
.hm-video-preview{
  min-height:260px;
  border-radius:24px;
  background:
    radial-gradient(circle at 76% 28%,rgba(255,255,255,.16),transparent 38%),
    linear-gradient(135deg,var(--hm-green),var(--hm-deep));
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
}
.hm-video-preview::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:34px 34px;
}
.hm-video-preview > span:last-child{
  position:absolute;
  right:20px;
  bottom:18px;
  z-index:1;
  color:#D9E7E0;
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hm-play{
  width:68px;
  height:68px;
  border-radius:50%;
  background:rgba(251,248,242,.96);
  position:relative;
  z-index:1;
  box-shadow:0 18px 42px rgba(0,0,0,.18);
}
.hm-play::after{
  content:"";
  position:absolute;
  left:28px;
  top:21px;
  width:0;
  height:0;
  border-left:20px solid var(--hm-green);
  border-top:13px solid transparent;
  border-bottom:13px solid transparent;
}
.hm-contact{
  padding-top:54px;
}
.hm-contact-box{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:34px;
  padding:34px 38px;
  border-radius:24px 24px 0 0;
  background:var(--hm-deep);
  color:#fff;
}
.hm-contact h2{
  color:#fff;
  font-size:clamp(1.45rem,2.4vw,1.8rem);
}
.hm-contact p{
  max-width:67ch;
  margin:10px 0 0;
  color:#B8CBC3;
}
.hm-contact a{
  display:inline-flex;
  align-items:center;
  gap:9px;
  white-space:nowrap;
  color:#fff;
  font-family:var(--font-mono);
  border-bottom:1px solid rgba(255,255,255,.34);
  padding-bottom:4px;
}

@media(max-width:980px){
  .hm-hero-grid,
  .hm-current-grid,
  .hm-outlook-box{
    grid-template-columns:1fr;
  }
  .hm-visual{
    min-height:500px;
  }
  .hm-stage{
    left:40px;
  }
  .hm-entry-grid{
    grid-template-columns:1fr;
  }
  .hm-section-head{
    align-items:flex-start;
    flex-direction:column;
  }
}
@media(max-width:640px){
  .home-redesign .nav-cta{
    border-radius:0;
  }
  .hm-hero{
    padding:42px 0 54px;
  }
  .hm-copy h1{
    font-size:clamp(2.65rem,15vw,3.55rem);
    max-width:10ch;
  }
  .hm-lead{
    font-size:1.08rem;
  }
  .hm-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .hm-btn{
    width:100%;
  }
  .hm-visual{
    min-height:560px;
  }
  .hm-stage{
    inset:0 0 150px 0;
    border-radius:22px;
  }
  .hm-feature-tool,
  .hm-tool-stack{
    left:18px;
    right:18px;
    width:auto;
    min-width:0;
  }
  .hm-feature-tool{
    top:225px;
  }
  .hm-tool-stack{
    bottom:0;
  }
  .hm-current-list a{
    grid-template-columns:1fr;
    gap:4px;
    align-items:start;
  }
  .hm-contact-box{
    align-items:flex-start;
    flex-direction:column;
    padding:28px 22px;
    border-radius:20px 20px 0 0;
  }
  .hm-contact a{
    white-space:normal;
  }
}

/* ---------- STARTSEITE: RESPONSIVE FEINSCHLIFF ---------- */
.home-redesign{
  overflow-x:hidden;
}
.hm-hero-grid > *,
.hm-copy,
.hm-visual,
.hm-section-head > *,
.hm-current-grid > *,
.hm-outlook-box > *{
  min-width:0;
}
.hm-stage-label{
  max-width:72%;
}
@media(max-width:640px){
  .hm-hero-grid{
    overflow:hidden;
  }
  .hm-copy h1,
  .hm-lead{
    max-width:100%;
    overflow-wrap:break-word;
  }
  .hm-chips span{
    max-width:100%;
    white-space:normal;
  }
  .hm-stage-label{
    display:none;
  }
  .hm-feature-tool{
    top:224px;
  }
}

/* ---------- STARTSEITE: MOBILE TYPOGRAFIE ---------- */
@media(max-width:640px){
  .hm-copy h1{
    font-size:clamp(2.35rem,11.5vw,2.9rem);
    line-height:.94;
    letter-spacing:-.045em;
    max-width:10.6ch;
    overflow-wrap:normal;
  }
  .hm-lead{
    font-size:1rem;
    line-height:1.55;
    overflow-wrap:anywhere;
  }
  .hm-eyebrow{
    font-size:.68rem;
  }
}
@media(max-width:420px){
  .hm-copy h1{
    font-size:2.72rem;
  }
}

/* ---------- STARTSEITE: MOBILE BREITENKONTROLLE ---------- */
@media(max-width:640px){
  .home-redesign,
  .home-redesign body,
  .home-modern{
    width:100%;
    max-width:100%;
  }
  .home-redesign .wrap{
    width:100%;
    max-width:100%;
    padding-left:20px;
    padding-right:20px;
  }
  .hm-hero-grid{
    display:block;
    width:100%;
    max-width:100%;
  }
  .hm-copy,
  .hm-actions,
  .hm-lead,
  .hm-chips{
    width:100%;
    max-width:100%;
  }
  .hm-btn{
    max-width:100%;
  }
}

/* ---------- STARTSEITE: HERO-VISUAL BEREINIGUNG ---------- */
.hm-stage-label{
  display:none;
}


/* ============================================================
   KOMBI-VARIANTE — drei gleichwertige Eingänge auf der Startseite
   (Editorial-Basis; Werkzeuge als grün gefüllte Primär-Karte)
   ============================================================ */
.kombi-entries .cell{padding:32px 30px 28px;}
.kombi-entries .cell .ke-num{font-family:var(--font-mono);font-size:.82rem;letter-spacing:.04em;color:var(--muted-light);}
.kombi-entries .cell .ke-kicker{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--leit);display:block;margin:16px 0 0;}
.kombi-entries .cell h3{font-size:1.5rem;letter-spacing:-.02em;margin:8px 0 12px;}
.kombi-entries .cell p{font-size:.93rem;color:var(--muted);line-height:1.6;margin:0 0 22px;}
.kombi-entries .cell .t-link{margin-top:auto;}
.kombi-entries .cell.is-primary{background:var(--leit-deep);}
.kombi-entries .cell.is-primary h3{color:#fff;}
.kombi-entries .cell.is-primary p{color:var(--on-deep);}
.kombi-entries .cell.is-primary .ke-num{color:#6FBFA0;}
.kombi-entries .cell.is-primary .ke-kicker{color:#9FD3C2;}
.kombi-entries .cell.is-primary .t-link{color:#fff;}
.kombi-entries a.cell.is-primary:hover{background:var(--leit-dark);}

/* ---- Blocksatz für Hero-Lead (Silbentrennung gezähmt; kursive Schlüsselwörter wie „Kohärenz" nie trennen) ---- */
.hero .lead{text-align:justify;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:9 4 3;}
.hero .lead em{-webkit-hyphens:none;hyphens:none;}

/* ---- „Neueste Arbeiten"-Panel: Einträge klickbar (dezenter Hover) ---- */
a.wp-item{color:inherit;text-decoration:none;}
a.wp-item:hover .wp-body strong{color:var(--leit);}
a.wp-item:hover .wp-tag{color:var(--leit-dark);}


/* ============================================================
   EDITORIAL — Schwarz-Weiß-Variante, site-weit (body.mono)
   Serif-Headline; kein Grün mehr. Die Akzentfarbe wird über die
   Design-Tokens (--leit*) auf Ink/Schwarz umgestellt — dadurch
   färbt sich JEDE Komponente, die --leit* referenziert, automatisch
   monochrom um (Buttons, Links, Kicker, Werke-Icons, Kontakt- und
   Footer-Flächen, Newsletter-Band, Zitat-Badges, Forschungs-Karten …).
   Aktivieren: <body class="mono"> auf jeder Seite.
   ============================================================ */
body.mono{
  --font-serif-home:'Newsreader',Georgia,serif;
  --leit:var(--ink);
  --leit-dark:#000;
  --leit-deep:#17160F;
  --leit-tint:#FAFAF8;
  --chip-line:var(--line-soft);
  --on-deep:#B9B5A8;
  --on-deep-mute:#8f8b7e;
}
body.mono h1,
body.mono h2{font-family:var(--font-serif-home);font-weight:500;letter-spacing:-.015em;}
body.mono h1 em,
body.mono h2 em{font-style:italic;}

/* Hardcodierte Hex-Akzente (keine Tokens) — von Hand neutralisiert:
   helle Kicker auf Tiefgrün-Flächen, Terracotta-Beitragscover. */
body.mono .page-header.on-deep-head .eyebrow,
body.mono .cta .kicker,
body.mono .kontakt-karte .kicker,
body.mono .kontakt-band .kicker,
body.mono .kombi-entries .cell.is-primary .ke-num{color:#9c988c;}
body.mono .kombi-entries .cell.is-primary .ke-kicker{color:#c7c3b6;}
body.mono .cover-eyebrow{color:var(--muted-light);}
body.mono .beitrag-cover .cover-title em{color:var(--ink);}
body.mono .tol-on{color:#9c988c;}
body.mono .nl-band .tol-on{color:var(--ink);font-style:italic;}

/* Wasserzeichen: das Kreismuster als Teil des Papiers selbst — nicht
   als eingesetztes Bild, sondern groß, randabfallend am Rahmen,
   deutlich sichtbar aber hinter dem Text. Kein Rahmen, keine Bildunterschrift. */
body.mono .hero-box{position:relative;overflow:hidden;}
body.mono .hero-main,
body.mono .hero-side{position:relative;z-index:1;}
body.mono .hero-motif{
  position:absolute;
  top:-20%;
  right:-13%;
  width:980px;
  height:980px;
  max-width:none;
  opacity:.16;
  pointer-events:none;
  z-index:0;
}
@media(max-width:900px){
  body.mono .hero-motif{width:640px;height:640px;top:-10%;right:-32%;}
}

/* Dasselbe Wasserzeichen-Prinzip im Seitenkopf der Unterseiten */
body.mono .page-header{position:relative;overflow:hidden;}
body.mono .page-header .wrap{position:relative;z-index:1;}
body.mono .page-motif{
  position:absolute;
  top:-45%;
  right:-8%;
  width:760px;
  height:760px;
  max-width:none;
  opacity:.14;
  pointer-events:none;
  z-index:0;
}
body.mono .page-header.on-deep-head .page-motif{opacity:.3;}
@media(max-width:900px){
  body.mono .page-motif{width:480px;height:480px;top:-25%;right:-28%;}
}

/* ============================================================
   REFRESH 07/2026 — Variante 1a (weniger Mono, ruhigere Labels)
   ============================================================ */
/* Fakten-Zeile im Hero (ersetzt die Chip-Reihe) */
.hero-fakten{margin:30px 0 0;font-size:.9rem;color:var(--muted);line-height:1.7;border-top:1px solid var(--line-soft);padding-top:14px;max-width:56ch;}

/* Drei Wege hinein: offene Karten mit Top-Rule statt Ink-Gitter */
.entry-row{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;}
.entry-row .cell{padding:20px 0 0;border-top:2px solid var(--ink);background:transparent;box-shadow:none;transition:border-color .15s;}
.entry-row a.cell:hover{background:transparent;border-top-color:var(--leit);}
.entry-row .ke-kicker{font-family:var(--font-ui);font-size:.76rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:block;margin:0;}
.entry-row .cell h3{font-size:1.32rem;letter-spacing:-.02em;margin:8px 0 10px;}
.entry-row .cell p{font-size:.93rem;color:var(--muted);line-height:1.6;margin:0 0 18px;text-align:left;flex:1;}
.entry-row .cell .t-link{margin-top:auto;}
@media(max-width:900px){.entry-row{grid-template-columns:1fr;gap:34px;}}
