@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,400;8..60,500&display=swap');
:root{--ink:#17212b;--muted:#64716f;--teal:#23746e;--paper:#f1f2ed;--night:#101923;--sand:#d9c7aa;--serif:'Source Serif 4',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif}
.company-page main>section.is-prepared{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.company-page main>section.is-visible{opacity:1;transform:none}
.company-page{font-family:var(--sans);background:var(--paper);color:var(--ink);overflow-x:hidden}.company-page main{display:block}.company-skip{position:absolute;left:-999px;top:1rem;z-index:10;background:#fff;color:var(--ink);padding:.75rem 1rem}.company-skip:focus{left:1rem}.company-header{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.05rem clamp(1.25rem,5vw,5rem);background:rgba(241,242,237,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(23,33,43,.12)}.company-header__identity{display:flex;align-items:center;gap:.75rem;color:var(--ink);font-size:.9rem;font-weight:700;text-decoration:none;letter-spacing:-.02em}.company-header__identity img{width:2rem;height:2rem;object-fit:contain}.company-nav{display:flex;align-items:center;gap:clamp(.8rem,2.5vw,2.2rem)}.company-nav a{color:var(--ink);font-size:.77rem;text-decoration:none}.company-nav a:hover,.company-nav a:focus-visible{color:var(--teal)}.company-menu,.company-menu-panel{display:none}
.company-kicker{margin:0;color:var(--teal);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.company-hero{position:relative;min-height:min(760px,calc(100svh - 4.25rem));display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);align-items:center;gap:4vw;padding:clamp(4rem,9vw,8rem) clamp(1.25rem,8vw,9rem) clamp(3rem,7vw,6rem);isolation:isolate;background:linear-gradient(124deg,#f1f2ed 0 58%,#d7e3df 58% 100%)}.company-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(124deg,transparent 0 57.7%,rgba(35,116,110,.14) 57.8%,transparent 58.5%),radial-gradient(circle at 82% 42%,rgba(255,255,255,.72),transparent 31%)}.company-hero__copy{max-width:680px}.company-hero h1,.company-section-heading h2,.people-heading h2,.company-practice h2,.company-vision h2,.company-contact h2{margin:.8rem 0 0;font-size:clamp(3.2rem,6.5vw,7.1rem);font-weight:500;letter-spacing:-.055em;line-height:1.02}.company-hero h1 em,.company-section-heading h2 em,.people-heading h2 em,.company-practice h2 em,.company-vision h2 em,.company-contact h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}.company-hero__lead{max-width:35rem;margin:2rem 0 0;font-size:clamp(1.05rem,1.4vw,1.28rem);line-height:1.55;color:#41515a}.company-link,.company-button{display:inline-flex;align-items:center;gap:1rem;margin-top:2rem;padding:.75rem 0;color:var(--ink);font-size:.9rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--teal)}.company-link span,.company-button span{font-size:1.2rem}.company-hero__mark{position:relative;aspect-ratio:1;display:grid;place-items:center;max-width:410px;width:min(38vw,410px);justify-self:end}.company-hero__mark img{position:relative;z-index:2;width:34%;filter:drop-shadow(0 12px 26px rgba(23,33,43,.14))}.company-hero__ring,.company-hero__orbit{position:absolute;border:1px solid rgba(35,116,110,.34);border-radius:50%}.company-hero__ring--outer{inset:5%;transform:rotate(-20deg) scaleY(.62)}.company-hero__ring--inner{inset:22%;transform:rotate(22deg) scaleY(.78)}.company-hero__orbit--one{inset:2% 24%;transform:rotate(43deg) scaleY(.28);border-color:rgba(35,116,110,.55)}.company-hero__orbit--two{inset:27% 0;transform:rotate(-28deg) scaleY(.2);border-color:rgba(23,33,43,.2)}.company-hero__location{position:absolute;left:clamp(1.25rem,8vw,9rem);bottom:2rem;margin:0;color:var(--muted);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.company-thesis{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(3rem,9vw,10rem);padding:clamp(6rem,11vw,11rem) clamp(1.25rem,12vw,13rem);background:#fff}.company-thesis__statement{max-width:38rem;margin:0;font-family:var(--serif);font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.18;letter-spacing:-.035em}.company-thesis__notes{margin-top:3.5rem;display:grid;gap:1.2rem}.company-thesis__notes p{margin:0;color:#4f5c5e;font-size:.9rem}.company-thesis__notes span{display:inline-block;width:2.4rem;color:var(--teal);font-size:.7rem;letter-spacing:.1em}
.company-trajectory{padding:clamp(5rem,9vw,9rem) clamp(1.25rem,8vw,9rem);background:var(--night);color:#edf2ed}.trajectory-intro{display:grid;grid-template-columns:1fr 1.2fr .7fr;gap:3vw;align-items:end}.trajectory-intro h2{margin:.8rem 0 0;max-width:28rem;font-size:clamp(2.1rem,4vw,4.7rem);line-height:1.02;letter-spacing:-.05em;font-weight:500}.trajectory-intro>p:last-child{max-width:20rem;margin:0;color:#9faeaa;line-height:1.6}.company-trajectory .company-kicker{color:#8dd1c3}.trajectory-line{display:flex;align-items:center;gap:0;margin:clamp(4rem,8vw,7rem) 0 2rem}.trajectory-line span{width:.65rem;height:.65rem;background:#8dd1c3;border-radius:50%;box-shadow:0 0 0 8px rgba(141,209,195,.1)}.trajectory-line span:not(:last-child){flex:1;height:1px;margin:0 1rem;border-radius:0;background:rgba(141,209,195,.42);box-shadow:none}.trajectory-list{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,4vw,4rem);list-style:none;margin:0;padding:0}.trajectory-list li{min-width:0}.trajectory-list time{display:block;color:#8dd1c3;font-size:.7rem;letter-spacing:.12em}.trajectory-list strong{display:block;margin:1rem 0 .65rem;font-size:1.2rem;font-weight:600}.trajectory-list p{max-width:19rem;margin:0;color:#aebcb8;line-height:1.6;font-size:.88rem}
.company-people{padding:clamp(6rem,10vw,10rem) clamp(1.25rem,8vw,9rem);background:#e7e6de}.people-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem}.people-heading h2{max-width:42rem;font-size:clamp(2.8rem,5.6vw,6rem)}.people-stage{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(1.5rem,5vw,5rem);margin-top:clamp(4rem,7vw,7rem)}.person{margin:0}.person__image{overflow:hidden;background:#cfd4d0}.person__image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.82) contrast(1.02)}.person--founder .person__image{height:min(62vw,720px)}.people-side{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2vw,2rem);align-items:end}.person--member .person__image{height:min(32vw,370px)}.person figcaption{display:grid;gap:.35rem;padding-top:1rem}.person figcaption strong{font-size:1rem}.person figcaption span{color:#5f6b6b;font-size:.8rem}.person figcaption a{width:max-content;margin-top:.5rem;color:var(--teal);font-size:.78rem;text-decoration:none;border-bottom:1px solid rgba(35,116,110,.45)}
.company-practice{display:grid;grid-template-columns:minmax(120px,.45fr) minmax(0,1fr) minmax(240px,.75fr);gap:clamp(2rem,6vw,7rem);align-items:center;padding:clamp(6rem,11vw,11rem) clamp(1.25rem,10vw,11rem);background:#fff}.practice-rail{display:grid;justify-items:start;gap:.85rem;color:var(--muted);font-size:.65rem;letter-spacing:.13em;writing-mode:vertical-rl;transform:rotate(180deg)}.practice-rail i{width:1px;height:4rem;background:#b3c5c1}.practice-copy h2{font-size:clamp(2.7rem,5vw,5.4rem)}.practice-copy>p:last-child{max-width:31rem;margin:2rem 0 0;color:#526064;line-height:1.65}.practice-object{display:grid;place-items:center;min-height:270px;background:#e3eee9;border-radius:50%;aspect-ratio:1}.practice-object>div{display:grid;gap:.55rem;justify-items:center;color:#397b74;font-size:.6rem;font-weight:700;letter-spacing:.12em}.practice-object b{width:3rem;height:1px;background:#8bb9ae}
.company-vision{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:600px;overflow:hidden;background:#152b35;color:#f0f3ec}.vision-sky{position:absolute;inset:0;background:linear-gradient(180deg,#14212b 0%,#2b5060 59%,#bd9971 100%)}.vision-horizon{position:absolute;left:0;right:0;bottom:0;height:35%;background:linear-gradient(180deg,rgba(187,151,109,.1),rgba(10,24,31,.84))}.vision-sun{position:absolute;left:16%;top:25%;width:clamp(120px,18vw,260px);aspect-ratio:1;border-radius:50%;background:#e7bf80;box-shadow:0 0 90px rgba(231,191,128,.34)}.vision-star{position:absolute;width:3px;height:3px;background:#e7eee6;border-radius:50%;opacity:.8}.vision-star--one{top:22%;right:22%}.vision-star--two{top:38%;right:34%}.vision-star--three{top:16%;right:43%}.vision-copy{position:relative;z-index:1;grid-column:2;align-self:end;max-width:620px;padding:clamp(3rem,8vw,8rem) clamp(1.25rem,8vw,9rem) clamp(4rem,8vw,8rem) 2rem}.company-vision .company-kicker{color:#d8c19e}.vision-copy h2{font-size:clamp(2.8rem,5.1vw,5.8rem)}.vision-copy>p:not(.company-kicker):not(.vision-note){max-width:34rem;margin:2rem 0 0;color:#d6dfd9;line-height:1.65}.vision-note{margin:1rem 0 0;color:#c8aa83;font-size:.76rem;letter-spacing:.04em}.company-contact{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:end;padding:clamp(5rem,9vw,9rem) clamp(1.25rem,12vw,13rem);background:#f1f2ed}.company-contact h2{font-size:clamp(2.8rem,5vw,5.7rem)}.company-contact__action{max-width:25rem}.company-contact__action p{margin:0;color:#526064;line-height:1.6}.company-button{padding:.95rem 1.3rem;background:var(--ink);border:1px solid var(--ink);color:#fff}.company-button:hover,.company-button:focus-visible{background:var(--teal);border-color:var(--teal)}
@media (max-width:48rem){.company-header{align-items:center}.company-nav{display:none}.company-menu{display:grid;place-items:center;gap:4px;width:2.75rem;height:2.75rem;padding:.65rem;border:1px solid rgba(23,33,43,.25);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer}.company-menu i{display:block;width:1.15rem;height:1px;background:currentColor;transition:transform .25s ease,opacity .25s ease}.company-menu[aria-expanded=true] i:nth-of-type(1){transform:translateY(5px) rotate(45deg)}.company-menu[aria-expanded=true] i:nth-of-type(2){opacity:0}.company-menu[aria-expanded=true] i:nth-of-type(3){transform:translateY(-5px) rotate(-45deg)}.company-menu-panel{position:absolute;top:calc(100% + 1px);left:0;right:0;display:grid;gap:.25rem;padding:1rem 1.25rem 1.25rem;background:rgba(241,242,237,.98);border-bottom:1px solid rgba(23,33,43,.12);box-shadow:0 16px 30px rgba(23,33,43,.08)}.company-menu-panel[hidden]{display:none}.company-menu-panel a{padding:.7rem 0;color:var(--ink);font-size:1rem;text-decoration:none}.company-menu-panel a:focus-visible,.company-menu-panel a:hover{color:var(--teal)}.company-hero{min-height:0;grid-template-columns:1fr;gap:3rem;padding-top:5rem}.company-hero__mark{justify-self:center;width:min(68vw,330px)}.company-hero__location{position:static;grid-row:3}.company-thesis{grid-template-columns:1fr;gap:3rem;padding-block:5rem}.trajectory-intro{grid-template-columns:1fr;gap:1rem}.trajectory-intro>p:last-child{margin-top:1rem}.trajectory-line{margin-top:4rem}.trajectory-list{grid-template-columns:1fr;gap:2.4rem}.company-people{padding-block:5rem}.people-heading{display:block}.people-stage{grid-template-columns:1fr;margin-top:3rem}.person--founder .person__image{height:min(118vw,600px)}.people-side{gap:.8rem}.person--member .person__image{height:min(60vw,280px)}.company-practice{grid-template-columns:1fr;gap:2.5rem;padding-block:5rem}.practice-rail{writing-mode:horizontal-tb;transform:none;display:flex;align-items:center}.practice-rail i{width:2.5rem;height:1px}.practice-object{width:min(66vw,280px);margin:0 auto}.company-vision{display:block;min-height:640px}.vision-copy{padding:5rem 1.25rem 4rem}.vision-sun{left:8%;top:14%}.company-contact{grid-template-columns:1fr;gap:2rem;padding-block:5rem}}
@media (max-width:25rem){.company-header{display:block}.company-header__identity{margin-bottom:1rem}.company-header nav{grid-template-columns:repeat(2,max-content)}.company-hero h1{font-size:clamp(2.8rem,13vw,3.7rem)}.company-hero__lead{font-size:1rem}.company-section-heading h2,.people-heading h2,.company-practice h2,.company-vision h2,.company-contact h2{font-size:clamp(2.45rem,12vw,3.5rem)}.people-side{grid-template-columns:1fr}.person--member .person__image{height:82vw}.company-thesis__statement{font-size:1.65rem}}
@media (prefers-reduced-motion:reduce){.company-hero__ring,.company-hero__orbit,.vision-sun{animation:none}}
@media (max-width:48rem){.company-header{flex-direction:column;align-items:flex-start;gap:1rem}.company-header nav{width:100%;display:grid;grid-template-columns:repeat(3,max-content);gap:.6rem 1rem}.company-header nav a{min-width:0}.company-hero__copy{min-width:0;width:100%}.company-hero h1{font-size:clamp(2.65rem,11vw,4.1rem);line-height:1.05;letter-spacing:-.045em}.company-hero h1 em{letter-spacing:-.035em}.company-hero__mobile-break{display:inline}.company-hero__lead{max-width:100%;overflow-wrap:anywhere;word-break:normal}.practice-rail,.practice-copy{min-width:0}.practice-rail{flex-wrap:wrap;max-width:100%}}
@media (max-width:25rem){.company-hero h1{font-size:clamp(2.35rem,11.5vw,3.4rem)}.company-hero__lead{font-size:.95rem}}
@media (max-width:48rem){#company-main{min-width:0;max-width:100%;overflow:hidden}.company-hero__copy,.company-hero h1,.company-hero__lead{max-width:100%;overflow-wrap:anywhere;word-break:break-word}.company-hero h1{font-size:clamp(2.25rem,10vw,3.65rem)}}
@media (max-width:48rem){.company-header .company-menu-panel[hidden]{display:none!important}.company-header .company-nav{display:none!important}.company-hero__copy{width:calc(100vw - 5.5rem);max-width:calc(100vw - 5.5rem)}.company-hero h1,.company-hero__lead{width:100%}}
@media (max-width:25rem){.company-hero h1{font-size:1.85rem;line-height:1.1}.company-hero__lead{font-size:.9rem}}
@media (max-width:25rem){.company-hero__narrow-break{display:inline}}
.company-page section[id]{scroll-margin-top:8rem}

/* Company shell navigation: the containing identity uses the same calm, product-family contract as Home. */
.company-products{position:relative}.company-products>button,.company-nav> a{border:0;background:none;color:var(--ink);font:inherit;font-size:.8rem;font-weight:650;letter-spacing:.03em;text-decoration:none;cursor:pointer;padding:.6rem 0}.company-products>button:hover,.company-products>button:focus-visible,.company-nav>a:hover,.company-nav>a:focus-visible{color:var(--teal)}.company-products>button span{font-size:1rem}.company-products-menu{position:absolute;top:3rem;right:-1rem;width:19rem;padding:.6rem;background:#fff;box-shadow:0 18px 50px rgba(17,37,42,.14);border:1px solid rgba(17,37,42,.12)}.company-products-menu a{display:grid;gap:.15rem;padding:.85rem;color:var(--ink);text-decoration:none;border-bottom:1px solid #e6eae7}.company-products-menu a:last-child{border-bottom:0}.company-products-menu a:hover,.company-products-menu a:focus-visible{color:var(--teal)}.company-products-menu b{font-size:.85rem}.company-products-menu span{color:#6c7e7e;font-size:.72rem}.company-nav .company-nav__contact{color:#fff;background:var(--ink);border-radius:2rem;padding:.75rem 1rem}.company-nav .company-nav__contact:hover,.company-nav .company-nav__contact:focus-visible{color:#fff;background:var(--teal)}
@media (max-width:48rem){.company-header{flex-direction:row!important;align-items:center!important;gap:1rem}.company-nav{display:none!important}.company-menu{display:grid!important;flex:0 0 auto;margin-inline-start:auto}.company-menu-panel{top:calc(100% + 1px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.15rem 1.25rem;padding:1rem 1.25rem 1.25rem;background:var(--paper)}.company-menu-panel p{grid-column:1/-1;margin:.1rem 0 .35rem;color:var(--teal);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.company-menu-panel a{min-width:0;padding:.7rem 0}.company-menu-panel .company-nav__contact{grid-column:1/-1;color:#fff;background:var(--ink);padding:.8rem 1rem;border-radius:2rem;text-align:center}.company-menu-panel .company-nav__contact:hover,.company-menu-panel .company-nav__contact:focus-visible{color:#fff;background:var(--teal)}}
@media (max-width:25rem){.company-header{display:flex!important}.company-header__identity{margin:0}.company-menu-panel{grid-template-columns:1fr 1fr;gap:.1rem .8rem;padding-inline:1rem}.company-menu-panel a{font-size:.92rem}}
@media (max-width:48rem){body.menu-open::before{content:"";position:fixed;inset:0;z-index:29;background:rgba(12,22,28,.28)}.company-menu-panel{position:fixed!important;z-index:30!important;inset:0 0 0 auto!important;width:min(24rem,88vw)!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;padding:6.5rem 1.5rem 2rem!important;display:grid!important;grid-template-columns:1fr!important;align-content:start!important;gap:.35rem!important;overflow:auto!important;transform:translateX(105%)!important;transition:transform .3s ease!important;box-shadow:-1.5rem 0 3rem rgba(9,20,25,.2)!important}.company-menu-panel:not([hidden]){transform:translateX(0)!important}.company-menu-panel a{min-height:3rem!important;display:flex!important;align-items:center!important;padding:.85rem 0!important}.company-menu-panel p{grid-column:1!important}}
@media(prefers-reduced-motion:reduce){.company-menu-panel{transition:none!important}}
.company-menu-panel .menu-close{display:none;justify-self:end;margin:0 0 1rem;padding:.45rem 0;border:0;background:transparent;color:inherit;font:600 .68rem ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.company-menu-panel .menu-close:focus-visible{outline:2px solid currentColor;outline-offset:4px}@media(max-width:48rem){.company-menu-panel .menu-close{display:block}}
.company-hero__narrow-break{display:none}.person__context{max-width:32rem;margin:.45rem 0 0;color:#526064;font-size:.82rem;line-height:1.5}.vision-principles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 2rem;margin:2.3rem 0 0}.vision-principles p{margin:0;display:grid;gap:.25rem}.vision-principles strong{font-size:.83rem;font-weight:600;color:#f0f3ec}.vision-principles span{font-size:.72rem;line-height:1.45;color:#c8d5d0}@media (max-width:48rem){.vision-principles{grid-template-columns:1fr;gap:1rem;margin-top:2rem}.person__context{font-size:.8rem}}
@media (max-width:25rem){.company-hero__narrow-break{display:inline}}
