:root{--color-navy-50:#f8fafb;--color-navy-100:#dde5ec;--color-navy-200:#a1b9ce;--color-navy-300:#5e8bb4;--color-navy-400:#31577b;--color-navy-500:#0b1722;--color-navy-600:#08141e;--color-navy-700:#061018;--color-navy-800:#040b12;--color-navy-900:#02070b;--color-navy-950:#020507;--color-navy:var(--color-navy-500);--color-orange-50:#fdfaf7;--color-orange-100:#f7ece3;--color-orange-200:#edd0b7;--color-orange-300:#e9b183;--color-orange-400:#ee8f41;--color-orange-500:#e36701;--color-orange-600:#c05701;--color-orange-700:#994501;--color-orange-800:#6f3200;--color-orange-900:#441f00;--color-orange-950:#2d1500;--color-orange:var(--color-orange-500);--color-blue-50:#f9fafb;--color-blue-100:#eff2f4;--color-blue-200:#d9e1e5;--color-blue-300:#c1d0d7;--color-blue-400:#a4beca;--color-blue-500:#7fa8bc;--color-blue-600:#5795b4;--color-blue-700:#3b7a99;--color-blue-800:#275a73;--color-blue-900:#173747;--color-blue-950:#0f2530;--color-blue:var(--color-blue-500);--color-sage-50:#fafafa;--color-sage-100:#f2f3f1;--color-sage-200:#e2e5e1;--color-sage-300:#d0d6ce;--color-sage-400:#bdc7ba;--color-sage-500:#a5b5a0;--color-sage-600:#84a879;--color-sage-700:#619451;--color-sage-800:#447036;--color-sage-900:#29461f;--color-sage-950:#1b2f15;--color-sage:var(--color-sage-500);--color-lavender-50:#faf9fb;--color-lavender-100:#f3f2f5;--color-lavender-200:#e5e2e9;--color-lavender-300:#d6d0de;--color-lavender-400:#c6bcd3;--color-lavender-500:#b2a1c7;--color-lavender-600:#9577ba;--color-lavender-700:#7449a9;--color-lavender-800:#54317f;--color-lavender-900:#331c4f;--color-lavender-950:#221335;--color-lavender:var(--color-lavender-500);--color-black:#000;--color-white:#fff;--color-off-white:#fbfaf9;--color-background:var(--color-off-white)}@font-face{font-family:Cal Sans;src:url(/build/assets/CalSans-Bold-BOJ5-gLP.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Cal Sans Text A11y;src:url(/build/assets/CalSansTextA11y-Regular-BqRyUnzh.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cal Sans Text A11y;src:url(/build/assets/CalSansTextA11y-Bold-BtHjxAC5.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Cal Sans Text A11y;src:url(/build/assets/CalSansTextA11y-Italic-S5xCR_Jf.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Cal Sans Text UI;src:url(/build/assets/CalSansTextUI-Regular--M6zwVfx.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cal Sans Text UI;src:url(/build/assets/CalSansTextUI-Medium-HNLLU_jr.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Cal Sans Text UI;src:url(/build/assets/CalSansTextUI-SemiBold-D6X6I7id.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--font-heading:"Cal Sans", Arial, sans-serif;--font-body:"Cal Sans Text A11y", Arial, sans-serif;--font-ui:"Cal Sans Text UI", Arial, sans-serif;--font-weight-heading:700;--font-weight-body:400;--font-weight-ui:400}*,:before,:after{box-sizing:border-box}h1,h2,h3,h4{color:var(--color-navy);font-family:var(--font-heading);font-weight:var(--font-weight-heading)}button,input,select,textarea,label,summary,[role=button]{font-family:var(--font-ui);font-weight:var(--font-weight-ui);font-size:inherit;line-height:inherit}h1:after,h2:after{content:"";background-color:var(--color-orange);border-radius:50%;width:8px;height:8px;margin-left:.06em;display:inline-block}.site{background:var(--color-background);min-height:100svh;color:var(--color-navy);font-family:var(--font-body);font-weight:var(--font-weight-body);flex-direction:column;margin:0;line-height:1.5;display:flex}.site__container{width:calc(100% - 2*clamp(1rem,3vw,2rem));max-width:1264px;margin-inline:auto}.site__container:has(.frame-header){background:#000;grid-template-rows:64px minmax(0,1fr) 64px;width:100%;max-width:none;height:100dvh;padding:0 12px;display:grid;overflow:hidden}html:has(.frame-header){overscroll-behavior:none;background:#000;overflow:hidden}.site:has(.frame-header){overscroll-behavior:none;background:#000;overflow:hidden}.site__main{min-height:0}.site__container:has(.frame-header) .site__main{border-radius:48px;overflow:hidden}.site__container:has(.frame-header) .site__main--privacy{overscroll-behavior:contain;background:var(--color-background);overflow-y:auto}@media (width<=760px){.site__container:has(.frame-header){grid-template-rows:48px minmax(0,1fr) 48px;padding:0 8px}.site__container:has(.frame-header) .site__main{border-radius:36px}}.site-header{--header-inset:clamp(2rem, 4vw, 3rem);--header-ease:cubic-bezier(.625, .05, 0, 1);z-index:10;height:92px;position:relative}.site-header__bar{z-index:1;width:100%;max-width:calc(100% - 2 * var(--header-inset));isolation:isolate;margin-inline:auto;position:absolute;top:0;left:0;right:0}.site-header--open .site-header__bar{max-width:calc(100% - 48px)}.site-header__bar:before{content:"";z-index:-1;inset-block:0;background:var(--color-white);opacity:0;pointer-events:none;border-radius:24px;width:calc(100% + 48px);max-width:calc(100vw - 2*clamp(1rem,3vw,2rem));position:absolute;left:50%;transform:translate(-50%)}.site-header--open .site-header__bar:before{opacity:1}.site-header__top{justify-content:space-between;align-items:center;height:92px;padding-inline:0;display:flex;position:relative}.site-header__brand{flex-shrink:0;width:min(164px,100%);display:block}.site-header__brand:focus-visible{outline:2px solid var(--color-navy);outline-offset:6px}.site-header__logo{width:100%;height:auto;display:block}.site-header__backdrop{opacity:0;visibility:hidden;pointer-events:none;background:#0b17224d;position:fixed;inset:0}.site-header--open .site-header__backdrop{opacity:1;visibility:visible;pointer-events:auto}.site-header__panel{visibility:hidden;grid-template-rows:0fr;display:grid;overflow:hidden}.site-header--open .site-header__panel{visibility:visible;grid-template-rows:1fr}.site-header__overflow{min-height:0;overflow:hidden}.site-header__panel-content{opacity:0;border-top:1px solid #ededed;max-height:calc(100dvh - 108px);margin-inline:clamp(1.5rem,4vw,3rem);padding-block:24px 32px;overflow-y:auto;transform:translateY(2rem)}.site-header--open .site-header__panel-content{opacity:1;transform:translateY(0)}.site-header--open .site-header__stroke{transform:rotate(45deg)}.site-header--open .site-header__stroke:last-child{transform:rotate(-45deg)}@media (width<=760px){.site-header{--header-inset:0px}}.site-header__toggle{z-index:2;min-height:44px;color:var(--color-navy);font-family:var(--font-ui);cursor:pointer;background:0 0;border:0;border-radius:24px;justify-content:center;align-items:center;gap:.75rem;padding:.5rem .875rem;font-size:1rem;display:inline-flex;position:relative}.site-header__toggle[hidden]{display:none}.site-header__toggle:hover{background:#0b17220d}.site-header__toggle:focus-visible{outline:2px solid var(--color-orange);outline-offset:4px}.site-header__icon{width:22px;height:22px;position:relative}.site-header__stroke{background:currentColor;border-radius:2px;width:22px;height:2px;position:absolute;top:10px;left:0;transform:translateY(-4px)}.site-header__stroke:last-child{transform:translateY(4px)}.site-header__list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.site-header__item{font-family:var(--font-heading);color:var(--color-navy);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:1.2}.site-header__socials{font-family:var(--font-ui);color:var(--color-text);border-top:1px solid #ededed;gap:24px;margin-top:28px;padding-top:20px;display:flex}@media (width<=380px){.site-header__toggle-label{display:none}.site-header__toggle{min-width:44px;padding-inline:10px}}.site-header__item[href]{text-decoration:none}.site-header__item[href]:hover{color:var(--color-orange)}.site-header__item[href]:focus-visible{outline:2px solid var(--color-orange);outline-offset:4px}.site__container:has(.frame-header) .site-header{display:none}.frame-header{background:#000;place-items:center;min-height:0;display:grid}.frame-header__brand{display:block}.frame-header__brand:focus-visible{outline-offset:6px;outline:2px solid #fff}.frame-header__logo{width:164px;height:auto;display:block}.button{min-height:44px;font-family:var(--font-ui);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.button--primary{color:var(--color-white);background:var(--color-navy)}.button--secondary{color:var(--color-navy);background:0 0;border-color:#d8dadd}.button:focus-visible{outline:2px solid var(--color-navy);outline-offset:4px}@media (hover:hover){.button--primary:hover{background:var(--color-navy-400)}.button--secondary:hover{background:var(--color-background)}}.button__label{text-align:center;display:block}@supports (text-box-trim:trim-both) and (text-box-edge:cap alphabetic){.button__label{text-box-trim:trim-both;text-box-edge:cap alphabetic}}.hero{isolation:isolate;background:var(--color-background);grid-template-columns:minmax(0,1fr) calc(50% + 24px);width:100%;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.hero__content{z-index:1;background:var(--color-white);min-width:0;min-height:0;color:var(--color-navy);border-radius:24px;grid-area:1/2;place-items:center;margin:24px 24px 24px 0;padding:32px;display:grid;position:relative;box-shadow:0 8px 24px #959da533}.hero__intro{width:100%;max-width:440px}.hero__logo{width:180px;height:auto;margin:0 auto 48px;display:block}.hero__copy{font-size:16px;line-height:1.5}.hero__signature{width:40px;height:auto;margin:40px auto 8px;display:block}.hero__copy p{margin:0}.hero__copy p+p{margin-top:20px}.hero__copy a{color:inherit;text-underline-offset:3px}.hero__visual{grid-area:1/1;min-width:0;min-height:0}@media (width<=760px){.hero{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.hero__content{border-radius:20px;grid-column:1;margin:16px;padding:24px}.hero__visual{grid-area:2/1}.hero__copy{font-size:14px}.hero__logo{width:164px;margin-bottom:32px}}@media (height<=600px) and (width>=761px){.hero__signature{margin-top:24px}.hero__content{padding:24px}.hero__copy{font-size:14px;line-height:1.4}.hero__logo{margin-bottom:24px}.hero__copy p+p{margin-top:12px}}@font-face{font-family:Geist Mono;src:url(/build/assets/GeistMono-Regular-DHEw6VMZ.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}.puffy-ascii{pointer-events:none;position:absolute;inset:0;overflow:hidden}.puffy-ascii__canvas{width:100%;height:100%;position:absolute;inset:0}.puffy-ascii__fallback{width:60%;position:absolute;inset:45% 20% auto}.puffy-ascii__canvas[data-puffy-background]{opacity:.6}.site-header--animated .site-header__bar{transition:max-width .75s var(--header-ease) .2s}.site-header--animated.site-header--open .site-header__bar{transition:max-width .5s var(--header-ease)}.site-header--animated .site-header__panel{transition:grid-template-rows .5s var(--header-ease), visibility 0s .5s}.site-header--animated.site-header--open .site-header__panel{transition:grid-template-rows .75s var(--header-ease) .25s, visibility 0s}.site-header--animated .site-header__backdrop{transition:opacity .5s var(--header-ease), visibility 0s .5s}.site-header--animated.site-header--open .site-header__backdrop{transition-delay:0s}.site-header--animated .site-header__panel-content{transition:opacity .5s var(--header-ease), transform .5s var(--header-ease)}.site-header--animated.site-header--open .site-header__panel-content{transition:opacity .75s var(--header-ease) .5s, transform .75s var(--header-ease) .5s}.site-header--animated .site-header__stroke{transition:transform .5s var(--header-ease)}.site-header--animated .site-header__bar:before{transition:opacity .2s .3s}.site-header--animated.site-header--open .site-header__bar:before{transition:opacity .2s}@media (prefers-reduced-motion:reduce){.site-header--animated .site-header__bar:before,.site-header--animated .site-header__bar,.site-header--animated .site-header__backdrop,.site-header--animated .site-header__panel,.site-header--animated .site-header__panel-content,.site-header--animated .site-header__stroke{transition:none}}.about{padding:clamp(3rem,7vw,6rem) clamp(2rem,4vw,3rem) clamp(4rem,8vw,7rem);scroll-margin-top:2rem}.about__title{margin:0 0 1.75rem;font-size:clamp(2rem,3.5vw,3rem);line-height:1.08}.about__intro{max-width:75ch;margin:0;font-size:clamp(1rem,1.7vw,1.25rem);line-height:1.5}.about__cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:680px;margin-top:clamp(2rem,4vw,3rem);display:grid}.person-card{background:var(--color-white);border-radius:32px;flex-direction:column;min-width:0;padding:12px;display:flex}.person-card__visual{aspect-ratio:1;border-radius:22px;position:relative;overflow:hidden}.person-card__portrait{object-fit:cover;object-position:center 38%;width:100%;height:100%;display:block}.person-card__status{background:#65d936;border:3px solid #fff;border-radius:50%;width:24px;height:24px;position:absolute;top:20px;right:20px}.person-card__visual--placeholder{color:#dedede;border:1px solid #eee;flex-shrink:0}.person-card__plus{z-index:1;pointer-events:none;width:44%;height:44%;margin:auto;display:block;position:absolute;inset:0}.person-card__body{flex-direction:column;flex:1;align-items:flex-start;padding:20px 10px 10px;display:flex}.person-card__name{overflow-wrap:break-word;margin:0 0 8px;font-size:1.125rem;line-height:1.2}.person-card__text{margin:0 0 20px;font-size:.9375rem;line-height:1.4}.person-card__contact{color:var(--color-navy);background:#f0f0f0;align-self:flex-end;margin-top:auto}.person-card__contact:hover{background:#e4e4e4}@media (width<=640px){.about{padding-inline:0}.about__title,.about__intro{margin-inline:1rem}.about__cards{grid-template-columns:minmax(0,1fr);max-width:360px}}.person-card--profile,.person-card--invite{color:inherit;cursor:pointer;text-decoration:none;transition:box-shadow .18s}.person-card__visual--placeholder{transition:color .18s}.person-card--profile:focus-visible,.person-card--invite:focus-visible{outline:2px solid var(--color-navy);outline-offset:4px;box-shadow:0 6px 18px #0000000f}.person-card--invite:focus-visible .person-card__visual--placeholder{color:#59758d}@media (hover:hover){.person-card--profile:hover,.person-card--invite:hover{box-shadow:0 6px 18px #0000000f}.person-card--invite:hover .person-card__visual--placeholder{color:#59758d}}@media (prefers-reduced-motion:reduce){.person-card--profile,.person-card--invite,.person-card__visual--placeholder{transition:none}}.person-card__visual--placeholder:before{content:"";pointer-events:none;opacity:0;background:url(/images/team/portrait-background.jpg) 50% 38%/cover no-repeat;transition:opacity .18s;position:absolute;inset:0}.person-card--invite:focus-visible .person-card__visual--placeholder:before{opacity:1}@media (hover:hover){.person-card--invite:hover .person-card__visual--placeholder:before{opacity:1}}@media (prefers-reduced-motion:reduce){.person-card__visual--placeholder:before{transition:none}}.content-section{padding:clamp(3rem,7vw,6rem) clamp(2rem,4vw,3rem);scroll-margin-top:2rem}.content-section__title{margin:0 0 1.75rem;font-size:clamp(2rem,3.5vw,3rem);line-height:1.08}.content-section__text{max-width:75ch;margin:0;font-size:clamp(1rem,1.7vw,1.25rem);line-height:1.5}@media (width<=640px){.content-section{padding-inline:1rem}}.services{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.5rem);margin-top:clamp(2rem,4vw,3rem);display:grid}.services__area{border-top:1px solid #d8dadd;min-width:0;padding-top:1.5rem}.services__title{margin:0 0 1rem;font-size:1.375rem;line-height:1.25}.services__description{margin:0;line-height:1.6}@media (width<=900px){.services{grid-template-columns:minmax(0,1fr);gap:2rem}.services__description{max-width:65ch}}.tool-dock{text-align:center;margin-top:3.5rem}.tool-dock__list{background:var(--color-white);border-radius:24px;justify-content:center;gap:8px;width:fit-content;max-width:100%;margin:0;padding:14px 18px;list-style:none;display:flex;box-shadow:0 3px 5px #0000000a}.tool-dock__item{--dock-scale:1;--dock-lift:0px;flex:0 0 64px;width:64px;position:relative}.tool-dock__link{min-height:64px;color:var(--color-navy);border-radius:16px;justify-content:center;align-items:center;text-decoration:none;display:flex}.tool-dock__link:focus-visible{outline:2px solid var(--color-orange);outline-offset:6px}.tool-dock__tile{width:64px;height:64px;transform:translateY(var(--dock-lift)) scale(var(--dock-scale));transform-origin:bottom;pointer-events:none;border-radius:17%;place-items:center;transition:transform .28s cubic-bezier(.16,1,.3,1);display:grid;box-shadow:0 2px 4px #0b172224}.tool-dock__image{object-fit:contain;width:100%;height:100%;display:block}.tool-dock__label{background:var(--color-navy);color:#fff;font-family:var(--font-ui);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;border-radius:8px;padding:6px 10px;font-size:.8125rem;transition:opacity .16s,transform .16s,visibility .16s;position:absolute;bottom:calc(100% + 34px);left:50%;transform:translate(-50%,5px)}.tool-dock__item--active{--dock-scale:1.18;--dock-lift:-3px;z-index:2}.tool-dock__item--near{--dock-scale:1.08;--dock-lift:-2px}.tool-dock__item--far{--dock-scale:1.03}.tool-dock__item--active .tool-dock__label{opacity:1;visibility:visible;transform:translate(-50%)}@media (width<=1200px),(hover:none){.tool-dock__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 8px;width:100%;padding:20px 8px;display:grid}.tool-dock__item{width:auto;min-width:0}.tool-dock__link{flex-direction:column;gap:8px}.tool-dock__tile{width:52px;height:52px;transform:none}.tool-dock__label{color:inherit;opacity:1;visibility:visible;white-space:normal;background:0 0;padding:0;font-size:.75rem;position:static}.tool-dock__label,.tool-dock__item--active .tool-dock__label{transform:none}}@media (prefers-reduced-motion:reduce){.tool-dock__tile{transition:none;transform:none}.tool-dock__label{transition:none}}@media (width>=641px) and (width<=1200px){.tool-dock__list{grid-template-columns:repeat(5,minmax(0,1fr));width:100%}}@media (width<=760px){.tool-dock{margin-inline:calc(-1*clamp(2rem,4vw,3rem))}}@media (width<=640px){.tool-dock{margin-inline:-1rem}}.project-add{background:var(--color-white);width:min(100%,328px);color:var(--color-navy);border-radius:32px;flex-direction:column;margin-top:clamp(2rem,4vw,3rem);padding:12px;text-decoration:none;transition:box-shadow .18s;display:flex}.project-add__visual{aspect-ratio:1;color:#dedede;border:1px solid #eee;border-radius:22px;place-items:center;transition:background-color .18s,color .18s;display:grid}.project-add__icon{width:44%;height:44%}.project-add__label{font-family:var(--font-heading);padding:20px 10px 12px;font-size:1.125rem;font-weight:700}.project-add:focus-visible{outline:2px solid var(--color-navy);outline-offset:4px}.project-add:focus-visible .project-add__visual{color:#59758d;background:#d9ebfb}@media (hover:hover){.project-add:hover{box-shadow:0 6px 18px #0000000f}.project-add:hover .project-add__visual{color:#59758d;background:#d9ebfb}}@media (prefers-reduced-motion:reduce){.project-add,.project-add__visual{transition:none}}.cms-platforms{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:clamp(2rem,5vw,4rem);max-width:880px;margin:clamp(2rem,4vw,3rem) 0 0;padding:0;list-style:none;display:grid}.cms-platforms__item{min-width:0}.cms-platforms__logo{object-fit:contain;object-position:left center;width:100%;max-width:240px;height:60px;display:block}@media (width<=640px){.cms-platforms{grid-template-columns:minmax(0,1fr);gap:2rem}.cms-platforms__logo{max-width:220px;height:52px}}.site-footer{color:#d9d9d9;text-align:center;background:#000;place-items:center;min-height:0;display:grid}.site-footer a{color:inherit;text-underline-offset:3px}.privacy{background:var(--color-white);width:calc(100% - 32px);max-width:680px;color:var(--color-navy);border-radius:24px;margin:24px auto;padding:clamp(24px,5vw,48px)}.privacy a{color:inherit;text-underline-offset:3px}.privacy h1{font-size:36px}.privacy h2{margin-top:32px;font-size:22px}.privacy h1:after,.privacy h2:after{content:none}.privacy__updated{margin-top:32px;font-size:14px}.privacy__signature{width:40px;height:auto;margin:48px auto 16px;display:block}
