/* One continuous photographic backdrop; the reader sets the pace of the text. */
.home-page .story-cinema{display:grid;isolation:isolate;height:auto;background:#111b15}
.home-page .story-cinema .intro-frame{grid-area:1/1;position:sticky;top:0;align-self:start;height:100svh;min-height:0;display:block;z-index:0}
.home-page .story-cinema .intro-photos{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}
.home-page .story-cinema .intro-image{object-fit:cover;object-position:50% 42%}
.home-page .story-cinema .intro-shade{display:block;background:linear-gradient(180deg,#10181370 0%,#10181308 35%,#10181328 67%,#101813de 100%),linear-gradient(90deg,#10181370 0%,#10181338 46%,#10181330 100%)}
.home-page .story-flow{grid-area:1/1;position:relative;z-index:1;pointer-events:none;min-width:0}
.home-page .story-flow a{pointer-events:auto}
.home-page .story-opening{min-height:100svh;display:flex;align-items:flex-end;padding:130px 4.3% 190px}
.home-page .story-opening-copy{width:100%;max-width:1440px;margin-inline:auto}
.home-page .story-title{font-family:"Segoe UI",Arial,sans-serif;font-size:clamp(72px,min(10.7vw,15svh),172px);line-height:.93;font-weight:600;letter-spacing:-.065em;color:#fffaf0;margin:0}
.home-page .story-title>span{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
.home-page .story-title>span>span{display:block}
.home-page .story-title .story-title-small{font-size:clamp(26px,2.8vw,44px);font-weight:400;letter-spacing:-.025em;line-height:1.3;margin-bottom:13px}
.home-page .story-title-line{text-transform:uppercase}
.home-page .story-title .story-title-offset{margin-left:17vw;color:#d9c5a3;margin-top:8px}
.home-page .story-continue{display:inline-flex;align-items:center;gap:23px;margin-top:35px;font-size:14px;line-height:1.6;color:#f8f4ea}
.home-page .story-continue>span{font-size:21px;color:#d9c5a3}
.home-page .story-cinema .intro-bottom{grid-area:1/1;align-self:start;position:sticky;top:calc(100svh - 136px);left:auto;right:auto;bottom:auto;z-index:3;isolation:isolate;width:91.4%;height:136px;margin:calc(100svh - 136px) auto 0;padding:22px 0 26px;grid-template-columns:1.15fr 1fr auto;border-top:1px solid #f6e8ce60}
.home-page .story-cinema .intro-project{position:relative}
.home-page .story-cinema .intro-bottom:before{content:"";position:absolute;z-index:-1;left:-4.7046%;right:-4.7046%;top:-36px;bottom:0;background:linear-gradient(transparent 0%,#111b15f5 22%,#111b15 50%);pointer-events:none}
.home-page.story-scrolled .site-masthead{background:#111b15}
.home-page .story-panel{min-height:112svh;padding:110px 4.3% 230px;display:grid;grid-template-columns:1fr 1.7fr;gap:8vw;align-content:center;align-items:start;scroll-margin-top:125px}
.home-page .story-signature{padding-top:15px}
.home-page .story-signature .eyebrow,.home-page .story-company>.eyebrow{font-size:13px;letter-spacing:.12em;color:#e0ceaf}
.home-page .story-signature>p:not(.eyebrow){font-size:23px;line-height:1.45;margin-bottom:28px;color:#fffaf0}
.home-page .story-signature .story-founded{font-size:15px!important;line-height:1.75!important;color:#e7e5dd!important;padding-top:22px;border-top:1px solid #eee1c759;max-width:245px}
.home-page .story-company{max-width:780px;text-shadow:0 2px 22px #101813b0}
.home-page .story-company h2{font-size:clamp(43px,5.7vw,86px);font-weight:500;line-height:1.08;letter-spacing:-.045em;color:#fffaf0;margin:0 0 32px}
.home-page .story-company h2 span{display:block}
.home-page .story-company h2 em{font-family:Georgia,serif;font-weight:400;color:#e0ceaf}
.home-page .story-copy{max-width:590px}
.home-page .story-copy p{font-size:18px;line-height:1.8;color:#f3f1e9;margin-bottom:20px}
.home-page .story-copy .button{color:#fffaf0;border-color:#d9c5a3}
.home-page #projekte-entdecken{position:relative;scroll-margin-top:115px;z-index:2}
.home-page.motion-ready:not(.motion-paused) .story-title>span>span{animation:story-type-arrive 1s cubic-bezier(.16,1,.3,1) both}
.home-page.motion-ready:not(.motion-paused) .story-title>span:nth-child(2)>span{animation-delay:.1s}
.home-page.motion-ready:not(.motion-paused) .story-title>span:nth-child(3)>span{animation-delay:.2s}
@keyframes story-type-arrive{from{transform:translateY(105%);opacity:0}to{transform:none;opacity:1}}
@media(min-width:1600px){
 .home-page .story-panel{padding-inline:max(4.3%,calc((100vw - 1440px)/2))}
}
@media(max-width:1100px) and (min-width:761px){
 .home-page .story-cinema .intro-bottom{grid-template-columns:1fr 1fr;gap:24px}
 .home-page .story-panel{grid-template-columns:.65fr 1.6fr;gap:40px}
 .home-page .story-signature>p:not(.eyebrow){font-size:20px}
 .home-page .story-opening{padding-bottom:200px}
}
@media(max-width:760px){
 .home-page .site-masthead{position:fixed;top:0;left:0;right:0;background:#111b15e6;transition:background .3s}
 .home-page .story-cinema .intro-frame{height:100svh;min-height:0}
 .home-page .story-cinema .intro-photos{inset:100px 0 auto;height:auto;aspect-ratio:4/3}
 .home-page .story-cinema .intro-image{object-fit:contain;object-position:center}
 .home-page .story-cinema .intro-shade{background:linear-gradient(180deg,#111b1520 0%,#111b1528 27%,#111b154a 37%,#111b15e8 57%,#111b15 76%)}
 .home-page.story-scrolled .story-cinema .intro-shade{background:linear-gradient(180deg,#111b159e 0%,#111b159e 45%,#111b15f5 63%,#111b15 78%)}
 .home-page .story-opening{min-height:max(100svh,740px);padding:135px 20px 155px}
 .home-page .story-opening .intro-location{font-size:12px;line-height:1.5;letter-spacing:.07em;margin-bottom:14px;max-width:290px}
 .home-page .story-title{font-size:13.2vw;line-height:.98;letter-spacing:-.055em}
 .home-page .story-title .story-title-small{font-size:24px;margin-bottom:8px}
 .home-page .story-title .story-title-offset{margin-left:20vw;margin-top:4px}
 .home-page .story-continue{font-size:13px;gap:20px;margin-top:20px}
 .home-page .story-cinema .intro-bottom{top:calc(100svh - 132px);width:calc(100% - 40px);height:132px;margin:calc(100svh - 132px) auto 0;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:12px 0 15px;border-top:1px solid #f6e8ce45}
 .home-page .story-cinema .intro-bottom:before{left:-20px;right:-20px}
 .home-page .story-cinema .intro-project{order:0;grid-column:1/2}
 .home-page .story-cinema .intro-project>span{font-size:10px;letter-spacing:.035em;line-height:1.5;max-width:195px}
 .home-page .story-cinema .intro-project strong{font-size:19px;line-height:1.25}
 .home-page .story-cinema .intro-image-control{order:1;display:contents}
 .home-page .story-cinema .intro-image-meta{display:contents}
 .home-page .story-cinema .intro-caption{grid-column:1/2;grid-row:2;max-width:none;font-size:11px;line-height:1.45}
 .home-page .story-cinema .intro-playback{grid-column:2;grid-row:1;justify-self:end;min-height:44px;padding:0;font-size:13px}
 .home-page .story-cinema .slide-controls{grid-column:2;grid-row:2;justify-self:end;gap:0}
 .home-page .story-cinema .intro-image-control button{min-width:35px;min-height:35px}
 .home-page .story-cinema .intro-discover{display:none}
 .home-page .story-panel{min-height:110svh;padding:105px 20px 170px;display:flex;flex-direction:column;gap:30px;justify-content:center;scroll-margin-top:82px}
 .home-page .story-company{order:0}
 .home-page .story-company>.eyebrow{font-size:12px;margin-bottom:16px}
 .home-page .story-company h2{font-size:clamp(34px,8.7vw,57px);line-height:1.12;margin-bottom:25px}
 .home-page .story-copy p{font-size:16px;line-height:1.75;margin-bottom:16px}
 .home-page .story-signature{order:1;padding:22px 0 0;border-top:1px solid #eee1c745;width:100%}
 .home-page .story-signature .eyebrow{font-size:11px;margin-bottom:9px}
 .home-page .story-signature>p:not(.eyebrow){font-size:19px;margin-bottom:8px}
 .home-page .story-signature .story-founded{font-size:13px!important;padding:0;border:0;max-width:none;margin:0}
 .home-page #projekte-entdecken{scroll-margin-top:85px}
}
@media(max-height:650px) and (min-width:761px){
 .home-page .story-opening{min-height:100svh;padding-top:112px;padding-bottom:172px}
 .home-page .story-title{font-size:clamp(54px,11svh,71px)}
 .home-page .story-title .story-title-small{font-size:25px}
 .home-page .story-continue{margin-top:20px}
 .home-page .story-panel{padding-top:140px;padding-bottom:190px}
}
@media(prefers-reduced-motion:reduce){
 .home-page .story-cinema .intro-frame{position:relative}
 .home-page .story-cinema .intro-bottom{position:relative;top:0}
 .home-page .story-cinema .story-title span{animation:none!important;opacity:1!important;transform:none!important}
 .home-page .story-panel .line-reveal span{transform:none!important;opacity:1!important;transition:none!important}
}
.family-history{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.family-history h2{font-size:clamp(34px,3.5vw,54px)}
.family-history>div>p{font-size:18px;line-height:1.8}
.family-member{border-top:1px solid #c7b99f;margin-top:33px;padding-top:28px}
.family-member .eyebrow{color:#786548;margin-bottom:15px}
.family-member h3{font-size:32px;margin-bottom:10px}
.family-qualification{color:#786548;font-size:16px}
.family-member>p:last-child{margin-bottom:0}
@media(max-width:850px){.family-history{grid-template-columns:1fr;gap:25px}.family-history h2{margin-bottom:0}}
@media print{
 .home-page .story-cinema{display:block;color:#000;background:#fff}
 .home-page .story-cinema .intro-frame{display:none}
 .home-page .story-flow{display:block}
 .home-page .story-opening,.home-page .story-panel{min-height:0;padding:40px 4%}
 .home-page .story-flow *{color:#000!important;transform:none!important;opacity:1!important}
}
