/* S04-08 / S05-04 — invitation, compact delivery, dimensional service objects. */
.demo-intro{text-align:center}
.demo-journey #process-title{text-align:center;max-width:none;margin-inline:auto}
.demo-intro>p:last-child{margin-inline:auto;max-width:590px}
.demo-copy-stack:before,.demo-phase:before{display:none}
.demo-phase{padding-left:0}
/* Only the completed S03 departure: prevent its labels from showing through
   the fixed header as the ivory invitation arrives. Existing progress reverses it. */
#range .range-bottom,#range .range-fiction{filter:opacity(calc(1 - var(--studio-recede,0)))}
/* The 220svh story and all transformation thresholds remain unchanged. */
.offer-body{grid-template-columns:minmax(0,1.32fr) minmax(0,1fr);gap:40px;align-items:stretch}
.delivery-timeline{border:0;padding:0;margin:0;display:grid;grid-template-rows:repeat(3,1fr)}
.delivery-stage{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:8px;align-items:center;margin:0;padding:17px 0;min-height:221px}
.delivery-stage+.delivery-stage{border-top:1px solid #b8c6b96e}
.delivery-text{text-align:center;position:relative;z-index:1;min-width:0}
.delivery-stage h3{font-size:32px;line-height:1.15;margin:0 0 12px;font-weight:450;letter-spacing:-.055em}
.delivery-copy{font-size:13px;line-height:1.7;max-width:39ch;margin-inline:auto;color:#50675b;text-wrap:pretty}
.delivery-payment{font-size:11px;line-height:1.6;color:#527160;margin-top:11px}
.delivery-payment strong{font-weight:650;font-size:13px;margin-right:3px}
.purchase-widget{position:relative;top:auto;display:flex;flex-direction:column;height:100%;padding:24px}
.purchase-price{margin:18px 0}.purchase-price>p{font-size:76px}
.purchase-payments{padding:12px 0;margin-bottom:18px}
.purchase-principle{margin-top:9px;padding-top:17px}
.purchase-credit{margin-top:17px}
.purchase-demo{margin-top:auto;padding-top:13px}
.purchase-reassurance{margin:10px 0 4px}
.purchase-credit .credit-condition{font-size:10px}
.purchase-top,.purchase-price,.purchase-state,.purchase-payments,.purchase-cta,.purchase-reassurance,.purchase-principle,.purchase-credit,.purchase-demo{flex-shrink:0}
.purchase-principle p{font-size:12px;line-height:1.65}
/* Each object is a small CSS scene. The panels have explicit edge thickness,
   local perspective and static completed states; no frame-loop is required. */
.service-object{position:relative;width:100%;height:196px;margin:0;isolation:isolate;perspective:850px;pointer-events:none}
.object-ground{position:absolute;left:12%;right:8%;height:25px;bottom:16px;border-radius:50%;background:radial-gradient(ellipse,#284b3d29,transparent 70%);transform:rotate(-9deg);opacity:.85}
.object-space{position:absolute;width:226px;height:196px;left:50%;top:50%;margin:-98px 0 0 -113px;transform:scale(.94)}
/* Independent projected objects use explicit painter order so their content is
   never accidentally occluded by another tilted surface. */
.sheet-back,.build-foundation,.launch-base{z-index:1}.sheet-middle,.digital-plane,.domain-plane{z-index:2}.blueprint-face,.responsive-plane{z-index:3}.strategy-pin,.review-token,.ownership-token,.verified-tag{z-index:4}
.solid{position:absolute;transform-style:preserve-3d;border:1px solid #b1c2b4;border-radius:3px;background:linear-gradient(128deg,#fffef5,#e2e9dd);box-shadow:1px 2px 0 #d1dacb,2px 4px 0 #9aae9e,3px 6px 0 #c0cdbb,4px 8px 0 #91a797,7px 15px 15px #26433915,inset 0 1px 0 #fff;color:#315548}
.solid:after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(120deg,#ffffff45,transparent 42%,#24483e06);pointer-events:none}
.sheet{width:157px;height:106px;left:34px;top:27px;padding:14px 15px;transform:rotateX(48deg) rotateZ(-28deg)}
.sheet span{font-size:6px;letter-spacing:.09em;font-weight:650;display:block;color:#597868;margin-bottom:13px}.sheet i{display:block;height:1px;background:#9fb8a3;width:80%;margin:8px 0}.sheet i:nth-of-type(2){width:55%}
.sheet-back{transform:translate(-16px,-8px) rotateX(48deg) rotateZ(-33deg);background:#c6d5c2;opacity:.9}
.sheet-middle{transform:translate(1px,12px) rotateX(48deg) rotateZ(-24deg);background:#e0e8d7}
.blueprint-face{left:36px;top:52px;width:161px;height:112px;padding:12px 16px;transform:rotateX(35deg) rotateZ(-24deg);background:linear-gradient(125deg,#f9faf0,#e7eddf)}
.blueprint-face>span,.launch-base>span{display:block;font-size:6px;font-weight:650;letter-spacing:.1em;color:#6f8874}
.blueprint-face strong{display:block;font-size:23px;font-weight:450;line-height:1.04;letter-spacing:-.04em;margin-top:8px}.blueprint-face em,.launch-base em{font-family:Georgia,serif;font-weight:400}
.blueprint-rule{height:1px;background:#adbeaa;width:75%;margin-top:8px}.blueprint-face small{display:block;font-size:5px;letter-spacing:.12em;margin-top:6px}.blueprint-cross{position:absolute;right:14px;top:39px;font-size:23px;font-weight:300;color:#91a891}
.strategy-pin{position:absolute;left:168px;top:115px;width:27px;height:27px;border-radius:50%;background:linear-gradient(135deg,#74957c,#244f45);box-shadow:1px 3px 0 #183c33,0 8px 12px #173c342a;transform:rotateX(35deg) rotateZ(-24deg);display:grid;place-items:center}
.strategy-pin i{width:9px;height:9px;border:1px solid #cfdbbb;transform:rotate(45deg)}
.build-foundation{left:25px;top:77px;width:152px;height:87px;transform:rotateX(52deg) rotateZ(-23deg);background:repeating-linear-gradient(0deg,transparent 0 16px,#91a89530 16px 17px),repeating-linear-gradient(90deg,#e5ebdf 0 20px,#91a89530 20px 21px)}
.build-foundation i{display:block;margin:13px 17px;width:75%;height:1px;background:#8ea899}
.digital-plane{left:20px;top:30px;width:157px;height:107px;padding:11px;background:linear-gradient(130deg,#345f53,#1b3d35);border-color:#719585;transform:rotateX(25deg) rotateY(-15deg) rotateZ(-13deg);box-shadow:1px 2px 0 #527e68,2px 4px 0 #163b31,3px 6px 0 #547b63,4px 8px 0 #123329,7px 16px 17px #183e3a28}
.plane-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #99b5a344;padding-bottom:7px}.plane-top i{width:13px;height:2px;background:#c5d6b6}.plane-top span{font-size:5px;letter-spacing:.1em;color:#b7cdae}
.plane-layout{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:12px;height:52px}.plane-layout b{display:block;height:3px;background:#c3d6b8;margin:4px 0}.plane-layout b:nth-child(2){width:75%}.plane-layout i{display:block;margin-top:9px;height:1px;background:#859e88}.plane-layout em{display:block;margin-top:9px;background:#a5bd91;width:24px;height:7px}.plane-photo{background:linear-gradient(140deg,#97ad8c 40%,#6e8a6e 40% 59%,#b5c2a2 59%);border-radius:1px}
.responsive-plane{left:156px;top:73px;width:49px;height:90px;padding:7px;background:#edf2e4;border-color:#a7bba6;transform:rotateX(22deg) rotateY(-15deg) rotateZ(-13deg)}
.responsive-plane>i{display:block;width:12px;height:2px;background:#41654d;margin-bottom:7px}.responsive-plane>div{height:31px;background:linear-gradient(145deg,#758f6d 50%,#b2c09d 50%)}.responsive-plane>b{display:block;height:2px;background:#71896c;margin:6px 0;width:95%}.responsive-plane>b+b{width:70%}.responsive-plane>em{display:block;height:6px;width:21px;background:#315449;margin-top:6px}
.review-token{position:absolute;left:69px;top:150px;display:flex;align-items:center;gap:6px;background:linear-gradient(125deg,#f9fbf0,#cfdcc7);padding:6px 10px 6px 7px;border:1px solid #9ab298;border-radius:3px;box-shadow:1px 3px 0 #9eb298,0 8px 12px #23483819;transform:rotateX(15deg) rotateZ(-13deg)}
.review-token svg{width:16px;height:16px;stroke:#3e6a50;stroke-width:1.8}.review-token span{font-size:6px;letter-spacing:.07em;color:#3c644d}
.launch-base{left:29px;top:51px;width:164px;height:112px;padding:14px 17px;transform:rotateX(32deg) rotateZ(-24deg);background:linear-gradient(128deg,#eff5e5,#d3e0ca)}
.launch-base strong{display:block;font-size:26px;line-height:1.02;letter-spacing:-.04em;font-weight:450;margin-top:13px}
.launch-route{position:absolute;right:22px;top:30px;width:30px;height:53px;border-right:1px solid #669674;border-bottom:1px solid #669674;border-radius:0 0 8px}.launch-route i{position:absolute;top:-2px;right:-3px;width:5px;height:5px;border-radius:50%;background:#608469}.launch-route b{position:absolute;bottom:-3px;left:-2px;width:5px;height:5px;border-radius:50%;background:#315b45}
.domain-plane{left:40px;top:29px;width:158px;height:31px;padding:8px 11px;display:flex;align-items:center;gap:9px;transform:rotateX(20deg) rotateZ(-24deg);background:linear-gradient(120deg,#2c584b,#163b33);border-color:#517a65;box-shadow:1px 3px 0 #153a31,2px 5px 0 #77947b,0 10px 13px #24483e20;color:#d7e6c9}
.domain-plane i{width:5px;height:5px;border-radius:50%;background:#b0c88c;box-shadow:0 0 0 3px #b0c88c1a}.domain-plane span{font-size:7px;letter-spacing:.08em}.domain-plane b{font-weight:400;font-size:13px;margin-left:auto}
.ownership-token{position:absolute;left:163px;top:113px;width:43px;height:43px;border-radius:50%;background:linear-gradient(135deg,#f9f5dd,#c7d1b4);border:1px solid #9eaf8d;box-shadow:1px 2px 0 #a2b18c,2px 4px 0 #7f977b,0 10px 14px #233e3929;transform:rotateX(24deg) rotateZ(-24deg)}
.ownership-token svg{width:100%;height:100%;stroke:#5b7a55;stroke-width:1.4}.verified-tag{position:absolute;left:43px;top:160px;font-size:6px;color:#51734e;letter-spacing:.13em;transform:rotate(-12deg)}
/* S05-05: animate four rasterized part groups, not nested 3D contexts.
   Static surface transforms and all material/shadow values remain unchanged. */
.delivery-stage.art-arrive .object-space{animation:object-settle 1.6s linear both}
.delivery-stage.art-arrive .object-part{animation:part-assemble 1.45s cubic-bezier(.22,.72,.24,1) both}
.object-part{position:absolute;inset:0;transform:translateZ(0);pointer-events:none;--part-x:0px;--part-y:7px}
.object-part.part-1{z-index:1;--part-x:-10px;--part-y:-12px}
.object-part.part-2{z-index:2;--part-x:9px;--part-y:-8px}
.object-part.part-3{z-index:3;--part-x:0px;--part-y:10px}
.object-part.part-4{z-index:4;--part-x:0px;--part-y:7px}
.object-part.part-5{z-index:5;--part-x:0px;--part-y:7px}
body:not(.motion-paused):not(.reduced-scene):not(.offer-document-hidden) .delivery-stage.art-arrive :is(.object-space,.object-part){animation-play-state:running!important}
@keyframes object-settle{from{opacity:1}to{opacity:1}}
@keyframes part-assemble{from{transform:translate(var(--part-x),var(--part-y));opacity:.45}to{transform:translate(0,0);opacity:1}}
@media(min-width:1100px) and (max-width:1299px){.offer-body{gap:30px;grid-template-columns:minmax(0,1.29fr) minmax(0,1fr)}.delivery-stage{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);min-height:226px;gap:4px}.delivery-stage h3{font-size:30px}.delivery-copy{font-size:13px;line-height:1.65}.object-space{transform:scale(.82)}.purchase-widget{padding:22px}.purchase-principle{grid-template-columns:1fr;gap:8px}.purchase-principle h4 br{display:none}.purchase-principle h4{font-size:24px}}
@media(max-width:1099px){.offer-body{display:flex;flex-direction:column;gap:32px}.delivery-timeline{width:100%;max-width:760px;margin:auto}.delivery-stage{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);padding:23px 0;min-height:236px}.delivery-stage h3{font-size:34px}.delivery-copy{font-size:14px;max-width:40ch}.service-object{height:208px}.object-space{transform:scale(1.02)}.purchase-rail{width:min(100%,620px);margin:auto}.purchase-widget{display:flex;height:auto;padding:25px}.purchase-principle{grid-template-columns:1fr 1.35fr;gap:24px}.purchase-principle h4{font-size:26px}.purchase-principle h4 br{display:block}.purchase-credit{display:block;padding:13px 16px}.purchase-credit>p[data-credit-description]{margin-top:5px;font-size:12px}.purchase-demo{padding-top:12px;margin-top:0}.purchase-price{margin:16px 0}.purchase-state{margin:0 0 10px}.offer-trust{margin-top:38px}}
@media(max-width:639px){.demo-phase{padding-left:0}.offer-body{gap:25px;margin-top:24px}.delivery-timeline{display:block}.delivery-stage{display:flex;flex-direction:column;gap:0;padding:25px 0 13px;min-height:0;margin:0}.delivery-stage:first-child{padding-top:8px}.delivery-text{width:100%}.delivery-stage h3{font-size:34px;margin-bottom:12px}.delivery-copy{font-size:14px;line-height:1.7;max-width:37ch}.delivery-payment{font-size:12px;margin-top:10px}.delivery-payment strong{font-size:14px}.service-object{height:207px;margin:9px auto 0;max-width:310px}.object-space{transform:scale(1.04)}.purchase-widget{padding:18px;border-radius:8px}.purchase-top h3{font-size:10px}.purchase-top p{font-size:12px}.purchase-mark{height:23px}.purchase-price{margin:14px 0}.purchase-price>p{font-size:72px}.purchase-payments{padding:11px 0;margin-bottom:15px}.purchase-payments dt{font-size:10px;letter-spacing:.045em}.purchase-payments dd{display:flex;gap:2px 6px}.purchase-payments dd span{font-size:11px}.purchase-payments>div+div{padding-left:15px}.purchase-payments strong{font-size:24px}.purchase-cta{min-height:48px;font-size:14px}.purchase-reassurance{font-size:11px;margin:9px 0 3px}.purchase-principle{grid-template-columns:1fr;gap:7px;padding-top:14px;margin-top:8px}.purchase-principle h4{font-size:24px}.purchase-principle h4 br{display:none}.purchase-principle p{font-size:12px;line-height:1.6}.purchase-credit{padding:10px 11px;margin-top:14px}.credit-heading h4{font-size:10px;letter-spacing:.045em}.purchase-credit>p[data-credit-description]{font-size:12px;line-height:1.6}.credit-outcome strong{font-size:15px}.credit-outcome span{font-size:11px}.purchase-credit .credit-condition{font-size:10px;line-height:1.6}.purchase-demo{font-size:11px;padding-top:10px;gap:0 5px}.purchase-demo button{font-size:12px;min-height:36px}.offer-trust{margin-top:32px}}
@media(max-width:359px){.purchase-widget{padding:16px}.purchase-price>p{font-size:68px}.purchase-payments dd{display:block}.purchase-payments dd span{display:block;margin-top:2px}.purchase-payments>div+div{padding-left:11px}.purchase-principle h4{font-size:23px}.service-object{height:197px}.object-space{transform:scale(.97)}.delivery-copy{font-size:13px;line-height:1.75}}
@media(prefers-reduced-motion:reduce){.website-offer *{animation:none!important;transition:none!important}}
@media(max-width:639px){.purchase-top p{display:none}.purchase-price>p{font-size:68px}.purchase-price{margin:12px 0}.purchase-payments dd{display:flex}.purchase-payments dd span{display:inline;margin-top:0}.purchase-principle{padding-top:12px}.purchase-credit{margin-top:12px}.purchase-demo{padding-top:8px}.purchase-mark{height:24px}}
