*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#080808;color:#f4f4f4;font-family:Arial,Helvetica,sans-serif}.site-header{height:78px;border-bottom:1px solid #292929;display:flex;align-items:center;padding:0 32px;gap:36px;background:#050505;position:sticky;top:0;z-index:5}.logo{color:#f5f5f5;text-decoration:none;display:flex;flex-direction:column;line-height:.9;min-width:165px}.logo span{font-weight:900;font-size:31px;letter-spacing:-1.5px}.logo b,.eyebrow,.section-label,.num{color:#ff9700}.logo small{color:#ff9700;font-size:12px;font-weight:800;margin-top:7px;letter-spacing:.4px}.site-header nav{display:flex;gap:30px;margin-left:auto}.site-header nav a{color:#eee;text-decoration:none;font-weight:700;font-size:13px;display:flex;align-items:center}.site-header nav a.active{color:#ff9700;position:relative}.site-header nav a.active::after{content:'';position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);width:44px;height:3px;background:#ff9700;border-radius:3px}.chev{font-size:18px;margin-left:5px}.btn{display:inline-block;background:#ff9700;color:#080808;text-decoration:none;font-weight:900;border-radius:5px;padding:15px 20px;font-size:13px}.top-btn{white-space:nowrap;margin-left:30px}.hero{min-height:465px;display:grid;grid-template-columns:48% 52%;position:relative;overflow:hidden;border-bottom:1px solid #292929}.hero-copy{padding:82px 30px 60px 38px;position:relative;z-index:2;background:linear-gradient(90deg,#080808 0%,#080808 82%,rgba(8,8,8,.5) 100%)}.eyebrow{font-size:13px;font-weight:900;letter-spacing:1.5px;margin-bottom:20px}.hero h1{font-size:49px;line-height:1.08;margin:0 0 23px;letter-spacing:-2px}.hero p{font-size:16px;line-height:1.5;margin-bottom:25px}.hero-image{overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.areas{padding:14px 32px 22px}.section-label{text-align:center;font-size:13px;font-weight:900;letter-spacing:1.5px;margin-top:2px}.areas h2{text-align:center;font-size:28px;margin:6px 0 13px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{border:1px solid #3b3b3b;border-radius:5px;padding:22px 25px 19px;background:#0b0b0b;min-height:258px;position:relative}.icon{font-size:45px;color:#ff9700;float:left;margin-right:15px;line-height:1}.num{font-size:17px;padding-top:8px}.card h3{font-size:19px;margin:20px 0 13px}.card p{font-size:16px;line-height:1.55;color:#ddd;min-height:75px}.outline-btn{display:block;border:1px solid #d56e00;color:#ff9700;text-decoration:none;text-align:center;padding:12px 7px;border-radius:4px;font-size:12px;font-weight:900}button.outline-btn{width:100%;background:transparent;cursor:pointer;font-family:inherit}.idea{margin:0 32px 25px;border:1px solid #333;border-radius:5px;padding:20px 30px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;background:#0b0b0b}.request-form-wrap{grid-column:1/-1;border-top:1px solid #333;padding-top:24px;margin-top:4px}.request-form-wrap h3{font-size:25px;margin:7px 0}.request-intro{color:#bbb;margin:0 0 20px;line-height:1.5;max-width:760px}.request-form{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.request-form label{display:block;color:#eee;font-size:14px;font-weight:700}.request-form input,.request-form select,.request-form textarea{width:100%;margin-top:7px;border:1px solid #444;border-radius:5px;background:#111;color:#f4f4f4;padding:12px 13px;font:inherit;font-weight:400;outline:none}.request-form input:focus,.request-form select:focus,.request-form textarea:focus{border-color:#ff9700}.request-form textarea{resize:vertical;min-height:130px}.request-form>label:not(.check){margin-top:16px}.request-form .check{display:flex;align-items:flex-start;gap:9px;margin:16px 0 18px;color:#bbb;font-weight:400;line-height:1.4}.request-form .check input{width:auto;margin:2px 0 0;accent-color:#ff9700}.form-status{margin:12px 0 0;color:#ff9700;font-size:14px}.idea-icon{color:#ff9700;font-size:46px}.idea h3{font-size:21px;margin:0 0 8px}.idea p{margin:0;color:#ddd}.idea .btn{margin-left:auto}.contact{padding:35px 38px 50px;border-top:1px solid #252525}.contact .section-label{text-align:left}.contact h2{font-size:30px;margin:10px 0}.contact a{color:#ff9700}footer{border-top:1px solid #292929;padding:22px 38px;display:flex;align-items:center;justify-content:space-between;color:#aaa;font-size:14px}footer a{color:#ff9700;text-decoration:none}footer a:hover{text-decoration:underline}footer .logo{min-width:auto}footer .logo span{font-size:27px}footer .logo small{font-size:10px}@media(max-width:900px){.site-header{gap:12px;padding:0 16px}.site-header nav{gap:12px}.top-btn{display:none}.hero{grid-template-columns:1fr}.hero-copy{background:#080808}.hero-image{height:280px}.cards{grid-template-columns:1fr 1fr}.idea{grid-template-columns:auto 1fr}.idea>.btn{grid-column:1/-1;justify-self:start}.form-grid{grid-template-columns:1fr}footer{flex-direction:column;gap:15px;text-align:center}}@media(max-width:600px){.hero h1{font-size:39px}.cards{grid-template-columns:1fr}.areas{padding:14px 16px}.idea{margin:0 16px 20px;padding:18px}.contact{padding:30px 16px}footer{padding:20px 16px}}

.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.gallery figure{margin:0;background:#0b0b0b;border:1px solid #333;border-radius:6px;overflow:hidden}.gallery img{width:100%;height:260px;object-fit:cover;display:block}.gallery figcaption{padding:10px 13px;color:#ddd;font-size:14px}.gallery-empty{border:1px dashed #555;border-radius:6px;padding:30px;color:#aaa;margin-top:30px}@media(max-width:800px){.gallery{grid-template-columns:1fr 1fr}}@media(max-width:550px){.gallery{grid-template-columns:1fr}}


/* Startseiten-Produktbild */
.hero-showcase {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  min-height: 520px;
}
.hero-showcase img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  display: block;
}
.hero-image-caption {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  padding: 14px 18px;
  background: rgba(0,0,0,.72);
  color: #f2d27b;
  font-size: 11px;
  letter-spacing: 1.5px;
  text-align: center;
}
@media (max-width: 800px) {
  .hero-showcase, .hero-showcase img { min-height: 360px; }
}

/* Antwort- und Rechtstext-Overlay */
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.78);display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}
.overlay[hidden]{display:none}
.overlay-box{position:relative;background:#0b0b0b;border:2px solid #ff9700;border-radius:6px;padding:46px 36px 34px;max-width:480px;width:100%;color:#f4f4f4;box-shadow:0 10px 40px rgba(0,0,0,.6)}
.overlay-box.large{max-width:720px;max-height:82vh;display:flex;flex-direction:column}
.overlay-content{font-size:15px;line-height:1.65;color:#ddd}
.overlay-content h3{color:#ff9700;margin:0 0 14px;font-size:22px}
.overlay-content h4{color:#ff9700;margin:20px 0 6px;font-size:15px}
.overlay-content p{margin:0 0 12px}
.overlay-box.large .overlay-content{flex:1;min-height:0;overflow-y:auto;padding-right:14px;margin-right:-14px}
.overlay-close{position:absolute;top:8px;right:10px;background:none;border:none;color:#ff9700;font-size:26px;line-height:1;cursor:pointer;padding:8px}
@media(max-width:600px){.overlay-box{padding:44px 20px 24px}}

/* Kontaktdaten: erst nach Sichtbarkeit im Viewport eingeblendet (Spam-Schutz) */
.contact-reveal{min-height:1.6em}
.contact-placeholder{color:#888}

/* Honeypot-Feld: für Menschen unsichtbar, aber für einfache Bots erreichbar */
.hp-field{position:absolute;left:-5000px;top:auto;width:1px;height:1px;overflow:hidden}

/* Beispielbilder-Galerie im Overlay */
.gallery-loading{color:#aaa}
