@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-ext-wght-normal.cHuGMAiY.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-wght-normal.DwHjdM4S.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-greek-wght-normal.ece1310W.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-vietnamese-wght-normal.D-yuW59g.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-ext-wght-normal.CxNHBx-q.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-wght-normal.D9elroTD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-ext-wght-italic.BXuSHrjR.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-wght-italic.RLIThRd4.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-greek-wght-italic.F2ziEGcb.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-vietnamese-wght-italic.C3q834ic.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-ext-wght-italic.CpkvI5hy.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-wght-italic.D2yaqPoE.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--sage:#cddddc;--mist:#e8f4f3;--paper:#f7fbfa;--slate:#56696d;--slate-deep:#44555a;--ink:#2f3b3c;--ink-soft:#4b5759;--line:#b7c9c8;--white:#fff;--font:"Source Serif 4 Variable", Georgia, "Times New Roman", serif;--step--1:.9375rem;--step-0:1.0625rem;--step-1:1.25rem;--step-2:clamp(1.4rem, 1.2rem + .8vw, 1.75rem);--step-3:clamp(1.75rem, 1.4rem + 1.4vw, 2.4rem);--step-4:clamp(2.1rem, 1.6rem + 2.2vw, 3.2rem);--gutter:clamp(1rem, 4vw, 2.5rem);--measure:68ch;--wide:76rem;--radius:4px;--space-section:clamp(3rem, 7vw, 6rem)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:6rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font);font-size:var(--step-0);color:var(--ink);background:var(--mist);margin:0;line-height:1.65;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--slate-deep);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--ink);text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--slate-deep);outline-offset:3px}h1,h2,h3{color:var(--ink);text-wrap:balance;margin:0 0 .6em;font-weight:400;line-height:1.2}h1{font-size:var(--step-4);letter-spacing:-.01em}@media (width<=40rem){h1{font-size:1.85rem}}h2{font-size:var(--step-3)}h3{font-size:var(--step-1)}p{max-width:var(--measure);margin:0 0 1em}address{font-style:normal}ul,ol{padding-left:1.2em}.wrap{width:100%;max-width:var(--wide);padding-inline:var(--gutter);margin-inline:auto}.skip{background:var(--ink);color:var(--white);z-index:100;padding:.6rem 1rem;position:absolute;top:0;left:-999px}.skip:focus{top:1rem;left:1rem}.eyebrow{font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.6rem}.lead{font-size:var(--step-1);color:var(--ink);line-height:1.5}.tagline{font-style:italic;font-size:var(--step-2);color:var(--slate-deep);margin-inline:auto}.section-intro{font-size:var(--step-1);color:var(--ink-soft);margin-bottom:2rem}.button{isolation:isolate;background:var(--slate);color:var(--white);border-radius:var(--radius);font-size:var(--step--1);letter-spacing:.04em;padding:.85rem 1.4rem;line-height:1.2;text-decoration:none;transition:transform .25s,box-shadow .25s,color .25s,border-color .25s;display:inline-block;position:relative;overflow:hidden}.button:before{content:"";z-index:-1;background:var(--slate-deep);transition:transform .4s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;transform:translate(-101%)}.button:hover,.button:focus-visible{color:var(--white);transform:translateY(-2px);box-shadow:0 10px 24px #2f3b3c38}.button:hover:before,.button:focus-visible:before{transform:translate(0)}.button:active{box-shadow:none;transform:translateY(0)}.button-small{padding:.65rem 1rem}.button-light{background:var(--sage);color:var(--ink)}.button-light:before{background:var(--white)}.button-light:hover,.button-light:focus-visible{color:var(--ink)}.button-ghost{color:var(--white);background:0 0;border:1px solid #ffffffb3}.button-ghost:before{background:var(--white)}.button-ghost:hover,.button-ghost:focus-visible{color:var(--ink);border-color:var(--white)}.button-arrow:after{content:"→";margin-left:.55em;transition:transform .3s cubic-bezier(.2,.7,.2,1);display:inline-block}.button-arrow:hover:after,.button-arrow:focus-visible:after{transform:translate(.3em)}.text-link{font-size:var(--step--1);letter-spacing:.04em;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:2px;text-decoration:none;transition:background-size .3s}.text-link:hover{background-size:100% 2px}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin-top:1.75rem;display:flex}.more i{font-style:normal;transition:transform .3s cubic-bezier(.2,.7,.2,1);display:inline-block}a:hover .more i{transform:translate(.3em)}.motion [data-reveal]:not(.in){opacity:0;transform:translateY(1.25rem)}[data-reveal]{transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--d,0) * 90ms)}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transition:none;transform:none}.dropdown ul,.dropdown ul li,.nav-mobile nav{animation:none}}.site-header{background:var(--sage);z-index:50;border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:4.75rem;display:grid}.brand{justify-self:center;display:block}.brand img{width:clamp(215px,26vw,330px);height:auto}.header-end{justify-self:end;align-items:center;gap:1.4rem;display:flex}.nav-desktop ul{align-items:center;gap:1.4rem;margin:0;padding:0;list-style:none;display:flex}.nav-desktop a,.nav-desktop summary{color:var(--ink-soft);font-size:var(--step-0);cursor:pointer;padding-block:.25rem;text-decoration:none;transition:color .2s;position:relative}.nav-desktop>ul>li>a:after,.nav-desktop summary:before{content:"";background:var(--ink);transform-origin:100%;height:1.5px;transition:transform .3s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav-desktop>ul>li>a:hover:after,.nav-desktop summary:hover:before,.dropdown[open] summary:before{transform-origin:0;transform:scaleX(1)}.nav-desktop a:hover,.nav-desktop summary:hover{color:var(--ink)}.nav-desktop>ul>li>a[aria-current]:after,.nav-desktop summary[aria-current]:before{transform:scaleX(1)}.nav-desktop a[aria-current],.nav-desktop summary[aria-current]{color:var(--ink)}summary{list-style:none}summary::-webkit-details-marker{display:none}.dropdown{position:relative}.dropdown summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:.4em;height:.4em;margin-left:.5em;transition:transform .3s cubic-bezier(.2,.7,.2,1);display:inline-block;transform:rotate(45deg)translateY(-.25em)}.dropdown[open] summary:after{transform:rotate(225deg)translateY(-.1em)translate(-.1em)}.dropdown ul{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);transform-origin:top;min-width:15rem;padding:.5rem 0;animation:.28s cubic-bezier(.2,.7,.2,1) drop;display:block;position:absolute;top:calc(100% + .9rem);left:-1rem;box-shadow:0 10px 30px #2f3b3c1f}.dropdown ul li{animation:.4s cubic-bezier(.2,.7,.2,1) both rise;animation-delay:calc(var(--i,0) * 35ms)}@keyframes drop{0%{opacity:0;transform:translateY(-.5rem)scaleY(.96)}to{opacity:1;transform:none}}.dropdown li a{padding:.5rem 1.1rem;transition:background .15s,padding-left .2s;display:block}.dropdown li a:hover{background:var(--mist);padding-left:1.4rem}.dropdown li a[aria-current],.nav-mobile li a[aria-current]{color:var(--ink);background:var(--mist);box-shadow:inset 3px 0 0 var(--slate);pointer-events:none;cursor:default;position:relative}.nav-mobile{display:none}@media (width<=60rem){.header-inner{grid-template-columns:1fr auto;min-height:4rem}.nav-desktop,.header-end{display:none}.brand{justify-self:start}.nav-mobile{justify-self:end;display:block}.nav-mobile>summary{border:1px solid var(--slate);border-radius:var(--radius);color:var(--ink);cursor:pointer;font-size:var(--step--1);letter-spacing:.06em;padding:.55rem .95rem;transition:background .2s,color .2s}.nav-mobile>summary:hover{background:var(--paper)}.nav-mobile[open]>summary{background:var(--slate);color:var(--white)}.nav-mobile nav{background:var(--paper);border-bottom:1px solid var(--line);padding:1rem var(--gutter) 1.5rem;transform-origin:top;max-height:calc(100vh - 4rem);animation:.3s cubic-bezier(.2,.7,.2,1) drop;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 16px 30px #2f3b3c26}.nav-mobile li a{transition:padding-left .2s,color .2s}.nav-mobile li a:hover{color:var(--slate-deep);padding-left:.5rem}.nav-mobile ul{margin:0;padding:0;list-style:none}.nav-mobile li a{color:var(--ink);border-bottom:1px solid var(--mist);padding:.6rem 0;text-decoration:none;display:block}.nav-mobile li a[aria-current]{padding-left:.75rem}.nav-mobile-label{font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .25rem}.nav-mobile-main{margin-top:1rem!important}.nav-mobile-caps a{font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase}}.crumbs ol{font-size:var(--step--1);color:var(--ink-soft);flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;margin:0;padding:1rem 0 0;list-style:none;display:flex}.crumbs li+li:before{content:"/";color:var(--line);margin-right:.5rem}.crumbs li{padding-block:.25rem;line-height:1.4}.crumbs a{color:var(--ink-soft)}.home-hero{background:var(--slate-deep);min-height:clamp(34rem,88vh,52rem);color:var(--white);isolation:isolate;align-items:center;display:grid;position:relative;overflow:hidden}.hero-reel,.hero-reel .reel-frame{width:100%;height:100%;position:absolute;inset:0}.hero-reel .reel-frame{object-fit:cover;opacity:0;animation:30s infinite reel;animation-delay:calc(var(--i) * 6s)}.hero-reel .reel-frame:first-child{opacity:1}@keyframes reel{0%{opacity:0;transform:scale(1.08)}4%{opacity:1}20%{opacity:1}26%{opacity:0;transform:scale(1)}to{opacity:0}}.hero-shade{background:radial-gradient(28% 45% at 84% 22%,#2f3b3c99,#2f3b3c00 100%),linear-gradient(100deg,#2f3b3ce6 0%,#2f3b3cb8 45%,#2f3b3c40 100%);position:absolute;inset:0}.hero-bee{--bee-w:clamp(200px, 26vw, 400px);right:var(--gutter);top:calc(var(--hero-pad) + .15rem + 14px - .205 * var(--bee-w));width:var(--bee-w);opacity:.92;filter:invert();pointer-events:none;animation:9s ease-in-out infinite float;position:absolute}@media (width<=40rem){.home-hero{align-items:start}.home-hero .hero-content{--hero-pad:2.75rem}.home-hero .h1-keywords{letter-spacing:.07em;font-size:.85rem}.home-hero .hero-bee{--bee-w:110px}.hero-content .eyebrow{letter-spacing:.07em;max-width:calc(100% - 120px)}.hero-content .lead{text-align:left}}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-14px)rotate(-1.5deg)}}.hero-content{--hero-pad:clamp(5rem, 12vh, 8rem);padding-block:var(--hero-pad) clamp(5rem, 12vh, 7rem);max-width:var(--wide);position:relative}.hero-content .eyebrow{color:var(--sage);margin-bottom:clamp(2rem,4vw,3rem)}.hero-content h1{color:var(--white);margin-bottom:clamp(1.5rem,3vw,2.25rem)}.h1-tagline{letter-spacing:-.015em;font-size:clamp(2.2rem,1.7rem + 3.6vw,4.6rem);font-style:italic;line-height:1.05;display:block}.h1-tagline .w{opacity:0;animation:.9s cubic-bezier(.2,.7,.2,1) forwards rise;animation-delay:calc(.15s + var(--i) * .12s);margin-right:.28em;display:inline-block;transform:translateY(.5em)rotate(1.5deg)}.h1-tagline .line{white-space:nowrap;display:block}.h1-tagline .line:nth-child(2) .w{color:var(--sage)}@keyframes rise{to{opacity:1;transform:none}}.h1-keywords{letter-spacing:.12em;text-transform:uppercase;color:var(--sage);opacity:0;max-width:none;margin-top:clamp(2rem,4vw,3rem);font-size:clamp(.95rem,.85rem + .45vw,1.2rem);font-style:normal;line-height:1.55;animation:.9s cubic-bezier(.2,.7,.2,1) .8s forwards rise;display:block;position:relative}.hero-content .lead{font-size:var(--step-0);color:#ffffffd1;opacity:0;max-width:44ch;line-height:1.7;animation:.9s cubic-bezier(.2,.7,.2,1) 1s forwards rise}.hero-content .hero-actions{opacity:0;animation:.9s cubic-bezier(.2,.7,.2,1) 1.15s forwards rise}.hero-scroll{border:1px solid #fff9;border-radius:1rem;width:1.6rem;height:2.6rem;margin-left:-.8rem;position:absolute;bottom:1.25rem;left:50%}.hero-scroll span{background:var(--white);border-radius:2px;width:3px;height:.5rem;margin-left:-1.5px;animation:1.8s ease-in-out infinite scrollhint;position:absolute;top:.5rem;left:50%}@keyframes scrollhint{0%{opacity:1;transform:translateY(0)}70%{opacity:0;transform:translateY(.9rem)}to{opacity:0}}@media (prefers-reduced-motion:reduce){.hero-reel .reel-frame{opacity:0;animation:none}.hero-reel .reel-frame:first-child{opacity:1}.hero-bee,.footer-bee,.bee-mark,.hero-scroll span{animation:none}.h1-tagline .w,.h1-keywords,.hero-content .lead,.hero-content .hero-actions{opacity:1;animation:none;transform:none}}.strip{background:var(--sage);border-bottom:1px solid var(--line)}.strip-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:1.25rem 2rem;padding-block:1.5rem;display:grid}.strip p{font-size:var(--step--1);color:var(--ink-soft);margin:0}.strip strong{font-weight:400;font-size:var(--step-1);color:var(--ink);margin-bottom:.15rem;line-height:1.2;display:block}.strip span{display:block}@media (width>=48rem) and (width<=87.99rem){.strip-grid{flex-wrap:wrap;gap:1.25rem 3rem;display:flex}.strip p{display:block}.strip strong{white-space:nowrap;margin-bottom:.15rem;font-size:1.1rem;display:block}.strip span{white-space:nowrap;font-size:.875rem;display:block}}@media (width>=88rem){.strip-grid{justify-content:space-between;align-items:flex-start;gap:1.5rem;max-width:90rem;display:flex}.strip strong{font-size:1.1rem}.strip span{font-size:.875rem}.strip p{display:block}.strip strong{white-space:nowrap;margin-bottom:.15rem;display:block}.strip span{white-space:nowrap;display:block}}.section-head{max-width:50rem;margin-bottom:clamp(1.5rem,4vw,2.5rem)}.section-head .section-intro{margin-bottom:0}.section-head h2,.who h2{margin-bottom:.25em;font-size:clamp(1.6rem,1.3rem + 1.2vw,2.25rem)}:root{--head-measure:calc(17.97 * clamp(1.6rem, 1.3rem + 1.2vw, 2.25rem))}.section-head .section-intro,.who-text>p:not(.eyebrow):not(.button-row):not(.subhead){max-width:var(--head-measure)}.subhead{font-size:var(--step-1);color:var(--ink-soft);margin-bottom:1.25rem;font-style:italic}.band-slate .subhead{color:var(--sage)}.section-head .section-intro{font-size:var(--step-0);line-height:1.7}.section-foot{margin-top:clamp(1.5rem,4vw,2.5rem)}.band-paper{background:var(--paper)}:root{--curve-h:clamp(1.75rem, 4.5vw, 4rem)}.curve-divider{margin-top:-1px;line-height:0;display:block}.curve-divider svg{width:100%;height:var(--curve-h);display:block}.curve-divider+section,.curve-divider+div,.curve-divider+footer{padding-top:max(1.5rem, calc(var(--space-section) - var(--curve-h)))}.curve-divider+.cta-band{padding-top:clamp(1.5rem,3vw,2.5rem)}.page-hero{padding:clamp(1.5rem,4vw,3rem) 0 clamp(2.5rem,5vw,4rem);overflow:hidden}.page-hero-grid{align-items:center;gap:clamp(1.5rem,4vw,3.5rem);display:grid}@media (width>=60rem){.page-hero-grid{grid-template-columns:1.1fr .9fr;align-items:start}.page-hero-grid>.page-hero-image{margin-top:calc(2.24rem + .253 * var(--step-4))}}.page-hero-image{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);width:100%}.page-hero+.content-grid{padding-top:clamp(.5rem,2vw,1.5rem)}.page-hero-text,.hero-measure{width:fit-content;min-width:min(100%,36rem);max-width:100%}.page-hero-text>:not(h1),.hero-measure>:not(h1){contain:inline-size;max-width:none}.page-hero-text,.hero-measure{isolation:isolate;position:relative}.page-hero-text:after,.hero-measure:after{content:"";z-index:-1;pointer-events:none;aspect-ratio:488/910;opacity:.3;background:url(/_astro/bee.jcvf2gP0.png) 50%/contain no-repeat;height:min(90%,520px);position:absolute;top:50%;left:50%;transform:translate(-50%,-21%)}.band{padding:var(--space-section) 0;background:var(--paper)}.band-mist{background:var(--mist)}.band-slate{background:var(--slate);color:var(--white)}.band-slate h2,.band-slate .eyebrow,.band-slate p{color:var(--white)}.content-grid{padding-block:var(--space-section);gap:clamp(2.5rem,5vw,4rem);display:grid}.content-grid>*{max-width:56rem}.prose-section h2{font-size:var(--step-2)}.steps{counter-reset:step;max-width:var(--measure);gap:1rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;min-height:2.25rem;padding-left:3.25rem;position:relative}.steps li:before{content:counter(step);background:var(--sage);width:2.25rem;height:2.25rem;color:var(--ink);font-size:var(--step--1);border-radius:50%;place-items:center;display:grid;position:absolute;top:-.1rem;left:0}.item-list{columns:2 16rem;column-gap:2.5rem;margin:1rem 0 0;padding-left:1.25rem}.item-list li{break-inside:avoid;margin-bottom:.4rem}.button-row{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;display:flex}.service-foot{flex-direction:column;align-items:flex-start}.service-body:has(+.service-projects){padding-bottom:clamp(1.5rem,3vw,2.5rem)}.service-body+.service-projects{padding-top:clamp(1.5rem,3vw,2.5rem)}.split{align-items:center;gap:clamp(1.5rem,5vw,4rem);display:grid}@media (width>=50rem){.split{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}}.about-intro{margin-bottom:clamp(1.5rem,4vw,2.5rem)}.page-hero-text.about-intro{width:min(100%,40rem);min-width:0}.prose-section:has(#marcella-title)>p:not(.links-line):not(:has(.button)){max-width:40rem}.team-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:clamp(1.25rem,3vw,2rem);max-width:40rem;display:grid}.team-card{margin:0}.team-card img{aspect-ratio:3/4;object-fit:cover;object-position:top;border-radius:var(--radius);width:100%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.team-card:hover img{transform:translateY(-4px)}.team-card figcaption{gap:.1rem;margin-top:.75rem;display:grid}.team-card strong{font-weight:400;font-size:var(--step-1)}.team-card span{font-size:var(--step--1);color:var(--ink-soft)}.quick-answer{background:var(--paper);border-left:4px solid var(--slate);border-radius:0 var(--radius) var(--radius) 0;padding:clamp(1.25rem,3vw,2rem)}.quick-answer h2{font-size:var(--step-2)}.quick-answer p:last-child,.quick-answer ul:last-child{margin-bottom:0}.quick-help{color:var(--ink-soft)}.service-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.service-cards a{background:var(--mist);border:1px solid var(--line);border-radius:var(--radius);height:100%;color:var(--ink);flex-direction:column;padding:1.5rem;text-decoration:none;transition:border-color .3s,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s;display:flex;position:relative;overflow:hidden}.band-mist .service-cards a{background:var(--paper)}.service-cards a:before{content:"";background:var(--slate);transform-origin:bottom;width:4px;transition:transform .35s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.service-cards a:hover,.service-cards a:focus-visible{border-color:var(--slate);transform:translateY(-4px);box-shadow:0 14px 30px #2f3b3c1f}.service-cards a:hover:before,.service-cards a:focus-visible:before{transform-origin:top;transform:scaleY(1)}.service-cards h2,.service-cards h3{font-size:var(--step-1);margin-bottom:.4em}.service-cards p{font-size:var(--step--1);color:var(--ink-soft);flex:1}.service-cards .more{font-size:var(--step--1);color:var(--slate-deep)}.service-cards-numbered a{padding-top:1.25rem}.service-cards .num{font-size:var(--step-3);color:var(--line);margin-bottom:.75rem;font-style:italic;line-height:1;transition:color .3s;display:block}.service-cards a:hover .num{color:var(--slate)}.who{position:relative;overflow:hidden}@media (width<=40rem){.team-card img{max-width:13rem}}.project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:clamp(1.25rem,3vw,2rem);display:grid}@media (width>=70rem){.project-grid-4{grid-template-columns:repeat(4,1fr)}}.projects-band{padding-top:0}@media (width>=45rem){.project-grid-2{grid-template-columns:repeat(2,1fr)}}.project-card-link{background:var(--paper);border-radius:var(--radius);height:100%;color:var(--ink);flex-direction:column;text-decoration:none;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s;display:flex;overflow:hidden;box-shadow:0 1px 2px #2f3b3c14}.project-card-link:hover{transform:translateY(-4px);box-shadow:0 18px 40px #2f3b3c29}.project-card-media{display:block;position:relative;overflow:hidden}.project-card-media img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.project-card-link:hover img{transform:scale(1.06)}.project-card-county{color:var(--white);font-size:var(--step--1);letter-spacing:.06em;background:#2f3b3cbf;border-radius:999px;padding:.3rem .7rem;position:absolute;top:.9rem;left:.9rem}.project-card-body{flex-direction:column;flex:1;padding:1.1rem 1.2rem 1.3rem;display:flex}.project-card h2,.project-card h3{font-size:var(--step-1);margin-bottom:.3em}.project-card p{font-size:var(--step--1);color:var(--ink-soft);flex:1}.project-card .more{font-size:var(--step--1);color:var(--slate-deep)}.facts{gap:.6rem;margin:1.5rem 0 0;display:grid}.facts div{border-top:1px solid var(--line);grid-template-columns:7rem 1fr;gap:1rem;padding-top:.6rem;display:grid}.facts dt{color:var(--ink-soft);font-size:var(--step--1);letter-spacing:.04em}.facts dd{margin:0}.gallery-hint{font-size:var(--step--1);color:var(--ink-soft)}.service-drawing{margin:0}.service-drawing a{border-radius:var(--radius);display:block;overflow:hidden}.service-drawing img{width:100%;height:auto;padding:.5rem}.service-drawing figcaption{font-size:var(--step--1);color:var(--ink-soft);margin-top:.6rem}.gallery-credit{color:var(--ink-soft);margin-top:.75rem;font-size:.75rem}.gallery-credit a{color:inherit}.gallery{grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.gallery-item{border-radius:var(--radius);display:block;overflow:hidden}.gallery img{aspect-ratio:3/2;object-fit:cover;width:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.gallery-item:hover img{transform:scale(1.05)}.gallery-drawing{background:var(--white);border:1px solid var(--line)}.gallery-drawing img{object-fit:contain;padding:.5rem}.lightbox{width:100vw;max-width:100vw;height:100vh;max-height:100vh;color:var(--white);background:#2f3b3cf5;border:0;padding:0}.lightbox::backdrop{background:#2f3b3c99}.lightbox figure{grid-template-rows:1fr auto;place-items:center;gap:.75rem;height:100%;margin:0;padding:3.5rem 4rem 1.5rem;display:grid}.lightbox img{object-fit:contain;border-radius:var(--radius);max-width:100%;max-height:calc(100vh - 7rem)}.lightbox figcaption{font-size:var(--step--1);color:#ffffffd9;text-align:center;max-width:60ch}.lightbox button{color:var(--white);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:2.75rem;height:2.75rem;font-size:1.6rem;line-height:1;transition:background .2s;display:grid;position:absolute}.lightbox button:hover{background:#ffffff40}.lightbox-close{top:1rem;right:1rem}.lightbox-prev{top:50%;left:.75rem;transform:translateY(-50%)}.lightbox-next{top:50%;right:.75rem;transform:translateY(-50%)}.lightbox-count{font-size:var(--step--1);color:#ffffffb3;margin:0;position:absolute;top:1.4rem;left:1rem}@media (width<=40rem){.lightbox figure{padding:3.5rem .5rem 1rem}.lightbox-prev{left:.25rem}.lightbox-next{right:.25rem}}.testimonial-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:clamp(1.5rem,3vw,2.5rem);margin-bottom:1.5rem;display:grid}.testimonial{margin:0}.testimonial-card{background:var(--mist);border-left:3px solid var(--sage);border-radius:0 var(--radius) var(--radius) 0;padding:2.4rem 1.5rem 1.5rem;position:relative}.testimonial-card:before{content:"“";color:var(--sage);font-size:4rem;font-style:italic;line-height:1;position:absolute;top:.3rem;left:1.1rem}.testimonial blockquote{margin:0 0 .6rem}.testimonial blockquote p{font-style:italic;font-size:var(--step-1);color:var(--ink);line-height:1.5}.testimonial figcaption{font-size:var(--step--1);color:var(--ink-soft)}.content-grid>.testimonial{border-top:1px solid var(--line);padding-top:2rem}.faq-block h2{font-size:var(--step-2)}.faq-list{border-top:1px solid var(--line)}.faq{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:var(--step-0);justify-content:space-between;gap:1rem;padding:.75rem 0;line-height:1.4;display:flex}.faq summary:after{content:"+";color:var(--slate);flex-shrink:0;font-size:1.5rem;line-height:1}.faq[open] summary:after{content:"–"}.faq summary:hover span{text-underline-offset:.2em;text-decoration:underline}.faq p{color:var(--ink-soft);max-width:none;padding-bottom:1rem;padding-right:2.5rem}.faq-topic>p{color:var(--ink-soft)}.more-questions{font-size:var(--step--1);color:var(--ink-soft);margin-top:-1.5rem}.topic-nav{margin-top:1.5rem}.contact-grid{align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}@media (width>=55rem){.contact-grid{grid-template-columns:1.2fr .8fr;row-gap:0}}.contact-head{grid-column:1/-1}.contact-head h1{margin-bottom:.5em}@media (width<=54.99rem){.contact-head{margin-bottom:calc(-1*clamp(2rem,5vw,4rem))}}.contact-list{gap:.75rem;margin:1.5rem 0 0;display:grid}.contact-list div{border-top:1px solid var(--line);grid-template-columns:6.5rem 1fr;gap:1rem;padding-top:.75rem;display:grid}.contact-list dt{color:var(--ink-soft);font-size:var(--step--1)}.contact-list dd{overflow-wrap:anywhere;margin:0}.cta-band{background:var(--slate);color:var(--white);padding:clamp(2.5rem,6vw,4rem) 0}.cta-inner{align-items:start;gap:1.5rem;display:grid}@media (width>=55rem){.cta-inner{grid-template-columns:1fr auto;gap:0 3rem}.cta-inner h2{grid-column:1/-1;margin-bottom:.5em}.cta-actions{margin-top:calc(.503 * var(--step-0) - 1px);align-items:flex-start}}.cta-band h2{color:var(--white);font-size:var(--step-3)}.cta-band p{color:var(--white);margin-bottom:0}.cta-actions{flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;display:flex}.bee-heading{align-items:center;gap:clamp(.75rem,2vw,1.5rem);display:flex}.bee-heading>:first-child{margin-bottom:0}.bee-mark{opacity:.92;filter:invert();pointer-events:none;flex-shrink:0;width:clamp(56px,7vw,90px);animation:9s ease-in-out infinite float}.bee-mark-dark{filter:none;opacity:.85}.page-hero .bee-heading{margin-bottom:1rem}.cta-phone{color:var(--white);font-size:var(--step-1)}.cta-phone:hover{color:var(--sage)}.site-footer{background:var(--slate-deep);color:var(--white);padding-top:clamp(3rem,6vw,4.5rem);position:relative;overflow:hidden}.footer-bee{opacity:.92;filter:invert();pointer-events:none;width:clamp(110px,14vw,180px);animation:9s ease-in-out infinite float;display:block}@media (width<=40rem){.footer-bee{margin-inline:auto}}.footer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:2.5rem;display:grid;position:relative}.site-footer h2{font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;color:var(--sage);margin-bottom:.9rem}.site-footer .footer-name{font-size:var(--step-1);letter-spacing:0;text-transform:none;color:var(--white);font-style:italic}.site-footer ul{gap:.35rem;margin:0 0 1.75rem;padding:0;list-style:none;display:grid}.site-footer li a{padding-block:.2rem;display:inline-block}.site-footer a{color:var(--white);text-decoration-color:#fff6}.site-footer a:hover{color:var(--sage)}.site-footer p,.site-footer address{font-size:var(--step--1);color:var(--white);margin-bottom:1rem}.site-footer .button-light{color:var(--ink)}.footer-social{gap:1.25rem;display:flex}.site-footer .footer-more{border-top:1px solid #fff3;margin-top:.5rem;padding-top:.6rem}.footer-base{border-top:1px solid #fff3;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;margin-top:1.5rem;padding-top:1.25rem;padding-bottom:1.5rem;display:flex;position:relative}.footer-base p{color:#ffffffd9;margin:0}.prose-section p:not(.links-line):not(:has(.button)),.section-intro,.page-hero-text p:not(.eyebrow):not(.hero-actions),.page-hero .split p:not(.eyebrow),.who p:not(.eyebrow):not(.button-row),.faq p,.cta-band p,.faq-topic>p,.hero-content .lead,.extra p,.service-cards-numbered p,.project-card p,.hero-measure>p:not(.eyebrow):not(.button-row),.contact-grid>div>p:not(.eyebrow){text-align:justify;-webkit-hyphens:manual;hyphens:manual}@media (width<=40rem){.hero-content .lead{text-align:left}}.stages{gap:clamp(1.25rem,3vw,2rem);max-width:56rem;margin:0;padding:0;list-style:none;display:grid}.stage{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--slate);border-radius:0 var(--radius) var(--radius) 0;grid-template-columns:auto 1fr;gap:0 clamp(1rem,3vw,2rem);padding:clamp(1.25rem,3vw,2rem);display:grid}.stage-num{font-size:var(--step-3);color:var(--slate);font-style:italic;line-height:1}.stage h2{font-size:var(--step-2);margin-bottom:.15em}.stage-tag{font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.9rem}.stage ul{margin:0 0 1rem;padding-left:1.2rem}.stage ul li{margin-bottom:.35rem}.stage-outcome{border-top:1px solid var(--line);margin:0;padding-top:.9rem}.stage-outcome strong{font-weight:600}@media (width<=40rem){.stage{grid-template-columns:1fr}.stage-num{margin-bottom:.5rem}}.extras-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:clamp(1rem,3vw,2rem);margin-bottom:clamp(1rem,3vw,2rem);display:grid}.extra{background:var(--mist);border-radius:var(--radius);padding:clamp(1.25rem,3vw,1.75rem)}.extra h3{font-size:var(--step-1)}.extra p{color:var(--ink-soft);margin:0}.edge-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1.25rem 2.5rem;margin:1.5rem 0 2rem;padding:0;list-style:none;display:grid}.edge-grid li{border-top:1px solid #ffffff59;gap:.25rem;padding-top:.9rem;display:grid}.edge-grid strong{font-weight:400;font-size:var(--step-1);color:var(--white)}.edge-grid span{color:#ffffffd9;font-size:var(--step--1)}.who .edge-grid{margin:1.25rem 0 1.75rem}@media (width>=60rem){.edge-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem 2rem}}.chips{flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.chips li{background:var(--paper);border:1px solid var(--line);font-size:var(--step--1);border-radius:999px;padding:.35rem .9rem}.chips a{color:var(--slate-deep);text-decoration:none}.chips a:hover{text-decoration:underline}
