:root{--ink:#17242b;--taupe:#a79d91;--line:#dedbd6;--soft:#f6f4f1;--max:1420px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:#fff}a{color:inherit;text-decoration:none}.header{height:112px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid #eee;position:sticky;top:0;background:rgba(255,255,255,.96);z-index:5}.brand{display:flex;align-items:center;gap:25px}.mark{font-size:64px;font-weight:300;letter-spacing:-8px;line-height:.8;border-right:1px solid;padding-right:28px}.brandtext{font-size:16px;letter-spacing:4px}.nav{display:flex;gap:34px;font-size:15px}.nav a.active{border-bottom:3px solid var(--taupe);padding-bottom:8px}.intro{max-width:var(--max);margin:auto;padding:80px 4vw 52px}.kicker{font-size:13px;letter-spacing:5px;color:#667077}.intro h1{font-size:64px;font-weight:300;line-height:1.02;margin:18px 0 24px;letter-spacing:-2px}.intro .lead{max-width:780px;font-size:21px;line-height:1.55}.rule{width:72px;border-top:5px solid var(--taupe);margin:26px 0}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px}.pill{border:1px solid #cfcac4;padding:10px 16px;font-size:13px;letter-spacing:1px}.projects{max-width:var(--max);margin:auto;padding:0 4vw 90px;display:grid;grid-template-columns:repeat(2,1fr);gap:52px 34px}.card{border-top:1px solid var(--line);padding-top:18px}.visual{height:430px;background:var(--soft);overflow:hidden;display:flex;align-items:center;justify-content:center}.visual img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.meta{font-size:12px;letter-spacing:2px;color:#727a7e;margin:20px 0 10px}.card h2{font-size:29px;font-weight:400;margin:0 0 10px}.card p{font-size:16px;line-height:1.55;margin:0;max-width:650px}.services{font-size:13px;letter-spacing:.6px;margin-top:14px!important;color:#5d6569}.note{max-width:var(--max);margin:0 auto 80px;padding:38px 4vw;background:var(--soft);font-size:15px;line-height:1.6}.footer{border-top:1px solid #ddd;padding:32px 4vw;font-size:13px;display:flex;justify-content:space-between;gap:20px}.back{display:inline-block;margin-top:25px;border:1px solid var(--ink);padding:14px 22px;letter-spacing:1px;font-size:13px}@media(max-width:900px){.header{height:auto;padding:25px 5vw;align-items:flex-start}.brandtext{font-size:12px;letter-spacing:2px}.mark{font-size:48px}.nav{display:none}.intro h1{font-size:46px}.projects{grid-template-columns:1fr}.visual{height:330px}.footer{flex-direction:column}}
/* Referenzkarten: Foto + zugehörige Zeichnung */
.visual.combo{position:relative;overflow:hidden;background:#eee;aspect-ratio:16/10}
.visual.combo .project-photo{width:100%;height:100%;object-fit:cover;display:block}
.visual.combo .project-plan{position:absolute;right:3%;bottom:4%;width:46%;height:58%;object-fit:contain;background:rgba(255,255,255,.94);padding:10px;box-shadow:0 8px 28px rgba(0,0,0,.16);border:1px solid rgba(40,45,48,.14)}
.visual.combo .project-plan.wide{width:52%;height:54%}
.visual.combo .project-plan.tall{width:40%;height:66%}
.visual.combo:after{content:"FOTO + PLAN";position:absolute;left:14px;bottom:12px;background:rgba(255,255,255,.9);padding:6px 9px;font-size:10px;letter-spacing:.16em;color:#30373a}
@media(max-width:760px){.visual.combo .project-plan{width:50%;height:54%;padding:6px}}

/* V3: Zeichnungen größer und bereinigt */
.visual.combo{display:grid;grid-template-columns:42% 58%;gap:0;height:460px;aspect-ratio:auto;background:#f7f6f3}
.visual.combo .project-photo{position:static;width:100%;height:100%;object-fit:cover;display:block}
.visual.combo .project-plan,.visual.combo .project-plan.wide,.visual.combo .project-plan.tall{position:static;width:100%;height:100%;object-fit:contain;background:#fff;padding:12px;box-shadow:none;border:0;mix-blend-mode:normal}
.visual.combo:after{display:none}
@media(max-width:760px){.visual.combo{grid-template-columns:1fr;height:auto}.visual.combo .project-photo{height:280px}.visual.combo .project-plan,.visual.combo .project-plan.wide,.visual.combo .project-plan.tall{height:330px;padding:8px}}

/* V4: Referenzen 50/50 und klickbare Projektkarten */
.visual.combo{grid-template-columns:50% 50%;height:460px}
.card-link{display:block}
.card-link:hover .card h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.more{display:inline-block;margin-top:18px;font-size:12px;letter-spacing:1.4px;border-bottom:1px solid var(--ink);padding-bottom:5px}
@media(max-width:760px){.visual.combo{grid-template-columns:1fr;height:auto}}
.project-detail{max-width:var(--max);margin:auto;padding:70px 4vw 90px}.project-detail .backtop{font-size:13px;letter-spacing:1px}.project-detail h1{font-size:54px;font-weight:300;margin:22px 0 12px}.project-detail .summary{font-size:19px;line-height:1.55;max-width:850px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:45px}.gallery figure{margin:0;border-top:1px solid var(--line);padding-top:12px}.gallery img{width:100%;height:520px;object-fit:contain;background:#f7f6f3}.gallery .photo{object-fit:cover}.gallery figcaption{font-size:13px;letter-spacing:.5px;margin-top:10px;color:#5d6569}.docs{margin-top:50px;padding:30px;background:var(--soft)}.docs h2{font-weight:400}.docs a{display:inline-block;margin:7px 16px 7px 0;border-bottom:1px solid var(--ink);padding-bottom:4px;font-size:14px}@media(max-width:900px){.gallery{grid-template-columns:1fr}.gallery img{height:auto}.project-detail h1{font-size:42px}}
.card-link{display:block;color:inherit;text-decoration:none}.card-link .card{height:100%;cursor:pointer}.card-link:hover .more{letter-spacing:.12em}.more{display:inline-block;margin-top:16px;font-size:12px;letter-spacing:.08em}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery figure{background:#fff}.gallery img{width:100%;height:auto;max-height:none;object-fit:contain}.gallery .photo{aspect-ratio:4/3;object-fit:cover}.gallery figcaption{font-size:12px;letter-spacing:.05em;margin-top:8px;color:#666}@media(max-width:800px){.gallery{grid-template-columns:1fr}}
/* Leistungsseite */
.service-page{max-width:var(--max);margin:0 auto;padding:0 4vw 100px}.service-block{display:grid;grid-template-columns:110px 1fr;gap:30px;border-top:1px solid var(--line);padding:62px 0 72px}.service-no{font-size:15px;letter-spacing:2px;color:var(--taupe);padding-top:8px}.service-block h2,.target h2,.about-mini h2,.contact-mini h2{font-size:40px;font-weight:300;letter-spacing:-1px;margin:10px 0 22px}.service-lead{font-size:19px;line-height:1.6;max-width:900px;margin-bottom:38px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid>div{padding:28px 30px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:175px}.service-grid h3{font-size:18px;font-weight:400;margin:0 0 12px}.service-grid p{font-size:15px;line-height:1.6;margin:0;color:#50595e}.target{margin:20px 0 70px;padding:55px;background:var(--soft)}.target p:not(.kicker){font-size:18px;line-height:1.65;max-width:950px}.about-mini,.contact-mini{display:grid;grid-template-columns:1fr 1.6fr;gap:70px;border-top:1px solid var(--line);padding:55px 0}.about-mini>p{font-size:17px;line-height:1.7;margin:0}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;font-size:15px;line-height:1.7}.contact-mini{display:block}.contact-mini h2{margin-bottom:35px}@media(max-width:900px){.service-block{grid-template-columns:1fr;gap:10px}.service-grid{grid-template-columns:1fr}.service-block h2,.target h2,.about-mini h2,.contact-mini h2{font-size:32px}.target{padding:35px 25px}.about-mini{grid-template-columns:1fr;gap:20px}.contact-grid{grid-template-columns:1fr}.services-intro{padding-top:55px}}

/* Master-Logo exakt aus der festgelegten Startseitenbasis */
.brand{display:flex;align-items:center;gap:0}.brand-logo{display:block;width:min(575px,42vw);height:auto;max-height:98px;object-fit:contain;object-position:left center}.mark,.brandtext{display:none!important}@media(max-width:900px){.brand-logo{width:520px;max-width:70vw;height:auto}}
/* Theater Münster: Fotos links, Zeichnungen rechts */
.theater-gallery{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-top:45px;align-items:start}.theater-column h2{font-size:18px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;margin:0 0 20px}.theater-column figure{margin:0 0 30px;border-top:1px solid var(--line);padding-top:12px}.theater-column img{display:block;width:100%;height:auto;background:#f7f6f3}.theater-photos img{aspect-ratio:auto;object-fit:contain}.theater-plans img{object-fit:contain}.theater-column figcaption{font-size:12px;letter-spacing:.05em;margin-top:8px;color:#666}@media(max-width:800px){.theater-gallery{grid-template-columns:1fr;gap:25px}}

/* Über-uns-Seite */
.about-page{max-width:var(--max);margin:0 auto;padding:0 4vw 100px}.about-people{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:75px}.person-card{position:relative;padding:48px 48px 46px;min-height:330px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.person-card h2{font-size:36px;font-weight:300;margin:8px 0 22px}.person-card>p:not(.kicker):not(.person-initial){font-size:16px;line-height:1.7;max-width:520px}.person-card a{display:inline-block;margin-top:22px;border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:14px}.person-initial{position:absolute;right:30px;top:6px;margin:0;font-size:112px;font-weight:300;letter-spacing:-8px;color:#f0eeeb;z-index:-1}.about-statement{display:grid;grid-template-columns:.8fr 1.35fr;gap:90px;border-top:1px solid var(--line);padding:65px 0 75px}.about-statement h2,.about-reference h2{font-size:42px;font-weight:300;line-height:1.12;letter-spacing:-1px;margin:12px 0 0}.about-copy p{font-size:17px;line-height:1.75;margin:0 0 22px}.principles{background:var(--soft);padding:55px;margin-bottom:75px}.principle-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:35px;border-top:1px solid #d7d2cc;border-left:1px solid #d7d2cc}.principle-grid>div{padding:28px 25px 32px;border-right:1px solid #d7d2cc;border-bottom:1px solid #d7d2cc;min-height:235px}.principle-grid span{font-size:12px;letter-spacing:2px;color:var(--taupe)}.principle-grid h3{font-size:18px;font-weight:400;margin:20px 0 12px}.principle-grid p{font-size:14px;line-height:1.65;margin:0;color:#50595e}.about-reference{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;border-top:1px solid var(--line);padding:60px 0 75px}.about-reference>div{max-width:850px}.about-reference p:not(.kicker){font-size:17px;line-height:1.7}.about-reference .back{white-space:nowrap;margin:0}@media(max-width:900px){.about-people{grid-template-columns:1fr}.about-statement{grid-template-columns:1fr;gap:25px}.principles{padding:35px 25px}.principle-grid{grid-template-columns:1fr 1fr}.about-reference{display:block}.about-reference .back{margin-top:25px}.about-statement h2,.about-reference h2{font-size:34px}}@media(max-width:600px){.principle-grid{grid-template-columns:1fr}.person-card{padding:35px 28px}.person-initial{font-size:90px}.about-intro{padding-top:55px}}

/* V14 Über uns – Portraits */
.about-people{gap:0}
.person-card{padding:0;min-height:0;display:grid;grid-template-columns:minmax(220px,42%) 1fr;overflow:hidden;background:#fff}
.person-photo{display:block;width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center top;filter:grayscale(100%);}
.person-info{padding:48px 42px 46px;align-self:center}
.person-info h2{font-size:36px;font-weight:300;margin:8px 0 22px}
.person-info>p:not(.kicker){font-size:16px;line-height:1.7;max-width:520px}
.person-info a{display:inline-block;margin-top:22px;border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:14px}
@media(max-width:1050px){.person-card{grid-template-columns:1fr}.person-photo{height:440px;min-height:0}.person-info{padding:35px 30px 40px}}
@media(max-width:600px){.person-photo{height:390px}.person-info{padding:30px 24px 34px}}
/* Makler & Finanzierung */
.finance-page{max-width:var(--max);margin:0 auto;padding:0 4vw 100px}.finance-lead,.finance-scope{display:grid;grid-template-columns:.85fr 1.35fr;gap:90px;border-top:1px solid var(--line);padding:65px 0 75px}.finance-lead h2,.finance-use h2,.finance-scope h2,.finance-reference h2{font-size:42px;font-weight:300;line-height:1.12;letter-spacing:-1px;margin:12px 0 0}.finance-lead>div:last-child p,.finance-scope>div:last-child p{font-size:17px;line-height:1.75;margin:0 0 22px}.finance-flow{background:var(--soft);padding:55px;margin-bottom:75px}.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:35px;border-top:1px solid #d7d2cc;border-left:1px solid #d7d2cc}.flow-grid>div{padding:28px 25px 32px;border-right:1px solid #d7d2cc;border-bottom:1px solid #d7d2cc;min-height:230px}.flow-grid span{font-size:12px;letter-spacing:2px;color:var(--taupe)}.flow-grid h3,.use-grid h3{font-size:18px;font-weight:400;margin:20px 0 12px}.flow-grid p,.use-grid p{font-size:14px;line-height:1.65;margin:0;color:#50595e}.finance-use{display:grid;grid-template-columns:.72fr 1.5fr;gap:75px;border-top:1px solid var(--line);padding:65px 0 75px}.use-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.use-grid article{padding:28px 30px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:185px}.finance-scope ul{margin:28px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.finance-scope li{padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}.finance-scope li:before{content:'—';color:var(--taupe);margin-right:14px}.finance-reference{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;background:var(--soft);padding:55px;margin-bottom:75px}.finance-reference>div{max-width:850px}.finance-reference p:not(.kicker){font-size:17px;line-height:1.7}.finance-reference .back{white-space:nowrap;margin:0}.finance-contact-copy{font-size:17px;line-height:1.7;max-width:820px;margin:-15px 0 35px}@media(max-width:900px){.finance-lead,.finance-scope,.finance-use{grid-template-columns:1fr;gap:25px}.flow-grid{grid-template-columns:1fr 1fr}.use-grid{grid-template-columns:1fr}.finance-reference{display:block;padding:35px 25px}.finance-reference .back{margin-top:25px}.finance-lead h2,.finance-use h2,.finance-scope h2,.finance-reference h2{font-size:34px}.finance-flow{padding:35px 25px}.finance-intro{padding-top:55px}}@media(max-width:600px){.flow-grid{grid-template-columns:1fr}}
