/* A single illustrated project moves through the four WPS formats. */
.journey.section{max-width:none;margin:0;padding:90px max(4vw,calc((100vw - 1320px)/2)) 95px;background:#f7f9ff}
.journey-intro{max-width:720px;margin-bottom:45px}
.journey-intro h2{max-width:660px}
.journey-intro p{font-size:1.05rem;max-width:610px}
.journey-layout{display:grid;grid-template-columns:minmax(0,35%) minmax(0,1fr);gap:5%;align-items:start}
.journey-steps{display:grid;min-width:0}
.journey-step{appearance:none;width:100%;min-height:170px;display:flex;align-items:flex-start;gap:24px;text-align:left;border:0;border-left:2px solid #dce3f4;background:transparent;color:var(--ink);padding:29px 28px;cursor:pointer;font:inherit;transition:background .35s,box-shadow .35s,border-color .35s,transform .35s}
.journey-step:hover{background:#fff;transform:translateX(3px)}
.journey-step.is-active{border-color:#4164e9;background:#fff;box-shadow:0 14px 40px rgba(27,46,105,.07);border-radius:0 17px 17px 0}
.journey-step:focus-visible{outline:3px solid #7891ff;outline-offset:4px}
.journey-index{color:#4c63cf;font-size:.76rem;font-weight:800;letter-spacing:.12em;padding-top:5px;flex:none}
.journey-step strong{display:block;font-size:clamp(1.3rem,1.7vw,1.7rem);line-height:1.2;letter-spacing:-.04em;margin-bottom:12px}
.journey-step small{display:block;color:#66728b;font-size:.91rem;line-height:1.55;max-width:300px}
.journey-stage{position:sticky;top:100px;height:600px;min-width:0;border-radius:24px;padding:18px;background:linear-gradient(135deg,#e8edff,#dce5f8 60%,#e9edf5);box-shadow:0 25px 65px rgba(24,42,96,.13)}
.journey-window{height:100%;background:#fff;border:1px solid #dce3f1;border-radius:16px;overflow:hidden;box-shadow:0 12px 34px rgba(27,46,105,.1)}
.journey-window-bar{height:42px;display:flex;align-items:center;gap:12px;padding:0 17px;border-bottom:1px solid #e6eaf2;color:#5f6b82;font-size:.74rem}
.journey-window-bar b{font-size:.78rem}.journey-format{margin-left:auto;border-radius:6px;padding:3px 8px;background:#edf0ff;color:#5367bd;font-size:.65rem;font-weight:900;letter-spacing:.07em}
.journey-screen{position:relative;height:calc(100% - 42px);overflow:hidden}
.journey-scene{position:absolute;inset:0;opacity:0;transform:translateY(20px) scale(.985);pointer-events:none;transition:opacity .5s ease,transform .6s cubic-bezier(.2,.75,.2,1)}
.journey-scene.is-active{opacity:1;transform:none;pointer-events:auto}
.journey-document{background:linear-gradient(135deg,#f4f6ff,#eef2fa)}
.journey-paper{position:absolute;top:8%;left:12%;width:65%;height:86%;padding:7% 8%;background:#fff;box-shadow:0 15px 40px rgba(31,49,105,.14);transform:rotate(-2deg)}
.journey-paper small,.journey-sheet small,.journey-slide small,.journey-pdf-paper small{color:#5969b7;font-size:.64rem;font-weight:900;letter-spacing:.13em}
.journey-paper h3{font-size:clamp(1.9rem,3vw,3.1rem);margin:22px 0 17px}
.journey-paper p{max-width:300px;font-size:.87rem}
.journey-rule{height:2px;background:#dbe2f3;margin:25px 0 18px}
.journey-list{display:grid;gap:10px;font-size:.78rem;color:#47536e}.journey-list b{color:#5268ca;margin-right:10px}
.journey-float{position:absolute;right:6%;bottom:10%;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #e2e7f1;border-radius:11px;padding:13px 17px;color:#243257;font-size:.75rem;font-weight:800;box-shadow:0 14px 32px rgba(23,42,91,.16)}
.journey-float b{background:#e8ecff;color:#5368c7;border-radius:5px;padding:4px 6px;font-size:.62rem}
.journey-data{background:#eaf6f0}.journey-sheet{position:absolute;top:10%;left:7%;width:82%;background:#fff;border:1px solid #d5e9df;border-radius:11px;padding:22px;box-shadow:0 17px 38px rgba(23,94,57,.11)}
.journey-sheet>div{display:grid;grid-template-columns:1.25fr .8fr .8fr;gap:8px;padding:12px 8px;border-bottom:1px solid #e8eee9;font-size:.76rem;color:#4d5f55}.journey-sheet>div:first-of-type{margin-top:18px;background:#e7f5ec;color:#2c704b;border-radius:5px 5px 0 0}.journey-sheet>div:last-child{border-bottom:0;background:#f3faf6;color:#215a3d}
.journey-chart{position:absolute;right:7%;bottom:6%;width:205px;background:#fff;border-radius:14px;padding:16px 20px;box-shadow:0 15px 36px rgba(27,88,55,.16)}.journey-chart span{display:block;color:#3c8060;font-size:.57rem;font-weight:900;letter-spacing:.12em}.journey-chart strong{display:block;color:#238359;font-size:1.65rem}.journey-chart>div{height:63px;display:flex;align-items:end;gap:8px}.journey-chart i{display:block;flex:1;background:#8ad3ad;border-radius:5px 5px 0 0;height:35%}.journey-chart i:nth-child(2){height:53%}.journey-chart i:nth-child(3){height:69%}.journey-chart i:nth-child(4){height:91%;background:#279468}
.journey-presentation{background:#1c3444;padding:8%}.journey-slide{position:relative;height:100%;padding:8% 9%;background:#1b3546;color:#fff;border:1px solid #4a6772;overflow:hidden}.journey-slide:before{content:"";position:absolute;right:-12%;top:-30%;width:55%;aspect-ratio:1;border:80px solid rgba(111,205,180,.13);border-radius:50%}.journey-slide small{position:relative;color:#a4dcd1}.journey-slide h3{position:relative;color:#fff;font-size:clamp(2.2rem,3.5vw,3.8rem);margin:46px 0}.journey-slide-steps{display:flex;gap:8px}.journey-slide-steps span{border:1px solid #83adaf;border-radius:30px;padding:7px 12px;color:#d1e8e6;font-size:.7rem}.journey-slide>b{position:absolute;right:9%;bottom:9%;font-size:.75rem;color:#bcd2d4}
.journey-pdf{background:#f6f2f5}.journey-pdf-paper{position:absolute;top:7%;left:15%;width:66%;height:87%;padding:8% 9%;background:#fff;box-shadow:0 15px 38px rgba(80,41,73,.12)}.journey-pdf-paper small{color:#ad5e77}.journey-pdf-paper h3{font-size:clamp(2rem,3vw,3rem);margin:22px 0}.journey-pdf-bars{height:100px;display:flex;align-items:end;gap:12px;margin:30px 0 17px}.journey-pdf-bars i{flex:1;height:40%;background:#e9a6b2;border-radius:7px 7px 0 0}.journey-pdf-bars i:nth-child(2){height:57%}.journey-pdf-bars i:nth-child(3){height:70%;background:#d6687e}.journey-pdf-bars i:nth-child(4){height:90%;background:#bd4a65}.journey-pdf-paper p{font-size:.82rem}.journey-float-pdf b{background:#fce8ed;color:#bd4a65}
.journey-progress{display:flex;gap:5px;justify-content:center;margin-top:14px}.journey-progress i{width:21px;height:4px;border-radius:3px;background:#b8c5df;transition:width .35s,background .35s}.journey-progress i.is-active{width:40px;background:#4666df}

/* The mobile hero uses fewer, larger pieces of the same workbench. */
.mock-suite-mobile{display:none}
@media(max-width:700px){
  .hero-home .hero-visual .mock-suite{display:none}
  .hero-home .hero-visual .mock-suite-mobile{display:block;width:100%;height:350px;transform:none!important;background:#edf2fb;box-shadow:0 18px 50px rgba(27,45,104,.15)}
  .suite-mobile-bar{height:33px;display:flex;align-items:center;gap:9px;padding:0 10px;background:#fff;color:#5a6780;border-bottom:1px solid #e1e6f0;font-size:.65rem;font-weight:800}
  .suite-mobile-stage{position:relative;height:calc(100% - 33px);overflow:hidden;background:linear-gradient(135deg,#f2f5fc,#e4ebf9)}
  .suite-mobile-paper{position:absolute;top:7%;left:5%;width:70%;height:86%;background:#fff;padding:23px 24px;box-shadow:0 9px 27px rgba(31,50,94,.13);transform:rotate(-3deg)}
  .suite-mobile-paper small{font-size:.53rem;letter-spacing:.13em;color:#5b69a9;font-weight:900}.suite-mobile-paper strong{display:block;margin:24px 0 12px;font-size:1.62rem;letter-spacing:-.05em;line-height:1.1}.suite-mobile-paper p{font-size:.62rem;line-height:1.45;max-width:185px}
  .suite-mobile-lines{display:grid;gap:7px;margin-top:24px}.suite-mobile-lines i{display:block;height:5px;background:#e4e9f4;border-radius:3px}.suite-mobile-lines i:nth-child(2){width:80%}.suite-mobile-lines i:nth-child(3){width:57%}
  .suite-mobile-page{position:absolute;bottom:20px;left:24px;color:#6978a2;font-size:.53rem;font-weight:800}
  .suite-mobile-data{position:absolute;top:10%;right:3%;width:42%;height:105px;background:#fff;border:1px solid #d9e8e0;border-radius:9px;padding:12px;box-shadow:0 10px 25px rgba(25,62,56,.18);transform:rotate(4deg)}
  .suite-mobile-data small{display:block;color:#488361;font-size:.54rem;font-weight:900;letter-spacing:.1em}.suite-mobile-data strong{display:block;color:#228b5c;font-size:1.38rem;line-height:1.4}.suite-mobile-bars{height:29px;display:flex;align-items:end;gap:6px}.suite-mobile-bars i{display:block;width:18%;background:#88d0aa;border-radius:3px 3px 0 0;height:35%}.suite-mobile-bars i:nth-child(2){height:55%}.suite-mobile-bars i:nth-child(3){height:72%}.suite-mobile-bars i:nth-child(4){height:95%;background:#2a9a68}
  .suite-mobile-slide{position:absolute;right:3%;bottom:8%;width:47%;height:124px;padding:14px;background:#203c50;color:#fff;border-radius:8px;box-shadow:0 14px 30px rgba(18,43,57,.24);transform:rotate(4deg)}
  .suite-mobile-slide small{color:#9ed6cb;font-size:.48rem;font-weight:900;letter-spacing:.1em}.suite-mobile-slide strong{display:block;font-size:1.05rem;letter-spacing:-.045em;line-height:1.05;margin-top:12px}.suite-mobile-slide>span{position:absolute;bottom:11px;right:14px;color:#b6d7d3;font-size:.49rem}
  .journey.section{padding:75px 5% 80px}.journey-intro{margin-bottom:30px}.journey-intro p{font-size:1rem}
  .journey-layout{display:flex;flex-direction:column;gap:24px}.journey-stage{position:relative;top:auto;order:0;width:100%;height:340px;padding:10px;border-radius:17px}.journey-steps{order:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%}
  .journey-step{min-height:120px;min-width:0;gap:10px;padding:15px;border:1px solid #dfe5f3;border-radius:12px;background:#fff}.journey-step.is-active{border:1px solid #4866e1;border-radius:12px;box-shadow:0 8px 24px rgba(31,54,124,.11)}.journey-step:hover{transform:none}.journey-index{font-size:.62rem;padding-top:2px}.journey-step strong{font-size:.98rem;margin-bottom:6px}.journey-step small{font-size:.78rem;line-height:1.4;overflow-wrap:anywhere}.journey-step strong{overflow-wrap:anywhere}
  .journey-window-bar{height:31px;padding:0 9px;font-size:.56rem}.journey-window-bar b{font-size:.62rem}.journey-format{font-size:.49rem}.journey-screen{height:calc(100% - 31px)}
  .journey-paper{left:7%;width:76%;padding:21px}.journey-paper small,.journey-sheet small,.journey-slide small,.journey-pdf-paper small{font-size:.45rem}.journey-paper h3{font-size:1.75rem;margin:20px 0 9px}.journey-paper p{font-size:.62rem}.journey-rule{margin:17px 0 12px}.journey-list{font-size:.57rem;gap:6px}.journey-float{right:5%;bottom:6%;padding:9px;font-size:.59rem}.journey-float b{font-size:.51rem}
  .journey-sheet{top:8%;left:5%;width:90%;padding:12px}.journey-sheet>div{font-size:.55rem;padding:8px 4px;gap:4px}.journey-sheet>div:first-of-type{margin-top:10px}.journey-chart{right:5%;bottom:6%;width:135px;padding:10px}.journey-chart strong{font-size:1.16rem}.journey-chart>div{height:38px}
  .journey-presentation{padding:5%}.journey-slide{padding:11%}.journey-slide:before{border-width:50px}.journey-slide h3{font-size:2rem;margin:40px 0 25px}.journey-slide-steps span{font-size:.52rem;padding:5px}.journey-pdf-paper{left:10%;width:80%;padding:25px}.journey-pdf-paper h3{font-size:1.7rem}.journey-pdf-bars{height:70px;margin:20px 0}.journey-pdf-paper p{font-size:.63rem}
}
@media(max-width:360px){.suite-mobile-paper{padding:18px}.suite-mobile-paper strong{font-size:1.42rem}.suite-mobile-data{width:45%}.suite-mobile-slide{width:50%}.journey-step{padding:12px}.journey-step strong{font-size:.88rem}}

/* Short, one-shot demonstrations on the illustrated product screens. */
.mock-writer.demo-play .ai-note{animation:demo-note .65s cubic-bezier(.2,.8,.2,1) both}
.mock-writer.demo-play .doc-lines i{animation:demo-highlight .7s ease-out 1 both;animation-delay:.35s}
.mock-sheet.demo-play .mini-bars i{transform-origin:center bottom;animation:demo-bar .75s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--bar-index,0) * 70ms)}
.mock-sheet.demo-play .mini-bars i:nth-child(2){--bar-index:1}.mock-sheet.demo-play .mini-bars i:nth-child(3){--bar-index:2}.mock-sheet.demo-play .mini-bars i:nth-child(4){--bar-index:3}.mock-sheet.demo-play .mini-bars i:nth-child(5){--bar-index:4}.mock-sheet.demo-play .mini-bars i:nth-child(6){--bar-index:5}
.mock-sheet.demo-play .chart-panel strong{animation:demo-pop .6s ease-out .4s both}.mock-sheet.demo-play .formula{animation:demo-flash .7s ease-out .15s both}
.mock-present.demo-play .slide h3{animation:demo-rise .65s ease-out .18s both}.mock-present.demo-play .slide-ai{animation:demo-rise .65s ease-out .55s both}.mock-present.demo-play .slide-list i:nth-child(2){animation:demo-flash .65s ease-out .45s both}
.mock-pdf.demo-play .pdf-aside{animation:demo-note .7s ease-out .25s both}.mock-pdf.demo-play .pdf-aside li{animation:demo-rise .5s ease-out both}.mock-pdf.demo-play .pdf-aside li:nth-child(1){animation-delay:.5s}.mock-pdf.demo-play .pdf-aside li:nth-child(2){animation-delay:.65s}.mock-pdf.demo-play .pdf-aside li:nth-child(3){animation-delay:.8s}
.mock-ai.demo-play .ai-result{animation:demo-rise .7s ease-out .3s both}.mock-ai.demo-play .ai-result li{animation:demo-rise .45s ease-out both}.mock-ai.demo-play .ai-result li:nth-child(1){animation-delay:.55s}.mock-ai.demo-play .ai-result li:nth-child(2){animation-delay:.68s}.mock-ai.demo-play .ai-result li:nth-child(3){animation-delay:.81s}
@keyframes demo-note{from{opacity:.2;transform:translateX(35px)}to{opacity:1;transform:none}}
@keyframes demo-rise{from{opacity:.15;transform:translateY(15px)}to{opacity:1;transform:none}}
@keyframes demo-bar{from{transform:scaleY(.12)}to{transform:scaleY(1)}}
@keyframes demo-pop{from{opacity:.3;transform:scale(.83)}to{opacity:1;transform:none}}
@keyframes demo-flash{0%,100%{filter:none}45%{filter:brightness(1.18) saturate(1.3)}}

/* A real, draggable and keyboard-accessible comparison. */
.restoration-stage .compare{position:relative;width:100%;aspect-ratio:16/8.5;border-radius:19px;overflow:hidden;background:#ded8d0;box-shadow:0 22px 50px rgba(67,52,39,.15);cursor:ew-resize;touch-action:pan-y;user-select:none}
.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.compare-before{filter:grayscale(1) contrast(.75) sepia(.18);clip-path:inset(0 calc(100% - var(--split)) 0 0)}
.compare-label{position:absolute;bottom:20px;z-index:2;background:#fff;color:#26304a;border-radius:8px;padding:8px 13px;font-size:.78rem;font-weight:800;pointer-events:none}.compare-label-before{left:20px}.compare-label-after{right:20px}
.compare-divider{position:absolute;z-index:3;top:0;bottom:0;left:var(--split);width:2px;background:#fff;box-shadow:0 0 0 1px rgba(21,32,55,.16);transform:translateX(-50%);pointer-events:none}
.compare-handle{position:absolute;top:50%;left:50%;width:51px;height:51px;display:flex;align-items:center;justify-content:center;gap:5px;background:#fff;border:1px solid #d4d7df;border-radius:50%;box-shadow:0 5px 22px rgba(24,32,50,.26);transform:translate(-50%,-50%)}.compare-handle i{width:2px;height:15px;background:#3957b4;border-radius:2px}
.compare-range{position:absolute;z-index:4;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none}.compare:focus-within{outline:3px solid #7891ff;outline-offset:4px}.compare-caption{margin:13px 0 0;font-size:.83rem;color:#776f6c}
@media(max-width:700px){.restoration-stage .compare{aspect-ratio:4/3}.compare-label{bottom:11px;padding:6px 9px;font-size:.67rem}.compare-label-before{left:11px}.compare-label-after{right:11px}.compare-handle{width:45px;height:45px}.compare-caption{font-size:.76rem}}
@media(prefers-reduced-motion:reduce){.journey-scene,.journey-step,.journey-progress i{transition:none!important}.demo-play *{animation:none!important}}
@media(max-width:360px){.hero-home .hero-actions>span{display:none}}

/* The homepage illustration is a transparent cutout, with two small file accents beside the copy. */
.product-rail-band{display:flow-root;background:#f7f9ff}
.hero-home{grid-template-columns:43% 57%;min-height:640px;background:linear-gradient(135deg,#fffafa 0%,#fff1f2 55%,#ffe5e7 100%)}
.hero-home .button{background:#e5484d;box-shadow:0 13px 30px rgba(229,72,77,.2)}
.hero-home .button:hover{background:#c93640}
.hero-home .hero-copy{max-width:700px;padding-bottom:106px}
.hero-home .hero-visual{align-self:center;align-items:center;padding:18px 3vw 36px 0}
.hero-main-art{display:block;width:min(830px,100%);height:auto;max-height:570px;object-fit:contain;animation:hero-art-enter .75s cubic-bezier(.2,.8,.2,1) both,hero-art-float 7.2s ease-in-out .75s infinite}
.hero-accent{position:absolute;display:block;height:auto;pointer-events:none;user-select:none}
.hero-accent-sheet{width:92px;top:20px;right:2px;transform:rotate(18deg);animation:hero-accent-enter .7s .15s both,hero-sheet-float 5.1s ease-in-out .85s infinite}
.hero-accent-slide{width:118px;bottom:66px;right:8px;transform:rotate(-16deg);animation:hero-accent-enter .7s .28s both,hero-slide-float 6.3s ease-in-out .98s infinite}
@keyframes hero-art-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes hero-accent-enter{from{opacity:0;scale:.82}to{opacity:1;scale:1}}
@keyframes hero-art-float{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes hero-sheet-float{0%,100%{translate:0 0}50%{translate:4px -8px}}
@keyframes hero-slide-float{0%,100%{translate:0 0}50%{translate:-4px -9px}}
@media(max-width:1050px){.hero-home{grid-template-columns:1fr;min-height:0}.hero-home .hero-copy{padding-bottom:20px;max-width:820px}.hero-home .hero-visual{padding:0 5% 42px;justify-content:center}.hero-main-art{width:min(730px,100%);max-height:520px}.hero-accent-sheet{right:12%;top:34px}.hero-accent-slide{right:8%;bottom:-78px;width:74px}}
@media(max-width:700px){.hero-home .hero-copy{padding:58px 5% 16px}.hero-home .hero-visual{padding:0 2% 33px}.hero-main-art{width:100%;max-height:none}.hero-accent-sheet{width:42px;top:16px;right:5%}.hero-accent-slide{width:54px;right:5%;bottom:-56px}}
@media(max-width:390px){.hero-accent-sheet{right:2%;width:34px}.hero-accent-slide{width:44px;bottom:-44px}}
@media(prefers-reduced-motion:reduce){.hero-main-art,.hero-accent{animation:none;translate:none}}

/* Keep hero text readable on wide displays: the centered page inset grows with
   the viewport, so a fixed max-width would leave almost no room for content. */
.hero-copy,.hero-home .hero-copy{max-width:none;min-width:0}
@media(min-width:1600px){.hero{grid-template-columns:minmax(0,50%) minmax(0,50%)}}
@media(min-width:1051px){
  .hero:not(.hero-home) .hero-visual{padding-right:max(4vw,calc((100vw - 1320px)/2))}
  .hero:not(.hero-home) .hero-visual .mock{transform:rotate(-3deg)}
  .hero:not(.hero-home) .hero-visual .mock:hover{transform:rotate(-1deg) translateY(-5px)}
}

.site-header{position:sticky;top:0;z-index:100;box-shadow:0 2px 16px rgba(20,32,59,.06)}
#faq,#journey-title{scroll-margin-top:100px}

/* Gentle feedback for cards and editorial illustrations. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .editorial-grid article,.ecosystem-grid article,.format-grid article,.prompt-list article,.scenario-grid>div,.feature-visual .mock{transition:transform .42s cubic-bezier(.2,.75,.2,1),box-shadow .42s ease}
  .editorial-grid article:hover,.ecosystem-grid article:hover,.format-grid article:hover,.prompt-list article:hover,.scenario-grid>div:hover{transform:translateY(-5px);box-shadow:0 17px 38px rgba(30,48,94,.09)}
  .feature-split:hover .feature-visual .mock{transform:translateY(-5px);box-shadow:0 26px 60px rgba(30,48,94,.14)}
  .editorial-grid article:focus-within,.ecosystem-grid article:focus-within,.format-grid article:focus-within,.prompt-list article:focus-within{transform:translateY(-5px);box-shadow:0 17px 38px rgba(30,48,94,.09)}
}

/* Illustrations animate when they enter the viewport; the final state is the default. */
@media(prefers-reduced-motion:no-preference){
  .gallery-grid.motion-active .gallery-bars i{transform-origin:center bottom;animation:motion-grow .8s cubic-bezier(.2,.75,.2,1) both}
  .gallery-grid.motion-active .gallery-bars i:nth-child(2){animation-delay:.09s}.gallery-grid.motion-active .gallery-bars i:nth-child(3){animation-delay:.18s}.gallery-grid.motion-active .gallery-bars i:nth-child(4){animation-delay:.27s}
  .gallery-grid.motion-active .timeline-line i{animation:motion-dot .5s cubic-bezier(.2,.75,.2,1) both}
  .gallery-grid.motion-active .timeline-line i:nth-child(2){animation-delay:.12s}.gallery-grid.motion-active .timeline-line i:nth-child(3){animation-delay:.24s}.gallery-grid.motion-active .timeline-line i:nth-child(4){animation-delay:.36s}
  .gallery-grid.motion-active .funnel i{animation:motion-strip .6s cubic-bezier(.2,.75,.2,1) both}
  .gallery-grid.motion-active .funnel i:nth-child(2){animation-delay:.12s}.gallery-grid.motion-active .funnel i:nth-child(3){animation-delay:.24s}
  .flow-chain.motion-active span{animation:motion-card .65s cubic-bezier(.2,.75,.2,1) both}
  .flow-chain.motion-active span:nth-child(3){animation-delay:.12s}.flow-chain.motion-active span:nth-child(5){animation-delay:.24s}.flow-chain.motion-active span:nth-child(7){animation-delay:.36s}
  .pdf-stack.motion-active .pdf-mini-page{animation:motion-card .65s cubic-bezier(.2,.75,.2,1) both}
  .pdf-stack.motion-active .pdf-mini-page:nth-of-type(3){animation-delay:.12s}.pdf-stack.motion-active .pdf-mini-page:nth-of-type(4){animation-delay:.24s}
  .insight-visual.motion-active .insight-row{animation:motion-card .55s cubic-bezier(.2,.75,.2,1) both}
  .insight-visual.motion-active .insight-row:nth-of-type(3){animation-delay:.1s}.insight-visual.motion-active .insight-row:nth-of-type(4){animation-delay:.2s}.insight-visual.motion-active .insight-row:nth-of-type(5){animation-delay:.3s}
}
@keyframes motion-grow{from{transform:scaleY(.18);opacity:.55}to{transform:scaleY(1);opacity:1}}
@keyframes motion-dot{from{transform:translateY(-9px) scale(.2);opacity:.4}to{transform:translateY(-9px) scale(1);opacity:1}}
@keyframes motion-strip{from{transform:translateY(11px) scaleX(.84);opacity:.55}to{transform:none;opacity:1}}
@keyframes motion-card{from{transform:translateY(12px);opacity:.55}to{transform:none;opacity:1}}

/* A small stack of working files gives the closing invitation a visual finish. */
.final-cta{position:relative;isolation:isolate;overflow:hidden;min-height:335px;padding:48px 54px;gap:32px;background:radial-gradient(circle at 85% 38%,#30477a 0,#1b2b50 40%,#172447 75%);box-shadow:0 25px 55px rgba(20,36,74,.16)}
.final-cta:before{content:"";position:absolute;inset:auto -8% -110% 36%;height:520px;border:1px solid rgba(190,213,255,.16);border-radius:50%;pointer-events:none}
.final-cta-copy{position:relative;z-index:2;max-width:565px}
.final-cta h2{max-width:560px;font-size:clamp(2rem,3vw,3.25rem);line-height:1.12;letter-spacing:-.055em;margin:14px 0 12px}
.final-cta-copy>p{max-width:480px;color:#d4def3;font-size:.98rem;line-height:1.65;margin:0}
.final-cta-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:27px}
.final-cta-actions>span{color:#9fb2d8;font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.final-cta .button{margin:0}
.final-cta-visual{position:relative;z-index:1;flex:0 0 370px;height:245px;margin-right:2px}
.cta-orbit{position:absolute;inset:4px 2px 0 5px;border:1px solid rgba(193,213,251,.22);border-radius:50%;transform:rotate(-15deg)}
.cta-orbit:before,.cta-orbit:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#b8ead1;box-shadow:0 0 18px rgba(184,234,209,.55)}
.cta-orbit:before{top:33px;left:29px}.cta-orbit:after{right:26px;bottom:38px;background:#ffccb7}
.cta-file{position:absolute;width:178px;height:145px;border-radius:13px;padding:17px 18px;box-shadow:0 18px 35px rgba(8,18,44,.27);border:1px solid rgba(255,255,255,.6);display:flex;flex-direction:column}
.cta-file>span{align-self:flex-start;border-radius:5px;padding:4px 7px;font-size:.57rem;font-weight:900;letter-spacing:.08em}
.cta-file strong{font-size:1.05rem;line-height:1.2;letter-spacing:-.04em}
.cta-file small{margin-top:auto;font-size:.51rem;font-weight:900;letter-spacing:.12em}
.cta-file-sheet{top:67px;left:0;background:#e5f6ee;color:#1d5e45;transform:rotate(-12deg);z-index:1}
.cta-file-sheet>span{background:#c4e9d5}.cta-bars{height:53px;display:flex;gap:7px;align-items:end;margin-top:6px}.cta-bars i{display:block;width:23%;height:35%;border-radius:3px 3px 0 0;background:#73bea0}.cta-bars i:nth-child(2){height:63%}.cta-bars i:nth-child(3){height:47%}.cta-bars i:nth-child(4){height:86%;background:#31966d}
.cta-file-slide{top:84px;right:0;background:#dfe7ff;color:#273c78;transform:rotate(12deg);z-index:2;justify-content:space-between}
.cta-file-slide>span{background:#c5d4ff}.cta-file-slide strong{max-width:115px;font-size:1.22rem}
.cta-file-doc{top:19px;left:98px;background:#fff;color:#24314a;transform:rotate(-2deg);z-index:3}
.cta-file-doc>span{background:#e8eeff;color:#4664c2}.cta-file-doc strong{margin:11px 0 5px}.cta-file-doc i{display:block;width:100%;height:3px;margin:4px 0;border-radius:5px;background:#d9e0ef}.cta-file-doc i:nth-of-type(2){width:83%}.cta-file-doc i:nth-of-type(3){width:68%}.cta-file-doc small{color:#7082ad}
@media(prefers-reduced-motion:no-preference){.cta-file-doc{animation:cta-doc-float 6.8s ease-in-out infinite}.cta-file-sheet{animation:cta-sheet-float 7.4s ease-in-out .5s infinite}.cta-file-slide{animation:cta-slide-float 6.2s ease-in-out .8s infinite}}
@keyframes cta-doc-float{0%,100%{translate:0 0}50%{translate:0 -7px}}
@keyframes cta-sheet-float{0%,100%{translate:0 0}50%{translate:-3px 6px}}
@keyframes cta-slide-float{0%,100%{translate:0 0}50%{translate:3px -6px}}
@media(max-width:850px){.final-cta{padding:38px 38px}.final-cta-visual{flex-basis:290px;height:220px;scale:.78;transform-origin:center right;margin-left:-45px}}
@media(max-width:700px){.final-cta{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin:0 5% 55px;padding:32px 27px 25px}.final-cta h2{font-size:clamp(1.95rem,8vw,2.6rem)}.final-cta-copy>p{font-size:.91rem}.final-cta-actions{gap:12px;margin-top:23px}.final-cta-actions>span{width:100%;line-height:1.5}.final-cta-visual{width:340px;max-width:100%;height:202px;flex:none;scale:.78;transform-origin:center top;margin:0 auto -30px}.cta-orbit{top:0}}
