:root{--o:#ef5b0c;--od:#c94700;--d:#171b1f;--d2:#22282e;--ink:#1d2329;--muted:#68727a;--line:#e4e7e9;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.55}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}
.header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - var(--max))/2));background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #eee}
.brand img{width:220px;height:74px;object-fit:contain;object-position:left center}.header nav{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:700}.header nav a:hover{color:var(--o)}.cta{background:var(--o);color:#fff!important;padding:13px 17px;border-radius:5px}.menu{display:none;background:none;border:0;font-size:28px}
.hero{min-height:610px;position:relative;overflow:hidden;color:#fff;background-image:radial-gradient(circle at 80% 30%,rgba(239,91,12,.16),transparent 28%),linear-gradient(135deg,rgba(17,21,25,.96),rgba(34,43,50,.84) 60%,rgba(15,18,20,.93)),url("assets/site-bg-hero.webp");background-size:auto,auto,cover;background-position:center,center,center 54%;background-repeat:no-repeat;display:grid;grid-template-columns:1.25fr .75fr;gap:58px;align-items:center;padding:80px max(24px,calc((100vw - var(--max))/2))}
.grid{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px);background-size:42px 42px;transform:perspective(500px) rotateX(57deg) scale(1.4);transform-origin:bottom center}
.hero-copy,.hero-card{position:relative;z-index:2}.kicker{display:block;font-size:12px;letter-spacing:.17em;font-weight:900;color:var(--o);margin-bottom:13px}.hero h1,.section h2{letter-spacing:-.03em}.hero h1{font-size:clamp(42px,6vw,72px);line-height:1.03;margin:0 0 24px}.hero h1 em{font-style:normal;color:var(--o)}.hero-copy>p{font-size:19px;max-width:760px;color:#dfe3e5}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;padding:14px 18px;border-radius:5px;font-weight:800}.primary{background:var(--o);color:#fff}.primary:hover{background:var(--od)}.secondary{border:1px solid rgba(255,255,255,.5);color:#fff}
.hero-card{padding:32px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}.hero-card span{font-size:11px;letter-spacing:.12em;color:#ffb281;font-weight:900}.hero-card strong{display:block;font-size:31px;line-height:1.08;margin:11px 0}.hero-card p{margin:0;color:#cdd4d8}
.section{padding:86px max(24px,calc((100vw - var(--max))/2))}.light{background:#fff}.title{max-width:770px;margin-bottom:38px}.section h2{font-size:clamp(32px,4vw,50px);line-height:1.08;margin:0 0 18px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{border:1px solid var(--line);padding:28px;min-height:235px}.cards b{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid var(--o);color:var(--o);font-size:12px}.cards h3{font-size:21px;margin:24px 0 9px}.cards p{margin:0;color:var(--muted)}
.dark{background-color:var(--d);background-image:linear-gradient(rgba(23,27,31,.94),rgba(23,27,31,.94)),url("assets/site-bg-practice.webp");background-size:cover;background-position:center 48%;background-repeat:no-repeat;color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.dark>div:first-child p{color:#c6cdd1;font-size:17px}.benefits{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #3a4249;border-left:1px solid #3a4249}.benefits article{padding:27px;border-right:1px solid #3a4249;border-bottom:1px solid #3a4249}.benefits h3{margin:0 0 7px}.benefits p{margin:0;color:#b9c0c5}
.stripe{background-color:#f1f2f3;background-image:linear-gradient(90deg,rgba(241,242,243,.99) 0%,rgba(241,242,243,.97) 42%,rgba(241,242,243,.84) 100%),url("assets/site-bg-digital.webp");background-size:cover;background-position:center 50%;background-repeat:no-repeat;border-top:5px solid var(--o);display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.stripe p{font-size:20px;color:#444e55}
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}.contact-intro p{font-size:18px;color:var(--muted)}.contact-card{display:grid;grid-template-columns:190px 1fr;gap:26px;align-items:center;border:1px solid var(--line);border-left:4px solid var(--o);padding:26px;background:#fff}.contact-portrait{width:190px;aspect-ratio:4/5;object-fit:cover;object-position:center 24%;border-radius:6px}.contact-details{display:flex;flex-direction:column;gap:7px}.contact-label{font-size:10px;letter-spacing:.13em;font-weight:900;color:var(--o)}.contact-details strong{font-size:28px;line-height:1.08}.contact-role{font-weight:700;color:#4f5960;margin-bottom:5px}.contact-details a:not(.button){color:var(--o);font-weight:700}.contact-details .button{align-self:flex-start;margin-top:12px}
footer{background:#101417;color:#fff;padding:48px max(24px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:32px;font-size:14px}.footer-logo img{width:190px;height:78px;object-fit:contain;background:#fff;padding:4px}.footer-logo p{color:#c3c9cd}footer strong{display:block;color:#ff9757;text-transform:uppercase;letter-spacing:.08em;font-size:12px;margin-bottom:10px}footer a{display:block;color:#c4cbd0;margin:6px 0}.copy{color:#99a2a9;align-self:end}
.legal{max-width:900px}.legal h1{font-size:50px;margin:0 0 28px}.notice{padding:16px 18px;background:#fff4ed;border-left:4px solid var(--o);margin:20px 0 30px}
@media(max-width:900px){.header nav{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ddd}.header nav.open{display:flex}.menu{display:block}.hero{grid-template-columns:1fr;gap:34px}.cards{grid-template-columns:1fr 1fr}.dark,.stripe,.contact{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.header{height:76px}.brand img{width:180px;height:60px}.header nav{top:76px}.hero{padding-top:44px;min-height:auto}.hero h1{font-size:40px}.hero-copy>p{font-size:17px}.cards{grid-template-columns:1fr}.benefits{grid-template-columns:1fr}footer{grid-template-columns:1fr}}

.downloads{background:#f5f6f7}
.downloads-intro{max-width:780px;margin-bottom:38px}
.downloads-intro>p{font-size:18px;color:var(--muted);margin:0}
.download-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.download-card{position:relative;background:#fff;border:1px solid var(--line);padding:30px;min-height:300px;display:flex;flex-direction:column;align-items:flex-start}
.download-card-featured{border-top:4px solid var(--o);padding-top:27px}
.download-icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;background:#fff4ed;color:var(--o);margin-bottom:22px}
.download-type{font-size:10px;letter-spacing:.13em;font-weight:900;color:#8a4a28;margin-bottom:8px}
.download-card h3{font-size:24px;line-height:1.15;margin:0 0 10px}
.download-card p{color:var(--muted);margin:0 0 25px}
.download-link{margin-top:auto;display:inline-flex;align-items:center;gap:10px;color:var(--o);font-weight:800;border-bottom:1px solid rgba(239,91,12,.35);padding-bottom:3px}
.download-link:hover{color:var(--od);border-color:var(--od)}
.download-link span{font-size:20px;line-height:1}
.downloads-note{font-size:13px;color:#7a8389;margin:20px 0 0}
@media(max-width:700px){.download-grid{grid-template-columns:1fr}.download-card{min-height:auto}}

/* Baustellenfoto-Hintergründe – V1, dezent und mobil optimiert */
@media(max-width:700px){.hero{background-position:center,center,56% 50%}.dark{background-position:62% center}.stripe{background-position:66% center}}

@media(max-width:700px){.contact-card{grid-template-columns:150px 1fr;gap:20px;padding:20px}.contact-portrait{width:150px}}
@media(max-width:520px){.contact-card{grid-template-columns:1fr}.contact-portrait{width:100%;max-width:280px;aspect-ratio:1/1;object-position:center 22%}.contact-details strong{font-size:26px}}

/* Kontaktbereich V2 – saubere Ansprechpartner-Karte */
.contact-card{border-radius:10px;overflow:hidden;box-shadow:0 12px 34px rgba(23,27,31,.08)}
.contact-details>span:not(.contact-label):not(.contact-role){font-size:15px;color:#4f5960}
.contact-details a:not(.button){font-size:15px}
@media(max-width:520px){
  .contact{gap:34px}
  .contact-card{display:grid;grid-template-columns:1fr;gap:0;padding:0;border:1px solid var(--line);border-top:4px solid var(--o);border-left:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}
  .contact-portrait{width:100%;max-width:none;aspect-ratio:4/3;object-fit:cover;object-position:center 24%;border-radius:0}
  .contact-details{padding:22px 22px 24px;gap:8px}
  .contact-label{font-size:10px;letter-spacing:.15em;margin-bottom:2px}
  .contact-details strong{font-size:28px;line-height:1.05}
  .contact-role{font-size:15px;margin-bottom:8px}
  .contact-details>span:not(.contact-label):not(.contact-role){font-size:14px;line-height:1.45}
  .contact-details a:not(.button){font-size:15px;line-height:1.4}
  .contact-details .button{width:100%;justify-content:center;margin-top:14px;padding:15px 18px}
}
