@font-face{font-family:Nunito;src:url('assets/nunito.ttf') format('truetype');font-weight:200 900;font-display:swap}@font-face{font-family:Oswald;src:url('assets/oswald.ttf') format('truetype');font-weight:200 700;font-display:swap}
:root{--ink:#332c72;--turquoise:#298f8c;--aqua:#52bfb4;--gold:#ffb829;--paper:#fffaf2}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:white;font:18px/1.65 Nunito,Arial,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}img{max-width:100%;display:block}h1,h2{font-family:Oswald,'Arial Narrow',sans-serif;line-height:1.2;font-weight:700;color:var(--turquoise);margin:0 0 24px}h1{font-size:clamp(36px,4.1vw,58px)}h2{font-size:30px;text-transform:uppercase}p{margin:0 0 22px}.wrap{width:min(1240px,calc(100% - 80px));margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:24px}.brand{width:345px;flex-shrink:0}.brand img{height:auto}nav{display:flex;gap:48px;align-items:center}nav a{padding:12px 0;text-decoration:none;position:relative}nav a[aria-current]{font-weight:800}nav a[aria-current]:after{content:'';height:4px;background:var(--gold);position:absolute;bottom:4px;left:0;right:0}.pastel{background:#fffaf5 url('assets/hintergrund-1600.webp') center/cover}.hero{position:relative}.hero:after{content:'';position:absolute;bottom:0;height:9px;left:0;right:0;background:linear-gradient(90deg,var(--ink) 0 33.33%,var(--aqua) 33.33% 66.66%,var(--gold) 66.66%)}.hero-grid{display:grid;grid-template-columns:1fr 1.13fr;gap:52px;align-items:center;padding-block:66px 76px}.location{font-size:16px;font-weight:700;margin-bottom:24px}.lead{font-size:clamp(23px,2.4vw,31px);line-height:1.45;color:#267f7b;margin:24px 0 32px}.button{display:inline-flex;align-items:center;gap:24px;border-radius:40px;padding:12px 26px;background:var(--ink);color:#fff;text-decoration:none;line-height:1.5}.button:hover{background:#494087}.collage{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:22px;height:465px}.photo{border-radius:26px;box-shadow:0 12px 22px #261e421a;width:100%;height:auto;object-fit:cover}.collage .photo{height:100%;min-height:0}.landscape{grid-column:2;grid-row:1/3;object-position:45% center}.puppet{grid-column:1;grid-row:1}.figures{grid-column:1;grid-row:2}.approaches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;padding-block:64px}.approaches article{min-width:0}.section-icon{width:94px;height:85px;object-fit:contain;margin-bottom:22px}.approaches h2{font-size:28px;min-height:101px}.prose p{font-size:17px;line-height:1.65}.approaches article:first-child .prose p:nth-child(2){font-style:italic;color:#247d77}.story-images{display:grid;gap:22px;margin-top:28px}.story-images .photo{max-height:245px}.approaches article:nth-child(2) .photo{max-height:500px;aspect-ratio:3/4;object-position:center}.contact-strip{padding:44px 0}.contact-strip .wrap{display:flex;gap:70px;align-items:center}.contact-strip h2{margin:0}address{font-style:normal;line-height:1.9;overflow-wrap:anywhere}address a{text-decoration:none}address a:hover{text-decoration:underline}.footer{padding-block:25px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:14px}.footer p{margin:0}.footer div{display:flex;gap:25px}.footer .image-note{width:100%;font-size:13px;color:#665f82}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:10}.skip:focus{top:12px}:focus-visible{outline:3px solid var(--ink);outline-offset:6px}.page-title{padding:55px 0}.page-title h1{max-width:850px}.page-title p:last-child{margin-bottom:0}.eyebrow{font-weight:800;margin-bottom:10px}.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-block:56px 32px}.service-group{padding:28px 24px;border-radius:28px}.service-group ul{margin:0;padding-left:22px}.service-group li{padding-bottom:13px}.service-group li:last-child{padding-bottom:0}.group-0{background:var(--gold)}.group-1{background:var(--ink);color:white}.group-2{background:#bce9e1}.service-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding-bottom:64px}.service-photos img{height:280px}.contact-layout{display:grid;grid-template-columns:320px 1fr;align-items:center;gap:65px;padding-block:60px}.portrait{height:410px;object-position:50% 30%}.contact-layout address{font-size:23px}.qual{padding-left:22px;margin-top:30px}.qual li{margin:10px 0}.cost{padding:48px 0}.narrow{max-width:850px}.cost p{margin:0}.legal{max-width:860px;padding-block:45px 75px}.legal h2{font-size:25px;margin-top:35px}.legal h1{margin-bottom:30px}.draft{border-left:5px solid var(--gold);background:#fff5d9;padding:18px 22px;margin-bottom:25px}.draft strong{display:block}
@media(min-width:1500px){.hero-grid{padding-block:80px 90px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.brand{width:285px}nav{gap:26px}.hero-grid{gap:30px}.collage{height:410px;gap:15px}.approaches{gap:25px}.approaches h2{font-size:24px;min-height:115px}.prose p{font-size:16px}.services{gap:18px}.service-group{padding:23px 18px}}
@media(max-width:760px){.header{flex-direction:column;gap:12px;padding-block:18px}.brand{width:min(320px,90%)}nav{gap:45px;font-size:17px}.hero-grid{grid-template-columns:1fr;padding-block:36px 46px;gap:34px}.hero-copy{max-width:580px}h1{font-size:42px}.lead{font-size:25px}.collage{height:420px;max-width:580px;width:100%;gap:18px}.approaches{grid-template-columns:1fr;gap:48px;padding-block:45px}.approaches h2{font-size:30px;min-height:0;max-width:530px}.prose p{font-size:18px}.section-icon{height:75px;width:85px;margin-bottom:18px}.story-images{grid-template-columns:1fr 1fr;align-items:stretch}.story-images .photo{height:240px;max-height:none}.approaches article:nth-child(2) .story-images{grid-template-columns:1fr}.approaches article:nth-child(2) .photo{height:360px;max-height:none;object-position:center 40%}.contact-strip .wrap{display:block}.contact-strip h2{margin-bottom:18px}.services{grid-template-columns:1fr;padding-block:35px 25px}.service-photos{gap:15px}.service-photos img{height:180px;border-radius:18px}.contact-layout{grid-template-columns:220px 1fr;gap:28px}.contact-layout address{font-size:18px}.portrait{height:320px}.qual{font-size:16px}.page-title{padding:36px 0}}
@media(max-width:480px){.wrap{width:calc(100% - 36px)}h1{font-size:36px}.lead{font-size:23px}.collage{height:330px;gap:12px}.photo{border-radius:20px}.story-images{gap:14px}.story-images .photo{height:200px}.contact-layout{grid-template-columns:1fr;padding-block:35px}.portrait{width:240px;height:320px}.contact-layout address{font-size:20px}.service-photos{grid-template-columns:1fr}.service-photos img{height:240px}.footer{font-size:14px}.approaches h2{font-size:28px}}
@keyframes gentle-arrival{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
 .hero-copy,.page-title .wrap,.legal{animation:gentle-arrival .55s ease-out both}
 .collage{animation:gentle-arrival .65s .08s ease-out both}
 .approaches article,.service-group,.contact-layout,.cost,.contact-strip{animation:gentle-arrival .6s ease-out both}
 .approaches article:nth-child(2),.service-group:nth-child(2){animation-delay:.08s}
 .approaches article:nth-child(3),.service-group:nth-child(3){animation-delay:.16s}
 .button,.photo,.brand,.section-icon{transition:transform .25s ease,box-shadow .25s ease,background .2s ease}
 nav a:after{content:'';height:4px;background:var(--gold);position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
 nav a[aria-current]:after,nav a:hover:after,nav a:focus-visible:after{transform:scaleX(1)}
 .button:hover,.button:focus-visible{transform:translateY(-2px)}
 @supports(animation-timeline:view()){
  .approaches article,.service-group,.service-photos .photo,.contact-layout,.cost,.contact-strip{animation:gentle-arrival linear both;animation-timeline:view();animation-range:entry 0% entry 18%}
 }
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.photo:hover{transform:translateY(-3px);box-shadow:0 15px 28px #261e4224}.brand:hover{transform:translateY(-1px)}}

