/* Shared service-page composition; motion is driven by visitors, never a loop. */
main .service-opening{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;padding:85px 6% 90px;background:#fafaf7;align-items:center;min-height:calc(95svh - 86px)}
main .service-opening h1{font-size:clamp(40px,4.7vw,72px);font-weight:500;line-height:1.06;letter-spacing:-.055em;margin:28px 0;color:#1b4e28}
main .service-opening h1 span{color:#8b927d}
main .service-lead{font-size:17px;line-height:1.8;color:#65715f;max-width:520px;margin:28px 0 32px}
.service-opening figure{position:relative;aspect-ratio:4/5;overflow:hidden}.service-opening img{width:100%;height:100%;object-fit:cover}.service-opening figcaption{position:absolute;bottom:22px;left:24px;font-size:8px;letter-spacing:.14em;color:#fff;text-shadow:0 1px 6px #111}
.service-discover{display:flex;gap:24px;align-items:center;font-size:11px;color:#66745f;margin-top:30px;width:fit-content;background:none;border:0;padding:0;min-height:44px}.service-discover span{font-size:18px}
.motion-story{--p:0;--spread:0;--cut:0;position:relative;height:230svh;background:#efeee8;scroll-margin-top:86px}
.story-sticky{position:sticky;top:86px;height:calc(100svh - 86px);min-height:610px;padding:35px 6% 20px;overflow:hidden;display:grid;grid-template-rows:auto minmax(260px,1fr) auto 45px}
.story-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px}.story-heading h2{font-size:clamp(30px,3vw,47px);font-weight:500;line-height:1.05;letter-spacing:-.045em;margin:12px 0 0;color:#1b4e28}.story-heading h2 em{font-style:normal;color:#879079}.story-heading>p{font-size:13px;line-height:1.8;max-width:330px;color:#717765;margin-bottom:0}
.story-stage{position:relative;min-height:0;margin-top:20px;overflow:hidden;isolation:isolate}
.story-controls{display:flex;justify-content:space-between;gap:35px;align-items:center;border-top:1px solid #c6c9b9;padding:16px 0 8px}
.story-chapters{display:flex;gap:28px}.story-chapters button{display:flex;align-items:center;gap:9px;min-height:44px;background:none;border:0;color:#838776;padding:4px 0;font-size:12px;white-space:nowrap}.story-chapters small{font-size:9px;letter-spacing:.1em}.story-chapters button[aria-pressed=true]{color:#1b4e28}.story-chapters button[aria-pressed=true] small{border-bottom:1px solid #1b4e28;padding-bottom:4px}
.story-scrub{font-size:9px;color:#707965;display:flex;align-items:center;gap:18px;white-space:nowrap}.story-scrub input{width:120px;accent-color:#1b4e28;cursor:ew-resize;min-height:30px}
.story-description p{font-size:12px;color:#65715f;margin:7px 0;max-width:850px;line-height:1.6}
.sale-scene{position:absolute;inset:0;perspective:1600px;background:radial-gradient(ellipse at 50% 70%,#e0dfd4,transparent 66%)}
.sale-sheet{position:absolute;width:30%;height:85%;left:35%;top:5%;background:#fbfaf5;box-shadow:0 20px 36px #3f493923;transform-style:preserve-3d;overflow:hidden;will-change:transform}
.sale-sheet-cover{z-index:3;transform:translateX(calc(var(--p)*-90%)) rotateY(calc(12deg - var(--p)*22deg)) rotateZ(calc(-4deg + var(--p)*1deg)) scale(calc(.9 + var(--p)*.02))}
.sale-sheet-cover>img{width:100%;height:100%;object-fit:cover}.sale-sheet-cover>div{position:absolute;inset:0;background:linear-gradient(0deg,#102d23d9,transparent 90%);display:flex;flex-direction:column;justify-content:flex-end;color:#fff;padding:10%}.sale-sheet span{font-size:8px;letter-spacing:.14em}.sale-sheet-cover strong{font-size:clamp(23px,2.4vw,36px);font-weight:400;line-height:1.1;letter-spacing:-.04em;margin:20px 0 26px}.sale-sheet-cover small{font-size:7px;letter-spacing:.14em}
.sale-sheet-photo{z-index:2;transform:translateX(calc(var(--p)*4%)) translateY(calc(18px - var(--p)*15px)) rotateZ(calc(4deg - var(--p)*4deg)) scale(.92);padding:6% 2% 2%;background:#f9f8f0}.sale-sheet-photo img{width:100%;height:74%;object-fit:cover}.sale-sheet-photo>span{display:block;font-size:8px;margin-top:20px;color:#1b4e28;letter-spacing:.05em}
.sale-sheet-back{z-index:1;transform:translateX(calc(var(--p)*99%)) rotateY(calc(-15deg + var(--p)*25deg)) rotateZ(calc(8deg - var(--p)*5deg)) scale(.9);padding:28px 22px;color:#1b4e28}.sale-sheet-back i{display:block;width:90%;height:1px;background:#bdc4b1;margin-top:15px}.sale-sheet-back i:last-child{width:65%}.sheet-plan{height:57%;margin:25px 0;background:linear-gradient(90deg,transparent 46%,#82917b 46%,#82917b 47%,transparent 47%),linear-gradient(0deg,transparent 40%,#82917b 40%,#82917b 41%,transparent 41%);border:3px double #82917b;position:relative}.sheet-plan:after{content:'';position:absolute;inset:10% 8% 63% 60%;border:1px solid #b0b9a2}.scene-word{position:absolute;bottom:5%;left:1%;font-size:clamp(50px,8vw,110px);letter-spacing:-.06em;color:#1b4e28;opacity:calc(.16 * (1 - var(--p)));z-index:-1}
.story-private{background:#1b4e28}.story-private .story-heading h2,.story-private .story-chapters button[aria-pressed=true]{color:#f6f4f0}.story-private .story-heading h2 em{color:#b8c6a8}.story-private .story-heading>p,.story-private .eyebrow,.story-private .story-description p,.story-private .story-scrub{color:#c0cdb3}.story-private .story-controls{border-color:#ffffff30}.story-private .story-chapters button{color:#9db291}.story-private .story-chapters button[aria-pressed=true] small{border-color:#d9e1ce}.story-private input{accent-color:#ded8bf}
.private-scene{position:absolute;inset:0 8%;overflow:hidden;background:#18271e}.private-scene>img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.13 - var(--p)*.13));filter:brightness(.7)}
.private-screen{position:absolute;top:0;bottom:0;width:50%;background:repeating-linear-gradient(90deg,#183e24 0,#183e24 11px,#1f4d2c 12px,#163920 14px);z-index:3;box-shadow:0 0 40px #0007;display:flex;align-items:center;color:#a5b99a;font-size:85px;font-weight:300;letter-spacing:.1em}
.screen-left{left:0;justify-content:flex-end;padding-right:14px;transform:translateX(calc(var(--p)*-101%))}.screen-right{right:0;padding-left:14px;transform:translateX(calc(var(--p)*101%))}.private-word{position:absolute;left:8%;bottom:14%;color:#f6f4f0;opacity:clamp(0,calc(var(--p)*5 - 4),1);transform:translateY(calc(25px * (1 - var(--p))))}.private-word>span{font-size:9px;letter-spacing:.14em}.private-word strong{display:block;font-size:clamp(35px,4vw,58px);font-weight:400;line-height:1.04;letter-spacing:-.045em;margin-top:20px}.private-keyline{position:absolute;inset:6%;border:1px solid #e8e8d242;pointer-events:none}
.architecture-canvas{width:100%;height:100%;display:block;touch-action:pan-y}.model-caption{position:absolute;left:0;bottom:15px;font-size:8px;letter-spacing:.11em;color:#818672}.model-annotation{position:absolute;right:2%;top:15%;color:#66715e;font-size:9px;letter-spacing:.1em;max-width:170px;pointer-events:none}.model-annotation i{display:block;width:65px;height:1px;background:#a4ad93;margin:15px 0}.model-annotation small{font-size:11px;letter-spacing:0;line-height:1.5}
main .chapter h2,main .section>h2,main .private-explainer h2,main .service-ending h2{font-weight:500;letter-spacing:-.045em}main .chapter p,main .private-explainer>p{line-height:1.85}main .promise-columns article{box-shadow:none;border-radius:0}main .chapter figure{border-radius:0}
@media(max-width:900px){.story-heading>p{max-width:240px;font-size:12px}.story-scrub{font-size:0;gap:0}.story-chapters{gap:20px}.service-opening{gap:5%!important}.story-sticky{padding-left:5%;padding-right:5%}.sale-sheet{width:34%;left:33%}.model-annotation{right:0;max-width:120px;font-size:7px}}
@media(max-width:700px){main .service-opening{grid-template-columns:1fr;padding:45px 6% 50px;gap:38px;min-height:0}main .service-opening h1{font-size:43px;margin:22px 0}.service-opening figure{aspect-ratio:4/3}main .service-lead{font-size:15px;line-height:1.8;margin:22px 0}.service-discover{margin-top:20px}.motion-story{height:210svh;scroll-margin-top:74px}.story-sticky{top:74px;height:calc(100svh - 74px);min-height:650px;padding:25px 5% 15px;grid-template-rows:auto minmax(260px,1fr) auto 65px}.story-heading{display:block}.story-heading h2{font-size:32px}.story-heading>p{max-width:none;font-size:12px;margin-top:15px;line-height:1.6}.story-heading .eyebrow{font-size:8px}.story-stage{margin-top:10px}.story-controls{gap:10px;flex-wrap:wrap;padding:10px 0 0}.story-chapters{justify-content:space-between;width:100%;gap:8px}.story-chapters button{font-size:10px;gap:6px}.story-scrub{display:none}.story-description p{font-size:11px}.sale-sheet{width:48%;left:26%;height:80%;top:8%}.sale-sheet-cover{transform:translateX(calc(var(--p)*-45%)) rotateZ(-4deg) scale(.86)}.sale-sheet-back{transform:translateX(calc(var(--p)*60%)) rotateZ(5deg) scale(.82);padding:15px 10px}.sale-sheet-photo{transform:translateX(calc(var(--p)*5%)) translateY(calc(var(--p)*20px)) scale(.86)}.sale-sheet-cover strong{font-size:25px}.sale-sheet span{font-size:6px}.sale-sheet-cover small{font-size:5px}.sale-sheet-photo>span{font-size:6px}.private-scene{inset:5% 0}.private-word strong{font-size:38px}.private-screen{font-size:65px}.model-annotation{top:4%;font-size:7px;max-width:115px}.model-annotation small{font-size:9px}.model-annotation i{margin:8px 0;width:40px}.model-caption{font-size:6px;bottom:8px}}
html.reduce-motion .motion-story{height:auto}html.reduce-motion .story-sticky{position:relative;top:0}html.reduce-motion .sale-sheet,html.reduce-motion .private-screen{will-change:auto}
@media(prefers-reduced-motion:reduce){.motion-story{height:auto}.story-sticky{position:relative;top:0}}

.private-screen>span{font-size:10px;letter-spacing:.2em}.private-existing-access{display:block;font-size:11px;color:#6c775f;margin-top:16px}

main[data-page=nivado] .page-title,main[data-page=immobilienwissen] .journal-intro{background:#fafaf7}
main[data-page=nivado] .page-title h1,main[data-page=kontakt] .contact-copy h1{font-size:clamp(44px,5.5vw,78px)!important;font-weight:500!important;letter-spacing:-.055em!important;line-height:1.05!important}
main[data-page=nivado] .page-title h1 span,main[data-page=kontakt] .contact-copy h1 span{color:#879079}
main[data-page=nivado] .person h2{font-weight:500;letter-spacing:-.035em}
main[data-page=kontakt] input,main[data-page=kontakt] textarea,main[data-page=kontakt] select{border-radius:0!important;box-shadow:none!important}
