@font-face{font-family:Heading;src:url('/fileadmin/templates/website/assets/fonts/patua-one-v16-latin/patua-one-v16-latin-regular.woff2')}@font-face{font-family:Body;src:url('/fileadmin/templates/website/assets/fonts/work-sans-v18-latin/work-sans-v18-latin-regular.woff2');font-weight:400}@font-face{font-family:Body;src:url('/fileadmin/templates/website/assets/fonts/work-sans-v18-latin/work-sans-v18-latin-700.woff2');font-weight:700}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Body,Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #c5972f;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3{font-family:Heading,Arial,sans-serif;font-weight:var(--weight);line-height:1.08;margin:0;letter-spacing:-.025em}h1{font-size:clamp(42px,5.5vw,78px)}h2{font-size:clamp(32px,4vw,54px)}h3{font-size:25px}p{margin:0 0 22px;color:var(--muted)}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.topline{background:var(--ink);color:white;padding:7px 0;font-size:12px;letter-spacing:.09em}.topline .wrap{display:flex;justify-content:space-between}header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid #0001}.nav{height:103px;display:flex;align-items:center;gap:40px}.logo img{width:145px;height:82px;object-fit:contain}.links{display:flex;align-items:center;gap:32px;margin-left:auto;font-size:14px;font-weight:700}.links a:hover{color:var(--red)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:16px 25px;background:var(--red);color:white;font-weight:700;font-size:14px;border:0;cursor:pointer;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.light{background:var(--yellow);color:var(--ink)}.textlink{font-size:14px;font-weight:700;border-bottom:1px solid;padding-bottom:5px}.eyebrow{display:block;font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:700;margin-bottom:22px;color:var(--red)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:620px}.hero-copy{padding:70px 50px 65px max(40px,calc((100vw - 1200px)/2));display:flex;flex-direction:column;justify-content:center}.hero-copy h1{margin-bottom:28px}.hero-copy p{font-size:17px;max-width:490px}.hero-copy h1 em{font-style:normal;color:var(--red)}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:10px}.visual{position:relative;overflow:hidden}.visual>img{height:100%;width:100%;object-fit:cover}.visual-note{position:absolute;bottom:28px;left:28px;background:var(--paper);padding:18px 24px;font-size:13px;max-width:270px;border-left:4px solid var(--red)}.visual-note strong{display:block;font-family:Heading;font-size:21px;line-height:1.2;margin-bottom:5px}.strip{border-bottom:1px solid #0002;padding:22px 0}.strip .wrap{display:flex;justify-content:space-between;gap:20px;font-size:13px;font-weight:700}.strip span:before{content:'↗';color:var(--red);margin-right:10px}section{padding:95px 0}.section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;margin-bottom:40px;align-items:end}.section-head p{margin:0}.choices{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #0002}.choice{padding:32px;text-align:left;border:0;background:transparent;border-right:1px solid #0002;cursor:pointer;color:var(--ink);position:relative;transition:background .2s}.choice:last-child{border-right:0}.choice[aria-pressed=true],.choice:hover{background:var(--ink);color:white}.choice small{display:block;letter-spacing:.15em;font-size:11px;margin-bottom:28px;color:var(--red)}.choice h3{font-size:24px;margin-bottom:12px}.choice p{font-size:14px;color:inherit;margin:0;opacity:.75}.choice b{display:block;margin-top:25px}.answer{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:38px 0 0}.answer h3{font-size:30px;margin-bottom:18px}.answer ul{padding-left:20px;margin:0 0 20px}.answer li{margin-bottom:8px;color:var(--muted)}.dark{background:var(--ink);color:white}.dark p{color:#c5c7c6}.dark .eyebrow{color:var(--yellow)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.step{border-top:1px solid #ffffff40;padding-top:22px}.step span{font-size:13px;color:var(--yellow)}.step h3{margin:20px 0 15px}.step p{font-size:15px}.story{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;align-items:center}.story img{width:100%;height:430px;object-fit:cover}.story h2{margin-bottom:25px}.story p{font-size:16px}.faq{border-top:1px solid #0002;margin-top:40px}details{border-bottom:1px solid #0002;padding:23px 0}summary{font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;font-size:18px}summary:after{content:'+';color:var(--red)}details[open] summary:after{content:'−'}details p{max-width:820px;margin:20px 0 0}.contact{background:var(--red);color:white}.contact p{color:#fff9}.contact .eyebrow{color:white}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px}.contact h2{margin-bottom:25px}.contact .btn{background:var(--yellow);color:var(--ink)}.contact-box{border:1px solid #fff6;padding:32px}.contact-box a{display:block;font-size:clamp(17px,2.5vw,27px);font-weight:700;overflow-wrap:anywhere;margin:12px 0}.contact-box small{opacity:.8}footer{padding:35px 0;background:var(--ink);color:#bbb;font-size:12px}.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.foot nav{display:flex;gap:22px}.menu{display:none}.proposal{font-size:11px;letter-spacing:.04em}.project{--paper:#f3f1eb;--ink:#202824;--muted:#647069;--red:#b71f2b;--yellow:#e4d9c0;--weight:900}.bau{--paper:#faf8f3;--ink:#262a28;--muted:#626662;--red:#d41020;--yellow:#f1d341;--weight:400}.project .hero{grid-template-columns:1.05fr 1fr}.project .hero-copy{padding-top:85px;padding-bottom:85px}.project .visual:after{content:'';position:absolute;inset:0;border:22px solid var(--paper);pointer-events:none}.project .visual-note{z-index:1;left:0;bottom:40px}.project .hero h1{font-size:clamp(40px,5.1vw,72px)}.project .hero-copy h1 em{font-family:Heading;color:var(--red)}.project .choice small{color:var(--red)}@media(max-width:900px){.wrap{width:calc(100% - 40px)}.nav{height:85px;gap:15px}.logo img{width:110px;height:70px}.links{gap:18px;font-size:12px}.nav>.btn{display:none}.hero,.project .hero{grid-template-columns:1fr 1fr}.hero-copy{padding:45px 25px}.hero-copy h1,.project .hero h1{font-size:45px}.section-head,.story{gap:35px}.contact-grid{gap:30px}}@media(max-width:650px){.topline .wrap>span:last-child{display:none}.nav{height:80px}.menu{display:block;margin-left:auto;background:none;border:1px solid #0003;padding:8px 12px}.links{display:none;position:absolute;top:80px;left:0;right:0;padding:24px;background:var(--paper);box-shadow:0 8px 10px #0001}.links.open{display:flex;flex-direction:column;align-items:flex-start}.hero,.project .hero{grid-template-columns:1fr}.hero-copy,.project .hero-copy{padding:45px 22px}.hero-copy h1,.project .hero h1{font-size:45px}.visual{height:340px}.strip .wrap{flex-direction:column;gap:9px}.section-head,.story,.answer,.contact-grid{grid-template-columns:1fr;gap:25px}.choices,.steps{grid-template-columns:1fr}.choice{border-right:0;border-bottom:1px solid #0002;padding:25px}.choice small{margin-bottom:12px}.choice b{margin-top:12px}.choice:last-child{border-bottom:0}.steps{gap:20px}.story img{height:290px}.story .eyebrow{margin-top:10px}section{padding:60px 0}.contact-box{padding:22px}.hero-copy p{font-size:16px}.section-head{margin-bottom:28px}.project .visual:after{border:12px solid var(--paper)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.choice[aria-pressed=true] small,.choice:hover small,.project .choice[aria-pressed=true] small,.project .choice:hover small{color:var(--yellow)}

/* Kontaktbereich: voller Kontrast auf Rot. */
.contact p,.contact .eyebrow,.contact-box small,.contact-box a{color:#fff;opacity:1}.contact-box{border-color:#ffffffa6}.contact-box a:hover{text-decoration:underline}.contact .btn{color:var(--ink)}

.sentence-start{white-space:nowrap}p{text-wrap:pretty}h1,h2,h3{text-wrap:balance}

.subhero{padding:60px 0 65px;border-bottom:1px solid #0002}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:35px;display:flex;gap:12px;flex-wrap:wrap}.breadcrumbs a{text-decoration:underline}.subintro{max-width:780px}.subintro h1{font-size:clamp(38px,4.9vw,64px);margin-bottom:25px}.subintro>p{font-size:18px;max-width:740px}.subhero .eyebrow{margin-bottom:16px}.section-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.section-links a{border:1px solid #0003;padding:8px 14px;font-size:13px}.section-links a:hover{background:var(--ink);color:white}.content-split{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center}.content-split h2{margin-bottom:25px}.content-split img{width:100%;height:410px;object-fit:cover}.content-split ul{padding-left:20px;color:var(--muted)}.content-split li{margin:10px 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{display:flex;flex-direction:column;background:#fff;border:1px solid #0001;transition:transform .2s}.service-card:hover{transform:translateY(-4px)}.service-card img{width:100%;height:200px;object-fit:cover}.service-card .card-body{padding:25px;display:flex;flex-direction:column;flex:1}.service-card h3{margin-bottom:15px}.service-card p{font-size:15px}.service-card .card-arrow{margin-top:auto;font-weight:700;color:var(--red)}.related{background:#00000004;border-top:1px solid #0001}.related h2{margin-bottom:35px}.legal-content{max-width:850px;margin:auto}.legal-content h2{font-size:28px;margin:40px 0 18px}.legal-content h3{font-size:22px;margin:25px 0 12px}.legal-content a{text-decoration:underline;overflow-wrap:anywhere}.legal-content p,.legal-content li{font-size:16px}.review-note{background:#f0e5cb;border-left:4px solid #8a6424;padding:22px 26px;margin-bottom:32px}.review-note p{margin:8px 0 0;color:#423722}.review-note strong{font-size:16px;color:#423722}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.gallery button{padding:0;border:0;background:transparent;cursor:zoom-in}.gallery img{width:100%;height:250px;object-fit:cover}.gallery-note{font-size:12px;color:var(--muted);margin-top:15px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;margin:25px 0}.facts div{padding:15px 0;border-bottom:1px solid #0002}.facts dt{font-size:12px;color:var(--muted)}.facts dd{margin:4px 0 0;font-weight:700}dialog{border:0;max-width:min(95vw,1100px);padding:15px;background:var(--paper)}dialog::backdrop{background:#000b}dialog img{max-height:80vh;width:auto;max-width:100%;object-fit:contain;margin:auto}.dialog-close{display:block;margin-left:auto;border:0;background:var(--ink);color:white;padding:8px 15px;cursor:pointer}.contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-method{background:var(--ink);color:white;padding:32px}.contact-method p{color:#ddd}.contact-method a{display:block;color:white;font-size:22px;overflow-wrap:anywhere}.contact-method h3{margin-bottom:20px}.side-note{background:#00000004;padding:30px}.side-note h3{margin-bottom:18px}.reference-list{display:grid;grid-template-columns:1fr 1fr;gap:28px}.reference{border-top:1px solid #0003;padding-top:25px}.reference h3{margin-bottom:18px}.legal-tag{font-size:13px;margin-top:25px;color:var(--muted)}.foot{justify-content:flex-end}.komma-credit{width:100%}.subpage-nav{padding:20px 0;border-bottom:1px solid #0001}.subpage-nav .wrap{display:flex;flex-wrap:wrap;gap:12px 25px;font-size:13px}.subpage-nav a:hover{text-decoration:underline}@media(max-width:800px){.service-grid{grid-template-columns:1fr 1fr}.content-split{gap:30px}.content-split img{height:330px}.gallery{grid-template-columns:1fr 1fr}}@media(max-width:650px){.subhero{padding:35px 0 45px}.subintro h1{font-size:41px}.subintro>p{font-size:17px}.content-split,.service-grid,.reference-list,.contact-methods{grid-template-columns:1fr}.content-split img{height:290px}.service-card img{height:230px}.gallery img{height:160px}.facts{grid-template-columns:1fr}.legal-content h2{font-size:26px}.breadcrumbs{margin-bottom:25px}.contact-method{padding:25px}.contact-method a{font-size:20px}}
/* Keep email addresses readable as a whole; fit contact cards to their content. */
a[href^="mailto:"]{white-space:nowrap;overflow-wrap:normal;word-break:normal;hyphens:none}
.contact-methods{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.contact-method,.contact-box{min-width:0;container-type:inline-size}
.contact-method a[href^="mailto:"]{font-size:clamp(12px,6cqi,22px)}
.contact-box a[href^="mailto:"]{font-size:clamp(12px,5.5cqi,27px)}

/* Own project photography and responsive comparisons */
.project-jump{display:flex;gap:12px 24px;flex-wrap:wrap;padding:20px 0;border-block:1px solid #0002;font-weight:700;font-size:14px}.project-jump a:hover{color:var(--red)}
.project-chapter{padding:64px 0;border-bottom:1px solid #0002;scroll-margin-top:120px}.project-heading{max-width:780px;margin-bottom:28px}.project-heading h2{margin-bottom:20px}.project-heading .eyebrow{margin-bottom:14px}.project-caption{font-size:13px;margin:12px 0 28px;max-width:850px}
.project-compare{max-width:920px;margin:auto}.compare-stage{position:relative;aspect-ratio:var(--compare-ratio);overflow:hidden;touch-action:pan-y;background:var(--ink)}.compare-photo{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;pointer-events:none;user-select:none}.compare-before-wrap{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare-label{position:absolute;top:16px;padding:7px 14px;background:var(--ink);color:#fff;font-size:13px;pointer-events:none}.compare-label.left{left:16px}.compare-label.right{right:16px}.compare-divider{position:absolute;left:var(--split);top:0;bottom:0;width:3px;transform:translateX(-50%);background:#fff;pointer-events:none}.compare-divider span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:var(--red);color:white;display:grid;place-items:center;font-size:24px}.compare-control{display:block;margin-top:10px;font-size:13px}.compare-control input{display:block;width:100%;height:40px;accent-color:var(--red)}
.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px;margin-top:30px}.project-gallery figure{margin:0;min-width:0}.project-gallery button{border:0;padding:0;background:none;width:100%;cursor:zoom-in}.project-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.project-gallery figcaption{font-size:13px;color:var(--muted);margin-top:10px}.project-gallery figure:only-child{grid-column:1/-1}.project-gallery figure:only-child img{aspect-ratio:2/1}.project-gallery:has(figure:nth-child(2):last-child){grid-template-columns:1fr 1fr}.project-gallery:has(figure:nth-child(2):last-child) img{aspect-ratio:3/4}.dialog-caption{margin:12px 0 0;font-size:14px}.project-teaser{background:#eee9df}.project-section{padding-top:60px}
@media(max-width:700px){.project-gallery{grid-template-columns:1fr 1fr}.project-chapter{padding:44px 0}.project-jump{gap:12px 18px}.project-gallery:has(figure:nth-child(2):last-child){grid-template-columns:1fr 1fr}.compare-label{top:10px;padding:5px 9px}.compare-label.left{left:10px}.compare-label.right{right:10px}}
@media(max-width:440px){.project-gallery{grid-template-columns:1fr}.project-gallery:has(figure:nth-child(2):last-child){grid-template-columns:1fr}.project-gallery img{aspect-ratio:4/3}.project-gallery figure:only-child img{aspect-ratio:4/3}}

/* Homepage exterior comparison and aligned choice copy. */
.hero-exterior{background:#e8e4dc;display:flex;flex-direction:column;justify-content:center;padding:32px;min-height:620px}.hero-exterior .project-compare{width:100%;max-width:none}.hero-exterior .compare-stage{width:100%;aspect-ratio:1.8}.hero-exterior .compare-photo{object-position:50% 50%}.hero-exterior .hero-visual-caption{display:block;margin-top:10px;color:var(--muted);font-size:12px}.hero-exterior .compare-control{color:var(--ink)}
.answer{align-items:stretch}.answer>div:last-child{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.answer>div:first-child p{margin-bottom:0}.answer>div:last-child ul{width:100%;margin-top:0;margin-bottom:18px}.answer #detail-link{margin-top:auto}.answer #contact-cta{margin-top:16px}.answer .textlink{display:inline-block}
@media(max-width:900px){.hero-exterior{padding:20px;min-height:540px}}@media(max-width:650px){.hero-exterior{height:auto;min-height:0;padding:24px 16px}.hero-exterior .compare-stage{aspect-ratio:1.8}.answer #detail-link{margin-top:0}.answer #contact-cta{margin-top:16px}}

/* Shared rows keep the service list aligned with the introductory copy. */
.answer{column-gap:65px;row-gap:18px;align-items:start}
.answer h3{grid-column:1 / -1;margin:0}
.answer #answer-copy{grid-column:1;margin:0;line-height:1.65}
.answer>div.answer-services{grid-column:2;grid-row:2;display:block}
.answer #answer-list{margin:0;padding-left:20px;line-height:1.65}
.answer #answer-list li{margin:0;line-height:inherit}
.answer-links{display:flex;align-items:baseline;gap:24px;flex-wrap:wrap;line-height:26.4px}
.answer .answer-links #detail-link,.answer .answer-links #contact-cta{margin:0;padding-bottom:0;line-height:26.4px;white-space:nowrap}
@media(max-width:650px){.answer h3,.answer #answer-copy,.answer>div.answer-services{grid-column:1;grid-row:auto}.answer-links{margin-top:12px;gap:12px 24px}}

.step p .sentence-start{font:inherit;color:inherit}

/* Consistent sizing and aligned reference copy. */
#gaeste-wc .project-compare{width:min(100%,440px)}
.reference-list{column-gap:28px;row-gap:0}
.reference-list .reference{display:grid;grid-template-rows:subgrid;grid-row:span 3;padding-bottom:34px}
.reference-list .reference .eyebrow{margin-bottom:22px}
.reference-list .reference h2{font:400 30px/1.08 Heading,Arial,sans-serif;color:var(--ink);margin:0 0 14px}
.reference-list .reference p{font:400 16px/1.65 Body,Arial,sans-serif;color:var(--muted);margin:0}
.service-card img[src*="fenstereinbau"]{object-position:10% 29%}
.service-card img[src*="fassade"]{object-position:50% 42%}
#unternehmen .story p span,.content-split p span{font:inherit;color:inherit}

.service-project-photo{padding-top:0}.service-project-photo img{width:100%;height:460px;object-fit:cover}.service-project-photo img[src*="fenstereinbau"]{object-position:10% 29%}.service-project-photo img[src*="fassade"]{object-position:50% 42%}@media(max-width:650px){.service-project-photo img{height:340px}}
