@font-face{font-family:Manrope;src:url('../fonts/Manrope-Variable.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--paper:#f8f8f4;--ink:#202b31;--blue:#315f83;--muted:#667176;--line:#d6dcd9;--mist:#e9ece9;--gutter:clamp(22px,4.2vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{max-width:100%;height:auto}figure,p,h1,h2,h3,h4{margin:0}button{cursor:pointer}a,button,summary,input,textarea,select{outline-offset:5px}:focus-visible{outline:2px solid var(--blue)}[hidden]{display:none!important}.screen-reader-text,.sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.skip-link:focus{clip:auto;clip-path:none;height:auto;width:auto;z-index:999999;background:white;padding:16px}
.wp-site-blocks>*{margin-block-start:0}.wp-site-blocks{padding-top:0;padding-bottom:0}main{overflow:clip}.shell{width:calc(100% - var(--gutter)*2);max-width:1440px;margin-inline:auto!important}.wp-block-group{box-sizing:border-box}.eyebrow{font-size:15px;letter-spacing:.16em;font-weight:700;line-height:1.5;text-transform:uppercase}.eyebrow:before{content:'';display:inline-block;vertical-align:middle;width:7px;height:7px;margin-right:10px;background:var(--blue)}.section-space{padding-block:100px}.section-rule{border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:44px}.section-head h2,.section-title{font-size:clamp(36px,4vw,60px);font-weight:500;line-height:1.12;letter-spacing:-.055em}.section-head .eyebrow{margin-bottom:22px}.text-link{font-size:16px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:8px;white-space:nowrap}.text-link:hover{color:var(--blue);border-color:var(--blue)}.muted{color:var(--muted)}.copy{font-size:18px;line-height:1.9;color:#526066}.copy p+p{margin-top:20px}.wp-block-button__link{border-radius:0!important;padding:16px 25px;font-size:16px;line-height:1.5;letter-spacing:.015em;transition:background .2s,transform .2s}.wp-block-button__link:hover{background:#234b6a}.is-style-outline .wp-block-button__link{color:var(--ink);border:1px solid var(--line);background:transparent}.is-style-outline .wp-block-button__link:hover{border-color:var(--blue);color:var(--blue)}.button-row{gap:12px!important}
/* A small, quiet masthead keeps the work in the foreground. */
.site-header{height:110px;border-bottom:1px solid var(--line);position:relative;z-index:20;gap:30px}.brand-group{width:150px;flex-shrink:0}.brand{font-size:46px!important;letter-spacing:-.065em;font-weight:800!important;line-height:.95!important;text-transform:lowercase}.brand a{text-decoration:none!important;color:var(--blue)}.brand-caption{font-size:14px;letter-spacing:.18em;padding-left:3px;line-height:1.3;margin-top:7px}.main-nav{font-size:15px;font-weight:500;gap:32px}.main-nav .wp-block-navigation__container{gap:32px;align-items:center}.main-nav .wp-block-navigation-item__content{text-decoration:none!important}.main-nav .wp-block-navigation-item__content:hover{color:var(--blue)}.main-nav .current-menu-item:not(.nav-contact)>a{color:var(--blue);text-decoration:underline!important;text-underline-offset:7px}.main-nav .nav-contact a{background:var(--blue);color:white;padding:14px 21px}.main-nav .nav-contact a:hover{background:#234b6a;color:white}.wp-block-navigation__responsive-container.is-menu-open{padding:35px;background:var(--paper)!important}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:start!important;gap:28px!important;padding-top:50px;font-size:26px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{align-items:start!important}
/* Opening composition */
.hero{padding-top:38px}.hero-kicker{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:29px}.hero-location{font-size:15px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.hero-heading-row{display:grid;grid-template-columns:1.8fr 1fr;gap:8%;align-items:end;margin-bottom:37px}.hero h1{font-size:clamp(52px,5.8vw,90px);line-height:1.02;letter-spacing:-.065em;font-weight:500}.hero h1 em{font-style:normal;color:var(--blue)}.hero-aside{max-width:290px;justify-self:end;padding-bottom:6px;font-size:18px;line-height:1.85;color:#59656b}.hero-aside .text-link{display:inline-block;margin-top:20px;color:var(--ink)}.hero-media{position:relative;background:#d5dce0}.hero-media>figure{margin:0}.hero-media>figure img{display:block;width:100%;height:clamp(340px,41vw,590px);object-fit:cover;object-position:50% 47%}.hero-media:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(7,22,34,.58));pointer-events:none}.hero-caption{position:absolute;z-index:1;bottom:29px;left:32px;right:32px;display:flex;justify-content:space-between;align-items:end;color:white}.hero-caption .eyebrow{font-size:14px;opacity:.85;margin-bottom:7px}.hero-caption .eyebrow:before{background:white}.hero-caption .project-name{font-size:24px;letter-spacing:-.03em}.hero-caption a{display:inline-flex;width:47px;height:47px;align-items:center;justify-content:center;border:1px solid #ffffff78;text-decoration:none;font-size:28px;transition:background .2s}.hero-caption a:hover{background:#ffffff20}.hero-note{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted);letter-spacing:.035em}.hero-note .scroll-note{letter-spacing:.12em;text-transform:uppercase}
/* Introduction and sector index */
.intro{display:grid;grid-template-columns:1fr 2fr;gap:8%;padding-block:95px}.intro .eyebrow{padding-top:9px}.intro h2{font-size:clamp(27px,3vw,43px);line-height:1.35;font-weight:500;letter-spacing:-.04em;max-width:900px}.intro .copy{margin-top:25px;max-width:670px}.intro .text-link{display:inline-block;margin-top:23px}.sectors-section{background:var(--mist);padding-block:82px}.sectors-layout{display:grid;grid-template-columns:1fr 2fr;gap:8%}.sectors-intro h2{font-size:40px;line-height:1.15;letter-spacing:-.05em;margin-top:20px;max-width:290px}.sectors-intro .copy{font-size:18px;max-width:260px;margin-top:24px}.sector-list{display:grid;grid-template-columns:1fr 1fr;column-gap:38px}.sector-row{display:flex;gap:14px;align-items:center;border-top:1px solid #bdc7c4;padding:23px 0;min-height:84px;text-decoration:none;font-size:18px;line-height:1.5;transition:color .2s}.sector-row .sector-num{font-size:14px;color:var(--muted);align-self:start;padding-top:4px}.sector-row .sector-name{flex:1}.sector-row .sector-arrow{font-size:26px;font-weight:400;transition:transform .2s}.sector-row:hover{color:var(--blue)}.sector-row:hover .sector-arrow{transform:translate(3px,-3px)}
/* Portfolio and its progressively enhanced galleries */
.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 26px}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px}.project-card{min-width:0}.project-card>summary{list-style:none;cursor:pointer}.project-card>summary::-webkit-details-marker{display:none}.project-visual{display:block;position:relative;overflow:hidden;background:#dde2df;aspect-ratio:4/3}.project-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.6,.3,1)}.featured-grid .project-card:nth-child(4n+2) .project-visual{aspect-ratio:1.33}.project-card>summary:hover img{transform:scale(1.035)}.project-open{position:absolute;right:16px;bottom:16px;width:36px;height:36px;background:var(--paper);display:grid;place-items:center;font-size:24px;transition:background .2s,color .2s}.project-card>summary:hover .project-open{background:var(--blue);color:white}.project-caption{display:block;padding-top:17px}.project-caption-line{display:flex;justify-content:space-between;gap:16px;align-items:baseline}.project-title{display:block;font-size:22px;line-height:1.4;font-weight:500;letter-spacing:-.035em}.project-index{font-size:14px;color:var(--muted);letter-spacing:.06em}.project-sector{display:block;font-size:15px;color:var(--muted);margin-top:5px;line-height:1.6}.project-fallback{padding-top:20px;font-size:18px;line-height:1.8}.project-fallback img{display:block;width:100%;margin-top:15px}.project-card[open]{grid-column:span 2}.js .project-card[open]{grid-column:auto}.portfolio-tools{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:21px 0;margin-bottom:36px}.filter-row{display:flex;flex-wrap:wrap;gap:8px 24px}.filter-button{border:0;border-bottom:2px solid transparent;background:none;padding:7px 0;font-size:15px;color:#5c686d;text-align:left;line-height:1.5}.filter-button[aria-pressed=true]{border-color:var(--blue);color:var(--blue);font-weight:700}.filter-button:hover{color:var(--blue)}.archive-status{margin-top:22px;font-size:15px;color:var(--muted);display:flex;justify-content:space-between;gap:15px}.project-dialog{padding:0;border:0;width:calc(100% - 64px);max-width:1260px;max-height:92dvh;background:var(--paper);color:var(--ink);overflow:auto}.project-dialog::backdrop{background:#122330d9;backdrop-filter:blur(5px)}.dialog-toolbar{display:flex;justify-content:space-between;align-items:center;padding:17px 26px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--paper);z-index:5}.dialog-toolbar p{font-size:15px;letter-spacing:.12em}.dialog-close{border:0;background:none;font-size:16px;padding:10px}.dialog-close span{font-size:26px;vertical-align:middle;margin-left:14px}.dialog-body{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(240px,1fr)}.dialog-gallery{background:#dfe4e1;min-width:0}.dialog-image{width:100%;height:520px;max-height:65vh;display:block;object-fit:contain}.dialog-image-controls{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid #c7cfca;font-size:15px}.gallery-arrow{background:none;border:1px solid #bdc7c1;min-width:42px;min-height:38px;font-size:24px}.gallery-arrow:hover{background:var(--paper)}.dialog-details{padding:40px 30px}.dialog-details .eyebrow{font-size:14px;color:var(--blue);margin-bottom:23px}.dialog-details h2{font-size:35px;line-height:1.15;font-weight:500;letter-spacing:-.05em;margin-bottom:28px}.dialog-copy{font-size:16px;line-height:1.9;color:#536168}.dialog-copy p+p{margin-top:14px}.dialog-meta{border-top:1px solid var(--line);padding-top:21px;margin-top:28px;font-size:15px}.dialog-meta dt{color:var(--muted);font-size:14px;text-transform:uppercase;letter-spacing:.1em}.dialog-meta dd{margin:4px 0 19px}.dialog-details .text-link{display:inline-block;margin-top:20px}.dialog-thumbs{display:flex;gap:8px;padding:0 24px 18px;overflow-x:auto}.dialog-thumb{padding:0;border:2px solid transparent;background:transparent;flex-shrink:0}.dialog-thumb[aria-current=true]{border-color:var(--blue)}.dialog-thumb img{display:block;width:68px;height:48px;object-fit:cover}.dialog-thumb:focus-visible{outline-offset:1px}.gallery-loading{opacity:.55}
/* Method and invitation */
.method-section{background:var(--ink);color:var(--paper);padding-block:90px}.method-section .eyebrow:before{background:#8eb0c9}.method-heading{display:grid;grid-template-columns:1fr 2fr;gap:8%;margin-bottom:54px}.method-heading h2{font-size:clamp(35px,4vw,56px);letter-spacing:-.05em;line-height:1.15}.method-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.method-step{border-top:1px solid #6d787d;padding-top:25px}.step-num{font-size:15px;color:#a9bbc5;margin-bottom:30px}.method-step h3{font-size:26px;font-weight:500;letter-spacing:-.03em;margin-bottom:16px}.method-step p:last-child{font-size:16px;line-height:1.9;color:#c0c9cb;max-width:340px}.contact-band{padding-block:80px;display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-band h2{font-size:clamp(35px,4.3vw,64px);line-height:1.12;letter-spacing:-.055em}.contact-band .eyebrow{margin-bottom:20px}
/* Inner pages */
.page-hero{padding-block:65px 50px}.page-hero .eyebrow{margin-bottom:27px}.page-hero h1{font-size:clamp(52px,6.4vw,92px);font-weight:500;line-height:1.06;letter-spacing:-.065em;max-width:1000px}.page-hero h1 em{font-style:normal;color:var(--blue)}.page-intro-row{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-top:30px}.page-intro-row .copy{max-width:560px;font-size:18px}.archive{padding-bottom:100px}.about-image img{display:block;width:100%;height:460px;object-fit:cover}.about-story{display:grid;grid-template-columns:1fr 2fr;gap:8%;padding-block:90px}.about-story h2{font-size:44px;letter-spacing:-.05em;line-height:1.2;margin-bottom:27px}.resources{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;padding-block:60px 85px;border-top:1px solid var(--line)}.resource .eyebrow{margin-bottom:25px}.resource h3{font-size:28px;font-weight:500;letter-spacing:-.03em;margin-bottom:15px}.resource .copy{font-size:18px}.contact-section{background:var(--mist);padding-block:90px;scroll-margin-top:30px}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:12%}.contact-info h2{font-size:clamp(38px,4.5vw,64px);letter-spacing:-.06em;line-height:1.1;margin-top:24px;margin-bottom:26px}.contact-info>.copy{font-size:18px;max-width:310px}.contact-lines{margin-top:35px}.contact-lines p{font-size:18px;line-height:1.9}.contact-lines a{text-decoration:none}.contact-lines .address{font-size:16px;color:#536167;margin-top:25px}.contact-lines .text-link{font-size:15px;display:inline-block;margin-top:24px}.form-heading{font-size:24px;font-weight:500;margin-bottom:15px;letter-spacing:-.03em}.form-note{font-size:15px;color:#58666b;line-height:1.8;margin-bottom:20px}.contact-form-shell div.wpforms-container-full{margin:0}.contact-form-shell .wpforms-form label.wpforms-field-label{font-size:15px!important;font-weight:600!important;margin-bottom:9px!important;color:var(--ink)!important}.contact-form-shell div.wpforms-container-full input:not([type=checkbox]):not([type=radio]),.contact-form-shell div.wpforms-container-full select,.contact-form-shell div.wpforms-container-full textarea{background:#ffffff80!important;border:1px solid #b4c0bc!important;border-radius:0!important;color:var(--ink)!important;box-shadow:none!important;padding:12px!important;font-size:18px!important;width:100%!important;max-width:100%!important}.contact-form-shell .wpforms-field{padding-block:11px!important}.contact-form-shell .wpforms-field-checkbox label{font-size:15px!important;line-height:1.7!important}.contact-form-shell .wpforms-submit-container{padding-top:18px!important}.contact-form-shell button.wpforms-submit{background:var(--blue)!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:white!important;font-size:16px!important;font-weight:600!important;padding:16px 27px!important;height:auto!important}.contact-form-shell button.wpforms-submit:hover{background:#234b6a!important}.contact-form-shell .wpforms-confirmation-container-full{background:#f8f8f4!important;border:1px solid var(--blue)!important;font-size:18px;color:var(--ink)!important}.contact-form-shell .wpforms-error{font-size:15px!important}.contact-form-shell .wpforms-field-description{font-size:15px!important;color:#546267!important}.legal{padding-block:45px 65px}.legal details{border-top:1px solid var(--line);padding-block:22px}.legal summary{font-size:15px;font-weight:600;cursor:pointer}.legal details p{font-size:16px;line-height:1.9;color:#5b686d;max-width:850px;margin-top:18px}.legal>.eyebrow{margin-bottom:20px}.form-unavailable{font-size:18px;line-height:1.9;border-top:1px solid var(--line);padding-top:20px}.error-page{padding-block:120px}.error-page h1{font-size:60px;margin-block:30px}.error-page .wp-block-buttons{margin-top:25px}
/* Footer */
.site-footer{background:#e9ece9;border-top:1px solid #d4dcd6}.footer-top{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;padding-block:62px}.footer-brand{font-size:52px;font-weight:800;letter-spacing:-.07em;line-height:1;color:var(--blue)}.footer-brand a{text-decoration:none}.footer-brand span{display:block;font-size:14px;letter-spacing:.22em;font-weight:400;margin-top:9px;padding-left:4px}.footer-intro{font-size:18px;line-height:1.8;margin-top:25px;color:#5d6a6e}.footer-contact .eyebrow{margin-bottom:20px}.footer-contact>p:nth-child(2){font-size:20px;line-height:1.8;letter-spacing:-.02em}.footer-contact a{text-decoration:none}.footer-address{font-size:15px;line-height:1.8;color:#5d6a6e;margin-top:20px}.footer-bottom{padding-block:22px;border-top:1px solid #c8d1cb;font-size:14px;color:#5d6a6e;gap:20px}.footer-bottom a{text-decoration:none}.footer-bottom span{margin-inline:12px}
@media(min-width:1600px){.hero-media>figure img{height:580px}.hero h1{font-size:90px}}
@media(max-width:1000px){.main-nav .wp-block-navigation__container{gap:22px}.hero-heading-row{grid-template-columns:1.7fr 1fr;gap:5%}.hero h1{font-size:64px}.hero-aside{font-size:16px}.section-space{padding-block:75px}.intro,.sectors-layout,.method-heading,.about-story{grid-template-columns:1fr 2.5fr;gap:6%}.sectors-intro h2{font-size:30px}.sector-list{column-gap:23px}.sector-row{font-size:16px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-layout{gap:7%;grid-template-columns:1fr 1.2fr}.dialog-body{grid-template-columns:1.5fr 1fr}.dialog-details{padding:30px 24px}.dialog-details h2{font-size:28px}}
@media(max-width:700px){html{scroll-padding-top:30px}.site-header{height:84px}.brand{font-size:37px!important}.brand-caption{font-size:7px;margin-top:6px}.brand-group{width:110px}.main-nav{font-size:15px}.main-nav .wp-block-navigation__container{gap:18px}.hero{padding-top:27px}.hero-kicker{margin-bottom:24px}.hero-location{font-size:14px}.eyebrow{font-size:14px;letter-spacing:.12em}.hero-heading-row{grid-template-columns:1fr;gap:24px;margin-bottom:28px}.hero h1{font-size:clamp(48px,10.5vw,72px)}.hero-aside{justify-self:start;max-width:360px;font-size:16px;line-height:1.8}.hero-aside .text-link{margin-top:13px;font-size:15px}.hero-media{width:calc(100% + var(--gutter)*2);margin-left:calc(var(--gutter)*-1)}.hero-media>figure img{height:390px;object-position:52% 50%}.hero-caption{left:23px;right:23px;bottom:22px}.hero-caption .project-name{font-size:20px}.hero-note{font-size:14px;padding-block:13px}.hero-note .scroll-note{display:none}.intro{grid-template-columns:1fr;gap:23px;padding-block:60px}.intro h2{font-size:29px;line-height:1.4}.intro .copy{font-size:18px;margin-top:20px}.sectors-section{padding-block:55px}.sectors-layout{grid-template-columns:1fr;gap:32px}.sectors-intro h2{font-size:35px;max-width:340px}.sectors-intro .copy{max-width:380px;margin-top:15px}.sector-list{column-gap:23px}.sector-row{padding-block:18px;min-height:81px;font-size:15px;gap:9px}.sector-row .sector-num{font-size:14px}.sector-arrow{font-size:20px!important}.section-space{padding-block:60px}.section-head{align-items:start;gap:22px;margin-bottom:32px}.section-head h2{font-size:35px}.section-head>.text-link{font-size:14px;white-space:normal;max-width:95px;margin-top:37px;line-height:1.8}.section-head .eyebrow{margin-bottom:18px}.projects-grid,.featured-grid{gap:31px 16px}.project-title{font-size:18px}.project-caption{padding-top:13px}.project-index{display:none}.project-sector{font-size:14px;line-height:1.65}.project-open{right:10px;bottom:10px;width:28px;height:28px;font-size:20px}.featured-grid .project-visual,.featured-grid .project-card:nth-child(4n+2) .project-visual{aspect-ratio:1}.method-section{padding-block:58px}.method-heading{grid-template-columns:1fr;gap:22px;margin-bottom:35px}.method-heading h2{font-size:36px}.method-steps{grid-template-columns:1fr;gap:29px}.method-step{display:grid;grid-template-columns:45px 1fr;gap:0 15px;padding-top:20px}.step-num{grid-row:span 2;font-size:15px;margin:4px 0 0}.method-step h3{font-size:26px;margin-bottom:12px}.method-step p:last-child{font-size:16px;max-width:none;grid-column:2}.contact-band{padding-block:58px;align-items:start;flex-direction:column;gap:27px}.contact-band h2{font-size:40px}.page-hero{padding-block:43px 34px}.page-hero h1{font-size:52px}.page-hero .eyebrow{margin-bottom:24px}.page-intro-row{margin-top:23px;align-items:start;flex-direction:column;gap:18px}.page-intro-row .copy{font-size:16px}.filter-row{gap:6px 19px}.filter-button{font-size:15px;padding-block:8px}.portfolio-tools{padding-block:15px;margin-bottom:27px}.archive-status{font-size:14px;margin-top:17px}.archive{padding-bottom:60px}.about-image img{height:300px}.about-story{grid-template-columns:1fr;gap:24px;padding-block:55px}.about-story h2{font-size:35px}.about-story .copy{font-size:18px}.resources{grid-template-columns:1fr;gap:35px;padding-block:40px 55px}.resource .eyebrow{margin-bottom:18px}.resource h3{font-size:26px}.contact-section{padding-block:55px}.contact-layout{grid-template-columns:1fr;gap:45px}.contact-info h2{font-size:47px}.contact-info>.copy{max-width:360px}.contact-lines{margin-top:26px}.legal{padding-block:35px 45px}.project-dialog{width:calc(100% - 24px);max-height:94dvh}.dialog-toolbar{padding:10px 16px}.dialog-toolbar p{font-size:14px}.dialog-close{font-size:15px}.dialog-body{grid-template-columns:1fr}.dialog-image{height:330px;max-height:48vh}.dialog-image-controls{padding:12px 16px}.dialog-thumbs{padding:0 16px 16px}.dialog-details{padding:25px 22px}.dialog-details h2{font-size:31px;margin-bottom:19px}.dialog-details .eyebrow{margin-bottom:16px}.dialog-meta{display:flex;gap:25px;flex-wrap:wrap;margin-top:20px;padding-top:18px}.dialog-meta dd{margin-bottom:0}.dialog-details .text-link{margin-top:22px}.footer-top{grid-template-columns:1fr 1fr;gap:25px;padding-block:43px}.footer-brand{font-size:43px}.footer-brand span{font-size:7px}.footer-intro{font-size:15px;line-height:1.9;margin-top:20px}.footer-contact .eyebrow{font-size:14px;letter-spacing:.05em}.footer-contact>p:nth-child(2){font-size:15px;line-height:2}.footer-address{font-size:14px}.footer-bottom{font-size:14px;padding-block:18px;gap:12px;align-items:start!important;flex-direction:column}}
@media(max-width:599px){.wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}.wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}}
@media(max-width:380px){.hero h1{font-size:47px}.hero-location{display:none}.projects-grid,.featured-grid{grid-template-columns:1fr}.project-visual,.featured-grid .project-visual,.featured-grid .project-card:nth-child(4n+2) .project-visual{aspect-ratio:4/3}.project-title{font-size:22px}.footer-top{grid-template-columns:1fr;gap:35px}.footer-contact>p:nth-child(2){font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}.project-card>summary:hover img{transform:none}}
.text-link a,.sector-name a{text-decoration:none}
.main-nav .nav-contact .wp-block-navigation-item__content{color:#fff!important}
@media(max-width:700px){
  .hero h1{font-size:clamp(35px,10vw,68px)}
  .page-hero h1{font-size:clamp(35px,10.1vw,52px)}
  .contact-form-shell div.wpforms-container-full input:not([type=checkbox]):not([type=radio]),.contact-form-shell div.wpforms-container-full select,.contact-form-shell div.wpforms-container-full textarea{font-size:18px!important}
}
@media(max-width:380px){.hero h1{font-size:clamp(32px,10vw,38px)}}
/* The editor mirrors the front end while leaving each native block selectable. */
.editor-styles-wrapper{font-family:Manrope,Arial,sans-serif;background:var(--paper)}.editor-styles-wrapper .shell{width:calc(100% - 48px)}.editor-styles-wrapper .hero-media{margin-left:0;width:100%}


/* Official client logo: original PNG, with its blank margins clipped only by CSS. */
.site-header{height:120px;gap:28px;background:var(--paper)}
.brand-group{width:240px;min-width:0}
.brand-logo{width:240px;max-width:100%;margin:0;mix-blend-mode:multiply}
.brand-logo a{display:block;line-height:0}
.brand-logo img{display:block;width:100%;height:82px;object-fit:cover;object-position:center}
.site-header .brand-logo{padding:4px 8px;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;mix-blend-mode:normal}
.main-nav{font-size:16px}
.main-nav .wp-block-navigation__container{gap:30px}
.hero-aside{max-width:380px;font-size:18px;line-height:1.75}
.copy{font-size:18px;line-height:1.8}
.hero-location{font-size:14px;line-height:1.6}
.hero-kicker{align-items:flex-start;flex-wrap:wrap}
.hero-kicker>.eyebrow,.hero-location{max-width:100%}
.hero-note{gap:20px;line-height:1.7}
.hero-note>p{min-width:0}
.intro .copy,.sectors-intro .copy,.page-intro-row .copy,.about-story .copy,
.resource .copy,.contact-info>.copy{font-size:18px;line-height:1.8}
.sectors-intro .copy{max-width:320px}
.sector-row{font-size:18px;gap:16px;min-height:104px}
.sector-row .sector-num{font-size:14px}
.sector-name{min-width:0}
.sector-name a{overflow-wrap:anywhere}
.project-title{font-size:24px}
.project-sector{font-size:15px}
.project-index{font-size:14px}
.filter-button{font-size:16px;min-height:44px}
.dialog-copy,.project-fallback{font-size:18px;line-height:1.8}
.gallery-arrow{min-width:44px;min-height:44px}
.project-open{width:44px;height:44px;font-size:24px}
.contact-lines p{font-size:20px}
.contact-lines a,.footer-contact a{overflow-wrap:anywhere}
.contact-lines .address{font-size:17px}
.contact-info>.copy{max-width:380px}
.form-note{font-size:16px}
.contact-form-shell div.wpforms-container-full input:not([type=checkbox]):not([type=radio]),
.contact-form-shell div.wpforms-container-full select{height:auto!important;min-height:54px!important;line-height:1.5!important}
.contact-form-shell div.wpforms-container-full textarea{min-height:180px;line-height:1.65!important}
.legal details p{font-size:17px}
.legal summary{font-size:16px;line-height:1.7}

/* A centered introduction, followed by three equal, readable stages. */
.method-section{padding-block:96px}
.method-heading{display:flex;flex-direction:column;align-items:center;gap:22px;max-width:850px;margin:0 auto 56px;text-align:center}
.method-heading .eyebrow{padding:0;font-size:14px;color:#c6d7e2}
.method-heading h2{font-size:clamp(38px,4.5vw,64px);font-weight:500;line-height:1.14;letter-spacing:-.045em}
.method-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.method-step{display:flex;flex-direction:column;min-width:0;padding:32px;background:#29373e;border:1px solid #52656f;border-top:3px solid #8eb0c9}
.step-num{font-size:14px;line-height:1.6;letter-spacing:.04em;color:#b9d1e1;margin:0 0 28px}
.method-step h3{font-size:26px;line-height:1.35;min-height:2.7em;font-weight:500;letter-spacing:-.035em;margin:0 0 18px}
.method-step p:last-child{font-size:18px;line-height:1.8;color:#e0e7e8;max-width:none;margin:0}

/* Small footer navigation stays visible, including on narrow screens. */
.footer-top{grid-template-columns:minmax(0,1.15fr) minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,4vw,64px);align-items:start}
.footer-logo{width:260px}
.footer-logo img{height:88px}
.footer-intro{font-size:18px;line-height:1.8;margin-top:20px}
.footer-explore .eyebrow,.footer-contact .eyebrow{font-size:14px;line-height:1.6;margin-bottom:20px}
.footer-explore,.footer-contact,.footer-identity{min-width:0}
.footer-nav{font-size:17px;line-height:1.6}
.footer-nav .wp-block-navigation__container{align-items:flex-start;gap:8px}
.footer-nav .wp-block-navigation-item__content{display:inline-block;padding-block:5px;text-decoration:none}
.footer-nav .wp-block-navigation-item__content:hover{text-decoration:underline;color:var(--blue)}
.footer-contact>p:nth-child(2){font-size:19px;line-height:1.9}
.footer-address{font-size:16px;line-height:1.8}
.footer-bottom{font-size:14px;line-height:1.8;align-items:center}
.footer-bottom p{min-width:0}
.footer-bottom a{display:inline-block;padding-block:5px}
.footer-bottom span{margin-inline:8px}

@media(max-width:1100px){
  .method-step{padding:26px}
  .method-step h3{font-size:24px}
  .method-steps{gap:18px}
}
@media(max-width:900px){
  .site-header{height:108px}
  .brand-group{width:220px}
  .brand-logo{width:220px}
  .brand-logo img{height:76px}
  .main-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex;padding:12px;min-width:48px;min-height:48px}
  .main-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
  .hero-heading-row{grid-template-columns:minmax(0,1fr);gap:28px}
  .hero h1{font-size:clamp(48px,7.4vw,74px)}
  .hero-aside{justify-self:start;max-width:620px}
  .intro,.sectors-layout,.about-story{grid-template-columns:minmax(0,1fr);gap:28px}
  .intro .copy{max-width:760px}
  .sectors-intro h2,.sectors-intro .copy{max-width:650px}
  .method-section{padding-block:72px}
  .method-steps{grid-template-columns:minmax(0,1fr);gap:20px}
  .method-step{padding:30px}
  .method-step h3{font-size:28px;min-height:0;margin-bottom:14px}
  .step-num{margin-bottom:18px}
  .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
  .footer-contact{grid-column:1/-1}
  .footer-logo{width:250px}
}
@media(max-width:700px){
  .site-header{height:96px}
  .brand-group,.brand-logo{width:190px}
  .brand-logo img{height:66px}
  .main-nav .wp-block-navigation__responsive-container.is-menu-open{padding:28px}
  .main-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{font-size:26px;gap:24px!important}
  .hero{padding-top:30px}
  .hero-kicker{gap:14px;margin-bottom:26px}
  .hero-location{font-size:13px}
  .eyebrow{font-size:14px;letter-spacing:.09em}
  .hero h1{font-size:clamp(36px,10vw,64px)}
  .hero-aside,.hero-aside .text-link{font-size:18px}
  .hero-aside{max-width:100%}
  .hero-caption .eyebrow{font-size:13px;line-height:1.7}
  .hero-caption .project-name{font-size:24px}
  .hero-note{font-size:14px}
  .hero-media>figure img{height:360px}
  .intro h2{font-size:32px}
  .section-head{flex-direction:column;gap:22px}
  .section-head>.text-link{max-width:none;font-size:16px;line-height:1.7;margin-top:0;white-space:normal}
  .sector-row{font-size:17px;min-height:100px;gap:12px}
  .sector-list{column-gap:26px}
  .sector-row .sector-num{font-size:13px}
  .sector-arrow{font-size:22px!important}
  .projects-grid,.featured-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .project-title{font-size:23px}
  .project-sector{font-size:15px}
  .featured-grid .project-visual,.featured-grid .project-card:nth-child(4n+2) .project-visual{aspect-ratio:4/3}
  .project-open{width:44px;height:44px}
  .method-section{padding-block:60px}
  .method-heading{gap:18px;margin-bottom:36px}
  .method-heading h2{font-size:clamp(34px,8.5vw,46px)}
  .method-heading h2 br{display:initial}
  .method-step{display:flex;gap:0;padding:26px}
  .method-step h3{font-size:26px}
  .method-step p:last-child{font-size:18px}
  .step-num{font-size:14px;margin-bottom:18px}
  .page-intro-row .eyebrow{line-height:1.9}
  .archive-status{font-size:14px;flex-wrap:wrap}
  .filter-button{font-size:16px}
  .contact-info h2{font-size:clamp(40px,10vw,52px)}
  .contact-lines p{font-size:19px}
  .contact-form-shell .wpforms-form .wpforms-one-half{width:100%!important;margin-left:0!important;float:none!important;clear:both!important}
  .dialog-toolbar{gap:10px}
  .dialog-toolbar p{font-size:13px}
  .dialog-close{font-size:16px;flex-shrink:0;padding:10px 0}
  .dialog-close span{margin-left:7px}
  .dialog-details .eyebrow,.dialog-meta dt{font-size:14px}
  .dialog-meta{font-size:16px}
  .footer-intro{font-size:18px}
  .footer-bottom{font-size:14px;gap:8px}
}
@media(max-width:600px){
  .sector-list{grid-template-columns:minmax(0,1fr)}
  .sector-row{min-height:74px;font-size:18px}
  .footer-top{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:44px}
  .footer-contact{grid-column:auto}
  .footer-logo{width:240px}
  .footer-logo img{height:82px}
  .footer-nav .wp-block-navigation__container{gap:8px}
  .footer-contact>p:nth-child(2){font-size:19px}
}
@media(max-width:380px){
  .hero h1{font-size:clamp(32px,10vw,38px)}
  .brand-group,.brand-logo{width:170px}
  .brand-logo img{height:60px}
  .footer-logo{width:230px}
  .footer-logo img{height:80px}
  .method-step{padding:22px}
  .method-step h3{font-size:24px}
}
