:root{--ink:#243e33;--paper:#faf9f5;--sage:#dce5d9;--line:#bdcbbb;--muted:#516156;--white:#fff;--gutter:clamp(22px,4.4vw,72px);--page:1280px;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0}a{text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}a,button,summary{ -webkit-tap-highlight-color:transparent}::selection{background:#b6d0ac;color:#183124}input,textarea{caret-color:var(--ink)}:focus-visible{outline:3px solid #527944;outline-offset:5px}*{scrollbar-color:#81977e var(--paper)}h1,h2,h3,p,figure{margin-block-start:0}h1,h2,h3{text-wrap:balance}h1{font-size:clamp(3rem,5.7vw,5.4rem);max-width:13ch}h2{font-size:clamp(2.35rem,3.3vw,3.7rem)}h3{font-size:clamp(1.65rem,2.1vw,2.25rem)}p,li{max-width:72ch}p{margin-block-end:1.1rem}figure{margin:0}.wp-site-blocks>*{margin-block-start:0}.wp-block-group{margin-block-start:0}.wp-block-post-content{margin:0!important}.site-header{background:var(--paper);position:relative;z-index:20;border-bottom:1px solid #dce2d8}.site-header-inner{max-width:1440px;margin:auto;min-height:114px;padding:23px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:34px}.brand-logo{flex:0 0 232px;line-height:0}.brand-logo img{display:block;max-width:100%;height:54px;object-fit:contain}.main-navigation{font-size:1rem;font-weight:550}.main-navigation .wp-block-navigation__container{gap:clamp(16px,1.8vw,28px)}.main-navigation .wp-block-navigation-item__content{padding:9px 0;text-decoration:none;white-space:nowrap}.main-navigation .wp-block-navigation-item__content:hover{box-shadow:0 1px 0 currentColor}.main-navigation .wp-block-navigation-item:last-child a{border:1px solid #91a08b;padding:10px 17px;border-radius:3px}.main-navigation .wp-block-navigation__responsive-container-open{padding:12px}.wp-block-navigation__responsive-container-close{padding:12px}.site-main{padding:0}.home-hero{background:var(--sage);display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);min-height:620px;max-width:1440px;margin:auto;overflow:hidden}.hero-copy{padding:clamp(46px,5.8vw,90px) clamp(28px,5.1vw,76px);align-self:center}.hero-copy h1{margin-bottom:24px}.lead{font-size:clamp(1.15rem,1.5vw,1.34rem);line-height:1.5;max-width:46ch}.hero-copy .wp-block-buttons{margin-top:30px}.hero-note{font-size:.98rem;color:var(--muted);margin-top:27px;margin-bottom:0}.hero-photo{height:100%;min-height:620px;overflow:hidden}.hero-photo img{width:100%;height:100%;min-height:620px;max-height:760px;object-fit:cover;object-position:50% 65%;display:block}.wp-block-button__link{transition:background-color .2s var(--ease),color .2s var(--ease);text-decoration:none;min-height:48px}.wp-block-button__link:hover{background:#39593f;color:#fff;text-decoration:none}.is-style-outline>.wp-block-button__link{border:1px solid currentColor;padding:calc(.85rem - 1px) calc(1.35rem - 1px)}.section{max-width:var(--page);margin:auto;padding:clamp(60px,7vw,104px) var(--gutter)}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:70px;margin-bottom:40px}.section-heading h2{max-width:15ch;margin-bottom:0}.section-heading p{padding-top:10px;max-width:43ch;font-size:1.2rem}.service-index{border-top:1px solid var(--line)}.service-row{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:25px 0;border-bottom:1px solid var(--line)}.service-copy h3{margin:0 0 8px}.service-copy h3 a{text-decoration:none}.service-copy h3 a:hover{text-decoration:underline}.service-copy p{margin:0;max-width:62ch;color:var(--muted)}.service-link{flex-shrink:0;margin:0;font-size:1rem}.service-link a{text-decoration:none;font-weight:600}.service-link span{margin-left:14px;font-size:1.35rem}.editorial-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,88px);align-items:center;padding-top:0}.editorial-photo img{display:block;width:100%;height:440px;object-fit:cover;object-position:48% 50%}.editorial-copy h2{max-width:15ch}.text-link{margin-top:24px}.text-link a{font-weight:600}.process-section{border-top:1px solid var(--line)}.process-section>h2{max-width:20ch;margin-bottom:46px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.process-step h3{font-size:1.9rem;margin-bottom:15px}.process-step p{color:var(--muted);margin-bottom:0}.contact-close{background:var(--sage);display:grid;grid-template-columns:1fr auto;gap:70px;align-items:center;padding:62px max(var(--gutter),calc((100vw - 1130px)/2));margin:auto}.contact-close h2{margin:0 0 16px;max-width:18ch}.contact-close p{max-width:51ch;margin-bottom:0}.close-action{text-align:center}.close-action p{font-size:1.3rem;margin-top:16px}.site-footer{background:var(--ink);color:#f8f8ed;padding:0 var(--gutter)}.site-footer a{color:inherit}.site-footer-inner{max-width:1130px;margin:auto;padding:68px 0 40px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.footer-logo{line-height:0;margin-bottom:20px}.footer-logo img{max-width:220px;max-height:58px;object-fit:contain;object-position:left;display:block}.footer-brand p{color:#d5e0cd}.site-footer h3{font-family:'Source Sans 3',sans-serif;font-size:1.2rem;line-height:1.4;font-weight:600;margin-bottom:15px}.site-footer p{font-size:1rem;line-height:1.7}.footer-copyright{border-top:1px solid #607460;max-width:1130px;margin:auto;padding:20px 0 26px;font-size:.9rem!important;color:#d5e0cd}.page-intro{background:var(--sage);padding:24px var(--gutter) 0}.breadcrumb{max-width:1280px;margin:auto;padding:0 0 30px;font-size:.95rem;color:var(--muted)}.breadcrumb span{padding:0 10px}.page-intro-inner{max-width:1280px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.72fr);gap:70px;align-items:center}.page-intro-copy{padding:20px 0 62px}.page-intro-copy h1{margin:0 0 24px;max-width:15ch;font-size:clamp(3rem,5vw,4.9rem)}.page-intro-photo{align-self:stretch;min-height:300px;margin-top:0}.page-intro-photo img{width:100%;height:100%;max-height:405px;object-fit:cover;display:block}.page-intro-photo img[src*="team"]{object-position:50% 64%}.page-intro-inner:not(:has(.page-intro-photo)){grid-template-columns:1fr;max-width:1130px}.page-intro-inner:not(:has(.page-intro-photo)) .lead{max-width:57ch}.service-layout{max-width:1280px;margin:auto;padding:72px var(--gutter) 96px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.47fr);gap:80px;align-items:start}.service-main h2{font-size:2.5rem;margin:46px 0 20px;max-width:26ch}.service-main>h2:first-child{margin-top:0}.service-main h3{font-size:1.9rem}.service-main .service-row{padding:24px 0}.service-main li{padding:0 0 12px 5px}.service-main ul{padding-left:1.1em}.contact-panel{background:#e8eddf;padding:32px;position:sticky;top:30px}.contact-panel h3{margin:0 0 20px;font-size:2rem;max-width:13ch}.contact-panel p{font-size:1.02rem}.contact-panel p.contact-phone{font-size:1.8rem;margin-top:26px;margin-bottom:6px;line-height:1.2}.contact-panel .wp-block-buttons{margin-top:27px}.contact-panel .wp-block-button__link{font-size:.95rem}.office-contact h2{font-size:3rem}.contact-section{display:grid;grid-template-columns:1fr .8fr;gap:100px;align-items:start}.large-contact{font-size:clamp(2rem,3.2vw,3rem);line-height:1.2;margin:24px 0 15px}.large-email{font-size:1.45rem;margin-bottom:35px}.contact-guidance{padding:35px;background:var(--sage)}.contact-guidance h3{margin-bottom:20px}.contact-guidance p:last-child{margin-bottom:0}.people-section{padding-top:0}.people-section>h2{margin-bottom:40px}.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 40px}.person-contact{padding-top:22px;border-top:1px solid var(--line)}.person-contact h3{font-family:'Source Sans 3',sans-serif;font-size:1.3rem;font-weight:600;line-height:1.35;margin-bottom:10px}.person-contact p{margin:0}.reading-section{max-width:880px}.reading-section h2{margin-top:40px}.reading-section>h2:first-child{margin-top:0}.error-page{max-width:1000px;padding:100px var(--gutter);margin:auto}.error-page h1{max-width:100%}.is-style-sage-panel{background:var(--sage);padding:32px}.wp-block-details{border-bottom:1px solid var(--line);padding:22px 0}.wp-block-details summary{cursor:pointer;font-weight:600}.wp-block-details p{margin-top:16px}
@media(prefers-reduced-motion:no-preference){.hero-photo img{animation:photo-arrive 1s var(--ease) both}@keyframes photo-arrive{from{filter:saturate(.72);clip-path:inset(0 0 5% 0)}to{filter:saturate(1);clip-path:inset(0)}}}
@media(min-width:1441px){.home-hero{border-left:1px solid var(--sage);border-right:1px solid var(--sage)}}
@media(max-width:1100px){.site-header-inner{gap:22px;min-height:100px}.brand-logo{flex-basis:205px}.brand-logo img{width:205px}.main-navigation{font-size:.92rem}.main-navigation .wp-block-navigation__container{gap:15px}.main-navigation .wp-block-navigation-item:last-child a{padding:9px 11px}.home-hero{min-height:540px}.hero-photo,.hero-photo img{min-height:540px}.hero-copy{padding:46px 34px}.service-layout{gap:45px;grid-template-columns:minmax(0,1fr) 280px}.contact-panel{padding:26px}.contact-section{gap:55px}}
@media(max-width:900px){.main-navigation .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.main-navigation .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}.main-navigation .wp-block-navigation__responsive-container.is-menu-open{background:var(--paper);color:var(--ink);padding:90px 30px 40px}.main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:flex-start;gap:18px;font-size:1.4rem}.main-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child{margin-top:10px}.home-hero{grid-template-columns:1.05fr 1fr}.hero-copy{padding:42px 28px}.hero-copy h1{font-size:3.5rem}.hero-copy .lead{font-size:1.13rem}.section-heading{gap:35px}.service-layout{gap:35px;grid-template-columns:minmax(0,1fr) 255px}.page-intro-inner{gap:35px}.contact-panel{padding:24px}.contact-panel h3{font-size:1.8rem}.contact-panel .contact-phone{font-size:1.65rem}.contact-panel .wp-block-button__link{font-size:.9rem}.process-grid{gap:30px}.site-footer-inner{gap:30px}.contact-close{gap:35px}.people-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){html{scroll-padding-top:30px}.site-header-inner{min-height:92px;padding:19px var(--gutter)}.brand-logo{flex-basis:199px}.brand-logo img{width:199px;height:47px}.home-hero{display:flex;flex-direction:column}.hero-copy{padding:45px var(--gutter) 38px}.hero-copy h1{font-size:3.55rem;max-width:11ch;line-height:1.02;margin-bottom:24px}.hero-copy .lead{font-size:1.15rem}.hero-photo{min-height:0;height:340px;width:100%}.hero-photo img{min-height:0;height:340px;max-height:none;object-position:50% 65%}.hero-note{max-width:27ch}.section-heading{display:block}.section-heading h2{max-width:14ch;margin-bottom:22px}.section-heading p{padding:0;margin:0}.section{padding:56px var(--gutter)}.service-row{align-items:flex-start;gap:12px;padding:25px 0}.service-copy h3{font-size:1.95rem;margin-bottom:12px}.service-copy p{font-size:1.03rem;max-width:35ch}.service-link{font-size:0;min-width:24px;margin-top:3px}.service-link span{font-size:1.5rem;margin:0}.editorial-section{display:flex;flex-direction:column;padding-top:0;gap:33px;align-items:stretch}.editorial-photo img{height:260px}.editorial-copy h2{max-width:13ch;margin-bottom:23px}.editorial-copy p{font-size:1.1rem}.process-section>h2{margin-bottom:32px}.process-grid{grid-template-columns:1fr;gap:30px}.process-step{max-width:40ch}.process-step h3{font-size:1.95rem;margin-bottom:10px}.contact-close{grid-template-columns:1fr;padding:44px var(--gutter);gap:28px}.contact-close h2{font-size:2.5rem;max-width:15ch}.close-action{text-align:left}.close-action p{font-size:1.2rem}.site-footer-inner{grid-template-columns:1fr;gap:28px;padding-top:45px}.footer-logo{margin-bottom:13px}.site-footer h3{margin-bottom:12px}.site-footer p{margin-bottom:0}.page-intro{padding:20px var(--gutter) 0}.breadcrumb{padding-bottom:25px;font-size:.9rem}.page-intro-inner{display:flex;flex-direction:column;gap:0;align-items:stretch}.page-intro-copy{padding:0 0 30px}.page-intro-copy h1{font-size:3.3rem;max-width:12ch}.page-intro-copy .lead{font-size:1.16rem}.page-intro-photo{height:220px;min-height:0;margin:0 calc(-1 * var(--gutter))}.page-intro-photo img{height:220px;max-height:none}.page-intro-photo img[src*="team"]{object-position:50% 60%}.service-layout{display:flex;flex-direction:column;padding:44px var(--gutter) 56px;gap:36px}.service-main{width:100%}.service-main h2{font-size:2.25rem;margin-top:35px}.service-main h3{font-size:1.9rem}.service-main li{padding-bottom:12px}.contact-panel{position:static;width:100%;padding:28px}.contact-panel h3{max-width:15ch;font-size:2rem}.contact-panel p{font-size:1.1rem}.contact-panel p.contact-phone{font-size:1.9rem}.contact-panel .wp-block-button__link{font-size:1rem}.contact-section{display:flex;flex-direction:column;gap:35px}.contact-guidance{padding:28px}.large-email{font-size:1.24rem;overflow-wrap:anywhere}.people-section{padding-top:0}.people-grid{grid-template-columns:1fr;gap:8px}.person-contact{padding:22px 0 15px}.person-contact h3{font-size:1.2rem}.person-contact a{display:inline-block;padding:5px 0}.reading-section h2{font-size:2.25rem}}
@media(max-width:360px){.brand-logo{flex-basis:175px}.brand-logo img{width:175px}.hero-copy h1{font-size:3.1rem}.page-intro-copy h1{font-size:2.9rem}.service-row .service-copy p{max-width:26ch}.contact-panel{padding:22px}.hero-photo,.hero-photo img{height:290px}}

.service-link a{display:inline-block;padding:10px 30px 10px 0;position:relative}.service-link a::after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:16px;height:16px;background:center/16px 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23243e33' stroke-width='1.6'%3E%3Cpath d='M4 16 16 4M5 4h11v11'/%3E%3C/svg%3E") }
@media(max-width:680px){.service-link a{width:34px;height:44px;padding:0}.service-link a::after{right:8px}}

.mobile-service-contact{display:none}
@media(max-width:680px){.page-intro .mobile-service-contact{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.mobile-service-contact>.wp-block-buttons{margin:0!important}.mobile-service-contact .wp-block-button__link{font-size:1rem;padding:11px 15px;min-height:48px}}
