Hier ist die **vollständige, angepasste `style.css`** (nur CSS, inkl. Fixes für größere Höhe, saubere Proportionen und optionalen Expand-Zustand). Sonst keine Änderungen.

```css
/* style.css */
/* ========== Global ========== */
*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{ font-family:'Montserrat',sans-serif; color:#2a2a2a; background:#f4f7fa; line-height:1.6; }
.container{ width:90%; max-width:1200px; margin:0 auto; }

/* ========== Navbar ========== */
.navbar{ background:#ffffff; position:sticky; top:0; z-index:1000; box-shadow:0 2px 4px rgba(0,0,0,.1); }
.nav-container{ display:flex; align-items:center; justify-content:space-between; padding:15px 0; }
.logo{ height:40px; margin-right:8px; vertical-align:middle; }
.brand{ display:flex; align-items:center; font-weight:700; color:#1f2c4d; text-decoration:none; font-size:1.3rem; }
.nav-links{ list-style:none; display:flex; gap:20px; }
.nav-links a{ color:#1f2c4d; text-decoration:none; font-weight:600; transition:color .2s; }
.nav-links a:hover{ color:#2978b5; }
.language-switch a{ padding:6px 12px; border:1px solid #1f2c4d; border-radius:4px; font-weight:600; color:#1f2c4d; text-decoration:none; }
.language-switch a:hover{ background:#1f2c4d; color:#fff; }
.nav-toggle{ display:none; background:transparent; border:1px solid #d0d7e2; padding:8px 10px; border-radius:10px; }
.nav-toggle .bar{ display:block; width:20px; height:2px; margin:4px 0; background:#1f2c4d; border-radius:2px; }
@media (max-width:900px){
  .nav-toggle{ display:inline-flex; align-items:center; justify-content:center; }
  .nav-container{ position:relative; }
  .nav-links{ display:none; position:absolute; top:64px; left:12px; right:12px; background:#fff; padding:12px 14px; border-radius:12px;
    box-shadow:0 12px 28px rgba(0,0,0,.08); border:1px solid rgba(0,0,0,.06); flex-direction:column; gap:6px; }
  .nav-links.open{ display:flex; }
  .nav-links a{ font-size:16px; padding:10px 6px; }
}
@media (max-width:600px){ .nav-links a{ font-size:14px; padding:6px 8px; } .brand{ font-size:16px; } }

/* ========== HERO (Bild steht, Texte links, Punchline 1 Zeile) ========== */
.hero{
  background-image:url('images/hero.jpg');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  background-attachment: fixed;
  min-height: 92vh;
  position: relative;
  color:#fff;
  display:flex; align-items:center; justify-content:center;
}
.hero-overlay{ position:absolute; inset:0; background:rgba(31,44,77,.65); }
.hero-content{ position:relative; z-index:1; max-width:1100px; padding-inline:32px; text-align:left; }
.hero h1{ font-weight:800; font-size:clamp(38px,4.6vw,60px); line-height:1.06; margin-bottom:.35em; }
.hero .hero-h3{ font-size:clamp(16px,2.2vw,22px); font-weight:700; margin:6px 0 14px; }
@media (min-width:1100px){ .hero .hero-h3{ white-space:nowrap; } }
.hero .hero-subtagline{ opacity:.92; }
.hero .cta-buttons{ display:none !important; }
.btn{ text-decoration:none; padding:12px 24px; border-radius:4px; font-weight:600; transition:background-color .3s, color .3s, border-color .3s; }
.btn-primary{ background:#2978b5; color:#fff; } .btn-primary:hover{ background:#1f5a86; }
.btn-secondary{ background:transparent; color:#fff; border:2px solid #fff; } .btn-secondary:hover{ background:rgba(255,255,255,.2); }
@media (max-width:900px){ .hero{ background-attachment:scroll; } }

/* ========== Über uns ========== */
.about{ padding:60px 0; background:#ffffff; }
.about-content{ display:block !important; }
.about-text{ max-width:none !important; width:100% !important; margin:0 !important; text-align:left !important; }
.about-text p{ margin-bottom:15px; }

/* ========== Section-Headings ========== */
.about h2, .services h2, .projects h2, .contact h2{
  text-align:left; color:#2978b5; font-size:2rem; margin-bottom:28px;
}

/* ========== Kachel-Layout (Leistungen & Branchen) ========== */
.services{ padding:60px 0; background:#f4f7fa; }
.projects{ padding:60px 0; background:#fff; }

.services-grid{ display:flex; flex-wrap:wrap; gap:30px; justify-content:center; }

.service-card{
  display:flex; flex-direction:column; text-decoration:none; color:inherit;
  background:#fff; border-radius:10px; overflow:hidden; border:1px solid #e7edf5;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
  flex:1 1 300px; max-width:360px;
  transition: transform .3s ease, box-shadow .3s ease, background-color .3s ease, border-color .2s ease;
}
.service-card img{ width:100%; height:200px; object-fit:cover; display:block; }
.card-content{ padding:20px 22px; }
.service-card h3{ margin-bottom:10px; color:#1f2c4d; font-size:1.25rem; transition:color .2s ease; }
.service-card p{ font-size:.95rem; color:#333; }
.service-card:hover{ transform:translateY(-8px); box-shadow:0 12px 24px rgba(0,0,0,.15); background:#f0f7fc; border-color:#f4f7fa; }
.service-card:hover h3{ color:#2978b5; }

/* ========== Kontakt ========== */
.contact{ padding:60px 0; background:#f4f7fa; }
.contact-container{ display:flex; flex-direction:column; gap:40px; }
.contact-details ul{ list-style:none; margin-bottom:15px; }
.contact-details li{ margin-bottom:8px; }
.hours li{ margin-bottom:4px; }
.form-group{ margin-bottom:15px; }
.form-group label{ display:block; margin-bottom:6px; font-weight:600; }
.form-group input, .form-group textarea, .form-group select{ width:100%; padding:10px; border:1px solid #ccc; border-radius:4px; font-size:1rem; font-family:'Montserrat',sans-serif; }
.form-group textarea{ resize:vertical; }
.form-row{ display:flex; gap:15px; }
.form-row .form-group{ flex:1; }
@media (max-width:600px){ .form-row{ flex-direction:column; } }
.form-group.checkbox{ display:flex; align-items:flex-start; gap:.6rem; margin-bottom:12px; }
.form-group.checkbox input[type="checkbox"]{ width:24px; height:24px; margin-top:2px; }
.form-group.checkbox label{ font-weight:normal; font-size:.9rem; line-height:1.4; }
.contact-form button{ padding:12px 24px; font-size:1rem; border:none; border-radius:4px; background:#2978b5; color:#fff; cursor:pointer; transition:background-color .3s; }
.contact-form button:hover{ background:#1f5a86; }

/* ========== Footer ========== */
.footer{ background:#1f2c4d; color:#fff; padding:20px 0; text-align:center; }
.footer p{ font-size:.9rem; }

/* ========== Responsive Tweaks ========== */
@media (max-width:800px){
  .services-grid{ gap:20px; }
  .service-card{ max-width:100%; }
}

/* ========== WhatsApp Button ========== */
.whatsapp-btn{
  position:fixed; right:20px; bottom:20px; display:inline-flex; align-items:center; justify-content:center;
  width:56px; height:56px; border-radius:50%; box-shadow:0 6px 20px rgba(0,0,0,.2);
  background:#25D366; color:#fff; font:bold 20px/1 sans-serif; text-decoration:none; z-index:1000;
  transition: transform .3s ease, background-color .3s ease;
}
.whatsapp-btn:hover{ transform:translateY(-4px); background:#128C7E; }

