:root{--orange:#4d62ad;--paper:#f5f5f3}
.hero{min-height:580px}
.hero-copy{max-width:780px}
.hero-copy h1{font-size:clamp(48px,6.4vw,88px);line-height:.96;letter-spacing:-3px}
.shade{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.08))}
.intro>p:not(.eyebrow){font-size:22px}
.contact{background:#4d62ad}
.btn{background:#4d62ad}
@media(max-width:800px){.hero-copy h1{font-size:46px;letter-spacing:-2px}}
.scope-note{margin-top:30px;padding-top:20px;border-top:1px solid #ddd;color:#666;font-size:14px!important;line-height:1.55!important}
.facts{grid-template-columns:repeat(3,1fr);max-width:none}
@media(max-width:800px){.facts{grid-template-columns:1fr}}
.cards h3{margin-top:4px}
.cards .paving-card{grid-column:1/-1;grid-template-columns:30% 70%;min-height:290px}
@media(max-width:800px){.cards .paving-card{grid-template-columns:1fr}.cards .paving-card img{height:230px}}
.planning-section{display:grid;grid-template-columns:minmax(300px,42%) 1fr;max-width:1300px;margin:0 auto;padding:85px 8vw;gap:7vw;align-items:center;scroll-margin-top:95px}
.planning-image{height:430px;overflow:hidden}
.planning-image img{width:100%;height:100%;object-fit:cover}
.planning-copy h2{font-size:clamp(34px,4vw,50px);letter-spacing:-1.5px;margin-bottom:22px}
.planning-copy>p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:720px}
.planning-copy ul{margin:25px 0;padding-left:20px;line-height:1.8;font-size:17px}
.planning-copy .planning-note{font-size:13px!important;line-height:1.55!important;color:#666;border-top:1px solid #ccc;padding-top:17px;margin-top:28px;max-width:760px}
@media(max-width:800px){.planning-section{grid-template-columns:1fr;padding:70px 6vw;gap:38px}.planning-image{height:310px}.planning-copy h2{font-size:36px}.cards .paving-card{grid-column:auto}}
.planning-compact{grid-template-columns:42% 58%}
.planning-compact>img{min-height:520px}
.planning-compact>div{padding:75px 8vw 65px 6vw}
.planning-compact h2{font-size:clamp(34px,4vw,52px)}
@media(max-width:800px){.planning-compact{grid-template-columns:1fr}.planning-compact>img{min-height:320px}.planning-compact>div{padding:55px 6vw}}
.projects-intro{font-size:19px;color:#666;max-width:700px;line-height:1.55}
.project-list{margin-top:55px;display:grid;gap:70px}
.project{border-top:1px solid #c9c9c9;padding-top:28px;display:grid;grid-template-rows:auto auto;min-width:0}
.project-copy{display:block;margin:0 0 25px;max-width:850px;min-width:0}
.project-copy span{display:block;color:#4d62ad;font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin:0 0 10px}

/* Datensparsames Kontaktformular */
.contact{align-items:start}
.contact-copy .contact-box{margin-top:38px}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px;background:#fff;color:#171a1d;padding:34px}
.form-row{display:flex;flex-direction:column;gap:8px}
.form-wide{grid-column:1/-1}
.contact-form label{font-size:14px;font-weight:700}
.contact-form input,.contact-form textarea{width:100%;border:1px solid #a9a9a9;background:#fff;color:#171a1d;font:inherit;padding:13px 14px;border-radius:0}
.contact-form input:focus,.contact-form textarea:focus{outline:3px solid #4d62ad55;border-color:#4d62ad}
.contact-form textarea{resize:vertical;min-height:140px}
.privacy-check{display:flex;align-items:flex-start;gap:10px}
.privacy-check input{width:auto;margin-top:3px}
.privacy-check label{font-weight:400;line-height:1.45}
.privacy-check a{color:#344b9b}
.form-note,.form-status{font-size:13px!important;line-height:1.45!important;margin:0;color:#555}
.form-submit{border:0;background:#4d62ad;color:#fff;padding:15px 22px;font:inherit;font-weight:800;cursor:pointer}
.form-submit:hover{background:#394b8b}
.form-status{margin-top:12px;color:#171a1d}
@media(max-width:800px){.contact-form{grid-template-columns:1fr;padding:25px}.form-wide{grid-column:auto}.contact-copy .contact-box{margin-top:30px}}

/* Maschinenpark */
.fleet{padding:110px 8vw;max-width:1500px;margin:auto}
.fleet-head{max-width:900px}
.fleet-head>p:not(.eyebrow){font-size:19px;line-height:1.65;max-width:850px}
.fleet-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:310px 310px;gap:12px;margin-top:50px}
.fleet-grid figure{margin:0;position:relative;overflow:hidden;background:#171a1d}
.fleet-tech{display:flex;flex-direction:column;justify-content:flex-end;padding:28px;background:#263242;color:#fff}
.fleet-tech-kicker{margin:0 0 10px;color:#aebee8;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.fleet-tech h3{margin:0 0 9px;font-size:25px;line-height:1.1}
.fleet-tech p:last-child{margin:0;max-width:330px;color:#d9dee7;font-size:15px;line-height:1.45}
.fleet-grid .fleet-main{grid-row:1/3}
.fleet-grid>figure:last-child{grid-column:2/4}
.fleet-grid img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.fleet-grid figure:hover img{transform:scale(1.025)}
.fleet-grid figcaption{font-size:15px;line-height:1.35}
.machine-tech{margin-top:80px;padding-top:65px;border-top:1px solid #d7dadd}
.machine-tech-head{max-width:820px}
.machine-tech-head h3{margin:8px 0 18px;font-size:clamp(30px,3.2vw,48px);line-height:1.08}
.machine-tech-head>p:last-child{max-width:760px;font-size:18px;line-height:1.6}
.machine-tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px}
.machine-tech-grid figure{margin:0;background:#f1f2f3}
.machine-tech-grid img{display:block;width:100%;height:290px;object-fit:cover}
.machine-tech-grid figure:first-child img{object-position:center 68%}
.machine-tech-grid figcaption{position:static;padding:22px 24px;background:#f1f2f3;color:#171a1d}
.machine-tech-grid figcaption strong,.machine-tech-grid figcaption span{display:block}
.machine-tech-grid figcaption strong{margin-bottom:7px;font-size:18px}
.machine-tech-grid figcaption span{color:#5d6369;font-size:15px;line-height:1.45}
.leitbild{position:relative;height:500px;overflow:hidden;color:#fff}
.leitbild>img{width:100%;height:100%;object-fit:cover;object-position:center 58%}
.leitbild-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,16,20,.78),rgba(12,16,20,.28) 65%,rgba(12,16,20,.12))}
.leitbild-copy{position:absolute;left:8vw;right:8vw;top:50%;transform:translateY(-50%);max-width:950px}
.leitbild-copy .eyebrow{color:#b8c5ef}
.leitbild-copy h2{margin:16px 0 22px;font-size:clamp(40px,5vw,68px);line-height:1.02}
.leitbild-copy>p:last-child{max-width:820px;margin:0;font-size:19px;line-height:1.6}

/* FAQ */
.faq{padding:100px 8vw;max-width:1250px;margin:auto}
.faq h2{max-width:820px}
.faq-list{margin-top:45px;border-top:1px solid #bbb}
.faq details{border-bottom:1px solid #bbb}
.faq summary{cursor:pointer;list-style:none;font-size:20px;font-weight:800;padding:24px 48px 24px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:4px;top:19px;color:#4d62ad;font-size:28px;font-weight:400}
.faq details[open] summary::after{content:'–'}
.faq details p{max-width:920px;margin:0;padding:0 50px 25px 0;color:#555;font-size:17px;line-height:1.65}

@media(max-width:800px){.fleet,.faq{padding:75px 6vw}.fleet-grid{grid-template-columns:1fr 1fr;grid-template-rows:320px 230px 230px}.fleet-grid .fleet-main{grid-column:1/3;grid-row:auto}.fleet-grid>figure:last-child{grid-column:1/3}.machine-tech{margin-top:60px;padding-top:50px}.machine-tech-grid{grid-template-columns:1fr}.machine-tech-grid img{height:260px}.leitbild{height:520px}.leitbild-copy{left:6vw;right:6vw}.leitbild-copy h2{font-size:40px}.leitbild-copy>p:last-child{font-size:17px}.faq summary{font-size:18px;padding-right:38px}.faq details p{padding-right:10px}}
.project-copy h3{display:block;font-size:27px;line-height:1.2;margin:0 0 10px;overflow-wrap:anywhere}
.project-copy p{display:block;color:#666;line-height:1.55;margin:0;max-width:760px;overflow-wrap:anywhere}
.project-images{display:grid;gap:10px;height:310px;min-height:0;overflow:hidden}
.project-images img{display:block;width:100%;height:310px;max-height:310px;object-fit:cover;min-width:0;min-height:0;overflow:hidden}
.project-images.two{grid-template-columns:repeat(2,1fr)}
.project-images.three{grid-template-columns:repeat(3,1fr)}
.project-images.four{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.project-images.four{grid-template-columns:repeat(2,1fr);height:530px}.project-images.four img{height:260px;max-height:260px}}
@media(max-width:800px){.project-list{gap:50px}.project-images{height:auto!important;overflow:visible;grid-template-columns:1fr 1fr!important}.project-images img{height:210px;max-height:210px}.project-images.three img:first-child{grid-column:span 2}}
@media(max-width:520px){.project-images{grid-template-columns:1fr!important}.project-images img,.project-images.three img:first-child{height:225px;max-height:225px;grid-column:auto}}
