*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}.relative {
  position: relative;
}.table {
  display: table;
}.grid {
  display: grid;
}.hidden {
  display: none;
}.scroll-smooth {
  scroll-behavior: smooth;
}

:root{--paper:#f3f0e8;--ink:#252720;--muted:#62645c;--line:#cac9bf;--blue:#1834c7;--header:78px;--footer:48px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-bottom:80px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Satoshi,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:5px}::selection{background:#cbd2ff}p,h1,h2,h3,figure{margin:0}img{display:block;width:100%;height:auto}a,button,input,select,textarea{scroll-margin-block:110px 90px}section{scroll-margin-top:12px}
.shell{padding-inline:clamp(20px,4vw,72px);max-width:1800px;margin:auto}.eyebrow,.caption,.index{font-size:11px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.muted{color:var(--muted)}.display{font-family:'Cabinet Grotesk',Arial,sans-serif;font-weight:500;letter-spacing:-.055em;line-height:.95}.skip{position:fixed;top:-90px;left:20px;z-index:100;background:var(--ink);color:white;padding:12px}.skip:focus{top:12px}
.masthead{height:var(--header);position:fixed;inset:0 0 auto;z-index:50;background:rgba(243,240,232,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.masthead-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{width:224px;flex-shrink:0;min-height:44px;display:flex;align-items:center}.masthead nav{display:flex;gap:30px;font-size:12px}.masthead nav a{padding:14px 0}.masthead nav a:hover,.bottom-bar a:hover{color:var(--blue)}.connect{background:var(--blue);color:#fff;padding:14px 18px;font-size:12px;font-weight:700;transition:background .2s}.connect:hover{background:#10248d}
main{padding-top:var(--header);padding-bottom:calc(var(--footer) + 64px)}.hero{padding-top:42px}.hero-meta{display:flex;justify-content:space-between;gap:24px;margin-bottom:35px}.summit-label{display:flex;align-items:center;gap:8px}.dot{width:7px;height:7px;background:var(--blue);border-radius:50%;flex-shrink:0}.hero-title{font-size:clamp(76px,9.5vw,164px);max-width:1300px}.hero-title em{font-family:Georgia,serif;font-weight:400;color:var(--blue);letter-spacing:-.065em}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:30px 0 34px}.hero-bottom p{font-size:17px;line-height:1.55;max-width:440px}.explore{font-size:12px;border-bottom:1px solid var(--ink);padding:12px 0;white-space:nowrap}.explore span{margin-left:30px}.hero-figure{position:relative;overflow:hidden;background:#ddd9cd}.hero-figure img{aspect-ratio:2.05;object-fit:cover;object-position:50% 56%;will-change:transform}.figure-caption{display:flex;justify-content:space-between;gap:20px;padding-top:12px;color:var(--muted)}
.intro{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding-block:120px 100px}.intro h2{font-size:clamp(40px,4.6vw,74px);line-height:1.08}.intro p{font-size:17px;line-height:1.75;max-width:620px;margin-top:32px}.section-head{display:flex;align-items:baseline;justify-content:space-between;border-top:1px solid var(--ink);padding-block:18px 45px;gap:24px}.section-head h2{font-size:36px}.discipline{display:grid;grid-template-columns:70px 1.2fr 1fr 40px;gap:30px;align-items:center;padding:30px 0;border-top:1px solid var(--line)}.discipline h3{font-family:'Cabinet Grotesk',sans-serif;font-size:clamp(29px,3.2vw,48px);font-weight:500;letter-spacing:-.035em}.discipline p{max-width:360px;font-size:15px;line-height:1.6;color:var(--muted)}.discipline .mark{font-size:28px;color:var(--blue)}
.material-story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding-block:110px}.material-story figure{max-width:670px}.material-story img{aspect-ratio:4/5;object-fit:cover}.material-story h2{font-size:clamp(48px,5.3vw,84px);margin-block:30px}.material-story p{font-size:17px;line-height:1.75;max-width:450px}.thought-list{list-style:none;padding:0;margin:36px 0 0}.thought-list li{padding:15px 0;border-top:1px solid var(--line);font-size:14px;display:flex;justify-content:space-between;gap:16px}.thought-list span{color:var(--muted);font-size:11px}
.people{padding-block:15px 100px}.people-intro{max-width:520px;margin:0 0 45px auto;font-size:17px;line-height:1.7}.people-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}.person{border-top:1px solid var(--line);padding-top:24px}.person-top{display:flex;justify-content:flex-end;align-items:start;margin-bottom:24px}.person h3{color:var(--blue);font-size:28px;font-weight:500;margin-bottom:8px}.person .role{font-size:11px;line-height:1.6;text-transform:uppercase;letter-spacing:.07em;margin-bottom:20px}.person p{font-size:14px;color:var(--muted);line-height:1.75}
.contact{background:#e4e7df;padding-block:70px 80px}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.contact h2{font-size:clamp(60px,6.5vw,100px);margin-block:30px}.contact-copy{max-width:400px;font-size:16px;line-height:1.7}.contact-note{margin-top:40px;font-size:12px;color:var(--muted)}.form-note{font-size:12px;color:#52564d;margin-bottom:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px}label{display:block;font-size:12px;font-weight:500}label>span{display:block;margin-bottom:9px}.wide{grid-column:1/-1}input:not([type=checkbox]),select,textarea{border:0;border-bottom:1px solid #868d80;border-radius:0;background:transparent;width:100%;padding:10px 0 14px;font-size:16px;color:var(--ink);min-height:48px}input::placeholder,textarea::placeholder{color:#666c61;opacity:1}textarea{resize:vertical;min-height:110px}select{padding-right:22px}.consent{display:flex;align-items:start;gap:12px;line-height:1.7;margin:26px 0}.consent input{accent-color:var(--blue);width:20px;height:20px;flex-shrink:0;margin-top:1px}.consent a{text-decoration:underline;text-underline-offset:3px}.send{border:0;background:var(--ink);color:white;padding:18px 24px;min-height:54px;width:100%;display:flex;justify-content:space-between;cursor:pointer;font-size:14px}.send:hover{background:var(--blue)}.send:disabled{opacity:.65;cursor:wait}#form-status{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.bottom-bar{position:fixed;inset:auto 0 0;height:calc(var(--footer) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);z-index:50;background:var(--paper);border-top:1px solid var(--line)}.bottom-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.bottom-links{display:flex;align-items:center;gap:24px}.bottom-links a{padding:12px 0}.footer-progress{position:absolute;top:-1px;left:0;height:2px;width:100%;background:var(--blue);transform:scaleX(0);transform-origin:left}.footer-mobile{display:none}
@media(min-width:1600px){.hero-figure img{max-height:760px}}
@media(min-width:601px) and (max-width:1100px){.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.masthead nav{display:none}.intro{grid-template-columns:1fr;gap:30px;padding-block:80px}.discipline{grid-template-columns:35px 1fr 1fr;gap:20px}.discipline .mark{display:none}.material-story{gap:40px;padding-block:80px}.people-grid{gap:22px}.person-top{margin-bottom:24px}.contact-layout{grid-template-columns:1fr;gap:45px}.contact-copy{max-width:600px}.contact-note{margin-top:20px}.contact h2{max-width:650px}.hero-title{font-size:clamp(74px,11vw,110px)}}
@media(max-width:600px){:root{--header:70px;--footer:48px}.shell{padding-inline:20px}.masthead-inner{gap:12px}.brand{width:clamp(105px,33vw,144px)}.connect{font-size:10px;padding:13px 10px}.hero{padding-top:27px}.hero-meta{font-size:9px;gap:15px;margin-bottom:28px}.hero-meta>.eyebrow{font-size:9px;max-width:120px}.summit-label{font-size:9px;max-width:150px}.hero-title{font-size:clamp(60px,14.5vw,87px);letter-spacing:-.06em}.hero-bottom{align-items:start;flex-direction:column;gap:18px;margin:25px 0}.hero-bottom p{font-size:15px;max-width:330px}.hero-figure img{aspect-ratio:1.16;object-position:center}.figure-caption{font-size:9px;gap:15px}.figure-caption span:last-child{text-align:right;max-width:130px}.intro{padding-block:66px;gap:24px}.intro h2{font-size:40px}.intro p{font-size:15px;margin-top:24px}.section-head{padding-bottom:30px;gap:20px}.section-head h2{font-size:30px}.section-head .eyebrow{font-size:9px}.discipline{grid-template-columns:24px 1fr;gap:12px 20px;padding:24px 0}.discipline h3{font-size:31px}.discipline p{grid-column:2;font-size:14px}.material-story{grid-template-columns:1fr;gap:35px;padding-block:65px}.material-story figure{width:86%}.material-story h2{font-size:54px;margin-block:22px}.material-story p{font-size:15px}.people{padding-bottom:65px}.people-intro{margin-bottom:30px;font-size:15px}.people-grid{grid-template-columns:1fr;gap:34px}.person-top{margin-bottom:18px}.person p{max-width:430px}.contact{padding-block:55px}.contact h2{font-size:63px}.contact-copy{font-size:15px}.form-grid{grid-template-columns:1fr;gap:23px}.contact-layout{gap:38px}.bottom-inner{font-size:9px;gap:10px}.bottom-desktop{display:none}.bottom-links .footer-mobile{display:flex}.bottom-links{gap:18px}.bottom-inner>.caption{font-size:9px}.bottom-links a{min-height:44px;display:flex;align-items:center}main{padding-bottom:calc(var(--footer) + env(safe-area-inset-bottom) + 36px)}}
.brand img{mix-blend-mode:multiply}
.hero-figure img{aspect-ratio:3/2;object-position:center}.outdoor-story{padding-bottom:110px}.outdoor-story img{aspect-ratio:3/2;object-fit:cover}.work-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end;margin-bottom:32px}.work-intro h2{font-size:clamp(42px,4.5vw,68px);margin-top:20px}.work-intro p{font-size:16px;line-height:1.75;max-width:480px}.visual-note{font-size:11px;color:var(--muted);line-height:1.6;margin-top:14px;max-width:650px}@media(max-width:600px){.hero-figure img{aspect-ratio:3/2}.outdoor-story{padding-bottom:65px}.work-intro{grid-template-columns:1fr;gap:24px}.work-intro p{font-size:15px}.material-story figure{width:100%}.figure-caption span{max-width:65%}}
.platform-intro{font-size:18px;line-height:1.7;max-width:660px;margin:0 0 50px auto}.practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px 50px}.practice-label{display:flex;justify-content:space-between;gap:20px;margin-bottom:14px}.practice-label .caption{color:var(--muted);font-size:9px}.practice-story img{aspect-ratio:4/3;object-fit:cover;background:#e2ded3}.practice-story h3{font-family:'Cabinet Grotesk',sans-serif;font-size:clamp(32px,3.2vw,48px);font-weight:500;letter-spacing:-.035em;margin:22px 0 12px}.practice-story h4{font-size:20px;font-weight:500;letter-spacing:-.02em;line-height:1.3;margin:0 0 14px}.practice-story p{font-size:15px;line-height:1.75;color:var(--muted);max-width:510px}.practice-scope{font-size:10px;line-height:1.7;letter-spacing:.04em;border-top:1px solid var(--line);padding-top:16px;margin-top:24px}.opportunity{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-block:10px 110px}.opportunity h2{font-size:clamp(44px,4.8vw,72px);margin:25px 0}.opportunity p{font-size:16px;line-height:1.75;max-width:480px}.opportunity-list article{border-top:1px solid var(--line);padding:24px 0}.opportunity-list h3{font-size:25px;letter-spacing:-.025em;margin-bottom:12px}.opportunity-list p{color:var(--muted);font-size:15px}
@media(max-width:900px){:root{--header:110px}.masthead-inner{height:70px}.masthead nav{position:absolute;top:70px;left:20px;right:20px;display:flex;height:40px;align-items:center;justify-content:space-around;gap:20px;border-top:1px solid var(--line);font-size:12px}.masthead nav a{padding:10px 0}.masthead nav #nav-work{display:none}.practice-grid{gap:45px 30px}}
@media(max-width:600px){.platform-intro{font-size:15px;margin-bottom:32px}.practice-grid{grid-template-columns:1fr;gap:44px}.practice-story h3{font-size:35px}.practice-story h4{font-size:20px}.practice-label .index{font-size:9px}.practice-label{gap:12px}.practice-story p{font-size:15px}.opportunity{grid-template-columns:1fr;gap:26px;padding-bottom:65px}.opportunity h2{font-size:52px}.opportunity p{font-size:15px}.masthead nav{font-size:11px}.hero-meta{margin-bottom:24px}}

:root{color-scheme:light;--panel:#e4e7df;--header-surface:rgba(243,240,232,.97);--field-line:#868d80;--placeholder:#666c61;--button-text:#fff;--action:#1834c7}
:root[data-theme="dark"]{color-scheme:dark;--paper:#181b1a;--ink:#f3f0e8;--muted:#b5bab2;--line:#484e48;--blue:#9aaeff;--panel:#232923;--header-surface:rgba(24,27,26,.97);--field-line:#7d897d;--placeholder:#b5bab2;--button-text:#181b1a;--action:#1834c7}
.masthead{background:var(--header-surface)}.contact{background:var(--panel)}.form-note{color:var(--muted)}input:not([type=checkbox]),select,textarea{border-bottom-color:var(--field-line)}input::placeholder,textarea::placeholder{color:var(--placeholder)}select option{background:var(--panel);color:var(--ink)}.send,.skip{color:var(--button-text)}.send:hover{color:var(--paper)}.connect{background:var(--action)}.connect:hover{background:#10248d}
[data-theme="dark"] .brand img{filter:invert(1);mix-blend-mode:screen}[data-theme="dark"] ::selection{background:#4053a1;color:#fff}
.theme-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 4px;border:0;background:transparent;color:var(--ink);font:inherit;letter-spacing:inherit;text-transform:inherit;white-space:nowrap;cursor:pointer}
.theme-toggle:hover{color:var(--blue)}.theme-track{display:inline-flex;align-items:center;width:26px;height:16px;padding:2px;border:1px solid var(--muted);border-radius:20px}.theme-track::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--muted);transition:transform .18s ease}.theme-toggle[aria-checked="true"] .theme-track{border-color:var(--blue)}.theme-toggle[aria-checked="true"] .theme-track::after{transform:translateX(10px);background:var(--blue)}
@media(max-width:600px){.bottom-inner>.caption{display:none}.bottom-links{width:100%;justify-content:space-between;gap:8px}.theme-toggle{padding:0 2px}}

html{scroll-padding-top:110px}input,select,textarea{max-width:100%}#form-status{margin-top:1rem}#nav-contact{white-space:nowrap} @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}