:root{--paper:#f8f7f4;--ink:#303630;--muted:#6c716a;--line:#d9dcd3;--sage:#ecede6;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--ease:cubic-bezier(.22,.75,.18,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:116px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
::selection{background:#cdd5c6;color:var(--ink)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
img,video{display:block;max-width:100%;height:auto}
figure,h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{font-weight:400}
em{font-weight:400}
button,a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible,video:focus-visible{outline:2px solid #7c7654;outline-offset:7px}
.skip-link{position:fixed;left:20px;top:12px;z-index:120;background:var(--ink);color:white;padding:12px 20px;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.section-shell{width:min(1220px,calc(100% - 112px));margin-inline:auto}
.eyebrow{font-size:10px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;line-height:1.7}
.site-header{position:fixed;z-index:50;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 46px;background:rgba(248,247,244,.92);backdrop-filter:blur(14px);transition:padding .4s var(--ease),box-shadow .4s}
.site-header.is-scrolled{padding-block:17px;box-shadow:0 1px 0 #3036300b}
.wordmark{font-family:var(--serif);font-size:25px;line-height:.86;letter-spacing:-.025em;display:block;flex-shrink:0}
.wordmark span{display:block}
.desktop-nav{display:flex;gap:3px;padding:6px;background:#fffffff0;border:1px solid #e6e7e1;border-radius:100px;position:absolute;left:50%;transform:translateX(-50%)}
.desktop-nav a{padding:9px 19px;border-radius:40px;font-size:12px;white-space:nowrap;transition:background .3s}
.desktop-nav a:hover,.desktop-nav a[aria-current]{background:var(--sage)}
.header-contact{font-size:12px;display:flex;align-items:center;gap:20px}
.header-contact span{font-size:20px;transition:transform .35s var(--ease)}
.header-contact:hover span{transform:translate(3px,-3px)}
.menu-toggle{display:none;background:none;border:0;padding:12px 0;font-size:12px;gap:16px;align-items:center}
.menu-toggle span{font-size:20px}
.menu-dialog{width:100%;max-width:none;height:100dvh;max-height:none;margin:0;border:0;padding:26px 32px;background:var(--paper);color:var(--ink)}
.menu-dialog::backdrop{background:#30363088}
.menu-dialog[open]{display:flex;flex-direction:column}
.menu-top{display:flex;justify-content:space-between;align-items:center}
.menu-close{padding:12px 0;border:0;background:none;font-size:12px}
.menu-dialog nav{display:flex;flex-direction:column;gap:16px;margin-block:auto;padding-block:50px;font:clamp(35px,7vw,72px)/1.2 var(--serif)}
.menu-dialog nav a{width:fit-content}
.menu-email{font-size:13px;padding-bottom:20px;overflow-wrap:anywhere}
.hero{text-align:center;padding:171px 24px 68px;position:relative}
.hero-title{font:clamp(58px,7.65vw,116px)/1.02 var(--serif);letter-spacing:-.027em;margin:26px auto 24px;max-width:1280px}
.hero-title em{color:#69725f}
.hero-title .word-clip{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.13em;margin-bottom:-.13em;line-height:1.12}
.hero-title .word-inner{display:inline-block;will-change:transform}
.hero-intro{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:25px}
.pill{display:inline-flex;align-items:center;gap:28px;min-height:56px;padding:6px 7px 6px 25px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:60px;font-size:12px;line-height:1.4;transition:background .35s,color .35s,transform .35s var(--ease)}
.pill-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--paper);color:var(--ink);font-size:22px;transition:transform .4s var(--ease)}
.icon-arrow{display:inline-block;width:20px;height:20px;flex:none;vertical-align:middle}
.pill-icon .icon-arrow{width:22px;height:22px}
.pill:hover{transform:translateY(-3px);background:#4f5b4b}
.pill:hover .pill-icon{transform:rotate(45deg)}
.pill--outline{color:var(--ink);background:transparent;border-color:#b8beb1}
.pill--outline .pill-icon{background:var(--ink);color:var(--paper)}
.pill--outline:hover{color:var(--paper)}
.portrait-gallery{padding:12px 0 0;overflow:clip;--tilt:13deg;--rotation:5deg;--lift:38px;--spread:26px;--image-shift:0px}
.gallery-stage{width:min(1160px,88%);height:clamp(360px,43vw,600px);margin:0 auto;display:grid;grid-template-columns:.82fr 1.14fr .82fr;gap:30px;align-items:center;perspective:1500px}
.gallery-panel{position:relative;height:85%;overflow:hidden;background:#d9d9d0;transform-style:preserve-3d;will-change:transform}
.gallery-panel img{width:100%;height:calc(100% + 32px);object-fit:cover;transform:translateY(var(--image-shift));filter:saturate(.82)}
.gallery-panel--left{transform:translate(calc(-1 * var(--spread)),var(--lift)) rotateY(var(--tilt)) rotateZ(calc(-1 * var(--rotation)));transform-origin:right center}
.gallery-panel--left img{height:calc(100% + 172px);margin-top:-125px;object-position:50% 62%}
.gallery-panel--center{height:100%}
.gallery-panel--center img{object-position:center 47%}
.gallery-panel--right{transform:translate(var(--spread),var(--lift)) rotateY(calc(-1 * var(--tilt))) rotateZ(var(--rotation));transform-origin:left center}
.gallery-panel--right img{object-position:50% 29%}
.gallery-panel::after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#20251e75);pointer-events:none}
.gallery-panel figcaption{position:absolute;z-index:2;bottom:24px;left:25px;right:25px;display:flex;gap:20px;align-items:center;color:#fff;font:26px/1.2 var(--serif)}
.gallery-panel figcaption span{font:9px var(--sans);letter-spacing:.1em}
.gallery-caption{display:flex;justify-content:space-between;gap:20px;width:min(1160px,88%);margin:38px auto 0;padding-top:18px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);letter-spacing:.07em}
.about{padding-block:142px 138px}
.section-kicker{display:flex;gap:32px;align-items:center;margin-bottom:50px}
.section-rule{height:1px;background:var(--line);flex:1}
.statement{font:clamp(50px,6.7vw,98px)/1.08 var(--serif);letter-spacing:-.018em;margin-bottom:84px;max-width:1100px}
.ink-word{background-image:linear-gradient(90deg,var(--ink) 50%,#a9afa1 50%);background-size:200% 100%;background-position-x:0%;background-clip:text;-webkit-background-clip:text;color:transparent}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}
.about-photo{position:relative;max-width:470px}
.about-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 37%}
.about-photo figcaption{font-size:10px;color:var(--muted);padding-top:14px}
.image-reveal{overflow:hidden}
.about-copy h3{font:clamp(34px,3.5vw,51px)/1.1 var(--serif);letter-spacing:-.01em;margin:20px 0 28px}
.about-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-block:18px;line-height:1.9}
strong{font-weight:500;color:var(--ink)}
blockquote{font:26px/1.35 var(--serif);margin:30px 0;padding-left:24px;border-left:1px solid #adb69f}
.text-link{display:inline-flex;gap:30px;align-items:center;padding:9px 0;border-bottom:1px solid #909984;font-size:12px}
.text-link span{font-size:20px;transition:transform .3s var(--ease)}
.text-link:hover span{transform:translate(4px,-3px)}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;margin-top:105px}
.pillars article{border-top:1px solid var(--line);padding-top:25px}
.pillars .eyebrow{color:var(--muted)}
.pillars h3{font:32px/1.15 var(--serif);margin:23px 0 16px}
.pillars p{color:var(--muted);font-size:13px;line-height:1.8;max-width:295px}
.movements{padding-block:100px 108px;background:var(--sage)}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:88px}
.section-heading h2,.encounters h2{font:clamp(48px,5.8vw,80px)/1.07 var(--serif);letter-spacing:-.02em}
.section-heading p{font-size:13px;color:var(--muted);padding-bottom:7px}
.movement{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}
.movement+.movement{margin-top:100px;padding-top:100px;border-top:1px solid #cfd3c6}
.movement-film{width:100%;max-width:450px;justify-self:center}
.movement-film video{width:100%;height:auto;max-height:590px;aspect-ratio:9/16;object-fit:cover;background:#17241e}
.film-caption{font-size:10px;color:var(--muted);padding-top:16px}
.movement-copy{max-width:400px}
.movement-copy h3{font:clamp(62px,6.5vw,96px)/.98 var(--serif);letter-spacing:-.025em;margin:26px 0 32px}
.movement-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);max-width:340px;margin-bottom:34px}
.movement--reverse .movement-film{grid-column:2;grid-row:1}
.movement--reverse .movement-copy{grid-column:1;grid-row:1;padding-left:14px}
.encounters{padding-block:126px 138px}
.encounters-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}
.encounters-heading{position:sticky;top:125px}
.encounters-heading h2{font-size:clamp(45px,4.7vw,66px)}
.encounters-heading>p{font-size:13px;max-width:330px;line-height:1.9;color:var(--muted);margin:28px 0 24px}
.services{border-top:1px solid var(--line)}
.service{display:grid;grid-template-columns:22px 1fr 20px;gap:22px;padding:32px 0;border-bottom:1px solid var(--line);transition:padding .35s var(--ease)}
.service-number{font-size:10px;margin-top:9px;color:var(--muted)}
.service h3{font:28px/1.2 var(--serif);margin-bottom:10px}
.service p{font-size:12px;line-height:1.8;color:var(--muted);max-width:315px}
.service-arrow{font-size:22px;transition:transform .4s var(--ease)}
.service:hover{padding-inline:6px}
.service:hover .service-arrow{transform:translate(3px,-3px)}
.agenda{margin-top:120px}
.agenda-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}
.agenda-heading h3{font:36px/1.2 var(--serif)}
.agenda-heading .eyebrow{font-size:9px;color:var(--muted)}
.event{border-top:1px solid var(--line)}
.event:last-child{border-bottom:1px solid var(--line)}
.event summary{list-style:none;display:grid;grid-template-columns:145px 1fr 180px 25px;gap:24px;align-items:center;padding:26px 0;cursor:pointer}
.event summary::-webkit-details-marker{display:none}
.event time,.event-place{font-size:12px;color:var(--muted)}
.event h4{font:29px/1.2 var(--serif)}
.event-symbol{font-size:23px;transition:transform .3s}
.event[open] .event-symbol{transform:rotate(45deg)}
.event-body{padding:0 0 30px 169px;max-width:760px;font-size:13px;color:var(--muted)}
.event-body p{margin-bottom:12px}
.contact{background:#303b32;color:#f5f4ee;padding-top:96px;text-align:center;position:relative;overflow:clip}
.contact>.section-shell>.eyebrow{color:#c6cfbf}
.contact h2{font:clamp(52px,7.2vw,102px)/1.05 var(--serif);letter-spacing:-.02em;margin:27px 0 35px}
.contact h2 em{color:#c4cdb8}
.pill--light{background:#f5f4ee;border-color:#f5f4ee;color:#303b32}
.pill--light .pill-icon{background:#303b32;color:#f5f4ee}
.pill--light:hover{background:#dbe2d1;color:#303b32}
.contact-email{display:block;width:fit-content;max-width:100%;margin:20px auto 0;font-size:12px;overflow-wrap:anywhere;color:#c8d0c1}
.footer-line{border-top:1px solid #66726080;margin-top:90px;padding-block:35px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:center;text-align:left}
.footer-line .wordmark{font-size:29px;width:fit-content}
.footer-line p{font-size:10px;line-height:1.9;color:#c8d0c1;text-align:center}
.footer-line nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 20px;font-size:10px;color:#c8d0c1}
.footer-line nav a:hover{text-decoration:underline;text-underline-offset:5px}
@media(min-width:1600px){.hero{padding-top:186px}.gallery-stage{height:600px}}
@media(max-width:1000px){.section-shell{width:calc(100% - 72px)}.site-header{padding-inline:30px}.desktop-nav a{padding-inline:12px}.header-contact{gap:10px}.about-grid{gap:8%}.movement{gap:8%}.gallery-stage{gap:20px}.hero{padding-top:158px}.gallery-panel figcaption{left:18px;bottom:18px;font-size:22px;gap:12px}.about{padding-block:106px}.about-copy h3{font-size:36px}.statement{margin-bottom:65px}.about-copy>p:not(.eyebrow){font-size:13px}.pillars{gap:5%;margin-top:78px}.pillars h3{font-size:27px}.section-heading{margin-bottom:62px}.movement-film video{max-height:530px}.encounters-grid{gap:6%}.service{gap:14px}.service h3{font-size:25px}.event summary{grid-template-columns:110px 1fr 145px 20px;gap:18px}.event-body{padding-left:128px}}
@media(max-width:760px){html{scroll-padding-top:90px}.section-shell{width:calc(100% - 44px)}.site-header,.site-header.is-scrolled{padding:22px}.wordmark{font-size:23px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex}.hero{padding:143px 20px 43px}.hero>.eyebrow{font-size:9px;letter-spacing:.12em}.hero-title{font-size:clamp(47px,8.4vw,65px);line-height:1.04;max-width:640px;margin-top:23px;margin-bottom:22px}.hero-intro{font-size:12px;line-height:1.7}.pill{min-height:51px;font-size:11px;padding-left:21px;gap:23px}.pill-icon{width:37px;height:37px;font-size:20px}.portrait-gallery{padding-top:15px}.gallery-stage{width:94%;gap:14px;height:clamp(265px,52vw,405px);grid-template-columns:.75fr 1.18fr .75fr}.gallery-panel{height:85%}.gallery-panel--center{height:100%}.gallery-panel--left img{height:calc(100% + 132px);margin-top:-85px}.gallery-panel figcaption{left:13px;right:10px;bottom:15px;display:block;font-size:20px}.gallery-panel figcaption span{display:block;font-size:8px;margin-bottom:4px}.gallery-caption{width:calc(100% - 44px);margin-top:27px;font-size:8px;gap:10px}.about{padding-block:83px}.section-kicker{margin-bottom:32px}.eyebrow{font-size:9px}.statement{font-size:clamp(41px,7.7vw,62px);line-height:1.09;margin-bottom:45px}.about-grid{grid-template-columns:1fr;gap:42px}.about-photo{max-width:none;width:80%}.about-photo img{aspect-ratio:4/4.7;object-position:center 32%}.about-copy{max-width:510px;margin-left:14%}.about-copy h3{font-size:38px;margin-top:17px}.about-copy>p:not(.eyebrow){font-size:14px}blockquote{font-size:25px}.pillars{grid-template-columns:1fr;gap:28px;margin-top:58px}.pillars article{display:grid;grid-template-columns:28px 1fr;column-gap:18px;padding-top:23px}.pillars .eyebrow{grid-row:1/3;padding-top:5px}.pillars h3{font-size:29px;margin:0 0 12px}.pillars p{max-width:450px;font-size:13px}.movements{padding-block:70px}.section-heading{display:block;margin-bottom:45px}.section-heading h2{font-size:clamp(44px,7.3vw,58px)}.section-heading p{margin-top:22px;font-size:12px}.movement{grid-template-columns:1fr;gap:32px}.movement-film{max-width:420px;width:85%}.movement-film video{max-height:540px}.movement-copy{max-width:500px;padding-left:6%}.movement-copy h3{font-size:68px;margin:20px 0 24px}.movement-copy>p:not(.eyebrow){max-width:440px;font-size:13px}.movement+.movement{margin-top:60px;padding-top:60px}.movement--reverse .movement-film,.movement--reverse .movement-copy{grid-column:auto;grid-row:auto}.movement--reverse .movement-copy{padding-left:6%}.encounters{padding-block:75px 80px}.encounters-grid{grid-template-columns:1fr;gap:40px}.encounters-heading{position:static}.encounters-heading h2{font-size:48px}.encounters-heading>p{max-width:430px}.service{gap:17px;padding-block:27px}.service h3{font-size:28px}.service p{max-width:450px}.agenda{margin-top:74px}.agenda-heading{align-items:flex-start;flex-direction:column;gap:12px}.agenda-heading h3{font-size:32px}.event summary{grid-template-columns:80px 1fr 16px;gap:10px;padding-block:24px}.event h4{font-size:24px}.event time{font-size:10px}.event-place{display:none}.event-body{padding-left:0}.contact{padding-top:69px}.contact h2{font-size:clamp(48px,7.8vw,66px)}.footer-line{margin-top:66px;grid-template-columns:1fr 1fr;padding-block:28px;gap:25px}.footer-line p{text-align:right}.footer-line nav{grid-column:1/-1;justify-content:space-between}.contact-email{font-size:11px}}
@media(max-width:430px){.hero{padding-top:131px;padding-bottom:34px}.hero-title{font-size:46px;max-width:360px}.hero-title br{display:none}.hero-title em{display:block}.hero-intro{font-size:11px}.gallery-stage{width:113%;margin-left:-6.5%;gap:11px;height:295px;grid-template-columns:.76fr 1.26fr .76fr}.gallery-panel figcaption{font-size:16px}.gallery-panel--left figcaption{left:34px}.gallery-panel--right figcaption{left:12px}.gallery-panel img{filter:saturate(.85)}.gallery-caption{font-size:7.5px;letter-spacing:.025em}.statement{font-size:43px}.about-photo{width:91%}.about-copy{margin-left:0}.about-copy h3{font-size:37px}.movement-film{width:90%}.section-heading h2{font-size:43px}.movement-copy{padding-left:0}.movement--reverse .movement-copy{padding-left:0}.movement-copy h3{font-size:66px}.encounters-heading h2{font-size:44px}.service{grid-template-columns:17px 1fr 16px;gap:12px}.service h3{font-size:25px}.event h4{font-size:23px}.contact h2{font-size:46px}.footer-line .wordmark{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.gallery-panel{transform:none!important}.gallery-panel img{transform:none!important}.ink-word{background:none;color:var(--ink)}.hero-title .word-inner{will-change:auto}}
