/* Foto Brunke: ruhige Flächen und unverfälschte Fotografien. */
:root{--header-paper:#fbf8f4;--paper:#f5f2ed;--light:#fffdf9;--ink:#242321;--muted:#625e58;--line:#d9d3c9;--shell:min(1200px,calc(100vw - 64px))}
h1,h2{letter-spacing:-.035em;line-height:1.1}h1{font-size:clamp(38px,4.5vw,64px)}h2{font-size:clamp(30px,3vw,42px)}
a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:5px}
.service-strip{background:var(--header-paper);color:var(--muted);font-size:12px;font-weight:400;letter-spacing:0;text-transform:none}.service-strip__inner{padding-block:8px}.service-strip a{text-decoration:none}.service-strip a:hover{text-decoration:underline}.service-strip__detail:before{display:none}
.site-header{position:relative;background:var(--header-paper);backdrop-filter:none}.site-header__inner{min-height:100px}.brand{flex-basis:250px}.brand__crop{background:var(--header-paper)}.site-navigation a{font-weight:500}.site-navigation__cta a{padding:9px 13px}
.home-hero .site-shell,.image-service .site-shell{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;gap:0 48px;padding-right:0;align-content:center}
.home-hero header,.image-service header{grid-column:1;grid-row:1;align-self:end}
.home-hero .ce-bodytext,.image-service .ce-bodytext{grid-column:1;grid-row:2;min-width:0;align-self:start}
.home-hero .ce-gallery,.image-service .ce-gallery{position:relative;top:auto;right:auto;grid-column:2;grid-row:1/span 2;width:auto;height:auto;min-width:0;margin:0;align-self:stretch}
.home-hero .ce-gallery .ce-row,.home-hero .ce-gallery .ce-column,.image-service .ce-gallery .ce-row,.image-service .ce-gallery .ce-column{width:100%;margin:0;float:none}
.home-hero{padding:48px 0 56px}.home-hero .site-shell{min-height:420px}.home-hero .ce-gallery{min-height:420px}.home-hero .ce-gallery figure{position:absolute;inset:0}.home-hero .ce-gallery:before,.image-service .ce-gallery:before{display:none}.home-hero .ce-gallery figure img{filter:none;object-position:center}.home-hero .ce-bodytext>p:first-child{margin:24px 0;font-size:17px;line-height:1.65}.home-hero header>:last-child{font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:none;margin-bottom:18px}.home-hero .hero-contact{margin:24px 0 0;font-size:14px;color:var(--muted)}.hero-contact a{text-underline-offset:4px}
.button,.button--primary,.button--text{font-size:14px;letter-spacing:0;font-weight:500;transition:color .15s,background .15s}.button--primary:hover{transform:none}.button-row{gap:20px}.button--text:after{display:none}
.quick-services{padding:38px 0 54px;background:var(--light)}.quick-services .site-shell{gap:28px;border-top:1px solid var(--line);padding-top:32px}.quick-services .frame-type-text{display:block;margin-bottom:0}.quick-services .frame-type-text p{margin:12px 0 0;max-width:650px;color:var(--muted)}
.quick-services header>:last-child,.portfolio header>:last-child,.image-service header>:last-child,.visit header>:last-child,.history-teaser header>:last-child{margin:0;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-transform:none}
.quick-services header h2:last-child,.portfolio header h2:last-child,.image-service header h2:last-child,.visit header h2:last-child,.history-teaser header h2:last-child{font-size:clamp(30px,3vw,42px);letter-spacing:-.035em;line-height:1.1}
.quick-services .service-card,.quick-services .frame:nth-child(2) .service-card,.quick-services .frame:nth-child(4) .service-card{min-height:0;margin:0;padding:0 0 22px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink)}.quick-services .service-card:hover,.quick-services .service-card:focus{color:var(--ink)!important;transform:none;box-shadow:none}
.service-card__image{height:240px;margin:0 0 22px;background:transparent;border:0!important}.service-card__image img{filter:none;object-fit:cover;object-position:center;transition:none}.service-card__image--portrait img{object-fit:contain}.service-card:hover .service-card__image img,.service-card:focus .service-card__image img{transform:none;filter:none}.service-card__title{font-size:25px;font-weight:500;letter-spacing:-.02em;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:6px}.service-card:hover .service-card__title{color:var(--red);text-decoration-color:var(--red)}.service-card__text{max-width:320px;color:var(--muted);opacity:1;font-size:15px}
.portfolio{padding:54px 0 64px;background:var(--paper);color:var(--ink)}.portfolio .frame-type-text{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px;gap:24px}.portfolio .frame-type-text p{margin:0}.portfolio .frame-type-text .button--text{color:var(--ink)}.portfolio .ce-figures{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto;gap:18px;align-items:start}.portfolio .ce-figures figure:nth-child(n){grid-column:auto;grid-row:auto;overflow:visible}.portfolio .ce-figures img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;filter:none;transition:none}.portfolio .ce-figure--portrait img{object-fit:contain}.portfolio .ce-figures figure:hover img{filter:none;transform:none}
.image-service{padding:64px 0;background:var(--light)}.image-service .site-shell{min-height:330px}.image-service .ce-gallery{display:flex;align-items:center}.image-service .ce-gallery .ce-row,.image-service .ce-gallery .ce-column{height:auto}.image-service .ce-gallery figure img{height:auto;aspect-ratio:auto;filter:none}.image-service .ce-bodytext>p:not(.eyebrow){margin:22px 0;font-size:16px}
.history-teaser{padding:38px 0;background:var(--light)}.history-teaser__inner{max-width:1200px;padding:32px 0;border-left:0;border-top:1px solid var(--line)}.history-teaser__inner header{margin-bottom:18px}.history-teaser__inner .ce-bodytext,.history-teaser__inner p{max-width:760px;color:var(--muted)}
.visit{padding:46px 0;background:var(--paper);scroll-margin-top:20px}.visit .site-shell{grid-template-columns:1fr 1.4fr;gap:48px;align-items:start}.visit__details{padding-top:0;border:0;gap:32px}.visit h3{font-size:14px;letter-spacing:0;text-transform:none}.visit p{font-size:15px}
.site-footer{padding:35px 0 22px;background:var(--light);color:var(--muted)}.site-footer__grid{padding-bottom:30px}.site-footer h2,.site-footer__brand p{color:var(--ink)}.site-footer h2{letter-spacing:0;text-transform:none;font-size:14px}.site-footer a:hover{color:var(--red)}.site-footer__bottom{border-color:var(--line);color:var(--muted);letter-spacing:0;text-transform:none;font-size:12px}.site-footer__compact{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:24px}.site-footer__compact p{margin:0;color:var(--ink)}.site-footer__compact nav{display:flex;flex-wrap:wrap;gap:12px 24px}
.page-intro{padding:40px 0 32px;background:var(--light)}.page-intro h1{font-size:clamp(36px,4.5vw,60px);hyphens:auto;overflow-wrap:anywhere}.page-intro .eyebrow{font-size:12px;letter-spacing:.04em;text-transform:none;margin-bottom:14px}.page-content{padding-top:24px;padding-bottom:60px}.fb-gallery__item img,.fb-gallery__item:hover img,.fb-gallery__item:focus-visible img{filter:none;transform:none;transition:none}
.history-page{padding:50px 0 70px;background:var(--light)}.history-page .frame-type-text.frame-layout-1 h1{font-size:clamp(38px,5vw,64px)}.history-page .frame-type-text.frame-layout-1{margin-bottom:40px}.history-page .frame-type-bullets.frame-layout-1{margin:45px 0}.history-page .ce-figures img{filter:none}
@media(max-width:1050px){.site-header__inner{min-height:84px}.brand{flex-basis:220px}.site-navigation a{font-weight:500}.home-hero .site-shell{min-height:380px}.home-hero .ce-gallery{min-height:380px}.home-hero .site-shell,.image-service .site-shell{column-gap:32px}.service-card__image{height:200px}.visit .site-shell{grid-template-columns:1fr;gap:28px}.visit .visit__details{grid-column:1}}
@media(max-width:760px){:root{--shell:calc(100vw - 40px)}.service-strip__inner{justify-content:space-between}.service-strip__detail{display:block;max-width:125px;text-align:right}.service-strip{font-size:11px}.site-header__inner{min-height:76px}.brand{flex-basis:190px}.home-hero{padding:30px 0 36px}.home-hero .site-shell,.image-service .site-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;min-height:0;gap:0}.home-hero h1{max-width:440px}.home-hero .ce-gallery,.image-service .ce-gallery{grid-column:1;grid-row:3;width:100%;min-height:0;margin-top:28px}.home-hero .ce-gallery figure{position:relative;inset:auto;height:auto;max-height:none}.home-hero .ce-gallery figure img{height:auto;aspect-ratio:4/3;object-fit:cover}.home-hero .hero-contact{margin-top:18px}.quick-services{padding:0 0 36px}.quick-services .site-shell{gap:26px;padding-top:28px}.quick-services .service-card{display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:18px;align-content:start;padding-bottom:24px}.service-card__image{grid-row:1/span 2;height:112px;margin:0}.service-card__title{font-size:22px;align-self:end;line-height:1.2}.service-card__text{font-size:14px;margin-top:10px}.portfolio{padding:36px 0}.portfolio .frame-type-text{display:block;margin-bottom:24px}.portfolio .frame-type-text p{margin-top:16px}.portfolio .ce-figures{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:14px}.portfolio .ce-figures figure:nth-child(n){grid-column:auto;grid-row:auto;margin-top:0}.image-service{padding:38px 0 20px}.history-teaser{padding:15px 0 30px}.visit{padding:32px 0}.visit__details{grid-template-columns:1fr 1fr;gap:20px}.site-footer__compact{align-items:flex-start;flex-direction:column;gap:18px}.site-footer__grid{gap:26px}.page-intro{padding:30px 0 24px}}
@media(max-width:380px){.visit__details{grid-template-columns:1fr}.button-row{gap:12px}.button--primary{padding-inline:16px}}

/* Redaktioneller Studio-Einblick und erläuterte Bildbeispiele. */
.studio{padding:12px 0 64px}
.studio .frame-type-textmedia{display:grid;grid-template-columns:1fr 1.15fr;gap:28px 64px}
.studio .ce-textpic{display:contents}
.studio header{grid-column:1;grid-row:2}
.studio .ce-gallery{grid-column:1/-1;grid-row:1;margin:0;float:none;width:100%}
.studio .ce-gallery .ce-row,.studio .ce-gallery .ce-column{width:100%;margin:0;float:none}
.studio figure{margin:0}.studio figure img{width:100%;height:auto}
.studio figcaption{margin-top:10px;font-size:12px;color:var(--muted)}
.studio .ce-bodytext{grid-column:2;grid-row:2;color:var(--muted)}
.studio .ce-bodytext p{margin:0 0 18px}.studio .ce-bodytext p:last-child{margin-bottom:0}
.portfolio .frame-type-text{align-items:start}
.portfolio .frame-type-text>p{max-width:610px;color:var(--muted)}
.portfolio .ce-figures figcaption{display:block;margin-top:18px;color:var(--muted);font-size:14px;line-height:1.6}
.portfolio .ce-figures figcaption p{margin:0}
.portfolio .ce-figures figcaption a{display:inline-block;margin-bottom:8px;color:var(--ink);font-size:18px;text-decoration-color:var(--line);text-underline-offset:5px}
.portfolio .ce-figures figcaption a:hover{color:var(--red);text-decoration-color:var(--red)}
@media(max-width:760px){
 .studio{padding:0 0 38px}
 .studio .frame-type-textmedia{grid-template-columns:1fr;gap:22px}
 .studio header{grid-column:1;grid-row:2}
 .studio .ce-bodytext{grid-column:1;grid-row:3}
 .portfolio .ce-figures{row-gap:28px}
 .portfolio .ce-figures figcaption{margin-top:12px;font-size:13px}
 .portfolio .ce-figures figcaption a{font-size:17px}
}
