:root{--ink:#172620;--cream:#f5f2e9;--muted:#65706a;--accent:#ca744f;--line:#d8dcd4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}.wrap{width:min(1190px,calc(100% - 64px));margin:auto}.site-header{height:86px;display:flex;align-items:center;gap:42px;padding:0 max(32px,calc((100vw - 1190px)/2));background:#f8f7f1}.brand{display:flex;align-items:center;gap:9px;white-space:nowrap}.brand-mark{font:800 36px/.9 Manrope,sans-serif;letter-spacing:-.12em}.brand-dot{color:var(--accent)}.brand-name{font:800 18px/1 Manrope,sans-serif;letter-spacing:.01em}.brand-name small{display:block;font:700 8px/1.5 Manrope,sans-serif;letter-spacing:.21em;margin-top:5px}.site-header nav{display:flex;gap:34px;margin-left:auto;font-size:13px;font-weight:700}.site-header nav a:hover,.inline-link:hover{color:var(--accent)}.header-cta{background:var(--ink);color:white;padding:13px 18px;font-size:12px;font-weight:700}.header-cta span{margin-left:12px;color:#ecae8c}.hero{position:relative;height:min(720px,75vw);min-height:610px;background:#404c43;color:white;overflow:hidden}.hero-image{position:absolute;inset:0;background-image:url('hero.png');background-size:cover;background-position:center 55%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,31,25,.87) 0%,rgba(16,31,25,.68) 42%,rgba(16,31,25,.08) 100%)}.hero-content{position:relative;padding-top:145px}.eyebrow{font:800 11px Manrope,sans-serif;letter-spacing:.19em;color:#b15e3e}.eyebrow.light{color:#f1c6ac}.eyebrow-line{display:inline-block;width:27px;border-top:1px solid currentColor;vertical-align:middle;margin-right:10px}.hero h1,h2,blockquote{font-family:Manrope,Arial,sans-serif;letter-spacing:-.055em}.hero h1{font-size:clamp(53px,6.2vw,91px);line-height:1.07;margin:28px 0 25px;font-weight:700}.hero h1 em,h2 em{font-style:normal;color:#de9a76}.hero p{max-width:495px;font-size:17px;line-height:1.75;color:#f0eee8}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:37px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:18px 23px;font-size:13px;font-weight:800;transition:transform .2s}.button:hover{transform:translateY(-3px)}.button-light{background:#f7f3eb;color:var(--ink)}.button span{font-size:19px;font-weight:400}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:8px}.text-link span{margin-left:14px}.hero-note{position:absolute;right:36px;bottom:27px;font:700 10px Manrope,sans-serif;letter-spacing:.18em}.hero-note span{color:#e19f7e;margin:0 9px}.intro{display:grid;grid-template-columns:1.07fr .93fr;gap:90px;padding-top:115px;padding-bottom:122px}.intro h2,.section-head h2,.contact h2{font-size:clamp(40px,4.2vw,63px);line-height:1.14;margin:24px 0 0;font-weight:700}.intro-copy{padding-top:24px}.intro-copy p,.contact>div>p{font-size:16px;line-height:1.8;color:#58655d;margin:0 0 17px}.inline-link{display:inline-block;font-size:13px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:8px;margin-top:17px}.inline-link span{margin-left:14px}.services{background:#e8ece6;padding:102px 0 110px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:47px}.section-head h2{margin-top:18px}.section-head p{max-width:330px;color:#5d6962;line-height:1.7;font-size:15px;margin-bottom:7px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-card{min-height:342px;background:#f8f8f3;padding:26px 24px 24px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 14px 28px rgba(30,54,43,.09)}.service-no{font:800 11px Manrope;color:#aeb8ae}.service-icon{font-size:35px;color:var(--accent);margin:32px 0 20px;height:45px}.service-card h3{font:700 23px Manrope;letter-spacing:-.04em;margin:0 0 13px}.service-card p{font-size:13px;line-height:1.7;color:#66716a;margin:0}.service-tags{font:800 9px Manrope;letter-spacing:.11em;color:#a36045;margin-top:auto;padding-top:22px}.statement{background:#20382e;color:#fff;padding:106px 0 112px}.statement-inner{position:relative}.statement blockquote{font-size:clamp(37px,5vw,69px);line-height:1.17;margin:25px 0 22px;font-weight:600}.statement p{color:#b9c9bb;font-size:15px;line-height:1.7;max-width:490px}.contact{display:grid;grid-template-columns:1fr 430px;gap:100px;padding-top:112px;padding-bottom:122px}.contact h2{margin-bottom:24px}.contact>div>p{max-width:450px}.contact-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:36px}.button-dark{background:var(--ink);color:white}.contact-card{background:#e8ebe4;padding:32px 38px 37px;display:grid;gap:27px}.card-label{font:800 10px Manrope;letter-spacing:.17em;color:#a35f43;padding-bottom:14px;border-bottom:1px solid #cdd5cb}.contact-card strong{font:800 13px Manrope}.contact-card p{font-size:14px;line-height:1.65;color:#5c6960;margin:7px 0 0}.contact-card a:hover{text-decoration:underline}footer{background:#15251e;color:#f4f3eb}.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:25px;padding-top:48px;padding-bottom:26px}.footer-brand{align-self:start}.footer-inner p{font-size:13px;line-height:1.6;color:#aebeb2;margin:0}.footer-links{display:flex;gap:21px;justify-content:flex-end;font-size:12px}.footer-inner>small{grid-column:1/-1;border-top:1px solid #36473e;padding-top:24px;color:#83958a;font-size:11px;margin-top:20px}@media(max-width:900px){.service-grid{grid-template-columns:repeat(2,1fr)}.contact{grid-template-columns:1fr 360px;gap:35px}.intro{gap:35px}}@media(max-width:650px){.wrap{width:min(100% - 38px,1190px)}.site-header{height:70px;padding:0 19px;gap:12px}.brand-mark{font-size:30px}.brand-name{font-size:15px}.brand-name small{font-size:6px}.site-header nav{gap:13px;font-size:11px}.site-header nav a:nth-child(2){display:none}.header-cta{display:none}.hero{height:680px;min-height:0}.hero-image{background-position:65% center}.hero-shade{background:linear-gradient(90deg,rgba(16,31,25,.9),rgba(16,31,25,.52))}.hero-content{padding-top:112px}.hero h1{font-size:54px}.hero p{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:23px}.hero-note{right:19px;font-size:8px}.intro{grid-template-columns:1fr;gap:8px;padding-top:76px;padding-bottom:82px}.intro-copy{padding-top:0}.intro h2,.section-head h2,.contact h2{font-size:43px}.services{padding:75px 0 80px}.section-head{display:block}.section-head p{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px}.service-icon{margin:18px 0 13px}.statement{padding:80px 0}.statement blockquote{font-size:39px}.contact{grid-template-columns:1fr;gap:40px;padding-top:78px;padding-bottom:82px}.contact-card{padding:28px}.footer-inner{grid-template-columns:1fr 1fr}.footer-inner p{display:none}.footer-links{align-items:flex-end;flex-direction:column;gap:9px}.footer-inner>small{margin-top:0}}

/* Original identity and real project work */
.brand img{display:block;width:140px;height:auto}.footer-brand img{background:#fff;border-radius:10px;padding:5px;width:145px}.site-header nav{gap:28px}.team-photo{display:block;width:min(100%,430px);height:250px;object-fit:cover;object-position:center 45%;margin-top:40px}.intro-copy{padding-top:75px}.service-card{min-height:310px}.service-icon{margin-top:20px}.projects{padding-top:105px;padding-bottom:112px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;align-items:start}.project-grid figure{margin:0;background:#e7ebe6;overflow:hidden}.project-grid img{display:block;width:100%;height:auto}.project-grid figcaption{padding:17px 20px;font:700 13px Manrope,sans-serif;color:var(--ink)}

/* Ein Farbstrich bewegt sich über alle Aktionslinks. */
.paint-link{position:relative;isolation:isolate;overflow:hidden;transition:color .25s ease,transform .25s ease}.paint-link::before{content:"";position:absolute;z-index:-1;inset:0;background:#c87250;clip-path:polygon(0 9%,12% 3%,23% 8%,39% 2%,55% 7%,71% 3%,87% 7%,100% 0,100% 94%,86% 100%,70% 95%,54% 100%,38% 95%,20% 100%,0 95%);transform:scaleX(0);transform-origin:left center;transition:transform .42s cubic-bezier(.2,.75,.2,1)}.paint-link:hover::before,.paint-link:focus-visible::before{transform:scaleX(1)}.paint-link:hover,.paint-link:focus-visible{color:#fff}.paint-link>span{position:relative;z-index:1;margin:0;font:inherit;color:inherit}.header-cta.paint-link{display:inline-flex;align-items:center;min-height:43px}.text-link,.inline-link{border:0;padding:12px 14px;margin-left:-14px;margin-top:5px;white-space:normal}.text-link{padding-bottom:12px}.paint-link:focus-visible{outline:2px solid #d98b6c;outline-offset:3px}
@media(max-width:900px){.site-header nav{gap:17px}.brand img{width:120px}}
@media(max-width:650px){.brand img{width:90px}.site-header nav{gap:12px}.site-header nav a:nth-child(2){display:inline}.site-header nav a:nth-child(3){display:none}.header-cta.paint-link,.hero-note{display:none}.intro-copy{padding-top:0}.team-photo{height:230px;margin-top:28px}.projects{padding-top:76px;padding-bottom:82px}.project-grid{grid-template-columns:1fr}.project-grid figure{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){.paint-link,.paint-link::before{transition:none}}

/* Drei ausgefranste, spitz auslaufende Pinselstriche in den Farben des Logos. */
.paint-link{transition:background-color .25s ease,color .25s ease,transform .25s ease}
.paint-link::before{display:none}
.paint-link:hover,.paint-link:focus-visible{background:#f7f3eb;color:var(--ink)}
.paint-strokes{position:absolute;left:9px;right:9px;bottom:3px;height:13px;pointer-events:none;overflow:hidden}
.paint-link>.paint-strokes{position:absolute;z-index:2}
.paint-strokes i{display:block;position:absolute;left:0;width:100%;height:4px;transform:scaleX(0);transform-origin:left center;transition:transform .54s cubic-bezier(.18,.76,.18,1);clip-path:polygon(0 57%,1% 40%,2% 53%,4% 15%,5% 42%,7% 5%,10% 21%,13% 2%,17% 14%,21% 0,27% 11%,32% 0,39% 9%,44% 1%,52% 8%,58% 1%,66% 12%,73% 0,80% 13%,86% 4%,90% 19%,94% 4%,96% 28%,98% 24%,99% 48%,100% 50%,99% 59%,98% 75%,96% 68%,94% 95%,90% 80%,86% 100%,80% 88%,73% 99%,66% 86%,58% 100%,52% 90%,44% 99%,39% 89%,32% 100%,27% 88%,21% 100%,17% 87%,13% 98%,10% 78%,7% 95%,5% 60%,4% 85%,2% 47%,1% 60%)}
.paint-strokes i:nth-child(1){top:0;background:#000;transition-delay:0s}
.paint-strokes i:nth-child(2){top:4px;background:#d81f27;transition-delay:.07s}
.paint-strokes i:nth-child(3){top:8px;background:#fcea00;transition-delay:.14s}
.paint-link:hover .paint-strokes i,.paint-link:focus-visible .paint-strokes i{transform:scaleX(1)}
.paint-link:not(:hover):not(:focus-visible) .paint-strokes i{transition-delay:0s}
.eyebrow-line{display:none}
.contact-form-open{font-family:inherit;background:transparent;color:var(--ink);cursor:pointer;font-size:13px;text-align:left}
.contact-dialog{width:min(620px,calc(100% - 28px));max-height:min(90vh,850px);border:0;padding:38px 42px 42px;background:var(--cream);color:var(--ink);box-shadow:0 25px 80px rgba(8,22,15,.3)}
.contact-dialog::backdrop{background:rgba(15,31,23,.72);backdrop-filter:blur(3px)}
.dialog-header{display:flex;align-items:start;justify-content:space-between;gap:20px}.dialog-header h2{font-size:clamp(31px,4vw,46px);line-height:1.13;margin:16px 0 25px}.dialog-close{border:0;background:transparent;color:var(--ink);font-size:31px;line-height:1;cursor:pointer;padding:0 4px}.dialog-close:hover{color:#d81f27}
#contact-form{display:grid;gap:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}#contact-form label{display:grid;gap:7px;font-size:12px;font-weight:700}#contact-form label span{color:#bd473f}#contact-form label small{font-weight:400;color:var(--muted)}#contact-form input,#contact-form textarea{width:100%;border:1px solid #c9d0c8;border-radius:0;background:#fff;padding:12px 13px;color:var(--ink);font:14px/1.5 'DM Sans',Arial,sans-serif}#contact-form textarea{resize:vertical;min-height:120px}#contact-form input:focus,#contact-form textarea:focus{outline:2px solid #d81f27;outline-offset:1px}.form-hint{font-size:12px;line-height:1.55;color:var(--muted);margin:0}.form-submit{justify-self:start;border:0;cursor:pointer;font-family:inherit}.form-submit .paint-strokes{bottom:3px}
#contact-form label{display:block}#contact-form input,#contact-form textarea{display:block;margin-top:7px}
@media(max-width:650px){.contact-dialog{padding:26px 22px 30px}.form-row{grid-template-columns:1fr}.dialog-header h2{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.paint-strokes i{transition:none}}

/* Datenschutzhinweise */
.legal-page{max-width:900px;padding-top:88px;padding-bottom:110px}.legal-page h1{font:700 clamp(42px,5.5vw,70px)/1.12 Manrope,Arial,sans-serif;letter-spacing:-.055em;margin:17px 0 20px}.legal-intro{font-size:18px;line-height:1.7;color:#56635a;max-width:700px;margin:0 0 60px}.legal-page section{border-top:1px solid var(--line);padding:29px 0 26px}.legal-page h2{font-size:24px;letter-spacing:-.035em;margin:0 0 15px}.legal-page p{font-size:15px;line-height:1.8;color:#47564c;margin:0 0 14px}.legal-page a,.form-hint a{text-decoration:underline;text-underline-offset:3px}.legal-page a:hover,.form-hint a:hover{color:#b15e3e}.legal-date{font-size:12px!important;color:#748077!important;margin-top:20px!important}
@media(max-width:650px){.legal-page{padding-top:60px;padding-bottom:70px}.legal-intro{margin-bottom:40px}.legal-page h2{font-size:21px}}

/* Kompakte Projektgalerie mit dem Wohnhausfoto ohne Personen. */
.project-grid{grid-template-columns:repeat(3,minmax(0,250px));justify-content:center;gap:25px}
.project-media{height:580px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.project-media>img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.project-crop{width:100%;aspect-ratio:455 / 856;overflow:hidden;flex:none}
.project-crop img{display:block;width:100%;height:auto}
.project-grid figcaption{text-align:center}
@media(max-width:650px){.project-grid{grid-template-columns:minmax(0,250px);gap:19px}.project-media{height:580px}}

/* Die Navigation übernimmt die Gestaltung des früheren Anrufen-Buttons. */
.site-header nav{gap:10px}
.site-header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:12px 18px;background:var(--ink);color:#fff;font-size:12px;font-weight:700;white-space:nowrap}
.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--ink)}
@media(max-width:760px){.site-header{height:auto;min-height:0;flex-direction:column;align-items:stretch;gap:10px;padding:12px 19px 15px}.site-header .brand{align-self:flex-start}.site-header nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-left:0;gap:8px}.site-header nav a,.site-header nav a:nth-child(2),.site-header nav a:nth-child(3){display:inline-flex;padding:10px 6px;min-height:38px;font-size:11px}}
@media(max-width:430px){.site-header nav{grid-template-columns:repeat(2,minmax(0,1fr))}}


.project-crop{aspect-ratio:455 / 452}
.facade-gallery{max-width:1040px;margin:78px auto 0}.facade-gallery h3{font:700 clamp(25px,3vw,38px) Manrope,sans-serif;margin:0 0 30px;color:var(--ink)}.facade-set{margin-top:34px}.facade-set h4{font:700 18px Manrope,sans-serif;margin:0 0 15px;color:var(--ink)}.facade-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.facade-photos-three{grid-template-columns:repeat(3,minmax(0,1fr))}.facade-photos figure{margin:0;background:#e7ebe6;overflow:hidden}.facade-photos img{display:block;width:100%;height:340px;object-fit:cover;object-position:center 42%}.facade-photos figcaption{padding:13px 17px;font:700 13px Manrope,sans-serif;color:var(--ink)}@media(max-width:650px){.facade-gallery{margin-top:58px}.facade-photos,.facade-photos-three{grid-template-columns:1fr}.facade-photos img{height:320px}}

