/* Wiese: an editorial project sequence, with motion reserved for navigation. */
.reference-origin{font-size:12px;line-height:1.6;color:#766345;margin:14px 0 0;letter-spacing:.025em}
.project-intro .reference-origin{font-size:14px;margin:0 0 24px}
.portfolio-jump{display:flex;gap:32px;flex-wrap:wrap;margin-bottom:55px;border-top:1px solid #d8d6ce;padding-top:20px}
.portfolio-jump a{font-size:15px;border-bottom:1px solid #a18b67;padding-bottom:7px}
.portfolio-jump span{margin-left:12px;color:#766345}
#wohnprojekte,#erfahrung{scroll-margin-top:125px}
.management-references{padding:88px 0 100px;background:#f3f1eb}
.management-heading{display:grid;grid-template-columns:1fr 1fr;gap:20px 65px;margin-bottom:60px;align-items:end}
.management-heading .eyebrow{grid-column:1/-1;margin:0;color:#766345}
.management-heading h2{font-size:clamp(40px,5vw,70px);margin:0}
.management-heading>p:last-child{max-width:560px;margin:0}
.management-references .card-photo{background:#eae7df}
.management-references .card-photo img{max-height:550px;object-fit:contain}
.project-selection{padding:105px 0 90px;background:#f7f5ef;overflow:hidden}
.project-selection-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:45px}
.project-selection-heading h2{font-size:clamp(56px,8.2vw,116px);font-weight:500;line-height:.98;letter-spacing:-.06em;margin:0}
.project-selection-heading h2 span{display:block}
.project-selection-heading h2 em{font-family:Georgia,serif;font-weight:400;color:#806b4d}
.project-selection-heading .selection-intro{max-width:305px;font-size:17px;margin-bottom:9px}
.project-selection-heading .eyebrow{color:#806b4d}
.project-rail{--rail-inset:max(64px,calc((100vw - 1440px)/2));display:flex;gap:36px;overflow-x:auto;padding:5px var(--rail-inset) 24px;scroll-padding-inline:var(--rail-inset);scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#9f8966 #e8e4db}
.project-rail-card{flex:0 0 min(61vw,810px);min-width:0;scroll-snap-align:start;display:block}
.rail-item-top{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;color:#6a604e}
.rail-photo{display:block;position:relative;background:#e9e6de}
.rail-photo img{width:100%;height:clamp(360px,45.75vw,608px);object-fit:contain}
.rail-photo-label{position:absolute;left:15px;bottom:15px;background:#ffffffee;color:#31372f;padding:5px 10px;font-size:11px;letter-spacing:.02em}
.rail-caption{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:23px 0 9px;border-bottom:1px solid #ccc5b8}
.rail-caption h3{font-size:clamp(25px,2.8vw,40px);line-height:1.12;margin:7px 0 12px}
.rail-caption p{font-size:13px;letter-spacing:.04em;margin:0;color:#635d50}
.rail-arrow{border:1px solid #b4a385;width:52px;height:52px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;font-size:25px;transition:background .25s,color .25s,transform .25s}
.project-rail-card:hover .rail-arrow{background:#9f8966;color:#fff;transform:translate(2px,-2px)}
.project-rail-card:focus-visible{outline-offset:0}
.project-rail-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px}
.rail-controls{display:flex;gap:14px;align-items:center}
.rail-controls button{background:transparent;border:1px solid #aaa28f;width:48px;height:48px;border-radius:50%;font-size:24px;line-height:1}
.rail-controls button:hover:not(:disabled){background:#e8e2d6}
.rail-controls button:disabled{opacity:.3;cursor:default}
.rail-count{font-size:13px;min-width:54px;text-align:center;font-variant-numeric:tabular-nums}
.rail-controls[hidden]{display:none}
.project-selection .line-reveal>span{display:block;overflow:clip}
.project-selection .line-reveal>span>span{display:block;transition:transform .85s cubic-bezier(.16,1,.3,1),opacity .7s ease}
.project-selection .line-reveal>span:nth-child(2)>span{transition-delay:.12s}
.project-selection .line-reveal.reveal-pending>span{transform:none;opacity:1}
.project-selection .line-reveal.reveal-pending>span>span{transform:translateY(100%);opacity:0}
.project-selection .line-reveal.reveal-visible>span>span{transform:none;opacity:1}
@media(max-width:900px){
 .management-heading{grid-template-columns:1fr;gap:22px}
 .project-selection-heading{display:block}
 .project-selection-heading .selection-intro{max-width:480px;margin:26px 0 0}
 .project-rail-card{flex-basis:76vw}
 .rail-photo img{height:48vw}
}
@media(max-width:760px){
 .portfolio-jump{gap:18px;margin-bottom:35px}
 .management-references{padding:60px 0}
 .management-heading{margin-bottom:40px}
 .management-heading h2{font-size:39px}
 .project-selection{padding:62px 0 60px}
 .project-selection-heading{margin-bottom:30px}
 .project-selection-heading h2{font-size:clamp(46px,12.5vw,76px)}
 .project-selection-heading .selection-intro{font-size:16px}
 .project-rail{--rail-inset:20px;gap:20px}
 .project-rail-card{flex-basis:calc(100vw - 64px)}
 .rail-photo img{height:62vw;max-height:420px}
 .rail-item-top{font-size:10px;letter-spacing:.045em;gap:10px}
 .rail-caption{gap:15px;padding-top:17px}
 .rail-caption h3{font-size:27px}
 .rail-arrow{width:42px;height:42px;font-size:21px}
 .project-rail-footer{flex-wrap:wrap;gap:22px;margin-top:20px}
 .project-rail-footer .button{font-size:15px}
}
@media(prefers-reduced-motion:reduce){
 .project-selection .line-reveal span{transform:none!important;opacity:1!important;transition:none!important}
 .rail-arrow{transition:none}
}
@media print{.project-rail{display:block;overflow:visible}.rail-controls{display:none}}

.project-card .reference-origin{margin:12px 0 10px}
