@font-face{font-family:Barlow;src:url('assets/barlow-condensed-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/manrope-600.ttf') format('truetype');font-style:normal;font-weight:600 800;font-display:swap}
:root{--paper:#f3f2eb;--ink:#172b2b;--muted:#6e7870;--accent:#deed79;--line:#cccec4;--sans:Manrope,Arial,sans-serif;--display:Barlow,'Arial Narrow',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:600}h2{font-family:var(--display);font-size:clamp(44px,4.6vw,72px);line-height:1.02;letter-spacing:-.025em}p{max-width:65ch}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #718322;outline-offset:6px}::selection{background:var(--accent);color:var(--ink)}.skip-link{position:fixed;left:20px;top:-100px;background:var(--accent);padding:12px;z-index:10}.skip-link:focus{top:10px}.header{min-height:112px;margin:0 4.3%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:14px;font-size:18px;font-weight:600;line-height:1.2;letter-spacing:-.5px}.brand-mark{width:39px;height:45px;flex-shrink:0}.brand-sub{display:block;font-size:8px;letter-spacing:1.8px;margin-top:9px}.header nav{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600}.header nav>a:not(.nav-cta){position:relative}.header nav>a:not(.nav-cta):after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--ink);transition:width .2s}.header nav>a:hover:after{width:100%}.nav-cta{background:var(--ink);color:var(--paper);padding:13px 19px;min-width:124px;display:flex;justify-content:space-between;gap:30px}.nav-cta:hover{background:#3d5150}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.07fr 1fr;gap:3.5%;margin:35px 4.3% 0}.hero-copy{padding-top:10px;padding-bottom:38px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.65px;line-height:1.4;display:flex;align-items:center;gap:18px}.eyebrow>span:first-child:not(.status-dot){color:var(--muted)}.status-dot{width:7px;height:7px;background:var(--ink);border-radius:50%;display:inline-block}.hero h1{font-family:var(--display);font-size:clamp(70px,7.6vw,122px);line-height:.91;letter-spacing:-.025em;margin:27px 0 28px}.hero h1>span{color:var(--muted)}.hero-bottom{max-width:400px}.hero-bottom p{font-size:13px;line-height:1.75;max-width:365px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:15px 21px;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button span{font-size:21px;line-height:1}.button-dark{background:var(--ink);color:var(--paper);margin-top:24px}.button:hover{background:#354947;transform:translateY(-2px)}.hero-visual{position:relative;overflow:hidden;min-height:600px;background:var(--ink);margin-bottom:34px}.hero-visual>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:53% center;filter:saturate(.68) brightness(.8)}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,26,27,.14),transparent 50%,rgba(9,26,27,.55));pointer-events:none}.image-topline{position:absolute;top:26px;left:26px;right:26px;display:flex;justify-content:space-between;gap:20px;color:white;font-size:8px;letter-spacing:1.3px;z-index:1}.route-overlay{position:absolute;width:100%;height:100%;color:var(--accent);opacity:.9;z-index:1}.image-caption{position:absolute;bottom:30px;left:30px;right:30px;display:flex;align-items:end;justify-content:space-between;color:var(--paper);z-index:2}.image-caption>span{font-size:34px;line-height:1.07;font-family:var(--display)}.image-caption a{display:flex;align-items:center;justify-content:center;width:51px;height:51px;background:var(--accent);color:var(--ink);font-size:25px}.image-caption a:hover{background:white}.credentials{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 4.3%;border-block:1px solid var(--line);font-size:12px}.credentials>span:first-child{font-size:9px;letter-spacing:1.5px;font-weight:600}.separator{color:#9a9f93}.section-wrap{padding:100px 4.3%}.intro{display:grid;grid-template-columns:1fr 2.15fr;gap:50px}.section-label{align-self:start;padding-top:9px}.muted{color:var(--muted)}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:33px;font-size:14px}.intro-columns>p{font-size:17px;line-height:1.65}.text-link{display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid var(--ink);padding:0 0 7px;font-size:12px;font-weight:600;margin-top:26px}.text-link span{font-size:19px}.text-link:hover{gap:43px}.consultant-signoff{display:flex;align-items:center;gap:15px;margin-top:30px}.initials{width:43px;height:43px;border:1px solid #b7bcae;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-size:18px}.consultant-signoff strong{display:block;font-size:12px}.consultant-signoff div>span{font-size:10px;color:var(--muted)}.services{background:#e8eae1;padding-top:80px;padding-bottom:85px}.section-heading{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:50px;align-items:start;margin-bottom:50px}.section-heading>.eyebrow{padding-top:10px}.section-heading>p:last-child{font-size:13px;max-width:290px;padding-top:11px;justify-self:end}.service-layout{display:grid;grid-template-columns:1fr 1.08fr;gap:8%}.plan-figure{align-self:start}.plan-image{position:relative;overflow:hidden;background:#f8f8f2;padding:28px}.plan-image img{width:100%;aspect-ratio:1 / 1.07;object-fit:cover;mix-blend-mode:multiply;filter:saturate(.5);transition:transform .7s}.plan-image:hover img{transform:scale(1.04)}.drawing-tag{position:absolute;bottom:20px;left:20px;background:var(--paper);padding:14px 18px;font-size:10px;line-height:1.5;font-weight:600;letter-spacing:1.2px;border-left:3px solid var(--ink)}figcaption{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid #bfc6b7;font-size:9px;font-weight:600;letter-spacing:1.5px}figcaption>span:last-child{font-size:22px}.service-list{border-top:1px solid #aeb8a7}details{border-bottom:1px solid #b9c1b1}summary{list-style:none;display:grid;grid-template-columns:30px 1fr 20px;gap:14px;align-items:start;padding:23px 0;cursor:pointer}summary::-webkit-details-marker{display:none}.service-number{font-size:10px;padding-top:7px;color:#647164}summary h3{font-size:23px;line-height:1.25;letter-spacing:-.7px}.expand{position:relative;width:18px;height:18px;margin-top:6px}.expand:before,.expand:after{content:'';position:absolute;top:8px;left:2px;width:14px;height:1px;background:var(--ink);transition:transform .2s}.expand:after{transform:rotate(90deg)}details[open] .expand:after{transform:rotate(0)}summary:hover h3{color:#637046}.service-content{padding:0 25px 24px 44px;font-size:13px}.service-content a{display:inline-block;font-weight:600;font-size:10px;margin-top:17px;border-bottom:1px solid #adb79e;padding-bottom:4px}.service-content a span{margin-left:18px}.all-services{margin-left:44px}.experience{background:var(--ink);color:var(--paper)}.experience-intro{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:35px;align-items:start}.experience .eyebrow{color:var(--accent);padding-top:10px}.experience .eyebrow>span:first-child{color:#a4b49c}.experience-intro>p:last-child{font-size:13px;color:#c4cec3;padding-top:10px;max-width:280px;justify-self:end}.project-list{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid #53625a;border-bottom:1px solid #53625a}.project-list article{padding:30px 30px 25px 0;min-height:247px;display:flex;flex-direction:column}.project-list article+article{padding-left:30px;border-left:1px solid #53625a}.project-type{font-size:9px;letter-spacing:1.4px;color:#b6c2b3}.project-list h3{font-family:var(--display);font-size:43px;line-height:1.05;letter-spacing:-.5px;margin-top:25px;margin-bottom:30px}.project-foot{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-top:auto;color:#c7d0c2}.project-foot>span{font-size:28px;color:var(--accent)}.public-sector{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:35px}.public-sector p{font-size:8px;letter-spacing:1.3px;color:#b6c2b3}.public-sector>span{font-size:13px;font-weight:600}.experience-note{font-size:10px;margin-top:26px;color:#adbdad}.approach{display:grid;grid-template-columns:1fr 1fr;gap:12%}.approach h2{margin-top:25px}.approach>div>p:last-child{font-size:14px;max-width:380px;margin-top:26px}.principles{list-style:none;padding:0;margin:0}.principles li{display:flex;gap:27px;padding:26px 0;border-bottom:1px solid var(--line)}.principles li:first-child{padding-top:0}.principles li>span{font-size:10px;color:var(--muted);padding-top:6px}.principles h3{font-size:22px;letter-spacing:-.5px}.principles p{font-size:13px;margin-top:9px;max-width:335px}.contact{background:#cbd5c7;padding-top:48px;padding-bottom:48px;position:relative;overflow:hidden}.contact-top{display:flex;justify-content:space-between;align-items:start}.contact .eyebrow>span:first-child{color:#55603b}.contact-location{font-size:9px;line-height:1.5;letter-spacing:1.1px}.contact-main{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:45px}.contact h2{font-size:clamp(70px,9vw,145px);line-height:.94;letter-spacing:-.025em}.contact h2 span{color:#526652}.contact-arrow{display:flex;align-items:center;justify-content:center;width:122px;height:122px;border:1px solid #788b77;border-radius:50%;font-size:74px;line-height:1;flex-shrink:0;transition:background .2s,transform .2s}.contact-arrow:hover{background:var(--ink);color:var(--accent);transform:rotate(45deg)}.contact-bottom{border-top:1px solid #a3b29e;margin-top:42px;padding-top:30px;display:flex;justify-content:space-between;align-items:end;gap:35px}.contact-bottom>p{max-width:345px;font-size:13px}.contact-bottom>div{display:flex;flex-direction:column;align-items:start}.phone{font-family:var(--display);font-size:37px;line-height:1.2}.email{font-size:13px;margin-top:6px;border-bottom:1px solid transparent}.email:hover{border-bottom-color:var(--ink)}.email>span{margin-left:25px}.footer{padding-top:54px;padding-bottom:24px}.footer-top{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:50px;padding-bottom:42px}.footer-top .brand{align-self:start}.footer-top>p{font-family:var(--display);font-size:30px;line-height:1.1}.footer address{font-style:normal;font-size:12px;justify-self:end}.footer address span{display:block;margin-top:8px;font-size:10px;color:var(--muted)}.footer-bottom{border-top:1px solid var(--line);padding-top:23px;display:flex;justify-content:space-between;gap:25px;font-size:9px;color:#58665b}.footer-bottom nav{display:flex;gap:24px}.footer-bottom a:hover{text-decoration:underline}
@media(min-width:1500px){body{max-width:1800px;margin:auto}.hero-visual{min-height:740px}.hero h1{font-size:128px}}
@media(max-width:1050px){.header nav{gap:22px}.hero{gap:4%;grid-template-columns:1fr 1fr}.hero h1{font-size:8.3vw}.hero-visual{min-height:570px}.eyebrow{font-size:9px;letter-spacing:1.2px;gap:12px}.hero-bottom p{font-size:12px}.intro{grid-template-columns:.7fr 2fr;gap:30px}.intro-columns{gap:25px}.section-heading{grid-template-columns:.7fr 1.2fr 1fr;gap:25px}.section-wrap{padding-top:75px;padding-bottom:75px}.service-layout{gap:5%}.experience-intro{grid-template-columns:.7fr 1.3fr 1fr;gap:25px}.experience h2{font-size:45px}.credentials{font-size:10px;gap:10px}.credentials>span:first-child{font-size:8px}.public-sector{gap:15px}.public-sector>span{font-size:11px}.project-list h3{font-size:36px}.contact{padding-top:40px;padding-bottom:40px}.contact h2{font-size:10vw}.footer{padding-top:45px;padding-bottom:24px}.email{font-size:11px}.email>span{margin-left:12px}}
@media(max-width:760px){html{scroll-padding-top:15px}.header{min-height:88px;margin:0 6%;position:relative}.brand{font-size:15px;gap:10px}.brand-mark{width:32px;height:37px}.brand-sub{font-size:6px;letter-spacing:1.3px;margin-top:7px}.menu-toggle{display:flex;align-items:center;gap:15px;padding:10px 0 10px 10px;border:0;background:none;font-size:12px;color:var(--ink)}.menu-toggle span{font-size:25px;line-height:1}.header nav{display:none;position:absolute;top:87px;left:-6.82%;right:-6.82%;z-index:5;background:var(--paper);padding:22px 6%;border-bottom:1px solid var(--line);box-shadow:0 12px 15px #172b2b12;align-items:stretch;gap:0}.header nav.is-open{display:flex;flex-direction:column}.header nav>a{padding:15px 0;font-size:15px}.header nav>a.nav-cta{padding:15px 18px;margin-top:12px}.hero{display:flex;flex-direction:column;margin:25px 6% 0;gap:0}.hero-copy{padding:0 0 30px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero h1{font-size:clamp(65px,14vw,105px);margin:23px 0;line-height:.93}.hero-bottom{max-width:none;display:flex;flex-direction:column;align-items:start}.hero-bottom p{font-size:13px;max-width:380px}.button{padding:15px 18px}.button-dark{margin-top:20px}.hero-visual{min-height:360px;margin-bottom:26px}.hero-visual>img{object-position:center 50%}.route-overlay{width:70%;right:0}.image-topline{top:20px;left:20px;right:20px;font-size:7px}.image-caption{left:20px;right:20px;bottom:20px}.image-caption>span{font-size:31px}.credentials{display:grid;grid-template-columns:1fr 1fr;padding:22px 6%;gap:10px 20px;font-size:10px}.credentials>span:first-child{grid-column:1 / -1;margin-bottom:6px}.credentials .separator{display:none}.credentials p:last-child{grid-column:1 / -1}.section-wrap{padding:58px 6%}.intro{display:block}.intro-content{margin-top:25px}h2{font-size:46px}.intro-columns{gap:20px;margin-top:25px}.intro-columns>p{font-size:15px}.intro-columns>div{font-size:12px}.text-link{font-size:11px;gap:20px}.consultant-signoff{margin-top:25px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{margin-top:23px}.section-heading>p:last-child{max-width:360px;margin-top:18px;padding:0}.service-layout{display:flex;flex-direction:column;gap:32px}.plan-figure{width:100%}.plan-image{padding:20px}.plan-image img{aspect-ratio:1.35;object-position:center}.drawing-tag{font-size:8px;padding:10px 12px;bottom:14px;left:14px}.service-list{width:100%}summary{padding:21px 0}summary h3{font-size:21px}.experience-intro{display:block}.experience h2{margin-top:25px;font-size:46px}.experience-intro>p:last-child{max-width:370px;margin-top:20px;padding:0}.project-list{grid-template-columns:1fr;margin-top:30px}.project-list article{padding:23px 0;min-height:0;position:relative}.project-list article+article{padding:23px 0;border-left:0;border-top:1px solid #53625a}.project-list h3{font-size:37px;margin:17px 0 20px}.project-list h3 br{display:none}.project-foot>span{position:absolute;right:5px;top:48px}.project-foot{font-size:10px}.public-sector{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:26px}.public-sector>p{grid-column:1 / -1}.public-sector>span:last-child{grid-column:1 / -1}.experience-note{font-size:9px}.approach{display:block}.approach>div>p:last-child{font-size:13px}.principles{margin-top:36px}.principles li{gap:23px}.principles h3{font-size:21px}.contact{padding-top:30px;padding-bottom:32px}.contact-location{font-size:7px;letter-spacing:.6px}.contact-main{margin-top:32px;gap:15px}.contact h2{font-size:12vw;line-height:1}.contact-arrow{height:62px;width:62px;font-size:38px}.contact-bottom{display:block;margin-top:30px;padding-top:22px}.contact-bottom>p{font-size:12px;max-width:300px}.contact-bottom>div{margin-top:23px}.phone{font-size:35px}.email{font-size:11px;overflow-wrap:anywhere}.email>span{margin-left:8px}.footer{padding-top:35px;padding-bottom:22px}.footer-top{grid-template-columns:1fr 1fr;gap:30px 15px;padding-bottom:30px}.footer-top>p{font-size:26px;justify-self:end}.footer address{grid-column:1 / -1;justify-self:start;font-size:11px}.footer address span{font-size:10px}.footer-bottom{flex-wrap:wrap;gap:18px;font-size:9px}.footer-bottom>span{width:100%}.footer-bottom nav{gap:18px}.footer-bottom>a{margin-left:auto}}
@media(max-width:390px){.hero h1{font-size:64px}.intro-columns{grid-template-columns:1fr}.contact-arrow{height:50px;width:50px;font-size:32px}.footer-top{grid-template-columns:1fr}.footer-top>p{justify-self:start}.email{font-size:10px}.credentials{font-size:9px}.footer-bottom>a{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* A quieter, human-scale counterpoint to the aerial and technical plan. */
.movement-image{margin:0;background:var(--paper);padding:64px 4.3% 54px}.movement-image>img{width:100%;height:clamp(320px,40vw,560px);object-fit:cover;object-position:center 58%}.movement-image figcaption{border-bottom:0;padding:17px 0 0}.movement-image .image-disclosure{font-family:var(--sans);font-size:9px;letter-spacing:.3px;font-weight:400;color:#59675b}.contact .eyebrow>span:first-child{color:#526652}.contact-arrow:hover{color:#cbd5c7}
@media(max-width:760px){.movement-image{padding:35px 6%}.movement-image>img{height:360px;object-position:48% center}.movement-image figcaption{align-items:start;gap:14px;font-size:8px}.movement-image .image-disclosure{font-size:8px;max-width:140px;text-align:right}}

/* About — portrait-led editorial layout. */
.about-page .eyebrow{font-size:12px;letter-spacing:1.3px}.about-page .header nav{font-size:14px}.header a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px}.about-hero{padding-top:58px;padding-bottom:54px}.about-headline{display:grid;grid-template-columns:1.65fr 1fr;gap:7%;align-items:end;margin-top:28px}.about-headline h1{font:600 clamp(64px,7.2vw,112px)/.98 var(--display);letter-spacing:-.025em}.about-headline h1 span{color:var(--muted)}.about-headline>p{font-size:17px;max-width:350px;padding-bottom:5px}.profile{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:0;padding-bottom:90px;align-items:start}.portrait img{width:100%;height:680px;object-fit:cover;object-position:center 34%}.portrait figcaption{align-items:start;gap:20px;font-size:12px;letter-spacing:1px}.portrait figcaption>span:last-child{font:400 12px/1.6 var(--sans);letter-spacing:0;text-align:right}.profile-copy{padding-top:24px}.profile-copy h2{font-size:clamp(44px,4.5vw,66px);margin:25px 0 28px}.profile-copy>p:not(.eyebrow){font-size:16px;margin-bottom:20px}.profile-credentials{border-top:1px solid var(--line);padding-top:20px;margin-top:27px;display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:2px 12px}.profile-credentials strong{font-size:22px}.profile-credentials>span,.profile-credentials>p{font-size:13px}.profile-credentials>p{grid-column:1 / -1;color:var(--muted)}.about-page .text-link{font-size:14px}.about-scope{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:.65fr 1.25fr 1.2fr;gap:5%;padding-block:85px}.about-scope>.eyebrow{color:#cbd5c7;padding-top:6px}.about-scope .eyebrow>span:first-child{color:#a9b9a9}.about-scope h2{font-size:clamp(44px,4.4vw,65px)}.scope-lead{margin-top:28px;font-size:17px;color:#cbd5c7}.scope-detail>p{font-size:16px;margin-bottom:20px}.scope-detail .text-link{border-color:#a9b9a9}.principles-heading{display:grid;grid-template-columns:1fr 2.15fr;gap:50px;align-items:start;margin-bottom:48px}.principles-heading>.eyebrow{padding-top:8px}.principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}.principle-grid article{border-top:1px solid var(--line);padding:26px 0 36px;display:grid;grid-template-columns:40px 1fr;gap:12px}.principle-index{font-size:13px;color:var(--muted);padding-top:6px}.principle-grid h3{font-size:25px;line-height:1.3;letter-spacing:-.6px}.principle-grid article>p{grid-column:2;font-size:16px;max-width:440px}.about-page .contact-bottom>p{font-size:16px;max-width:490px}.about-page .contact-bottom{align-items:center}.about-page .contact-location{font-size:12px}.about-page .email{font-size:14px}
@media(max-width:1050px){.about-headline{grid-template-columns:1.5fr 1fr;gap:5%}.about-headline h1{font-size:7.8vw}.profile{gap:6%}.portrait img{height:640px}.profile-copy h2{font-size:46px}.about-scope{grid-template-columns:1fr 1fr;gap:30px}.about-scope>.eyebrow{grid-column:1 / -1}.principle-grid{gap:0 35px}.about-page .contact-bottom{align-items:start}.about-page .contact-bottom>p{max-width:400px}.about-page .email{font-size:12px}}
@media(max-width:760px){.about-hero{padding-top:35px;padding-bottom:30px}.about-headline{display:block;margin-top:22px}.about-headline h1{font-size:clamp(49px,10.5vw,76px)}.about-headline>p{font-size:16px;margin-top:24px;max-width:480px}.about-page .eyebrow{font-size:11px;letter-spacing:1px}.profile{grid-template-columns:1fr;gap:30px;padding-bottom:55px}.portrait img{height:auto;aspect-ratio:4 / 4.8;object-position:center 29%}.portrait figcaption{font-size:11px;letter-spacing:.8px}.portrait figcaption>span:last-child{font-size:11px}.profile-copy{padding-top:0}.profile-copy h2{font-size:46px;margin-top:20px}.profile-copy>p:not(.eyebrow){font-size:16px}.about-scope{display:block;padding-block:52px}.about-scope h2{margin-top:24px;font-size:48px}.scope-lead{margin-top:23px}.scope-detail{margin-top:30px}.principles-heading{display:block;margin-bottom:32px}.principles-heading h2{margin-top:23px}.principle-grid{grid-template-columns:1fr;gap:0}.principle-grid h3{font-size:23px}.principle-grid article{grid-template-columns:26px 1fr;gap:10px}.about-page .contact-location{font-size:9px}.about-page .contact-bottom>p{font-size:16px}.about-page .contact h2{font-size:14vw}.about-page .email{font-size:12px;word-break:break-word}.about-page .profile-credentials>span{font-size:12px}.about-page .contact .eyebrow{font-size:10px}}

/* Services — clear directory and open, readable service descriptions. */
.services-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:9%;padding-top:58px;padding-bottom:50px;align-items:center}.services-hero h1{font:600 clamp(72px,8vw,122px)/.95 var(--display);letter-spacing:-.025em;margin:30px 0}.services-hero h1 span{color:var(--muted)}.services-hero>div>p:not(.eyebrow){font-size:17px;max-width:410px}.services-hero figure{background:#e8eae1;padding:22px}.services-hero img{width:100%;height:390px;object-fit:cover;mix-blend-mode:multiply;filter:saturate(.55)}.services-hero figcaption{font-size:12px;border:0;padding-bottom:0;letter-spacing:1px}.service-region{padding:24px 4.3%;display:flex;justify-content:space-between;gap:25px;border-block:1px solid var(--line);font-size:14px}.service-region>span{color:#59675b}.services-body{display:grid;grid-template-columns:1fr 2fr;gap:9%;padding-top:70px}.services-index{align-self:start;position:sticky;top:30px}.services-index nav{margin-top:25px;border-top:1px solid var(--line)}.services-index nav a{display:grid;grid-template-columns:20px 1fr 15px;gap:12px;font-size:14px;line-height:1.5;padding:17px 0;border-bottom:1px solid var(--line)}.services-index nav a:hover{color:#65764b}.services-index nav a>span{font-size:12px;color:var(--muted)}.services-index>p:not(.eyebrow){font-size:14px;margin-top:30px}.services-index>.text-link{margin-top:10px}.expertise-row{display:grid;grid-template-columns:40px 1fr;gap:20px;border-top:1px solid var(--line);padding:40px 0 55px;scroll-margin-top:30px}.expertise-number{font-size:12px;color:var(--muted);padding-top:9px}.expertise-row h2{font-size:clamp(40px,4.2vw,60px)}.expertise-row p{font-size:16px;max-width:590px;margin-top:20px}.expertise-row .service-lead{font-size:19px;font-weight:600;margin-top:25px}.expertise-row .service-scope{font-size:13px;color:#526652;border-left:2px solid #a8b79e;padding-left:17px;line-height:1.8;margin-top:25px}.service-support{display:grid;grid-template-columns:.7fr 1.5fr 1fr;gap:5%;background:var(--ink);color:var(--paper)}.service-support>.eyebrow{color:#cbd5c7}.service-support h2{font-size:clamp(42px,4.4vw,65px)}.service-support h2 span{color:#acbba8}.service-support>div>p{font-size:16px;margin-bottom:20px}.service-support .text-link{border-color:#a8b79e}
@media(max-width:1050px){.services-hero{gap:5%}.services-hero h1{font-size:9vw}.services-hero img{height:350px}.services-body{gap:5%;grid-template-columns:1fr 1.8fr}.service-support{grid-template-columns:1fr 1fr}.service-support>.eyebrow{grid-column:1 / -1}.service-region{font-size:12px}}
@media(max-width:760px){.services-hero{display:block;padding-top:34px;padding-bottom:32px}.services-hero h1{font-size:80px;margin:25px 0}.services-hero>div>p:not(.eyebrow){font-size:16px}.services-hero figure{margin-top:32px;padding:16px}.services-hero img{height:290px}.services-hero figcaption{font-size:10px}.service-region{padding:22px 6%;display:block;font-size:13px}.service-region>span{display:block;margin-top:5px;font-size:12px}.services-body{display:block;padding-top:40px}.services-index{position:static;margin-bottom:45px}.services-index nav a{padding:15px 0}.services-index>p:not(.eyebrow),.services-index>.text-link{display:none}.expertise-row{grid-template-columns:23px 1fr;gap:12px;padding:30px 0 40px}.expertise-row h2{font-size:40px}.expertise-row .service-lead{font-size:18px}.expertise-row p{font-size:16px}.service-support{display:block}.service-support h2{margin:24px 0;font-size:46px}.services-page .contact-location{max-width:130px;text-align:right}.services-page .contact-top>.eyebrow{max-width:180px}}

/* Vector arrows cannot switch to a platform emoji font. */
.arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex-shrink:0;overflow:visible}.nav-cta .arrow-icon{width:16px;height:16px}.contact-arrow .arrow-icon{width:62%;height:62%;stroke-width:1.25}.image-caption a .arrow-icon{width:24px;height:24px}.services-index nav a>.arrow-icon{width:14px;height:14px}.footer-bottom .arrow-icon{width:12px;height:12px}

/* Prior-company attribution is part of each project entry, not just a footnote. */
.experience-intro>p:last-child{font-size:15px;max-width:340px}.project-attribution{font-size:14px;line-height:1.65;color:#c4cec3;margin-bottom:23px}.project-attribution strong{color:var(--paper);font-weight:600}.experience-note{font-size:13px;line-height:1.7;max-width:100ch}.experience .eyebrow{font-size:11px;letter-spacing:1px}

/* Keep the complete desktop introduction within a typical laptop viewport. */
@media(min-width:761px){
 body:not(.about-page) .header{min-height:92px}
 .hero{margin-top:24px}
 .hero-copy{padding-top:4px;padding-bottom:24px}
 .hero h1{font-size:clamp(56px,min(6.8vw,10.5vh),106px);line-height:.91;margin:20px 0}
 .hero-visual{min-height:0;margin-bottom:24px}
 .hero-bottom p{font-size:13px;line-height:1.6;max-width:400px}
 .hero .button-dark{margin-top:18px;padding:13px 20px}
 .credentials{padding-top:19px;padding-bottom:19px}
}
@media(min-width:761px) and (max-height:720px){
 body:not(.about-page) .header{min-height:78px}
 .hero{margin-top:20px}
 .hero h1{margin:16px 0;font-size:clamp(52px,min(6.8vw,9.8vh),76px)}
 .hero-copy{padding-bottom:20px}
 .hero-visual{margin-bottom:20px}
 .hero .button-dark{margin-top:14px}
 .credentials{padding-top:15px;padding-bottom:15px}
}

/* Portfolio — original drawings with room to read and inspect. */
.portfolio{padding-top:80px;padding-bottom:75px}.portfolio-heading{display:grid;grid-template-columns:.7fr 1.5fr 1fr;gap:5%;align-items:start;margin-bottom:45px}.portfolio-heading>.eyebrow{font-size:12px;padding-top:8px}.portfolio-heading>p:last-child{font-size:16px;max-width:340px;padding-top:8px}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 40px}.portfolio-card{min-width:0;border-bottom:1px solid var(--line);padding-bottom:30px}.portfolio-drawing{display:block;position:relative;background:#fff;padding:24px;overflow:hidden}.portfolio-drawing>img{width:100%;height:300px;object-fit:contain}.portfolio-copy{padding-top:25px}.portfolio-sector{font-size:12px;letter-spacing:1.2px;color:#59675b;font-weight:600}.portfolio-copy h3{font:600 40px/1.05 var(--display);letter-spacing:-.5px;margin-top:15px}.portfolio-location{font-size:14px;color:#59675b;margin-top:8px}.portfolio-description{font-size:16px;margin-top:20px;max-width:55ch}.portfolio-scope{font-size:13px;font-weight:600;margin-top:20px;color:#526652}.portfolio-featured{grid-column:1 / -1;display:grid;grid-template-columns:1.2fr 1fr;gap:5%;align-items:center;border:0;background:#e8eae1;padding:30px}.portfolio-featured .portfolio-drawing{padding:20px}.portfolio-featured .portfolio-drawing>img{height:340px}.portfolio-featured .portfolio-copy{padding:10px 20px 10px 0}.portfolio-featured h3{font-size:49px}.portfolio-note{font-size:13px;color:#59675b;margin-top:30px;max-width:100ch}
@media(max-width:1050px){.portfolio-heading{grid-template-columns:1fr 2fr;gap:25px}.portfolio-heading>p:last-child{grid-column:2;max-width:500px}.portfolio-featured{gap:4%;padding:22px}.portfolio-featured h3{font-size:40px}.portfolio-featured .portfolio-drawing>img{height:300px}}
@media(max-width:760px){.portfolio{padding-top:50px;padding-bottom:50px}.portfolio-heading{display:block;margin-bottom:30px}.portfolio-heading h2{margin-top:22px;font-size:44px}.portfolio-heading>p:last-child{font-size:16px;margin-top:20px}.portfolio-grid{grid-template-columns:1fr;gap:35px}.portfolio-featured{grid-column:auto;display:block;padding:18px}.portfolio-drawing{padding:15px}.portfolio-drawing>img,.portfolio-featured .portfolio-drawing>img{height:250px}.portfolio-featured .portfolio-drawing{padding:10px}.portfolio-featured .portfolio-copy{padding:25px 0 8px}.portfolio-copy h3,.portfolio-featured h3{font-size:36px}.portfolio-copy{padding-top:22px}.portfolio-note{font-size:12px}}

/* Council commissions form part of Colin's wider career experience. */
.council-experience{display:grid;grid-template-columns:.8fr 2.2fr;gap:6%;border-top:1px solid #53625a;margin-top:45px;padding-top:40px}.council-heading h3{font:600 42px/1.08 var(--display);letter-spacing:-.5px;margin-top:20px}.council-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px 40px}.council-grid article{min-width:0}.council-service{font-size:12px;letter-spacing:1px;color:#b6c2b3}.council-grid h4{font:600 30px/1.15 var(--display);margin:12px 0}.council-grid article>p:last-child{font-size:16px;line-height:1.7;color:#d4ddd0;max-width:40ch}
@media(max-width:1050px){.council-experience{grid-template-columns:1fr;gap:30px}.council-heading h3{max-width:600px}.council-heading h3 br{display:none}}
@media(max-width:760px){.council-experience{margin-top:32px;padding-top:30px}.council-heading h3{font-size:38px}.council-grid{grid-template-columns:1fr;gap:25px}.council-grid article+article{border-top:1px solid #53625a;padding-top:25px}.council-grid h4{font-size:29px}}
