:root{--cream:#faf7f1;--ink:#263c40;--sage:#707966;--slate:#72878e;--mauve:#9e7684;--peach:#c68d75;--line:#dcdcd1;--body:#52605d;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.7}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}p{margin:0 0 20px}img{display:block;max-width:100%;height:auto}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;margin:0;letter-spacing:-.035em}h1{font-size:clamp(44px,4.6vw,72px)}h2{font-size:clamp(36px,3.4vw,52px)}h3{font-size:31px}em{font-weight:400;color:var(--sage)}.wrap{width:min(1260px,calc(100% - 112px));margin:auto}.section{padding:110px 0}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.2em;font-weight:600;line-height:1.7;margin-bottom:25px}.button{background:var(--ink);border:1px solid var(--ink);color:var(--cream);display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:16px 23px;font-size:13px;line-height:1.4;border-radius:2px;transition:background .2s,transform .2s}.button:hover{background:#45605a;transform:translateY(-2px)}.button span{font-size:21px;line-height:1}.button.small{padding:12px 18px}.text-link{background:transparent;border:0;border-bottom:1px solid #b8bdb1;padding:8px 0;color:var(--ink);font-size:13px;display:inline-flex;align-items:center;gap:15px;line-height:1.6}.text-link:hover{color:var(--sage);border-color:var(--sage)}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.site-header{border-bottom:1px solid var(--line);background:var(--cream)}.header-inner{max-width:1440px;padding:24px 56px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{width:76px;flex-shrink:0}.site-header nav{display:flex;align-items:center;gap:34px;font-size:12px}.site-header nav>a:hover{color:var(--sage)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:20px;padding-top:88px;padding-bottom:74px}.hero .eyebrow{font-size:10px;letter-spacing:.16em}.hero .intro{font-size:19px;line-height:1.65;margin:27px 0 14px;max-width:510px}.hero-detail{font-size:14px;color:var(--body);max-width:490px;margin-bottom:30px}.hero-note{font-size:10px;letter-spacing:.08em;color:var(--body);margin-top:24px;margin-bottom:0}.hero-art{aspect-ratio:1/1.2;position:relative;display:grid;place-items:center;isolation:isolate}.hero-art:before{content:'';position:absolute;width:85%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ebece1 0%,#f1eee4 43%,transparent 70%);z-index:-1}.orbit{position:absolute;border:1px solid #c7c9bc;border-radius:50%;width:92%;aspect-ratio:1;transform:rotate(-18deg)}.orbit-two{width:74%;border-color:#dddacf}.art-center{width:58%;text-align:center}.art-center img{width:100%;margin:auto}.art-center span{display:block;font-family:var(--serif);font-size:26px;line-height:1.25;margin-top:22px}.orbit-label{position:absolute;z-index:1;background:var(--cream);padding:5px 11px;text-transform:uppercase;font-size:9px;letter-spacing:.18em;display:flex;align-items:center;gap:8px}.orbit-label i{height:6px;width:6px;border-radius:50%;background:var(--sage)}.strategy{top:10%;left:18%}.systems{right:-1%;top:42%}.systems i{background:var(--slate)}.people{bottom:15%;right:10%}.people i{background:var(--mauve)}.action{left:-2%;top:62%}.action i{background:var(--peach)}.art-caption{position:absolute;bottom:0;font-size:10px;color:var(--body);letter-spacing:.05em}.tagline-band{background:#eceee5;border-top:1px solid #dce1d3;border-bottom:1px solid #dce1d3;padding:27px 20px;text-align:center}.tagline-band p{font-family:var(--serif);font-size:22px;line-height:1.5;margin:0}.tagline-band em{color:var(--ink)}.problem{display:grid;grid-template-columns:1fr 1fr;gap:100px}.problem h2{max-width:460px}.problem-copy{padding-top:38px;font-size:15px;color:var(--body)}.callout{display:flex;align-items:flex-start;gap:20px;border-top:1px solid var(--line);padding-top:23px;margin-top:29px}.callout p{font-size:14px;margin:0}.callout strong{color:var(--ink);font-weight:500}.mini-mark{color:var(--sage);font-family:var(--serif);font-size:36px;line-height:1}.services{background:#f1eee6}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:48px}.section-heading>p{max-width:310px;font-size:14px;color:var(--body);margin-bottom:3px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service{padding:29px 24px 30px;min-width:0;border-top:3px solid var(--sage);background:#e4e8dd}.service.blue{border-color:var(--slate);background:#e0e7e7}.service.mauve{border-color:var(--mauve);background:#eae1e2}.service.peach{border-color:var(--peach);background:#efe0d5}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px}.number{font-size:11px;color:var(--body)}svg{width:36px;height:36px;stroke:var(--ink);fill:none;stroke-width:1.15}.service h3{font-size:25px;line-height:1.2;margin-bottom:20px;letter-spacing:-.03em}.service p{font-size:13px;line-height:1.7}.service ul{list-style:none;margin:27px 0 0;padding:20px 0 0;border-top:1px solid #c7ccc1;font-size:11px;line-height:1.7;color:#46534f}.service li+li{margin-top:9px}.approach-intro{text-align:center;max-width:830px;margin:auto}.approach-intro .intro{font-family:var(--serif);font-size:23px;margin:24px 0 12px}.approach-intro>p:last-child{font-size:14px;max-width:610px;margin:0 auto;color:var(--body)}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:38px;margin:58px 0 0;padding:0;list-style:none}.process li{position:relative}.process li:before{content:'';position:absolute;left:42px;right:-38px;top:20px;height:1px;background:#cbd0c0}.process li:last-child:before{display:none}.step{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid #aeb8a3;background:var(--cream);font-size:11px;margin-bottom:23px}.process h3{font-size:30px;margin-bottom:14px}.process p{font-size:13px;line-height:1.7;max-width:230px;color:var(--body);margin:0}.engagement{background:#eeeee6;border-top:1px solid #dcded2}.engagement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.engagement-grid article{border-top:1px solid #aeb7a3;padding:31px 0 0}.engagement-grid .eyebrow{color:#69755f;margin-bottom:20px}.engagement-grid h3{font-size:36px;margin-bottom:23px}.engagement-grid p{font-size:14px;color:var(--body)}.engagement-grid .fit{border-top:1px solid #d1d6c7;padding-top:21px;font-size:12px;min-height:70px;margin-top:25px}.collective{background:var(--ink);color:var(--cream)}.collective-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:130px;align-items:center}.collective .eyebrow{color:#c8cdb9}.collective h2{font-size:clamp(42px,4.3vw,66px);margin-bottom:32px}.collective em{color:#c7cdb6}.collective p:not(.eyebrow){font-size:14px;color:#d7dfd9;max-width:490px}.collective-art{text-align:center;padding:30px;position:relative}.collective-art:before{content:'';position:absolute;inset:0;border:1px solid #546766;border-radius:50%}.collective-art img{width:210px;margin:0 auto 28px}.collective-art p{font-family:var(--serif);font-size:28px!important;line-height:1.3;margin:0}.expertise{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 0;padding:0}.expertise li{border:1px solid #5c706e;padding:6px 13px;font-size:11px;border-radius:30px;color:#e0e4d7}.final-cta{text-align:center;padding:110px 0 105px}.final-cta h2{font-size:clamp(38px,4.4vw,66px)}.final-cta>p:not(.eyebrow){max-width:570px;margin:28px auto;font-size:15px;color:var(--body)}.cta-note{display:block;margin-top:23px;font-size:11px;color:var(--body)}footer{border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:38px;padding-bottom:38px}.footer-brand{display:flex;gap:15px;align-items:center}.footer-brand img{width:64px}.footer-brand span{font-family:var(--serif);font-size:20px;line-height:1.2}.footer-brand small{font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.25em;font-size:9px}.footer-top>p{font-family:var(--serif);font-size:15px;margin:0;color:var(--body)}.footer-bottom{padding:18px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--body)}dialog{border:1px solid var(--line);background:var(--cream);color:var(--ink);width:min(600px,calc(100% - 28px));max-height:90dvh;padding:0;border-radius:5px}dialog::backdrop{background:#17282b99;backdrop-filter:blur(4px)}.dialog-content{padding:40px;position:relative}.close-dialog{position:absolute;top:12px;right:18px;font-size:30px;background:transparent;border:0;color:var(--ink);line-height:1;padding:8px}.dialog-content h2{font-size:38px;margin-bottom:22px}.dialog-content>p:not(.eyebrow){font-size:13px;color:var(--body)}label{display:block;font-size:12px;margin:16px 0 6px}input,textarea,select{width:100%;background:#fffdf8;border:1px solid #b9c2b1;border-radius:2px;color:var(--ink);padding:10px 12px;font-size:13px}textarea{resize:vertical}.dialog-content .actions{margin-top:23px;gap:20px}.privacy-note{font-size:10px;color:var(--body);margin:16px 0 0}.form-status{font-size:12px;color:#466348;margin:13px 0 0}.skip-link{position:fixed;top:-80px;left:15px;background:var(--ink);color:white;padding:12px;z-index:100}.skip-link:focus{top:10px}:focus-visible{outline:3px solid var(--mauve);outline-offset:5px}[id]{scroll-margin-top:20px}
@media(min-width:1500px){.hero{gap:65px}.hero-art{max-width:500px}}
@media(max-width:1150px){.wrap{width:calc(100% - 70px)}.header-inner{padding:22px 35px}.brand{width:70px}.site-header nav{gap:23px}.hero{gap:20px}.hero h1{font-size:54px}.hero .actions{gap:15px}.hero .button{padding:15px;font-size:12px}.hero-art{font-size:smaller}.service-grid{grid-template-columns:repeat(2,1fr);gap:22px}.service{padding:30px}.service-top{margin-bottom:25px}.service h3{font-size:29px}.service h3 br{display:none}.service ul{font-size:12px}.problem{gap:60px}.collective-layout{gap:65px}.engagement-grid{gap:28px}.engagement-grid h3{font-size:30px}}
@media(max-width:800px){.header-inner{padding:18px 25px;position:relative}.brand{width:64px}.menu-toggle{display:flex;align-items:center;gap:12px;background:transparent;border:1px solid var(--line);padding:9px 12px;font-size:12px;color:var(--ink)}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);padding:24px;z-index:10;align-items:stretch;gap:20px}.site-header nav.is-open{display:flex;flex-direction:column}.wrap{width:calc(100% - 50px)}.section{padding:75px 0}.hero{padding-top:60px;padding-bottom:50px;grid-template-columns:1fr}.hero h1{font-size:clamp(42px,7vw,62px)}.hero h1 br:nth-child(3){display:none}.hero .intro{font-size:18px;max-width:570px}.hero-detail{max-width:560px}.hero-art{width:min(430px,100%);margin:25px auto 0;aspect-ratio:1/1.1}.art-caption{bottom:-5px}.art-center{width:52%}.tagline-band p{font-size:19px;max-width:600px;margin:auto}.problem{grid-template-columns:1fr;gap:28px}.problem h2{max-width:650px}.problem-copy{padding-top:0}.section-heading{display:block}.section-heading>p{max-width:540px;margin-top:24px}.section-heading h2 br{display:none}.process{gap:25px;grid-template-columns:repeat(2,1fr)}.process li:before{right:-25px}.process li:nth-child(2):before{display:none}.process p{max-width:none}.engagement-grid{grid-template-columns:1fr;gap:35px}.engagement-grid article{padding-top:24px}.engagement-grid h3{font-size:35px}.engagement-grid .fit{min-height:0}.engagement-grid .fit br{display:none}.collective-layout{grid-template-columns:1fr;gap:45px}.collective-art{width:290px;margin:auto;padding:35px}.collective-art img{width:150px}.collective-art p{font-size:24px!important}.collective h2{font-size:48px}.collective h2 br:nth-child(2){display:none}.collective p:not(.eyebrow){max-width:650px}.footer-top{flex-wrap:wrap}.footer-top>p{width:100%;order:3}.footer-bottom{flex-direction:column;gap:5px}.dialog-content{padding:32px 24px}.actions{gap:17px}}
@media(max-width:480px){.wrap{width:calc(100% - 40px)}.header-inner{padding:18px 20px}.brand{width:60px}.hero{padding-top:45px}.hero .eyebrow{font-size:8px;letter-spacing:.13em}.hero h1{font-size:42px;line-height:1.13}.hero h1 br{display:none}.hero h1 em{display:block}.hero .actions{align-items:flex-start;flex-direction:column}.hero .intro{font-size:17px}.hero-note{font-size:9px}.hero-art{width:290px;max-width:100%}.art-center span{font-size:23px}.orbit-label{font-size:8px;padding:4px 6px;letter-spacing:.1em}.section{padding:60px 0}h2{font-size:36px}.service-grid{grid-template-columns:1fr;gap:16px}.service{padding:27px}.service-top{margin-bottom:20px}.service h3{font-size:29px}.service ul{margin-top:20px}.service p{font-size:14px}.process{gap:32px 22px}.process h3{font-size:27px}.process p{font-size:12px}.collective h2{font-size:43px}.final-cta h2{font-size:38px}.tagline-band{padding:23px}.tagline-band p{font-size:18px}.tagline-band em{display:block}.footer-top{gap:24px}.footer-top .text-link{font-size:11px}.dialog-content h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Keep ordinary body copy readable across all viewport sizes. */
.hero-detail,.problem-copy,.callout p,.section-heading>p,.service p,.service ul,.approach-intro>p:last-child,.process p,.engagement-grid p,.engagement-grid .fit,.collective p:not(.eyebrow),.final-cta>p:not(.eyebrow),.dialog-content>p:not(.eyebrow){font-size:18px}
@media(max-width:480px){.hero .intro{font-size:18px}}

/* Match header navigation and controls to the body text size. */
.site-header nav,.site-header nav .button,.site-header .menu-toggle{font-size:18px}

/* Readable labels in the connected-business hero graphic. */
.hero-art .orbit-label{font-size:18px;letter-spacing:.08em;line-height:1.4;padding:6px 10px}
.hero-art .orbit-label i{width:8px;height:8px;flex-shrink:0}
.hero-art .art-caption{font-size:18px;letter-spacing:0;line-height:1.4;text-align:center;max-width:100%}
.hero-art .art-center span{font-size:32px}
@media(max-width:800px){.hero-art{aspect-ratio:1/1.3}.hero-art .strategy{top:12%;left:12%}.hero-art .people{bottom:19%}.hero-art .art-center span{font-size:28px}.hero-art .orbit-label{padding:5px 6px;letter-spacing:.03em}.hero-art .art-caption{bottom:0}}

/* Uploaded complete vision graphic replaces the orbit illustration. */
.hero-art.hero-vision{aspect-ratio:auto;display:block;margin:0 auto;width:100%;max-width:540px}
.hero-art.hero-vision:before{display:none}
.hero-vision>img{width:100%;height:auto}
@media(max-width:800px){.hero-art.hero-vision{margin-top:30px;max-width:500px}}

/* Blend the vision illustration into the page cream and soften its outer background. */
.hero-art.hero-vision{isolation:auto}
.hero-vision>img{mix-blend-mode:multiply;-webkit-mask-image:radial-gradient(ellipse closest-side at center,#000 90%,transparent 100%);mask-image:radial-gradient(ellipse closest-side at center,#000 90%,transparent 100%)}

/* Readable hero call-to-action text on desktop and mobile. */
.hero .actions .button,.hero .actions .text-link{font-size:18px;line-height:1.5}
.hero .actions .button{padding:16px 23px;max-width:100%}
.hero .actions .button span{flex-shrink:0}

/* Bring the What We Do introduction columns closer together. */
.services .section-heading{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px;align-items:end}
.services .section-heading>p{max-width:none}
@media(max-width:800px){.services .section-heading{display:block}.services .section-heading>p{margin-top:18px}}

/* Tighten the Ways to Work Together introduction. */
.engagement .section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:end}
.engagement .section-heading>p{max-width:none}
@media(max-width:800px){.engagement .section-heading{display:block}.engagement .section-heading>p{margin-top:18px}}

/* Display the complete Scaling Dream Team illustration at a readable size. */
.collective-layout{gap:60px;grid-template-columns:minmax(0,1.1fr) minmax(0,1.2fr)}
.collective-art.collective-vision{padding:0;width:100%;max-width:600px;margin:auto}
.collective-art.collective-vision:before{display:none}
.collective-art.collective-vision img{width:100%;height:auto;margin:0}
@media(max-width:800px){.collective-layout{grid-template-columns:1fr;gap:45px}.collective-art.collective-vision{max-width:500px}}
