
:root{--ink:#171a25;--muted:#5d6470;--line:#d8d9d5;--paper:#f2f1ec;--teal:#5558e8;--teal-deep:#383bc5;--lime:#e0ff7a;--blue:#5558e8;--shadow:0 30px 80px rgba(19,21,43,.12)}
html{scroll-behavior:smooth}
body{font-family:Onest,Onest,sans-serif;letter-spacing:-.012em;background:var(--paper)}
h1,h2,h3,.brand{font-family:Onest,Onest,sans-serif;letter-spacing:-.06em}
h1{font-weight:800}h2{letter-spacing:-.055em}
.wrap{width:min(1280px,calc(100% - 80px))}
.eyebrow,.number,.strip-label,.workflow-caption,.sp-scene-kicker,.fp-scene-label{font-family:'IBM Plex Mono',monospace;letter-spacing:.07em;font-weight:600}
.site-header{height:82px;background:rgba(20,23,34,.97);border-color:#343948;color:#f7f7f2;backdrop-filter:blur(20px)}
.site-header .brand{font-size:1.5rem;letter-spacing:-.08em}
.site-header .brand span,.footer .brand span{color:var(--lime)}
.btn{background:var(--lime);border-color:var(--lime);color:var(--ink);border-radius:3px;box-shadow:none;font-weight:800;min-height:52px;padding:13px 25px}
.btn:hover{background:#fff;border-color:#fff;color:var(--ink);box-shadow:none;transform:translateY(-2px)}
.btn.light{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.btn.light:hover{background:#fff;border-color:#fff}
.btn:focus-visible,.faq-q:focus-visible,a:focus-visible{outline:3px solid #888aff;outline-offset:4px}

/* The light opening leaves the slide itself as the visual object. */
.home-page .site-header{background:rgba(250,249,245,.96);border-color:#e2e1dc;color:var(--ink)}
.home-page .site-header .brand span{color:var(--teal)}
.home-page .site-header .btn{background:var(--ink);border-color:var(--ink);color:#fff}
.home-page .site-header .btn:hover{background:var(--teal);border-color:var(--teal)}
.home-page .hero{padding:0;background:#faf9f5;color:var(--ink);overflow:hidden}
.home-page .hero-layout{display:block}
.home-page .hero-copy{max-width:none;display:grid;grid-template-columns:minmax(0,1fr);align-items:start;padding:58px 0 30px}
.home-page .hero-copy h1{grid-column:1/-1;font-size:clamp(3.5rem,5.2vw,5.7rem);font-weight:700;line-height:1.04;letter-spacing:-.065em;max-width:1200px;margin:0 0 32px;text-wrap:balance}
.home-page .hero-copy h1 span{display:block;color:var(--teal);font-weight:700}
.home-page .hero-copy p{font-size:clamp(1.08rem,1.5vw,1.3rem);line-height:1.45;color:#535966;max-width:690px;margin:0}
.home-page .hero-copy .btn{grid-column:1;grid-row:3;justify-self:start;align-self:start;margin-top:24px;background:var(--teal);border-color:var(--teal);color:#fff}
.home-page .hero-copy .btn:hover{background:var(--ink);border-color:var(--ink)}
.home-page .hero-note{display:none}
.home-page .hero-workflow{height:520px;min-height:0;margin:20px 0 18px;border:0;border-top:1px solid #cdd0d2;border-radius:0;background:transparent;padding:0;box-shadow:none;overflow:visible;position:relative}
.home-page .hero-workflow:before{display:none}
.atelier-head{position:absolute;top:14px;left:0;right:0;display:flex;justify-content:space-between;font:600 .69rem 'IBM Plex Mono',monospace;letter-spacing:.1em;color:#5c6270}
.atelier-head span:last-child{color:#858a93}
.atelier-prompt{position:absolute;left:0;top:136px;width:21%;padding-left:18px;border-left:3px solid var(--teal)}
.atelier-prompt small,.atelier-outline small,.atelier-slide-meta,.atelier-caption{font:600 .7rem 'IBM Plex Mono',monospace;letter-spacing:.08em}
.atelier-prompt small,.atelier-outline small{color:var(--teal-deep)}
.atelier-prompt p{font-size:clamp(1.1rem,1.5vw,1.5rem);font-weight:700;line-height:1.23;color:var(--ink);margin:24px 0 22px}
.atelier-prompt>span{font-size:.82rem;color:#787e87}
.atelier-outline{position:absolute;left:24%;top:80px;width:23%}
.atelier-outline strong{display:block;font-size:clamp(1.18rem,1.7vw,1.8rem);line-height:1.2;letter-spacing:-.05em;margin:20px 0 42px}
.atelier-outline>div{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:13px 0;border-top:1px solid #d4d5d4;font-size:.87rem;font-weight:700}
.atelier-outline>div:last-child{border-bottom:1px solid #d4d5d4}
.atelier-outline b{font:.65rem 'IBM Plex Mono',monospace;color:var(--teal-deep)}
.atelier-slide{position:absolute;right:1%;top:50px;width:50%;height:410px;padding:30px 35px 25px;background:#f1f1eb;border:1px solid #d5d7d1;box-shadow:18px 24px 34px #1f23431c;transform:rotate(-2deg);overflow:hidden}
.atelier-slide:before{content:"";position:absolute;right:-185px;top:91px;width:315px;height:315px;border:55px solid #5558e8;border-radius:50%;opacity:.96}
.atelier-slide:after{content:"";position:absolute;right:-14px;top:178px;width:90px;height:90px;background:var(--lime);border-radius:50%}
.atelier-slide-meta{display:flex;justify-content:space-between;gap:20px;color:#5d6483;position:relative;z-index:1}
.atelier-slide-title{position:relative;z-index:2;font:800 clamp(2.4rem,4.2vw,4.7rem)/1.02 Onest,Onest,sans-serif;letter-spacing:-.07em;margin-top:55px;max-width:73%;color:var(--ink)}
.atelier-slide-title em{font-style:normal;color:var(--teal)}
.atelier-slide-art{position:absolute;left:35px;bottom:70px;width:36%;display:flex;gap:5px;align-items:end;height:24px}
.atelier-slide-art i{display:block;background:#c8caec;height:9px;flex:1}.atelier-slide-art i:nth-child(2){background:#878bed;height:17px}.atelier-slide-art i:nth-child(3){background:var(--teal);height:24px}
.atelier-slide-foot{position:absolute;bottom:20px;left:35px;right:35px;border-top:1px solid #cbd0d0;padding-top:11px;display:flex;justify-content:space-between;gap:15px;font:600 .67rem 'IBM Plex Mono',monospace;color:#585e6d}
.atelier-caption{position:absolute;left:0;bottom:20px;color:#767b84}
/* The story advances through the prompt, outline and slide without a enclosing panel. */
.atelier-prompt{animation:atelier-arrive .75s .12s both}
.atelier-outline{animation:atelier-arrive .8s .38s both}
.atelier-slide{animation:atelier-slide-arrive .9s .65s both,atelier-float 7s 1.55s ease-in-out infinite}
.atelier-outline>div{animation:atelier-step 9s ease-in-out infinite}
.atelier-outline>div:nth-of-type(1){animation-delay:1.6s}
.atelier-outline>div:nth-of-type(2){animation-delay:4.6s}
.atelier-outline>div:nth-of-type(3){animation-delay:7.6s}
.atelier-slide:before{animation:atelier-ring 8s 1.6s ease-in-out infinite}
.atelier-slide:after{animation:atelier-orbit 6s 1.8s ease-in-out infinite}
.atelier-slide-art i{transform-origin:bottom;animation:atelier-chart 5s ease-in-out infinite}
.atelier-slide-art i:nth-child(2){animation-delay:.25s}
.atelier-slide-art i:nth-child(3){animation-delay:.5s}
@keyframes atelier-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes atelier-slide-arrive{from{opacity:0;transform:translateY(34px) rotate(-4deg)}to{opacity:1;transform:translateY(0) rotate(-2deg)}}
@keyframes atelier-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-11px) rotate(-1.3deg)}}
@keyframes atelier-step{0%,20%,100%{color:var(--ink);transform:translateX(0)}5%,13%{color:var(--teal-deep);transform:translateX(6px)}}
@keyframes atelier-ring{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@keyframes atelier-orbit{0%,100%{transform:translate(0,0)}50%{transform:translate(-8px,-12px)}}
@keyframes atelier-chart{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.35)}}
.strip{background:#faf9f5;border-top:1px solid #d8d9d6;padding:20px 0;color:var(--ink)}
.strip-label{color:var(--teal-deep)}.strip-steps span{border-color:#bfc1c7;border-radius:2px}

/* Topic covers: full-width type followed by a visual stage, never a side card. */
.site-page .page-hero,.footer-page .page-hero{padding:0 0 76px;background:#e8e8f8}
.site-page .page-hero .wrap,.footer-page .page-hero .wrap{position:relative}
.site-page .breadcrumbs,.footer-page .breadcrumbs{padding-top:35px;margin-bottom:58px;font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:#646980}
.site-page .page-hero .hero-grid,.footer-page .page-hero .hero-grid{display:block}
.site-page .page-hero .hero-copy,.footer-page .page-hero .hero-copy{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px 36px}
.site-page .page-hero .hero-copy .eyebrow,.footer-page .page-hero .hero-copy .eyebrow{grid-column:1/-1;margin:0;color:#4246b5}
.site-page .page-hero h1,.footer-page .page-hero h1{grid-column:1/-1;max-width:1080px;font-size:clamp(3.7rem,6.4vw,6.7rem);line-height:.99;margin:0 0 18px;text-wrap:balance}
.site-page .page-hero .hero-copy p,.footer-page .page-hero .hero-copy p{max-width:770px;margin:0;font-size:clamp(1.05rem,1.65vw,1.35rem);line-height:1.45;color:#44495b}
.site-page .page-hero .hero-copy .btn,.footer-page .page-hero .hero-copy .btn{grid-column:2;grid-row:3;align-self:center;justify-self:end;background:var(--ink);border-color:var(--ink);color:#fff}
.site-page .page-hero .hero-copy .btn:hover,.footer-page .page-hero .hero-copy .btn:hover{background:var(--teal);border-color:var(--teal)}
.site-page .page-hero .visual,.footer-page .page-hero .visual{width:100%;margin-top:58px}
.site-page .sp-hero-scene{min-height:500px;max-width:none;padding:36px;background:#cfd1f5;border:1px solid #bdc0ee;border-radius:3px;position:relative}
.site-page .sp-hero-scene>*{max-width:900px;margin-inline:auto}
.site-page .sp-hero-company .sp-hero-scene,.site-page .sp-hero-proposal .sp-hero-scene,.site-page .sp-hero-export .sp-hero-scene{background:#cfd1f5;border:1px solid #bdc0ee;padding:42px}
.site-page .sp-hero-company .sp-hero-scene>*,.site-page .sp-hero-proposal .sp-hero-scene>*,.site-page .sp-hero-export .sp-hero-scene>*{max-width:900px}
.footer-page .page-hero .visual .fp-scene{width:100%;min-height:500px;border-radius:3px;border-color:#bdc0ee;padding:42px}
.footer-page .page-hero.fp-hero-pitch{background:#e6e8fb}
.footer-page .page-hero.fp-hero-sales{background:#edf1e5}
.footer-page .page-hero.fp-hero-project{background:#e6ecf8}
.footer-page .page-hero.fp-hero-learning{background:#f1e9dc}
.footer-page .page-hero.fp-hero-report{background:#e6eef1}
.footer-page .page-hero.fp-hero-product{background:#e7f0eb}

/* Editorial rhythm and quieter surfaces across the rest of the site. */
.section,.home-page .section,.sp-section{padding:100px 0}
.section.alt,.sp-section.alt{background:#faf9f6}
.section.dark,.sp-section.dark{background:#202437}
.section-head{max-width:900px}
.section-head h2,.split h2,.sp-section h2{font-size:clamp(2.8rem,4.6vw,5rem);line-height:1.04}
.section-head p{max-width:700px}
.split,.home-page .split,.footer-page .split,.sp-editorial{display:grid;grid-template-columns:1fr;gap:34px}
.split>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.72fr);column-gap:50px;align-items:start}
.split .number{grid-column:1/-1;margin-bottom:16px}
.split h2{grid-column:1;grid-row:2;max-width:730px}
.split>div:first-child>p{grid-column:2;grid-row:2;align-self:start;font-size:1.1rem;max-width:470px}
.split .text-list,.split>div:first-child>.link{grid-column:2}
.split .visual{order:0!important;max-width:960px;margin-top:8px}
.split .visual .canvas{border-radius:3px}
.sp-editorial>div:first-child{max-width:920px}
.sp-editorial h2{max-width:900px}
.sp-editorial>div:last-child{width:100%}
.tile-grid,.slide-grid,.related-grid{gap:12px}
.tile,.flow-item,.slide-card,.related a,.sp-checks article,.sp-proof-pair article,.sp-intent-grid article{border-radius:2px;box-shadow:none}
.tile,.sp-checks article,.sp-proof-pair article{border-color:var(--line)}
.flow-item{border-top-width:2px}
.related{background:#e8e8f8;padding:90px 0}
.related-grid{display:grid;grid-template-columns:1fr;gap:0;counter-reset:route}
.related-grid a{counter-increment:route;display:flex;align-items:center;gap:35px;background:transparent;border:0;border-top:1px solid #bdc0df;border-radius:0;padding:20px 0;font-family:Onest,Onest,sans-serif;font-size:clamp(1.3rem,2.4vw,2.1rem);letter-spacing:-.04em;box-shadow:none}
.related-grid a:before{content:counter(route,decimal-leading-zero);font:600 .75rem 'IBM Plex Mono',monospace;color:#5558e8;letter-spacing:0}
.related-grid a:last-child{border-bottom:1px solid #bdc0df}
.related-grid a:hover{transform:none;color:#3538c5;border-color:#bdc0df}
.faq{padding:100px 0;background:#faf9f6}
.faq-grid{grid-template-columns:1fr;gap:38px}
.faq-grid>div:first-child h2{max-width:800px;font-size:clamp(2.8rem,4.6vw,5rem)}
.faq-q{font-size:1.18rem;padding:27px 0}
.faq-q span:last-child{color:#5558e8}
.final-cta{background:#5558e8;padding:78px 0;min-height:0}
.final-cta .wrap{display:flex;align-items:end;gap:50px}
.final-cta h2{font-size:clamp(2.7rem,4.7vw,5.4rem);line-height:1.03;max-width:910px}
.home-final{background:#5558e8;overflow:hidden}
.home-final .final-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);gap:35px;align-items:center}
.home-final h2{font-size:clamp(2.7rem,4.2vw,4.8rem);line-height:1.04;max-width:780px}
.home-final .payoff-demo{min-width:0;width:100%}
.footer{background:#171a25;padding:65px 0 35px}
.footer-links{gap:14px 30px}.footer-links a:hover{color:var(--lime)}
.footer-bottom{border-color:#3c414d}
.not-found-page .sp-not-found{background:#e8e8f8}
.not-found-page .sp-not-found h1{font-size:clamp(3.7rem,6.4vw,6.7rem)}
.not-found-page .sp-not-found-links a{border-radius:2px}

@media(max-width:900px){
 .wrap{width:min(1280px,calc(100% - 48px))}
 .home-page .hero-copy h1{font-size:clamp(3.3rem,6.7vw,5.3rem)}
 .home-page .hero-workflow{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:27px;padding-top:42px;margin-bottom:32px}
 .atelier-slide{position:relative;grid-column:1/-1;grid-row:1;right:auto;top:auto;width:min(100%,680px);height:400px;margin:10px auto 0;transform:rotate(-1deg);animation-name:atelier-slide-arrive-tablet,atelier-float-tablet}
 .atelier-prompt,.atelier-outline{position:relative;left:auto;top:auto;width:auto;align-self:start}
 .atelier-prompt{grid-column:1;grid-row:2}
 .atelier-outline{grid-column:2;grid-row:2}
 .atelier-caption{position:static;grid-column:1/-1;grid-row:3}
 @keyframes atelier-slide-arrive-tablet{from{opacity:0;transform:translateY(30px) rotate(-3deg)}to{opacity:1;transform:translateY(0) rotate(-1deg)}}
 @keyframes atelier-float-tablet{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(-.4deg)}}
 .site-page .page-hero h1,.footer-page .page-hero h1{font-size:clamp(3.4rem,7vw,5.5rem)}
 .split>div:first-child{grid-template-columns:1fr}
 .split h2,.split>div:first-child>p,.split .text-list,.split>div:first-child>.link{grid-column:1;grid-row:auto}
 .split>div:first-child>p{max-width:700px}
 .home-final .final-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
 .wrap{width:calc(100% - 32px)}
 .site-header{height:68px}.site-header .brand{font-size:1.25rem}.site-header .btn{min-height:44px;padding:9px 13px;font-size:.84rem}
 .home-page .hero-copy{display:block;padding:40px 0 30px}
 .home-page .hero-copy h1{font-size:clamp(2.55rem,10.2vw,3.55rem);line-height:1.07;margin-bottom:25px;overflow-wrap:normal}
 .home-page .hero-copy p{font-size:1.08rem;margin-bottom:24px}
 .home-page .hero-copy .btn{display:inline-flex;margin-top:0}
 .home-page .hero-workflow{display:flex;flex-direction:column;gap:22px;padding-top:41px;margin:10px 0 24px}
 .atelier-head{top:13px;font-size:.6rem}
 .atelier-head span:last-child{display:none}
 .atelier-slide{order:1;width:100%;height:330px;margin:0;transform:none;padding:19px 20px;box-shadow:9px 12px 20px #1f234320;animation-name:atelier-slide-arrive-mobile,atelier-float-mobile}
 .atelier-slide:before{right:-175px;top:106px;width:230px;height:230px;border-width:38px}
 .atelier-slide:after{right:-22px;top:171px;width:65px;height:65px}
 .atelier-slide-meta{font-size:.56rem}
 .atelier-slide-meta span:last-child{display:none}
 .atelier-slide-title{font-size:clamp(2.05rem,9vw,3rem);margin-top:54px;max-width:78%}
 .atelier-slide-art{left:20px;bottom:63px;height:16px}
 .atelier-slide-foot{left:20px;right:20px;bottom:17px;font-size:.53rem}
 .atelier-prompt{order:2;padding-left:14px}
 .atelier-prompt p{font-size:1.1rem;margin:12px 0 9px}
 .atelier-outline{order:3}
 .atelier-outline strong{margin:12px 0 18px}
 .atelier-outline>div{padding:9px 0}
 .atelier-caption{order:4;font-size:.6rem}
 @keyframes atelier-slide-arrive-mobile{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
 @keyframes atelier-float-mobile{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
 .site-page .page-hero,.footer-page .page-hero{padding-bottom:48px}
 .site-page .breadcrumbs,.footer-page .breadcrumbs{padding-top:25px;margin-bottom:35px;font-size:.68rem}
 .site-page .page-hero .hero-copy,.footer-page .page-hero .hero-copy{display:block}
 .site-page .page-hero .hero-copy .eyebrow,.footer-page .page-hero .hero-copy .eyebrow{margin-bottom:18px;font-size:.7rem}
 .site-page .page-hero h1,.footer-page .page-hero h1{font-size:clamp(2.9rem,11vw,4.1rem);line-height:1.03;margin-bottom:24px;overflow-wrap:anywhere}
 .site-page .page-hero .hero-copy p,.footer-page .page-hero .hero-copy p{font-size:1rem;margin-bottom:24px}
 .site-page .page-hero .visual,.footer-page .page-hero .visual{margin-top:34px}
 .site-page .sp-hero-scene{min-height:0;padding:12px;border-radius:2px}
 .site-page .sp-hero-company .sp-hero-scene,.site-page .sp-hero-proposal .sp-hero-scene,.site-page .sp-hero-export .sp-hero-scene{padding:12px}
 .footer-page .page-hero .visual .fp-scene{min-height:0;padding:18px;border-radius:2px}
 .section,.home-page .section,.sp-section,.faq{padding:70px 0}
 .section-head h2,.split h2,.sp-section h2,.faq-grid>div:first-child h2{font-size:clamp(2.5rem,9.5vw,3.3rem)}
 .split,.home-page .split,.sp-editorial{gap:22px}
 .split .visual{margin-top:0}
 .related{padding:70px 0}.related-grid a{gap:20px;padding:18px 0;font-size:1.4rem}
 .faq-grid{gap:18px}.faq-q{font-size:1rem;padding:20px 0}
 .final-cta{padding:65px 0}.final-cta .wrap{display:block}.final-cta h2{font-size:clamp(2.7rem,9.5vw,3.7rem)}
 .home-final .final-grid{display:grid;grid-template-columns:1fr}
 .footer{padding:50px 0 30px}
 .not-found-page .sp-not-found h1{font-size:3.2rem}
}
@media(max-width:360px){
 .home-page .hero-copy h1{font-size:2.25rem}
 .atelier-slide{height:300px}
 .atelier-slide-title{font-size:1.88rem}
 .atelier-slide:before{right:-165px;width:205px;height:205px;border-width:34px}
 .site-page .page-hero h1,.footer-page .page-hero h1{font-size:2.55rem}
 .not-found-page .sp-not-found h1{font-size:2.8rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.home-page .hero-workflow *,.home-page .hero-workflow *::before,.home-page .hero-workflow *::after{animation:none!important}}

/* Unified editorial system for the nine core topic pages. */
.site-page{background:#fbfaf7;color:#20231f}
.site-page .site-header{background:rgba(255,255,255,.95);border-color:#ecece8;color:#171a25}
.site-page .site-header .brand{color:#171a25}.site-page .site-header .brand span{color:#5558e8}
.site-page .site-header .btn{background:#20231f;border-color:#20231f;color:#fff}
.site-page .site-header .btn:hover{background:#5558e8;border-color:#5558e8;color:#fff}
.site-page .page-hero{position:relative;padding:0 0 72px;overflow:hidden;color:#20231f}
.site-page .page-hero .wrap{position:relative;z-index:2}
.site-page .breadcrumbs{display:flex;align-items:center;gap:10px;padding-top:27px;margin:0 0 45px;color:#898e89;font:600 .67rem 'IBM Plex Mono',monospace;letter-spacing:.04em}
.site-page .breadcrumbs a{color:#5558e8}.site-page .breadcrumbs span{color:#bbbdb9}
.site-page .page-hero .hero-copy{position:relative;z-index:3}
.site-page .page-hero .hero-copy .eyebrow{margin:0 0 20px;color:#5558e8;font:600 .71rem 'IBM Plex Mono',monospace;letter-spacing:.11em;text-transform:uppercase}
.site-page .page-hero h1{max-width:1120px;margin:0;font:400 clamp(4.8rem,7.2vw,7.8rem)/.9 'Instrument Serif',Georgia,serif;letter-spacing:-.045em;text-wrap:balance;color:#1f2220}
.site-page .page-hero .hero-copy p{max-width:650px;margin:25px 0 0;color:#696e69;font:400 clamp(1.04rem,1.35vw,1.19rem)/1.55 Onest,sans-serif}
.site-page .sp-hero-actions{display:flex;align-items:center;gap:10px;margin-top:28px}
.site-page .sp-hero-actions .btn,.site-page .sp-hero-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:11px 22px;border-radius:9px;font:600 .93rem Onest,sans-serif}
.site-page .sp-hero-actions .btn{margin:0;background:#242522;border-color:#242522;color:#fff}
.site-page .sp-hero-actions .btn:hover{background:#5558e8;border-color:#5558e8}
.site-page .sp-hero-secondary{border:1px solid #d5d8d3;background:rgba(255,255,255,.78);color:#343733;box-shadow:0 2px 5px #17221c0d;transition:transform .2s,border-color .2s,background .2s}
.site-page .sp-hero-secondary:hover{transform:translateY(-2px);border-color:#aeb7b0;background:#fff}
.site-page .page-hero .visual{position:relative;width:100%;margin:38px 0 0}
.site-page .page-hero .sp-hero-scene{position:relative;z-index:2;max-width:none;min-height:440px;padding:0;border:0;border-radius:0;background:transparent;overflow:visible;display:block}
.site-page .page-hero .sp-hero-scene>*{max-width:none}
.site-page .section h2,.site-page .sp-section h2,.site-page .related h2,.site-page .faq h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;letter-spacing:-.035em}
.site-page .section:nth-child(even):not(.dark),.site-page .sp-section.alt{background:#f7f5f0}
.site-page .tile,.site-page .flow-item,.site-page .slide-card,.site-page .sp-checks article,.site-page .sp-proof-pair article,.site-page .sp-intent-grid article{transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.site-page .tile:hover,.site-page .flow-item:hover,.site-page .slide-card:hover,.site-page .sp-checks article:hover,.site-page .sp-proof-pair article:hover,.site-page .sp-intent-grid article:hover{transform:translateY(-5px);border-color:#b9b9df;box-shadow:0 16px 35px #25264212}

/* AI: a prompt turns into an editable outline. */
.site-page .page-hero.sp-hero-ai{background:#e9e8ff}
.site-page .sp-hero-ai:before{content:'AI';position:absolute;right:-1%;bottom:-9%;color:#d4d3fa;font:400 22rem/.75 'Instrument Serif',Georgia,serif;letter-spacing:-.09em}
.site-page .sp-hero-ai .hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.72fr);gap:54px;align-items:end}
.site-page .sp-hero-ai h1{font-size:clamp(5.1rem,7.5vw,8.2rem)}
.site-page .sp-hero-ai .visual{margin:0 0 15px}
.site-page .sp-hero-ai .sp-ai-scene{display:block;min-height:475px;padding:28px 12px 0}
.site-page .sp-hero-ai .sp-ai-prompt{position:relative;z-index:2;width:92%;margin-left:0;padding:23px 25px;border-color:#bebfe8;border-radius:3px;box-shadow:15px 20px 35px #33375c18;transform:rotate(-2deg);animation:sp-ai-prompt-in .75s cubic-bezier(.2,.7,.2,1) both}
.site-page .sp-hero-ai .sp-ai-outline{position:relative;z-index:1;width:88%;margin:-2px 0 0 auto;padding:25px;border-color:#c8c9eb;border-radius:3px;box-shadow:18px 25px 42px #33375c1c;transform:rotate(1.5deg);animation:sp-ai-outline-in .85s .18s cubic-bezier(.2,.7,.2,1) both}
.site-page .sp-hero-ai .sp-ai-outline>div{animation:sp-ai-row 8s ease-in-out infinite}.site-page .sp-hero-ai .sp-ai-outline>div:nth-of-type(2){animation-delay:2s}.site-page .sp-hero-ai .sp-ai-outline>div:nth-of-type(3){animation-delay:4s}.site-page .sp-hero-ai .sp-ai-outline>div:nth-of-type(4){animation-delay:6s}
@keyframes sp-ai-prompt-in{from{opacity:0;transform:translateY(24px) rotate(0)}to{opacity:1;transform:translateY(0) rotate(-2deg)}}
@keyframes sp-ai-outline-in{from{opacity:0;transform:translateY(30px) rotate(0)}to{opacity:1;transform:translateY(0) rotate(1.5deg)}}
@keyframes sp-ai-row{0%,19%,100%{background:transparent}7%,13%{background:#eeeeff}}

/* Create: a dark working route intersects the editorial headline. */
.site-page .page-hero.sp-hero-create{background:#e7f1eb}
.site-page .sp-hero-create .hero-grid{display:block}
.site-page .sp-hero-create h1{max-width:980px}
.site-page .sp-hero-create .hero-copy p{margin-left:33%}
.site-page .sp-hero-create .sp-hero-actions{margin-left:33%}
.site-page .sp-hero-create .visual{width:74%;margin:22px 0 0 auto}
.site-page .sp-hero-create .sp-create-scene{height:425px;border-radius:3px;padding:38px;background:#24273d;box-shadow:23px 30px 48px #26382f24;transform:rotate(1.2deg);animation:sp-create-board .85s cubic-bezier(.2,.7,.2,1) both}
.site-page .sp-hero-create .sp-create-steps span{position:relative;overflow:hidden;background:#343852}.site-page .sp-hero-create .sp-create-steps span:after{content:'';position:absolute;inset:0;background:#d9ff77;opacity:.13;transform:translateX(-102%);animation:sp-create-step 8s ease-in-out infinite}.site-page .sp-hero-create .sp-create-steps span:nth-child(2):after{animation-delay:2s}.site-page .sp-hero-create .sp-create-steps span:nth-child(3):after{animation-delay:4s}.site-page .sp-hero-create .sp-create-steps span:nth-child(4):after{animation-delay:6s}
@keyframes sp-create-board{from{opacity:0;transform:translateY(28px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(1.2deg)}}
@keyframes sp-create-step{0%,20%,100%{transform:translateX(-102%)}8%,14%{transform:translateX(0)}}

/* Structure: a centred story map on warm paper. */
.site-page .page-hero.sp-hero-structure{background:#f1eadf}
.site-page .sp-hero-structure .hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center}
.site-page .sp-hero-structure h1{max-width:930px}
.site-page .sp-hero-structure .hero-copy p{max-width:680px}.site-page .sp-hero-structure .sp-hero-actions{justify-content:center}
.site-page .sp-hero-structure .visual{width:88%;margin:45px auto 0}
.site-page .sp-hero-structure .sp-structure-scene{height:410px;padding:34px;background:#fff;border:1px solid #d6cec0;border-radius:3px;box-shadow:0 25px 50px #3c352119}
.site-page .sp-hero-structure .sp-structure-grid{grid-template-columns:repeat(4,1fr);gap:1px;margin-top:38px}.site-page .sp-hero-structure .sp-structure-grid span{min-height:96px;border:0;border-radius:0;background:#f4f1eb;color:#2a2d29;opacity:0;transform:translateY(14px);animation:sp-map-tile .5s forwards}.site-page .sp-hero-structure .sp-structure-grid span:nth-child(2){animation-delay:.07s}.site-page .sp-hero-structure .sp-structure-grid span:nth-child(3){animation-delay:.14s}.site-page .sp-hero-structure .sp-structure-grid span:nth-child(4){animation-delay:.21s}.site-page .sp-hero-structure .sp-structure-grid span:nth-child(5){animation-delay:.28s}.site-page .sp-hero-structure .sp-structure-grid span:nth-child(6){animation-delay:.35s}.site-page .sp-hero-structure .sp-structure-grid span:nth-child(7){animation-delay:.42s}.site-page .sp-hero-structure .sp-structure-grid span:nth-child(8){animation-delay:.49s}.site-page .sp-hero-structure .sp-structure-grid span:nth-child(4),.site-page .sp-hero-structure .sp-structure-grid span:nth-child(8){background:#d9ff77}
@keyframes sp-map-tile{to{opacity:1;transform:none}}

/* Templates: loose cards fan out beside the title. */
.site-page .page-hero.sp-hero-templates{background:#e9f3e5}
.site-page .sp-hero-templates .hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);gap:30px;align-items:center}
.site-page .sp-hero-templates h1{font-size:clamp(4.8rem,6.8vw,7.4rem)}
.site-page .sp-hero-templates .visual{margin:0}
.site-page .sp-hero-templates .sp-template-scene{height:475px;padding:32px 0 0}
.site-page .sp-hero-templates .sp-template-stack{height:390px}.site-page .sp-hero-templates .sp-template-stack>div{width:57%;height:300px;border-radius:2px;animation:sp-template-fan .8s cubic-bezier(.2,.7,.2,1) both}.site-page .sp-hero-templates .sp-template-stack>div:nth-child(2){animation-delay:.12s}.site-page .sp-hero-templates .sp-template-stack>div:nth-child(3){animation-delay:.24s}
@keyframes sp-template-fan{from{opacity:0;translate:0 30px}to{opacity:1;translate:0 0}}

/* Design: a typographic proof floats over a visible grid. */
.site-page .page-hero.sp-hero-design{background-color:#f6f3ed;background-image:linear-gradient(#7b7e7610 1px,transparent 1px),linear-gradient(90deg,#7b7e7610 1px,transparent 1px);background-size:42px 42px}
.site-page .sp-hero-design .hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr);gap:70px;align-items:center}
.site-page .sp-hero-design .visual{margin:0}
.site-page .sp-hero-design .sp-hero-scene{display:grid;place-items:center;min-height:530px}
.site-page .sp-hero-design .design-demo{max-width:560px;border-radius:3px;transform:rotate(2deg);box-shadow:24px 30px 46px #2b312d24;animation:sp-design-arrive .85s cubic-bezier(.2,.7,.2,1) both}.site-page .sp-hero-design .design-underline{transform-origin:left;animation:sp-design-line .9s .45s both}
@keyframes sp-design-arrive{from{opacity:0;transform:translateY(28px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(2deg)}}
@keyframes sp-design-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* Charts: the data board is offset beneath an oversized marker. */
.site-page .page-hero.sp-hero-charts{background:#e6eef1}
.site-page .sp-hero-charts:before{content:'DATA';position:absolute;right:-2%;top:14%;color:#d3dce1;font:400 15rem/.8 'Instrument Serif',Georgia,serif;letter-spacing:-.08em}
.site-page .sp-hero-charts .hero-copy p,.site-page .sp-hero-charts .sp-hero-actions{margin-left:auto}
.site-page .sp-hero-charts .visual{width:76%;margin:12px 0 0 auto}
.site-page .sp-hero-charts .sp-data-scene{height:445px;padding:34px;border-radius:3px;background:#f9fbfa;border:1px solid #cfdbd5;box-shadow:20px 28px 44px #2634421d;transform:rotate(-1deg)}
.site-page .sp-hero-charts .sp-data-bars i{transform:scaleY(0);transform-origin:bottom;animation:sp-bar-rise .7s forwards}.site-page .sp-hero-charts .sp-data-bars i:nth-child(2){animation-delay:.08s}.site-page .sp-hero-charts .sp-data-bars i:nth-child(3){animation-delay:.16s}.site-page .sp-hero-charts .sp-data-bars i:nth-child(4){animation-delay:.24s}.site-page .sp-hero-charts .sp-data-bars i:nth-child(5){animation-delay:.32s}
@keyframes sp-bar-rise{to{transform:scaleY(1)}}

/* Company: proof cards escape the main company slide. */
.site-page .page-hero.sp-hero-company{background:#ede9ff}
.site-page .sp-hero-company .hero-grid{display:block}.site-page .sp-hero-company h1{max-width:1040px}
.site-page .sp-hero-company .hero-copy p,.site-page .sp-hero-company .sp-hero-actions{margin-left:42%}
.site-page .sp-hero-company .visual{width:78%;margin:25px auto 0}
.site-page .sp-hero-company .company-demo{min-height:500px;border:0;border-radius:3px;background:#d9e9e1;box-shadow:20px 28px 48px #292d491a}
.site-page .sp-hero-company .company-main{animation:sp-company-main .8s both}.site-page .sp-hero-company .company-mini{animation:sp-company-card .7s .35s both}.site-page .sp-hero-company .company-mini.two{animation-delay:.5s}
@keyframes sp-company-main{from{opacity:0;transform:translateX(-25px)}to{opacity:1;transform:none}}
@keyframes sp-company-card{from{opacity:0;transform:translate(20px,15px)}to{opacity:1;transform:none}}

/* Proposal: a decision path spans the entire lower hero. */
.site-page .page-hero.sp-hero-proposal{background:#f1eee6}
.site-page .sp-hero-proposal .hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:55px;align-items:end}
.site-page .sp-hero-proposal h1{font-size:clamp(4.7rem,6.6vw,7.2rem)}
.site-page .sp-hero-proposal .visual{margin:0}
.site-page .sp-hero-proposal .proposal-demo{min-height:480px;border-radius:3px;border-color:#d7d1c4;box-shadow:22px 28px 45px #322d231b;transform:rotate(1deg)}
.site-page .sp-hero-proposal .proposal-chapters>div{opacity:0;transform:translateY(14px);animation:sp-proposal-step .55s forwards}.site-page .sp-hero-proposal .proposal-chapters>div:nth-child(2){animation-delay:.1s}.site-page .sp-hero-proposal .proposal-chapters>div:nth-child(3){animation-delay:.2s}.site-page .sp-hero-proposal .proposal-chapters>div:nth-child(4){animation-delay:.3s}
@keyframes sp-proposal-step{to{opacity:1;transform:none}}

/* Export: format cards read as the final handoff. */
.site-page .page-hero.sp-hero-export{background:#e8eff8}
.site-page .sp-hero-export .hero-grid{display:block}.site-page .sp-hero-export h1{max-width:960px}
.site-page .sp-hero-export .hero-copy p{margin-left:31%}.site-page .sp-hero-export .sp-hero-actions{margin-left:31%}
.site-page .sp-hero-export .visual{width:73%;margin:20px 0 0 auto}
.site-page .sp-hero-export .export-demo{min-height:455px;padding:26px;border-radius:3px;background:#dce8e2;box-shadow:22px 30px 46px #2738431c;transform:rotate(-1deg)}
.site-page .sp-hero-export .export-preview{animation:sp-export-preview .8s both}.site-page .sp-hero-export .export-formats>div{animation:sp-export-format .65s .28s both}.site-page .sp-hero-export .export-formats>div:nth-child(2){animation-delay:.42s}
@keyframes sp-export-preview{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}
@keyframes sp-export-format{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}

/* One calm reveal language below the hero. */
.site-page.js-ready #page-content>.section,.site-page.js-ready .sp-section,.site-page.js-ready .related{opacity:0;transform:translateY(22px);transition:opacity .62s ease calc(var(--reveal-order,0)*55ms),transform .62s ease calc(var(--reveal-order,0)*55ms)}
.site-page.js-ready #page-content>.section.is-visible,.site-page.js-ready .sp-section.is-visible,.site-page.js-ready .related.is-visible{opacity:1;transform:none}
.home-page .section{padding-top:84px;padding-bottom:84px}
.home-page .studio-float-idea,.home-page .studio-float-check{animation:none}
.home-page.js-ready main>.section{opacity:0;transform:translateY(20px);transition:opacity .62s ease calc(var(--reveal-order,0)*50ms),transform .62s ease calc(var(--reveal-order,0)*50ms)}
.home-page.js-ready main>.section.is-visible{opacity:1;transform:none}

@media(max-width:1000px){
 .site-page .sp-hero-ai .hero-grid,.site-page .sp-hero-templates .hero-grid,.site-page .sp-hero-design .hero-grid,.site-page .sp-hero-proposal .hero-grid{grid-template-columns:1fr}
 .site-page .sp-hero-ai .visual,.site-page .sp-hero-templates .visual,.site-page .sp-hero-design .visual,.site-page .sp-hero-proposal .visual{margin-top:38px}
 .site-page .sp-hero-ai .sp-ai-scene{max-width:720px;margin:auto}.site-page .sp-hero-templates .sp-template-scene,.site-page .sp-hero-design .sp-hero-scene,.site-page .sp-hero-proposal .proposal-demo{max-width:760px;margin-inline:auto}
}
@media(max-width:600px){
 .site-page .page-hero{padding-bottom:42px}
 .site-page .breadcrumbs{padding-top:20px;margin-bottom:34px;font-size:.6rem}
 .site-page .page-hero .hero-copy,.site-page .sp-hero-structure .hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center}
 .site-page .page-hero h1,.site-page .sp-hero-ai h1,.site-page .sp-hero-templates h1,.site-page .sp-hero-proposal h1{max-width:100%;font-size:clamp(2.75rem,11.4vw,3.65rem);line-height:.95;overflow-wrap:normal}
 .site-page .page-hero .hero-copy p,.site-page .sp-hero-create .hero-copy p,.site-page .sp-hero-company .hero-copy p,.site-page .sp-hero-charts .hero-copy p,.site-page .sp-hero-export .hero-copy p{max-width:355px;margin:20px 0 0;text-align:center}
 .site-page .sp-hero-actions,.site-page .sp-hero-create .sp-hero-actions,.site-page .sp-hero-company .sp-hero-actions,.site-page .sp-hero-charts .sp-hero-actions,.site-page .sp-hero-export .sp-hero-actions{width:min(100%,320px);flex-direction:column;margin:23px 0 0}
 .site-page .sp-hero-actions .btn,.site-page .sp-hero-secondary{width:100%}
 .site-page .page-hero .visual,.site-page .sp-hero-create .visual,.site-page .sp-hero-structure .visual,.site-page .sp-hero-charts .visual,.site-page .sp-hero-company .visual,.site-page .sp-hero-export .visual{width:100%;margin:34px 0 0}
 .site-page .page-hero .sp-hero-scene{min-height:0}
 .site-page .sp-hero-ai:before,.site-page .sp-hero-charts:before{display:none}
 .site-page .sp-hero-ai .sp-ai-scene{padding:0;min-height:375px}.site-page .sp-hero-ai .sp-ai-prompt{width:95%;padding:16px}.site-page .sp-hero-ai .sp-ai-outline{width:94%;padding:17px}
 .site-page .sp-hero-create .sp-create-scene{height:320px;padding:20px;transform:none}.site-page .sp-hero-create .sp-create-steps{grid-template-columns:repeat(2,1fr)}
 .site-page .sp-hero-structure .sp-structure-scene{height:auto;min-height:350px;padding:18px}.site-page .sp-hero-structure .sp-structure-grid{grid-template-columns:repeat(2,1fr);margin-top:24px}.site-page .sp-hero-structure .sp-structure-grid span{min-height:58px}
 .site-page .sp-hero-templates .sp-template-scene{height:330px;padding-top:12px}.site-page .sp-hero-templates .sp-template-stack{height:285px}.site-page .sp-hero-templates .sp-template-stack>div{width:62%;height:205px;padding:14px}
 .site-page .sp-hero-design .sp-hero-scene{min-height:340px}.site-page .sp-hero-design .design-demo{transform:none}
 .site-page .sp-hero-charts .sp-data-scene{height:330px;padding:17px;transform:none}
 .site-page .sp-hero-company .company-demo{min-height:340px}.site-page .sp-hero-company .company-main{height:235px}
 .site-page .sp-hero-proposal .proposal-demo{min-height:0;transform:none}.site-page .sp-hero-proposal .proposal-intro{min-height:165px}.site-page .sp-hero-proposal .proposal-chapters{grid-template-columns:repeat(2,1fr)}
 .site-page .sp-hero-export .export-demo{min-height:330px;transform:none}
 .site-page .section h2,.site-page .sp-section h2,.site-page .related h2,.site-page .faq h2{font-size:clamp(2.25rem,9vw,3rem)}
}
@media(max-width:360px){
 .site-page .page-hero h1,.site-page .sp-hero-ai h1,.site-page .sp-hero-templates h1,.site-page .sp-hero-proposal h1{font-size:2.55rem}
 .site-page .sp-hero-ai .sp-ai-scene{min-height:355px}.site-page .sp-hero-company .company-demo{min-height:320px}.site-page .sp-hero-export .export-demo{grid-template-columns:1fr}.site-page .sp-hero-export .export-formats{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){
 .site-page.js-ready #page-content>.section,.site-page.js-ready .sp-section,.site-page.js-ready .related{opacity:1;transform:none;transition:none}
 .home-page.js-ready main>.section{opacity:1;transform:none;transition:none}
 .site-page .sp-ai-prompt,.site-page .sp-ai-outline,.site-page .sp-ai-outline>div,.site-page .sp-create-scene,.site-page .sp-create-steps span:after,.site-page .sp-structure-grid span,.site-page .sp-template-stack>div,.site-page .design-demo,.site-page .design-underline,.site-page .sp-data-bars i,.site-page .company-main,.site-page .company-mini,.site-page .proposal-chapters>div,.site-page .export-preview,.site-page .export-formats>div{animation:none!important;opacity:1!important;transform:none!important}
}

/* Reference-inspired homepage: calm serif cover and an open workspace preview. */
.home-page .site-header{background:rgba(255,255,255,.94);border-color:#f0f0ee}
.home-page .hero{background:#fff}
.home-page .hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center;padding:43px 0 0}
.home-page .hero-copy h1{font:400 clamp(3.8rem,4.6vw,5.4rem)/1.01 'Instrument Serif',Georgia,serif;letter-spacing:-.03em;max-width:970px;margin:0 0 16px;text-wrap:balance}
.home-page .hero-copy p{font-size:clamp(1.05rem,1.35vw,1.28rem);font-weight:400;line-height:1.45;color:#777976;max-width:630px;margin:0}
.home-page .hero-actions{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:22px}
.home-page .hero-copy .btn{display:inline-flex;align-items:center;justify-content:center;min-height:47px;margin:0;padding:11px 22px;border-radius:9px;background:#252522;border-color:#252522;color:#fff;font-weight:600}
.home-page .hero-copy .btn:hover{background:#454640;border-color:#454640;color:#fff}
.home-page .hero-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:11px 20px;border:1px solid #dcdfda;border-radius:9px;background:#fff;color:#343733;font-size:.94rem;font-weight:600;box-shadow:0 2px 5px #17221c0d;transition:transform .2s,border-color .2s}
.home-page .hero-secondary:hover{transform:translateY(-2px);border-color:#aeb7b0}
.studio-scene{position:relative;width:min(1070px,100%);height:640px;margin:20px auto 0}
.studio-board{position:absolute;z-index:2;left:50%;top:34px;transform:translateX(-50%);display:grid;grid-template-columns:177px minmax(0,1fr);width:min(960px,100%);height:583px;overflow:hidden;background:#fff;border:1px solid #e3e7e2;border-radius:17px;box-shadow:0 24px 65px #283e3019,0 2px 8px #283e300b}
.studio-sidebar{position:relative;padding:18px 12px;border-right:1px solid #eceeeb;background:#fbfcfa;color:#808782}
.studio-mark{display:flex;align-items:center;gap:6px;padding:0 7px;color:#262c29;font-size:.91rem;font-weight:800;letter-spacing:-.06em}
.studio-mark i{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#d9f8e8;color:#285a45;font-size:.87rem;font-style:normal;letter-spacing:0}
.studio-side-label{margin:32px 8px 10px;color:#a4aaa5;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}
.studio-nav{display:grid;gap:5px}
.studio-nav span{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:7px;font-size:.75rem;white-space:nowrap}
.studio-nav span.active{background:#eaf6ef;color:#243c31;font-weight:700}
.studio-nav i{width:16px;text-align:center;font-style:normal;font-size:.88rem}
.studio-side-bottom{position:absolute;bottom:20px;left:20px;display:flex;align-items:center;gap:8px;font-size:.71rem}
.studio-avatar{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#dfe5f5;color:#4f5f89;font-size:.54rem;font-weight:800}
.studio-main{min-width:0;padding:24px 25px;background:#fff}
.studio-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:26px}
.studio-toolbar>div{display:grid;gap:3px}
.studio-toolbar small{color:#a3aaa5;font-size:.58rem;font-weight:700;letter-spacing:.12em}
.studio-toolbar strong{font:400 2rem/1.05 'Instrument Serif',Georgia,serif;color:#2c302d;letter-spacing:-.025em}
.studio-create{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #e5e8e4;border-radius:7px;color:#6a736d;font-size:.67rem;white-space:nowrap}
.studio-create b{font-size:1rem;font-weight:500;line-height:.6}
.studio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px 14px}
.studio-project{min-width:0}
.studio-preview{position:relative;height:153px;padding:16px;overflow:hidden;border:1px solid #e9eae8;border-radius:9px;color:#222a27}
.studio-preview small{position:relative;z-index:2;display:block;font-size:.49rem;font-weight:700;letter-spacing:.1em}
.studio-preview strong{position:relative;z-index:2;display:block;margin-top:20px;font:400 1.7rem/.98 'Instrument Serif',Georgia,serif;letter-spacing:-.03em}
.studio-preview-one{background:#e6dcd1 url('/assets/studio-launch.webp') center/cover no-repeat}
.studio-preview-one .studio-orb{position:absolute;right:-19px;bottom:-55px;width:138px;height:138px;border:27px solid #e2a49a;border-radius:50%}
.studio-preview-two{background:#222c3b url('/assets/studio-results.webp') center/cover no-repeat;color:#f9f7f0}
.studio-preview-two small{color:#adb9cb}
.studio-preview-two strong{max-width:150px}
.studio-mini-bars{position:absolute;right:18px;bottom:17px;display:flex;align-items:end;gap:4px;height:60px}
.studio-mini-bars i{display:block;width:10px;background:#b7cfbb;border-radius:2px 2px 0 0}
.studio-mini-bars i:nth-child(1){height:22px}.studio-mini-bars i:nth-child(2){height:40px}.studio-mini-bars i:nth-child(3){height:31px}.studio-mini-bars i:nth-child(4){height:55px;background:#d8fae6}
.studio-preview-three{background:#e5efea url('/assets/studio-brand.webp') center/cover no-repeat}
.studio-preview-one small,.studio-preview-one strong,.studio-preview-one .studio-orb,.studio-preview-two small,.studio-preview-two strong,.studio-preview-two .studio-mini-bars,.studio-preview-three small,.studio-preview-three strong,.studio-preview-three .studio-disc{display:none}
.studio-preview-three .studio-disc{position:absolute;right:-25px;bottom:-65px;width:165px;height:165px;border-radius:50%;background:#b4cfc1;box-shadow:inset 25px 18px 0 #d7e7dd}
.studio-preview-four{background:#e8e7f4}.studio-preview-four:after{content:'';position:absolute;right:-35px;bottom:-68px;width:160px;height:160px;border:35px solid #b2afd4;border-radius:50%}
.studio-preview-five{background:linear-gradient(120deg,#ece5dc 0 54%,#d9d0c4 54%)}
.studio-preview-six{background:#e9eee7}.studio-preview-six:after{content:'';position:absolute;right:10px;bottom:12px;width:85px;height:85px;background:#bbd6b3;border-radius:50% 50% 12% 12%}
.studio-project-meta{display:grid;gap:4px;padding:10px 2px 0}
.studio-project-meta b{color:#4a504c;font-size:.75rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio-project-meta span{color:#a2a7a2;font-size:.66rem}
.studio-float{position:absolute;z-index:3;display:grid;place-items:center;background:#fff;border:1px solid #e9ece7;box-shadow:0 13px 26px #243d311b,0 2px 4px #243d310b;animation:studio-hover 6s ease-in-out infinite}
.studio-float-idea{left:-78px;top:30px;width:65px;height:65px;border-radius:16px;transform:rotate(-16deg)}
.studio-float-idea span{color:#e5a471;font:2.2rem Georgia,serif}
.studio-float-chart{left:5px;top:165px;width:53px;height:53px;display:flex;align-items:end;justify-content:center;gap:4px;padding-bottom:12px;border-radius:13px;transform:rotate(9deg);animation-delay:-2s}
.studio-float-chart i{display:block;width:7px;height:12px;border-radius:2px;background:#a5c7b2}.studio-float-chart i:nth-child(2){height:21px}.studio-float-chart i:nth-child(3){height:29px;background:#4d9e70}
.studio-float-check{right:-61px;top:91px;width:55px;height:55px;border-radius:14px;color:#2a9c69;font-size:1.5rem;transform:rotate(12deg);animation-delay:-3s}
.studio-float-slide{right:16px;top:9px;width:54px;height:66px;display:block;padding:9px;border-radius:11px;transform:rotate(11deg);animation-delay:-1s}
.studio-float-slide b{display:block;font-size:.58rem;color:#93a798}.studio-float-slide span{display:block;margin-top:10px;font-size:.49rem;font-weight:800;line-height:1.15;color:#405b4a}
@keyframes studio-hover{0%,100%{translate:0 0}50%{translate:0 -10px}}
.home-page .strip{background:#fff}
@media(max-width:900px){
 .home-page .hero-copy{padding-top:48px}
 .home-page .hero-copy h1{font-size:clamp(3.7rem,8vw,5rem)}
 .studio-scene{height:560px;margin-top:25px}
 .studio-board{top:35px;width:100%;height:520px;grid-template-columns:145px minmax(0,1fr)}
 .studio-sidebar{padding:17px 8px}
 .studio-main{padding:19px}
 .studio-preview{height:130px;padding:12px}
 .studio-preview strong{font-size:1.4rem}
 .studio-float-idea{left:-15px}.studio-float-check{right:-16px}
}
@media(max-width:600px){
 .home-page .hero-copy{padding:47px 0 0}
 .home-page .hero-copy h1{font-size:clamp(3rem,11vw,4rem);line-height:1.01;margin-bottom:16px}
 .home-page .hero-copy p{font-size:1rem;line-height:1.45;max-width:355px;margin:0}
 .home-page .hero-actions{width:min(100%,310px);flex-direction:column;gap:8px;margin-top:22px}
 .home-page .hero-copy .btn,.home-page .hero-secondary{width:100%;min-height:46px;margin:0}
 .studio-scene{height:407px;margin-top:30px}
 .studio-board{top:0;height:400px;display:block;border-radius:13px}
 .studio-sidebar{display:none}
 .studio-main{padding:17px 14px}
 .studio-toolbar{margin-bottom:18px}
 .studio-toolbar strong{font-size:1.7rem}
 .studio-create{padding:7px 8px;font-size:0}.studio-create b{font-size:1.1rem}
 .studio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 10px}
 .studio-preview{height:113px;padding:10px}
 .studio-preview small{font-size:.4rem}
 .studio-preview strong{margin-top:17px;font-size:1.28rem}
 .studio-project:nth-child(3),.studio-project:nth-child(6){display:none}
 .studio-project-meta{padding-top:7px}.studio-project-meta b{font-size:.64rem}.studio-project-meta span{font-size:.58rem}
 .studio-float{display:none}
}
@media(max-width:360px){
 .home-page .hero-copy h1{font-size:2.75rem}
 .studio-preview strong{font-size:1.12rem}
}
@media(prefers-reduced-motion:reduce){.studio-float{animation:none}}

/* Homepage hero: the workspace reads as a set of finished presentations. */
.home-page .hero{background:radial-gradient(ellipse 58% 25% at 50% 95%,#f3f1ea 0%,#fff 77%)}
.home-page .hero-copy{padding-top:57px}
.home-page .hero-copy h1{max-width:1040px;line-height:.96;letter-spacing:-.045em;margin-bottom:21px}
.home-page .hero-copy h1 em{font-weight:400;font-style:italic;color:#494cc4}
.home-page .hero-copy p{max-width:560px;color:#696e69}
.home-page .hero-actions{margin-top:27px}
.studio-scene{width:min(1120px,100%);height:646px;margin-top:29px}
.studio-board{width:min(980px,100%);border-radius:14px;box-shadow:0 30px 70px #29342b1b,0 3px 12px #29342b0c;animation:hero-board-enter .85s cubic-bezier(.2,.7,.2,1) both}
.studio-grid{gap:17px 13px}
.studio-preview{height:143px;border-radius:6px;transition:transform .35s ease,box-shadow .35s ease}
.studio-project:hover .studio-preview{transform:translateY(-4px);box-shadow:0 13px 25px #1725221d}
.studio-project-featured{grid-column:span 2}
.studio-project-featured .studio-preview,.studio-project-report .studio-preview{height:195px}
.studio-preview-one{background:linear-gradient(90deg,rgba(29,34,29,.77),rgba(35,35,31,.15) 82%),url('/assets/studio-launch.webp') center 52%/cover no-repeat;color:#fff}
.studio-preview-two{background:linear-gradient(180deg,rgba(18,25,31,.16),rgba(18,25,31,.76)),url('/assets/studio-results.webp') center/cover no-repeat;color:#fff}
.studio-preview-three{background:linear-gradient(180deg,rgba(25,35,30,.08),rgba(25,35,30,.65)),url('/assets/studio-brand.webp') center/cover no-repeat;color:#fff}
.studio-preview-one small,.studio-preview-one strong,.studio-preview-two small,.studio-preview-two strong,.studio-preview-three small,.studio-preview-three strong{display:block}
.studio-preview-one small,.studio-preview-two small,.studio-preview-three small{color:#fff;opacity:.82}
.studio-preview-one strong,.studio-preview-two strong,.studio-preview-three strong{position:absolute;left:17px;bottom:20px;margin:0;color:#fff;text-shadow:0 2px 14px #17211b55}
.studio-preview-one strong{left:25px;bottom:35px;font-size:2.55rem;line-height:.92}
.studio-preview-two strong{font-size:1.85rem}
.studio-preview-three strong{font-size:1.65rem}
.studio-cover-footer{position:absolute;left:25px;right:23px;bottom:13px;display:flex;justify-content:space-between;border-top:1px solid #ffffff77;padding-top:7px;color:#fff;font:600 .47rem 'IBM Plex Mono',monospace;letter-spacing:.11em}
.studio-cover-footer i{font-style:normal}
.studio-project-report .studio-cover-footer{left:17px;right:17px;bottom:11px}
.studio-preview-four{background:#e5e3f3}
.studio-preview-six{background:#e9efe6}
.studio-preview-four strong,.studio-preview-six strong{font-size:1.6rem;margin-top:26px}
.studio-preview-four:after{border-color:#8b87c8;opacity:.65}
.studio-preview-six:after{background:#a9c8a0;opacity:.8}
.studio-project-meta{padding-top:8px}
.studio-float{box-shadow:0 15px 35px #243d3118,0 2px 5px #243d310b}
@keyframes hero-board-enter{from{opacity:0;transform:translate(-50%,28px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:900px){
 .studio-board{height:520px}
 .studio-preview{height:120px}
 .studio-project-featured .studio-preview,.studio-project-report .studio-preview{height:163px}
 .studio-preview-one strong{font-size:2.1rem}
 .studio-preview-two strong{font-size:1.5rem}
 .studio-preview-three strong,.studio-preview-four strong,.studio-preview-six strong{font-size:1.3rem}
}
@media(max-width:600px){
 .home-page .hero-copy{padding-top:47px}
 .home-page .hero-copy h1{font-size:clamp(3.05rem,10.6vw,4rem);line-height:.96;margin-bottom:19px}
 .home-page .hero-copy p{max-width:345px}
 .studio-scene{height:433px;margin-top:29px}
 .studio-board{height:422px}
 .studio-grid{gap:13px 10px}
 .studio-project-featured{grid-column:span 2}
 .studio-project-featured .studio-preview{height:161px}
 .studio-project-report .studio-preview,.studio-project:nth-child(3) .studio-preview{height:105px}
 .studio-project:nth-child(3){display:block}
 .studio-project:nth-child(n+4){display:none}
 .studio-preview-one strong{left:16px;bottom:31px;font-size:1.95rem}
 .studio-preview-two strong,.studio-preview-three strong{left:10px;bottom:11px;font-size:1.3rem}
 .studio-preview-one small,.studio-preview-two small,.studio-preview-three small{font-size:.44rem}
 .studio-cover-footer{left:16px;right:16px;bottom:10px;font-size:.39rem}
 .studio-project-report .studio-cover-footer{display:none}
 .studio-project-meta{padding-top:5px}
}
@media(max-width:360px){.home-page .hero-copy h1{font-size:2.75rem}.studio-preview-one strong{font-size:1.65rem}}
@media(prefers-reduced-motion:reduce){.studio-board{animation:none}.studio-preview{transition:none}}

/* Calm, consistent covers for every core topic page. */
.site-page .page-hero{padding-bottom:72px}
.site-page .page-hero:before{display:none!important}
.site-page .page-hero .hero-grid{display:block!important}
.site-page .page-hero .hero-copy{display:flex!important;flex-direction:column;align-items:center;text-align:center}
.site-page .page-hero .hero-copy h1{width:100%;max-width:980px;margin:0 auto;font-size:clamp(3.8rem,5.2vw,5.65rem);line-height:.96}
.site-page .page-hero .hero-copy p,.site-page .sp-hero-create .hero-copy p,.site-page .sp-hero-company .hero-copy p,.site-page .sp-hero-charts .hero-copy p,.site-page .sp-hero-export .hero-copy p{max-width:650px;margin:22px auto 0;text-align:center}
.site-page .sp-hero-actions,.site-page .sp-hero-create .sp-hero-actions,.site-page .sp-hero-company .sp-hero-actions,.site-page .sp-hero-charts .sp-hero-actions,.site-page .sp-hero-export .sp-hero-actions{justify-content:center;margin:26px auto 0}
.site-page .page-hero .visual,.site-page .sp-hero-ai .visual,.site-page .sp-hero-create .visual,.site-page .sp-hero-structure .visual,.site-page .sp-hero-templates .visual,.site-page .sp-hero-design .visual,.site-page .sp-hero-charts .visual,.site-page .sp-hero-company .visual,.site-page .sp-hero-proposal .visual,.site-page .sp-hero-export .visual{width:min(1040px,100%);margin:46px auto 0}
.site-page .page-hero .sp-hero-scene{display:grid;place-items:center;min-height:440px;padding:34px;background:rgba(255,255,255,.42);border:1px solid rgba(71,75,70,.14);border-radius:18px;overflow:hidden;box-shadow:0 24px 58px #2a322d14}
.site-page .sp-hero-ai .sp-ai-scene{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:18px;align-items:center;min-height:370px;padding:25px}
.site-page .sp-hero-ai .sp-ai-prompt,.site-page .sp-hero-ai .sp-ai-outline{width:100%;margin:0;transform:none;border-radius:8px;animation:calm-hero-enter .7s both}
.site-page .sp-hero-ai .sp-ai-outline{animation-delay:.12s}
.site-page .sp-hero-create .sp-create-scene,.site-page .sp-hero-charts .sp-data-scene,.site-page .sp-hero-proposal .proposal-demo,.site-page .sp-hero-export .export-demo,.site-page .sp-hero-design .design-demo{width:100%;max-width:900px;height:auto;min-height:370px;margin:auto;transform:none;border-radius:10px;box-shadow:0 16px 35px #20272d18;animation:calm-hero-enter .75s both}
.site-page .sp-hero-structure .sp-structure-scene,.site-page .sp-hero-templates .sp-template-scene{width:100%;height:auto;min-height:370px;padding:25px}
.site-page .sp-hero-structure .sp-structure-grid{grid-template-columns:repeat(4,1fr)}
.site-page .sp-hero-templates .sp-template-stack{width:min(820px,100%);height:310px;margin:15px auto 0}.site-page .sp-hero-templates .sp-template-stack>div{height:230px}
.site-page .sp-hero-company .company-demo{width:100%;max-width:900px;min-height:420px;margin:auto;border-radius:12px;box-shadow:0 16px 35px #20272d18}
@keyframes calm-hero-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:600px){
 .site-page .page-hero{padding-bottom:42px}
 .site-page .page-hero .hero-copy h1{font-size:clamp(2.65rem,10.8vw,3.2rem);line-height:.98}
 .site-page .page-hero .visual,.site-page .sp-hero-ai .visual,.site-page .sp-hero-create .visual,.site-page .sp-hero-structure .visual,.site-page .sp-hero-templates .visual,.site-page .sp-hero-design .visual,.site-page .sp-hero-charts .visual,.site-page .sp-hero-company .visual,.site-page .sp-hero-proposal .visual,.site-page .sp-hero-export .visual{margin-top:34px}
 .site-page .page-hero .sp-hero-scene{min-height:300px;padding:12px;border-radius:12px}
 .site-page .sp-hero-ai .sp-ai-scene{display:block;min-height:355px;padding:12px}.site-page .sp-hero-ai .sp-ai-prompt{margin-bottom:10px}
 .site-page .sp-hero-create .sp-create-scene,.site-page .sp-hero-charts .sp-data-scene,.site-page .sp-hero-proposal .proposal-demo,.site-page .sp-hero-export .export-demo,.site-page .sp-hero-design .design-demo{min-height:290px}
 .site-page .sp-hero-structure .sp-structure-grid{grid-template-columns:repeat(2,1fr)}
 .site-page .sp-hero-templates .sp-template-stack{height:275px}.site-page .sp-hero-templates .sp-template-stack>div{height:195px}
 .site-page .sp-hero-company .company-demo{min-height:320px}
}

/* Restrained reading scale below the hero. */
.site-page #page-content .section h2,.site-page #page-content .sp-section h2{font-size:clamp(2rem,2.7vw,3rem);line-height:1.08;max-width:760px}
.site-page #page-content .section-head{max-width:780px}
.site-page .related{padding:60px 0}
.site-page .related .section-head h2{max-width:640px;font-size:clamp(2rem,2.5vw,2.8rem);line-height:1.08}
.site-page .related-grid a{gap:22px;padding:15px 0;font-size:clamp(1.05rem,1.25vw,1.25rem);letter-spacing:-.02em}
.site-page .faq{padding:62px 0}
.site-page .faq-grid>div:first-child h2{max-width:620px;font-size:clamp(2rem,2.5vw,2.8rem);line-height:1.08}
.site-page .faq-q{padding:19px 0;font-size:1rem}
.site-page .final-cta{padding:58px 0}
.site-page .final-cta h2{max-width:760px;font-size:clamp(2.2rem,2.8vw,3.2rem);line-height:1.08}
@media(max-width:600px){
 .site-page #page-content .section h2,.site-page #page-content .sp-section h2,.site-page .related .section-head h2,.site-page .faq-grid>div:first-child h2{font-size:clamp(1.85rem,7.3vw,2.25rem)}
 .site-page .related,.site-page .faq{padding:48px 0}.site-page .related-grid a{font-size:1rem;padding:13px 0}
 .site-page .final-cta h2{font-size:clamp(2rem,7.8vw,2.45rem)}
}

/* One predictable heading scale across the home and all core pages. */
.home-page main h2,.home-page>section h2,.site-page main h2,.site-page>section h2{font-size:clamp(2rem,2.7vw,3rem)!important;line-height:1.08!important;letter-spacing:-.035em}
.home-page main h3,.home-page>section h3,.site-page main h3,.site-page>section h3{font-size:1.25rem!important;line-height:1.25!important;letter-spacing:-.025em}
.home-page main h4,.home-page>section h4,.site-page main h4,.site-page>section h4{font-size:1.1rem!important;line-height:1.3!important;letter-spacing:-.02em}
@media(max-width:600px){
 .home-page main h2,.home-page>section h2,.site-page main h2,.site-page>section h2{font-size:clamp(1.85rem,7.3vw,2.25rem)!important}
 .home-page main h3,.home-page>section h3,.site-page main h3,.site-page>section h3{font-size:1.125rem!important}
 .home-page main h4,.home-page>section h4,.site-page main h4,.site-page>section h4{font-size:1rem!important}
}

/* Interactive project views inside the home hero workspace. */
.studio-toolbar{margin-bottom:12px}
.studio-view-switch{display:flex;width:max-content;max-width:100%;gap:3px;margin:0 0 14px;padding:3px;background:#f1f2ef;border:1px solid #e6e8e4;border-radius:9px}
.studio-view-switch button{display:flex;align-items:center;gap:7px;min-height:29px;padding:5px 10px;background:transparent;border:0;border-radius:6px;color:#7b817c;font:600 .65rem/1 Onest,sans-serif;cursor:pointer;transition:background .24s,color .24s,box-shadow .24s,transform .24s}
.studio-view-switch button:hover{color:#2d332f}
.studio-view-switch button:focus-visible{outline:2px solid #5558e8;outline-offset:2px}
.studio-view-switch button[aria-selected="true"]{background:#292d2a;color:#fff;box-shadow:0 4px 10px #252b2722}
.studio-view-switch button[aria-selected="true"]:active{transform:scale(.97)}
.studio-view-switch i{display:grid;place-items:center;min-width:16px;height:16px;padding:0 4px;background:#ffffffb8;border-radius:100px;color:#59605b;font-size:.54rem;font-style:normal}
.studio-view-switch button[aria-selected="true"] i{background:#d9ff77;color:#242a25}
.studio-project{position:relative;transition:opacity .32s ease,filter .32s ease,transform .32s ease}
.studio-project.is-dimmed{opacity:.2;filter:grayscale(.55);transform:scale(.975)}
.studio-project.is-match .studio-preview{transform:translateY(-4px);box-shadow:0 14px 28px #252c2724,inset 0 0 0 2px #5558e8}
.studio-project.is-match:after{content:'✓';position:absolute;z-index:4;right:8px;top:8px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#d9ff77;color:#293128;font:800 .7rem Onest,sans-serif;box-shadow:0 4px 12px #1d241f2b;animation:studio-check-in .28s both}
@keyframes studio-check-in{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}
@media(max-width:900px) and (min-width:601px){.studio-scene{height:590px}.studio-board{height:550px}}
@media(max-width:600px){
 .studio-scene{height:478px}
 .studio-board{height:468px}
 .studio-view-switch{width:100%;margin-bottom:12px}
 .studio-view-switch button{flex:1;justify-content:center;padding:5px 6px;font-size:.58rem}
 .studio-view-switch i{min-width:14px;height:14px;font-size:.48rem}
 .studio-grid[data-studio-grid="work"] .studio-project:not([data-studio-state="work"]),.studio-grid[data-studio-grid="ready"] .studio-project:not([data-studio-state="ready"]){display:none}
 .studio-grid[data-studio-grid="work"] .studio-project[data-studio-state="work"],.studio-grid[data-studio-grid="ready"] .studio-project[data-studio-state="ready"]{display:block;opacity:1;filter:none}
 .studio-grid[data-studio-grid="ready"] .studio-project{grid-column:span 1}.studio-grid[data-studio-grid="ready"] .studio-preview{height:285px}
}
@media(prefers-reduced-motion:reduce){.studio-project,.studio-view-switch button{transition:none}.studio-project.is-match:after{animation:none}}

/* Indexable editorial image embedded in each internal hero. */
.site-page .sp-hero-scene,.footer-page .fp-hero .visual{position:relative}
.site-page .sp-hero-scene>.seo-context-image,.footer-page .fp-hero .visual>.seo-context-image{position:absolute;z-index:8;right:-18px;bottom:-22px;width:154px;height:103px;object-fit:cover;border:8px solid #fff;box-shadow:0 16px 34px #20231f24;transform:rotate(3deg);border-radius:2px}
.site-page .sp-hero-scene>.seo-context-image{right:-22px;bottom:-28px;transform:rotate(4deg)}
@media(max-width:900px){.site-page .sp-hero-scene>.seo-context-image,.footer-page .fp-hero .visual>.seo-context-image{right:8px;bottom:-14px;width:132px;height:88px;border-width:6px}}
@media(max-width:600px){.site-page .sp-hero-scene>.seo-context-image,.footer-page .fp-hero .visual>.seo-context-image{right:10px;bottom:-10px;width:104px;height:69px;border-width:5px}}
