:root{
  --night:#151715;
  --night-2:#1c1e1a;
  --slate:#242722;
  --slate-2:#30312a;
  --paper:#efeee8;
  --muted:#d3d1c8;
  --dim:#aaa99e;
  --bronze:#b49a70;
  --bronze-soft:#d6c9aa;
  --line:rgba(194,190,178,.2);
  --serif:'DM Serif Display',Georgia,serif;
  --sans:'Manrope',Arial,sans-serif;
  --mono:'DM Mono',monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--night);scroll-padding-top:96px}
body{margin:0;min-width:320px;background:var(--night);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}
a:focus-visible{outline:2px solid var(--bronze);outline-offset:4px}
.skip-link{position:absolute;z-index:20;top:-60px;left:20px;padding:10px 14px;background:var(--bronze);color:var(--night);font-size:12px;text-decoration:none}
.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:10;min-height:78px;padding:0 clamp(28px,6.5vw,100px);display:grid;grid-template-columns:1fr auto auto;gap:34px;align-items:center;border-bottom:1px solid rgba(180,154,112,.21);background:rgba(17,18,15,.94);backdrop-filter:blur(16px)}
.wordmark{display:flex;align-items:center;gap:11px;width:max-content;color:var(--paper);text-decoration:none}
.mark{position:relative;width:32px;height:32px;display:grid;place-items:center;border:1px solid #a28c68;border-radius:50%}
.mark:after{content:"";position:absolute;inset:4px;border:1px solid #766f5d;border-radius:50%}
.mark span{position:relative;z-index:1;color:#e1ded4;font:16px var(--serif)}
.wordmark-name{font-size:10px;font-weight:700;letter-spacing:.14em;white-space:nowrap}
.wordmark-name small{margin-left:5px;color:#c6c4bb;font-size:7px;font-weight:500;letter-spacing:.12em}
.site-nav{display:flex;align-items:center;gap:clamp(16px,2.5vw,36px)}
.journey-progress{justify-self:center;display:grid;grid-template-columns:auto auto;gap:4px 12px;align-items:center;width:min(100%,310px)}
.progress-count{color:#bdb9aa;font:7px var(--mono);letter-spacing:.13em;white-space:nowrap}
.progress-count b{color:var(--bronze-soft);font-weight:500}
.progress-name{overflow:hidden;color:#dddacf;font:9px var(--sans);text-overflow:ellipsis;white-space:nowrap}
.progress-track{grid-column:1/-1;display:block;height:2px;overflow:hidden;background:rgba(180,154,112,.2)}
.progress-track i{display:block;width:9%;height:100%;background:var(--bronze);transition:width .35s ease}
.site-nav a,.header-link{color:#c6c4bb;text-decoration:none;font:8px var(--mono);letter-spacing:.1em;white-space:nowrap;transition:color .2s}
.site-nav a:hover,.site-nav a[aria-current="location"],.header-link:hover{color:var(--bronze-soft)}
.header-link{padding:10px 0;border-bottom:1px solid rgba(180,154,112,.59);color:var(--paper);letter-spacing:.04em}
.header-link span{margin-left:8px;color:var(--bronze);font-size:13px}
main{overflow:hidden}
.journey-mode main>section:not(.is-active){display:none}
.journey-mode main{overflow:visible}
.section-shell{position:relative;padding:clamp(78px,10vw,140px) clamp(28px,9vw,144px);border-bottom:1px solid rgba(180,154,112,.2);scroll-margin-top:78px}
.hero{min-height:min(820px,calc(100svh - 78px));display:flex;align-items:center;padding-top:clamp(82px,10vw,130px);padding-bottom:clamp(82px,10vw,130px);background:#151816;isolation:isolate}
.hero:after,.challenge:after,.method:after,.firm-fit:after,.outcomes:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.25;background-image:repeating-linear-gradient(90deg,transparent 0,transparent 139px,rgba(206,199,178,.06) 140px),repeating-linear-gradient(0deg,transparent 0,transparent 139px,rgba(206,199,178,.04) 140px);mask-image:linear-gradient(90deg,transparent,#000 20%,#000 82%,transparent)}
.hero-copy{position:relative;z-index:2}
.hero-copy{max-width:760px}
.eyebrow{margin:0 0 22px;color:#d6c9aa;font:8px/1.7 var(--mono);letter-spacing:.15em}
.eyebrow i{padding:0 7px;color:#969587;font-style:normal}
.status-dot,.integration-note span{display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--bronze);box-shadow:0 0 12px rgba(180,154,112,.5);vertical-align:1px}
h1,h2,h3,p,figure{margin-top:0}
h1,h2{font:400 clamp(42px,5.5vw,78px)/1.04 var(--serif);letter-spacing:-.035em;color:var(--paper)}
h1{max-width:780px;margin-bottom:22px;font-size:clamp(44px,5.1vw,74px)}
h1 em,h2 em{color:#cfc3a5;font-style:italic}
.hero-lede{max-width:610px;margin-bottom:28px;color:#dad8cf;font-size:clamp(14px,1.2vw,17px);line-height:1.85}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px 30px;margin-top:34px}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:0 18px;text-decoration:none;font-size:10px;letter-spacing:.03em;transition:transform .2s,background .2s,border-color .2s,color .2s}
.button:hover{transform:translateY(-2px)}
.button-primary{border:1px solid var(--bronze);background:var(--bronze);color:#141715}
.button-primary:hover{background:var(--bronze-soft);border-color:var(--bronze-soft)}
.button-primary span,.button-outline span{font-size:15px}
.text-link{padding-bottom:6px;border-bottom:1px solid rgba(180,154,112,.59);color:#e1dfd6;text-decoration:none;font-size:10px}
.text-link span{margin-left:7px;color:var(--bronze)}
.text-link:hover{color:var(--bronze-soft)}
.hero-audience{max-width:540px;margin:30px 0 0;color:#d6d4ca;font-size:10px;line-height:1.75}
.hero-collective{position:relative;z-index:2;max-width:580px;margin:34px 0 0;padding:14px 0 0;border-top:1px solid rgba(180,154,112,.35)}
.hero-collective>span{color:var(--bronze-soft);font:7px var(--mono);letter-spacing:.13em}
.hero-collective>div{display:flex;align-items:center;gap:12px;margin-top:13px}
.hero-collective b{color:#e0ded4;font:7px var(--mono);letter-spacing:.1em;white-space:nowrap}
.hero-collective i{flex:1;min-width:16px;height:1px;background:linear-gradient(90deg,rgba(180,154,112,.7),rgba(180,154,112,.2));}
.hero-art{position:absolute;z-index:-1;inset:0;margin:0;overflow:hidden}
.hero-image{width:100%;height:100%;display:block;object-fit:cover;object-position:center 57%;opacity:.82}
.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,19,16,.94) 0%,rgba(18,19,16,.82) 34%,rgba(18,19,16,.34) 72%,rgba(18,19,16,.22) 100%),linear-gradient(0deg,rgba(18,19,16,.48),transparent 40%)}
.hero-art figcaption{position:absolute;right:clamp(28px,6vw,90px);bottom:28px;z-index:2;color:rgba(238,232,215,.8);font:7px var(--mono);letter-spacing:.12em}
.model-frame{padding:18px 20px 0;border:1px solid rgba(180,154,112,.47);background:linear-gradient(140deg,rgba(35,36,31,.94),rgba(17,18,15,.9));box-shadow:0 30px 90px rgba(0,0,0,.3)}
.model-head,.model-foot{display:flex;align-items:center;justify-content:space-between;color:#b7b5a9;font:7px var(--mono);letter-spacing:.13em}
.model-head{padding-bottom:14px;border-bottom:1px solid var(--line)}
.model-state{color:#d5d3ca}.model-state i{display:inline-block;width:5px;height:5px;margin-right:7px;border-radius:50%;background:#a99c7b}
.model-body{display:grid;grid-template-columns:.88fr 1.12fr;gap:16px;padding:23px 0 20px}
.model-rail{position:relative;display:flex;flex-direction:column;gap:0;padding-left:15px}
.model-rail:before{content:"";position:absolute;top:9px;bottom:15px;left:3px;width:1px;background:linear-gradient(var(--bronze),#807764 75%,transparent)}
.rail-step{position:relative;display:flex;align-items:center;gap:8px;min-height:42px;color:#bebcaf;font-size:8px;line-height:1.3}
.rail-step:before{content:"";position:absolute;left:-15px;width:7px;height:7px;border:1px solid #99937c;border-radius:50%;background:#242722}
.rail-step.is-current{color:var(--paper)}
.rail-step.is-current:before{background:var(--bronze);box-shadow:0 0 10px rgba(180,154,112,.64)}
.rail-step i{color:#a39170;font:7px var(--mono);font-style:normal}
.model-record{padding:16px 14px;border:1px solid rgba(194,190,178,.21);background:rgba(12,13,11,.4)}
.record-label{margin-bottom:13px;color:var(--bronze-soft);font:7px var(--mono);letter-spacing:.13em}
.record-row{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid rgba(194,190,178,.17)}
.record-row span{color:#a5a292;font:6px var(--mono);letter-spacing:.1em}
.record-row b{color:#dfddd3;font-size:7px;font-weight:500;text-align:right}
.record-thread{display:flex;align-items:center;gap:8px;margin-top:11px;padding-top:10px;border-top:1px solid rgba(180,154,112,.3);color:#d4d2c9;font:7px var(--mono)}
.record-thread i{width:18px;height:1px;background:var(--bronze)}
.model-foot{margin:0 -20px;padding:13px 20px;border-top:1px solid var(--line);color:#a09d8c}
.model-figure figcaption{margin:12px 0 0;color:#aaa99e;font:7px var(--mono);letter-spacing:.08em;line-height:1.7}
.hero-index{position:absolute;z-index:2;right:clamp(28px,4vw,64px);bottom:40px;display:flex;align-items:center;gap:9px;color:#919083;font:7px var(--mono)}
.hero-index span:first-child{color:var(--bronze)}.hero-index i{width:52px;height:1px;background:linear-gradient(90deg,var(--bronze),#756e5c)}
.challenge{display:grid;grid-template-columns:.8fr 1.2fr;column-gap:clamp(40px,8vw,120px);align-items:start;background:linear-gradient(90deg,rgba(18,19,16,.95),rgba(18,19,16,.89) 54%,rgba(18,19,16,.78)),url('/assets/consultant-project-meeting.webp') center 52%/cover no-repeat}
.section-heading,.method-intro,.question-grid,.section-bridge,.method-path,.method-note,.audience-list,.fit-copy,.fit-stack,.outcomes-heading,.outcome-stamp,.outcome-visual,.closing-copy,.closing>.button{position:relative;z-index:1}
.section-heading h2,.method-intro h2,.fit-copy h2,.outcomes h2,.closing h2{margin:0 0 20px;font-size:clamp(38px,4.4vw,61px)}
.section-intro{max-width:570px;margin:0;color:#d0cec4;font-size:13px;line-height:1.85}
.question-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(180,154,112,.37);border-left:1px solid rgba(180,154,112,.25)}
.question-card{min-height:178px;padding:22px 22px 20px;border-right:1px solid rgba(180,154,112,.25);border-bottom:1px solid rgba(180,154,112,.25);background:rgba(12,13,11,.26)}
.question-card>span{display:flex;justify-content:space-between;gap:10px;color:var(--bronze);font:8px var(--mono)}
.question-card>span i{color:#96968a;font-style:normal;font-size:6px;letter-spacing:.12em}
.question-card h3{margin:25px 0 9px;color:#e8e5dd;font:400 20px/1.25 var(--serif)}
.question-card p{max-width:300px;margin:0;color:#b7b4a7;font-size:9px;line-height:1.75}
.work-list{position:relative;z-index:1;border-top:1px solid rgba(180,154,112,.37)}
.work-row{display:grid;grid-template-columns:38px 1fr;gap:14px;padding:21px 0;border-bottom:1px solid rgba(180,154,112,.25)}
.work-row>span{padding-top:4px;color:var(--bronze);font:8px var(--mono)}
.work-row h3{margin:0 0 7px;color:#e8e5dd;font:400 19px/1.3 var(--serif)}
.work-row p{max-width:480px;margin:0;color:#b7b4a7;font-size:10px;line-height:1.75}
.section-bridge{grid-column:1/-1;display:flex;align-items:center;gap:17px;margin-top:43px}
.bridge-line{width:55px;height:1px;background:var(--bronze)}
.section-bridge p{margin:0;color:#e0ded4;font:italic 18px var(--serif)}
.chapter-next{position:relative;z-index:1;grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:24px;width:min(100%,520px);margin:45px 0 0 auto;padding:15px 0;border-top:1px solid rgba(180,154,112,.34);color:#dbd8ce;font-size:10px;text-decoration:none}
.journey-mode .chapter-next{display:none}
.chapter-next span{color:var(--bronze);font-size:15px;transition:transform .2s}
.chapter-next:hover{color:var(--bronze-soft)}.chapter-next:hover span{transform:translateY(3px)}
.method{background:linear-gradient(100deg,rgba(18,19,16,.93),rgba(18,19,16,.87) 62%,rgba(18,19,16,.78)),url('/assets/consultant-office-planning.webp') center 48%/cover no-repeat}
.method-intro{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:80px;align-items:end;max-width:1050px;margin-bottom:75px}
.method-intro .eyebrow{grid-column:1/-1;margin-bottom:20px}
.method-intro h2{margin-bottom:0}
.method-intro .section-intro{padding-bottom:5px}
.method-path{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;padding-top:18px}
.method-path:before{content:"";position:absolute;top:21px;left:10px;right:10px;height:1px;background:linear-gradient(90deg,#9a8968,var(--bronze),#867e68)}
.path-step{position:relative;padding:28px 12px 0 0}
.path-step>span{position:absolute;top:-17px;left:0;display:grid;width:27px;height:27px;place-items:center;border:1px solid #a58f6b;border-radius:50%;background:#232520;color:#d6c9aa;font:7px var(--mono)}
.path-step h3{margin:0 0 8px;color:#e5e3da;font:400 17px var(--serif)}
.path-step p{max-width:190px;margin:0;color:#a6a393;font-size:9px;line-height:1.7}
.method-note{display:flex;align-items:center;gap:18px;max-width:560px;margin:58px 0 0 auto;padding:18px 0 0;border-top:1px solid rgba(180,154,112,.28)}
.note-mark{display:grid;flex:none;width:34px;height:34px;place-items:center;border:1px solid #a28f6e;border-radius:50%;color:var(--bronze-soft);font:17px var(--serif)}
.method-note p{margin:0;color:#d9d7cd;font:italic 16px/1.55 var(--serif)}
.gic-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(180,154,112,.42);border-bottom:1px solid rgba(180,154,112,.25)}
.gic-step{min-height:205px;padding:22px 25px 25px 0}
.gic-step+.gic-step{padding-left:25px;border-left:1px solid rgba(180,154,112,.24)}
.gic-step>span{color:var(--bronze-soft);font:8px var(--mono);letter-spacing:.12em}
.gic-step h3{max-width:245px;margin:31px 0 10px;color:#e5e3da;font:400 23px/1.25 var(--serif)}
.gic-step p{max-width:300px;margin:0;color:#b7b4a7;font-size:10px;line-height:1.8}
.operating-lenses{position:relative;z-index:1;margin-top:54px;padding:27px 0 0;border-top:1px solid rgba(180,154,112,.26)}
.disciplines{background:radial-gradient(ellipse at 74% 30%,rgba(180,154,112,.09),transparent 38%),linear-gradient(120deg,#181a17,#252720 60%,#191b18)}
.disciplines-heading{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;column-gap:70px;align-items:end;margin-bottom:54px}
.disciplines-heading .eyebrow{grid-column:1/-1}
.disciplines-heading h2{margin:0;font-size:clamp(38px,4.4vw,61px)}
.disciplines-heading .section-intro{padding-bottom:5px}
.disciplines .operating-lenses{margin:0;padding:0;border:0}
.lenses-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:20px}
.lenses-heading .eyebrow{margin:0}
.lenses-heading h3{margin:0;color:#e3e1d8;font:400 22px/1.2 var(--serif)}
.lens-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(180,154,112,.2);border-left:1px solid rgba(180,154,112,.2)}
.lens-grid>div{min-height:98px;padding:15px 17px;border-right:1px solid rgba(180,154,112,.2);border-bottom:1px solid rgba(180,154,112,.2);background:rgba(10,11,10,.2)}
.lens-grid span{color:var(--bronze-soft);font:7px var(--mono);letter-spacing:.1em}
.lens-grid p{max-width:240px;margin:12px 0 0;color:#c2c0b6;font-size:9px;line-height:1.6}
.lenses-credit{margin:13px 0 0;color:#99988d;font:7px/1.7 var(--mono)}
.lenses-credit em{color:#bdb5a0;font-style:normal}
.services{background:linear-gradient(105deg,rgba(18,19,16,.95),rgba(18,19,16,.88) 62%,rgba(18,19,16,.82)),url('/assets/consultant-water-inspection.webp') center 48%/cover no-repeat}
.services-heading{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;column-gap:70px;align-items:end;margin-bottom:56px}
.services-heading .eyebrow{grid-column:1/-1}
.services-heading h2{max-width:620px;margin:0;font-size:clamp(38px,4.4vw,61px)}
.services-heading .section-intro{padding-bottom:5px}
.service-stages{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(180,154,112,.4);border-left:1px solid rgba(180,154,112,.24)}
.service-stage{position:relative;min-height:235px;padding:24px 25px 30px;border-right:1px solid rgba(180,154,112,.24);border-bottom:1px solid rgba(180,154,112,.24);background:rgba(12,13,11,.24)}
.service-stage>span{display:flex;justify-content:space-between;color:var(--bronze);font:8px var(--mono);letter-spacing:.1em}
.service-stage>span i{color:#a8a494;font-style:normal;font-size:7px}
.service-stage h3{max-width:360px;margin:37px 0 11px;color:#e8e5dd;font:400 23px/1.25 var(--serif)}
.service-stage p{max-width:420px;margin:0;color:#c0beb1;font-size:10px;line-height:1.8}
.service-stage small{position:absolute;right:25px;bottom:22px;color:#9b9076;font:7px var(--mono);letter-spacing:.12em}
.service-boundary{position:relative;z-index:1;max-width:680px;margin:20px 0 0;color:#aaa99e;font:8px/1.8 var(--mono)}
.audience{display:block;background:linear-gradient(90deg,rgba(17,18,15,.94),rgba(17,18,15,.89) 55%,rgba(17,18,15,.83)),url('/assets/consultant-city-san-antonio.webp') center 47%/cover no-repeat}
.compact-heading h2{margin-bottom:0}
.audience-list{margin-top:40px;border-top:1px solid rgba(180,154,112,.38)}
.audience-row{display:grid;grid-template-columns:38px 1fr auto;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid rgba(180,154,112,.25)}
.audience-number{align-self:start;padding-top:4px;color:var(--bronze);font:8px var(--mono)}
.audience-row h3{margin:0 0 6px;color:#e5e3da;font:400 19px var(--serif)}
.audience-row p{max-width:500px;margin:0;color:#c0beb1;font-size:10px;line-height:1.7}
.audience-side{color:#96968a;font:6px var(--mono);letter-spacing:.13em;text-align:right}
.firm-fit{display:grid;grid-template-columns:1fr .9fr;gap:clamp(45px,9vw,130px);align-items:center;background:radial-gradient(ellipse at 82% 45%,rgba(180,154,112,.11),transparent 33%),linear-gradient(115deg,#171916,#2b2d27 62%,#1c1e1a)}
.fit-copy h2{margin-bottom:20px}
.integration-note{max-width:500px;margin:27px 0 0;color:#b7b4a7;font:8px/1.8 var(--mono);letter-spacing:.03em}
.integration-note span{width:5px;height:5px}
.system-specs{position:relative;z-index:1;max-width:600px;margin:30px 0 0;border-top:1px solid rgba(180,154,112,.34)}
.system-specs>div{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid rgba(180,154,112,.21)}
.system-specs>div>span{padding-top:3px;color:var(--bronze);font:8px var(--mono)}
.system-specs p{margin:0;display:flex;flex-direction:column;gap:4px}
.system-specs b{color:#e2e0d6;font-size:10px;font-weight:600}
.system-specs small{color:#b7b4a7;font-size:9px;line-height:1.6}
.role-views{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:730px;margin-top:28px;padding-top:16px;border-top:1px solid rgba(180,154,112,.23)}
.role-views>div{min-width:0}
.role-views span{color:var(--bronze-soft);font:7px/1.6 var(--mono);letter-spacing:.08em}
.role-views p{margin:7px 0 0;color:#c0beb1;font-size:9px;line-height:1.65}
.fit-stack{border-top:1px solid rgba(180,154,112,.44)}
.architecture{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,7vw,100px);align-items:start;background:radial-gradient(ellipse at 78% 25%,rgba(180,154,112,.1),transparent 34%),linear-gradient(110deg,#171916,#252720 62%,#191b18)}
.architecture-heading{position:relative;z-index:1}
.architecture-heading h2{max-width:600px;font-size:clamp(38px,4.4vw,61px)}
.architecture-heading .section-intro{max-width:520px}
.architecture .fit-stack{position:relative;z-index:1}
.stack-heading{padding:13px 0 8px;color:#a6a393;font:7px var(--mono);letter-spacing:.13em}
.stack-heading small{display:block;margin-top:7px;color:#838275;font-size:6px}
.engine-map{position:relative;border-top:1px solid rgba(180,154,112,.21)}
.engine-row{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;padding:12px 0;border-bottom:1px solid rgba(180,154,112,.2)}
.engine-row>span{padding-top:2px;color:var(--bronze);font:7px var(--mono)}
.engine-row>div{display:flex;flex-direction:column;gap:5px}
.engine-row b{color:#e3e1d8;font:8px var(--mono);letter-spacing:.11em}
.engine-row small{color:#c0beb1;font-size:9px;line-height:1.5}
.stack-footnote{margin:14px 0 0;color:#aaa99e;font:7px/1.7 var(--mono);letter-spacing:.025em}
.standard-row{display:grid;grid-template-columns:36px 1fr auto;gap:15px;align-items:center;min-height:76px;border-bottom:1px solid rgba(180,154,112,.28)}
.standard-row>span{color:var(--bronze);font:8px var(--mono)}
.standard-row div{display:flex;flex-direction:column;gap:6px}
.standard-row b{color:#e3e1d8;font:9px var(--mono);letter-spacing:.13em}
.standard-row small{color:#c0beb1;font-size:10px;line-height:1.5}
.practice{background:linear-gradient(105deg,rgba(18,19,16,.96),rgba(18,19,16,.89) 61%,rgba(18,19,16,.8)),url('/assets/consultant-water-main-field.webp') center 52%/cover no-repeat}
.practice-intro{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;column-gap:74px;align-items:end;margin-bottom:55px}
.practice-intro .eyebrow{grid-column:1/-1}
.practice-intro h2{max-width:660px;margin:0;font-size:clamp(38px,4.4vw,61px)}
.practice-flow{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(180,154,112,.38)}
.practice-flow article{min-height:190px;padding:21px 20px 20px 0}
.practice-flow article+article{padding-left:20px;border-left:1px solid rgba(180,154,112,.24)}
.practice-flow article>span{color:var(--bronze-soft);font:7px var(--mono);letter-spacing:.1em}
.practice-flow h3{margin:27px 0 9px;color:#e5e3da;font:400 19px/1.27 var(--serif)}
.practice-flow p{max-width:230px;margin:0;color:#b7b4a7;font-size:9px;line-height:1.75}
.contract-path{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(180,154,112,.38);border-bottom:1px solid rgba(180,154,112,.25)}
.contract-path article{position:relative;min-height:155px;padding:20px 17px 18px 0}
.contract-path article+article{padding-left:17px;border-left:1px solid rgba(180,154,112,.23)}
.contract-path article>span{display:block;margin-bottom:19px;color:var(--bronze-soft);font:7px var(--mono);letter-spacing:.08em}
.contract-path b{display:block;margin-bottom:8px;color:#e5e3da;font:400 17px/1.25 var(--serif)}
.contract-path small{display:block;color:#b7b4a7;font-size:8px;line-height:1.65}
.reporting-example{position:relative;z-index:1;margin-top:36px;padding:24px 24px 20px;border:1px solid rgba(180,154,112,.25);background:rgba(9,10,9,.25)}
.reporting-example>div:first-child{display:grid;grid-template-columns:.75fr 1.25fr;column-gap:25px;align-items:end;margin-bottom:24px}
.reporting-example .eyebrow{grid-column:1/-1;margin-bottom:12px}
.reporting-example h3{margin:0;color:#e5e3da;font:400 22px/1.25 var(--serif)}
.reporting-example>div:first-child>p:last-child{max-width:500px;margin:0;color:#c0beb1;font-size:9px;line-height:1.75}
.reporting-example .practice-flow{border-top:1px solid rgba(180,154,112,.26)}
.reporting-example .practice-flow article{min-height:170px}
.reporting{background:linear-gradient(105deg,rgba(18,19,16,.95),rgba(18,19,16,.88) 61%,rgba(18,19,16,.79)),url('/assets/consultant-water-closeout.webp') center 52%/cover no-repeat}
.reporting-heading{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;column-gap:70px;align-items:end}
.reporting-heading .eyebrow{grid-column:1/-1}
.reporting-heading h2{margin-bottom:0;font-size:clamp(38px,4.4vw,61px)}
.reporting-heading .section-intro{padding-bottom:5px}
.reporting-example>div:first-child{display:block;margin:0}
.reporting-example>div:first-child h3{max-width:760px}
.cpms-boundary{position:relative;z-index:1;max-width:800px;margin:28px 0 0;padding:16px 19px;border-left:1px solid var(--bronze);background:rgba(9,10,9,.36);color:#c6c4bb;font:8px/1.8 var(--mono)}
.cpms-boundary .status-dot{margin-right:10px}
.outcomes{display:grid;grid-template-columns:1fr;gap:60px;align-items:center;background:linear-gradient(110deg,#171916,#252720 58%,#1b1d19)}
.outcomes-heading h2{max-width:760px}
.assessment-outcomes{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:23px;border-top:1px solid rgba(180,154,112,.36)}
.assessment-outcomes p{max-width:260px;margin:0;color:#d0cec4;font-size:10px;line-height:1.7}
.assessment-outcomes span{display:block;margin-bottom:14px;color:var(--bronze);font:8px var(--mono)}
.assessment-outcomes b{display:block;margin-bottom:7px;color:#e3e1d8;font:400 17px/1.3 var(--serif)}
.assessment-outcomes small{display:block;color:#b7b4a7;font-size:9px;line-height:1.7}
.assessment-detail{position:relative;z-index:1;display:grid;grid-template-columns:1.7fr .8fr;gap:50px;align-items:start}
.assessment-bring{padding:19px 20px;border:1px solid rgba(180,154,112,.35);background:rgba(9,10,9,.32)}
.assessment-bring>span{color:var(--bronze-soft);font:7px var(--mono);letter-spacing:.11em}
.assessment-bring p{margin:15px 0;color:#dedbd1;font:400 16px/1.55 var(--serif)}
.assessment-bring small{display:block;padding-top:12px;border-top:1px solid rgba(180,154,112,.23);color:#a9a797;font:7px/1.7 var(--mono)}
.page-controls{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:clamp(42px,6vw,75px);padding-top:17px;border-top:1px solid rgba(180,154,112,.32)}
.page-controls a{display:flex;align-items:center;gap:12px;color:#d8d5ca;text-decoration:none;font-size:10px;transition:color .2s,transform .2s}
.page-controls a:hover{color:var(--bronze-soft)}
.page-back{max-width:42%;color:#9e9c90!important;font-size:8px!important}
.page-back span{color:var(--bronze);font-size:15px}
.page-next{min-width:230px;min-height:62px;margin-left:auto;padding:12px 17px;border:1px solid var(--bronze);background:var(--bronze);color:#171916!important;box-shadow:0 8px 26px rgba(0,0,0,.24);transition:transform .2s,background .2s,border-color .2s,box-shadow .2s!important}
.page-next strong{color:#171916;font:600 12px/1.4 var(--sans)}
.page-next b{color:#171916;font-size:21px;font-weight:400;transition:transform .2s}
.page-next:hover{transform:translateY(-2px);background:var(--bronze-soft);border-color:var(--bronze-soft);box-shadow:0 12px 30px rgba(0,0,0,.3)}
.page-next:hover b{transform:translateX(4px)}
.page-next:focus-visible{outline:2px solid #f0e7d3;outline-offset:4px}
.page-end{margin-left:auto;align-self:center;color:#9e9c90;font:7px var(--mono);letter-spacing:.14em}
.page-start{color:#96968a;font:7px var(--mono);letter-spacing:.13em}
.outcome-stamp:before,.outcome-stamp:after{content:"";position:absolute;inset:14px;border:1px solid rgba(180,154,112,.27);border-radius:50%}
.outcome-stamp:after{inset:31px;border-color:rgba(180,169,141,.3)}
.outcome-stamp>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:12px;color:#b4aa91;font:6px var(--mono);letter-spacing:.16em;text-align:center}
.outcome-stamp b{display:grid;width:54px;height:54px;place-items:center;border:1px solid var(--bronze);border-radius:50%;color:#d6c9aa;font:28px var(--serif)}
.closing{display:flex;align-items:center;justify-content:space-between;gap:60px;padding-top:80px;padding-bottom:80px;background:linear-gradient(115deg,#34352e,#232520 68%,#171916)}
.closing-copy{max-width:760px}
.closing h2{margin-bottom:18px}
.closing-copy>p:last-child{max-width:570px;margin:0;color:#cac8bf;font-size:12px;line-height:1.85}
.button-outline{flex:none;border:1px solid rgba(180,154,112,.59);color:var(--paper)}
.button-outline:hover{border-color:var(--bronze);background:rgba(180,154,112,.12)}
.site-footer{min-height:62px;padding:15px clamp(28px,6.5vw,100px);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#96968a;font:7px var(--mono);letter-spacing:.12em}
.site-footer i{color:var(--bronze);font-style:normal}
.footer-brand{text-decoration:none;color:#cac8be}
.footer-brand span{margin-left:5px;color:var(--bronze)}
@media(max-width:1050px){.site-header{gap:22px;padding-inline:4vw}.site-nav{gap:15px}.site-nav a{font-size:7px}.hero{padding-inline:7vw}.challenge{grid-template-columns:1fr;gap:44px}.section-heading{max-width:770px}.method-intro{column-gap:40px}.audience{grid-template-columns:.8fr 1.2fr;gap:36px}.assessment-detail{gap:30px}}
@media(max-width:760px){
  html{scroll-padding-top:116px}
  .site-header{min-height:102px;padding:12px 6% 9px;grid-template-columns:1fr auto;grid-template-rows:38px 28px;gap:7px 16px}
  .wordmark{grid-column:1;grid-row:1}.header-link{grid-column:2;grid-row:1;font-size:7px}.site-nav{grid-column:1/-1;grid-row:2;gap:0;overflow-x:auto;scrollbar-width:none;padding-bottom:3px}.site-nav::-webkit-scrollbar{display:none}.site-nav a{flex:none;margin-right:17px;padding-right:17px;border-right:1px solid rgba(180,154,112,.3);font-size:6px}.site-nav a:last-child{border:0}.journey-progress{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;width:100%;padding-bottom:0;overflow:hidden}.journey-progress .progress-count{font-size:6px}.journey-progress .progress-name{font-size:8px}.journey-progress .progress-track{height:2px}
  .section-shell{padding:78px 7%}
  .hero{min-height:690px;align-items:flex-start;padding-top:96px;padding-bottom:78px;scroll-margin-top:102px}.hero-image{object-position:61% center}.hero-art:after{background:linear-gradient(90deg,rgba(18,19,16,.92),rgba(18,19,16,.72) 53%,rgba(18,19,16,.34)),linear-gradient(0deg,rgba(18,19,16,.58),transparent 50%)}.hero-art figcaption{right:7%;bottom:18px;font-size:6px}
  .hero h1{max-width:620px;font-size:clamp(44px,11vw,66px)}.hero-lede{font-size:13px}.hero-audience{font-size:9px}.hero-index{right:7%;bottom:22px}
  .model-frame{padding:15px 14px 0}.model-foot{margin-inline:-14px;padding-inline:14px}.model-body{grid-template-columns:.92fr 1.08fr;gap:10px;padding-block:16px}.rail-step{min-height:39px;font-size:7px}.record-row{gap:6px}.record-row b{font-size:6px}.record-row span{font-size:5px}
  .challenge{gap:32px}.section-heading h2,.method-intro h2,.fit-copy h2,.outcomes h2,.closing h2{font-size:clamp(36px,9vw,52px)}.section-intro{font-size:12px}.question-card{min-height:155px;padding:17px 14px}.question-card h3{margin-top:19px;font-size:18px}.question-card p{font-size:8px}.section-bridge{margin-top:32px}.section-bridge p{font-size:15px}.work-row{grid-template-columns:28px 1fr}.work-row h3{font-size:18px}.work-row p{font-size:9px}.chapter-next{margin-top:34px}
  .method-intro{display:block;margin-bottom:58px}.method-intro .eyebrow{margin-bottom:18px}.method-intro .section-intro{margin-top:18px}.method-path{grid-template-columns:1fr;gap:0;padding:0 0 0 4px}.method-path:before{top:6px;bottom:20px;left:13px;right:auto;width:1px;height:auto;background:linear-gradient(var(--bronze),#867e68)}.path-step{min-height:94px;padding:0 0 20px 48px}.path-step>span{top:0;left:0}.path-step h3{font-size:17px}.path-step p{max-width:400px;font-size:9px}.method-note{margin-top:28px}.disciplines-heading,.reporting-heading{display:block}.disciplines-heading h2,.reporting-heading h2{margin-bottom:16px}.disciplines-heading .section-intro,.reporting-heading .section-intro{margin-top:14px}.architecture{grid-template-columns:1fr;gap:35px}.architecture-heading h2{margin-bottom:15px}
  .audience{display:block}.audience-list{margin-top:30px}.audience-row{grid-template-columns:28px 1fr;gap:12px;padding:19px 0}.audience-side{display:none}.audience-row h3{font-size:18px}.audience-row p{font-size:9px}
  .gic-grid{grid-template-columns:1fr}.gic-step{min-height:0;padding:18px 0 22px}.gic-step+.gic-step{padding-left:0;border-left:0;border-top:1px solid rgba(180,154,112,.22)}.gic-step h3{max-width:400px;margin:20px 0 8px;font-size:21px}.gic-step p{font-size:9px}.lenses-heading{display:block}.lenses-heading h3{margin-top:12px;font-size:20px}.lens-grid{grid-template-columns:1fr 1fr}.lens-grid>div{min-height:90px;padding:13px 12px}.lens-grid p{font-size:8px}.services-heading,.practice-intro{display:block}.services-heading .section-intro,.practice-intro .section-intro{margin-top:17px}.service-stages{grid-template-columns:1fr}.service-stage{min-height:205px;padding:20px}.service-stage h3{margin-top:28px;font-size:21px}.service-stage p{font-size:9px}.service-stage small{right:20px;bottom:17px}.role-views{grid-template-columns:1fr;gap:12px}.role-views>div{display:grid;grid-template-columns:130px 1fr;gap:10px;align-items:start}.role-views p{margin:0}.practice-flow{grid-template-columns:1fr 1fr}.practice-flow article{min-height:175px;padding:18px 14px 18px 0}.practice-flow article+article{padding-left:14px}.practice-flow article:nth-child(3){padding-left:0;border-left:0;border-top:1px solid rgba(180,154,112,.22)}.practice-flow article:nth-child(4){border-top:1px solid rgba(180,154,112,.22)}.practice-flow h3{margin-top:20px;font-size:17px}.practice-flow p{font-size:8px}.contract-path{grid-template-columns:1fr 1fr}.contract-path article{min-height:135px;padding:17px 12px 16px 0}.contract-path article+article{padding-left:12px}.contract-path article:nth-child(3),.contract-path article:nth-child(5){padding-left:0;border-left:0;border-top:1px solid rgba(180,154,112,.22)}.contract-path article:nth-child(4){border-top:1px solid rgba(180,154,112,.22)}.contract-path article>span{margin-bottom:13px}.reporting-example{padding:19px 16px}.reporting-example>div:first-child{display:block}.reporting-example h3{font-size:20px}.reporting-example>div:first-child>p:last-child{margin-top:10px}.reporting-example .practice-flow article:nth-child(3){border-top:1px solid rgba(180,154,112,.22)}.assessment-detail{grid-template-columns:1fr;gap:26px}.assessment-outcomes{grid-template-columns:1fr;gap:17px}.assessment-outcomes p{max-width:450px;font-size:9px}.assessment-outcomes span{display:inline-block;margin:0 10px 0 0}
  .firm-fit{grid-template-columns:1fr;gap:40px}.integration-note{font-size:7px}.standard-row{min-height:66px}.page-controls{align-items:stretch}.page-next{min-width:0;width:min(100%,340px);min-height:58px;padding:11px 14px}.page-next strong{font-size:11px}
  .outcomes{grid-template-columns:1fr;gap:45px}.closing{align-items:flex-start;flex-direction:column;gap:30px}.closing .button{min-height:44px}.site-footer{align-items:flex-start;flex-direction:column;gap:10px;padding:18px 7%;font-size:6px}
}
@media(max-width:420px){.wordmark-name{font-size:9px}.mark{width:28px;height:28px}.header-link{padding-bottom:7px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.button{min-height:46px}.question-grid{grid-template-columns:1fr}.question-card{min-height:140px}.model-body{grid-template-columns:1fr}.model-rail{display:grid;grid-template-columns:1fr 1fr;column-gap:10px}.model-rail:before{display:none}.rail-step{min-height:33px}.rail-step:before{left:-15px}.model-record{padding:12px}.record-row{padding:8px 0}.section-bridge{align-items:flex-start}.bridge-line{flex:none;margin-top:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
