/* ============================================================
   KI-Profi24 - Landingpage
   Schriften lokal eingebunden (kein Google-Fonts-CDN, DSGVO)
   ============================================================ */

@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/archivo-500-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/archivo-500-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/archivo-600-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/archivo-600-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/archivo-700-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/archivo-700-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/archivo-800-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/archivo-800-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-mono-400-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-mono-400-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/ibm-plex-mono-500-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/ibm-plex-mono-500-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/newsreader-400-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/newsreader-400-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:500;font-display:swap;src:url('fonts/newsreader-500-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:500;font-display:swap;src:url('fonts/newsreader-500-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

/* ------------------------------------------------------------
   Design-Variablen
   --acc = Akzentfarbe der ganzen Seite (eine Zeile aendern
   genuegt: #0d5c54 Petrol | #1e4fd8 Blau | #6d28d9 Violett |
   #c2410c Orange)
   ------------------------------------------------------------ */
:root{
  --acc:#0d5c54;
  --acc-lt:#7fbfb5;          /* helle Variante fuer dunkle Flaechen */
  --rad:10px;
  --ink:#17181a;
  --muted:#5b5f66;
  --dim:#8a8e94;
  --line:#e7e7e4;
  --dark:#141518;
  --dark-card:#1d1f24;
  --dark-line:#34373d;
  --dark-text:#b6b9bf;
  --paper:#f4f4f1;
  --maxw:1180px;
}
@supports (color:color-mix(in oklch, red, white)){
  :root{--acc-lt:color-mix(in oklch, var(--acc), white 55%);}
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;background:#fff;color:var(--ink);
  font-family:'Archivo','Helvetica Neue',Helvetica,Arial,sans-serif;
  font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--acc);text-decoration:none;}
a:hover{color:var(--ink);}
img,video{max-width:100%;}
img{height:auto;}
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-0.02em;line-height:1.15;}
p{margin:0;}
::selection{background:var(--acc);color:#fff;}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.mono{font-family:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;}
.serif{font-family:'Newsreader',Georgia,'Times New Roman',serif;font-style:italic;}

/* ---------- Buttons ---------- */
.btn{
  display:inline-block;background:var(--acc);color:#fff;
  padding:16px 32px;border-radius:var(--rad);
  font-weight:600;font-size:1.02rem;font-family:inherit;
  border:none;cursor:pointer;transition:background .16s ease,color .16s ease;
}
.btn:hover{background:#111;color:#fff;}
.btn-ghost{background:transparent;color:var(--ink);padding:15px 30px;border:1px solid var(--ink);}
.btn-ghost:hover{background:var(--ink);color:#fff;}
.btn-light:hover{background:var(--paper);color:var(--dark);}

/* ---------- Header ---------- */
.site-head{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,0.92);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;height:66px;}
.brand{font-weight:800;font-size:1.25rem;letter-spacing:-0.02em;}
.brand span{color:var(--acc);}
.site-nav{display:flex;gap:26px;align-items:center;font-size:0.92rem;font-weight:500;}
.site-nav a{color:var(--ink);}
.site-nav a:hover{color:var(--acc);}
.site-nav .nav-cta{
  background:var(--acc);color:#fff;padding:10px 22px;
  border-radius:var(--rad);font-weight:600;transition:background .16s ease;
}
.site-nav .nav-cta:hover{background:#111;color:#fff;}

/* ---------- Section-Grundgeruest ---------- */
.sec{border-bottom:1px solid var(--line);}
.sec > .wrap{padding:96px 28px;}
.sec-head{display:flex;align-items:baseline;gap:22px;margin-bottom:16px;}
.sec-num{color:var(--acc);font-size:0.95rem;}
.sec-head h2{font-size:clamp(1.8rem,3.2vw,2.6rem);max-width:780px;}
.sec-intro{color:var(--muted);font-size:1.1rem;max-width:700px;margin:0 0 52px 60px;text-wrap:pretty;}
.sec-dark{background:var(--dark);color:var(--paper);border-bottom:none;}
.sec-dark .sec-num{color:var(--acc-lt);}
.sec-dark h2{color:var(--paper);}
.sec-dark .sec-intro{color:var(--dark-text);}

/* ---------- Hero ---------- */
.hero{border-bottom:1px solid var(--line);}
.hero .wrap{
  padding:80px 28px 96px;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
  gap:64px;align-items:center;
}
.hero-kicker{
  display:flex;align-items:center;gap:12px;margin-bottom:32px;
  font-size:0.8rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--acc);
}
.hero-kicker i{display:inline-block;width:10px;height:10px;background:var(--acc);flex:none;}
.hero h1{font-size:clamp(2.6rem,4.6vw,3.9rem);line-height:1.05;letter-spacing:-0.03em;margin-bottom:30px;}
.hero h1 em{
  font-family:'Newsreader',Georgia,serif;font-style:italic;font-weight:500;
  color:var(--acc);letter-spacing:-0.01em;
}
.hero-lead{font-size:1.2rem;color:var(--muted);max-width:560px;line-height:1.55;margin-bottom:40px;text-wrap:pretty;}
.hero-cta{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:36px;}
.hero-trust{display:flex;gap:24px;flex-wrap:wrap;font-size:0.8rem;color:var(--muted);}
.hero-media{position:relative;padding:0 18px 18px 0;}
.hero-media .frame{position:absolute;top:22px;right:0;bottom:0;left:22px;border:2px solid var(--acc);border-radius:var(--rad);}
.hero-media img{position:relative;width:100%;aspect-ratio:4/4.4;object-fit:cover;border-radius:var(--rad);display:block;}
.badge-dark{
  position:absolute;background:var(--dark);color:var(--paper);
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:0.76rem;
  padding:12px 18px;border-radius:var(--rad);line-height:1.5;
}
.hero-media .badge-dark{left:-14px;bottom:44px;}

/* ---------- 01 Problemkarten ---------- */
.problem-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:1px;background:var(--line);border:1px solid var(--line);
}
.problem-grid article{background:#fff;padding:38px 32px;}
.problem-grid .label{
  font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--acc);margin-bottom:16px;
}
.problem-grid img{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:var(--rad);display:block;margin-bottom:20px;}
/* Detailausschnitt (Haende/Tastatur) - grenzt die Karte optisch vom Hero-Bild ab */
.problem-grid img.pos-right{object-position:78% 92%;}
.problem-grid h3{font-size:1.25rem;letter-spacing:-0.01em;line-height:1.3;margin-bottom:14px;}
.problem-grid p{color:var(--muted);font-size:0.97rem;}

/* ---------- 02 Leistungen ---------- */
.figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;margin-bottom:56px;}
.figures figure{margin:0;}
.figures img{width:100%;aspect-ratio:16/7;object-fit:cover;border-radius:var(--rad);display:block;}
.figures figcaption{font-size:0.74rem;color:var(--dim);margin-top:10px;}
.flow{
  aspect-ratio:16/7;border:1px solid var(--line);border-radius:var(--rad);
  background:#fafaf8;padding:18px;display:flex;flex-direction:column;gap:10px;
  justify-content:center;overflow:hidden;
}
.flow-row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:#fff;border:1px solid var(--line);border-radius:var(--rad);
  padding:9px 14px;font-size:0.72rem;color:var(--muted);
}
.flow-row b{color:var(--acc);font-weight:400;white-space:nowrap;}

.leist{border-top:1px solid var(--line);}
.leist-row{
  display:grid;grid-template-columns:70px 1fr 1.35fr;gap:28px;
  padding:34px 0;border-bottom:1px solid var(--line);align-items:baseline;
}
.leist-row .num{color:var(--acc);font-size:0.95rem;}
.leist-row h3{font-size:1.35rem;letter-spacing:-0.01em;line-height:1.25;}
.leist-row p{color:var(--muted);font-size:1rem;}

.quote-block{margin-top:52px;position:relative;overflow:hidden;border-radius:var(--rad);background:var(--dark);}
.quote-block video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0.35;}
.quote-block .txt{
  position:relative;padding:60px 48px;color:var(--paper);
  font-family:'Newsreader',Georgia,serif;font-style:italic;
  font-size:clamp(1.4rem,2.4vw,1.8rem);line-height:1.4;max-width:900px;
}
.quote-block .txt span{color:var(--acc-lt);}

/* ---------- 03 Betrieb ---------- */
.betrieb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;margin-bottom:36px;}
.betrieb-photo{position:relative;min-height:360px;}
.betrieb-photo img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--rad);
  filter:saturate(0.35) contrast(1.05);   /* nuechtern statt Neon-Serverraum */
}
.betrieb-photo .badge-dark{left:16px;bottom:16px;background:rgba(20,21,24,0.85);backdrop-filter:blur(4px);padding:10px 14px;font-size:0.74rem;}
.betrieb-card{background:var(--dark-card);border:1px solid var(--dark-line);padding:40px 36px;border-radius:var(--rad);}
.betrieb-card.is-highlight{border:2px solid var(--acc);padding:39px 35px;position:relative;}
.betrieb-card h3{font-size:1.5rem;letter-spacing:-0.01em;margin-bottom:6px;}
.betrieb-card .sub{
  color:var(--acc-lt);font-size:0.8rem;letter-spacing:0.08em;
  text-transform:uppercase;margin-bottom:22px;
}
.betrieb-card ul{list-style:none;margin:0;padding:0;}
.betrieb-card li{
  padding:11px 0 11px 26px;position:relative;color:var(--dark-text);
  font-size:0.95rem;border-top:1px solid var(--dark-line);
}
.betrieb-card li::before{content:"";position:absolute;left:0;top:20px;width:12px;height:2px;background:var(--acc);}
.betrieb-badge{
  position:absolute;top:-13px;left:34px;background:var(--acc);color:#fff;
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:0.72rem;
  letter-spacing:0.1em;text-transform:uppercase;padding:4px 12px;border-radius:var(--rad);
}
.note-box{
  background:var(--dark-card);border-left:3px solid var(--acc);
  padding:26px 32px;font-size:1rem;color:#d5d7db;border-radius:var(--rad);
}
.note-box b{color:var(--paper);}

/* ---------- 04 Ablauf ---------- */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));border-left:1px solid var(--line);}
.step{border-right:1px solid var(--line);padding:8px 28px 0;}
.step .num{
  font-family:'Newsreader',Georgia,serif;font-style:italic;font-size:3rem;
  color:#dcdcd8;display:block;margin-bottom:14px;line-height:1;transition:color .2s ease;
}
.step:hover .num{color:var(--acc);}
.step h3{font-size:1.12rem;margin-bottom:10px;}
.step p{color:var(--muted);font-size:0.94rem;}
.steps-hint{margin-top:44px;font-size:1.05rem;}
.steps-hint b{border-bottom:2px solid var(--acc);}

/* ---------- 05 Projekte ---------- */
.proj-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;}
.proj-card{
  border:1px solid var(--line);display:flex;flex-direction:column;
  border-radius:var(--rad);overflow:hidden;transition:border-color .18s ease;
}
.proj-card:hover{border-color:var(--acc);}
.proj-card > img,.proj-card > video{width:100%;height:170px;object-fit:cover;display:block;}
.proj-card > img.pos-low{object-position:center 30%;}
.proj-body{padding:30px 32px 34px;display:flex;flex-direction:column;flex:1;}
.proj-body .branche{
  font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--dim);margin-bottom:16px;
}
.proj-body h3{font-size:1.3rem;letter-spacing:-0.01em;line-height:1.3;margin-bottom:14px;}
.proj-body p{color:var(--muted);font-size:0.95rem;flex:1;}
.proj-metric{
  margin-top:26px;padding-top:20px;border-top:1px solid var(--line);
  font-family:'Newsreader',Georgia,serif;font-style:italic;font-size:1.2rem;color:var(--acc);
}
.proj-note{margin-top:36px;font-size:0.88rem;color:var(--dim);}

/* ---------- 06 Ueber uns ---------- */
.about{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:48px;align-items:start;}
.about-photo{position:relative;}
.about-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--rad);display:block;}
.about-photo .badge-dark{left:14px;bottom:14px;background:rgba(20,21,24,0.85);padding:9px 14px;font-size:0.74rem;}
.about-quote{
  font-family:'Newsreader',Georgia,serif;font-style:italic;font-weight:400;
  font-size:clamp(1.4rem,2.3vw,1.9rem);line-height:1.35;
}
.about-quote span{color:var(--acc);}
.about-text p{color:var(--muted);font-size:1rem;margin-bottom:18px;}
.about-text p:last-child{margin-bottom:0;}
.about-text b{color:var(--ink);}

/* ---------- 07 FAQ ---------- */
.faq{max-width:840px;}
.faq details{border-top:1px solid var(--line);}
.faq details:last-child{border-bottom:1px solid var(--line);}
.faq summary{
  cursor:pointer;list-style:none;padding:26px 44px 26px 0;
  font-size:1.18rem;font-weight:700;letter-spacing:-0.01em;position:relative;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary i{
  position:absolute;right:6px;top:26px;color:var(--acc);
  font-style:normal;font-weight:400;font-size:1.5rem;line-height:1;
  transition:transform .2s ease;display:inline-block;
}
.faq details[open] summary i{transform:rotate(45deg);}
.faq details p{padding:0 44px 28px 0;color:var(--muted);font-size:1rem;}

/* ---------- 08 Kontakt ---------- */
.kontakt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:64px;}
.kontakt-info p{color:var(--dark-text);font-size:1.02rem;margin-bottom:24px;}
.kontakt-direct{border-top:1px solid var(--dark-line);padding-top:28px;display:flex;flex-direction:column;gap:18px;}
.kontakt-direct .k{font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--dim);margin-bottom:4px;}
.kontakt-direct a{color:var(--acc-lt);}
.kontakt-direct span{color:var(--dark-text);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.field{margin-bottom:18px;}
.field label{
  display:block;font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--dim);margin-bottom:7px;
}
.field input,.field textarea{
  width:100%;background:#212328;border:1px solid #3a3d43;color:var(--paper);
  padding:13px 15px;font-size:1rem;font-family:inherit;border-radius:var(--rad);
}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--acc);}
.field textarea{min-height:120px;resize:vertical;}
.form-note{margin-top:16px;font-size:0.84rem;color:var(--dim);}
.form-note a{color:var(--acc-lt);}
.form-ok{
  display:none;background:#1c2f2b;border:1px solid var(--acc);color:#c9e6df;
  padding:16px 20px;margin-top:18px;font-size:0.95rem;border-radius:var(--rad);
}

/* ---------- Footer ---------- */
.site-foot{background:var(--dark);color:var(--dim);padding:32px 0;border-top:1px solid var(--dark-line);}
.site-foot .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;font-size:0.88rem;}
.site-foot nav{display:flex;gap:22px;}
.site-foot nav a{color:var(--dark-text);}
.site-foot nav a:hover{color:#fff;}

/* ---------- Mobil ---------- */
@media(max-width:900px){
  .sec > .wrap{padding:64px 24px;}
  .wrap{padding:0 24px;}
  .hero .wrap{padding:56px 24px 64px;gap:44px;}
  .sec-intro{margin-left:0;}
  .sec-head{gap:16px;}
  .leist-row{grid-template-columns:1fr;gap:10px;padding:26px 0;}
  .quote-block .txt{padding:44px 28px;}
  .betrieb-photo{min-height:240px;}
  .steps{border-left:none;border-top:1px solid var(--line);}
  .step{border-right:none;border-bottom:1px solid var(--line);padding:24px 0 26px;}
  .about{gap:36px;}
}
@media(max-width:760px){
  .site-nav a:not(.nav-cta){display:none;}
  .site-nav{gap:0;}
  .hero-media{padding:0 12px 12px 0;order:-1;}
  .hero-media .badge-dark{left:0;bottom:26px;font-size:0.7rem;padding:9px 13px;}
  .hero h1{font-size:clamp(2rem,8vw,2.7rem);}
  .hero-trust{gap:8px 20px;}
  .form-row{grid-template-columns:1fr;gap:0;}
  .kontakt-grid{gap:44px;}
  .problem-grid article{padding:30px 24px;}
  .proj-body{padding:26px 24px 30px;}
  .faq summary{font-size:1.06rem;padding-right:36px;}
  .note-box{padding:22px 24px;}
  .betrieb-card,.betrieb-card.is-highlight{padding:32px 26px;}
  .site-foot .wrap{flex-direction:column;align-items:flex-start;gap:16px;}
}
