@font-face{font-family: "Fraunces";src: url("../fonts/fraunces-latin-opsz.woff2") format("woff2");font-weight: 100 900;font-style: normal;font-display: swap}@font-face{font-family: "Instrument Sans";src: url("../fonts/instrument-sans-latin-wght.woff2") format("woff2");font-weight: 400 700;font-style: normal;font-display: swap}@font-face{font-family: "Fraunces Fallback";src: local("Georgia"),local("Times New Roman");size-adjust: 104%;ascent-override: 94%;descent-override: 24%}@font-face{font-family: "Instrument Sans Fallback";src: local("Arial"),local("Helvetica Neue"),local("Helvetica");size-adjust: 96%;ascent-override: 98%;descent-override: 24%}:root{--c-forest: #183a35;--c-forest-700: #2f5e55;--c-navy: #122d32;--c-ivory: #f5f4ee;--c-ivory-200: #ecebe2;--c-white: #ffffff;--c-sage: #d5e6c4;--c-sage-300: #b9d0a5;--c-gray: #5a665f;--c-ink: #1c2522;--c-brand-blue: #2b3990;--c-on-dark: #f5f4ee;--c-on-dark-muted: #b7c7bf;--c-rule-dark: rgb(213 230 196 / 0.18);--c-rule: #d9d7cb;--c-rule-strong: #b9b6a6;--c-error: #9c3b2e;--c-error-bg: #f8e8e4;--c-success: #1e6b45;--c-success-bg: #e3efe5;--c-focus: #2b3990;--font-display: "Fraunces","Fraunces Fallback",Georgia,"Times New Roman",serif;--font-body: "Instrument Sans","Instrument Sans Fallback",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--fs-hero: clamp(2.6rem,1.6rem + 4.6vw,5.4rem);--fs-h1: clamp(2.2rem,1.55rem + 2.9vw,3.9rem);--fs-h2: clamp(1.8rem,1.35rem + 1.9vw,2.85rem);--fs-h3: clamp(1.3rem,1.15rem + 0.6vw,1.6rem);--fs-h4: 1.15rem;--fs-lead: clamp(1.13rem,1.05rem + 0.35vw,1.32rem);--fs-body: 1.0625rem;--fs-small: 0.9375rem;--fs-caption: 0.8125rem;--fs-label: 0.75rem;--fs-stat: clamp(2.6rem,2rem + 2.4vw,4rem);--lh-tight: 1.08;--lh-heading: 1.18;--lh-body: 1.65;--tracking-label: 0.12em;--space-3xs: 0.25rem;--space-2xs: 0.5rem;--space-xs: 0.75rem;--space-s: 1rem;--space-m: 1.5rem;--space-l: 2rem;--space-xl: clamp(2.5rem,2rem + 2vw,3.5rem);--space-2xl: clamp(3.5rem,2.6rem + 3.6vw,6rem);--space-3xl: clamp(4.5rem,3.2rem + 5.5vw,8.5rem);--gutter: clamp(1rem,0.5rem + 2.4vw,2.5rem);--container: 76rem;--container-narrow: 48rem;--measure: 66ch;--header-h: 4.5rem;--radius-s: 4px;--radius-m: 8px;--radius-l: 14px;--radius-pill: 999px;--shadow-s: 0 1px 2px rgb(18 45 50 / 0.06),0 1px 1px rgb(18 45 50 / 0.04);--shadow-m: 0 10px 30px -12px rgb(18 45 50 / 0.22);--ease: cubic-bezier(0.22,0.61,0.36,1);--dur-fast: 150ms;--dur: 260ms;--dur-slow: 600ms}*,*::before,*::after{box-sizing: border-box}*{margin: 0}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%}body{min-height: 100vh;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility}img,picture,svg,video{display: block;max-width: 100%}img{height: auto}input,button,textarea,select{font: inherit;color: inherit}button{cursor: pointer}p,h1,h2,h3,h4,h5,h6{overflow-wrap: break-word}ul[role="list"],ol[role="list"]{list-style: none;padding: 0}table{border-collapse: collapse}[hidden]{display: none !important}html{scroll-behavior: smooth;scroll-padding-top: calc(var(--header-h) + 1rem)}body{background: var(--c-ivory);color: var(--c-ink);font-family: var(--font-body);font-size: var(--fs-body);line-height: var(--lh-body);font-weight: 400}h1,h2,h3,h4{font-family: var(--font-display);font-weight: 420;line-height: var(--lh-heading);letter-spacing: -0.012em;color: var(--c-forest);font-optical-sizing: auto;text-wrap: balance}h1{font-size: var(--fs-h1);line-height: var(--lh-tight);letter-spacing: -0.02em}h2{font-size: var(--fs-h2)}h3{font-size: var(--fs-h3);font-weight: 460}h4{font-size: var(--fs-h4);font-family: var(--font-body);font-weight: 600;letter-spacing: 0}p{text-wrap: pretty}a{color: var(--c-forest);text-decoration-thickness: 1px;text-underline-offset: 0.2em;transition: color var(--dur-fast) var(--ease),text-decoration-color var(--dur-fast) var(--ease)}a:hover{color: var(--c-forest-700);text-decoration-thickness: 2px}strong{font-weight: 600}:focus-visible{outline: 3px solid var(--c-focus);outline-offset: 3px;border-radius: 2px}.on-dark :focus-visible,.site-footer :focus-visible{outline-color: var(--c-sage)}::selection{background: var(--c-sage);color: var(--c-forest)}hr{border: 0;border-top: 1px solid var(--c-rule)}address{font-style: normal}abbr[title]{text-decoration: underline dotted}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*,*::before,*::after{animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important}}.container{width: min(100% - 2 * var(--gutter),var(--container));margin-inline: auto}.container--narrow{width: min(100% - 2 * var(--gutter),var(--container-narrow))}.section{padding-block: var(--space-2xl)}.section--tight{padding-block: var(--space-xl)}.section--loose{padding-block: var(--space-3xl)}.section--white{background: var(--c-white)}.section--paper{background: var(--c-ivory-200)}.section--forest,.section--navy{color: var(--c-on-dark)}.section--forest{background: var(--c-forest)}.section--navy{background: var(--c-navy)}.section--forest :is(h2,h3,h4),.section--navy :is(h2,h3,h4){color: var(--c-on-dark)}.section--ruled{border-top: 1px solid var(--c-rule)}.section-head{display: grid;gap: var(--space-s) var(--space-xl);margin-bottom: var(--space-xl)}.section-head>*{max-width: 40rem}@media (min-width: 60em){.section-head--split{grid-template-columns: minmax(0,5fr) minmax(0,6fr);align-items: end}.section-head--split>:last-child{justify-self: end}}.stack>* + *{margin-top: var(--space-s)}.stack-l>* + *{margin-top: var(--space-m)}.prose{max-width: var(--measure)}.prose>* + *{margin-top: 1.1em}.prose p{font-size: var(--fs-body)}.grid{display: grid;gap: var(--space-l)}.grid--2{grid-template-columns: repeat(auto-fit,minmax(min(100%,22rem),1fr))}.grid--3{grid-template-columns: repeat(auto-fit,minmax(min(100%,18rem),1fr))}.grid--services{grid-template-columns: minmax(0,1fr)}@media (min-width: 40em){.grid--services{grid-template-columns: repeat(2,minmax(0,1fr))}}@media (min-width: 64em){.grid--services{grid-template-columns: repeat(3,minmax(0,1fr))}}.grid--pairs{grid-template-columns: minmax(0,1fr)}@media (min-width: 48em){.grid--pairs{grid-template-columns: repeat(2,minmax(0,1fr))}}.grid--4{grid-template-columns: repeat(auto-fit,minmax(min(100%,15rem),1fr))}.split{display: grid;gap: var(--space-l) var(--space-2xl)}@media (min-width: 56em){.split{grid-template-columns: minmax(0,4fr) minmax(0,8fr)}.split--even{grid-template-columns: repeat(2,minmax(0,1fr))}.split--wide-aside{grid-template-columns: minmax(0,5fr) minmax(0,7fr)}.split__aside--sticky{position: sticky;top: calc(var(--header-h) + var(--space-l));align-self: start}}.skip-link{position: absolute;left: var(--space-s);top: -100px;z-index: 100;padding: var(--space-xs) var(--space-s);background: var(--c-forest);color: var(--c-ivory);border-radius: var(--radius-s);font-weight: 600;text-decoration: none}.skip-link:focus{top: var(--space-s);color: var(--c-ivory)}main:focus{outline: none}.eyebrow{display: inline-flex;align-items: center;gap: 0.65rem;font-family: var(--font-body);font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-forest-700)}.eyebrow::before{content: "";width: 1.75rem;height: 1px;background: currentColor}.on-dark .eyebrow,.section--forest .eyebrow,.section--navy .eyebrow{color: var(--c-sage)}.lead{font-size: var(--fs-lead);line-height: 1.55;color: var(--c-ink);max-width: 44rem}.muted{color: var(--c-gray)}.section--forest .muted,.section--navy .muted{color: var(--c-on-dark-muted)}.btn{display: inline-flex;align-items: center;justify-content: center;gap: 0.6rem;min-height: 3rem;padding: 0.75rem 1.4rem;border: 1.5px solid transparent;border-radius: var(--radius-pill);font-family: var(--font-body);font-size: 0.97rem;font-weight: 600;line-height: 1.2;text-decoration: none;white-space: nowrap;transition: background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur-fast) var(--ease)}.btn .icon{width: 1.1rem;height: 1.1rem;transition: transform var(--dur) var(--ease)}.btn:hover .icon{transform: translateX(3px)}.btn:active{transform: translateY(1px)}.btn--primary{background: var(--c-forest);color: var(--c-ivory)}.btn--primary:hover{background: var(--c-forest-700);color: var(--c-ivory);text-decoration: none}.btn--secondary{border-color: var(--c-forest);color: var(--c-forest);background: transparent}.btn--secondary:hover{background: var(--c-forest);color: var(--c-ivory);text-decoration: none}.btn--light{background: var(--c-sage);color: var(--c-forest)}.btn--light:hover{background: var(--c-ivory);color: var(--c-forest);text-decoration: none}.btn--ghost-light{border-color: rgb(245 244 238 / 0.55);color: var(--c-ivory)}.btn--ghost-light:hover{border-color: var(--c-ivory);background: rgb(245 244 238 / 0.08);color: var(--c-ivory);text-decoration: none}.btn[disabled],.btn[aria-disabled="true"]{opacity: 0.65;cursor: progress}.btn-row{display: flex;flex-wrap: wrap;gap: var(--space-xs)}.link-arrow{display: inline-flex;align-items: center;gap: 0.45rem;font-weight: 600;text-decoration: none;color: var(--c-forest)}.link-arrow .icon{width: 1.05rem;height: 1.05rem;transition: transform var(--dur) var(--ease)}.link-arrow:hover{text-decoration: underline}.link-arrow:hover .icon{transform: translateX(3px)}.section--forest .link-arrow,.section--navy .link-arrow{color: var(--c-sage)}.icon{width: 1.25rem;height: 1.25rem;flex: none}.icon-badge{display: inline-grid;place-items: center;width: 3rem;height: 3rem;border-radius: 50%;background: var(--c-sage);color: var(--c-forest)}.icon-badge .icon{width: 1.45rem;height: 1.45rem}.site-header{position: sticky;top: 0;z-index: 50;background: var(--c-ivory);border-bottom: 1px solid transparent;transition: border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.site-header.is-scrolled{border-bottom-color: var(--c-rule);box-shadow: 0 6px 20px -16px rgb(18 45 50 / 0.5)}.site-header__inner{display: flex;align-items: center;justify-content: space-between;gap: var(--space-m);min-height: var(--header-h)}.brand{display: inline-flex;align-items: center;gap: 0.75rem;text-decoration: none;color: var(--c-forest);flex: none}.brand:hover{color: var(--c-forest)}.brand__mark{width: 2.6rem;height: auto;color: var(--c-brand-blue)}.brand__text{display: grid;line-height: 1.1}.brand__name{font-family: var(--font-display);font-size: 1.42rem;font-weight: 520;letter-spacing: -0.01em}.brand__sub{font-size: 0.7rem;font-weight: 500;letter-spacing: 0.04em;color: var(--c-gray)}.nav-toggle{display: inline-flex;align-items: center;gap: 0.5rem;min-height: 2.75rem;padding: 0.5rem 0.9rem;border: 1.5px solid var(--c-rule-strong);border-radius: var(--radius-pill);background: transparent;font-size: 0.95rem;font-weight: 600;color: var(--c-forest)}.nav-toggle .icon--close{display: none}.nav-toggle[aria-expanded="true"] .icon--menu{display: none}.nav-toggle[aria-expanded="true"] .icon--close{display: block}html:not(.js) .nav-toggle{display: none}.site-nav__list{list-style: none;padding: 0}.site-nav__link{display: inline-flex;align-items: center;min-height: 2.75rem;padding-inline: 0.15rem;font-weight: 500;font-size: 1rem;color: var(--c-ink);text-decoration: none;background-image: linear-gradient(currentColor,currentColor);background-size: 0 1.5px;background-repeat: no-repeat;background-position: 0 calc(100% - 0.55rem);transition: background-size var(--dur) var(--ease),color var(--dur-fast) var(--ease)}.site-nav__link:hover,.site-nav__link[aria-current="page"],.site-nav__link.is-section{color: var(--c-forest);background-size: 100% 1.5px}.dropdown-toggle{display: inline-grid;place-items: center;width: 2.75rem;height: 2.75rem;border: 0;background: transparent;color: var(--c-forest);border-radius: var(--radius-s)}.dropdown-toggle .icon{width: 1rem;height: 1rem;transition: transform var(--dur) var(--ease)}.dropdown-toggle[aria-expanded="true"] .icon{transform: rotate(180deg)}.dropdown__label{display: block;margin-bottom: 0.35rem;font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-gray)}.dropdown__list{list-style: none;padding: 0}.dropdown__list a{display: flex;align-items: center;gap: 0.6rem;min-height: 2.6rem;padding: 0.35rem 0;color: var(--c-ink);text-decoration: none;font-weight: 500}.dropdown__list a:hover,.dropdown__list a[aria-current="page"]{color: var(--c-forest);text-decoration: underline}.dropdown__list .icon{color: var(--c-forest-700)}@media (max-width: 63.99em){.brand__sub{display: none}html.js .site-nav{position: fixed;inset: var(--header-h) 0 0 0;overflow-y: auto;overscroll-behavior: contain;padding: var(--space-m) var(--gutter) var(--space-xl);background: var(--c-ivory);border-top: 1px solid var(--c-rule);visibility: hidden;opacity: 0;transform: translateY(-0.5rem);transition: opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s linear var(--dur)}html.js .site-nav.is-open{visibility: visible;opacity: 1;transform: none;transition: opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s}html:not(.js) .site-header__inner{flex-wrap: wrap}html:not(.js) .site-nav{width: 100%;padding-bottom: var(--space-m)}.site-nav__list>li{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;border-bottom: 1px solid var(--c-rule)}.site-nav__link{min-height: 3.25rem;font-family: var(--font-display);font-size: 1.45rem;font-weight: 420;background: none}.site-nav__link[aria-current="page"]{text-decoration: underline;text-decoration-thickness: 1.5px}.dropdown{width: 100%;display: grid;gap: var(--space-m);padding: 0 0 var(--space-m) 0}html.js .dropdown{display: none}html.js .has-dropdown.is-open .dropdown{display: grid}html:not(.js) .dropdown-toggle{display: none}.site-nav__cta{margin-top: var(--space-l);width: 100%}html.nav-open{overflow: hidden}}@media (min-width: 64em){.nav-toggle{display: none}.site-nav{display: flex;align-items: center;gap: var(--space-l)}.site-nav__list{display: flex;align-items: center;gap: clamp(1rem,0.2rem + 1.4vw,1.9rem)}.has-dropdown{position: relative;display: flex;align-items: center}.has-dropdown .dropdown-toggle{width: 1.9rem;margin-left: -0.15rem}.dropdown{position: absolute;top: calc(100% + 0.6rem);left: 50%;display: grid;grid-template-columns: 1fr 1fr;gap: var(--space-l);width: 38rem;padding: var(--space-l);background: var(--c-white);border: 1px solid var(--c-rule);border-radius: var(--radius-l);box-shadow: var(--shadow-m);opacity: 0;visibility: hidden;transform: translate(-50%,-6px);transition: opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s linear var(--dur)}.dropdown::before{content: "";position: absolute;inset: -0.9rem 0 auto 0;height: 0.9rem}.has-dropdown.is-open .dropdown,html:not(.js) .has-dropdown:hover .dropdown,html:not(.js) .has-dropdown:focus-within .dropdown{opacity: 1;visibility: visible;transform: translate(-50%,0);transition: opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s}@media (hover: hover){.has-dropdown:hover .dropdown{opacity: 1;visibility: visible;transform: translate(-50%,0);transition: opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility 0s}}.site-nav__cta{min-height: 2.75rem;padding-block: 0.55rem}}@media (min-width: 64em) and (max-width: 74.99em){.brand__sub{display: none}}.breadcrumbs ol{display: flex;flex-wrap: wrap;gap: 0.25rem 0.5rem;list-style: none;padding: 0;font-size: var(--fs-small);color: var(--c-gray)}.breadcrumbs li + li::before{content: "/";margin-right: 0.5rem;color: var(--c-rule-strong)}.breadcrumbs a{color: var(--c-gray);text-decoration: none}.breadcrumbs a:hover{color: var(--c-forest);text-decoration: underline}.breadcrumbs [aria-current="page"]{color: var(--c-ink)}.page-hero{position: relative;padding-block: var(--space-xl) var(--space-2xl);border-bottom: 1px solid var(--c-rule);overflow: hidden}.page-hero__inner{position: relative;display: grid;gap: var(--space-m)}.page-hero h1{max-width: 22ch}.page-hero--long h1{max-width: 34ch;font-size: clamp(1.9rem,1.4rem + 2.2vw,3.1rem)}.page-hero .lead{color: var(--c-ink)}.arc-motif{position: absolute;pointer-events: none;color: var(--c-sage)}.page-hero .arc-motif{right: -6rem;top: -9rem;width: clamp(18rem,12rem + 26vw,34rem);opacity: 0.75}@media (max-width: 47.99em){.page-hero .arc-motif{right: -9rem;top: -10rem;opacity: 0.45}}.card{position: relative;display: flex;flex-direction: column;gap: var(--space-s);height: 100%;padding: var(--space-l);background: var(--c-white);border: 1px solid var(--c-rule);border-radius: var(--radius-l);transition: border-color var(--dur) var(--ease),transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.card:has(.card__link:hover),.card:has(.card__link:focus-visible){border-color: var(--c-forest-700);box-shadow: var(--shadow-m);transform: translateY(-2px)}.card__link{color: inherit;text-decoration: none}.card__link::after{content: "";position: absolute;inset: 0;border-radius: inherit}.card__link:focus-visible{outline: none}.card:has(.card__link:focus-visible){outline: 3px solid var(--c-focus);outline-offset: 3px}.card__title{font-size: var(--fs-h3)}.card__text{color: var(--c-gray);font-size: var(--fs-small);line-height: 1.6}.card__foot{margin-top: auto;padding-top: var(--space-xs);display: flex;align-items: center;justify-content: space-between;gap: var(--space-s);font-size: var(--fs-small);font-weight: 600;color: var(--c-forest)}.card__foot .icon{transition: transform var(--dur) var(--ease)}.card:has(.card__link:hover) .card__foot .icon{transform: translateX(4px)}.service-card{border-radius: 0;border-width: 0 0 0 1px;background: transparent;padding: var(--space-s) 0 var(--space-s) var(--space-m)}.service-card:has(.card__link:hover){transform: none;box-shadow: none}.service-card__num{font-family: var(--font-display);font-size: 0.95rem;color: var(--c-forest-700);font-variant-numeric: lining-nums}.service-card .card__title{font-size: clamp(1.3rem,1.15rem + 0.5vw,1.55rem)}.service-card .card__text{font-size: var(--fs-body)}.project-card{padding: var(--space-m) var(--space-l) var(--space-l);overflow: hidden}.card__media{aspect-ratio: 3 / 2;margin: calc(-1 * var(--space-m)) calc(-1 * var(--space-l)) var(--space-2xs);overflow: hidden;background: var(--c-ivory-200)}.card__media .photo{width: 100%;height: 100%;object-fit: cover;transition: transform var(--dur-slow) var(--ease)}.card:has(.card__link:hover) .card__media .photo{transform: scale(1.04)}.project-card__top{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: var(--space-2xs)}.project-card__short{font-size: var(--fs-caption);font-weight: 600;letter-spacing: 0.06em;text-transform: uppercase;color: var(--c-gray)}.project-card .card__title{font-size: clamp(1.12rem,1.05rem + 0.3vw,1.28rem);line-height: 1.32;font-weight: 450}.project-card__meta{display: flex;flex-wrap: wrap;gap: 0.3rem 1rem;font-size: var(--fs-caption);color: var(--c-gray)}.project-card__meta span{display: inline-flex;align-items: center;gap: 0.35rem}.project-card__meta .icon{width: 0.95rem;height: 0.95rem}.badge{display: inline-flex;align-items: center;padding: 0.22rem 0.65rem;border-radius: var(--radius-pill);background: var(--c-sage);color: var(--c-forest);font-size: var(--fs-caption);font-weight: 600;line-height: 1.3}.badge--outline{background: transparent;border: 1px solid var(--c-rule-strong);color: var(--c-ink)}.tag-list{display: flex;flex-wrap: wrap;gap: 0.4rem;list-style: none;padding: 0}.stats{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0;list-style: none;padding: 0}@media (min-width: 48em){.stats{grid-template-columns: repeat(3,minmax(0,1fr))}}@media (min-width: 72em){.stats{grid-template-columns: repeat(6,minmax(0,1fr))}}.stat{display: flex;flex-direction: column-reverse;justify-content: flex-end;gap: 0.35rem;padding: var(--space-m) var(--space-m) var(--space-m) 0;border-top: 1px solid var(--c-rule-dark)}.stat__value{font-family: var(--font-display);font-size: var(--fs-stat);font-weight: 360;line-height: 1;letter-spacing: -0.03em;color: var(--c-ivory);font-variant-numeric: lining-nums tabular-nums}.stat__label{font-size: var(--fs-small);line-height: 1.35;color: var(--c-on-dark-muted);max-width: 14ch}.statement{font-family: var(--font-display);font-size: clamp(1.35rem,1.1rem + 1.05vw,1.95rem);line-height: 1.42;font-weight: 360;color: var(--c-forest);letter-spacing: -0.008em}.statement--long{font-size: clamp(1.2rem,1.05rem + 0.6vw,1.5rem);line-height: 1.5}.statement--light{color: var(--c-ivory)}.value-list{display: grid;grid-template-columns: repeat(auto-fit,minmax(min(100%,15rem),1fr));gap: 0;list-style: none;padding: 0;border-top: 1px solid var(--c-rule)}.value{padding: var(--space-m) var(--space-m) var(--space-m) 0;border-bottom: 1px solid var(--c-rule)}.value__title{font-size: 1.3rem;margin-bottom: 0.35rem}.value__text{color: var(--c-gray)}.strategy-list{list-style: none;padding: 0;counter-reset: strategy}.strategy{display: grid;grid-template-columns: 3rem minmax(0,1fr);gap: var(--space-xs) var(--space-m);padding-block: var(--space-m);border-top: 1px solid var(--c-rule-dark);counter-increment: strategy}.strategy::before{content: "0" counter(strategy);font-family: var(--font-display);font-size: 1.05rem;color: var(--c-sage);padding-top: 0.25rem}.strategy h3{font-size: 1.45rem;margin-bottom: 0.4rem}.strategy p{color: var(--c-on-dark-muted);max-width: 60ch}.team-grid{display: grid;grid-template-columns: repeat(auto-fit,minmax(min(100%,14rem),1fr));gap: var(--space-l);list-style: none;padding: 0}.person__photo{aspect-ratio: 1;width: 100%;object-fit: cover;border-radius: var(--radius-l);background: var(--c-ivory-200)}.person__monogram{display: grid;place-items: center;aspect-ratio: 1;width: 100%;border-radius: var(--radius-l);background: linear-gradient(160deg,var(--c-sage) 0%,#c3d9ae 100%);font-family: var(--font-display);font-size: clamp(2.5rem,2rem + 2vw,3.5rem);font-weight: 340;color: var(--c-forest);letter-spacing: 0.02em}.person__name{margin-top: var(--space-s);font-size: 1.3rem}.person__role{margin-top: 0.2rem;font-size: var(--fs-small);color: var(--c-gray)}.accordion{border-top: 1px solid var(--c-rule)}.accordion__item{border-bottom: 1px solid var(--c-rule)}.accordion__item summary{display: flex;align-items: center;justify-content: space-between;gap: var(--space-m);min-height: 3.5rem;padding-block: var(--space-s);font-family: var(--font-display);font-size: clamp(1.12rem,1.05rem + 0.35vw,1.3rem);color: var(--c-forest);cursor: pointer;list-style: none}.accordion__item summary::-webkit-details-marker{display: none}.accordion__item summary::after{content: "";flex: none;width: 0.7rem;height: 0.7rem;margin-right: 0.35rem;border-right: 1.5px solid currentColor;border-bottom: 1.5px solid currentColor;transform: rotate(45deg) translateY(-3px);transition: transform var(--dur) var(--ease)}.accordion__item[open] summary::after{transform: rotate(-135deg) translateY(-2px)}.accordion__item summary:hover{color: var(--c-forest-700)}.accordion__body{padding: 0 0 var(--space-m);color: var(--c-ink);max-width: 62ch}.facts{display: grid;gap: 0;padding: var(--space-l);background: var(--c-white);border: 1px solid var(--c-rule);border-radius: var(--radius-l)}.facts__row{padding-block: var(--space-s);border-bottom: 1px solid var(--c-rule)}.facts__row:first-child{padding-top: 0}.facts__row:last-child{border-bottom: 0;padding-bottom: 0}.facts dt{font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-gray)}.facts dd{margin: 0.2rem 0 0;font-weight: 500}.facts dd ul{list-style: none;padding: 0}.form{display: grid;gap: var(--space-m)}.form__row{display: grid;gap: var(--space-m)}@media (min-width: 36em){.form__row--2{grid-template-columns: repeat(2,minmax(0,1fr))}}.form__fieldset{min-width: 0;margin: 0;padding: 0;border: 0}.form__fieldset>legend{margin-bottom: 0.4rem;padding: 0}.field{display: grid;gap: 0.4rem}.field__label{font-size: var(--fs-small);font-weight: 600;color: var(--c-ink)}.field__req{color: var(--c-error);font-weight: 600}.field__hint{font-size: var(--fs-caption);color: var(--c-gray)}.field__input{width: 100%;min-height: 3rem;padding: 0.7rem 0.9rem;border: 1.5px solid var(--c-rule-strong);border-radius: var(--radius-m);background: var(--c-white);color: var(--c-ink);font-size: 1rem;line-height: 1.4;transition: border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.field__input:hover{border-color: var(--c-gray)}.field__input:focus{outline: none;border-color: var(--c-forest);box-shadow: 0 0 0 3px rgb(43 57 144 / 0.25)}textarea.field__input{min-height: 9.5rem;resize: vertical}select.field__input{appearance: none;padding-right: 2.5rem;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%231c2522' stroke-width='1.6'%3E%3Cpath d='m1 1.5 5 5 5-5'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: right 1rem center}.field--invalid .field__input{border-color: var(--c-error)}.field__error{display: flex;align-items: flex-start;gap: 0.35rem;font-size: var(--fs-small);font-weight: 500;color: var(--c-error)}.field__error .icon{width: 1.05rem;height: 1.05rem;margin-top: 0.15rem}.form__note{font-size: var(--fs-caption);color: var(--c-gray)}.hp-field{position: absolute !important;left: -10000px;width: 1px;height: 1px;overflow: hidden}.alert{display: flex;gap: var(--space-s);padding: var(--space-m);border-radius: var(--radius-m);border: 1px solid}.alert .icon{width: 1.4rem;height: 1.4rem;margin-top: 0.1rem}.alert__title{font-weight: 600;margin-bottom: 0.2rem}.alert--success{background: var(--c-success-bg);border-color: rgb(30 107 69 / 0.35);color: var(--c-success)}.alert--success p{color: var(--c-ink)}.alert--error{background: var(--c-error-bg);border-color: rgb(156 59 46 / 0.35);color: var(--c-error)}.alert--error p,.alert--error li{color: var(--c-ink)}.alert ul{margin-top: 0.35rem;padding-left: 1.1rem}.alert a{color: inherit;font-weight: 600}.filters{display: grid;gap: var(--space-s);padding: var(--space-m);background: var(--c-white);border: 1px solid var(--c-rule);border-radius: var(--radius-l)}@media (min-width: 52em){.filters{grid-template-columns: minmax(0,1.6fr) repeat(3,minmax(0,1fr)) auto;align-items: end}}.filters .field__label{font-size: var(--fs-caption)}.filters .field__input{min-height: 2.75rem;padding-block: 0.5rem}.search-input{position: relative}.search-input .icon{position: absolute;left: 0.85rem;top: 50%;transform: translateY(-50%);color: var(--c-gray);pointer-events: none}.search-input .field__input{padding-left: 2.6rem}.filters__actions{display: flex;gap: var(--space-2xs);align-items: center}.filters__actions .btn{min-height: 2.75rem;padding-block: 0.5rem}html.js .filters__submit{display: none}.results-bar{display: flex;flex-wrap: wrap;align-items: baseline;justify-content: space-between;gap: var(--space-xs);margin-block: var(--space-l) var(--space-m);font-size: var(--fs-small);color: var(--c-gray)}.results-bar strong{color: var(--c-ink)}.empty-state{padding: var(--space-xl);text-align: center;border: 1px dashed var(--c-rule-strong);border-radius: var(--radius-l);color: var(--c-gray)}.contact-list{display: grid;gap: var(--space-m);list-style: none;padding: 0}.contact-item{display: grid;grid-template-columns: auto minmax(0,1fr);gap: var(--space-s);align-items: start}.contact-item__label{font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-gray)}.contact-panel a:not(.btn){color: var(--c-ivory)}.contact-panel .link-arrow{color: var(--c-sage)}.contact-item__value{font-size: 1.1rem;font-weight: 500;overflow-wrap: anywhere}.contact-panel .contact-item__label,.section--forest .contact-item__label,.section--navy .contact-item__label{color: var(--c-on-dark-muted)}.contact-panel .contact-item__value a,.section--forest .contact-item__value a,.section--navy .contact-item__value a{color: var(--c-ivory)}.contact-panel .icon-badge,.section--forest .icon-badge,.section--navy .icon-badge{background: rgb(213 230 196 / 0.14);color: var(--c-sage)}.cta-band{position: relative;overflow: hidden;isolation: isolate}.cta-band .arc-motif{right: -8rem;bottom: -14rem;width: clamp(20rem,14rem + 28vw,40rem);color: rgb(213 230 196 / 0.14);z-index: -1}.cta-band__inner{display: grid;gap: var(--space-l);align-items: end}@media (min-width: 56em){.cta-band__inner{grid-template-columns: minmax(0,7fr) minmax(0,5fr)}.cta-band__inner .btn-row{justify-content: flex-end}}.cta-band h2{font-size: clamp(2rem,1.5rem + 2.2vw,3.3rem);max-width: 18ch}.cta-band p{margin-top: var(--space-s);color: var(--c-on-dark-muted);max-width: 46ch}.site-footer{background: var(--c-navy);color: var(--c-on-dark-muted);font-size: var(--fs-small)}.site-footer a{color: var(--c-ivory);text-decoration: none}.site-footer a:hover{color: var(--c-sage);text-decoration: underline}.site-footer__main{display: grid;gap: var(--space-xl) var(--space-l);padding-block: var(--space-2xl) var(--space-xl)}@media (min-width: 48em){.site-footer__main{grid-template-columns: repeat(2,minmax(0,1fr))}}@media (min-width: 64em){.site-footer__main{grid-template-columns: minmax(0,4fr) repeat(3,minmax(0,2.2fr))}}.site-footer .brand{color: var(--c-ivory)}.site-footer .brand__mark{color: var(--c-ivory)}.site-footer .brand__sub{display: block;color: var(--c-on-dark-muted)}.site-footer__about{margin-top: var(--space-m);max-width: 34ch;line-height: 1.6}.site-footer__heading{margin-bottom: var(--space-s);font-family: var(--font-body);font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-sage)}.site-footer__list{display: grid;gap: 0.55rem;list-style: none;padding: 0}.site-footer__bottom{display: flex;flex-wrap: wrap;justify-content: space-between;gap: var(--space-xs) var(--space-l);padding-block: var(--space-m);border-top: 1px solid var(--c-rule-dark);font-size: var(--fs-caption)}html.js .reveal{opacity: 0;transform: translateY(18px);transition: opacity var(--dur-slow) var(--ease),transform var(--dur-slow) var(--ease)}html.js .reveal.is-visible{opacity: 1;transform: none}@media (prefers-reduced-motion: reduce){html.js .reveal{opacity: 1;transform: none}}@media print{html.js .reveal{opacity: 1;transform: none}}@media (min-width: 40em){.value-list{grid-template-columns: repeat(2,minmax(0,1fr))}}.hero{position: relative;padding-block: var(--space-xl) var(--space-2xl);overflow: hidden}.hero__grid{display: grid;gap: var(--space-xl);align-items: stretch}@media (min-width: 60em){.hero__grid{grid-template-columns: minmax(0,6fr) minmax(0,5fr);gap: var(--space-2xl);align-items: center}}.hero__copy{display: flex;flex-direction: column;justify-content: center;gap: var(--space-m);padding-block: var(--space-l)}.hero__title{font-size: var(--fs-hero);font-weight: 380;line-height: 1.02;letter-spacing: -0.03em;max-width: 13ch}.hero__title em{font-style: normal;color: var(--c-forest-700)}.hero__tagline{font-family: var(--font-display);font-size: clamp(1.2rem,1.05rem + 0.7vw,1.6rem);font-weight: 360;color: var(--c-ink);padding-left: var(--space-s);border-left: 2px solid var(--c-sage-300)}.hero__copy .btn-row{margin-top: var(--space-xs)}.hero__media{position: relative;margin: 0}.hero__frame{position: relative;aspect-ratio: 4 / 3;border-radius: var(--radius-l);overflow: hidden;background: var(--c-ivory-200)}@media (min-width: 60em){.hero__frame{aspect-ratio: 5 / 6}}.hero__frame .photo{width: 100%;height: 100%;object-fit: cover}.hero__badge{position: absolute;left: var(--space-s);bottom: var(--space-s);display: grid;gap: 0.15rem;padding: var(--space-s) var(--space-m);border-radius: var(--radius-m);background: var(--c-forest);color: var(--c-on-dark);box-shadow: var(--shadow-m)}.hero__since-label{font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-sage)}.hero__since-year{font-family: var(--font-display);font-size: clamp(2.4rem,2rem + 1.8vw,3.4rem);font-weight: 320;line-height: 1;letter-spacing: -0.04em;color: var(--c-ivory)}.hero__since-place{color: var(--c-on-dark-muted);font-size: var(--fs-small)}.hero__credit{margin-top: var(--space-2xs);font-size: var(--fs-caption);line-height: 1.45;color: var(--c-gray)}.hero__credit a{color: var(--c-gray)}.hero>.arc-motif{left: -18rem;bottom: -27rem;width: 40rem;opacity: 0.4}.intro h2{max-width: 16ch}.intro__body{display: grid;gap: var(--space-m);align-content: start}.founder{display: grid;grid-template-columns: 5.5rem minmax(0,1fr);gap: var(--space-s);align-items: center;margin-top: var(--space-l);padding-top: var(--space-m);border-top: 1px solid var(--c-rule)}.founder .person__photo,.founder .person__monogram{border-radius: 50%;font-size: 1.6rem}.founder__name{font-family: var(--font-display);font-size: 1.2rem;color: var(--c-forest)}.founder__role{font-size: var(--fs-small);color: var(--c-gray)}.sector-card{padding: var(--space-l);gap: var(--space-m)}.sector-card__count{font-size: var(--fs-small);color: var(--c-gray)}.mv-grid{display: grid;gap: var(--space-l)}@media (min-width: 56em){.mv-grid{grid-template-columns: repeat(2,minmax(0,1fr))}}.mv-card{padding: var(--space-xl) var(--space-l);border-radius: var(--radius-l);background: var(--c-white);border: 1px solid var(--c-rule)}.mv-card--dark{background: var(--c-forest);border-color: var(--c-forest)}.mv-card--dark h2,.mv-card--dark .statement{color: var(--c-ivory)}.mv-card h2{font-family: var(--font-body);font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-forest-700);margin-bottom: var(--space-m)}.mv-card--dark h2{color: var(--c-sage)}.aim{margin-top: var(--space-l);padding: var(--space-l) 0 0;border-top: 1px solid var(--c-rule)}.detail-layout{display: grid;gap: var(--space-2xl)}@media (min-width: 60em){.detail-layout{grid-template-columns: minmax(0,8fr) minmax(0,4fr);gap: var(--space-2xl)}}.detail-body .statement{max-width: 34ch}.side-nav{display: grid;gap: var(--space-l);align-self: start}@media (min-width: 60em){.side-nav{position: sticky;top: calc(var(--header-h) + var(--space-l))}}.side-nav__group h2{margin-bottom: var(--space-xs);font-family: var(--font-body);font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-gray)}.side-nav__list{list-style: none;padding: 0;border-top: 1px solid var(--c-rule)}.side-nav__list li{border-bottom: 1px solid var(--c-rule)}.side-nav__list a{display: flex;align-items: center;gap: 0.6rem;min-height: 3rem;padding-block: 0.5rem;color: var(--c-ink);text-decoration: none;font-weight: 500;line-height: 1.3}.side-nav__list a:hover{color: var(--c-forest);text-decoration: underline}.side-nav__list a[aria-current="page"]{color: var(--c-forest);font-weight: 600}.side-nav__list a[aria-current="page"]::before{content: "";width: 6px;height: 6px;border-radius: 50%;background: var(--c-forest);margin-left: -0.9rem;margin-right: 0.3rem}.notice{padding: var(--space-m);border-left: 3px solid var(--c-sage-300);background: var(--c-white);color: var(--c-gray);font-size: var(--fs-small)}.project-hero__meta{display: flex;flex-wrap: wrap;gap: var(--space-2xs)}.project-body{display: grid;gap: var(--space-2xl)}@media (min-width: 60em){.project-body{grid-template-columns: minmax(0,7fr) minmax(0,4fr)}.project-body .facts{position: sticky;top: calc(var(--header-h) + var(--space-l));align-self: start}}.project-body .prose p:first-child{font-size: var(--fs-lead);line-height: 1.6}.contact-layout{display: grid;gap: var(--space-xl)}@media (min-width: 60em){.contact-layout{grid-template-columns: minmax(0,5fr) minmax(0,7fr);gap: var(--space-2xl)}}.contact-panel{display: grid;gap: var(--space-l);align-content: start;padding: var(--space-xl) var(--space-l);border-radius: var(--radius-l);background: var(--c-forest);color: var(--c-on-dark)}.contact-panel h2{color: var(--c-ivory);font-size: var(--fs-h3)}.form-card{padding: var(--space-xl) var(--space-l);border-radius: var(--radius-l);background: var(--c-white);border: 1px solid var(--c-rule)}.form-card h2{font-size: var(--fs-h3);margin-bottom: var(--space-2xs)}.form-card>p{margin-bottom: var(--space-l);color: var(--c-gray)}.error-page{padding-block: var(--space-3xl);text-align: left}.error-page__code{font-family: var(--font-display);font-size: clamp(5rem,3rem + 9vw,10rem);font-weight: 300;line-height: 1;color: var(--c-sage-300);letter-spacing: -0.05em}.legal h2{font-size: var(--fs-h3);margin-top: var(--space-l)}.legal ul{padding-left: 1.2rem}.legal li + li{margin-top: 0.4rem}.project-figure{margin: 0 0 var(--space-xl)}.project-figure__frame{aspect-ratio: 3 / 2;border-radius: var(--radius-l);overflow: hidden;background: var(--c-ivory-200)}.project-figure__frame .photo{width: 100%;height: 100%;object-fit: cover}.project-figure figcaption{margin-top: var(--space-xs);font-size: var(--fs-small);line-height: 1.55;color: var(--c-gray);max-width: 62ch}.project-figure__label{display: inline-block;margin-right: 0.4rem;font-size: var(--fs-label);font-weight: 600;letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-forest-700)}.project-figure__credit{display: block;margin-top: 0.2rem;font-size: var(--fs-caption)}.project-figure__credit a{color: var(--c-gray)}.credit-list{display: grid;gap: var(--space-l);list-style: none;padding: 0}.credit-item{display: grid;grid-template-columns: 7.5rem minmax(0,1fr);gap: var(--space-m);align-items: start;padding-bottom: var(--space-l);border-bottom: 1px solid var(--c-rule)}@media (min-width: 40em){.credit-item{grid-template-columns: 11rem minmax(0,1fr)}}.credit-item__thumb{aspect-ratio: 4 / 3;border-radius: var(--radius-m);overflow: hidden;background: var(--c-ivory-200)}.credit-item__thumb .photo{width: 100%;height: 100%;object-fit: cover}.credit-item h2{font-size: 1.15rem;line-height: 1.35}.credit-item p{margin-top: 0.3rem;font-size: var(--fs-small);color: var(--c-gray)}.photo[data-focus="30% 50%"]{object-position: 30% 50%}.photo[data-focus="35% 40%"]{object-position: 35% 40%}.photo[data-focus="40% 50%"]{object-position: 40% 50%}.photo[data-focus="50% 25%"]{object-position: 50% 25%}.photo[data-focus="50% 30%"]{object-position: 50% 30%}.photo[data-focus="50% 35%"]{object-position: 50% 35%}.photo[data-focus="50% 40%"]{object-position: 50% 40%}.photo[data-focus="50% 45%"]{object-position: 50% 45%}.photo[data-focus="50% 50%"]{object-position: 50% 50%}.photo[data-focus="50% 55%"]{object-position: 50% 55%}.photo[data-focus="50% 60%"]{object-position: 50% 60%}.photo[data-focus="55% 55%"]{object-position: 55% 55%}.visually-hidden{position: absolute !important;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0}.mt-s{margin-top: var(--space-s)}.mt-m{margin-top: var(--space-m)}.mt-l{margin-top: var(--space-l)}.mt-xl{margin-top: var(--space-xl)}.mb-l{margin-bottom: var(--space-l)}.text-center{text-align: center}.nowrap{white-space: nowrap}@media print{.site-header,.site-footer,.cta-band,.filters,.nav-toggle,.arc-motif{display: none !important}body{background: #fff}a[href^="http"]::after{content: " (" attr(href) ")";font-size: 0.85em}}
