:root{color-scheme:light;--ink:#1d2a30;--green:#2f990c;--orange:#f47316;--muted:#4d565d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(125deg,#f6f7f5,#e8ece9 70%,#f6f7f5);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px 24px}a{color:inherit}.site-shell{width:min(1450px,100%);background:#fff;border-radius:20px;box-shadow:0 22px 70px #25312e28;overflow:hidden}.hero{display:grid;grid-template-columns:55% 45%;min-height:550px;position:relative;overflow:hidden;background:linear-gradient(100deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.93) 48%,rgba(255,255,255,.50) 100%),url("assets/office-background.png") center right/cover no-repeat}.hero-copy{position:relative;z-index:2;padding:56px 0 25px 65px}.brand{display:block;width:min(510px,90%)}.brand img{width:100%;height:auto;display:block}.intro{margin-top:80px}.intro h1{font-size:clamp(30px,3.1vw,47px);letter-spacing:-1.2px;line-height:1.18;margin:0 0 22px;font-weight:800}.intro h1 span{color:var(--orange)}.intro p{font-size:clamp(17px,1.4vw,21px);line-height:1.55;max-width:620px;margin:0 0 32px}.contact-actions{display:flex;gap:18px;align-items:stretch}.contact{min-height:77px;display:flex;gap:17px;align-items:center;text-decoration:none;padding:15px 22px;border-radius:13px;box-shadow:0 8px 22px #18272019;white-space:nowrap;transition:transform .2s,box-shadow .2s}.contact:hover{transform:translateY(-3px);box-shadow:0 12px 28px #18272028}.contact svg{width:36px;height:36px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.contact strong{display:block;font-size:19px}.contact small{display:block;margin-top:3px;font-size:14px}.contact-mail{background:linear-gradient(135deg,#45a915,#238200);color:#fff;min-width:260px}.contact-phone{background:#fff;min-width:285px}.contact-phone svg{color:var(--green)}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;padding:70px 25px 10px 0}.hero-art img{position:relative;z-index:1;width:100%;max-width:590px;filter:drop-shadow(0 24px 17px rgba(0,0,0,.18))}.art-glow{position:absolute;inset:8% 0 4% 0;background:radial-gradient(ellipse,rgba(235,238,228,.38) 0%,transparent 68%)}.services{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:26px 35px 50px;gap:0;background:linear-gradient(#fff,#fcfcfc)}.service{text-align:center;padding:0 12px;position:relative}.service+.service:before{content:"";position:absolute;left:0;top:24px;height:75%;width:1px;background:#e5e7e7}.service-icon{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 14px;border:1px solid #e6ebe6;border-radius:18px;background:linear-gradient(140deg,#fff,#f8faf8);box-shadow:0 5px 13px #19272016;color:var(--green)}.service-icon svg{width:39px;height:39px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.service h2{font-size:15px;margin:0 0 10px;font-weight:700;overflow-wrap:anywhere}.service p{font-size:13px;line-height:1.55;color:var(--muted);margin:0}.footer{background:#1d2b30;color:#e1e5e5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:25px 44px;font-size:13px}.footer nav{display:flex;align-items:center;gap:15px}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.sep{color:#67af42;margin:0 9px}.legal{padding:48px 65px;min-height:420px;max-width:850px}.legal h1{font-size:34px}.legal p,.legal li{line-height:1.7}.legal a{color:#237c12}.notice{padding:18px 20px;border-left:4px solid var(--orange);background:#fff7f0}.legal-header{padding:25px 65px 0}.legal-header img{max-width:280px;width:100%;height:auto}
@media(max-width:1200px){.hero-copy{padding-left:42px}.intro{margin-top:65px}.contact-actions{flex-wrap:wrap}.hero-art{padding-top:90px}.services{padding-inline:18px}.service{padding-inline:7px}.service h2{font-size:13px}}
@media(max-width:800px){body{padding:0;display:block;background:#fff}.site-shell{border-radius:0;box-shadow:none}.hero{display:flex;flex-direction:column;min-height:0;background:linear-gradient(140deg,#fff,#fafbf9)}.hero-copy{padding:34px 22px 8px}.brand{width:min(360px,100%)}.intro{margin-top:40px}.intro h1{font-size:clamp(26px,5.3vw,36px);letter-spacing:-.6px;margin-bottom:16px}.intro p{font-size:16px;line-height:1.5;margin-bottom:22px}.contact-actions{display:grid;grid-template-columns:1fr;gap:10px}.contact{min-height:64px;justify-content:center;min-width:0;padding:12px 15px}.contact strong{font-size:17px}.contact svg{width:29px;height:29px}.hero-art{display:none}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:22px 15px 30px}.service{border:1px solid #edf0ed;border-radius:12px;padding:15px 8px;background:#fff;box-shadow:0 3px 12px #25312e0b}.service+.service:before{display:none}.service-icon{width:53px;height:53px;border-radius:13px;margin-bottom:9px}.service-icon svg{width:30px;height:30px}.service h2{font-size:12px;margin-bottom:6px}.service p{font-size:11px;line-height:1.45}.footer{padding:20px 12px;flex-direction:column;text-align:center;gap:14px;font-size:12px}.legal{padding:25px 22px}.legal-header{padding:20px 22px 0}}
@media(max-width:350px){.service h2{font-size:11px}.contact strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.contact{transition:none}}

/* Kompaktere Desktopansicht: mehr Platz ohne unnötigen Scrollbalken */
@media (min-width: 801px) {
  body { padding: 12px 20px; }
  .hero { min-height: 0; }
  .hero-copy { padding-top: 30px; padding-bottom: 25px; }
  .brand { width: min(450px, 90%); }
  .intro { margin-top: 43px; }
  .intro h1 { margin-bottom: 15px; }
  .intro p { margin-bottom: 24px; line-height: 1.45; }
  .contact { min-height: 64px; padding-top: 10px; padding-bottom: 10px; }
  .hero-art { padding-top: 40px; padding-bottom: 15px; }
  .hero-art img { max-width: 490px; width: 88%; }
  .services { padding-top: 17px; padding-bottom: 25px; }
  .service-icon { width: 65px; height: 65px; margin-bottom: 9px; }
  .service-icon svg { width: 34px; height: 34px; }
  .service h2 { margin-bottom: 6px; }
  .footer { padding-top: 17px; padding-bottom: 17px; }
}
/* Auf kleineren Desktopfenstern bleibt normales Scrollen möglich. */
@media (min-width: 801px) and (max-height: 740px) {
  body { padding-top: 8px; padding-bottom: 8px; }
  .hero-copy { padding-top: 22px; padding-bottom: 17px; }
  .brand { width: min(410px, 90%); }
  .intro { margin-top: 30px; }
  .intro h1 { font-size: clamp(28px, 2.7vw, 41px); }
  .intro p { font-size: clamp(15px, 1.2vw, 18px); margin-bottom: 18px; }
  .services { padding-top: 13px; padding-bottom: 18px; }
  .service-icon { width: 58px; height: 58px; }
  .footer { padding-top: 13px; padding-bottom: 13px; }
}
