@font-face{font-family:Fraunces;src:url(/assets/fraunces-latin.woff2)}@font-face{font-family:Source;src:url(/assets/source-sans-3-latin.woff2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#0b0b0a;color:#e9e5db;font-family:Source,Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid #e9e5db;outline-offset:6px}header{position:absolute;inset:0 0 auto;z-index:3;display:flex;justify-content:center;align-items:center;gap:clamp(22px,5vw,85px);padding:32px 24px;font-size:11px;letter-spacing:.2em;text-transform:uppercase}.wordmark{font-family:Fraunces,serif;font-size:14px;letter-spacing:.25em}.hero{position:relative;height:max(800px,100svh);overflow:hidden;background:#0a0a09}.portrait-stage{position:absolute;inset:0;display:flex;justify-content:center}.portrait-stage img{height:100%;width:auto;max-width:100%;object-fit:contain}.hero-title{position:absolute;left:0;right:0;top:53%;text-align:center;z-index:2}.hero-title p{font-size:10px;letter-spacing:.32em;text-transform:uppercase;margin:0 0 18px}h1{font-family:Fraunces,Georgia,serif;font-weight:350;font-size:clamp(76px,10.8vw,172px);line-height:.83;letter-spacing:-.06em;margin:0;text-shadow:0 2px 30px #0008}h1 span{letter-spacing:-.055em}.hero-bottom{position:absolute;bottom:32px;left:40px;right:40px;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.16em}.hero-bottom a{font-size:32px}.section{max-width:1240px;margin:auto;padding:130px 40px}.eyebrow{font-size:10px;letter-spacing:.2em;color:#96968e;margin:0 0 28px}h2{font-family:Fraunces,Georgia,serif;font-size:clamp(45px,5.8vw,84px);line-height:1;letter-spacing:-.04em;font-weight:350;margin:0 0 30px}.intro{display:grid;grid-template-columns:1fr 1.5fr;border-bottom:1px solid #30302d}.copy{color:#b8b7ae;font-size:20px;line-height:1.55;max-width:510px}.text-link{display:inline-block;font-size:14px;border-bottom:1px solid #84847b;padding:15px 0;margin-top:15px}.section-heading{margin-bottom:70px}.work-row{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:25px;padding:46px 0;border-top:1px solid #30302d}.work-row>span{font-size:11px;color:#aaa99f}.work-row strong{font-family:Fraunces,serif;font-weight:350;font-size:45px;line-height:1.05}.work-row>span:last-child{text-align:right}.offer{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:center}.offer img{width:100%;height:auto}footer{border-top:1px solid #30302d;padding:30px 40px;display:flex;justify-content:space-between;gap:25px;color:#96968e;font-size:10px;letter-spacing:.1em}@media(max-width:650px){header{padding:24px 16px;gap:22px;font-size:9px}header>a:nth-child(2),header>a:nth-child(4){display:none}.wordmark{font-size:11px}.hero{height:100svh;min-height:690px}.portrait-stage img{width:100%;height:100%;object-fit:cover;object-position:center top}.hero-title{top:59%}.hero-title p{font-size:8px;letter-spacing:.18em}h1{font-size:21vw}.hero-bottom{left:20px;right:20px;bottom:22px;font-size:8px}.hero-bottom>span:last-child{max-width:105px;text-align:right}.section{padding:80px 22px}.intro,.offer{grid-template-columns:1fr;gap:32px}.copy{font-size:18px}.work-row{grid-template-columns:1fr;gap:18px;padding:32px 0}.work-row>span:last-child{text-align:left}.work-row strong{font-size:40px}.offer img{max-width:360px}footer{padding:26px 22px;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Weicher grauer Übergang zwischen Originalporträt und Seitenfläche. */
.hero{background:#242423}
.portrait-stage img{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 18%,#000 82%,transparent 100%)}
@media(max-width:650px){.portrait-stage img{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%)}}

.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;border-top:1px solid #30302d;scroll-margin-top:32px}.contact-address{font-size:15px;color:#aaa99f}.contact form{display:grid;gap:24px}.contact label{display:grid;gap:10px;font-size:13px;letter-spacing:.04em}.contact-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact input,.contact select,.contact textarea{width:100%;min-width:0;background:#171715;border:1px solid #505049;border-radius:0;color:#e9e5db;font:inherit;font-size:17px;padding:14px}.contact textarea{resize:vertical;min-height:145px}.contact input:focus-visible,.contact select:focus-visible,.contact textarea:focus-visible,.contact button:focus-visible{outline:2px solid #e9e5db;outline-offset:4px}.contact button{display:flex;justify-content:space-between;align-items:center;gap:40px;min-height:52px;width:fit-content;background:#e9e5db;color:#151512;border:0;font:inherit;font-size:15px;padding:16px 24px;cursor:pointer}.form-note,#form-status{font-size:13px;line-height:1.5;color:#aaa99f;margin:0}#form-status:not(:empty){padding:16px;border:1px solid #505049;color:#e9e5db}@media(max-width:650px){.contact{grid-template-columns:1fr;gap:32px}.contact-pair{grid-template-columns:1fr}}

.project-showcase,.book-showcase,.audio-showcase,.workflow-outlook{border-top:1px solid #383832;padding:90px 0}.project-copy{max-width:650px}.work h3{font-family:Fraunces,Georgia,serif;font-weight:350;font-size:clamp(44px,5.4vw,78px);letter-spacing:-.04em;line-height:1.03;margin:0 0 28px}.app-stage{margin-top:60px;background:#272726;padding:60px 80px;display:grid;grid-template-columns:1fr .88fr;align-items:start;gap:60px;overflow:hidden}.app-shot{margin:0;min-width:0}.app-shot img{display:block;width:100%;height:auto;border:1px solid #c9c4b8}.app-shot.primary{max-height:690px;overflow:hidden;position:relative}.app-shot.primary img{height:650px;object-fit:cover;object-position:top}.app-shot.secondary{margin-top:80px}.app-shot.secondary img{height:540px;object-fit:cover;object-position:top}.app-shot figcaption{color:#e9e5db;font-size:11px;letter-spacing:.08em;margin-top:16px}.material-note{color:#99998e;font-size:13px;line-height:1.6}.project-showcase>.material-note{margin-top:22px}.book-showcase{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;align-items:center}.book-spread{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:28px;background:#d2cfc5;transform:rotate(-2deg);box-shadow:0 25px 60px #0005}.book-spread img{width:100%;height:auto;box-shadow:0 4px 12px #0002}.book-spread:hover{transform:rotate(0deg);transition:transform .3s}.audio-showcase{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.audio-panel{border:1px solid #505049;padding:32px;background:#181817}.audio-panel>p:first-child{font-family:Fraunces,serif;font-size:30px;margin:0 0 8px}.audio-panel>span{color:#aaa99f;font-size:13px}audio{display:block;width:100%;margin:28px 0;color-scheme:dark}.workflow-outlook{padding-bottom:0}@media(max-width:650px){.project-showcase,.book-showcase,.audio-showcase,.workflow-outlook{padding:60px 0}.app-stage{padding:22px 18px;gap:18px;margin-top:35px;grid-template-columns:1fr}.app-shot.primary,.app-shot.secondary{max-width:100%;margin:0}.app-shot.primary img,.app-shot.secondary img{height:430px;object-fit:cover;object-position:top}.book-showcase,.audio-showcase{grid-template-columns:1fr;gap:35px}.book-spread{padding:12px;transform:none}.audio-panel{padding:22px}.work h3{font-size:45px}.workflow-outlook{padding-bottom:0}}@media(prefers-reduced-motion:reduce){.book-spread:hover{transition:none}}

/* App-Flächen randfüllend, ohne vorgelagerten Innenrahmen. */
.app-stage{padding:0;gap:1px;grid-template-columns:1fr 1fr;background:#484840}.app-shot.primary{max-height:none;overflow:visible}.app-shot.secondary{margin-top:0}.app-shot.primary img,.app-shot.secondary img{height:650px;border:0;width:100%;object-fit:cover;object-position:top}.app-shot figcaption{background:#171715;margin:0;padding:18px;color:#d0cec5}.app-video{display:grid;grid-template-columns:1fr 320px;gap:100px;align-items:center;margin-top:90px}.app-video video{display:block;width:100%;aspect-ratio:9/16;background:#171715;object-fit:contain;border:1px solid #383832}@media(max-width:650px){.app-stage{grid-template-columns:1fr;gap:24px;background:transparent}.app-shot.primary img,.app-shot.secondary img{height:500px}.app-video{grid-template-columns:1fr;gap:30px;margin-top:60px}.app-video video{max-width:340px;justify-self:center}}

/* Gesamte Originalansichten erhalten; große Ansicht per Klick. */
.app-shot.primary img,.app-shot.secondary img{height:auto;object-fit:contain;aspect-ratio:auto}.app-expand{display:block;cursor:zoom-in}.app-expand:focus-visible{outline:3px solid #e9e5db;outline-offset:5px}.app-shot.primary{overflow:visible;max-height:none}

/* Porträts in der bestehenden Gestaltung. */
.portrait-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 33%,rgba(15,15,14,.16) 45%,rgba(15,15,14,.64) 67%,rgba(15,15,14,.35) 100%);pointer-events:none}.person-portrait{padding-right:70px}.person-portrait img{display:block;width:100%;max-width:300px;height:auto}.intro{align-items:center}.offer img{max-width:460px}@media(max-width:650px){.person-portrait{padding:0}.person-portrait img{max-width:220px}.intro{gap:40px}}

.waitlist fieldset{margin:0;padding:22px;border:1px solid #505049;display:grid;gap:18px}.waitlist legend{padding:0 8px;font-size:14px}.waitlist fieldset label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.waitlist input[type=checkbox]{width:20px;height:20px;min-width:20px;margin:3px 0;accent-color:#d7c7a6}.waitlist small{display:block;color:#aaa99f;font-size:12px;margin-top:4px}#waitlist-status{font-size:14px;line-height:1.5}.mentoring{border-top:1px solid #30302d}#warteliste{scroll-margin-top:30px}

/* Full-body portrait reveal: one photograph, two framings. */
button.portrait-stage{width:100%;height:100%;padding:0;border:0;border-radius:0;background:none;color:inherit;cursor:zoom-in;overflow:hidden;font:inherit}
button.portrait-stage img{height:175%;width:auto;max-width:none;object-fit:contain;object-position:center top;flex-shrink:0}
.hero-title{pointer-events:none}.hero-bottom{pointer-events:none}.hero-bottom a{pointer-events:auto}
.portrait-hint{position:absolute;right:35px;top:110px;z-index:2;font-size:10px;letter-spacing:.16em;padding:12px 0;border-bottom:1px solid #aaa9;opacity:.85}.portrait-hint span{font-size:18px;margin-left:10px}
#portrait-dialog{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#242423;color:#eee8dc;overflow:hidden;cursor:zoom-out}
#portrait-dialog::backdrop{background:#171716}
.portrait-full{position:absolute;top:50%;left:50%;height:calc(100dvh - 64px);width:auto;max-width:calc(100vw - 32px);object-fit:contain;transform:translate(-50%,-50%);display:block}
.portrait-close{position:absolute;z-index:2;right:28px;top:24px;background:#242423dc;color:#eee8dc;border:1px solid #aaa8;padding:12px 18px;font:14px Source,Arial,sans-serif;cursor:pointer}.portrait-close span{font-size:20px;margin-left:14px}
.portrait-caption{position:absolute;bottom:8px;width:100%;text-align:center;font:10px Source,Arial,sans-serif;letter-spacing:.25em;pointer-events:none}
@media(max-width:650px){button.portrait-stage img{height:165%;width:auto;max-width:none}.portrait-hint{right:18px;top:82px;font-size:8px}.portrait-full{height:auto;width:calc(100vw - 24px);max-height:calc(100dvh - 110px);max-width:none}.portrait-close{top:16px;right:16px}}

@media(max-width:650px){.portrait-hint{top:auto;bottom:125px;background:#242423aa;padding:10px 12px;border:1px solid #aaa6}}

/* Original-PNG for the close view: no generated face or JPEG conversion. */
button.portrait-stage img{height:120%;width:auto;max-width:none}
@media(max-width:650px){button.portrait-stage img{height:112%;width:auto;max-width:none}}

/* The bookable agency leads; upcoming products follow. */
.agency{scroll-margin-top:30px;border-bottom:1px solid #30302d}.agency-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.agency-intro .eyebrow{color:#c4b89d}.agency-cta{display:inline-flex;align-items:center;gap:36px;background:#e9e5db;color:#151512;padding:18px 24px;margin-top:20px;font-size:16px}.agency-case{margin-top:90px}.case-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.case-heading .eyebrow{margin-bottom:16px}.agency h3{font:350 clamp(32px,4vw,56px)/1.1 Fraunces,Georgia,serif;letter-spacing:-.035em;margin:0}.case-preview{display:block;border:1px solid #484840;overflow:hidden}.case-preview img{display:block;width:100%;height:auto}.case-preview>span{display:flex;justify-content:space-between;padding:15px 20px;background:#191918;font-size:13px;color:#c9c6bd}.case-detail{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:34px}.case-summary{font:350 32px/1.15 Fraunces,Georgia,serif;margin:0}.case-detail .copy{margin-top:0;font-size:18px}.case-services{font-size:12px;color:#aaa99f;line-height:1.7}.ongoing-heading{margin-top:76px}.ongoing-heading .eyebrow{margin-bottom:14px}.ongoing-heading>p:last-child{color:#b8b7ae;font-size:18px}.ongoing-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:30px}.ongoing-grid article{border-top:1px solid #505049;padding:28px 0 0}.project-state{font-size:10px;letter-spacing:.13em;color:#b8b09c;margin:0 0 22px}.ongoing-grid h3{font-size:36px}.ongoing-grid article>p:last-child{color:#aaa99f;font-size:17px;line-height:1.5}.case-heading .text-link{white-space:nowrap;margin:0}
@media(max-width:650px){.agency-intro,.case-detail,.ongoing-grid{grid-template-columns:1fr;gap:24px}.agency-intro h2{margin-bottom:0}.agency-case{margin-top:60px}.case-heading{align-items:start;flex-direction:column;gap:10px}.case-heading .text-link{font-size:13px}.case-summary{font-size:28px}.agency-cta{font-size:15px;padding:16px 20px;gap:20px}.ongoing-heading{margin-top:50px}.ongoing-grid{gap:30px}}

.labs{display:grid;grid-template-columns:1fr 280px;gap:90px;align-items:center;border-top:1px solid #30302d;scroll-margin-top:28px}.labs-film{margin:0}.labs-film video{display:block;width:100%;height:auto;aspect-ratio:9/16;background:#171715;border:1px solid #484840}.labs-film figcaption{font-size:12px;line-height:1.6;color:#aaa99f;margin-top:14px}.labs-status{display:inline-block;border:1px solid #75674e;color:#d9bf94;font-size:13px;padding:12px 16px;margin:20px 0 0}.labs .eyebrow{color:#c8b695}@media(max-width:650px){.labs{grid-template-columns:1fr;gap:32px}.labs-film{width:min(100%,280px);justify-self:center}}


/* Production language, form and status controls. */
header{padding-right:118px}.language-switch{position:absolute;right:28px;display:flex;gap:10px;align-items:center}.language-switch a{padding:7px 5px;border-bottom:1px solid transparent}.language-switch a[aria-current=page]{border-bottom-color:currentColor}.honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}.consent{grid-template-columns:20px 1fr!important;align-items:start;gap:12px!important;line-height:1.5}.consent input{width:20px;height:20px;margin:2px 0;accent-color:#d7c7a6}.consent a,.form-note a{text-decoration:underline;text-underline-offset:3px}.contact button:disabled{cursor:wait;opacity:.62}.form-status{font-size:14px;line-height:1.5;margin:0}.form-status:not(:empty){padding:16px;border:1px solid #505049}.form-status[data-state=error]{border-color:#a96860;color:#f0b9b2}.form-status[data-state=success]{border-color:#6f8f73;color:#c3dec6}
@media(max-width:650px){header{padding-right:70px}.language-switch{right:12px;gap:4px}.language-switch a{font-size:8px;padding:6px 3px}header>a:first-child{display:none}}

/* SEO pass 19.10.2026: location line, accessible h1 text, mobile menu and touch targets. */
.hero-title h1{text-transform:uppercase}.agency-location{margin:0;color:#96968e;font-size:14px;line-height:1.5}.menu-toggle,.mobile-menu{display:none}
/* Keep the reserved space from width/height; the design CSS sets aspect-ratio:auto, which drops it before load. */
.app-shot.primary img,.app-shot.secondary img{aspect-ratio:auto 1290/2796}
@media(max-width:650px){header{padding:16px 64px;font-size:11px}header>a:not(.wordmark),header>.language-switch{display:none}.wordmark{position:relative;z-index:2;display:inline-flex;align-items:center;min-height:44px;padding:0 4px}
.menu-toggle{position:absolute;right:8px;z-index:2;display:inline-flex;align-items:center;gap:10px;min-width:44px;min-height:44px;padding:0 12px;border:0;background:none;color:inherit;font:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer}.menu-toggle::after{content:"+";content:"+"/"";font-size:20px;line-height:1;letter-spacing:0;transition:transform .2s ease}.menu-toggle[aria-expanded=true]::after{transform:rotate(45deg)}.menu-toggle:focus-visible{outline:2px solid #e9e5db;outline-offset:-4px}
.mobile-menu:not([hidden]){position:fixed;inset:0;z-index:1;display:flex;flex-direction:column;padding:96px 22px 32px;overflow-y:auto;background:#0b0b0a;animation:menu-in .2s ease-out}.mobile-menu nav:first-child{display:flex;flex-direction:column;border-top:1px solid #30302d}.mobile-menu nav:first-child a{display:flex;align-items:center;min-height:60px;border-bottom:1px solid #30302d;font:350 30px/1.1 Fraunces,Georgia,serif;letter-spacing:-.02em;text-transform:none}.mobile-menu-language{display:flex;gap:8px;margin-top:24px;font-size:13px}.mobile-menu-language a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-bottom:1px solid transparent}.mobile-menu-language a[aria-current=page]{border-bottom-color:currentColor}.mobile-menu a:focus-visible{outline-offset:-2px}
.hero{--hero-name:clamp(56px,19vw,96px);--hero-title-top:min(59%,calc(100% - 184px - 1.66 * var(--hero-name)))}.hero-title{top:var(--hero-title-top)}.hero-title h1{font-size:var(--hero-name)}.portrait-hint{top:calc(var(--hero-title-top) + 49px + 1.66 * var(--hero-name));bottom:auto}
footer{gap:6px}footer a{display:inline-flex;align-items:center;min-height:44px}}
@keyframes menu-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.mobile-menu:not([hidden]){animation:none}.menu-toggle::after{transition:none}}
