/* N31: editorial layout, sculptural artwork, quiet technical precision. */
:root{--paper:#f8f9f6;--ink:#172e2b;--ink-2:#203e38;--muted:#62706a;--line:#dce2db;--teal:#267664;--teal-bright:#b9e8cf;--teal-pale:#e8eee5;--max:1320px;--pad:clamp(1.25rem,4.5vw,5rem)}
body{background:var(--paper)}
h1,h2,h3{letter-spacing:-.055em}
h2{font-size:clamp(2.25rem,4.1vw,3.7rem);max-width:19ch;line-height:1.13}
.eyebrow{font-size:.66rem;letter-spacing:.12em;line-height:1.5;color:var(--teal)}
.site-header{height:92px;background:rgba(248,249,246,.96);color:var(--ink);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.site-header.scrolled{background:rgba(248,249,246,.96);border-color:var(--line);box-shadow:0 4px 30px #172e2b05}
.brand{grid-template-columns:auto auto;align-items:center;gap:10px}
.brand span{font-size:2rem;letter-spacing:-.08em}
.brand small{font-size:.65rem;text-transform:none;letter-spacing:-.01em;margin:0;padding-left:10px;border-left:1px solid #a9b8ae;line-height:1.9}
.site-nav{gap:clamp(1rem,1.8vw,1.8rem)}
.site-nav>a:not(.button){font-size:.76rem}
.site-nav>a[aria-current=page]:not(.button)::after{background:var(--teal);height:2px;top:1.3rem}
.language{padding:8px 10px;border:1px solid var(--line);border-radius:25px}
.language a{color:#717d77}.language a[aria-current=true]{color:var(--ink)}.language i{background:var(--line)}
.button{background:var(--ink);color:white;border-radius:100px;padding:1.08rem 1.5rem;min-height:54px;box-shadow:0 4px 12px #132e2b08;font-size:.82rem}
.button span{color:inherit;font-size:1.15rem}.button:hover{background:var(--teal);color:white;transform:translateY(-2px)}
.button--small{min-height:42px;padding:.8rem 1.15rem;font-size:.73rem}
.text-link{border-bottom:0;font-size:.8rem;padding:.6rem 0;gap:.9rem}.text-link span{font-size:1.2rem}
.hero{background:var(--paper);color:var(--ink);min-height:0;padding:151px 0 58px}
.hero-grid{grid-template-columns:1.04fr 1fr;gap:clamp(2rem,4.5vw,5rem);align-items:center}
.hero .eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:1.6rem}
.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#398971;flex-shrink:0;box-shadow:0 0 0 4px #39897112}
.hero h1{font-size:clamp(3rem,4.65vw,4.8rem);max-width:none;line-height:1.08;letter-spacing:-.067em;margin-bottom:1.65rem}
.hero h1 em{font-style:normal;color:var(--teal)}
.hero .lead{font-size:1.02rem;line-height:1.8;color:var(--muted);max-width:420px;margin:0}
.actions{gap:1.8rem;margin-top:1.85rem}
.hero-note{display:flex;align-items:center;gap:10px;color:#707c73;font-size:.69rem;margin-top:2.4rem}
.note-line{width:24px;height:1px;background:#859d8d}
.hero-art{margin:0;position:relative;border-radius:18px;overflow:hidden;aspect-ratio:1/1.04;background:#eae7df;box-shadow:0 10px 38px #263e2710}
.hero-art img{width:100%;height:100%;object-fit:cover;display:block}
.art-label{position:absolute;left:22px;top:22px;background:#ffffffd9;backdrop-filter:blur(12px);padding:9px 13px;border-radius:30px;display:flex;gap:9px;align-items:center;font-size:.64rem;color:#315346;border:1px solid #ffffff77}
.hero-art figcaption{position:absolute;bottom:0;left:0;right:0;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;font-size:.67rem;letter-spacing:.03em;color:#233e33;background:linear-gradient(transparent,#efeadfd9)}
.hero-art figcaption>span:last-child{font-size:1.4rem}
.capability-strip{border-block:1px solid var(--line);padding:23px 0;background:#eff2eb}
.capability-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}
.capability-strip span{font-size:.69rem;color:var(--muted)}.capability-strip p{font:500 .88rem/1.4 var(--display);margin:0}.capability-strip i{font-style:normal;color:#859d8d;margin-inline:20px}
.section{padding:95px 0}.section-heading{margin-bottom:2.8rem}.section-heading.split,.split{gap:4rem}.section-heading.split>p{font-size:.97rem}
.paths{background:var(--paper)}
.path-grid{border:0;gap:22px}
.path-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:34px;min-height:355px;overflow:hidden}
.path-card+article{border:1px solid var(--line);background:#eaf0e7}
.path-card::before{display:none}.path-card:hover{color:var(--ink);border-color:#9fb7a5;box-shadow:0 12px 32px #1b34290b}
.path-card:after{content:"";position:absolute;right:30px;top:30px;width:46px;height:46px;border:9px solid #b9d2c4;border-radius:13px;transform:rotate(-12deg)}
.path-card:nth-child(2):after{border-radius:50%;border-color:#95b9aa;box-shadow:-16px 12px 0 -5px #dae6d8}
.path-num{color:var(--teal);margin-bottom:42px}
.path-card h3{font-size:2.05rem;margin-bottom:14px}
.path-lead{font-size:1.02rem;max-width:460px;margin-bottom:10px}
.path-card>p:not(.path-lead){font-size:.88rem;max-width:470px;line-height:1.8}
.path-card:hover>p{color:var(--muted)}.path-card a{font-size:.8rem;margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;align-items:center}.path-card a span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff}
.philosophy{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.philosophy:before{content:"+";position:absolute;left:33%;bottom:-120px;font-size:420px;line-height:1;color:#ffffff04}
.philosophy .eyebrow{color:#a9d8bb}.philosophy .lead-small{font-size:1.02rem;color:#c5d4cb}.flow{border-color:#536b5c}.flow li{color:#d3e3d7}.flow li::before{background:#b1d9bd}.flow span{color:#a9d8bb}
.services{background:#f2f5ef}.service-grid{border:0;gap:18px}.service-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;min-height:305px;overflow:hidden}
.service-card:hover{border-color:#91aa98;transform:translateY(-3px)}
.service-mark{margin-bottom:55px;border:0;padding:0;color:var(--teal);font-size:.64rem;position:relative;display:flex;align-items:center;gap:13px}
.service-mark:before{content:"";width:30px;height:30px;border:2px solid #5d9986;border-radius:6px;box-shadow:6px -6px 0 -2px #e4eee6}
.service-card:nth-child(2) .service-mark:before{border-radius:50%}
.service-card:nth-child(3) .service-mark:before{transform:rotate(45deg);border-radius:3px}
.service-card:nth-child(4) .service-mark:before{border-radius:50% 50% 4px 4px}
.service-card:nth-child(5) .service-mark:before{border-style:dashed;border-radius:50%}
.service-card h3{font-size:1.4rem;max-width:20ch}.service-card p{font-size:.92rem;line-height:1.75}
.service-grid--expanded .service-card{min-height:440px}.service-detail p strong{font-weight:500}.service-detail ul{font-size:.9rem}
.problems{background:#e5ecdf;color:var(--ink)}.problem-list{display:grid;gap:10px}.problem-list li{border:0;background:#f7faf3;padding:20px;border-radius:10px;font-size:1rem;grid-template-columns:25px 1fr}.problem-close{color:#526553;font-size:1.02rem}
.process{background:var(--paper)}.process-list{display:grid;grid-template-columns:repeat(5,1fr);border:0;gap:23px}
.process-list li{display:flex;flex-direction:column;border:0;border-top:1px solid #b5c7b5;padding:24px 0;gap:30px;position:relative}
.process-list li:before{content:"";width:7px;height:7px;background:#51856e;border-radius:50%;position:absolute;left:0;top:-4px}
.process-list>li>span{color:var(--teal);font-size:.7rem}.process-list li div{display:block}.process-list h3{font-size:1.18rem;margin-bottom:13px}.process-list p{font-size:.87rem;line-height:1.8}
.process-page .process-list{grid-template-columns:1fr}.process-page .process-list li{display:grid;grid-template-columns:100px 1fr}.process-page .process-list li div{display:grid;grid-template-columns:1fr 2fr}
.founder{background:#eff2ea}.founder-grid{grid-template-columns:.8fr 1.2fr;gap:6rem}
.founder-monogram{border-radius:15px;position:relative;overflow:hidden;background:linear-gradient(145deg,#214d42,#112c26);min-height:320px}
.founder-monogram:after{content:"";width:70%;height:80%;border:1px solid #8dc1a455;position:absolute;right:-25%;top:30%;border-radius:80px;transform:rotate(-35deg);box-shadow:0 0 0 30px #8dc1a40a,0 0 0 60px #8dc1a40a}
.founder-monogram span{font-size:6rem;color:#d5e8d6}.founder-monogram small{color:#adceb7;z-index:1}.founder .lead-small{font-size:1.02rem;color:var(--muted);margin-top:1.5rem}
.final-cta{background:#d7e8cd;padding:85px 0;position:relative;overflow:hidden}.final-cta:after{content:"↗";font:400 360px/1 var(--display);position:absolute;right:-20px;top:-35px;color:#4163480a;pointer-events:none}
.final-cta__inner{position:relative;z-index:1}.final-cta h2{max-width:21ch}.final-cta .eyebrow{color:#496f51}.final-cta p:not(.eyebrow){font-size:1rem;color:#526850;max-width:570px}.button--light{background:var(--ink);color:white}.button--light:hover{background:var(--teal)}
.site-footer{background:#142c25;padding:60px 0 24px}.footer-top p{font-size:.78rem;color:#a8bbaa}.footer-grid a{font-size:.9rem}.footer-grid small,.footer-bottom{color:#adbcaf}.footer-grid span{font-size:.84rem;color:#a8bbaa}.footer-grid nav a:hover{color:#c8e2c1}
.page-hero{background:#eaf0e5;color:var(--ink);padding:163px 0 76px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:330px;height:410px;border:60px solid #335d4310;border-radius:160px;right:-100px;top:110px;transform:rotate(32deg);pointer-events:none}
.page-hero h1{font-size:clamp(2.7rem,5.1vw,4.7rem);max-width:19ch;position:relative;z-index:1}.page-hero .lead{font-size:1.18rem;color:#526553;max-width:780px}.engagement,.principles,.local{background:#eaf0e5}.three-grid h3{font-size:1.4rem}
.contact-layout{background:var(--paper);color:var(--ink);padding-top:155px}.contact-copy h1{font-size:clamp(2.75rem,4.6vw,4.3rem)}.contact-copy>.lead-small{font-size:1.08rem;color:var(--muted)}.contact-meta{border-color:var(--line)}.contact-meta small{color:#647a69}.contact-meta a{font-size:1rem}.form-panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 15px 45px #19322706}.field-row label,form>label{font-size:.76rem}
input,select,textarea{border-radius:7px;border-color:#cdd7cc;background:#fafbf8;min-width:0}input:hover,select:hover,textarea:hover{border-color:#8caa94}input:focus,textarea:focus,select:focus{background:#fff}
.file-field{padding:22px;border:1px dashed #a3bda9;border-radius:10px;background:#f6f9f2}.file-button{border-radius:30px;font-size:.75rem;padding:.65rem 1rem}.file-field:focus-within{outline:3px solid var(--teal);outline-offset:3px}.form-footer{flex-direction:column;align-items:stretch;gap:20px}.form-footer p{max-width:none}.form-footer button{width:100%}
.not-found{background:#eaf0e5;color:var(--ink)}.not-found>div>p:not(.error-code){color:var(--muted)}
.reveal{opacity:1;transform:none}
@media(min-width:1500px){.hero{padding-top:165px;padding-bottom:75px}.hero-art{max-height:590px}.hero h1{font-size:5.1rem}}
@media(max-width:1100px){.hero-grid{grid-template-columns:1.1fr 1fr;gap:30px}.hero h1{font-size:clamp(2.75rem,5vw,3.7rem)}.hero-art{aspect-ratio:.83}.hero .lead{font-size:.94rem}.process-list{gap:16px}.capability-strip i{margin-inline:10px}}
@media(max-width:1000px){.site-nav{background:var(--paper);top:92px;overflow:auto;padding-bottom:40px}.site-nav>a:not(.button){font-size:1.25rem;border-color:var(--line)}.language{align-self:start}.menu-open .site-header{background:var(--paper)}.hero-grid{grid-template-columns:1.1fr 1fr}.hero-art{width:100%}.founder-grid{gap:3rem}.contact-grid{grid-template-columns:1fr}.process-list{grid-template-columns:repeat(3,1fr)}.hero-note{font-size:.62rem}}
@media(max-width:700px){.site-header{height:76px}.site-nav{top:76px}.brand span{font-size:1.8rem}.brand small{font-size:.62rem}.hero{padding:112px 0 32px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero h1{font-size:clamp(2.55rem,8.7vw,3.9rem);line-height:1.12}.hero .eyebrow{font-size:.6rem;margin-bottom:21px}.hero .lead{font-size:1rem;max-width:480px}.actions{flex-direction:row;align-items:center;gap:20px}.button{font-size:.76rem;padding:1rem 1.15rem}.hero-note{margin-top:22px;font-size:.66rem}.hero-art{aspect-ratio:1.12;border-radius:12px}.art-label{top:15px;left:15px;font-size:.6rem}.hero-art figcaption{padding:15px;font-size:.6rem}.capability-strip{padding:20px 0}.capability-strip .wrap{flex-direction:column;align-items:flex-start;gap:8px}.capability-strip p{font-size:.72rem}.capability-strip i{margin-inline:5px}.section{padding:60px 0}.section-heading.split,.split{gap:20px}.section-heading{margin-bottom:25px}h2{font-size:2.15rem;max-width:22ch}.path-card{padding:26px;min-height:340px}.path-card h3{font-size:1.9rem}.path-card:after{right:25px;top:25px;width:37px;height:37px;border-width:7px}.path-num{margin-bottom:35px}.philosophy-grid{gap:27px}.flow{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #536b5c;margin-top:35px}.flow li{border:0;padding:20px 0 0;font-size:.57rem}.flow li::before{left:0;top:-4px}.flow span{display:block;margin:0 0 7px}.service-card{min-height:260px}.service-mark{margin-bottom:35px}.problems-grid{gap:30px}.problem-list li{font-size:.91rem;padding:17px}.process-list{grid-template-columns:1fr}.process-list li{display:grid;grid-template-columns:40px 1fr;gap:10px;padding:24px 0}.process-list h3{font-size:1.35rem}.process-list p{font-size:.95rem}.founder-grid{grid-template-columns:1fr;gap:28px}.founder-monogram{aspect-ratio:1.5;min-height:220px;max-width:none}.final-cta{padding:55px 0}.final-cta__inner{gap:15px}.final-cta .button{justify-self:start}.page-hero{padding:120px 0 55px}.page-hero h1{font-size:2.8rem}.page-hero .lead{font-size:1.05rem}.contact-layout{padding:115px 0 55px}.contact-grid{gap:30px}.contact-copy h1{font-size:2.8rem}.contact-meta{margin-top:25px}.form-panel{padding:22px}.process-page .process-list li{grid-template-columns:35px 1fr}.process-page .process-list li div{display:block}.footer-top{gap:20px}.footer-grid{padding:28px 0}.menu-button[aria-expanded=true] span:first-child{transform:translateY(6px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}}
@media(prefers-reduced-motion:reduce){.service-card:hover{transform:none}}

/* Connected business: a single graphic and icon system. */
:root{--ink:#101f2a;--paper:#f6f8f8;--muted:#586975;--line:#dce5e8;--teal:#06786f;--teal-bright:#61dac6;--teal-pale:#e1f4ee;--max:1280px}
html{scroll-padding-top:104px}body{background:var(--paper);font-size:16px}h2{font-size:clamp(2.1rem,3.6vw,3.25rem);line-height:1.14;max-width:23ch}.eyebrow{font-size:.65rem;font-weight:700;letter-spacing:.13em;line-height:1.5;color:var(--teal)}.icon{width:24px;height:24px;flex:0 0 24px;vertical-align:middle;display:inline-block}
.site-header,.site-header.scrolled{height:86px;background:#0d1d27f5;color:#fff;border-color:#ffffff16}.brand small{border-color:#ffffff4d;letter-spacing:.07em}.site-nav>a:not(.button){font-size:.77rem}.language{border-color:#ffffff26;border-radius:6px}.language a{color:#a5b7c0}.language a[aria-current=true]{color:white}
.button{background:var(--teal-bright);color:#092c29;border-radius:6px;padding:1.03rem 1.35rem;min-height:52px;gap:20px;font-size:.82rem;box-shadow:none}.button .icon{width:20px;height:20px;flex-basis:20px}.button:hover{background:#a0f1df;color:#092c29}.button--small{min-height:41px;padding:.65rem 1rem;font-size:.73rem}.button span{color:inherit}.text-link{font-size:.84rem;gap:14px;line-height:1.5}.text-link .icon{width:20px;flex-basis:20px;transition:transform .2s}.text-link:hover .icon{transform:translateX(4px)}
.section{padding:86px 0}.section-heading{margin-bottom:36px}.section-heading.split,.split{grid-template-columns:1.2fr .8fr;gap:5rem;align-items:end}.section-heading.split>p{font-size:1rem;margin:0;max-width:440px}
.hero-system{background:#0d1d27;color:white;padding:158px 0 0;position:relative;overflow:hidden}.hero-system:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#8ce7d206 1px,transparent 1px),linear-gradient(90deg,#8ce7d206 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(90deg,transparent,#000)}.hero-system>.wrap{position:relative}.hero-system-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding-bottom:66px}.hero-system-copy .eyebrow{display:flex;align-items:center;gap:10px;color:#85d9c8;margin-bottom:25px}.status-dot,.diagram-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#61dac6;box-shadow:0 0 0 4px #61dac614;flex-shrink:0}.hero-system h1{font-size:clamp(3.4rem,5.3vw,5.35rem);line-height:1.07;max-width:13ch;letter-spacing:-.065em}.hero-system h1 em{font-style:normal;color:#73dec7}.hero-promise{font-size:1.05rem;font-weight:500;line-height:1.6;margin:25px 0 12px;color:#f1f7f7}.hero-description{font-size:1rem;line-height:1.85;color:#acbdc7;max-width:480px;margin:0}.hero-system .actions{margin-top:28px;gap:25px}.hero-system .text-link{color:#e2eeed}.hero-base{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff20;padding:24px 0;color:#b6c7ce;font-size:.73rem}.hero-base>span{display:flex;align-items:center;gap:10px}.hero-base .icon{width:19px;height:19px;flex-basis:19px;color:#73d9c7}.hero-base i{display:block;width:3px;height:3px;background:#72b7ab;border-radius:50%}
.ecosystem{height:430px;position:relative;isolation:isolate}.ecosystem:before{content:"";position:absolute;inset:20% 10%;background:#0a6c6038;filter:blur(70px);border-radius:50%;z-index:-1}.diagram-heading{display:flex;justify-content:space-between;align-items:center;color:#96afb9;font-size:.58rem;letter-spacing:.12em;padding:0 4px}.ecosystem-lines{position:absolute;inset:20px 0 0;width:100%;height:390px;overflow:visible;fill:none}.ecosystem-lines path{stroke:#55ad9e;stroke-width:1.4}.ecosystem-lines circle{stroke:#5c908226;stroke-width:1;stroke-dasharray:3 7}.eco-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;flex-direction:column;justify-content:center;width:205px;height:137px;border-radius:12px;background:linear-gradient(140deg,#1e5c52,#173f3b);border:1px solid #81e6c775;box-shadow:0 22px 50px #0005,0 0 35px #73dec714;z-index:3}.eco-center>span{font:700 2.2rem/1 var(--display);letter-spacing:-.08em;color:#a3efd9;margin-bottom:10px}.eco-center strong{font-size:.9rem;font-weight:500}.eco-center small{font-size:.51rem;color:#a6d9cf;margin-top:6px}.eco-node{position:absolute;width:43%;height:100px;border:1px solid #42616b;background:linear-gradient(125deg,#203540,#162c36);border-radius:9px;padding:17px;box-shadow:0 12px 25px #0003;z-index:2;display:grid;grid-template-columns:32px 1fr;align-content:center;column-gap:8px}.eco-node>.icon{color:#75dbc8;grid-row:1/3;width:25px;height:25px;align-self:center}.eco-node strong{font:600 .77rem/1.5 var(--display);letter-spacing:-.015em}.eco-node small{font-size:.58rem;color:#a9bdc6;line-height:1.5;margin-top:3px}.eco-node-0{left:0;top:55px}.eco-node-1{right:0;top:55px}.eco-node-2{left:0;bottom:55px}.eco-node-3{right:0;bottom:55px}.diagram-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:.66rem;color:#95b5bd}
.solution-section{background:#fff}.solution-workbench{border:1px solid #cedcdf;border-radius:12px;overflow:hidden;box-shadow:0 20px 50px #203c4910}.solution-selectors{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #d7e4e7;background:#f2f6f7}.solution-selectors button{display:flex;align-items:center;gap:12px;text-align:left;border:0;border-right:1px solid #d7e4e7;border-bottom:3px solid transparent;background:none;color:#526875;padding:24px 20px;cursor:pointer;font-size:.82rem;font-weight:500;min-height:87px}.solution-selectors button:last-child{border-right:0}.solution-selectors button[aria-selected=true]{background:#fff;color:#095e56;border-bottom-color:#078374}.solution-selectors button:hover{background:#eaf4f1}.solution-selectors button>.icon:last-child{margin-left:auto;width:18px;flex-basis:18px}.selector-number{font-size:.61rem;letter-spacing:.05em;color:#758994}.solution-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;padding:45px;align-items:center;min-height:340px}.solution-panel[hidden]{display:none}.solution-copy h3{font-size:1.8rem;line-height:1.2;max-width:25ch;margin-bottom:16px}.solution-copy>p:not(.eyebrow){color:#596d77;font-size:.96rem;line-height:1.75}.solution-copy .eyebrow{font-size:.59rem;margin-bottom:14px}.solution-copy .text-link{color:#056c61}.solution-map{background:#edf5f2;border:1px solid #d3e5df;border-radius:9px;padding:25px 22px}.map-label{font-size:.58rem;letter-spacing:.12em;color:#476d61;font-weight:600}.map-chain{display:flex;align-items:center;margin:40px 0 28px;gap:0}.map-node{min-width:0;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:13px}.map-node>.icon{width:48px;height:48px;padding:11px;flex-basis:48px;background:#fff;border:1px solid #c6ddd2;border-radius:9px;color:#096a59;box-shadow:0 5px 10px #285f3610}.map-node span{font-size:.63rem;color:#315948;line-height:1.3;min-height:26px}.map-connector{height:1px;width:20px;background:#7eaa97;margin-top:-38px;position:relative}.map-connector:after{content:"";position:absolute;right:0;top:-2px;width:5px;height:5px;border-top:1px solid #7eaa97;border-right:1px solid #7eaa97;transform:rotate(45deg)}.solution-map>p{display:flex;align-items:center;gap:8px;font-size:.67rem;border-top:1px solid #caddd2;padding-top:17px;margin:0;color:#466857}.solution-map>p>.icon{width:17px;height:17px;flex-basis:17px}
.capabilities{background:#f1f5f6}.service-grid{gap:0;border-top:1px solid #ccdadd;border-left:1px solid #ccdadd;grid-template-columns:repeat(6,1fr);border-radius:10px;overflow:hidden;background:white}.service-card{background:white;border:0;border-radius:0;border-right:1px solid #ccdadd;border-bottom:1px solid #ccdadd;min-height:278px;padding:30px;grid-column:span 2;transition:background .2s}.service-card:nth-child(4),.service-card:nth-child(5){grid-column:span 3}.service-card:hover{background:#f3faf8;transform:none}.service-mark{display:flex;align-items:center;gap:13px;border:0;padding:0;margin:0 0 32px;color:#087464;font-size:.55rem;letter-spacing:.1em}.service-mark:before{content:none!important}.service-mark>.icon{width:43px;height:43px;flex-basis:43px;padding:10px;background:#e6f3ed;border:1px solid #d0e4da;border-radius:7px}.service-card h3{font-size:1.4rem;max-width:24ch;margin-bottom:13px;line-height:1.25}.service-card p{font-size:.92rem;line-height:1.8;margin-bottom:0}.service-grid--expanded{grid-template-columns:repeat(2,1fr)}.service-grid--expanded .service-card{grid-column:auto;min-height:400px}.service-grid--expanded .service-card:last-child{grid-column:1/-1;min-height:330px}.service-detail{margin-top:22px}.service-detail ul{font-size:.92rem}
.approach-band{background:#112630;color:#fff;padding:78px 0}.approach-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.approach-art{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:1.1}.approach-art img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.6)}.approach-art>span{position:absolute;bottom:0;left:0;right:0;padding:20px;background:#102e30e8;color:#d5eae3;font-size:.6rem;letter-spacing:.13em}.approach-band .eyebrow{color:#7cd9c7}.approach-band h2{margin-bottom:24px}.approach-band p:not(.eyebrow){font-size:1rem;line-height:1.9;color:#bacdd2}.approach-principle{border-top:1px solid #ffffff26;padding-top:22px;display:flex;gap:16px;align-items:center;color:#86decc;font-size:.9rem}
.process{background:#fff}.process-list{display:grid;grid-template-columns:repeat(5,1fr);border:0;gap:0}.process-list li{display:block;position:relative;border:0;border-top:2px solid #c6dcd6;padding:30px 25px 0 0}.process-list li:before{content:"";position:absolute;top:-6px;left:0;width:10px;height:10px;background:#0b8879;border:2px solid white;border-radius:50%}.process-list>li>span{font-size:.7rem;display:block;margin-bottom:23px}.process-list li div{display:block}.process-list h3{font-size:1.25rem;margin-bottom:12px}.process-list p{font-size:.9rem;line-height:1.8}.process-page .process-list{grid-template-columns:1fr}.process-page .process-list li{display:grid;grid-template-columns:80px 1fr;padding:25px 0}.process-page .process-list li div{display:grid;grid-template-columns:1fr 2fr}
.founder{background:#eaf0f2}.founder-grid{grid-template-columns:.85fr 1.15fr;gap:90px}.founder .lead-small{color:#586c77;font-size:1.05rem;margin-top:22px}.founder-credit{font-size:.75rem;color:#5e7380}.practice-visual{background:#17343e;border:1px solid #46636a;border-radius:10px;padding:32px;position:relative;overflow:hidden;color:white}.practice-visual:after{content:"";position:absolute;width:280px;height:280px;border:1px solid #79b6a522;border-radius:50%;top:60px;right:-150px;box-shadow:0 0 0 30px #79b6a508,0 0 0 60px #79b6a508}.practice-visual .eyebrow{color:#84d8c5;display:block}.practice-visual>strong{font:600 2.5rem/1.15 var(--display);letter-spacing:-.045em;display:block;position:relative;z-index:1}.practice-visual>div{display:flex;align-items:center;gap:12px;color:#80dec7;margin-top:32px}.practice-visual>div>span{width:35px;height:1px;background:#658b83}.founder-portrait{margin:0;position:relative;overflow:hidden;border-radius:10px;background:#16333d;aspect-ratio:4/5}.founder-portrait img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08)}.founder-portrait:after{content:"";position:absolute;inset:0;background:#15736726;mix-blend-mode:color;pointer-events:none}.founder-portrait figcaption{position:absolute;z-index:1;bottom:0;left:0;right:0;padding:50px 28px 28px;background:linear-gradient(transparent,#0d252af0);color:#fff}.founder-portrait figcaption strong,.founder-portrait figcaption span{display:block}.founder-portrait figcaption span{font-size:.76rem;color:#c4ddd6}
.final-cta{background:#0b756c;color:#fff;padding:68px 0}.final-cta:after{content:none}.final-cta .eyebrow{color:#bbebe0}.final-cta h2{max-width:23ch}.final-cta p:not(.eyebrow){color:#d1e9e4;font-size:1rem;max-width:640px}.final-cta .button{background:#f0faf6;color:#164d43}.site-footer{background:#0d1d27;color:#d9e6eb;padding:60px 0 25px}.footer-top p{font-size:.78rem;color:#a5bbc4}.footer-grid{padding:30px 0}.footer-grid small,.footer-grid span,.footer-bottom{color:#9fb7c3}
.page-hero{background:#112630;color:#fff;padding:150px 0 72px}.page-hero:after{border-color:#75d9c415}.page-hero .eyebrow{color:#81deca}.page-hero h1{font-size:clamp(3rem,5vw,4.6rem);max-width:19ch}.page-hero .lead{font-size:1.15rem;color:#b9cdd5;max-width:800px}.engagement,.principles,.local{background:#e4efed}.check-list li,.principles li{padding-left:0}.check-list li:before,.principles li:before{content:none}
.contact-layout{background:#eef3f3;color:var(--ink);padding:145px 0 80px}.contact-copy h1{font-size:clamp(2.9rem,4.4vw,4.2rem)}.contact-copy>.lead-small{color:#526c78;font-size:1.06rem}.contact-meta{border-color:#c6d5d8}.contact-meta small{color:#536e7a}.form-panel{background:white;border:1px solid #d1dfe2;border-radius:12px;box-shadow:0 20px 60px #163f4710}.form-panel .button{background:#096f64;color:white}.not-found{background:#112630;color:white}
@media(max-width:1100px){.hero-system-grid{gap:30px}.hero-system h1{font-size:clamp(3rem,5.4vw,4.4rem)}.hero-promise{font-size:.92rem}.hero-description{font-size:.94rem}.eco-node{padding:12px;grid-template-columns:25px 1fr;column-gap:6px}.eco-node strong{font-size:.68rem}.eco-node small{font-size:.52rem}.eco-node>.icon{width:21px}.hero-base{font-size:.64rem}.solution-panel{padding:30px;gap:30px}.solution-selectors button{padding:20px 14px;gap:9px}.selector-number{display:none}.approach-grid,.founder-grid{gap:50px}}
@media(max-width:1000px){.site-nav{top:86px;background:#0d1d27;overflow-y:auto;padding-bottom:30px}.menu-open .site-header{background:#0d1d27}.site-nav>a:not(.button){font-size:1.15rem}.language{align-self:start}.hero-system .actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-system-grid{align-items:start}.ecosystem{margin-top:20px}.hero-base>span:last-child{display:none}.solution-selectors button>.icon:last-child{display:none}.solution-panel{grid-template-columns:1fr 1.1fr}.solution-copy h3{font-size:1.6rem}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}.service-card:last-child{grid-column:1/-1}}
@media(max-width:760px){.site-header,.site-header.scrolled{height:76px}.site-nav{top:76px}.hero-system{padding:112px 0 0}.hero-system-grid{grid-template-columns:1fr;gap:25px;padding-bottom:28px}.hero-system h1{font-size:clamp(2.85rem,8.4vw,4.2rem);max-width:none}.hero-system-copy .eyebrow{font-size:.55rem;letter-spacing:.08em;margin-bottom:22px}.hero-promise{font-size:.97rem;margin-top:20px}.hero-description{font-size:.96rem;line-height:1.8}.hero-system .actions{flex-direction:row;align-items:center;gap:20px}.hero-system .text-link{font-size:.72rem}.hero-system .button{font-size:.75rem;padding:.9rem 1rem;gap:12px}.ecosystem{height:365px;max-width:540px;width:100%;margin:5px auto 0}.ecosystem-lines{height:325px}.eco-node{width:44%;height:86px;padding:12px;display:flex;flex-wrap:wrap;gap:4px;align-content:center}.eco-node>.icon{width:21px;height:21px;flex-basis:21px;margin-right:3px}.eco-node strong{font-size:.64rem;align-self:center}.eco-node small{font-size:.54rem;width:100%;margin:1px 0 0}.eco-node-0,.eco-node-1{top:37px}.eco-node-2,.eco-node-3{bottom:39px}.eco-center{width:175px;height:104px}.eco-center>span{font-size:1.65rem;margin-bottom:7px}.eco-center strong{font-size:.77rem}.eco-center small{font-size:.46rem}.diagram-heading{font-size:.52rem}.diagram-caption{font-size:.58rem}.hero-base{padding:18px 0;gap:12px;flex-wrap:wrap}.hero-base>span{font-size:.64rem}.hero-base .icon{width:17px;height:17px;flex-basis:17px}.section{padding:57px 0}.section-heading.split,.split{grid-template-columns:1fr;gap:18px}.section-heading{margin-bottom:28px}h2{font-size:2.1rem;max-width:none}.section-heading.split>p{font-size:.95rem;max-width:none}.solution-selectors{grid-template-columns:1fr}.solution-selectors button{border-right:0;border-bottom:1px solid #d7e4e7;min-height:65px;padding:16px 19px}.solution-selectors button[aria-selected=true]{border-bottom:1px solid #d7e4e7;box-shadow:inset 3px 0 #087e70;background:#e7f5ef}.solution-selectors button>.icon:last-child{display:block}.solution-panel{grid-template-columns:1fr;padding:25px 20px;gap:23px}.solution-copy h3{font-size:1.7rem}.solution-copy>p:not(.eyebrow){font-size:.95rem}.solution-map{padding:20px 14px}.map-node>.icon{width:40px;height:40px;flex-basis:40px;padding:8px}.map-node span{font-size:.57rem}.map-chain{margin-top:28px}.map-connector{width:10px}.solution-map>p{font-size:.63rem}.service-grid,.service-grid--expanded{grid-template-columns:1fr}.service-card,.service-card:nth-child(4),.service-card:nth-child(5),.service-grid--expanded .service-card:last-child{grid-column:auto;min-height:0;padding:25px}.service-mark{margin-bottom:22px}.service-card h3{font-size:1.5rem}.service-card p{font-size:.97rem}.approach-band{padding:52px 0}.approach-grid{grid-template-columns:1fr;gap:30px}.approach-art{aspect-ratio:1.4;max-height:360px}.approach-band h2{font-size:2.2rem}.approach-band p:not(.eyebrow){font-size:.96rem}.approach-principle{font-size:.85rem}.process-list{grid-template-columns:1fr}.process-list li,.process-page .process-list li{display:grid;grid-template-columns:40px 1fr;border-top:0;border-left:2px solid #c6dcd6;padding:0 0 30px 22px;gap:12px}.process-list li:before{left:-6px;top:0}.process-list>li>span{margin:4px 0 0}.process-list h3{font-size:1.3rem}.process-list p{font-size:.95rem}.process-page .process-list li div{display:block}.founder-grid{grid-template-columns:1fr;gap:30px}.practice-visual{padding:26px}.practice-visual>strong{font-size:2.2rem}.founder .lead-small{font-size:1rem}.founder-portrait{max-height:480px}.final-cta{padding:52px 0}.final-cta__inner{grid-template-columns:1fr;gap:15px}.final-cta .button{justify-self:start}.page-hero{padding:122px 0 55px}.page-hero h1{font-size:2.7rem}.page-hero .lead{font-size:1.05rem}.contact-layout{padding:116px 0 50px}.contact-copy h1{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){.text-link:hover .icon{transform:none}}

/* Two business paths, with concrete and explicitly illustrative use cases. */
.solution-selectors{grid-template-columns:repeat(2,minmax(0,1fr))}
.solution-selectors button{font-size:.92rem;padding:25px 28px}
.solution-panel{display:block;padding:40px;min-height:0}
.solution-panel[hidden]{display:none}
.audience-summary{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:48px;padding-bottom:36px}
.audience-summary .solution-copy h3{max-width:30ch}
.audience-summary .solution-copy .eyebrow{max-width:49ch;line-height:1.7}
.audience-summary .solution-map{min-width:0}
.usecase-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding:30px 0 24px}
.usecase-heading h3{font-size:1.2rem;line-height:1.4;margin:0}
.usecase-heading>span{font-size:.7rem;color:var(--muted);white-space:nowrap}
.usecase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.usecase-card{border:1px solid #d8e4e5;border-radius:9px;padding:27px;background:linear-gradient(145deg,#f7faf9,#fff)}
.usecase-top{display:flex;align-items:center;gap:13px;margin-bottom:20px}
.usecase-top>.icon{width:38px;height:38px;flex-basis:38px;background:#e4f2ec;padding:8px;color:#087464;border:1px solid #cee3d8;border-radius:7px}
.usecase-top>span{font-size:.6rem;letter-spacing:.11em;font-weight:600;color:#56736d}
.usecase-card h4{font:600 1.3rem/1.3 var(--display);letter-spacing:-.025em;max-width:30ch;margin:0 0 13px}
.usecase-card p{font-size:.87rem;line-height:1.75;color:#546873;margin:0}
.case-situation{min-height:4.6em}
.case-implementation{margin-top:22px;padding-top:20px;border-top:1px solid #dfe9e7}
.case-implementation h5{font:600 .72rem/1.5 var(--display);color:#163f3a;margin:0 0 8px}
.usecase-card .case-purpose{display:flex;align-items:flex-start;gap:10px;margin:20px 0;background:#eaf4f0;border-radius:6px;padding:13px;color:#235b4e;font-size:.8rem;min-height:5.3em}
.case-purpose>.icon{width:18px;height:18px;flex-basis:18px;margin-top:2px}
.case-details{border-top:1px solid #dfe9e7;padding-top:15px}
.case-details summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;font-size:.77rem;color:#116b5e;font-weight:600;list-style:none;min-height:30px}
.case-details summary::-webkit-details-marker{display:none}
.case-details summary>.icon{width:18px;height:18px;flex-basis:18px;transform:rotate(45deg)}
.case-details[open] summary>.icon{transform:rotate(-45deg)}
.case-details>p{padding-top:15px}
.case-details .text-link{font-size:.77rem;margin-top:16px}
.case-details summary:focus-visible,.solution-selectors button:focus-visible{outline:2px solid #087e70;outline-offset:4px;border-radius:3px}
.usecase-note{display:flex;align-items:flex-start;gap:10px;color:#64777f;font-size:.73rem;line-height:1.7;max-width:850px;margin:22px 0 0}
.usecase-note>.icon{width:18px;height:18px;flex-basis:18px;margin-top:1px}
.founder-portrait{aspect-ratio:1/1.05}
.founder-portrait img{object-position:51% 45%}
@media(max-width:1000px){.solution-panel{padding:28px}.audience-summary{gap:28px}.solution-selectors button{font-size:.83rem;padding:22px}.usecase-card{padding:22px}}
@media(max-width:760px){.solution-selectors{grid-template-columns:1fr}.solution-selectors button{padding:18px;font-size:.83rem}.solution-panel{padding:25px 18px}.audience-summary{grid-template-columns:1fr;gap:23px;padding-bottom:28px}.usecase-heading{align-items:flex-start;flex-direction:column;gap:6px;padding:24px 0 20px}.usecase-heading h3{font-size:1.16rem}.usecase-grid{grid-template-columns:1fr;gap:16px}.usecase-card{padding:22px}.usecase-card h4{font-size:1.28rem}.case-situation{min-height:0}.usecase-card .case-purpose{min-height:0}.usecase-note{font-size:.72rem}.founder-portrait{aspect-ratio:1/1.1}}

/* Focused pages: browse by purpose instead of one continuous long page. */
.step-number{font-size:.7rem;color:#08776a;min-width:24px}.about-founder{padding:48px 0}.about-founder .lead-small{font-size:1rem;margin-top:18px}.about-founder h2{font-size:2.2rem}.about-founder .founder-portrait{max-width:350px}.about-founder .check-list{margin-top:22px}.region-note{background:#e4efed;padding:22px 0}.region-note>.wrap{display:flex;align-items:center;gap:25px}.region-note strong{white-space:nowrap;color:#176d60;font-size:.85rem}.region-note p{margin:0;font-size:.88rem;color:#516b75}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.compact-section{padding:54px 0}.compact-section .section-heading{margin-bottom:25px}.compact-section h2{font-size:clamp(1.9rem,3vw,2.65rem)}
.short-hero{padding:130px 0 42px}.short-hero h1{font-size:clamp(2.4rem,4.4vw,3.65rem);max-width:25ch}.short-hero .lead{font-size:1.02rem;line-height:1.75;margin:20px 0 0;max-width:790px}.short-hero .eyebrow{margin-bottom:16px}.breadcrumb{display:inline-block;text-decoration:none;font-size:.76rem;color:#b6d3d3;margin-bottom:24px}.breadcrumb:hover{color:white}
.route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.route-card{display:flex;flex-direction:column;text-decoration:none;border:1px solid #cbdcde;border-radius:10px;padding:27px;background:#fff;transition:border-color .2s,background .2s}.route-card:hover{background:#eff8f4;border-color:#2c897b}.route-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;color:#08776a}.route-card-top>.icon{width:31px;height:31px}.route-card-top>span{font-size:.7rem;color:#6a838a}.route-card h3{font-size:1.65rem;line-height:1.2;max-width:24ch;margin-bottom:13px}.route-card p{font-size:.93rem;line-height:1.7;color:#5b6f78;margin-bottom:18px}.route-link{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#0d7164;font-size:.77rem;font-weight:600;margin-top:auto}.route-link>.icon{width:19px;height:19px;flex-basis:19px}
.project-preview{background:#eaf0f1}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project-card{display:flex;flex-direction:column;border:1px solid #ccdadd;border-radius:10px;overflow:hidden;text-decoration:none;background:#fff;transition:border-color .2s}.project-card:hover{border-color:#378c7d}.project-graphic{height:155px;background:#123d49;color:#d3efed;position:relative;overflow:hidden;padding:23px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.project-graphic:after{content:"";width:190px;height:190px;position:absolute;right:-40px;top:-75px;border:1px solid #ffffff26;border-radius:50%;box-shadow:0 0 0 23px #ffffff05,0 0 0 46px #ffffff05;z-index:-1}.project-graphic>strong{font:600 1.5rem/1.2 var(--display);letter-spacing:-.04em;max-width:80%}.project-graphic>span>.icon{width:30px;height:30px}.project-hospitality .project-graphic{background:#3a382b;color:#eadfc0}.project-production .project-graphic{background:#122735;color:#90d7cb}.project-signals{position:absolute;right:25px;bottom:29px;display:flex;gap:5px}.project-signals i{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.6}.project-card-copy{padding:23px;display:flex;flex-direction:column;flex:1}.project-card .eyebrow{font-size:.55rem;line-height:1.65;letter-spacing:.08em;margin-bottom:12px}.project-card h3{font-size:1.2rem;line-height:1.3;margin-bottom:12px}.project-card-copy>p:not(.eyebrow){font-size:.84rem;line-height:1.75;color:#5d727a;margin-bottom:20px}.project-grid:has(>.project-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid:has(>.project-card:only-child){grid-template-columns:minmax(0,740px)}.project-grid>.project-card:only-child{display:grid;grid-template-columns:.7fr 1.3fr}.project-grid>.project-card:only-child .project-graphic{height:100%;min-height:180px}
.practice-strip{padding:40px 0;background:white}.practice-strip>.wrap{display:grid;grid-template-columns:145px 1fr;gap:30px;align-items:center}.practice-strip img{width:145px;height:170px;object-fit:cover;object-position:51% 40%;filter:grayscale(1) contrast(1.08);border-radius:8px}.practice-strip .eyebrow{margin-bottom:10px}.practice-strip h2{font-size:1.65rem;max-width:none}.practice-strip p:not(.eyebrow){font-size:.9rem;color:var(--muted);margin:12px 0 0;max-width:750px}.practice-links{display:flex;gap:25px;margin-top:8px}.practice-links .text-link{font-size:.75rem}
.compact-cta{background:#103832;color:#fff;padding:32px 0}.compact-cta>.wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.compact-cta h2{font-size:1.8rem;max-width:none}.compact-cta p{font-size:.89rem;color:#bed8d1;margin:10px 0 0}.compact-cta .button{flex-shrink:0}.site-footer{padding:35px 0 20px}.footer-top{padding-bottom:20px}.footer-grid{padding:22px 0}.footer-grid nav{gap:8px 35px;font-size:.83rem}
.service-directory{background:#eaf0f1}.directory-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.directory-grid>div>p:not(.eyebrow){font-size:.94rem;color:#5c717a;line-height:1.75;margin:18px 0}.disclosure-list{border-top:1px solid #c6d7d8}.disclosure-list details{border-bottom:1px solid #c6d7d8}.disclosure-list summary{display:flex;align-items:center;gap:16px;padding:21px 0;cursor:pointer;list-style:none;font-weight:600;font-size:.95rem;line-height:1.45}.disclosure-list summary::-webkit-details-marker{display:none}.disclosure-list summary>.icon:first-child{color:#0d786b}.disclosure-list summary>.icon:last-child{margin-left:auto;flex:0 0 19px;width:19px;height:19px;transform:rotate(45deg);color:#0d786b}.disclosure-list details[open]>summary>.icon:last-child{transform:rotate(-45deg)}.disclosure-list summary:focus-visible{outline:2px solid #087c6b;outline-offset:4px}.disclosure-body{padding:0 0 23px 40px}.disclosure-body p,.disclosure-body ul{font-size:.9rem;line-height:1.8;color:#516b75;margin:0 0 16px}.disclosure-body ul{padding-left:18px}.disclosure-body h3{font-size:.8rem;line-height:1.5;margin:20px 0 7px;letter-spacing:0}.disclosure-body .case-purpose{display:flex;align-items:flex-start;gap:10px;padding:13px;background:#e2f0e9;border-radius:6px;color:#235b4e}.disclosure-body .case-purpose .icon{flex-basis:19px;width:19px;height:19px;margin-top:4px}.disclosure-body .text-link{font-size:.8rem}.scope-note,.directory-grid>div>p.scope-note{font-size:.74rem;line-height:1.8;color:#60747c}.projects-note{max-width:780px;margin:25px 0 0}.path-navigation{border-bottom:1px solid #d1dfe1;background:#fff}.path-navigation>.wrap{display:flex;gap:30px;align-items:center;flex-wrap:wrap}.path-navigation a{display:flex;align-items:center;gap:9px;font-size:.8rem;text-decoration:none;padding:18px 0;color:#4f6772}.path-navigation a[aria-current]{color:#077668;box-shadow:inset 0 -3px #077668}.path-navigation a:last-child{margin-left:auto}.path-navigation .icon{width:18px;height:18px;flex-basis:18px}
.project-title-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end}.project-client{font-size:1rem;color:#85dbcb;margin:0 0 13px}.project-hero h1{font-size:clamp(2.25rem,3.7vw,3.25rem);max-width:22ch}.project-intro>p{font-size:1rem;line-height:1.8;color:#bdd0d9;margin-bottom:20px}.project-intro .text-link{color:#8bdac8}.confidential-label{display:flex;align-items:center;gap:10px;color:#94c7c0;font-size:.76rem}.project-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0 0 35px;border:1px solid #c9ded7;background:#e8f2ee;border-radius:8px}.project-flow li{display:flex;align-items:center;gap:13px;padding:18px 22px;color:#1a6758;font-size:.9rem;position:relative}.project-flow li+li{border-left:1px solid #c9ded7}.project-story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.project-story h2{font-size:1.2rem;max-width:none;margin-bottom:14px}.project-story p{font-size:.9rem;line-height:1.8;color:#516b75;margin:0}.project-status{display:flex;align-items:flex-start;gap:12px;border:1px solid #d4dfdf;border-left:3px solid #288c7b;background:#eff4f3;padding:17px 20px;font-size:.78rem;color:#4e6972;line-height:1.8;margin:28px 0 35px}.project-status .icon{width:20px;height:20px;flex-basis:20px;margin-top:2px}.project-deep-dive h2{font-size:1.8rem}.project-deep-dive .disclosure-body{padding-left:0}.project-related{display:flex;gap:30px;align-items:center;flex-wrap:wrap;border-top:1px solid #d4e0e1;margin-top:30px;padding-top:20px}.project-related>span{font-size:.75rem;color:#637b85}.project-related .text-link{font-size:.77rem}
/* A filtered ancestor makes a fixed menu relative to the header in mobile Safari.
   Remove that containing block and give navigation its own viewport-sized layer. */
@media(max-width:1100px){
  :root{--nav-height:86px}.site-header,.site-header.scrolled{height:var(--nav-height);z-index:100;backdrop-filter:none;-webkit-backdrop-filter:none;background:#0d1d27;overflow:visible}
  .site-nav{position:fixed;inset:var(--nav-height) 0 auto;z-index:101;height:calc(100vh - var(--nav-height));height:calc(100dvh - var(--nav-height));width:100%;display:none;flex-direction:column;align-items:stretch;gap:0;padding:14px var(--pad) max(28px,env(safe-area-inset-bottom));background:#0d1d27;overflow-y:auto;overscroll-behavior:contain}
  .menu-open .site-nav{display:flex}.site-nav>a:not(.button){font-size:1.12rem;line-height:1.3;padding:16px 0;border-bottom:1px solid #ffffff20}.site-nav>a[aria-current=page]:not(.button){color:#86dfcd}.site-nav>a[aria-current=page]:not(.button)::after{display:none}.site-nav .language{margin:20px 0;align-self:flex-start}.site-nav .button{align-self:flex-start;min-height:44px;flex-shrink:0}
  .menu-button{display:flex;position:relative;width:44px;height:44px;padding:8px;flex-direction:column;align-items:flex-end;justify-content:center;gap:5px;cursor:pointer;z-index:102}.menu-button span{height:1px;background:currentColor;width:24px}.menu-button span:nth-child(2){width:18px}.menu-button b{position:absolute;clip:rect(0,0,0,0)}.menu-button[aria-expanded=true] span:first-child{transform:translateY(6px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .directory-grid{gap:35px}.project-grid{gap:15px}.project-card-copy{padding:20px}.project-title-grid{gap:30px}
}
@media(max-width:760px){
  :root{--nav-height:76px}.compact-section{padding:35px 0}.short-hero{padding:108px 0 30px}.short-hero h1{font-size:2.25rem;max-width:none}.short-hero .lead{font-size:.94rem;margin-top:16px}.short-hero h1 br{display:none}.breadcrumb{margin-bottom:20px}.short-hero .eyebrow{font-size:.59rem}
  .route-grid,.directory-grid,.project-title-grid,.project-story{grid-template-columns:1fr;gap:20px}.route-card{padding:23px}.route-card h3{font-size:1.45rem}.route-card-top{margin-bottom:16px}.route-card p{font-size:.87rem}.project-grid,.project-grid:has(>.project-card:nth-child(2):last-child){grid-template-columns:1fr;gap:15px}.project-card{display:grid;grid-template-columns:90px minmax(0,1fr)}.project-graphic{height:100%;padding:19px 12px;min-height:190px;justify-content:flex-start;gap:22px}.project-graphic>strong{font-size:1rem;max-width:none;overflow-wrap:anywhere}.project-signals{right:auto;bottom:20px}.project-card-copy{padding:18px}.project-card h3{font-size:1.08rem;margin-bottom:10px}.project-card-copy>p:not(.eyebrow){font-size:.79rem;margin-bottom:15px}.project-card .eyebrow{font-size:.5rem;margin-bottom:10px}.project-card .route-link{font-size:.7rem}.project-grid>.project-card:only-child{grid-template-columns:90px minmax(0,1fr)}
  .practice-strip{padding:30px 0}.practice-strip>.wrap{grid-template-columns:80px 1fr;gap:18px;align-items:start}.practice-strip img{width:80px;height:100px}.practice-strip h2{font-size:1.3rem;line-height:1.25}.practice-strip p:not(.eyebrow){font-size:.82rem}.practice-strip .eyebrow{font-size:.53rem}.practice-links{gap:12px;flex-wrap:wrap}.practice-links .text-link{font-size:.69rem}.compact-cta{padding:27px 0}.compact-cta>.wrap{align-items:flex-start;flex-direction:column;gap:18px}.compact-cta h2{font-size:1.6rem}.compact-cta p{font-size:.84rem}
  .directory-grid>div>p:not(.eyebrow){margin:15px 0}.disclosure-list summary{font-size:.87rem;padding:19px 0;gap:12px}.disclosure-body{padding-left:0}.disclosure-body p,.disclosure-body ul{font-size:.85rem}.path-navigation>.wrap{gap:0 20px}.path-navigation a{font-size:.71rem;padding:14px 0}.path-navigation a:last-child{margin-left:0;padding-top:0}.project-hero h1{font-size:2.2rem}.project-intro>p{font-size:.93rem;margin:0 0 12px}.project-flow{margin-bottom:25px}.project-flow li{flex-direction:column;justify-content:flex-start;text-align:center;gap:8px;padding:15px 8px;font-size:.68rem;line-height:1.45}.project-story{gap:20px}.project-story h2{font-size:1.08rem;margin-bottom:9px}.project-story p{font-size:.85rem}.project-status{padding:15px;font-size:.74rem}.project-related{gap:12px 20px}.project-related>span{flex-basis:100%}.site-footer{padding-top:28px}.footer-grid{gap:20px}.footer-top{gap:13px}.footer-top p{font-size:.72rem}
  .page-home .hero-system{padding-top:105px}.page-home .hero-system-grid{gap:18px;padding-bottom:22px}.page-home .hero-description{font-size:.9rem;line-height:1.65}.page-home .hero-promise{margin-top:16px}.page-home .ecosystem{height:290px;margin-top:0}.page-home .ecosystem-lines{height:255px}.page-home .eco-node{height:68px}.page-home .eco-node-0,.page-home .eco-node-1{top:30px}.page-home .eco-node-2,.page-home .eco-node-3{bottom:30px}.page-home .eco-center{height:85px;width:163px}.page-home .eco-center>span{font-size:1.4rem;margin-bottom:5px}.page-home .eco-node small{font-size:.47rem}.page-home .eco-node strong{font-size:.58rem}.page-home .hero-base{padding:14px 0;gap:8px}
}
