@font-face{font-family:Young Serif;src:url(/fonts/YoungSerif-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Figtree;src:url(/fonts/Figtree-Variable.woff2)format("woff2");font-weight:300 900;font-style:normal;font-display:swap}:root{--leaf-900:#16291d;--leaf-800:#1f3a2a;--leaf-700:#2c5035;--moss-700:#3f5e2b;--moss-600:#4b6e34;--fern-500:#6e9150;--sage-300:#b5c4a1;--sage-200:#cfdabf;--sage-100:#e1e8d8;--chalk-50:#f6f6f1;--paper-0:#fcfcf9;--stone-100:#ecebe3;--stone-200:#e4e2d9;--stone-300:#d3d1c5;--stone-700:#5b584c;--soil-700:#4a4439;--soil-900:#24201a;--marigold-500:#e2a72e;--marigold-600:#c98d14;--marigold-700:#8a5a00;--marigold-100:#f8e9c4;--color-bg:var(--chalk-50);--color-bg-alt:var(--stone-100);--color-bg-tint:var(--sage-100);--color-surface:var(--paper-0);--color-dark:var(--leaf-800);--color-darker:var(--leaf-900);--color-text:var(--soil-900);--color-text-soft:var(--soil-700);--color-text-muted:var(--stone-700);--color-heading:var(--leaf-800);--color-link:var(--moss-700);--color-link-hover:var(--leaf-800);--color-eyebrow:var(--moss-700);--color-on-dark:var(--chalk-50);--color-on-dark-soft:var(--sage-300);--color-on-dark-accent:var(--marigold-500);--color-accent:var(--marigold-500);--color-accent-hover:var(--marigold-600);--color-on-accent:var(--leaf-900);--color-border:var(--stone-300);--color-border-on-dark:#b5c4a159;--color-focus:var(--leaf-800);--color-focus-on-dark:var(--marigold-500);--color-error:#9b2c1f;--font-heading:"Young Serif", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--text-sm:.875rem;--text-base:1.0625rem;--text-lg:1.25rem;--text-xl:clamp(1.375rem, 1.2rem + .7vw, 1.75rem);--text-2xl:clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);--text-3xl:clamp(2.125rem, 1.6rem + 2.4vw, 3.5rem);--text-4xl:clamp(2.5rem, 1.7rem + 3.6vw, 4.75rem);--text-hero:clamp(2.875rem, 1.6rem + 5vw, 6.25rem);--leading-tight:1.04;--leading-heading:1.12;--leading-body:1.65;--measure:62ch;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2.25rem;--space-xl:3.5rem;--space-2xl:5.5rem;--space-3xl:clamp(4.5rem, 3rem + 7vw, 9.5rem);--gutter:clamp(1.25rem, .5rem + 3.5vw, 3rem);--container:80rem;--container-narrow:52rem;--radius-sm:4px;--radius-md:10px;--radius-lg:20px;--radius-pill:999px;--radius-leaf:0 clamp(4rem, 12vw, 9rem) 0 0;--radius-leaf-left:clamp(4rem, 12vw, 9rem) 0 0 0;--shadow-sm:0 1px 2px #16291d14;--shadow-md:0 8px 24px -8px #16291d2e;--shadow-lg:0 24px 48px -16px #16291d47;--ease:cubic-bezier(.2, .7, .2, 1);--duration:.22s;--ease-out:cubic-bezier(.16, 1, .3, 1);--reveal-duration:.8s}@view-transition{navigation:auto}::view-transition-old(root){animation:.18s ease-out both page-out}::view-transition-new(root){animation:.38s var(--ease-out) both page-in}@keyframes page-out{to{opacity:0}}@keyframes page-in{0%{opacity:0}}.js [data-reveal]{opacity:0;transition:opacity var(--reveal-duration) var(--ease-out), transform var(--reveal-duration) var(--ease-out);transition-delay:var(--delay,0s);will-change:opacity, transform;transform:translateY(2rem)}.js [data-reveal=heading]{transform:translateY(2.5rem)}.js [data-reveal=image]{transition-duration:1s;transform:translateY(2.5rem)scale(.97)}.js [data-reveal=image] img{transition:transform 1.6s var(--ease-out);transition-delay:var(--delay,0s);transform:scale(1.14)}.js [data-reveal].is-in{opacity:1;will-change:auto;transform:none}.js [data-reveal=image].is-in img{transform:scale(1)}.js .eyebrow[data-reveal]:before{transform-origin:0;transition:transform .7s var(--ease-out) .2s;transform:scaleX(0)}.js .eyebrow[data-reveal].is-in:before{transform:scaleX(1)}@keyframes rise{0%{opacity:0;transform:translateY(1.75rem)}}@keyframes settle{0%{opacity:0;transform:scale(1.12)}}@keyframes fade{0%{opacity:0}}@keyframes grow-line{0%{transform:scaleX(0)}}.hero__text>*,.page-hero__inner>*,.about-hero__text>*{animation:rise .9s var(--ease-out) both}.hero__text>:first-child,.page-hero__inner>:first-child,.about-hero__text>:first-child{animation-delay:80ms}.hero__text>:nth-child(2),.page-hero__inner>:nth-child(2),.about-hero__text>:nth-child(2){animation-delay:.22s}.hero__text>:nth-child(3),.page-hero__inner>:nth-child(3),.about-hero__text>:nth-child(3){animation-delay:.36s}.hero__text>:nth-child(4),.page-hero__inner>:nth-child(4),.about-hero__text>:nth-child(4){animation-delay:.5s}.hero__text>:nth-child(n+5),.page-hero__inner>:nth-child(n+5),.about-hero__text>:nth-child(n+5){animation-delay:.64s}.page-hero .eyebrow:before,.about-hero .eyebrow:before{transform-origin:0;animation:grow-line .8s var(--ease-out) .4s both}.hero__image,.about-hero__image{overflow:hidden}.hero__image img,.about-hero__image img{animation:settle 1.8s var(--ease-out) both;will-change:transform}.header{animation:.7s ease-out both fade}.scroll-progress{z-index:60;background:var(--marigold-500);transform-origin:0;pointer-events:none;height:3px;position:fixed;inset:0 0 auto;transform:scaleX(0)}.project,.service,.value,.member,.card,.hub>li{transition:translate .4s var(--ease-out), box-shadow .4s var(--ease-out)}@media (hover:hover){.project:hover,.value:hover,.member:hover,.card:hover{translate:0 -6px}.value:hover,.member:hover,.card:hover{box-shadow:var(--shadow-md)}.project .ph img,.member .ph img,.hub .ph img{transition:transform .9s var(--ease-out)}.project:hover .ph img,.member:hover .ph img,.hub li:hover .ph img{transform:scale(1.06)}}.btn{transition-property:background-color,color,border-color,transform,box-shadow}@media (hover:hover){.btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}}.btn:active{box-shadow:none;transform:translateY(0)scale(.98)}.footer a{transition:color var(--duration) var(--ease), translate var(--duration) var(--ease)}@media (prefers-reduced-motion:reduce){.js [data-reveal],.js [data-reveal] img{opacity:1!important;transition:none!important;transform:none!important}.hero__text>*,.page-hero__inner>*,.about-hero__text>*,.hero__image img,.about-hero__image img,.header,.eyebrow:before{animation:none!important}.scroll-progress{display:none}::view-transition-old(root),::view-transition-new(root){animation:none}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}img,svg{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:400;line-height:var(--leading-heading);letter-spacing:-.012em;color:var(--color-heading);text-wrap:balance;margin:0}h1{font-size:var(--text-4xl);line-height:var(--leading-tight)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}p{max-width:var(--measure);text-wrap:pretty;margin:0 0 1em}ul,ol{margin:0;padding:0;list-style:none}a{color:var(--color-link);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--color-link-hover);text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;border-radius:2px}.on-dark :focus-visible,.bg-dark :focus-visible,.bg-darker :focus-visible{outline-color:var(--color-focus-on-dark)}::selection{background:var(--marigold-500);color:var(--leaf-900)}.skip-link{left:var(--space-sm);z-index:100;padding:var(--space-xs) var(--space-sm);background:var(--color-accent);color:var(--color-on-accent);border-radius:var(--radius-md);font-weight:700;position:absolute;top:-4rem}.skip-link:focus{top:var(--space-sm)}.vh{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:min(100% - 2 * var(--gutter), var(--container));margin-inline:auto}.container--narrow{width:min(100% - 2 * var(--gutter), var(--container-narrow));margin-inline:auto}.section{padding-block:var(--space-3xl)}.bg-alt{background:var(--color-bg-alt)}.bg-tint{background:var(--color-bg-tint)}.bg-dark,.bg-darker{color:var(--color-on-dark)}.bg-dark{background:var(--color-dark)}.bg-darker{background:var(--color-darker)}.bg-dark h1,.bg-dark h2,.bg-dark h3,.bg-dark h4,.bg-darker h1,.bg-darker h2,.bg-darker h3,.bg-darker h4,.bg-dark a:not(.btn),.bg-darker a:not(.btn){color:var(--color-on-dark)}.eyebrow{margin:0 0 var(--space-sm);letter-spacing:.01em;color:var(--color-eyebrow);align-items:center;gap:.75rem;font-size:1.0625rem;font-weight:650;display:inline-flex}.eyebrow:before{content:"";background:currentColor;border-radius:2px;width:2.25rem;height:2px}.bg-dark .eyebrow,.bg-darker .eyebrow,.on-dark .eyebrow{color:var(--color-on-dark-accent)}.lede{font-size:var(--text-lg);color:var(--color-text-soft);line-height:1.6}.bg-dark .lede,.bg-darker .lede{color:var(--color-on-dark-soft)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.field{border:0;align-content:start;gap:.4rem;min-width:0;margin:0;padding:0;display:grid}.field>label,.field>legend{color:var(--color-text);padding:0;font-size:1rem;font-weight:700}.field input[type=text],.field input[type=email],.field input[type=tel],.field select,.field textarea{border:1.5px solid var(--stone-700);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:3.25rem;color:var(--color-text);font:inherit;transition:border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);padding:.75rem 1rem}.field textarea{resize:vertical;min-height:8rem}.field input::placeholder,.field textarea::placeholder{color:var(--stone-700);opacity:1}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--leaf-800)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--leaf-800);box-shadow:0 0 0 4px var(--sage-300);outline:none}.field__hint,.field__error{font-size:var(--text-sm);margin:0}.field__hint{color:var(--color-text-muted)}.field__error{color:var(--color-error);font-weight:600}.field--error input{border-color:var(--color-error)}.choice{cursor:pointer;align-items:center;gap:.75rem;min-height:2.5rem;display:flex}.choice input{width:1.375rem;height:1.375rem;accent-color:var(--moss-700);margin:0}.btn{border-radius:var(--radius-pill);min-height:3.5rem;font-family:var(--font-body);cursor:pointer;transition:background-color var(--duration) var(--ease), color var(--duration) var(--ease), border-color var(--duration) var(--ease), transform var(--duration) var(--ease);border:2px solid #0000;justify-content:center;align-items:center;gap:.75rem;padding:.75rem 1.75rem;font-size:1.0625rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.btn svg{transition:transform var(--duration) var(--ease);flex:none}.btn:hover svg{transform:translate(4px)}.btn--primary{background:var(--color-accent);color:var(--color-on-accent)}.btn--primary:hover{background:var(--color-accent-hover);color:var(--color-on-accent)}.btn--dark{background:var(--color-dark);color:var(--color-on-dark)}.btn--dark:hover{background:var(--leaf-700);color:var(--color-on-dark)}.btn--secondary{color:var(--color-heading);background:0 0;border-color:currentColor}.btn--secondary:hover{background:var(--color-heading);border-color:var(--color-heading);color:var(--color-on-dark)}.bg-dark .btn--secondary,.bg-darker .btn--secondary{color:var(--color-on-dark)}.bg-dark .btn--secondary:hover,.bg-darker .btn--secondary:hover{background:var(--color-on-dark);border-color:var(--color-on-dark);color:var(--leaf-900)}.btn--ghost{min-height:2.75rem;color:var(--color-link);border-radius:var(--radius-sm);text-underline-offset:.25em;padding-inline:.25rem;text-decoration:underline 1px}.bg-dark .btn--ghost,.bg-darker .btn--ghost{color:var(--color-on-dark)}.header[data-astro-cid-nen7h5rs]{z-index:20;border-bottom:1px solid var(--color-border-on-dark);position:relative}.header__bar[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:var(--space-md);min-height:5rem;display:flex}.brand[data-astro-cid-nen7h5rs]{color:var(--color-on-dark);align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.brand[data-astro-cid-nen7h5rs]:hover{color:var(--color-on-dark)}.brand__mark[data-astro-cid-nen7h5rs]{background:var(--moss-600);width:2.5rem;height:2.5rem;color:var(--color-on-dark);border-radius:50%;place-items:center;display:grid}.brand__name[data-astro-cid-nen7h5rs]{font-family:var(--font-heading);letter-spacing:-.01em;font-size:1.375rem}.menu-toggle[data-astro-cid-nen7h5rs]{border:1px solid var(--color-border-on-dark);width:3rem;height:3rem;color:var(--color-on-dark);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.menu-toggle__close[data-astro-cid-nen7h5rs],.menu-toggle[data-astro-cid-nen7h5rs][aria-expanded=true] .menu-toggle__open[data-astro-cid-nen7h5rs]{display:none}.menu-toggle[data-astro-cid-nen7h5rs][aria-expanded=true] .menu-toggle__close[data-astro-cid-nen7h5rs]{display:block}.nav[data-astro-cid-nen7h5rs]{align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--gutter) var(--space-lg);background:var(--color-dark);border-bottom:1px solid var(--color-border-on-dark);flex-direction:column;display:none;position:absolute;inset:100% 0 auto}.nav[data-astro-cid-nen7h5rs].is-open{display:flex}.nav__list[data-astro-cid-nen7h5rs]{flex-direction:column;width:100%;display:flex}.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--color-border-on-dark);color:var(--color-on-dark);padding:.75rem 0;font-size:1.125rem;font-weight:600;text-decoration:none;display:block}.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page],.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--color-on-dark-accent)}@media (width>=62rem){.menu-toggle[data-astro-cid-nen7h5rs]{display:none}.nav[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--space-lg);background:0 0;border:0;flex-direction:row;padding:0;display:flex;position:static}.nav__list[data-astro-cid-nen7h5rs]{gap:var(--space-lg);flex-direction:row;width:auto}.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{border:0;padding:.25rem 0;font-size:1rem;position:relative}.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:after{content:"";background:var(--marigold-500);transform-origin:0;height:2px;transition:transform var(--duration) var(--ease);position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover:after,.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]:after{transform:scaleX(1)}}.nav__cta{min-height:3rem;padding-block:.5rem}.footer[data-astro-cid-jo6i4kqk]{padding-top:var(--space-2xl)}.footer__grid[data-astro-cid-jo6i4kqk]{gap:var(--space-xl) var(--space-lg);padding-bottom:var(--space-2xl);grid-template-columns:1fr;display:grid}@media (width>=40rem){.footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:1.5fr 1fr .8fr 1.3fr}}.brand[data-astro-cid-jo6i4kqk]{margin-bottom:var(--space-sm);align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.brand__mark[data-astro-cid-jo6i4kqk]{background:var(--moss-600);border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;display:grid}.brand__name[data-astro-cid-jo6i4kqk]{font-family:var(--font-heading);font-size:1.375rem}.footer__brand[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{max-width:34ch;color:var(--color-on-dark-soft)}.footer__title[data-astro-cid-jo6i4kqk]{margin-bottom:var(--space-sm);font-family:var(--font-body);letter-spacing:0;color:var(--color-on-dark-accent);font-size:1.0625rem;font-weight:700}ul[data-astro-cid-jo6i4kqk]{gap:.5rem;display:grid}nav[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--color-on-dark);text-decoration:none}a[data-astro-cid-jo6i4kqk],a[data-astro-cid-jo6i4kqk]:hover{text-decoration:none}.contact[data-astro-cid-jo6i4kqk] li[data-astro-cid-jo6i4kqk]{color:var(--color-on-dark);align-items:flex-start;gap:.75rem;display:flex}.contact[data-astro-cid-jo6i4kqk] svg[data-astro-cid-jo6i4kqk]{color:var(--color-on-dark-accent);flex:none;margin-top:.3rem}.footer__base[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--color-border-on-dark)}.footer__base-inner[data-astro-cid-jo6i4kqk]{justify-content:space-between;gap:var(--space-xs) var(--space-md);padding-block:var(--space-md);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.footer__base[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{color:var(--color-on-dark-soft);margin:0}.footer__base[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--color-on-dark)}
