/* Concept A · Folgen: chapters, über mich, strip, contact (the first screen is critical CSS inline in hero-a.html) */
/* chapters */
.ch{position:relative;min-height:150vh;padding:0 var(--m)}
.ch .copy{width:520px;position:sticky;top:96px;pointer-events:none}
.ch .copy .cap{margin-bottom:10px}
.ch h2{font-size:clamp(40px,6.2vh,56px);line-height:.95;margin-bottom:12px;transform-origin:0 0}
.ch p.s{font-size:var(--sfs,19px);line-height:1.45;max-width:520px}
.idx{position:fixed;right:var(--m);top:96px;z-index:5;text-align:right;pointer-events:none;opacity:0}
.idx div{display:flex;gap:22px;justify-content:flex-end}
.idx span{color:var(--mute);opacity:.6;transition:color .3s,opacity .3s}
.idx span.on{color:var(--ink);opacity:1}
.idx p{margin-top:8px;font-size:13px;color:var(--mute);font-style:italic;font-weight:300}
/* über mich: his face from the same lanes */
.about{position:relative;z-index:5;background:var(--bg);padding:48px var(--m) 56px;display:grid;grid-template-columns:repeat(12,1fr);gap:24px;align-items:center;pointer-events:auto}
.about .fig{grid-column:1/8;margin-left:calc(-1*var(--m));position:relative;min-height:300px}
.about canvas{display:block}
.about .tx{grid-column:8/13}
.about h2{font-size:clamp(40px,4.4vw,64px);line-height:.98;margin:10px 0 18px}
.about p.s{font-size:19px;line-height:1.45;max-width:420px}
.about p.d{font-size:15px;line-height:1.5;color:var(--mute);margin-top:14px;max-width:420px}
/* quiet strip */
.strip{position:relative;z-index:5;background:var(--panel);padding:56px var(--m) 64px;pointer-events:auto}
.strip h2{font-size:clamp(36px,4.2vw,56px);line-height:1;margin-bottom:28px}
.case{display:grid;grid-template-columns:minmax(320px,460px) minmax(0,1fr) minmax(0,1fr);gap:20px 48px;align-items:center;border-top:1px solid var(--hair);padding:20px 0}
.case svg{display:block;width:100%;max-width:460px;height:auto;overflow:visible;touch-action:pan-y}
.case svg text{font-family:var(--sans)}
.case h3{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--ink);line-height:1.4}
.case .m{font-size:15px;color:var(--mute);line-height:1.5}
.case .r{font-size:21px;font-weight:300;letter-spacing:-.01em;line-height:1.3}
.strip .more{display:inline-block;margin-top:22px;font-size:15px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:2px}
/* contact: one hairline lane arrives at KUNDE, then the block */
.melt{position:relative;z-index:5;height:72px;background:var(--panel);pointer-events:none}
.melt canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.contact{position:relative;z-index:5;background:var(--ink);color:var(--wool);padding:56px var(--m) 236px;pointer-events:auto;overflow:hidden}
.contact canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.contact .in{position:relative}
.contact h2{font-size:clamp(40px,5vw,72px);line-height:.95;margin-bottom:28px;color:var(--wool)}
.contact .mailbig{font-size:clamp(28px,3.4vw,48px);font-weight:300;letter-spacing:-.02em;color:var(--wool);text-decoration:none;display:inline-block;margin-bottom:22px}
.contact p{font-size:17px;color:rgba(232,232,232,.8);max-width:560px}
.contact .cap{color:rgba(232,232,232,.7)}
.foot{position:relative;z-index:5;background:var(--ink);color:var(--wool);padding:8px var(--m) 40px;pointer-events:auto}
.foot img{display:block;width:min(100%,75vw);min-width:min(100%,300px);height:auto}
.foot .l{display:flex;gap:28px;margin-top:28px;font-size:14px}
.foot a{color:var(--wool);text-decoration:none;opacity:.85}
.draft{position:fixed;right:12px;bottom:10px;z-index:7;font-size:11px;color:var(--mute);opacity:.7;letter-spacing:.06em;pointer-events:none}

@media (max-width:759px){
  /* a chapter: title and sentence first, then the figure, then the result, then a compact key (only what cannot sit on the figure) */
  .ch{min-height:0;padding:30px var(--m) 8px;display:flex;flex-direction:column}
  .ch .copy{order:1;width:auto;position:static;opacity:1!important;transform:none!important}
  .ch .slot{order:2;display:block;position:relative;height:max(340px,86vw);margin:6px calc(-1*var(--m)) 0;-webkit-mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent)}
  .ch .slot svg{position:absolute;inset:0;display:block;overflow:visible}
  .ch .res{order:3;display:block;margin:4px 0 10px}
  .ch .res .big{font-size:26px;line-height:1.15;font-weight:300;letter-spacing:-.02em}
  .ch .res .sm{font-size:14px;color:var(--mute);margin-top:6px}
  .ch .res .cap{font-size:11px;margin-top:6px}
  .ch .key{order:4;display:grid;grid-template-columns:1fr 1fr;gap:3px 14px;margin:2px 0 14px;font-size:12px;line-height:1.35;color:var(--mute)}
  .ch .key.one{grid-template-columns:1fr}
  .ch .key span{min-width:0;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}.ch .key b{font-weight:500;color:var(--ink);margin-right:5px;font-size:11px}
  .ch .key h4{grid-column:1/-1;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--ink);margin-top:6px}
  .ch h2{font-size:38px;transform:none!important}
  .ch p.s{font-size:17px}
  .idx{display:none}
  .about{display:block;padding:34px var(--m) 40px}
  .about .fig{margin:0 calc(-1*var(--m)) 14px;min-height:0}
  .about h2{font-size:38px}
  .about p.s{font-size:17px}
  .strip{padding:40px var(--m) 40px}
  .case{grid-template-columns:1fr;gap:8px}
  .case svg{max-width:360px}
  .melt{height:48px}
  .draft{display:none}
}
