/* Editorial pacing and an illustrated decision brief for the expanded preview. */
header{background:#fff}
.nav{min-height:140px;gap:24px}
body.home .nav .brand img,body.subpage .nav .brand img{width:clamp(190px,18vw,240px);height:auto}
.footrow .brand img{width:200px;height:auto}
.process-tab:focus:not(:focus-visible){outline:none}
.process-tab:focus-visible{outline:2px solid #087f98;outline-offset:2px}
.home section{padding-block:82px}
.home #approach{padding-block:83px}
.home #services{padding-top:82px}
.home .sectionhead{margin-bottom:39px}
.home .focus-brief{padding-block:52px}
.home .pillar{padding-top:25px;padding-bottom:27px}
.home .pillar h3{margin-top:14px;margin-bottom:14px}
.home .pillar p{min-height:75px}
.home .pillar a{margin-top:20px}
.home .journey{gap:20px;margin-top:32px}
.home .journey article{background:#f5f9fa;padding:21px 23px 24px;border-top:3px solid #7dbac5}
.home .journey p{margin-bottom:0}
.subpage section{padding-block:76px}
.subpage .page-intro{padding-top:0;padding-bottom:52px}
.subpage .service-grid{margin-top:30px}
.subpage .service-box{min-height:230px}
.subpage .outcome-grid{margin-top:31px}
.subpage .subhero-grid{min-height:425px;padding-top:55px;padding-bottom:55px}
.subpage .subhero-img{box-shadow:15px 15px 0 #0e6372}
.subpage .callout{padding:42px}
.subpage .team-vision{max-width:690px;color:var(--muted);margin:0 0 34px}
.home #approach .process-panel{display:flex;flex-direction:column;min-height:570px}
.home #approach .process-panel[hidden]{display:none}
.home #approach .process-output{margin-top:auto}
.home #consult .consult{display:block}
.home #consult .consult-lead{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}
.home #consult .consult-heading h2{margin:18px 0 24px}
.home #consult .consult-heading p{max-width:600px}
.home #consult .consult-contacts{padding-top:20px}
.home #consult .consult-contacts .small{margin:18px 0 0}
.home #consult .consult form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px;align-items:start;margin-top:38px;padding:40px}
.home #consult .consult form>.form-title,.home #consult .consult form>.form-intro,.home #consult .consult form>.formrow,.home #consult .consult form>.calendar-link,.home #consult .consult form>.calendar-note,.home #consult .consult form>button,.home #consult .consult form>.small,.home #consult .consult form>.status{grid-column:1 / -1}
.home #consult .consult form>.route-preview{grid-column:2;align-self:end;margin-bottom:15px}
.home #consult .consult form>.formrow{gap:26px}
.home #consult .consult form>label textarea{min-height:150px}
.home #consult .consult form>button{max-width:430px;justify-self:start}
.consult.consult-page{display:block}
.consult.consult-page>div:first-child{max-width:850px}
.consult.consult-page form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px;align-items:start;margin-top:38px;padding:40px}
.consult.consult-page form>.form-title,.consult.consult-page form>.form-intro,.consult.consult-page form>.formrow,.consult.consult-page form>.calendar-link,.consult.consult-page form>.calendar-note,.consult.consult-page form>button,.consult.consult-page form>.small,.consult.consult-page form>.status{grid-column:1 / -1}
.consult.consult-page form>.route-preview{grid-column:2;align-self:end;margin-bottom:15px}
.consult.consult-page form>.formrow{gap:26px}
.consult.consult-page form>label textarea{min-height:150px}
.consult.consult-page form>button{max-width:430px;justify-self:start}
.process-cues{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#cadfe4;border:1px solid #cadfe4;list-style:none;margin:27px 0 20px;padding:0}
.process-cues li{background:#fff;border:0;border-top:3px solid #27a5b6;padding:18px 18px 20px;min-height:154px}
.process-cues li:nth-child(2){border-top-color:#168ba4}
.process-cues li:nth-child(3){border-top-color:#0b637b}
.process-cues li:before{content:none}
.process-cues span{display:block;color:#087f98;font-size:10px;font-weight:700;letter-spacing:1.2px}
.process-cues strong{display:block;color:#153f4d;font-size:16px;font-weight:600;line-height:1.3;margin:18px 0 8px}
.process-cues small{display:block;color:#56717a;font-size:12px;line-height:1.5}
.brief-section{padding:0!important;background:#092f3c;color:#fff;overflow:hidden}
.brief-layout{display:grid;grid-template-columns:.78fr 1.22fr;align-items:stretch;min-height:560px}
.brief-copy{padding:72px 58px 67px 0;display:flex;flex-direction:column;justify-content:center}
.brief-copy .eyebrow{color:#8bdbe5}
.brief-copy h2{font-size:clamp(36px,4.4vw,61px);line-height:1.07;margin:26px 0}
.brief-copy p{font-size:16px;color:#c1d7dd;max-width:460px;line-height:1.8}
.brief-copy .textlink{color:#bcf0f1;margin-top:20px;align-self:flex-start}
.brief-board{position:relative;background:linear-gradient(150deg,#0e5263,#073240 70%);padding:45px 0 45px 42px;display:flex;align-items:center}
.brief-board:before{content:"";position:absolute;inset:0;opacity:.28;background-image:linear-gradient(#aedce522 1px,transparent 1px),linear-gradient(90deg,#aedce522 1px,transparent 1px);background-size:42px 42px;pointer-events:none}
.brief-board:after{content:"";position:absolute;width:440px;height:440px;border:1px solid #8ac7cf66;border-radius:50%;right:-175px;top:-110px;box-shadow:0 0 0 64px #8ac7cf11,0 0 0 128px #8ac7cf0b;pointer-events:none}
.brief-paper{position:relative;z-index:1;width:min(100%,650px);background:#f8fbfb;color:#113f4d;box-shadow:23px 26px 0 #03263380;padding:30px 36px 34px}
.paper-top{display:flex;align-items:start;justify-content:space-between;gap:15px;border-bottom:1px solid #bfd8dd;padding-bottom:19px}
.paper-top small{display:block;font-size:10px;letter-spacing:1.5px;color:#0b859a;text-transform:uppercase}
.paper-top strong{display:block;font-size:19px;font-weight:500;margin-top:6px}
.paper-top span{border:1px solid #b6d4d9;padding:8px 10px;font-size:10px;letter-spacing:1px;white-space:nowrap}
.paper-question{font:400 26px/1.3 Georgia,serif;margin:24px 0}
.paper-steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #c9dfe3}
.paper-step{padding:20px 15px;min-height:170px;border-right:1px solid #c9dfe3}
.paper-step:last-child{border:0;background:#e9f5f6}
.paper-step b{display:block;color:#0b91a5;font-size:11px;letter-spacing:1px}
.paper-step h3{font-size:16px;line-height:1.3;margin:21px 0 9px}
.paper-step p{font-size:11px;line-height:1.5;color:#58717a;margin:0}
.paper-bottom{display:flex;gap:14px;align-items:center;margin-top:25px;color:#1f6374;font-size:11px;letter-spacing:.3px}
.paper-bottom:before{content:"";width:48px;height:2px;background:#16a3b2}
.brief-footnote{position:absolute;left:42px;bottom:15px;color:#a7d5dd;font-size:10px;letter-spacing:.5px}
@media(max-width:950px){.brief-layout{grid-template-columns:1fr}.brief-copy{padding:56px 0 35px}.brief-board{padding:25px 25px 55px;min-height:410px}.brief-paper{margin:auto}.brief-footnote{left:25px}}
@media(max-width:600px){.home section,.subpage section{padding-block:58px}.home .focus-brief{padding-block:35px}.home .pillar p{min-height:0}.brief-copy{padding:48px 0 25px}.brief-copy h2{font-size:39px}.brief-board{padding:20px 13px 53px;margin-inline:-22px}.brief-paper{padding:20px 16px 23px;box-shadow:8px 9px 0 #03263380}.paper-question{font-size:22px}.paper-steps{grid-template-columns:1fr}.paper-step{min-height:0;border-right:0;border-bottom:1px solid #c9dfe3;padding:13px}.paper-step h3{margin:5px 0}.paper-bottom{margin-top:16px}.brief-footnote{left:13px}.subpage .subhero-grid{min-height:0}.subpage .service-box{min-height:0}.subpage .callout{padding:30px}}
@media(max-width:700px){.process-cues{grid-template-columns:1fr}.process-cues li{min-height:0;padding:15px 17px}.process-cues strong{margin:8px 0 5px}}
@media(max-width:850px){.home #approach .process-panel{min-height:0}.home #approach .process-output{margin-top:25px}}
@media(max-width:1180px){.nav{min-height:118px}.navlinks{gap:12px}body.home .nav .brand img,body.subpage .nav .brand img{width:185px}}
@media(max-width:850px){.nav{min-height:108px}body.home .nav .brand img,body.subpage .nav .brand img{width:170px}}
@media(max-width:400px){body.home .nav .brand img,body.subpage .nav .brand img{width:150px}}
@media(max-width:850px){.home #consult .consult-lead{grid-template-columns:1fr;gap:20px}.home #consult .consult-contacts{padding-top:0}.home #consult .consult form,.consult.consult-page form{padding:27px}}
@media(max-width:650px){.home #consult .consult form,.consult.consult-page form{grid-template-columns:1fr;gap:0;padding:22px}.home #consult .consult form>*,.consult.consult-page form>*{grid-column:1!important}.home #consult .consult form>.route-preview,.consult.consult-page form>.route-preview{margin-top:0}.home #consult .consult form>.formrow,.consult.consult-page form>.formrow{gap:0}.home #consult .consult form>button,.consult.consult-page form>button{max-width:none;width:100%}}
.extended-team{display:grid;grid-template-columns:1fr 1.2fr;gap:45px;margin-top:34px;padding-top:32px;border-top:1px solid #c8dce1}.extended-team h3{margin:14px 0;font-size:26px}.extended-team p{color:#56717a}.office-chips{display:grid;grid-template-columns:1fr 1fr;gap:10px}.office-chips span{padding:16px 18px;background:#eef6f8;border-left:3px solid #1189a0;font-size:14px}
@media(max-width:1050px){.navlinks{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:25px 30px;border-bottom:1px solid var(--line)}.navlinks.open{display:flex;flex-direction:column;align-items:stretch}.menu{display:block}.home .navlinks>a:not(.btn),.subpage .navlinks>a:not(.btn){display:block;font-size:14px}}
.office-map-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,.72fr);gap:24px;align-items:stretch;margin:34px 0}.office-map{margin:0;background:#073945;min-width:0}.office-map img{display:block;width:100%;height:auto}.office-map figcaption{padding:11px 15px;color:#b9dde1;font-size:11px;line-height:1.5}.office-map figcaption a{text-decoration:underline;text-underline-offset:2px}.office-directory{background:#fff;border:1px solid #c8dce1;padding:21px 25px}.office-directory-heading{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#0a8198;font-weight:700;padding-bottom:14px}.office-entry{border-top:1px solid #d6e6e9;padding:15px 0}.office-entry span,.office-entry strong{display:block}.office-entry span{color:#62808a;font-size:11px;text-transform:uppercase;letter-spacing:.8px}.office-entry strong{font-size:21px;font-weight:600;line-height:1.25;margin-top:5px}
.careers-simple{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:start}.careers-simple p{font-size:18px;line-height:1.75;color:#56717a;max-width:590px}.careers-apply{display:flex;justify-content:space-between;align-items:center;gap:50px}.careers-apply p{color:#56717a;max-width:610px;margin-bottom:0}.careers-apply .btn{flex:none}
.careers-page .subhero-grid{min-height:340px;padding-top:45px;padding-bottom:55px}.careers-page section{padding-block:72px}
@media(max-width:1000px){.office-map-layout{grid-template-columns:1fr}.office-directory{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.office-directory-heading{grid-column:1/-1}}
@media(max-width:700px){.extended-team,.careers-simple{grid-template-columns:1fr;gap:22px}.office-chips,.office-directory{grid-template-columns:1fr}.careers-apply{display:block}.careers-apply .btn{margin-top:25px}}
@media(max-width:700px){.careers-page section{padding-block:50px}.careers-page .subhero-grid{padding-top:40px;padding-bottom:45px}}
@media(max-width:480px){.office-map figcaption{font-size:10px}.office-entry strong{font-size:19px}}
