:root{--paper:#fbfaf7;--white:#fff;--ink:#273c34;--muted:#666d66;--gold:#917149;--line:#dedfd6;--soft:#f1f2ed;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--gutter:clamp(22px,5vw,80px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;object-fit:cover}p,h1,h2,h3,figure{margin:0}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}::selection{background:#d9dccd;color:var(--ink)}.container{width:min(100% - var(--gutter)*2,1280px);margin-inline:auto}.section-pad{padding-block:112px}.eyebrow{font-size:0.75rem;line-height:1.5;font-weight:600;letter-spacing:.19em}.section-label{display:flex;gap:22px;align-items:center;margin-bottom:34px}.section-number{font-size:0.75rem;color:var(--gold);letter-spacing:.08em}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.035em}h2{font-size:clamp(2.625rem,4.3vw,4rem)}em{font-weight:400;color:var(--gold)}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:0.875rem;font-weight:500;line-height:1.6;padding:10px 0;border-bottom:1px solid #9b9f92;transition:color .2s,border-color .2s}.text-link:hover{color:var(--gold);border-color:var(--gold)}.text-link span{font-size:1.25rem;line-height:1;transition:transform .2s}.text-link:hover span{transform:translate(2px,-2px)}.button{min-height:54px;padding:15px 25px;display:inline-flex;align-items:center;justify-content:center;gap:32px;font-size:0.875rem;font-weight:500;line-height:1.5;border:1px solid transparent;transition:background .2s,color .2s;letter-spacing:.005em}.button span{font-size:1.375rem;line-height:1}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#3e5446}.skip-link{position:fixed;left:20px;top:-100px;padding:12px 22px;background:var(--ink);color:white;z-index:1000}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:30;background:rgba(251,250,247,.96);border-bottom:1px solid rgba(39,60,52,.13);backdrop-filter:blur(16px)}.nav-wrap{width:min(100% - var(--gutter)*2,1400px);margin-inline:auto;min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;flex-direction:column;line-height:1}.wordmark{font-size:1.938rem;letter-spacing:-1.7px;line-height:1.1;font-weight:400}.wordmark>span:not(.brand-dot){font-weight:700}.brand-dot{color:var(--gold);font-weight:600}.brand-line{font-size:0.75rem;letter-spacing:.145em;font-weight:500;margin-top:9px;color:#666b60}.main-nav{display:flex;align-items:center;gap:30px}.main-nav>a{font-size:0.875rem;line-height:1.5;position:relative;padding:12px 0;transition:color .2s}.main-nav>a:hover,.main-nav>a[aria-current="location"]{color:var(--gold)}.main-nav>a:not(.nav-contact)::after{content:'';position:absolute;bottom:5px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}.main-nav>a:hover::after{transform:scaleX(1)}.main-nav>.nav-contact{border:1px solid #b5bcaf;min-height:46px;padding:12px 20px;margin-left:8px;display:flex;gap:22px;align-items:center}.nav-contact span{font-size:1.188rem;line-height:1}.menu-toggle{display:none}
.hero-content{text-align:center;padding-block:62px 52px}.hero .eyebrow{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:24px}.small-rule{width:24px;height:1px;background:var(--gold)}h1{font-size:clamp(4.0625rem,7.4vw,6.875rem);line-height:.97}h1 em{display:inline-block;padding-bottom:8px}.hero-copy{font-size:1rem;line-height:1.8;color:var(--muted);margin:23px auto 25px;max-width:600px}.hero-visual{position:relative;margin-inline:28px;height:440px;overflow:hidden;background:#d9dfd3}.hero-visual picture,.hero-visual img{width:100%;height:100%;display:block}.hero-visual img{object-position:50% 57%}.hero-visual:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(17,34,22,.48));pointer-events:none}.hero-visual figcaption{position:absolute;z-index:1;left:48px;bottom:40px;color:white;display:flex;flex-direction:column;gap:4px}.hero-visual figcaption>span:first-child{font-size:0.75rem;letter-spacing:.15em;font-weight:500}.image-note{font-family:var(--serif);font-size:2rem;font-style:italic;line-height:1.3}.scroll-cue{position:absolute;z-index:2;right:42px;bottom:40px;width:48px;height:48px;border:1px solid #ffffff80;border-radius:50%;display:grid;place-items:center;color:white;font-size:1.438rem;transition:background .2s}.scroll-cue:hover{background:#ffffff25}
.philosophy-main{display:grid;grid-template-columns:1.28fr 1fr;gap:70px;align-items:start}.philosophy h2{font-size:clamp(2.5rem,3.8vw,3.5625rem)}.philosophy-copy{padding-top:3px;color:var(--muted);font-size:1rem;line-height:1.85}.philosophy-copy p+p{margin-top:17px}.pillars{margin-top:64px;padding-top:31px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.pillars article{display:flex;gap:25px;align-items:center}.pillar-word{font-family:var(--serif);font-size:2.125rem;line-height:1.1;letter-spacing:-.02em;white-space:nowrap}.pillars p{font-size:0.875rem;line-height:1.7;color:var(--muted)}
.services{background:var(--soft)}.services-layout{display:grid;grid-template-columns:1fr 1.28fr;gap:clamp(45px,7vw,110px)}.services-intro>p{color:var(--muted);max-width:330px;margin-top:28px}.services-intro>.text-link{margin-top:22px}.service-list{border-top:1px solid #c5cbbf}.service{border-bottom:1px solid #c5cbbf}.service summary{list-style:none;display:grid;grid-template-columns:28px 1fr 18px;gap:17px;align-items:center;padding:26px 0;cursor:pointer;font-size:1.125rem;line-height:1.4;transition:color .2s;font-weight:500}.service summary::-webkit-details-marker{display:none}.service summary:hover{color:var(--gold)}.service-index{font-size:0.75rem;font-weight:400;color:var(--gold);align-self:start;line-height:2}.plus{width:15px;height:15px;position:relative;flex-shrink:0}.plus:before,.plus:after{content:'';background:currentColor;position:absolute;left:0;top:7px;width:15px;height:1px}.plus:after{transform:rotate(90deg);transition:transform .2s}.service[open] .plus:after{transform:rotate(0)}.service-content{padding:0 32px 28px 45px;color:var(--muted);font-size:0.9375rem;line-height:1.8}.service-content>p{font-size:1rem}.service-format{display:block;font-size:0.75rem;letter-spacing:.07em;margin-top:15px;color:var(--gold);font-weight:600}.service[open] summary{padding-bottom:16px}
.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:48px}.section-heading-row>p{color:var(--muted);font-size:1rem;line-height:1.8;margin-bottom:6px}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.program-card{display:flex;flex-direction:column;min-width:0}.program-image{position:relative;aspect-ratio:4/4.8;overflow:hidden;background:#e3e7dc}.program-image img{width:100%;height:100%;transition:transform .65s ease;object-position:center}.program-card:hover .program-image img{transform:scale(1.035)}.program-card:nth-child(2) .program-image img{object-position:50% 40%}.program-card:nth-child(3) .program-image img{object-position:58% 65%}.image-tag{position:absolute;bottom:20px;left:20px;background:rgba(251,250,247,.96);padding:9px 13px;font-size:0.75rem;letter-spacing:.15em;line-height:1.4;font-weight:600}.program-title-row{display:flex;justify-content:space-between;align-items:center;margin-top:25px;gap:12px}.program-title-row h3{font-size:2.375rem;letter-spacing:-.025em}.program-index{font-size:0.75rem;color:var(--gold)}.program-card>p{font-size:0.9375rem;line-height:1.85;color:var(--muted);margin-top:16px;margin-bottom:18px;flex:1}.program-card>.text-link{align-self:flex-start;margin-top:auto}.programs-bottom{margin-top:50px;padding-top:25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;font-size:0.875rem;color:var(--muted)}.programs-bottom a{color:var(--ink);white-space:nowrap}.programs-bottom a span{margin-left:15px;font-size:1.125rem}.programs-bottom a:hover{color:var(--gold)}
.about{background:#eeefe8}.about-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(50px,8vw,120px);align-items:center}.portrait-wrap{position:relative;max-width:500px;align-self:stretch;min-height:540px;background:#d6daca}.portrait{height:100%;width:100%;object-fit:cover;object-position:center 30%;filter:saturate(.68)}.portrait-caption{position:absolute;left:0;bottom:0;right:0;padding:25px 28px;background:linear-gradient(transparent,#172319d6);padding-top:90px;display:flex;flex-direction:column;color:white;gap:3px}.portrait-caption span:first-child{font-size:0.8125rem;letter-spacing:.14em}.portrait-caption span:last-child{font-size:0.8125rem;color:#e8eade}.about .section-label{margin-bottom:25px}.about h2{font-size:clamp(2.625rem,4.3vw,3.875rem)}.about-lead{font-size:1.188rem;line-height:1.6;color:var(--ink);margin:28px 0 18px}.about-copy>p:not(.about-lead){font-size:0.9375rem;line-height:1.9;color:var(--muted);margin-top:16px}.qualification{margin-top:31px;padding-top:24px;border-top:1px solid #cbd0c1;display:flex;align-items:center;gap:15px}.qualification-mark{border:1px solid #a7b09b;border-radius:50%;width:43px;height:43px;display:grid;place-items:center;font:italic 26px var(--serif);color:var(--gold)}.qualification div{display:flex;flex-direction:column;gap:2px}.qualification strong{font-weight:500;font-size:0.875rem}.qualification div>span{font-size:0.75rem;letter-spacing:.03em;color:var(--muted)}
.contact{background:var(--ink);color:var(--paper);text-align:center;position:relative;padding-block:105px 91px}.contact .eyebrow{color:#d0c09e;margin-bottom:25px}.contact h2{font-size:clamp(4.25rem,7vw,6.375rem);line-height:.98}.contact h2 em{color:#d7c8ac}.contact-inner>p:not(.eyebrow){margin:27px 0;color:#ced5cb;font-size:1rem;line-height:1.85}.contact-email{font-family:var(--serif);font-size:clamp(1.75rem,4vw,2.75rem);line-height:1.35;display:inline-flex;gap:38px;align-items:center;border-bottom:1px solid #aab4a3;padding-bottom:12px;transition:color .2s}.contact-email:hover{color:#dbc39a}.contact-email span{font-family:var(--sans);font-size:1.875rem}.contact-social{display:flex;gap:25px;justify-content:center;align-items:center;margin-top:42px;font-size:0.8125rem;color:#d8ded1}.contact-social>span{color:#85927e}.contact-social a{padding:6px 0}.contact-social a span{margin-left:8px}.contact-social a:hover{color:white}
.site-footer{padding-block:42px 27px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:32px;border-bottom:1px solid var(--line)}.footer-brand{font-size:1.75rem}.footer-top>p{font-size:0.75rem;letter-spacing:.045em;color:var(--muted)}.back-top{font-size:0.75rem;display:flex;gap:23px;align-items:center;padding:10px 0}.back-top span{font-size:1.25rem}.footer-bottom{padding-top:23px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--muted);font-size:0.75rem;line-height:1.6}.footer-bottom>div{display:flex;gap:25px}.footer-bottom a:hover,.back-top:hover{color:var(--gold)}
@media(min-width:1500px){.hero-content{padding-block:73px 62px}.hero-visual{height:500px;max-width:1600px;margin-inline:auto}.hero-copy{font-size:1.125rem}}
@media(max-width:1160px){.main-nav{gap:22px}.nav-wrap{min-height:90px}.main-nav>a{font-size:0.8125rem}.wordmark{font-size:1.812rem}.main-nav>.nav-contact{padding:10px 15px;margin-left:0;gap:12px}.pillars{gap:28px}.pillars article{display:block}.pillars p{margin-top:14px}.philosophy-main{gap:40px}.services-layout{grid-template-columns:1fr 1.35fr;gap:45px}.program-grid{gap:22px}.program-card>.text-link{font-size:0.8125rem;gap:12px}.section-pad{padding-block:90px}.about-layout{gap:50px}.about h2{font-size:3.125rem}.portrait-wrap{min-height:530px}.footer-bottom{font-size:0.75rem}}
@media(max-width:900px){.nav-wrap{min-height:82px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;padding:8px;border:1px solid #c1c7b9;background:transparent;color:var(--ink);cursor:pointer}.menu-toggle span{height:1px;width:20px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:16px var(--gutter) 28px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #273c340a;gap:0;max-height:calc(100dvh - 82px);overflow:auto}.main-nav.is-open{display:flex;flex-direction:column;align-items:stretch}.main-nav>a{font-size:1rem;padding:15px 0;border-bottom:1px solid var(--line)}.main-nav>a:after{display:none}.main-nav>.nav-contact{border:0;padding:18px 0 4px;justify-content:space-between}.hero-content{padding-block:55px 43px}.hero-visual{height:365px;margin-inline:18px}.hero-visual figcaption{left:30px;bottom:30px}.scroll-cue{right:30px;bottom:30px}.philosophy-main{grid-template-columns:1fr;gap:27px}.philosophy-copy{max-width:620px}.philosophy h2{font-size:3.25rem}.pillars{margin-top:40px}.services-layout{grid-template-columns:1fr;gap:40px}.services-intro>p{max-width:560px}.services-intro>.text-link{margin-top:17px}.section-heading-row>p{max-width:280px;font-size:0.9375rem}.program-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.program-image{aspect-ratio:3/4}.program-title-row h3{font-size:1.875rem}.program-card>p{font-size:0.875rem}.program-card>.text-link{font-size:0.75rem;gap:6px;align-items:flex-start}.image-tag{left:12px;bottom:12px;font-size:0.75rem;padding:8px}.programs-bottom{font-size:0.8125rem}.about-layout{grid-template-columns:.9fr 1.1fr;gap:32px;align-items:start}.portrait-wrap{min-height:580px}.about h2{font-size:2.688rem}.about-copy>p:not(.about-lead){font-size:0.875rem}.about-lead{font-size:1.062rem}.about .section-label{gap:14px}.about .eyebrow{font-size:0.75rem}.footer-top{flex-wrap:wrap}.footer-bottom{flex-wrap:wrap;gap:14px 24px}.footer-bottom>span:last-child{width:100%}}
@media(max-width:600px){:root{--gutter:24px}html{scroll-padding-top:100px}.section-pad{padding-block:65px}.nav-wrap{min-height:78px}.wordmark{font-size:1.75rem}.brand-line{font-size:0.75rem;letter-spacing:.15em;margin-top:8px}.hero-content{padding-block:43px 36px}.hero .eyebrow{font-size:0.75rem;letter-spacing:.17em;margin-bottom:23px}h1{font-size:4.5rem;line-height:.97;letter-spacing:-.035em}h1 em{padding-bottom:6px}.hero-copy{font-size:0.875rem;line-height:1.85;margin:21px auto 24px;max-width:315px}.desktop-break{display:none}.button{font-size:0.8125rem;min-height:52px;padding:14px 20px;gap:24px}.hero-visual{margin-inline:12px;height:300px}.hero-visual img{object-position:50% 55%}.hero-visual figcaption{left:21px;bottom:24px;right:70px;gap:8px}.hero-visual figcaption>span:first-child{font-size:0.75rem;line-height:1.6;letter-spacing:.11em}.image-note{font-size:1.5rem;line-height:1.1}.scroll-cue{height:38px;width:38px;right:20px;bottom:24px;font-size:1.125rem}.section-label{gap:16px;margin-bottom:27px}.eyebrow{font-size:0.75rem;letter-spacing:.16em}.section-number{font-size:0.75rem}h2,.philosophy h2,.about h2{font-size:2.688rem;line-height:1.06}.philosophy-main{gap:24px}.philosophy-copy{font-size:0.9375rem;line-height:1.85}.pillars{grid-template-columns:1fr;gap:0;margin-top:33px;padding-top:0}.pillars article{display:grid;grid-template-columns:1fr 1.4fr;align-items:center;gap:20px;padding-block:21px;border-bottom:1px solid var(--line)}.pillar-word{font-size:1.938rem}.pillars p{font-size:0.8125rem;line-height:1.7;margin-top:0}.services-layout{gap:31px}.services-intro>p{font-size:0.9375rem;margin-top:24px}.text-link{font-size:0.8125rem}.service summary{font-size:1.062rem;grid-template-columns:22px 1fr 15px;gap:12px;padding-block:23px}.service-index{font-size:0.75rem}.service-content{padding-left:34px;padding-right:10px;padding-bottom:23px}.service-content>p{font-size:0.9375rem}.service-format{font-size:0.75rem;letter-spacing:.035em}.section-heading-row{display:block;margin-bottom:31px}.section-heading-row>p{margin-top:24px;font-size:0.9375rem;max-width:none}.program-grid{grid-template-columns:1fr;gap:43px}.program-image{aspect-ratio:1.1}.program-card:nth-child(2) .program-image{aspect-ratio:1.1}.program-card:nth-child(2) .program-image img{object-position:50% 39%}.image-tag{left:18px;bottom:18px;font-size:0.75rem;padding:9px 12px}.program-title-row{margin-top:20px}.program-title-row h3{font-size:2.25rem}.program-index{font-size:0.75rem}.program-card>p{font-size:0.9375rem;margin:13px 0 12px}.program-card>.text-link{font-size:0.875rem;gap:20px;align-items:center}.programs-bottom{margin-top:36px;padding-top:23px;display:block;font-size:0.875rem}.programs-bottom a{display:inline-block;margin-top:10px}.about-layout{grid-template-columns:1fr;gap:39px}.portrait-wrap{max-width:none;min-height:0;aspect-ratio:4/4.5;align-self:auto}.portrait{object-position:center 28%}.portrait-caption{padding:80px 22px 22px}.portrait-caption span:first-child{font-size:0.75rem}.about .eyebrow{font-size:0.75rem}.about-copy>p:not(.about-lead){font-size:0.9375rem}.about-lead{font-size:1.125rem;margin-top:24px}.qualification{margin-top:27px}.qualification strong{font-size:0.875rem}.qualification div>span{font-size:0.75rem}.contact{padding-block:68px 59px}.contact h2{font-size:4.375rem}.contact .eyebrow{font-size:0.75rem;margin-bottom:24px}.contact-inner>p:not(.eyebrow){font-size:0.875rem;line-height:1.85;margin:23px auto 26px;max-width:310px}.contact-inner>p br{display:none}.contact-email{font-size:1.875rem;gap:18px;padding-bottom:10px;letter-spacing:-.02em}.contact-email span{font-size:1.438rem}.contact-social{margin-top:30px;font-size:0.75rem;gap:22px}.site-footer{padding-block:32px 25px}.footer-top{gap:14px;padding-bottom:25px}.footer-brand{font-size:1.688rem}.footer-top>p{order:3;width:100%;font-size:0.75rem}.back-top{font-size:0.75rem;gap:12px;margin-left:auto}.footer-bottom{font-size:0.75rem;padding-top:20px;gap:17px}.footer-bottom>div{margin-left:auto;gap:18px}}
@media(max-width:360px){h1{font-size:3.875rem}h2,.philosophy h2,.about h2{font-size:2.438rem}.contact h2{font-size:3.75rem}.contact-email{font-size:1.625rem;gap:12px}.brand-line{font-size:0.75rem}.wordmark{font-size:1.562rem}.service summary{font-size:1rem}.pillars article{grid-template-columns:1fr 1.2fr;gap:12px}.pillar-word{font-size:1.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(prefers-contrast:more){:root{--muted:#40483d;--gold:#72542c;--line:#979e8e}.contact h2 em{color:#e2d1b0}.contact-inner>p:not(.eyebrow){color:#fff}}

/* Readability and text enlargement. */
.contact-email{max-width:100%;overflow-wrap:anywhere}.contact-email>span{flex-shrink:0}.brand{min-width:0}
.hero-copy,.philosophy-copy,.services-intro>p,.service-content>p,.section-heading-row>p,.program-card>p,.about-copy>p:not(.about-lead),.contact-inner>p:not(.eyebrow){font-size:1rem}
.main-nav>a,.button,.text-link,.program-card>.text-link,.programs-bottom,.contact-social,.back-top,.footer-bottom a{font-size:.875rem}
.brand-line{font-size:.75rem;letter-spacing:.055em}
.pillars p{font-size:.875rem}
.image-tag,.eyebrow,.section-number,.hero .eyebrow,.contact .eyebrow,.about .eyebrow,.hero-visual figcaption>span:first-child{font-size:.75rem}
.hero-visual figcaption{max-width:calc(100% - 140px)}
.about-copy,.services-intro,.service-list,.philosophy-copy,.philosophy-main>h2{min-width:0}
@media(max-width:1160px){.pillars article{display:block}.pillars p{margin-top:14px}}
@media(max-width:900px){.brand-line{display:none}.main-nav>a{font-size:1rem}.program-grid{grid-template-columns:1fr}.program-card{display:grid;grid-template-columns:1fr 1.2fr;column-gap:26px;align-content:center}.program-image{grid-row:1/4;aspect-ratio:4/4.8}.program-title-row{margin-top:6px}.program-card>p{flex:initial}.program-card>.text-link{justify-self:start}.programs-bottom{align-items:center}.about-layout{grid-template-columns:1fr 1.2fr}.about .section-label{flex-wrap:wrap;gap:12px}}
@media(max-width:600px){.program-card{display:flex}.program-image{aspect-ratio:1.1}.program-title-row{margin-top:20px}.pillars article{display:grid}.pillars p{margin:0}.hero-copy{max-width:345px}.hero-visual figcaption>span:first-child{font-size:.75rem;letter-spacing:.06em}.hero-visual figcaption{right:75px;max-width:none}.image-note{font-size:1.5rem}.about-layout{grid-template-columns:1fr}.footer-top{gap:14px}.back-top{font-size:.75rem}.footer-top>p{font-size:.75rem}.footer-bottom{align-items:flex-start}.footer-bottom>div{flex-wrap:wrap;gap:14px}.contact-email{gap:16px}}
