:root{--paper: #f6f3ed;--ink: #362632;--muted: #6d6066;--rose: #815d67;--line: #d5cbc8;--wash: #eee8e3;--white: #fffdf9;font-family:Heebo,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;line-height:1.7;font-weight:400;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:Frank Ruhl Libre,Georgia,serif;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.3rem,5.8vw,5.5rem)}h2{font-size:clamp(2.65rem,4.4vw,4rem)}em{font-style:normal;color:var(--rose)}p{max-width:65ch}button,summary{cursor:pointer}button{color:inherit}a,button,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--rose);outline-offset:6px;border-radius:1px}[tabindex="-1"]:focus:not(:focus-visible){outline:none}section,details{scroll-margin-top:7rem}.shell{width:min(1240px,calc(100% - 112px));margin-inline:auto}.section-space{padding-block:96px}.eyebrow{font-size:.8rem;font-weight:500;letter-spacing:.035em;margin-bottom:24px}.lead{font-size:1.3rem;line-height:1.8}.skip-link{position:fixed;inset-block-start:12px;inset-inline-start:16px;transform:translateY(-180%);padding:12px 24px;background:var(--ink);color:var(--white);z-index:100}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:23px;flex-shrink:0}.brand-mark{font-family:Georgia,serif;font-size:2.7rem;letter-spacing:-.07em;line-height:1.15}.brand-mark span{color:var(--rose)}.brand-description{font-size:.7rem;line-height:1.6;border-inline-start:1px solid var(--line);padding-inline-start:22px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:.8rem}.site-header nav a{min-height:44px;display:inline-flex;align-items:center;gap:24px}.site-header nav a:hover,.quiet-link:hover,.text-link:hover,.back-top:hover{color:var(--rose)}.nav-contact{border-bottom:1px solid var(--ink)}.nav-contact span{font-size:1.25rem}.menu-toggle{display:none}.hero{position:relative;display:grid;grid-template-columns:1.08fr 1fr;column-gap:8%;padding-top:68px}.hero-copy{padding-top:23px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.small-line{width:28px;height:1px;background:var(--rose)}.hero-description{font-size:1.05rem;line-height:1.9;margin-block:28px 30px;color:var(--muted)}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:12px 24px;font-size:.9rem;transition:background-color .18s,color .18s}.button span{font-size:1.4rem;line-height:1}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:#593e50}.quiet-link{display:flex;align-items:center;gap:16px;width:fit-content;min-height:44px;font-size:.78rem;margin-top:14px}.hero-portrait{position:relative;align-self:start;padding-inline-start:24px}.portrait-frame{margin-top:0;background:#e1d6ce;overflow:hidden;aspect-ratio:4/5}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:51% 45%}.hero-portrait figcaption{display:flex;justify-content:space-between;gap:12px;font-size:.7rem;padding-block:17px;border-bottom:1px solid var(--line)}.hero-portrait figcaption span:last-child{color:var(--muted)}.portrait-index{position:absolute;inset-inline-start:0;top:0;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.55rem;letter-spacing:.13em;color:var(--muted)}.hero-footnote{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-block:20px;margin-top:52px;font-size:.7rem;color:var(--muted)}.approach{margin-top:36px;background:var(--wash)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.approach-copy{padding-top:40px}.approach-copy>p+p{margin-top:20px;font-size:.95rem;color:var(--muted)}.situations{display:grid;grid-template-columns:repeat(3,1fr);margin-top:64px}.situations article{padding-inline:30px;border-inline-start:1px solid var(--line)}.situations article:first-child{padding-inline-start:0;border-inline-start:0}.situations article:last-child{padding-inline-end:0}.item-number{display:block;font-family:Georgia,serif;font-size:.85rem;color:var(--rose);margin-bottom:22px}.situations h3{font-size:1.08rem;font-weight:500;line-height:1.6;margin-bottom:12px}.situations p{font-size:.9rem;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:50px}.section-heading>p{font-size:.9rem;color:var(--muted);padding-bottom:6px}.service-list{border-top:1px solid var(--ink)}.service-list details{border-bottom:1px solid var(--line)}.service-list summary{list-style:none;display:grid;grid-template-columns:40px 1fr 1fr 32px;align-items:center;gap:22px;min-height:104px;padding-block:24px}.service-list summary::-webkit-details-marker{display:none}.service-number{font-size:.8rem;color:var(--rose);font-family:Georgia,serif}.service-name{font-family:Frank Ruhl Libre,Georgia,serif;font-size:2rem;letter-spacing:-.03em}.service-subtitle{font-size:.85rem;color:var(--muted)}.expand-icon{display:block;position:relative;width:30px;height:30px}.expand-icon:before,.expand-icon:after{content:"";position:absolute;top:14px;left:6px;width:18px;height:1px;background:currentColor}.expand-icon:after{transform:rotate(90deg)}details[open] .expand-icon:after{transform:rotate(0)}.service-list summary:hover .service-name{color:var(--rose)}.service-content{padding:0 62px 38px 54px;display:grid;grid-template-columns:1fr 1fr;gap:70px;font-size:.95rem;color:var(--muted)}.service-content h3{font-size:.9rem;color:var(--ink);font-weight:500}.service-content ul{padding-inline-start:20px;margin-block:12px 18px}.service-content li{padding-inline-start:4px;margin-block:5px}.text-link{font-size:.85rem;display:inline-flex;align-items:center;gap:22px;min-height:44px;color:var(--ink);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.workshop-note{display:grid;grid-template-columns:1.1fr 1fr auto;align-items:center;gap:40px;margin-top:40px;padding:32px;background:var(--wash)}.workshop-note .eyebrow{margin-bottom:7px;font-size:.7rem}.workshop-note h3{font-family:Frank Ruhl Libre,Georgia,serif;font-size:1.55rem;line-height:1.4}.workshop-note>p{font-size:.85rem;color:var(--muted)}.workshop-note .text-link{white-space:nowrap}.about{border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12%}.about-label{display:flex;flex-direction:column;align-items:start}.about-monogram{font-family:Georgia,serif;font-size:clamp(5rem,9vw,9rem);line-height:1.2;letter-spacing:-.08em;color:var(--rose);margin-top:10px}.about-label>p:last-child{font-size:.85rem;margin-top:22px;color:var(--muted)}.about-copy h2{margin-bottom:28px}.about-copy .lead{margin-bottom:18px}.about-copy>p:not(.lead){font-size:.95rem;color:var(--muted);margin-bottom:16px}.about-copy .text-link{margin-top:10px}.contact{background:var(--ink);color:var(--paper)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{font-size:clamp(3.5rem,5.8vw,5.3rem)}.contact em{color:#d9b8be}.contact-copy{padding-top:44px}.contact-copy>p:first-child{font-size:1.05rem;line-height:1.9;margin-bottom:28px}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#e4cbd0}.contact a:focus-visible{outline-color:#f6f3ed}.email-link{display:block;width:fit-content;margin-top:22px;text-decoration:underline;text-underline-offset:5px;font-size:.95rem;overflow-wrap:anywhere;min-height:44px}.contact-note{font-size:.75rem;color:#d0bec9}.site-footer{padding-block:30px}.footer-top{display:flex;align-items:center;gap:28px}.footer-top .brand-mark{font-size:2rem}.footer-top p{font-size:.7rem;color:var(--muted)}.back-top{margin-inline-start:auto;font-size:.75rem;min-height:44px;display:flex;align-items:center;gap:18px}.accessibility-note{margin-top:24px;border-top:1px solid var(--line);padding-top:12px;font-size:.75rem;color:var(--muted)}.accessibility-note summary{min-height:44px;padding-block:10px;width:fit-content}.accessibility-note>div{padding-block:6px 12px}.accessibility-note p+p{margin-top:8px}.accessibility-note a{text-decoration:underline;overflow-wrap:anywhere}@media (min-width:1500px){.hero{padding-top:90px}.hero-copy{padding-top:30px}.hero-footnote{margin-top:66px}}@media (max-width:1100px){.shell{width:calc(100% - 64px)}.header-inner{min-height:88px}.brand-description{display:none}.hero{column-gap:6%;padding-top:48px}.hero-copy{padding-top:10px}h1{font-size:clamp(3.1rem,6.2vw,4.5rem)}.hero-description{font-size:.95rem}.hero-portrait figcaption{flex-direction:column;gap:0}.portrait-frame{aspect-ratio:3/4}.section-space{padding-block:76px}.workshop-note{grid-template-columns:1fr 1fr}.workshop-note .text-link{grid-column:2}.service-content{gap:38px}.about-grid{gap:8%}}@media (max-width:760px){html{scroll-padding-top:6rem}.shell{width:calc(100% - 40px)}section,details{scroll-margin-top:6rem}.header-inner{min-height:76px;gap:16px;flex-wrap:wrap}.brand-mark{font-size:2.25rem}.brand-description{display:block;font-size:.6rem;padding-inline-start:14px}.brand{gap:14px}.site-header nav{width:100%;gap:8px 24px;flex-wrap:wrap;padding-bottom:16px;font-size:.85rem}.site-header nav a{min-height:48px}.js .menu-toggle{display:flex;align-items:center;justify-content:center;gap:10px;border:0;background:transparent;padding:10px 0 10px 10px;min-width:48px;min-height:48px;font-size:.8rem}.menu-icon{width:20px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.menu-toggle[aria-expanded=true] .menu-icon{height:1px;transform:rotate(-45deg);border-bottom:0}.menu-toggle[aria-expanded=true] .menu-icon:after{content:"";display:block;border-top:1px solid currentColor;transform:rotate(90deg);margin-top:-1px}.js .site-header nav{display:none}.js .site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-block:0 16px}.js .site-header nav a{padding-inline:6px;border-bottom:1px solid var(--line);justify-content:space-between}.hero{padding-top:36px;column-gap:5%;grid-template-columns:1.1fr 1fr}.hero-copy{padding-top:0}.eyebrow{font-size:.73rem;margin-bottom:20px}h1{font-size:clamp(2.8rem,6vw,3.6rem)}.hero-description{font-size:.9rem;margin-block:22px}.hero-portrait{padding-inline-start:18px}.portrait-index{font-size:.45rem}.portrait-frame{aspect-ratio:3/5}.hero-portrait figcaption{font-size:.65rem}.button{gap:28px;padding-inline:20px}.quiet-link{font-size:.7rem;gap:8px}.hero-footnote{margin-top:36px}.section-space{padding-block:60px}.approach{margin-top:12px}.approach-grid{gap:7%}.approach-copy{padding-top:0}.lead{font-size:1.1rem}h2{font-size:2.75rem}.situations{margin-top:40px}.situations article{padding-inline:18px}.situations h3{font-size:.95rem}.situations p{font-size:.85rem}.section-heading{gap:24px}.section-heading>p{max-width:26ch;font-size:.8rem}.service-list summary{grid-template-columns:28px 1fr 28px;gap:14px;min-height:90px}.service-name{font-size:1.65rem}.service-subtitle{display:none}.service-content{padding-inline:42px 0;gap:28px;font-size:.9rem}.workshop-note{padding:24px;gap:20px}.about-grid{grid-template-columns:.7fr 1.3fr}.contact-grid{gap:6%}.contact-copy{padding-top:30px}.contact-copy>p:first-child{font-size:.95rem}.footer-top{gap:18px}}@media (max-width:540px){.brand-description{font-size:.55rem}.hero{grid-template-columns:1fr;gap:0;padding-top:32px}.hero-copy{padding-bottom:32px}h1{font-size:clamp(3rem,10.8vw,4.25rem);line-height:1.06}.hero-description{font-size:1rem;line-height:1.8;margin-block:24px}.desktop-break{display:none}.quiet-link{font-size:.78rem;margin-top:10px}.hero-portrait{width:100%;padding-inline-start:20px}.portrait-frame{aspect-ratio:1.12}.portrait-frame img{object-position:center 38%}.hero-portrait figcaption{flex-direction:row;flex-wrap:wrap;font-size:.65rem;padding-block:12px}.portrait-index{font-size:.48rem}.hero-footnote{margin-top:26px;font-size:.65rem;gap:12px}.section-space{padding-block:48px}.approach-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:26px}h2{font-size:2.8rem}.approach-copy .lead{font-size:1.15rem}.situations{grid-template-columns:1fr;margin-top:32px}.situations article,.situations article:first-child{border-inline-start:0;border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:28px 1fr;gap:8px 14px}.situations article:last-child{padding-bottom:0}.item-number{margin:3px 0 0;grid-row:1/3}.situations h3{font-size:1.05rem;margin:0}.situations p{grid-column:2;font-size:.9rem}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px;max-width:none;font-size:.9rem}.service-list summary{min-height:88px;gap:12px;grid-template-columns:24px 1fr 28px}.service-name{font-size:1.7rem}.service-content{grid-template-columns:1fr;gap:20px;padding:0 36px 28px 0}.text-link{line-height:1.8;gap:16px}.workshop-note{grid-template-columns:1fr;margin-top:28px;gap:16px;padding:24px}.workshop-note .text-link{grid-column:auto}.workshop-note h3{font-size:1.65rem}.workshop-note>p{font-size:.9rem}.about-label{display:block}.about-monogram,.about-label>p:last-child{display:none}.about-label .eyebrow{margin-bottom:0}.about-copy h2{margin-bottom:24px}.contact h2{font-size:3.6rem}.contact-copy{padding-top:0}.contact-copy>p:first-child br{display:none}.contact-copy>p:first-child{font-size:1rem}.footer-top{flex-wrap:wrap;gap:18px}.footer-top p{flex-basis:calc(100% - 90px)}.back-top{margin-inline-start:0}.site-footer{padding-block:24px}.accessibility-note{margin-top:16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media (forced-colors:active){.button{border:1px solid ButtonText}.expand-icon:before,.expand-icon:after{background:ButtonText}}@media print{.site-header,.skip-link,.hero-footnote,.quiet-link,.site-footer{display:none}.shell{width:100%}.section-space{padding-block:24px}.hero{padding-top:0}.contact{background:white;color:#000}.contact em{color:#000}.button{border:1px solid}.portrait-index{display:none}}.portrait-index{inset-inline-start:auto;right:0;left:auto}@media (max-width:540px){h1{font-size:clamp(2.5rem,10.8vw,4.25rem)}.approach-copy>p+p,.situations p,.service-content,.service-content h3,.workshop-note>p,.about-copy>p:not(.lead){font-size:1rem}.brand-description{font-size:.65rem}.hero-portrait figcaption{font-size:.75rem}.contact-note,.footer-top p,.accessibility-note{font-size:.8rem}}@media (max-width:380px){.brand-description{display:none}}.portrait-index{inset:auto;top:0;right:0}:root{--motion-ease: cubic-bezier(.22, 1, .36, 1)}.reveal{opacity:0;transform:translate3d(var(--reveal-x, 0),26px,0)}.reveal.reveal{transition:opacity .8s var(--motion-ease),transform .9s var(--motion-ease),color .22s ease,background-color .22s ease,box-shadow .35s var(--motion-ease);transition-delay:var(--reveal-delay, 0ms)}.hero-copy>.reveal{--reveal-x: 18px}.hero-portrait.reveal{--reveal-x: -24px}.reveal.is-visible,.reveal:focus-within{opacity:1;transform:translateZ(0)}.reveal:focus-within{transition:none!important}.service-list details{overflow-anchor:none}.expand-icon:after{transition:transform .35s var(--motion-ease)}details[data-expanded=false] .expand-icon:after{transform:rotate(90deg)}details[data-expanded=true] .expand-icon:after{transform:rotate(0)}.service-name,.quiet-link,.text-link,.back-top,.site-header nav a{transition:color .22s ease}.button{transition:background-color .22s ease,color .22s ease,transform .35s var(--motion-ease),box-shadow .35s var(--motion-ease)}.button span,.text-link span,.quiet-link span,.nav-contact span,.back-top span{display:inline-block;transition:transform .35s var(--motion-ease)}.portrait-frame img{transition:transform 1.1s var(--motion-ease)}.menu-icon,.menu-icon:after{transition:transform .25s var(--motion-ease)}@media (hover: hover) and (pointer: fine){.button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #36263214}.button:hover span,.nav-contact:hover span{transform:translate(-3px,3px)}.text-link:hover span{transform:translate(-5px)}.quiet-link:hover span{transform:translateY(4px)}.back-top:hover span{transform:translateY(-4px)}.portrait-frame:hover img{transform:scale(1.035)}}@media (max-width: 760px){.reveal{transform:translate3d(0,18px,0)}.reveal.is-visible,.reveal:focus-within{transform:none}}@media (prefers-reduced-motion: reduce),print{.reveal{opacity:1;transform:none;transition:none!important}.button:hover,.button:hover span,.text-link:hover span,.quiet-link:hover span,.nav-contact:hover span,.back-top:hover span,.portrait-frame:hover img{transform:none}}@keyframes arrival-up{0%{opacity:0;transform:translate3d(0,32px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes arrival-header{0%{opacity:0;transform:translate3d(0,-14px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes arrival-portrait{0%{opacity:0;transform:translate3d(var(--portrait-arrival-x, -28px),22px,0) scale(.975)}to{opacity:1;transform:translateZ(0) scale(1)}}@media (prefers-reduced-motion: no-preference){.header-inner{animation:arrival-header .75s var(--motion-ease) 60ms backwards}.hero-portrait{animation:arrival-portrait 1.2s var(--motion-ease) .18s backwards}.hero-copy>*{animation:arrival-up .95s var(--motion-ease) var(--arrival-delay, .28s) backwards}.hero-copy>:nth-child(2){--arrival-delay: .4s}.hero-copy>:nth-child(3){--arrival-delay: .56s}.hero-copy>:nth-child(4){--arrival-delay: .7s}.hero-copy>:nth-child(5){--arrival-delay: .82s}.hero-footnote{animation:arrival-up .85s var(--motion-ease) .96s backwards}}.header-inner:focus-within,.hero-copy>:focus-within{animation:none}@media (max-width: 760px){.hero-portrait{--portrait-arrival-x: 0px}}@media print{.header-inner,.hero-portrait,.hero-copy>*,.hero-footnote{animation:none!important}}
