/* One scroll-controlled story. The same visual travels through all chapters. */
.scroll-story{background:#151b17;color:var(--paper);position:relative;margin-top:0}
.story-stage{max-width:1600px;margin:auto;padding:34px var(--gutter);overflow:hidden;position:relative;background:radial-gradient(ellipse at 75% 50%,#37433155,transparent 60%)}
.story-top{display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid #ffffff21;padding-bottom:24px;position:relative;z-index:4}
.story-brand{font-size:17px;letter-spacing:-.04em;line-height:1.25}.story-brand>span{display:block;font-size:8px;letter-spacing:.05em;color:#a9b3a0;margin-top:7px}.story-progress-label{font:11px monospace;color:#a9b3a0;margin-left:auto}.story-contact{font-size:10px;color:var(--lime);border:1px solid #d2f86b55;padding:12px 15px;border-radius:3px;white-space:nowrap}
.story-body{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:65px;min-height:650px}
.story-copy{position:relative;z-index:3;min-width:0}.story-chapter{padding-block:60px}.story-chapter>.micro{font-size:9px;color:#a4b294;margin-bottom:24px}.story-chapter h2{font-size:clamp(43px,4.5vw,70px);line-height:1.03;font-weight:450;margin-bottom:27px;letter-spacing:-.055em}.story-chapter h2 em{font-style:normal;color:var(--lime)}.story-chapter>p:not(.micro){font-size:14px;line-height:1.7;color:#bec8b6;max-width:430px;margin-bottom:14px}.story-bottom-note{border-top:1px solid #ffffff2b;padding-top:20px;margin-top:26px;font-size:10px;color:#dce5d4}.story-chapter .button{margin-top:13px;font-size:12px}
.story-method{list-style:none;counter-reset:method;padding:0;margin:0;max-width:440px}.story-method li{counter-increment:method;padding:15px 0 15px 32px;border-top:1px solid #ffffff25;position:relative}.story-method li:before{content:'0' counter(method);font:9px monospace;color:var(--lime);position:absolute;left:0;top:19px}.story-method strong{display:block;font-weight:500;font-size:13px;margin-bottom:6px}.story-method span{display:block;font-size:11px;line-height:1.7;color:#aebba5}
.story-art{height:560px;position:relative;isolation:isolate;perspective:950px;min-width:0;pointer-events:none}
.story-orbit{position:absolute;left:50%;top:47%;width:450px;height:450px;max-width:115%;border:1px solid #b2d38320;border-radius:50%;transform:translate(-50%,-50%);transition:none}.orbit-two{width:340px;height:340px;border-style:dashed;opacity:.5}
.story-cross{position:absolute;font:24px monospace;color:#91a27c;opacity:.5}.cross-a{top:30px;left:10px}.cross-b{right:20px;bottom:70px}
.story-ledger{position:absolute;left:50%;top:44%;width:0;height:0;transform-style:preserve-3d;scale:.86}
.ledger-sheet{position:absolute;left:-130px;top:-160px;width:260px;height:320px;padding:28px;background:linear-gradient(135deg,#8c9489,#d9ddd4 43%,#8c9980);color:#253022;border:1px solid #e9f5ddaa;border-radius:4px;box-shadow:15px 35px 45px #0004;transform:translate(0,0) rotateX(30deg) rotateZ(-20deg);transform-style:preserve-3d;will-change:transform}
.ledger-sheet>span{font:9px monospace;letter-spacing:.12em;border-bottom:1px solid #4f5e4666;padding-bottom:17px;display:block}.ledger-sheet i{display:block;height:3px;width:85%;background:#4e5d4244;margin-top:23px}.ledger-sheet i:nth-of-type(2){width:65%}.ledger-sheet i:nth-of-type(3){width:74%}.ledger-sheet>b{position:absolute;left:28px;bottom:25px;font-size:58px;font-weight:400;letter-spacing:-.06em;color:#536744}
.ledger-sheet:nth-child(1){transform:translate(-75px,-65px) rotateX(35deg) rotateZ(-26deg)}.ledger-sheet:nth-child(2){transform:translate(70px,-20px) rotateX(35deg) rotateZ(18deg)}.ledger-sheet:nth-child(3){transform:translate(-55px,70px) rotateX(35deg) rotateZ(-8deg)}.ledger-sheet:nth-child(4){transform:translate(70px,105px) rotateX(35deg) rotateZ(8deg);background:linear-gradient(130deg,#d2f86b,#9cb955);border-color:#eaffb5}
.story-result{position:absolute;left:5%;right:0;top:27%;z-index:5;opacity:0;transform:translateY(35px);text-align:center}.story-result>span{font:9px monospace;color:#a7bb93;letter-spacing:.1em}.story-result>strong{display:block;font-size:clamp(55px,6.5vw,94px);font-weight:400;letter-spacing:-.075em;line-height:.95;color:var(--lime);margin:20px 0 28px}.story-result>div{display:flex;justify-content:center;align-items:center;gap:15px}.story-result b{font-size:10px;font-weight:400;padding:12px 15px;border:1px solid #c3de9e55;border-radius:4px;background:#1a2419}.story-result i{font-style:normal;color:#9bac87}
.story-art-caption{position:absolute;left:0;right:0;bottom:0;border-top:1px solid #ffffff25;padding-top:20px;display:flex;justify-content:space-between;gap:15px;font:8px monospace;letter-spacing:.04em;color:#a1af93}.story-art-state{color:var(--lime)}
.story-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:20px 0 13px;border-top:1px solid #ffffff25;position:relative;z-index:4}.story-chapter-nav{display:flex;gap:28px}.story-chapter-nav button{background:none;color:#96a48b;font-size:11px;min-height:44px;padding:8px 0;display:flex;align-items:center;gap:9px}.story-chapter-nav button span{font:8px monospace}.story-chapter-nav button[aria-current]{color:var(--lime)}.story-scroll-note{font-size:9px;color:#a3b395}.story-scroll-note>span{padding-left:15px;font-size:18px}.story-progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:#ffffff15;overflow:hidden}.story-progress i{display:block;height:100%;width:100%;transform:scaleX(0);transform-origin:left;background:var(--lime)}
/* No pinning until JS has prepared a complete, reversible timeline. */
.story-enhanced .scroll-story{height:360vh;min-height:2200px}
.story-enhanced .story-stage{height:100vh;min-height:0;position:sticky;top:0;display:flex;flex-direction:column}
.story-enhanced .story-body{min-height:0;flex:1;width:100%}
.story-enhanced .story-copy{height:100%;display:flex;align-items:center}
.story-enhanced .story-chapter{position:absolute;inset:auto 0;padding:20px 0;opacity:0;pointer-events:none;will-change:transform,opacity}
.story-enhanced .story-chapter.is-current{pointer-events:auto}
.story-enhanced .story-art{height:min(64vh,610px);width:100%}
.story-enhanced .story-footer{flex-shrink:0}

/* Subduxion-inspired local reveal: text stays still, the image opens under the pointer. */
.services .service-workbench{display:block}.services .service-select{display:grid;grid-template-columns:1fr 1fr;gap:16px;border:0}
.services .service-button{position:relative;min-height:360px;width:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;overflow:hidden;isolation:isolate;padding:30px;border:1px solid #ffffff22;border-radius:5px;background:#111812;color:#ecf1e6;text-align:left;transition:border-color .2s}
.services .service-button:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#111a13eb 0%,#111a1370 30%,transparent 52%,#0d140ceb 100%)}
.services .service-button:hover,.services .service-button:focus-visible{border-color:#d2f86b99;color:#fff}.services .service-button.active{border-color:#d2f86bb0;color:#fff}
.services .service-button strong{font-size:clamp(25px,2.3vw,34px);font-weight:450;letter-spacing:-.045em;margin:20px 0 11px;line-height:1.15;max-width:390px}
.services .service-button>.card-number{color:#b3c29f;font:8px monospace;letter-spacing:.09em}
.services .service-button>.card-description{font-size:12px;line-height:1.6;max-width:300px;color:#bccbb0;display:block}
.card-action{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:var(--lime);width:100%;margin-top:auto;padding-top:100px}.card-action>span{font-size:24px}
.card-visual{position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 65% 64%,#506a3655,#121c14 72%);overflow:hidden}.card-visual svg{position:absolute;inset:13% 0 auto;width:100%;height:100%;fill:#53763c66;stroke:#a1bf7c;stroke-width:2;filter:drop-shadow(0 12px 12px #0006);opacity:.85}.card-visual .art-accent{fill:none;stroke:#d2f86b;stroke-width:3}.card-visual canvas{position:absolute;inset:0;width:100%;height:100%;opacity:1}
.services .service-panel{margin-top:20px;display:grid;grid-template-columns:260px 1fr;grid-template-rows:auto auto;align-items:stretch;background:#1a231a}
#service-title:focus-visible{outline:2px solid var(--lime);outline-offset:7px}
.services .service-graphic{grid-column:1;grid-row:1 / 3;height:100%;min-height:310px;border:0;border-right:1px solid #ffffff1c}
.services .service-copy{min-height:0;padding:28px 34px 0}.services .service-copy h3{font-size:29px}.services .service-contact{grid-column:2;margin:22px 34px 27px;justify-self:start}.services .service-copy .service-deliverable{max-width:640px}
.service-select:before{content:'Bewegen Sie den Zeiger über die Motive. Wählen Sie eine Leistung für die Details.';grid-column:1 / -1;font-size:9px;color:#a1b292;padding-bottom:8px;line-height:1.7}
@media(max-width:1100px){.story-body{gap:35px}.story-chapter h2{font-size:46px}.story-chapter>p:not(.micro){font-size:12px}.story-chapter h2 em{letter-spacing:-.055em}.ledger-sheet{width:220px;height:280px;left:-110px;top:-140px}.story-art-caption{font-size:7px}.story-method strong{font-size:12px}.story-method span{font-size:10px}.story-brand{font-size:15px}.story-result>strong{font-size:68px}}
@media(max-height:760px) and (min-width:901px){.story-stage{padding-block:20px}.story-top{padding-bottom:14px}.story-chapter h2{font-size:43px;margin-bottom:18px}.story-chapter>.micro{margin-bottom:16px}.story-chapter>p:not(.micro){font-size:12px}.story-method li{padding-block:10px}.story-method li:before{top:14px}.story-art{transform:scale(.88)}.story-footer{padding-top:12px}.story-bottom-note{margin-top:16px;padding-top:13px}}
@media(max-width:900px){.story-body{grid-template-columns:1fr;gap:0;min-height:0}.story-art{height:440px;max-width:560px;margin:0 auto 30px;width:100%}.story-top{gap:15px}.story-progress-label{display:none}.story-chapter{padding:45px 0;border-bottom:1px solid #ffffff20}.story-chapter h2{font-size:clamp(37px,5.5vw,55px)}.story-chapter>p:not(.micro){font-size:14px;max-width:580px}.story-method{max-width:580px}.story-method strong{font-size:14px}.story-method span{font-size:12px}.story-scroll-note{display:none}.story-stage{padding-block:25px}.story-footer{padding-bottom:15px}.services .service-panel{grid-template-columns:190px 1fr}.services .service-button{padding:25px;min-height:340px}.services .service-button strong{font-size:27px}}
@media(max-width:600px){.story-brand{font-size:15px}.story-brand>span{font-size:7px}.story-contact{font-size:8px;padding:10px;white-space:normal;max-width:136px}.story-top{align-items:start}.story-chapter>.micro{font-size:8px}.story-chapter h2{font-size:38px;line-height:1.07}.story-method li{padding-left:26px}.story-method span{font-size:12px}.story-art{height:380px;transform:scale(.88);margin-bottom:0}.story-art-caption{font-size:7px;left:-5%;right:-5%}.story-orbit{width:330px;height:330px;max-width:none}.orbit-two{width:230px;height:230px}.ledger-sheet{width:185px;height:225px;left:-92px;top:-112px;padding:20px}.ledger-sheet>b{font-size:42px;left:20px;bottom:20px}.ledger-sheet i{margin-top:14px}.ledger-sheet>span{font-size:8px}.story-chapter-nav{width:100%;justify-content:space-between;gap:12px}.story-chapter-nav button{font-size:12px}.services .service-select{grid-template-columns:1fr;gap:14px}.services .service-button{min-height:325px;padding:25px}.services .service-button strong{font-size:27px}.services .service-button>.card-description{font-size:12px}.services .service-panel{display:block}.services .service-graphic{height:180px;min-height:0;border-right:0;border-bottom:1px solid #ffffff20}.services .service-copy{padding:25px 23px 0}.services .service-copy h3{font-size:27px}.services .service-contact{margin:20px 23px 25px;font-size:10px}.service-select:before{content:'Wählen Sie eine Leistung. Die Details stehen direkt unter den Motiven.';font-size:10px}.card-action{padding-top:90px}.story-result>strong{font-size:60px}}
@media(hover:none){.service-select:before{content:'Wählen Sie eine Leistung für die Details.'}.card-visual canvas{opacity:.7}}
@media(prefers-reduced-motion:reduce){.story-orbit,.ledger-sheet,.story-result,.story-chapter{will-change:auto}.card-visual canvas{display:none}.card-visual svg{opacity:.35}}
