/* v21: an editorial catalog, a generous explanatory stage, no nested application UI. */
.volume-intro{grid-template-columns:1.1fr 1fr;column-gap:70px;margin-bottom:32px}
.volume-kicker{grid-column:1/-1;margin-bottom:12px}
.volume-intro h3{font-size:clamp(27px,2.3vw,34px);max-width:480px}
.volume-intro>p{max-width:530px}
.catalog-split .service-offer>summary{width:29%;padding:16px 13px;min-height:86px;border-radius:5px;border:0;border-bottom:1px solid #17243b19;margin:0;gap:10px}
.catalog-split .service-offer[open]>summary{background:linear-gradient(100deg,#fff,#ffffff7a);box-shadow:inset 3px 0 var(--volume-accent)}
.catalog-split .service-summary h4{font-size:15px;line-height:1.5}
.catalog-split .service-summary p{font-size:11px;line-height:1.5;margin-top:4px}
.catalog-split .service-expand{width:22px;height:22px}
.catalog-split .service-expand::after{font-size:16px}
.catalog-split .service-detail{left:34%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;gap:15px;min-height:0}
.catalog-split .service-detail-heading{display:flex;flex-direction:column;align-items:start;gap:9px;padding:0;border:0}
.service-detail-heading>span{font:9px/1.4 var(--font-mono);margin:0;color:var(--volume-accent);letter-spacing:.08em}
.service-detail-heading>p{font-size:clamp(26px,2.5vw,35px);line-height:1.16;max-width:33ch;letter-spacing:-.04em}
.service-detail .service-when{font-size:13px;line-height:1.7;max-width:76ch;margin-bottom:3px}
.offer-story .story-screen{border-radius:12px;border:1px solid #17243b15;background:radial-gradient(ellipse at 35% 0%,#ffffffab,transparent 80%),var(--story-bg);box-shadow:0 12px 30px #182d3e07}
.offer-story.story-software .story-screen,.offer-story.story-ai .story-screen{background:radial-gradient(ellipse at 65% 5%,#7e8cf22b,transparent 74%),var(--story-bg)}
.offer-story .service-cinema{display:block;width:100%;height:auto;aspect-ratio:800/490;max-height:390px;margin:0;padding:34px 14px 0;overflow:hidden}
.offer-story .story-overline{inset:19px 24px auto;font-size:9px;letter-spacing:.05em}
.offer-story .story-caption{padding:6px 24px 21px;min-height:88px}
.offer-story .story-caption p{font-size:18px;line-height:1.5;max-width:57ch;letter-spacing:-.02em;margin-top:6px;padding-right:42px;color:var(--story-ink)}
.offer-story .story-caption span{font-size:9px}
.offer-story .story-replay{right:20px;bottom:22px;width:40px;height:40px}
.offer-story-steps{margin:12px 0 0;gap:12px}
.offer-story-steps li{font-size:11px;padding-top:9px}
.offer-story-steps li>span:first-child{font-size:8px}
.service-detail .offer-story-scope{font-size:11px;margin-top:9px}
.service-takeaway{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding-top:15px;margin-top:3px;border-top:1px solid #17243b24}
.service-detail .service-delivery-block{padding:0}
.service-detail .service-delivery-block>p{font-size:13px;line-height:1.7;color:var(--ink);max-width:62ch}
.service-detail h5{font-size:10px;margin-bottom:7px}
.service-actions{padding:0}
.service-consult{font-size:11px;min-height:44px;padding:11px 14px;gap:15px;white-space:nowrap}
.service-agreement-inline{border-top:0;margin-top:-3px}
.service-agreement-inline>summary{border-bottom:1px solid #17243b24;font-size:12px;min-height:42px}
.service-agreement-content{padding:16px 0 8px}
.service-agreement-content p,.service-agreement-content li{font-size:13px}

/* Surface, object and text colors are independent: material shine never carries essential copy. */
.service-cinema{--v-bright:#96ddc7;--v-mid:var(--color-cinema-data);--v-deep:#125143;--v-rim:#b5e1d2;--v-glass:#d0e7de;--v-label:var(--color-cinema-data-ink);--v-route:#18765d;--v-warning:#99592f;--v-solid-text:#fff;--v-dark-text:#193d33}
.story-software .service-cinema{--v-bright:#a7b9ff;--v-mid:var(--color-cinema-software);--v-deep:#203363;--v-rim:#b4c5ff;--v-glass:#d9e4f5;--v-label:var(--color-cinema-software-ink);--v-route:#b5d4ff;--v-warning:#ffc693;--v-dark-text:#1e3554}
.story-ai .service-cinema{--v-bright:#cfbdfb;--v-mid:var(--color-cinema-ai);--v-deep:#402c69;--v-rim:#d9ccff;--v-glass:#e8dff5;--v-label:var(--color-cinema-ai-ink);--v-route:#d4c2fc;--v-warning:#ffd2a8;--v-dark-text:#443058}
.story-package .service-cinema{--v-bright:#e7ba85;--v-mid:var(--color-cinema-sand);--v-deep:#674629;--v-rim:#f2d9b7;--v-glass:#f0e2ce;--v-label:var(--color-cinema-sand-ink);--v-route:#8f5a32;--v-warning:#844021;--v-dark-text:#523823}
.service-cinema [data-cues]{transform-box:fill-box;transform-origin:center}
.service-cinema .v-grid{fill:none;stroke:var(--v-label);stroke-width:1;opacity:.08}
.service-cinema .v-shadow{fill:#071d2e;opacity:.16}
.service-cinema .v-label{fill:var(--v-label);font:500 25px var(--font-body);letter-spacing:-.02em}
.service-cinema .v-label-small{fill:var(--v-label);font:500 22px var(--font-body);letter-spacing:-.02em}
.service-cinema .v-verdict{fill:var(--v-label);font:550 26px var(--font-body);letter-spacing:-.025em}
.service-cinema .v-on{fill:var(--v-solid-text);font:550 29px var(--font-body)}
.service-cinema .v-on-small{fill:var(--v-solid-text);font:550 21px var(--font-body);letter-spacing:.02em}
.service-cinema .v-on-big{fill:var(--v-solid-text);font:500 59px var(--font-body);letter-spacing:-.04em}
.service-cinema .v-dark{fill:var(--v-dark-text);font:550 26px var(--font-body);letter-spacing:-.02em}
.service-cinema .v-dark-small{fill:var(--v-dark-text);font:550 21px var(--font-body);letter-spacing:-.015em}
.service-cinema .v-dark-big{fill:var(--v-dark-text);font:500 59px var(--font-body)}
.service-cinema .v-number{fill:var(--v-dark-text);font:500 77px var(--font-body);letter-spacing:-.06em}
.service-cinema .v-route,.service-cinema .v-warning-route,.service-cinema .v-copper-route{fill:none;stroke:var(--v-route);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.service-cinema .v-warning-route{stroke:var(--v-warning)}
.service-cinema .v-copper-route{stroke:#e7b787}
.story-package .v-copper-route,.story-data .v-copper-route{stroke:#925a32}
.service-cinema .v-check{stroke:#227455;stroke-width:4;fill:none;stroke-linecap:round;stroke-linejoin:round}
.service-cinema [data-piece^="proof-"] .v-check{stroke:#fff}
.story-software [data-piece="verified-use"] .v-check,.story-software [data-piece="agreed"] .v-check{stroke:#bbefdc}
.service-cinema .v-dark-fill{fill:var(--v-dark-text)}
.service-cinema .v-light-stroke{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;opacity:.85}
.service-cinema .v-dark-stroke{fill:none;stroke:var(--v-dark-text);stroke-width:3;stroke-linecap:round;opacity:.75}
.service-cinema .v-glint{fill:none;stroke:#fff;stroke-width:1.5;stroke-opacity:.72}
.service-cinema .v-dot{fill:var(--v-route)}
.service-cinema .v-ring{stroke:var(--v-route);stroke-width:6;fill:none;stroke-dasharray:2 9;stroke-linecap:round}
.service-cinema .v-enclosure{fill:var(--v-rim);fill-opacity:.045;stroke:var(--v-route);stroke-width:2}
.service-cinema .v-band{fill:none;stroke:var(--v-mid);stroke-width:21;stroke-linecap:round;opacity:.7}
.service-cinema .v-criterion-line{fill:none;stroke:var(--v-route);stroke-width:2;opacity:.5}
.service-cinema .v-empty-cell{fill:none;stroke:var(--v-mid);stroke-width:1.5;stroke-dasharray:5 4}
.service-cinema .v-solid-cell{fill:var(--v-mid)}
.service-cinema .v-zone{fill:var(--v-rim);opacity:.1}
.service-cinema .v-strong{stroke-width:7}
.service-cinema .v-axis{fill:none;stroke:var(--v-label);stroke-width:1.5;opacity:.5}
@media(min-width:1600px){.offer-story .service-cinema{max-height:415px}.catalog-split .service-summary h4{font-size:17px}.service-detail .service-when{font-size:14px}.service-detail .service-delivery-block>p{font-size:14px}}
@media(min-width:950px) and (max-width:1100px){.catalog-split .service-offer>summary{width:30%;padding:14px 8px;grid-template-columns:17px minmax(0,1fr) 19px;gap:7px}.catalog-split .service-detail{left:34%;padding:0}.catalog-split .service-summary h4{font-size:14px}.service-takeaway{grid-template-columns:1fr;gap:13px}.offer-story .service-cinema{max-height:330px}.offer-story .story-caption p{font-size:16px}.volume-intro{column-gap:35px}}
@media(max-width:949px){.volume-intro{grid-template-columns:1fr;gap:0}.volume-kicker{display:flex;gap:18px;grid-column:1;margin-bottom:10px}.volume-kicker span+span{margin:0}.volume-intro h3{grid-row:2;font-size:30px;max-width:600px}.volume-intro>p{grid-column:1;grid-row:3;margin-top:14px;max-width:650px}.service-offer[open]>.service-detail{padding:5px 0 25px}.service-detail-heading{display:none}.service-detail{max-width:none;gap:15px}.service-detail .service-when{font-size:14px}.offer-story .service-cinema{max-height:390px}.service-summary h4{font-size:19px}.service-detail .service-delivery-block>p{font-size:14px}.service-detail .service-when{margin:0}.service-offer[open]{background:transparent}}
@media(max-width:600px){.volume-layout{padding-block:25px 30px}.volume-intro{margin-bottom:17px}.volume-intro h3{font-size:27px}.volume-intro>p{font-size:13px}.service-offer>summary{padding:19px 0}.service-offer[open]>summary{border-bottom:1px solid #17243b22;margin-bottom:15px}.offer-story .service-cinema{height:auto;max-height:none;aspect-ratio:800/510;padding:33px 0 0;width:100%;margin:0}.offer-story .story-screen{border-radius:9px}.offer-story .story-overline{inset:15px 16px auto;font-size:8px}.offer-story .story-caption{min-height:107px;padding:6px 16px 19px}.offer-story .story-caption p{font-size:16px;line-height:1.5;padding-right:32px}.offer-story .story-replay{right:12px;bottom:19px;width:34px;height:34px}.offer-story-steps{gap:8px;margin-top:11px}.offer-story-steps li{font-size:10px}.offer-story-steps li>span:first-child{display:block;margin-bottom:4px}.service-takeaway{grid-template-columns:1fr;gap:14px;padding-top:15px}.service-consult{font-size:12px;min-height:46px}.service-detail .service-when{font-size:13px}.service-agreement-inline>summary{font-size:12px}.service-detail .service-delivery-block>p{font-size:14px}.service-cinema .v-label{font-size:28px}.service-cinema .v-verdict{font-size:27px}.service-cinema .v-label-small{font-size:24px}}
@media print{.catalog-split .service-detail{position:static}.offer-story .story-caption{display:block}.service-takeaway{break-inside:avoid}}

/* v23 — laminated spatial objects. Finite camera movement follows the explanation. */
.service-detail .service-when{font-size:15px;line-height:1.8;max-width:77ch;margin:0 0 8px;text-wrap:pretty;color:var(--muted)}
.offer-story .story-screen{background:radial-gradient(ellipse at 48% -10%,#ffffffd9,transparent 75%),var(--story-bg);box-shadow:0 20px 45px #182d3e09}
.offer-story .cinema-stage{position:relative;isolation:isolate;padding:0;overflow:hidden;perspective:1800px;min-height:180px}
.cinema-scale{width:800px;height:490px;position:absolute;left:50%;top:52%;transform:translate(-50%,-50%) scale(var(--cinema-scale,1));transform-style:preserve-3d;perspective:1800px}
.cinema-camera,.cinema-object,.cinema-drift{position:absolute;inset:0;width:800px;height:490px;transform-style:preserve-3d}
.cinema-camera{transform:translateZ(-40px)}
.cinema-surface{position:absolute;inset:0;width:800px;height:490px;overflow:visible;backface-visibility:hidden;stroke:none;fill:none}
.cinema-surface text{stroke:none}
.cinema-surface [pathLength="1"]{stroke-dasharray:1;stroke-dashoffset:0}
.cinema-surface .v-transit{fill:var(--v-route);stroke:var(--v-rim);stroke-width:2}
.story-package .service-cinema [data-piece^="result-"] .v-check{stroke:#fff}
.story-ai .service-cinema [data-piece^="results-"] .v-warning-route,.story-ai .service-cinema [data-piece="regression"] circle{stroke:var(--color-cinema-warning-on-light)}
.cinema-edge{filter:brightness(.62) saturate(.8)}
[data-cinema-depth="ready"]> .story-screen>svg.service-cinema{display:none}
.offer-story .story-overline{z-index:2;pointer-events:none}
.offer-story .story-caption{position:relative;z-index:2;background:linear-gradient(0deg,var(--story-bg),transparent)}
.offer-story .story-replay{z-index:3;width:44px;height:44px}
.offer-story .story-act-count i{transition:background-color 350ms,transform 500ms;transform-origin:left}
.offer-story .story-act-count i[data-active="true"]{transform:scaleX(1.2)}
@media(max-width:600px){.service-detail .service-when{font-size:14px;line-height:1.8;margin-bottom:5px}.offer-story .cinema-stage{min-height:185px;aspect-ratio:800/510}.cinema-scale{top:55%}.offer-story .story-caption p{padding-right:48px}}
@media(prefers-reduced-motion:reduce){.cinema-stage{display:none!important}.offer-story .story-screen>svg.service-cinema{display:block!important}.offer-story .story-act-count i{transition:none}}
