/* KERN - Konzept 02 Bauplan - gemeinsames Stylesheet aller Seiten.
   Schriften: Michroma (statt Moon Walk), Outfit (statt alro), JetBrains Mono (Masse).
   Prototyp laedt Google Fonts; die Live-Seite hostet Schriften DSGVO-konform selbst. */
:root{
  --schmiedeschwarz:#1A1A1C;
  --aluminium:#E9E9E9;
  --petrol:#0F7173;
  --magenta:#AF125A;
  /* abgeleitete Töne */
  --petrol-dunkel:#0B5658;
  --papier:#ECECEC;
  --linie:#1A1A1C;
  --linie-mittel:rgba(26,26,28,.55);
  --linie-fein:rgba(26,26,28,.16);
  --text-leise:#4A4A50;
  --rand:30px;               /* Breite des Blattrandes mit Koordinaten */
  --kopf:68px;               /* Höhe der Kopfzeile */
  --display:'Michroma','Outfit',system-ui,sans-serif;
  --sans:'Outfit',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'Cascadia Mono',Consolas,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:calc(var(--kopf) + var(--rand) + 12px);-webkit-text-size-adjust:100%}
body{
  margin:0;color:var(--schmiedeschwarz);font-family:var(--sans);font-size:17px;line-height:1.6;
  background-color:var(--aluminium);
  background-image:
    linear-gradient(rgba(26,26,28,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(26,26,28,.045) 1px,transparent 1px);
  background-size:24px 24px;
  background-position:var(--rand) var(--rand);
  padding:var(--rand);
  overflow-x:hidden;
}
img,svg{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--petrol);outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:40px;top:-60px;z-index:100;background:var(--schmiedeschwarz);color:var(--aluminium);padding:10px 16px;font-family:var(--mono);font-size:13px}
.skip:focus{top:40px}

/* ---------- Blattrahmen (fixed) ---------- */
.rahmen{position:fixed;inset:0;pointer-events:none;z-index:60}
.rahmen__band{position:absolute;background:var(--aluminium);display:flex;font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--linie-mittel)}
.rahmen__band span{flex:1;display:flex;align-items:center;justify-content:center;position:relative}
.rahmen__band span+span::before{content:"";position:absolute;background:var(--linie-mittel)}
.rahmen__band--o,.rahmen__band--u{left:0;right:0;height:var(--rand);padding:0 var(--rand)}
.rahmen__band--o{top:0}.rahmen__band--u{bottom:0}
.rahmen__band--o span+span::before{left:0;bottom:0;width:1px;height:8px}
.rahmen__band--u span+span::before{left:0;top:0;width:1px;height:8px}
.rahmen__band--l,.rahmen__band--r{top:0;bottom:0;width:var(--rand);flex-direction:column;padding:var(--rand) 0}
.rahmen__band--l{left:0}.rahmen__band--r{right:0}
.rahmen__band--l span+span::before{top:0;right:0;height:1px;width:8px}
.rahmen__band--r span+span::before{top:0;left:0;height:1px;width:8px}
.rahmen__linie{position:absolute;inset:var(--rand);border:1.5px solid var(--linie)}
.rahmen__linie::before{content:"";position:absolute;inset:calc(var(--rand) * -1 + 8px);border:.75px solid var(--linie-mittel)}
/* Zentriermarken */
.rahmen__mark{position:absolute;background:var(--linie)}
.rahmen__mark--o{top:8px;left:50%;width:1.5px;height:calc(var(--rand) - 8px)}
.rahmen__mark--u{bottom:8px;left:50%;width:1.5px;height:calc(var(--rand) - 8px)}
.rahmen__mark--l{left:8px;top:50%;height:1.5px;width:calc(var(--rand) - 8px)}
.rahmen__mark--r{right:8px;top:50%;height:1.5px;width:calc(var(--rand) - 8px)}

/* ---------- Fadenkreuz-Cursor ---------- */
.fk{position:fixed;pointer-events:none;z-index:55;opacity:0;transition:opacity .2s}
.fk--x{left:var(--rand);right:var(--rand);height:0;border-top:1px solid rgba(26,26,28,.28)}
.fk--y{top:var(--rand);bottom:var(--rand);width:0;border-left:1px solid rgba(26,26,28,.28)}
.fk--label{font-family:var(--mono);font-size:11px;background:var(--schmiedeschwarz);color:var(--aluminium);padding:3px 7px;white-space:nowrap}
.fk--label b{color:#F07FB1;font-weight:500}
body.fk-an .fk{opacity:1}

/* ---------- Header ---------- */
.kopf{position:sticky;top:var(--rand);z-index:40;background:var(--aluminium);border-bottom:1.5px solid var(--linie);height:var(--kopf)}
.kopf__in{height:100%;display:flex;align-items:stretch}
.logo{display:flex;align-items:center;gap:12px;padding:0 22px;text-decoration:none;border-right:1.5px solid var(--linie)}
.logo svg{width:34px;height:34px}
.logo__wort{font-family:var(--display);font-size:22px;letter-spacing:.14em;line-height:1}
.logo__zusatz{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-leise);margin-top:5px}
.nav{display:flex;flex:1}
.nav ul{list-style:none;margin:0;padding:0;display:flex;flex:1}
.nav li{display:flex}
.nav a{display:flex;align-items:center;gap:8px;padding:0 22px;text-decoration:none;font-size:15px;font-weight:500;border-right:1px solid var(--linie-fein);position:relative}
.nav a small{font-family:var(--mono);font-size:10px;color:var(--text-leise);font-weight:400}
.nav a::after{content:"";position:absolute;left:22px;right:22px;bottom:16px;height:1.5px;background:var(--linie);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nav a:hover::after,.nav a:focus-visible::after{transform:scaleX(1)}
.kopf__znr{display:flex;flex-direction:column;justify-content:center;padding:0 20px;font-family:var(--mono);font-size:10px;line-height:1.5;color:var(--text-leise);border-left:1px solid var(--linie-fein);white-space:nowrap}
.kopf__cta{display:flex;align-items:center;padding:0 0 0 0}
.btn{display:inline-flex;align-items:center;gap:12px;font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:.02em;text-decoration:none;border:0;cursor:pointer;padding:16px 24px;transition:background .2s,transform .2s,box-shadow .2s}
.btn--magenta{background:var(--magenta);color:#fff}
.btn--magenta:hover{background:#94104C}
.btn--magenta:focus-visible{outline:2px solid var(--schmiedeschwarz);outline-offset:3px}
.btn--linie{background:transparent;color:var(--schmiedeschwarz);box-shadow:inset 0 0 0 1.5px var(--linie)}
.btn--linie:hover{background:var(--schmiedeschwarz);color:var(--aluminium)}
.btn .pfeil{width:22px;height:10px;flex:none}
.kopf__cta .btn{height:100%;padding:0 26px}
.menu-btn{display:none;background:none;border:0;border-left:1.5px solid var(--linie);width:var(--kopf);cursor:pointer;color:inherit}
.menu-btn span{display:block;width:22px;height:1.5px;background:currentColor;margin:5px auto;transition:transform .25s}
.menu-btn[aria-expanded="true"] span:first-child{transform:translateY(3.25px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-3.25px) rotate(-45deg)}

/* ---------- allgemeines Layout ---------- */
main{position:relative}
.blatt{max-width:1320px;margin:0 auto;padding:0 clamp(18px,4vw,64px)}
section{position:relative;border-bottom:1.5px solid var(--linie)}
.abschnitt{padding:clamp(72px,9vw,128px) 0}
.pos{display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-leise);margin-bottom:28px}
.ballon{flex:none;width:44px;height:44px;border:1.5px solid currentColor;border-radius:50%;display:grid;place-items:center;font-family:var(--mono);font-size:14px;font-weight:700;color:var(--schmiedeschwarz);letter-spacing:0;background:var(--aluminium)}
.pos__leitung{flex:0 0 70px;height:1.5px;background:var(--linie);position:relative;transform-origin:left}
.pos__leitung::after{content:"";position:absolute;right:-3px;top:-2.5px;width:6.5px;height:6.5px;border-radius:50%;background:var(--linie)}
h1,h2,h3{font-weight:400;margin:0}
h2{font-family:var(--display);font-size:clamp(1.55rem,3.2vw,2.9rem);line-height:1.15;letter-spacing:.01em;max-width:22ch}
.lead{font-size:clamp(1.05rem,1.4vw,1.2rem);max-width:58ch;color:#2c2c30;margin:22px 0 0}
.mono{font-family:var(--mono)}

/* Reveal */
.js .rv{opacity:0;transform:translateY(18px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.js .rv.sicht{opacity:1;transform:none}
.js .pos__leitung{transform:scaleX(0);transition:transform .9s .2s cubic-bezier(.6,0,.2,1)}
.js .sicht .pos__leitung,.js .pos.sicht .pos__leitung{transform:scaleX(1)}

/* SVG-Zeichnungsstile */
.z{fill:none;stroke:var(--linie);stroke-linecap:round;stroke-linejoin:round}
.z-dick{stroke-width:2.2}
.z-mittel{stroke-width:1.3}
.z-fein{stroke-width:.8}
.z-verdeckt{stroke-dasharray:7 4;stroke-width:1}
.z-mitte{stroke-dasharray:22 4 3 4;stroke-width:.8;stroke:var(--linie-mittel)}
.z-magenta{stroke:var(--magenta)}
.zeichnung text,.z text,.zt{font-family:var(--mono);fill:var(--schmiedeschwarz);stroke:none}
.pfeilspitze{fill:var(--linie);stroke:none}

/* ---------- HERO ---------- */
.hero{border-bottom:1.5px solid var(--linie)}
.hero__buehne{min-height:calc(100vh - var(--rand)*2 - var(--kopf));min-height:calc(100svh - var(--rand)*2 - var(--kopf));display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-rows:auto 1fr auto}
.hero__kopfzeile{grid-column:1/-1;display:flex;flex-wrap:wrap;border-bottom:1px solid var(--linie-fein);font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--text-leise)}
.hero__kopfzeile span{padding:9px 20px;border-right:1px solid var(--linie-fein)}
.hero__kopfzeile span:last-child{margin-left:auto;border-right:0;border-left:1px solid var(--linie-fein)}
.hero__text{padding:clamp(40px,5vw,72px) clamp(20px,3.4vw,56px);display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--linie-fein)}
.hero h1{font-family:var(--display);font-size:clamp(1.7rem,3.35vw,3.35rem);line-height:1.12;letter-spacing:.005em}
.hero h1 .kern{position:relative;display:inline-block}
.hero h1 .kern svg{position:absolute;left:-10%;top:-22%;width:120%;height:150%;overflow:visible;pointer-events:none}
.hero__claim{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-leise);margin:0 0 26px;display:flex;align-items:center;gap:10px}
.hero__claim::before{content:"";width:28px;height:1.5px;background:var(--linie)}
.hero__lead{font-size:clamp(1.05rem,1.35vw,1.2rem);max-width:44ch;margin:28px 0 36px;color:#2c2c30}
.hero__aktionen{display:flex;flex-wrap:wrap;gap:14px}
.hero__zeichnung{position:relative;padding:clamp(16px,2.5vw,36px);display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.hero__zeichnung svg{width:100%;height:auto}
.hero__unter{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));border-top:1px solid var(--linie-fein)}
.hero__unter div{padding:14px 20px;border-right:1px solid var(--linie-fein);display:flex;align-items:baseline;gap:12px}
.hero__unter div:last-child{border-right:0}
.hero__unter strong{font-family:var(--mono);font-weight:700;font-size:15px}
.hero__unter span{font-size:13px;color:var(--text-leise)}
.ansicht-label{position:absolute;right:clamp(16px,2.5vw,36px);bottom:12px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--text-leise);text-align:right}
.ansicht-label b{color:var(--schmiedeschwarz);font-weight:700}
.ansicht-label .ex{display:block;color:var(--magenta);opacity:0;transition:opacity .4s}
.explodiert .ansicht-label .ex{opacity:1}

/* Zeichen-Animation (nur mit JS gesetzt) */
.js .zeichne-lauf .zl{transition:stroke-dashoffset calc(var(--d,1.6s)*.7) cubic-bezier(.55,.05,.3,1) calc(var(--v,0s)*.55)}
.js .fade{opacity:0;transition:opacity .7s calc(var(--v,0s)*.55)}
.js .gezeichnet .fade{opacity:1}

/* ---------- LEISTUNGEN ---------- */
.leistungen__kopf{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:56px}
.leistungen__kopf .lead{margin:0}
.karten{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));border-top:1.5px solid var(--linie);border-left:1.5px solid var(--linie)}
.karte{border-right:1.5px solid var(--linie);border-bottom:1.5px solid var(--linie);display:flex;flex-direction:column;background:rgba(236,236,236,.55);position:relative;transition:background .3s}
.karte:hover{background:#F1F1F1}
.karte__kopf{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--linie-fein);padding:10px 16px;font-family:var(--mono);font-size:11px;color:var(--text-leise);letter-spacing:.08em}
.karte__bild{height:150px;border-bottom:1px solid var(--linie-fein);display:grid;place-items:center;padding:12px;background-image:linear-gradient(var(--linie-fein) 1px,transparent 1px),linear-gradient(90deg,var(--linie-fein) 1px,transparent 1px);background-size:12px 12px;background-position:center;background-blend-mode:normal}
.karte__bild{background-image:none}
.karte__bild svg{height:120px;width:auto;max-width:100%}
.karte__text{padding:22px 20px 24px;display:flex;flex-direction:column;flex:1}
.karte h3{font-family:var(--display);font-size:1.02rem;line-height:1.35;letter-spacing:.02em;margin-bottom:12px}
.karte p{margin:0 0 18px;font-size:15.5px;color:#2c2c30}
.spez{list-style:none;margin:auto 0 0;padding:0;font-family:var(--mono);font-size:12px;border-top:1px dashed var(--linie-mittel)}
.spez li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--linie-fein)}
.spez li span:first-child{color:var(--text-leise)}
.spez li span:last-child{text-align:right;font-weight:500}

/* ---------- PROZESS ---------- */
.kette{list-style:none;margin:64px 0 0;padding:0;display:flex}
.schritt{flex:1 1 0;min-width:0;position:relative;padding:58px 22px 0 0}
.schritt__mass{position:absolute;left:0;right:0;top:20px;height:1px}
.schritt__mass::before{content:"";position:absolute;left:0;right:0;top:0;height:1.3px;background:var(--linie);transform-origin:left;transition:transform .9s cubic-bezier(.6,0,.2,1) var(--v,0s)}
.schritt__mass i{position:absolute;top:-14px;left:0;width:1px;height:42px;background:var(--linie)}
.schritt:last-child .schritt__mass b{position:absolute;top:-14px;right:0;width:1px;height:42px;background:var(--linie)}
.schritt__mass em{position:absolute;top:-6px;left:1px;width:0;height:0;border:6px solid transparent;border-left:12px solid var(--linie);border-right:0;border-left-width:12px;transform:rotate(180deg) translateX(-12px)}
.schritt__mass .p2{left:auto;right:0;transform:none}
.schritt__dauer{position:absolute;top:-4px;left:50%;transform:translate(-50%,-100%);font-family:var(--mono);font-size:12px;background:var(--aluminium);padding:0 8px;white-space:nowrap}
.js .schritt__mass::before{transform:scaleX(0)}
.js .sicht .schritt__mass::before{transform:scaleX(1)}
.schritt .ballon{margin-bottom:22px}
.schritt h3{font-family:var(--display);font-size:.95rem;hyphens:auto;overflow-wrap:break-word;letter-spacing:.03em;margin-bottom:10px}
.schritt p{margin:0;font-size:15px;color:#2c2c30;max-width:30ch}
.prozess__fuss{margin-top:56px;font-family:var(--mono);font-size:12px;color:var(--text-leise);display:flex;gap:28px;flex-wrap:wrap}

/* ---------- KENNZAHLEN (Blueprint) ---------- */
.blueprint{background-color:var(--petrol);color:var(--aluminium);
  background-image:
    linear-gradient(rgba(233,233,233,.09) 1px,transparent 1px),
    linear-gradient(90deg,rgba(233,233,233,.09) 1px,transparent 1px),
    linear-gradient(rgba(233,233,233,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(233,233,233,.045) 1px,transparent 1px);
  background-size:120px 120px,120px 120px,24px 24px,24px 24px;
  background-position:-1px -1px}
.blueprint .pos{color:rgba(233,233,233,.8)}
.blueprint .ballon{background:var(--petrol);color:var(--aluminium);border-color:var(--aluminium)}
.blueprint .pos__leitung,.blueprint .pos__leitung::after{background:var(--aluminium)}
.blueprint h2{color:#fff}
.zahlen{list-style:none;margin:64px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0;border-top:1px solid rgba(233,233,233,.4)}
.zahl{padding:34px 20px 30px;border-right:1px solid rgba(233,233,233,.22)}
.zahl:first-child{padding-left:0}
.zahl:last-child{border-right:0}
.zahl__wert{font-family:var(--display);font-size:clamp(1.9rem,2.35vw,2.3rem);line-height:1;color:#fff;white-space:nowrap;display:inline-block;position:relative;padding-bottom:22px}
.zahl__wert small{font-size:.42em;margin-left:6px;letter-spacing:.04em}
.zahl__wert::before{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:rgba(233,233,233,.85)}
.zahl__wert::after{content:"";position:absolute;left:0;right:0;bottom:0;height:13px;border-left:1px solid rgba(233,233,233,.85);border-right:1px solid rgba(233,233,233,.85)}
.zahl__label{margin:16px 0 0;font-size:15px;color:rgba(233,233,233,.92);max-width:24ch}
.zahl__hinweis{display:block;font-family:var(--mono);font-size:11px;color:rgba(233,233,233,.65);margin-top:6px}
.blueprint__deko{position:absolute;right:clamp(18px,4vw,64px);top:clamp(60px,8vw,110px);width:min(30vw,340px);opacity:.9}
.blueprint__deko .z{stroke:rgba(233,233,233,.85)}
.blueprint__deko .z-mitte{stroke:rgba(233,233,233,.5)}
.blueprint__deko text{fill:rgba(233,233,233,.85)}

/* ---------- HALTUNG ---------- */
.haltung__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:start}
.manifest{font-family:var(--display);font-size:clamp(1.25rem,2.15vw,1.9rem);line-height:1.42;margin:0}
.manifest em{font-style:normal;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:6px}
.haltung__text{margin:30px 0 0;max-width:56ch;color:#2c2c30}
.stueckliste{width:100%;border-collapse:collapse;margin-top:44px;font-size:14.5px;border:1.5px solid var(--linie)}
.stueckliste caption{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-leise);padding-bottom:10px}
.stueckliste th,.stueckliste td{border:1px solid var(--linie-mittel);padding:9px 12px;text-align:left;vertical-align:top}
.stueckliste th{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.06em;background:rgba(26,26,28,.05)}
.stueckliste td:first-child,.stueckliste td:nth-child(2){font-family:var(--mono);width:1%;white-space:nowrap}
.stueckliste td:nth-child(3){font-weight:600}
.foto-platzhalter{margin:0;position:relative;aspect-ratio:4/5;background:
  radial-gradient(120% 80% at 70% 30%,rgba(255,255,255,.12),transparent 60%),
  linear-gradient(160deg,#127E80 0%,var(--petrol) 40%,#08403F 100%);
  overflow:hidden;color:var(--aluminium);border:1.5px solid var(--linie)}
.foto-platzhalter::before{content:"";position:absolute;inset:0;opacity:.32;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.foto-platzhalter svg{position:absolute;inset:0;width:100%;height:100%}
.foto-platzhalter figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;font-family:var(--mono);font-size:11.5px;line-height:1.5;background:rgba(10,40,41,.82);border-top:1px solid rgba(233,233,233,.3)}
.foto-platzhalter figcaption b{display:block;font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:10px;opacity:.75}
.foto-platzhalter .ecke{position:absolute;top:30px;left:34px;font-family:var(--mono);font-size:11px;letter-spacing:.1em}

/* ---------- BRANCHEN ---------- */
.branchen__kopf{display:flex;justify-content:space-between;align-items:end;gap:40px;flex-wrap:wrap}
.branchen__kopf .lead{margin:0;max-width:44ch}
.felder{list-style:none;padding:0;margin:56px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));border-top:1.5px solid var(--linie);border-left:1px solid var(--linie-mittel)}
.feld{border-right:1px solid var(--linie-mittel);border-bottom:1px solid var(--linie-mittel);padding:20px 20px 24px;position:relative;min-height:170px;display:flex;flex-direction:column;transition:background .25s}
.feld:hover{background:rgba(15,113,115,.07)}
.feld__ko{font-family:var(--mono);font-size:11px;color:var(--text-leise);display:flex;justify-content:space-between}
.feld h3{font-family:var(--display);font-size:.9rem;margin:40px 0 8px;letter-spacing:.01em;overflow-wrap:anywhere;hyphens:auto}
.feld p{margin:0;font-family:var(--mono);font-size:12px;color:#3a3a40;line-height:1.55}
.feld::after{content:"";position:absolute;right:14px;top:14px;width:16px;height:16px;border-top:1.5px solid var(--linie);border-right:1.5px solid var(--linie);opacity:.0;transition:opacity .25s}
.feld:hover::after{opacity:1}

/* ---------- CTA ---------- */
.cta{background:var(--schmiedeschwarz);color:var(--aluminium);overflow:hidden}
.cta .pos{color:rgba(233,233,233,.7)}
.cta .ballon{background:var(--schmiedeschwarz);color:var(--aluminium);border-color:var(--aluminium)}
.cta .pos__leitung,.cta .pos__leitung::after{background:var(--aluminium)}
.cta__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center}
.cta h2{font-size:clamp(1.7rem,3.6vw,3.3rem);max-width:16ch;color:#fff}
.cta p{color:rgba(233,233,233,.85);max-width:46ch;margin:24px 0 0;font-size:1.1rem}
.revision{position:relative;justify-self:center;padding:48px 44px}
.revision__wolke{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.revision__wolke path{fill:none;stroke:var(--magenta);stroke-width:2;vector-effect:non-scaling-stroke}
.revision__dreieck{position:absolute;right:-6px;top:-24px;width:46px;height:40px}
.revision__dreieck text{font-family:var(--mono);font-size:13px;fill:#fff;font-weight:700}
.revision .btn{font-size:17px;padding:22px 30px}
.revision__notiz{display:block;font-family:var(--mono);font-size:11.5px;color:rgba(233,233,233,.7);margin-top:16px;text-align:center}
.cta .z{stroke:rgba(233,233,233,.6)}

/* ---------- KONTAKT ---------- */
.kontakt__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,5vw,72px)}
.adresse{font-style:normal;margin-top:30px;font-size:15.5px;border-top:1.5px solid var(--linie)}
.adresse div{display:grid;grid-template-columns:96px 1fr;border-bottom:1px solid var(--linie-fein);padding:10px 0}
.adresse dt,.adresse span.k{font-family:var(--mono);font-size:11px;color:var(--text-leise);padding-top:3px;letter-spacing:.06em}
.adresse a{text-decoration-thickness:1px;text-underline-offset:3px}
.formular{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid var(--linie);background:rgba(236,236,236,.7)}
.formular__titel{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1.5px solid var(--linie);font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:rgba(26,26,28,.05)}
.fz{position:relative;border-bottom:1px solid var(--linie-mittel);border-right:1px solid var(--linie-mittel);display:flex;flex-direction:column;min-width:0}
.fz--rechts{border-right:0}
.fz--voll{grid-column:1/-1;border-right:0}
.fz label{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-leise);padding:10px 14px 0}
.fz input,.fz textarea{font:inherit;font-size:16px;border:0;background:transparent;padding:6px 14px 12px;color:var(--schmiedeschwarz);min-width:0;width:100%}
.fz textarea{min-height:130px;resize:vertical}
.fz input:focus,.fz textarea:focus{outline:none}
.fz:focus-within{background:#F3F3F3;box-shadow:inset 3px 0 0 var(--petrol)}
.fz--datei{padding:0}
.fz--datei label{cursor:pointer}
.datei{display:flex;align-items:center;gap:14px;padding:12px 14px 16px;flex-wrap:wrap}
.datei input{position:absolute;opacity:0;width:1px;height:1px}
.datei__knopf{font-family:var(--mono);font-size:12px;border:1.5px dashed var(--linie);padding:10px 14px;cursor:pointer;background:var(--aluminium)}
.datei input:focus-visible+.datei__knopf{outline:2px solid var(--petrol);outline-offset:2px}
.datei__name{font-size:14px;color:var(--text-leise)}
.formular__fuss{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px;flex-wrap:wrap}
.formular__fuss p{margin:0;font-size:13px;color:var(--text-leise);max-width:42ch}
.formular__status{grid-column:1/-1;padding:0 16px 16px;font-family:var(--mono);font-size:12px;color:var(--petrol);min-height:0}

/* ---------- FOOTER = Schriftfeld ---------- */
.fuss{padding:clamp(48px,6vw,80px) 0 0}
.fuss__oben{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;align-items:end;margin-bottom:40px}
.fuss__slogan{font-family:var(--display);font-size:clamp(1.1rem,2vw,1.6rem);max-width:24ch;line-height:1.3;margin:0}
.schriftfeld{margin-left:auto;max-width:860px;display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;border:2px solid var(--linie);border-bottom:0;border-right:0;font-size:13.5px;background:var(--aluminium)}
.sf{border-right:1px solid var(--linie);border-bottom:1px solid var(--linie);padding:7px 10px 9px;min-width:0}
.sf b{display:block;font-family:var(--mono);font-size:9.5px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--text-leise);margin-bottom:2px}
.sf .mono{font-size:13px}
.sf--logo{grid-row:span 2;display:flex;align-items:center;gap:12px;padding:14px}
.sf--logo .logo__wort{font-size:24px}
.sf--logo svg{width:40px;height:40px}
.sf--breit{grid-column:span 2}
.sf--voll{grid-column:span 3}
.sf--ganz{grid-column:1/-1}
.sf a{text-decoration-thickness:1px;text-underline-offset:3px}
.sf__links{display:flex;gap:16px;flex-wrap:wrap}
.fuss__abschluss{height:var(--rand)}

@media (min-width:981px) and (min-height:640px) and (prefers-reduced-motion:no-preference){
  .js .hero{height:calc(100vh - var(--rand)*2 - var(--kopf) + 55vh)}
  .js .hero__buehne{position:sticky;top:calc(var(--rand) + var(--kopf));height:calc(100vh - var(--rand)*2 - var(--kopf));min-height:0}
}
/* ---------- Responsiv ---------- */
@media (max-width:1180px){
  .kopf__znr{display:none}
  .nav a{padding:0 16px}
  .nav a::after{left:16px;right:16px}
}
@media (max-width:980px){
  :root{--kopf:60px}
  .menu-btn{display:block}
  .nav{position:absolute;left:-1.5px;right:-1.5px;top:100%;background:var(--aluminium);border:1.5px solid var(--linie);border-top:0;display:none}
  .nav.offen{display:block}
  .nav ul{flex-direction:column}
  .nav a{padding:16px 22px;border-right:0;border-bottom:1px solid var(--linie-fein);width:100%}
  .nav a::after{display:none}
  .kopf__in{justify-content:space-between}
  .logo{border-right:0;margin-right:auto}
  .hero__buehne{grid-template-columns:1fr;grid-template-rows:auto}
  .hero__text{border-right:0}
  .hero__zeichnung{padding-top:0;padding-bottom:44px}
  .leistungen__kopf,.haltung__grid,.cta__grid,.kontakt__grid{grid-template-columns:1fr}
  .blueprint__deko{display:none}
  .schriftfeld{margin-left:0}
}
@media (max-width:760px){
  :root{--rand:10px}
  body{font-size:16px}
  .rahmen__band span{font-size:0}
  .rahmen__band span+span::before{display:none}
  .rahmen__linie::before{inset:-6px}
  .rahmen__mark{display:none}
  .kopf__cta .btn{padding:0 14px;font-size:13px}
  .kopf__cta .btn .pfeil{display:none}
  .logo{padding:0 14px;gap:10px}
  .logo svg{width:28px;height:28px}
  .logo__wort{font-size:18px}
  .logo__zusatz{display:none}
  .menu-btn{width:56px}
  .hero__kopfzeile span{padding:7px 12px;font-size:10px}
  .hero__kopfzeile span:nth-child(n+2){display:none}
  .hero__kopfzeile span:last-child{display:block}
  .hero__unter{grid-template-columns:1fr 1fr}
  .hero__unter div{flex-direction:column;gap:2px;padding:12px 14px;border-bottom:1px solid var(--linie-fein)}
  .hero__unter div:nth-child(2n){border-right:0}
  .hero__unter div:nth-last-child(-n+2){border-bottom:0}
  .ansicht-label{position:static;text-align:left;margin:10px 0 0;font-size:10px}
  .hero__zeichnung{padding-bottom:20px}
  .kette{flex-direction:column;margin-top:40px}
  .schritt{padding:24px 0 34px 64px}
  .schritt .ballon{position:absolute;left:0;top:0;margin:0}
  .schritt__mass{left:22px;right:auto;top:52px;bottom:0;width:1px;height:auto}
  .schritt__mass::before{left:0;top:0;bottom:0;right:auto;width:1.3px;height:auto;transform-origin:top}
  .js .schritt__mass::before{transform:scaleY(0)}
  .js .sicht .schritt__mass::before{transform:scaleY(1)}
  .schritt__mass i,.schritt__mass em,.schritt:last-child .schritt__mass b{display:none}
  .schritt__dauer{position:absolute;top:-52px;left:42px;transform:none;padding:0;background:none;color:var(--text-leise);font-size:11px}
  .schritt:last-child .schritt__mass{display:block;width:0}
  .schritt:last-child .schritt__mass::before{display:none}
  .schritt:last-child{padding-bottom:0}
  .zahl,.zahl:first-child{padding:26px 0;border-right:0;border-bottom:1px solid rgba(233,233,233,.22)}
  .formular{grid-template-columns:1fr}
  .fz{border-right:0}
  .schriftfeld{grid-template-columns:1fr 1fr}
  .sf--logo{grid-column:span 2;grid-row:auto}
  .sf--voll,.sf--breit{grid-column:span 2}
  .revision{padding:40px 26px;justify-self:start}
  .revision .btn{font-size:16px;padding:18px 22px}
  .stueckliste{font-size:13.5px}
  .stueckliste th,.stueckliste td{padding:8px 8px}
}

/* ================= Runde 2: Mehrseiten-Bausteine ================= */
.nav a[aria-current="page"]{background:var(--schmiedeschwarz);color:var(--aluminium)}
.nav a[aria-current="page"] small{color:rgba(233,233,233,.7)}
.nav a[aria-current="page"]::after{display:none}
.btn--petrol{background:var(--petrol);color:#fff}
.btn--petrol:hover{background:var(--petrol-dunkel)}
.btn--petrol-linie{background:transparent;color:var(--petrol-dunkel);box-shadow:inset 0 0 0 1.5px var(--petrol)}
.btn--petrol-linie:hover{background:var(--petrol);color:#fff}
.mehr{display:inline-flex;align-items:center;gap:10px;margin-top:40px;font-family:var(--mono);font-size:13px;letter-spacing:.06em;text-decoration:none;border-bottom:1.5px solid var(--linie);padding-bottom:4px}
.mehr:hover{color:var(--petrol);border-color:var(--petrol)}
.mehr svg{width:22px;height:10px}
.plh{font-family:var(--mono);font-size:.78em;color:var(--text-leise)}
.blueprint .plh,.cta .plh{color:rgba(233,233,233,.7)}

/* Seitenkopf der Unterseiten */
.seitenkopf{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto 1fr}
.seitenkopf .hero__kopfzeile{grid-column:1/-1}
.seitenkopf__text{padding:clamp(48px,6vw,96px) clamp(20px,3.4vw,56px) clamp(48px,5vw,80px);border-right:1px solid var(--linie-fein)}
.seitenkopf h1{font-family:var(--display);font-size:clamp(1.6rem,3.6vw,3.2rem);line-height:1.12;max-width:18ch}
.seitenkopf .lead{margin-top:24px}
.seitenkopf__bild{display:flex;flex-direction:column;justify-content:center;padding:clamp(20px,3vw,48px);position:relative}
.seitenkopf__bild svg{width:100%;height:auto;max-height:300px}
.seitenkopf__bild .ansicht-label{position:static;margin:14px 0 0;text-align:right}
.sprung{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px;list-style:none;padding:0}
.sprung a{display:inline-block;font-family:var(--mono);font-size:12px;text-decoration:none;padding:7px 12px;box-shadow:inset 0 0 0 1px var(--linie-mittel)}
.sprung a:hover{background:var(--schmiedeschwarz);color:var(--aluminium)}

/* Tabellen (Maschinenpark, Produktdaten) */
.tabelle-wrap{overflow-x:auto;margin-top:40px;border:1.5px solid var(--linie);background:rgba(236,236,236,.6)}
.tabelle{width:100%;border-collapse:collapse;font-size:14.5px}
.tabelle caption{caption-side:top;text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-leise);padding:10px 14px;border-bottom:1.5px solid var(--linie)}
.tabelle th,.tabelle td{border-bottom:1px solid var(--linie-fein);border-right:1px solid var(--linie-fein);padding:10px 14px;text-align:left;vertical-align:top}
.tabelle th:last-child,.tabelle td:last-child{border-right:0}
.tabelle thead th{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.06em;background:rgba(26,26,28,.05);border-bottom:1px solid var(--linie-mittel)}
.tabelle tbody th{font-weight:600}
.tabelle td.m{font-family:var(--mono);font-size:13px;white-space:nowrap}
.tabelle tr:last-child td,.tabelle tr:last-child th{border-bottom:0}
.tabelle--breit{min-width:620px}

/* Vorlage: Zeichnung · Skizze · Muster */
.vorlagen{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));border-top:1.5px solid var(--linie)}
.vorlage{padding:28px 28px 30px;border-right:1px solid var(--linie-fein)}
.vorlage:first-child{padding-left:0}
.vorlage:last-child{border-right:0}
.vorlage svg{height:110px;width:auto;max-width:100%;margin-bottom:18px}
.vorlage h3{font-family:var(--display);font-size:1.05rem;margin-bottom:10px}
.vorlage p{margin:0;font-size:15.5px;color:#2c2c30;max-width:34ch}
.gespraech{margin-top:48px;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;padding:24px;border:1.5px dashed var(--linie-mittel)}
.gespraech p{margin:0;max-width:70ch}
.gespraech strong{font-family:var(--display);font-weight:400;font-size:1rem;display:block;margin-bottom:6px}

/* Lohnfertigung: Spalten */
.gewerke{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;margin-top:56px;border-top:1.5px solid var(--linie);border-left:1.5px solid var(--linie)}
.gewerk{border-right:1.5px solid var(--linie);border-bottom:1.5px solid var(--linie);padding:0 0 22px;background:rgba(236,236,236,.55)}
.gewerk .karte__kopf{margin-bottom:18px}
.gewerk h3{font-family:var(--display);font-size:1rem;margin:0 20px 10px}
.gewerk p{margin:0 20px 16px;font-size:15px;color:#2c2c30}
.gewerk .liste-mono{margin:0 20px}
.liste-mono{list-style:none;padding:0;font-family:var(--mono);font-size:13px}
.liste-mono li{padding:8px 0;border-bottom:1px solid var(--linie-fein);display:flex;gap:10px}
.liste-mono li::before{content:"—";color:var(--text-leise)}

/* Revisionstabelle (60 Jahre) */
.revtab{width:100%;border-collapse:collapse;border:1.5px solid var(--linie);font-size:14.5px;margin-top:36px;background:rgba(236,236,236,.6)}
.revtab caption{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-leise);padding-bottom:10px}
.revtab th,.revtab td{border:1px solid var(--linie-mittel);padding:10px 12px;text-align:left;vertical-align:top}
.revtab thead th{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.06em;background:rgba(26,26,28,.05)}
.revtab td:first-child{width:1%;white-space:nowrap;text-align:center}
.revtab td:nth-child(2){font-family:var(--mono);white-space:nowrap;width:1%}
.rev-marke{display:inline-block;width:28px;height:24px;vertical-align:middle}
.rev-marke text{font-family:var(--mono);font-size:11px;font-weight:700}
.revtab tr.aktuell td{background:rgba(15,113,115,.09)}
.revtab tr.aktuell td:nth-child(3){font-weight:600}

/* Produkte */
.produkt-uebersicht{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));border-top:1.5px solid var(--linie);border-left:1px solid var(--linie-mittel)}
.produkt-karte{border-right:1px solid var(--linie-mittel);border-bottom:1px solid var(--linie-mittel)}
.produkt-karte a{display:flex;flex-direction:column;height:100%;padding:16px 18px 20px;text-decoration:none;transition:background .25s}
.produkt-karte a:hover{background:rgba(15,113,115,.07)}
.produkt-karte svg{height:84px;width:100%;margin:10px 0 14px}
.produkt-karte h3{font-family:var(--display);font-size:.9rem;line-height:1.35;margin:0 0 6px;overflow-wrap:anywhere}
.produkt-karte p{margin:0;font-size:14px;color:#3a3a40}
.produkt{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,72px);align-items:start}
.produkt__bild{border:1.5px solid var(--linie);background:rgba(236,236,236,.6);position:sticky;top:calc(var(--rand) + var(--kopf) + 24px)}
.produkt__bild svg{width:100%;height:auto;padding:18px}
.produkt h2{font-size:clamp(1.4rem,2.6vw,2.3rem)}
.produkt .lead{margin-top:18px}
.produkt__merkmale{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.produkt__merkmale li{padding:9px 0 9px 22px;border-bottom:1px solid var(--linie-fein);position:relative;font-size:15px}
.produkt__merkmale li::before{content:"";position:absolute;left:0;top:19px;width:10px;height:1.5px;background:var(--linie)}
.produkt .tabelle-wrap{margin-top:28px}
.produkt__aktion{margin-top:28px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.produkt__aktion small{font-family:var(--mono);font-size:12px;color:var(--text-leise)}
.status{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;padding:6px 10px;border:1.5px dashed var(--petrol);color:var(--petrol-dunkel);margin-bottom:18px}
.produkt--pausiert .produkt__bild svg{opacity:.5}
.produkt-teaser{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,72px);align-items:start}
.produkt-teaser .produkt-uebersicht{margin-top:0;grid-template-columns:repeat(2,minmax(0,1fr))}
.produkt-teaser h2{font-size:clamp(1.4rem,2.4vw,2.2rem)}

/* Karriere */
.stellen{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));border-top:1.5px solid var(--linie);border-left:1px solid var(--linie-mittel)}
.stelle{border-right:1px solid var(--linie-mittel);border-bottom:1px solid var(--linie-mittel);padding:20px 20px 24px}
.stelle h3{font-family:var(--display);font-size:.98rem;margin:28px 0 8px}
.stelle p{margin:0;font-size:15px;color:#2c2c30}

/* Fotoplätze Werkstatt */
.fotos{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin-top:48px}
.fotos .foto-platzhalter{aspect-ratio:auto;min-height:340px}

/* Kontakt: Anliegen */
.anliegen{grid-column:1/-1;border:0;border-bottom:1px solid var(--linie-mittel);margin:0;padding:10px 14px 14px;min-width:0}
.anliegen legend{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-leise);padding:0;float:left;width:100%;margin-bottom:10px}
.anliegen__optionen{display:flex;flex-wrap:wrap;gap:8px;clear:both}
.anliegen input{position:absolute;opacity:0;width:1px;height:1px}
.anliegen label{font-size:15px;padding:9px 14px;cursor:pointer;box-shadow:inset 0 0 0 1.5px var(--linie-mittel);display:inline-flex;align-items:center;gap:8px}
.anliegen label::before{content:"";width:10px;height:10px;border:1.5px solid var(--linie);border-radius:50%;flex:none}
.anliegen input:checked+label{background:var(--schmiedeschwarz);color:var(--aluminium);box-shadow:none}
.anliegen input:checked+label::before{background:var(--aluminium);border-color:var(--aluminium);box-shadow:inset 0 0 0 2px var(--schmiedeschwarz)}
.anliegen input:focus-visible+label{outline:2px solid var(--petrol);outline-offset:2px}
.fz select{font:inherit;font-size:16px;border:0;background:transparent;padding:6px 10px 12px;color:var(--schmiedeschwarz);min-width:0}
.fz select:focus{outline:none}
.fz[hidden]{display:none}

/* Anfahrt */
.anfahrt{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,72px);align-items:start}
.lageplan{border:1.5px solid var(--linie);background:rgba(236,236,236,.6);margin:0}
.lageplan svg{width:100%;height:auto}
.lageplan figcaption{padding:10px 14px;border-top:1px solid var(--linie-fein);font-family:var(--mono);font-size:12px;color:var(--text-leise)}

/* Rechtstexte */
.rechtstext{max-width:72ch}
.rechtstext h2{font-size:clamp(1.05rem,1.7vw,1.35rem);margin:44px 0 12px;max-width:none}
.rechtstext p{margin:0 0 12px;color:#2c2c30}
.hinweis-box{border:1.5px dashed var(--linie-mittel);padding:16px 18px;font-family:var(--mono);font-size:13px;margin-bottom:40px}

/* Footer-Navigation */
.fuss__nav{display:flex;flex-wrap:wrap;gap:6px 22px;list-style:none;margin:0;padding:0;font-family:var(--mono);font-size:12.5px}
.fuss__nav a{text-decoration:none;border-bottom:1px solid var(--linie-mittel)}
.fuss__nav a:hover{color:var(--petrol);border-color:var(--petrol)}
.fuss__nav a[aria-current="page"]{border-bottom:1.5px solid var(--schmiedeschwarz);font-weight:700}

@media (max-width:980px){
  .seitenkopf,.produkt,.produkt-teaser,.anfahrt{grid-template-columns:1fr}
  .seitenkopf__text{border-right:0;padding-bottom:12px}
  .seitenkopf__bild{padding-top:0}
  .produkt__bild{position:static}
  .fotos{grid-template-columns:1fr 1fr}
  .fotos .foto-platzhalter:first-child{grid-column:1/-1}
}
@media (max-width:760px){
  .seitenkopf__bild svg{max-height:200px}
  .vorlage,.vorlage:first-child{padding:24px 0;border-right:0;border-bottom:1px solid var(--linie-fein)}
  .gespraech{grid-template-columns:1fr;gap:12px}
  .produkt__merkmale{grid-template-columns:1fr}
  .fotos{grid-template-columns:1fr}
  .fotos .foto-platzhalter{min-height:260px}
  .produkt-uebersicht{grid-template-columns:1fr 1fr}
  .produkt-karte a{padding:12px 12px 16px}
  .produkt-karte h3{font-size:.78rem}
  .produkt-karte p{display:none}
  .tabelle{font-size:13.5px}
  .tabelle th,.tabelle td{padding:8px 10px}
  .revtab{font-size:13.5px}
  .revtab th,.revtab td{padding:8px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important}
  .js .rv{opacity:1;transform:none}
  .js .fade{opacity:1}
  .js .pos__leitung{transform:none}
  .js .schritt__mass::before{transform:none}
  .fk{display:none}
}
@media (hover:none),(pointer:coarse){.fk{display:none}}
/* Grid-Kinder dürfen schrumpfen (Tabellen scrollen in ihrem Rahmen) */
.produkt>*,.produkt-teaser>*,.anfahrt>*,.kontakt__grid>*,.haltung__grid>*,.cta__grid>*,.leistungen__kopf>*{min-width:0}
.tabelle-wrap{max-width:100%}
@media (max-width:760px){
  .tabelle td.m{white-space:normal}
  .feld{min-height:0}
  .feld h3{margin-top:22px}
}
h1,h2,h3{hyphens:auto;overflow-wrap:break-word}
@media (max-width:760px){
  .revtab th:nth-child(4),.revtab td:nth-child(4){display:none}
  .revtab td:nth-child(2){white-space:normal;width:auto}
}
