/*
Theme Name: BauProjekt Direkt
Theme URI: https://bauprojekt-direkt.de
Author: BauProjekt Direkt
Description: Maßgeschneidertes, performanceorientiertes Corporate Theme.
Version: 2.6.2
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: bpd
*/

:root{--ink:#080d11;--ink2:#10171d;--card:#151c21;--gold:#c59a52;--gold2:#d7b56d;--paper:#f4f2ed;--white:#fff;--muted:#a8adb2;--line:rgba(255,255,255,.1);--shadow:0 24px 70px rgba(0,0,0,.3);--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.eyebrow{margin:0 0 12px;color:var(--gold2);font-size:.75rem;font-weight:700;letter-spacing:.19em;text-transform:uppercase}.display{margin:0;font-family:var(--serif);font-size:clamp(2.4rem,5vw,5.7rem);font-weight:400;line-height:.92;letter-spacing:-.035em;text-transform:uppercase}.display strong{color:var(--gold2);font-weight:400}.section{padding:110px 0}.section--light{background:var(--paper);color:#11181d}.section--soft{background:var(--ink2)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}.section-head h2{max-width:760px;margin:0;font-family:var(--serif);font-size:clamp(2.2rem,4vw,4rem);font-weight:400;line-height:1.02}.section-head p{max-width:480px;margin:0;color:var(--muted)}.section--light .section-head p{color:#59636a}.btn{display:inline-flex;min-height:52px;align-items:center;justify-content:center;border:1px solid var(--gold);padding:0 25px;background:transparent;color:var(--paper);font-size:.75rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;transition:.25s}.btn:hover,.btn:focus-visible{background:rgba(197,154,82,.1);transform:translateY(-2px)}.btn--gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#080d11}.btn--gold:hover{background:var(--gold2)}.btn--dark{background:var(--ink);color:#fff}.site-header{position:absolute;z-index:30;top:0;left:0;width:100%;border-bottom:1px solid var(--line)}.nav{display:flex;min-height:92px;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand svg{width:42px;height:48px}.brand-word{font-family:var(--serif);font-size:1.08rem;line-height:1;letter-spacing:.13em;text-transform:uppercase}.brand-word small{display:block;margin-top:7px;color:var(--gold2);font:600 .58rem/1 var(--sans);letter-spacing:.46em}.menu{display:flex;align-items:center;gap:25px}.menu a{font-size:.72rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.menu a:hover{color:var(--gold2)}.nav-toggle{display:none;border:0;background:none;color:#fff;font-size:1.6rem}.hero{position:relative;display:grid;min-height:790px;align-items:center;padding:145px 0 90px;background:#071017 url('assets/hero-home.webp') center/cover no-repeat}.hero:before{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,8,11,.96) 0%,rgba(4,8,11,.75) 42%,rgba(4,8,11,.08) 78%),linear-gradient(0deg,rgba(4,8,11,.85),transparent 35%);content:''}.hero-content{position:relative;z-index:1;max-width:760px}.hero .lead{max-width:630px;margin:28px 0;color:#d6d8d7;font-size:1.08rem}.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.trust{position:relative;z-index:3;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0b1217}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:28px 24px;border-right:1px solid var(--line)}.trust-item:last-child{border:0}.trust-item b{display:block;color:var(--gold2);font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}.trust-item span{font-size:.85rem;color:#c5c8ca}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{position:relative;min-height:330px;padding:35px;border:1px solid var(--line);background:linear-gradient(145deg,#172027,#0d1317);transition:.25s}.service-card:hover{border-color:rgba(197,154,82,.7);transform:translateY(-4px)}.service-card .num{color:var(--gold);font-family:var(--serif);font-size:1.4rem}.service-card h3{margin:55px 0 10px;font-family:var(--serif);font-size:1.8rem;font-weight:400}.service-card p{margin:0;color:var(--muted);font-size:.92rem}.service-card .arrow{position:absolute;right:30px;bottom:25px;color:var(--gold2);font-size:1.4rem}.split{display:grid;grid-template-columns:1fr 1fr;min-height:620px}.split-media img{width:100%;height:100%;object-fit:cover}.split-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(30px,7vw,110px)}.split-copy h2{margin:0 0 25px;font-family:var(--serif);font-size:clamp(2.4rem,4vw,4.5rem);font-weight:400;line-height:1}.split-copy p{color:#59636a}.checks{padding:0;list-style:none}.checks li{margin:9px 0}.checks li:before{margin-right:10px;color:var(--gold);content:'✓'}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.step{min-height:250px;padding:30px;background:var(--ink2)}.step b{color:var(--gold);font-family:var(--serif);font-size:2.1rem;font-weight:400}.step h3{margin:35px 0 8px;font-family:var(--serif);font-size:1.5rem;font-weight:400}.step p{margin:0;color:var(--muted);font-size:.88rem}.cta{padding:95px 0;border-block:1px solid rgba(197,154,82,.25);text-align:center;background:radial-gradient(circle at 50% 0,rgba(197,154,82,.16),transparent 50%),var(--ink)}.cta h2{max-width:850px;margin:0 auto 30px;font-family:var(--serif);font-size:clamp(2.4rem,5vw,5rem);font-weight:400;line-height:1}.site-footer{padding:75px 0 20px;background:#05090c}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:50px}.footer-title{margin:0 0 18px;color:var(--gold2);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase}.site-footer p,.site-footer li,.site-footer a{color:#aeb4b8;font-size:.83rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:8px 0}.legal{display:flex;justify-content:space-between;margin-top:55px;padding-top:20px;border-top:1px solid var(--line);font-size:.72rem;color:#727c83}.page-hero{padding:190px 0 90px;background:linear-gradient(120deg,#070d12,#15202a);border-bottom:1px solid var(--line)}.page-hero h1{max-width:850px;margin:0;font-family:var(--serif);font-size:clamp(3rem,6vw,6rem);font-weight:400;line-height:.95}.content{padding:80px 0;background:var(--paper);color:#172027}.content h2,.content h3{font-family:var(--serif);font-weight:400}.content h2{font-size:2.3rem}.content a{color:#7d581f;text-decoration:underline}.modal{position:fixed;z-index:100;inset:0;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(2,5,7,.88);backdrop-filter:blur(8px)}.modal.is-open{display:flex}.modal-dialog{position:relative;width:min(820px,100%);max-height:92vh;overflow:auto;border:1px solid rgba(197,154,82,.35);background:#10171d;box-shadow:var(--shadow)}.modal-head{padding:30px 40px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-family:var(--serif);font-size:2.2rem;font-weight:400}.modal-close{position:absolute;top:22px;right:25px;border:0;background:none;color:#fff;font-size:1.6rem}.form{padding:35px 40px}.progress{height:2px;margin-bottom:30px;background:#263039}.progress span{display:block;width:33%;height:100%;background:var(--gold);transition:.3s}.form-step{display:none}.form-step.active{display:block}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px}.field--full{grid-column:1/-1}.field label{font-size:.74rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.field input,.field textarea,.field select{width:100%;border:1px solid #344049;padding:14px;background:#0b1115;color:#fff;outline:0}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold)}.field textarea{min-height:130px;resize:vertical}.form-actions{display:flex;justify-content:space-between;gap:15px;margin-top:28px}.form-status{margin-top:18px;color:var(--gold2)}.hp{position:absolute!important;left:-10000px!important}.mobile-cta{display:none}.notice{padding:18px;border-left:3px solid var(--gold);background:#e9e4da}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-card{padding:28px;border:1px solid #d8d2c8;background:#fff}.info-card h3{margin-top:0;font-size:1.5rem}.faq details{border-bottom:1px solid #d6d0c5;padding:18px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{color:#59636a}.skip-link{position:fixed;z-index:999;top:-100px;left:10px;padding:10px;background:#fff;color:#000}.skip-link:focus{top:10px}
@media(max-width:980px){.menu{position:fixed;inset:0 0 0 20%;display:none;flex-direction:column;align-items:flex-start;padding:110px 35px;background:#0b1115}.menu.open{display:flex}.menu .btn{width:100%}.nav-toggle{display:block}.services-grid,.cards{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.split{grid-template-columns:1fr}.split-media{min-height:430px}.split-copy{padding:65px 40px}}
@media(max-width:640px){.container{width:min(100% - 28px,1180px)}.nav{min-height:74px}.brand-word{font-size:.88rem}.brand svg{width:34px}.hero{min-height:720px;padding-top:125px;background-position:62% center}.display{font-size:clamp(2.7rem,13vw,4.4rem)}.hero .lead{font-size:.98rem}.btn{width:100%}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid var(--line)}.section{padding:75px 0}.section-head{display:block}.section-head p{margin-top:20px}.services-grid,.cards,.process,.footer-grid{grid-template-columns:1fr}.split-media{min-height:320px}.split-copy{padding:55px 24px}.modal{padding:0}.modal-dialog{width:100%;height:100%;max-height:none}.modal-head,.form{padding:25px 20px}.form-grid{grid-template-columns:1fr}.field--full{grid-column:auto}.mobile-cta{position:fixed;z-index:40;bottom:0;left:0;display:grid;width:100%;grid-template-columns:1fr 1fr;border-top:1px solid var(--gold)}.mobile-cta a,.mobile-cta button{min-height:54px;border:0;background:#0b1115;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.1em}.mobile-cta button{background:var(--gold);color:#080d11}.site-footer{padding-bottom:80px}.legal{display:block}.legal span{display:block;margin-top:8px}}
.mobile-cta a{display:flex;align-items:center;justify-content:center;gap:9px}.mobile-cta a svg{width:18px;height:18px;fill:var(--gold2)}
.form-step>h3{margin:0 0 24px;font-family:var(--serif);font-size:1.65rem;font-weight:400}.form-step-label{margin:-18px 0 22px;color:var(--muted);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.form-hint{margin:18px 0 0;color:var(--muted);font-size:.78rem}.conditional-field[hidden]{display:none}.privacy-field label{display:flex;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;line-height:1.5}.privacy-field input{width:auto;margin-top:5px;flex:0 0 auto}.privacy-field a{color:var(--gold2);text-decoration:underline}.form-step input::placeholder,.form-step textarea::placeholder{color:#7e8990}
.form .progress span{width:25%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.partner-marquee{overflow:hidden;border-bottom:1px solid var(--line);padding:42px 0 24px;background:#0a1116}.partner-marquee-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:24px}.partner-marquee-head .eyebrow{margin-bottom:5px}.partner-marquee-head h2{margin:0;font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.8rem);font-weight:400}.partner-marquee-head>a{color:var(--gold2);font-size:.73rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.partner-marquee-window{position:relative;width:100%;overflow:hidden}.partner-marquee-window:before,.partner-marquee-window:after{position:absolute;z-index:2;top:0;bottom:0;width:12vw;pointer-events:none;content:''}.partner-marquee-window:before{left:0;background:linear-gradient(90deg,#0a1116,transparent)}.partner-marquee-window:after{right:0;background:linear-gradient(-90deg,#0a1116,transparent)}.partner-marquee-track{display:flex;width:max-content;gap:22px;padding:8px 0;animation:bpd-marquee 26s linear infinite}.partner-marquee-window:hover .partner-marquee-track,.partner-marquee-window:focus-within .partner-marquee-track{animation-play-state:paused}.partner-logo-card{display:flex;width:270px;min-height:145px;align-items:center;justify-content:center;gap:20px;border:1px solid rgba(255,255,255,.1);padding:18px 26px;background:#f7f7f5;color:#172027;transition:.25s}.partner-logo-card:hover,.partner-logo-card:focus-visible{border-color:var(--gold);transform:translateY(-3px)}.partner-logo-card img{width:113px;height:99px;object-fit:contain}.partner-logo-card span{max-width:92px;font-size:.66rem;font-weight:800;letter-spacing:.09em;line-height:1.45;text-transform:uppercase}@keyframes bpd-marquee{to{transform:translateX(calc(-292px * 3))}}@media(max-width:640px){.partner-marquee-head{display:block}.partner-marquee-head>a{display:inline-block;margin-top:10px}.partner-logo-card{width:225px;min-height:125px;padding:14px 18px}.partner-logo-card img{width:92px;height:82px}@keyframes bpd-marquee{to{transform:translateX(calc(-247px * 3))}}}@media(prefers-reduced-motion:reduce){.partner-marquee-track{animation:none;transform:none}.partner-marquee-window{overflow-x:auto}.partner-marquee-window:before,.partner-marquee-window:after{display:none}}
.brand-logo{display:block;width:155px;height:auto}.site-footer .brand-logo{width:230px}.consent-brand .brand-logo{width:120px}.consent-brand{align-items:center}.consent-brand h2{max-width:260px}@media(max-width:640px){.brand-logo{width:118px}.site-footer .brand-logo{width:190px}.consent-brand .brand-logo{width:100px}}
.subhero{position:relative;display:grid;min-height:690px;align-items:center;padding:150px 0 85px;background:#081017 var(--subhero) center/cover no-repeat}.subhero:before{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,8,11,.96),rgba(4,8,11,.78) 46%,rgba(4,8,11,.15) 82%),linear-gradient(0deg,rgba(4,8,11,.78),transparent 38%);content:''}.subhero-inner{position:relative;z-index:1}.subhero h1{max-width:880px;margin:0;font-family:var(--serif);font-size:clamp(3.2rem,6.5vw,6.6rem);font-weight:400;line-height:.92;letter-spacing:-.035em}.subhero-inner>p:not(.eyebrow){max-width:680px;margin:26px 0;color:#d2d5d5;font-size:1.08rem}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(50px,10vw,140px);align-items:start}.intro-grid h2{margin:0;font-family:var(--serif);font-size:clamp(2.4rem,4.6vw,4.8rem);font-weight:400;line-height:1.02}.intro-grid h3{margin:0 0 16px;font-family:var(--serif);font-size:2.25rem;font-weight:400;line-height:1.1}.intro-grid p{color:#59636a}.benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.benefit{min-height:300px;padding:32px;background:var(--ink2)}.benefit span{color:var(--gold);font-family:var(--serif);font-size:1.55rem}.benefit h3{margin:55px 0 12px;font-family:var(--serif);font-size:1.55rem;font-weight:400}.benefit p{margin:0;color:var(--muted);font-size:.9rem}.timeline{display:flex;border-block:1px solid #d1cbc0}.timeline-item{position:relative;display:grid;flex:1;gap:20px;padding:28px 20px;border-right:1px solid #d1cbc0}.timeline-item:last-child{border:0}.timeline-item b{color:#9b7137;font-family:var(--serif);font-size:1.5rem}.timeline-item span{font-weight:750;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.faq-section{background:#0d1419}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-layout h2{margin:0;font-family:var(--serif);font-size:clamp(2.4rem,4vw,4rem);font-weight:400;line-height:1.05}.faq-section .faq details{border-color:var(--line)}.faq-section .faq summary{padding-right:35px}.faq-section .faq p{color:var(--muted)}.cta>div>p:not(.eyebrow){max-width:620px;margin:-15px auto 28px;color:var(--muted)}@media(max-width:980px){.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-grid,.faq-layout{grid-template-columns:1fr;gap:45px}.timeline{display:grid;grid-template-columns:repeat(3,1fr)}.timeline-item{border-bottom:1px solid #d1cbc0}}@media(max-width:640px){.subhero{min-height:690px;padding-top:125px;background-position:65% center}.subhero h1{font-size:clamp(2.7rem,13vw,4rem)}.benefit-grid{grid-template-columns:1fr}.timeline{grid-template-columns:1fr}.timeline-item{grid-template-columns:55px 1fr;gap:5px;border-right:0}.benefit{min-height:240px}.benefit h3{margin-top:35px}}
.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card{min-width:0;overflow-wrap:anywhere}@media(max-width:980px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.services-grid{grid-template-columns:minmax(0,1fr)}}
.consent{position:fixed;z-index:200;inset:auto 20px 20px;display:none;max-width:560px;margin-left:auto;border:1px solid rgba(197,154,82,.45);padding:26px;background:#0c1318;color:#f4f2ed;box-shadow:0 25px 80px rgba(0,0,0,.55)}.consent.is-open{display:block}.consent-brand{display:flex;align-items:center;gap:12px;margin-bottom:14px}.consent-brand svg{width:34px;height:40px}.consent h2{margin:0;font-family:var(--serif);font-size:1.65rem;font-weight:400}.consent p{margin:8px 0;color:#c5c9cc;font-size:.86rem;line-height:1.55}.consent a{color:var(--gold2);text-decoration:underline}.consent-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:19px}.consent-actions .btn{min-height:43px;padding:0 15px}.consent-settings{display:none;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.consent-settings.is-open{display:block}.consent-option{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:10px 0}.consent-option label{font-weight:700}.consent-option small{display:block;color:var(--muted);font-weight:400}.consent-option input{width:20px;height:20px;accent-color:var(--gold)}.cookie-reopen{border:0;padding:0;background:none;color:inherit;text-decoration:underline}@media(max-width:640px){.consent{inset:auto 0 54px;max-width:none;padding:22px 18px}.consent-actions{display:grid;grid-template-columns:1fr}.consent-actions .btn{width:100%}}
