@font-face{font-family:Karla;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/karla-400.woff2) format("woff2")}@font-face{font-family:Karla;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/karla-500.woff2) format("woff2")}@font-face{font-family:Newsreader;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/newsreader-300.woff2) format("woff2")}@font-face{font-family:Newsreader;font-style:italic;font-weight:300;font-display:swap;src:url(/fonts/newsreader-300-italic.woff2) format("woff2")}:root{--limestone: #f7f4ed;--limestone-2: #efeadf;--sand: #e7dfd0;--ink: #1f2a24;--body: #4c574f;--muted: #6e786f;--sage: #4a6b56;--sage-dark: #35503f;--rule: #d9d2c3;--serif: "Newsreader", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--sans: "Karla", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--container: 1280px;--gutter: clamp(20px, 5vw, 64px);--edge: max(var(--gutter), (100% - var(--container)) / 2);--r-lg: 26px;--r-md: 20px;--r-sm: 14px;--section: clamp(64px, 9vw, 112px)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}body{margin:0;background:var(--limestone);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:var(--sage);text-decoration:none}a:hover{color:var(--sage-dark)}:focus-visible{outline:2px solid var(--sage);outline-offset:3px;border-radius:4px}h1,h2,h3{font-family:var(--serif);font-weight:300;letter-spacing:-.018em;margin:0;text-wrap:pretty}.container{width:min(100% - (2 * var(--gutter)),var(--container));margin-inline:auto}[id]{scroll-margin-top:96px}.section{padding-block:var(--section)}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:var(--limestone);padding:12px 20px;border-radius:0 0 var(--r-sm) 0}.skip-link:focus{left:0;color:var(--limestone)}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:500;margin:0}.lede{font-size:clamp(16px,1.25vw,17.5px);line-height:1.7;color:var(--body);margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--sans);font-size:15px;font-weight:500;padding:15px 28px;border-radius:999px;border:1px solid transparent;min-height:48px;transition:background-color .18s ease,color .18s ease,border-color .18s ease;white-space:nowrap}.btn--primary{background:var(--sage);color:var(--limestone)}.btn--primary:hover{background:var(--sage-dark);color:var(--limestone)}.btn--ink{background:var(--ink);color:var(--limestone)}.btn--ink:hover{background:#16201b;color:var(--limestone)}.btn--ghost{border-color:var(--rule);color:var(--ink);background:transparent}.btn--ghost:hover{border-color:var(--ink);color:var(--ink);background:#1f2a240a}.header{position:sticky;top:0;z-index:50;background:#f7f4ede0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .2s ease}.header--scrolled{border-bottom-color:var(--rule)}.header__inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:16px}.logo{display:inline-flex;align-items:center;gap:12px;color:var(--ink)}.logo:hover{color:var(--ink)}.logo>span{display:flex;flex-direction:column}.logo__name{font-family:var(--serif);font-size:19px;font-weight:300;line-height:1;letter-spacing:-.01em}.logo__sub{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-top:3px}.nav{display:none;align-items:center;gap:clamp(18px,2.2vw,34px)}.nav a:not(.btn){font-size:14.5px;color:var(--ink)}.nav a:not(.btn):hover{color:var(--sage)}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--rule);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer}@media (min-width: 940px){.nav{display:flex}.nav-toggle{display:none}}.nav-panel{border-top:1px solid var(--rule);background:var(--limestone)}.nav-panel ul{list-style:none;margin:0;padding:8px var(--gutter) 20px;display:flex;flex-direction:column}.nav-panel a:not(.btn){display:block;padding:15px 0;font-size:17px;color:var(--ink);border-bottom:1px solid var(--rule)}.nav-panel .btn{margin-top:18px;width:100%}.hero{padding-top:clamp(36px,5vw,64px);padding-bottom:var(--section)}.hero__copy{padding-inline:var(--gutter);display:flex;flex-direction:column;gap:26px}.hero h1{font-size:clamp(38px,6.4vw,66px);line-height:1.04}.hero h1 em{font-style:italic;color:var(--sage)}.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;padding-top:4px}.hero__call{display:flex;flex-direction:column;gap:2px}.hero__call .num{font-family:var(--serif);font-size:21px;color:var(--ink)}.hero__call .num:hover{color:var(--sage)}.hero__media{position:relative;margin-top:40px}.hero__media img{width:100%;height:clamp(320px,52vw,560px);object-fit:cover}.hero__caption{background:var(--sand);border-radius:var(--r-md);padding:18px 22px;margin:16px var(--gutter) 0}.hero__caption p{font-family:var(--serif);font-size:17px;line-height:1.35;margin:8px 0 0}.hero__caption em{font-style:italic}@media (min-width: 980px){.hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(32px,4vw,56px)}.hero__copy{padding-inline:var(--edge) 0;max-width:640px}.hero__media{margin-top:0}.hero__media img{border-radius:var(--r-lg) 0 0 var(--r-lg)}.hero__caption{position:absolute;left:28px;bottom:28px;margin:0;max-width:250px;box-shadow:0 18px 40px #1f2a242e}}.values{display:grid;gap:0;border-block:1px solid var(--rule)}.value{display:flex;gap:16px;padding-block:30px}.value+.value{border-top:1px solid var(--rule)}.value svg{flex-shrink:0;margin-top:3px}.value h3{font-size:19px;margin-bottom:6px}.value p{font-size:14.5px;line-height:1.6;color:var(--muted);margin:0}@media (min-width: 880px){.values{grid-template-columns:repeat(3,minmax(0,1fr))}.value{padding:34px 40px}.value+.value{border-top:0;border-left:1px solid var(--rule)}.value:first-child{padding-left:0}.value:last-child{padding-right:0}}.section__head{display:flex;flex-direction:column;gap:14px;margin-bottom:clamp(32px,4vw,52px);max-width:58ch}.section__head h2{font-size:clamp(30px,4vw,44px);line-height:1.1}.services{display:grid;gap:28px}@media (min-width: 820px){.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}.service{background:var(--limestone-2);border-radius:24px;overflow:hidden;display:flex;flex-direction:column}.service img{width:100%;height:clamp(190px,22vw,240px);object-fit:cover}.service__body{padding:30px clamp(22px,3vw,34px) 34px;display:flex;flex-direction:column;gap:18px}.service h3{font-size:clamp(27px,3vw,34px);line-height:1.1}.service p{font-size:15px;line-height:1.7;color:var(--body);margin:0}.service ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 0;font-size:13.5px;color:var(--muted)}.service li{display:inline-flex;align-items:center}.service li:not(:last-child):after{content:"·";padding:0 9px;color:var(--rule)}.process{display:grid;gap:0;counter-reset:step}.step{display:grid;grid-template-columns:46px 1fr;gap:18px;padding-block:26px;border-top:1px solid var(--rule)}.step:last-child{border-bottom:1px solid var(--rule)}.step__n{font-family:var(--serif);font-size:20px;color:var(--sage);line-height:1.3}.step h3{font-size:20px;margin-bottom:6px}.step p{font-size:14.5px;line-height:1.65;color:var(--muted);margin:0;max-width:62ch}@media (min-width: 880px){.process{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px}.step:nth-child(2){border-top:1px solid var(--rule)}.step:nth-last-child(2){border-bottom:1px solid var(--rule)}}.gallery{display:grid;gap:20px;grid-template-columns:1fr}@media (min-width: 620px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 960px){.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}.gallery figure{margin:0}.gallery img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--r-md)}.gallery figcaption{font-size:13.5px;color:var(--muted);padding-top:12px}.band{border-radius:clamp(var(--r-md),2.5vw,28px);overflow:hidden}.band img{width:100%;height:clamp(240px,30vw,400px);object-fit:cover}.areas{text-align:center}.areas__statement{font-family:var(--serif);font-weight:300;font-size:clamp(23px,3vw,30px);line-height:1.5;letter-spacing:-.01em;max-width:34ch;margin:20px auto 0}.areas__statement span{color:var(--sage)}.areas__list{list-style:none;margin:clamp(32px,4vw,48px) auto 0;padding:0;max-width:900px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 0;font-size:13.5px;color:var(--muted)}.areas__list li{display:inline-flex;align-items:center}.areas__list li:not(:last-child):after{content:"·";padding:0 10px;color:var(--rule)}.contact{background:var(--limestone-2);border-radius:clamp(var(--r-md),2.5vw,28px);padding:clamp(32px,5vw,64px)}.contact__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:40px}@media (min-width: 860px){.contact__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}}.contact h2{font-size:clamp(28px,3.6vw,40px);line-height:1.12;margin-bottom:16px}.contact__details{display:flex;flex-direction:column;gap:0}.contact__row{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;padding-block:16px;border-top:1px solid var(--rule)}@media (min-width: 520px){.contact__row{grid-template-columns:104px minmax(0,1fr);gap:16px;align-items:baseline}}.contact__row:last-child{border-bottom:1px solid var(--rule)}.contact__row dd{margin:0;font-size:15.5px;color:var(--ink);overflow-wrap:anywhere}.contact__row dd a{color:var(--ink)}.contact__row dd a:hover{color:var(--sage)}.contact__row .big{font-family:var(--serif);font-size:24px}.footer{padding-bottom:clamp(28px,4vw,44px)}.footer__inner{background:var(--sand);border-radius:clamp(var(--r-md),2.5vw,28px);padding:clamp(28px,4vw,40px) clamp(24px,3.5vw,44px);display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px 32px;align-items:center}.footer p{margin:0;font-size:12.5px;line-height:1.75;color:#5c665e}.footer a{color:#5c665e;text-decoration:underline;text-underline-offset:2px}.footer a:hover{color:var(--sage-dark)}.tbc{border-bottom:1px dotted currentColor}
