@layer astro.images{:where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down}[data-astro-image-pos=top]{object-position:top}[data-astro-image-pos=bottom]{object-position:bottom}[data-astro-image-pos=left]{object-position:left}[data-astro-image-pos=right]{object-position:right}[data-astro-image-pos=center]{object-position:center}[data-astro-image-pos=top-left]{object-position:top left}[data-astro-image-pos=top-right]{object-position:top right}[data-astro-image-pos=top-center]{object-position:top center}[data-astro-image-pos=bottom-left]{object-position:bottom left}[data-astro-image-pos=bottom-right]{object-position:bottom right}[data-astro-image-pos=bottom-center]{object-position:bottom center}[data-astro-image-pos=left-top]{object-position:left top}[data-astro-image-pos=left-bottom]{object-position:left bottom}[data-astro-image-pos=left-center]{object-position:left center}[data-astro-image-pos=right-top]{object-position:right top}[data-astro-image-pos=right-bottom]{object-position:right bottom}[data-astro-image-pos=right-center]{object-position:right center}[data-astro-image-pos=center-top]{object-position:center top}[data-astro-image-pos=center-bottom]{object-position:center bottom}[data-astro-image-pos=center-left]{object-position:center left}[data-astro-image-pos=center-right]{object-position:center right}}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-vietnamese-wght-normal.CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-ext-wght-normal.Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-wght-normal.ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-vietnamese-wght-italic.BicUS2cM.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-ext-wght-italic.BfTTTDIL.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-wght-italic.Py8at3oI.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/outfit-latin-ext-wght-normal.DdQaqQDo.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/outfit-latin-wght-normal.Bc-8i84L.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f3eee6;--bg-deep:#e7e1d4;--sage:#e4e6d4;--ink:#241e18;--muted:#3c332c;--soft:#4a4038;--olive:#243028;--olive-deep:#1f291c;--line:#241e1838;--clay:#7a3e2e;--danger:#7f1d1d;--paper:#f7f4ee;--serif:"Fraunces Variable", Fraunces, "Iowan Old Style", Palatino, Georgia, serif;--sans:"Outfit Variable", Outfit, "Segoe UI", sans-serif;--gutter:clamp(1.15rem, 4vw, 3.5rem);--measure:40rem;--header:6.5rem;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;font-weight:420;line-height:1.6}img{max-width:100%;height:auto}p,li,dd{text-wrap:pretty}h1,h2,h3{font-family:var(--serif);letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:460;line-height:1.08}h1{font-size:clamp(2.45rem,5.5vw,4.7rem)}h2{font-size:clamp(1.85rem,3.4vw,3rem)}h3{font-size:clamp(1.35rem,2vw,1.75rem)}p{margin:0}a{color:inherit}a:hover{color:var(--clay)}.skip-link{left:var(--gutter);background:var(--ink);color:var(--bg);z-index:20;min-height:44px;padding:.7rem 1rem;text-decoration:none;position:absolute;top:.75rem;transform:translateY(-150%)}.skip-link:focus{color:var(--bg);transform:none}:focus{outline:none}:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.band-dark :focus-visible,.button:focus-visible{outline-color:var(--bg)}.wrap{width:min(1120px, calc(100% - 2 * var(--gutter)));margin-inline:auto}.wrap-wide{width:min(1280px, calc(100% - 2 * var(--gutter)));margin-inline:auto}.site-header{border-bottom:1px solid var(--line)}.header-inner{flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;padding-block:.85rem .7rem;display:flex}.logo{margin-right:auto;line-height:0;display:block}.logo img{width:auto;height:5.4rem}.site-nav ul{flex-wrap:wrap;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.site-nav a,.button,.button-quiet{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.site-nav a{letter-spacing:.01em;padding:.45rem .8rem;font-size:.98rem;text-decoration:none}.site-nav a[aria-current=page]{text-underline-offset:.28em;text-decoration:underline}.button,.button-quiet{letter-spacing:.01em;border:1.5px solid var(--olive);cursor:pointer;color:var(--ink);background:0 0;border-radius:999px;padding:.55rem 1.15rem;font-family:inherit;font-size:.95rem;text-decoration:none}.button{background:var(--olive);color:var(--bg)}.button:hover{background:var(--olive-deep);color:var(--bg)}.button-quiet:hover{background:var(--bg-deep);color:var(--ink)}.button[aria-current=page]{outline:2px solid var(--clay);outline-offset:2px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 .85rem;font-size:.78rem;font-weight:520}.lede,.prose p,.note,.fine{max-width:var(--measure)}.lede{margin-top:1.15rem;font-size:1.18rem;line-height:1.5}.prose{gap:1rem;display:grid}.prose a{text-underline-offset:.18em}.section{padding-block:clamp(3.2rem,7vw,6.2rem)}.section-head{gap:.8rem;max-width:40rem;margin-bottom:clamp(1.6rem,3vw,2.4rem);display:grid}.rule{border:0;border-top:1px solid var(--line);margin:0}.hero{grid-template-columns:1.05fr .95fr;align-items:stretch;gap:clamp(1.25rem,3vw,2.5rem);padding-block:clamp(1.25rem,3vw,2.4rem) clamp(2rem,5vw,3.5rem);display:grid}.hero-panel{background:var(--sage);flex-direction:column;justify-content:flex-end;min-height:100%;padding:clamp(1.4rem,3vw,2.6rem);display:flex}.h1-break{display:block}.hero-actions,.actions{flex-wrap:wrap;gap:.7rem;margin-top:1.5rem;display:flex}.media{background:var(--bg-deep);min-height:16rem;position:relative;overflow:hidden}.media picture{display:block;position:absolute;inset:0}.media img{object-fit:cover;width:100%;height:100%}.ratio-portrait{aspect-ratio:4/5}.ratio-landscape{aspect-ratio:3/2}.ratio-wide{aspect-ratio:16/10}.service-feature{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(1.2rem,3vw,2.4rem);margin-bottom:.5rem;display:grid}.service-feature .kicker{font-family:var(--serif);color:var(--muted);font-style:italic;font-weight:440}.index-list{margin:1.5rem 0 0;padding:0;list-style:none}.index-list a{border-top:1px solid var(--line);grid-template-columns:3.2rem 1fr auto;grid-template-areas:"num title more""num summary more";align-items:center;gap:.2rem 1rem;min-height:44px;padding:1.15rem 0;text-decoration:none;display:grid}.index-list li:last-child a{border-bottom:1px solid var(--line)}.index-list .num{font-family:var(--serif);color:var(--muted);grid-area:num;font-style:italic}.index-list strong{font-family:var(--serif);letter-spacing:-.02em;grid-area:title;font-size:1.45rem;font-weight:500}.index-list span{color:var(--soft);grid-area:summary}.index-list em{letter-spacing:.04em;text-transform:uppercase;grid-area:more;font-size:.92rem;font-style:normal}.area-band{background:var(--bg-deep)}.area-grid,.split,.job-grid,.card-grid,.contact-grid,.about-grid{gap:clamp(1.4rem,3vw,2.6rem);display:grid}.area-grid,.split,.about-grid,.contact-grid{grid-template-columns:1fr 1fr;align-items:start}.job-grid{grid-template-columns:1.35fr .75fr;align-items:stretch}.job-card,.plain-card{flex-direction:column;gap:.85rem;min-width:0;display:flex}.job-card h3 a,.plain-card h3 a{text-decoration:none}.meta-line{color:var(--muted);font-size:.95rem}.spec-list,.nap,.crumbs ol,.related ul{margin:0;padding:0;list-style:none}.spec-list{gap:.35rem;margin-top:.4rem;display:grid}.spec-list li{border-top:1px solid var(--line);padding-top:.35rem}.pull{font-family:var(--serif);margin:0;font-size:clamp(1.55rem,2.8vw,2.3rem);font-style:italic;font-weight:440;line-height:1.28}.band-dark{background:var(--olive-deep);color:var(--bg);padding-block:clamp(3rem,7vw,5.2rem)}.band-dark a{color:var(--bg)}.band-dark .button{background:var(--bg);color:var(--olive-deep);border-color:var(--bg)}.band-dark .button:hover,.band-dark .button-quiet:hover{background:var(--sage);color:var(--ink)}.band-dark .button-quiet{border-color:var(--bg);color:var(--bg)}.band-inner{grid-template-columns:auto 1fr;align-items:center;gap:1.5rem 2.5rem;display:grid}.band-logo img{width:auto;height:7rem}.phone-link{font-family:var(--serif);letter-spacing:-.02em;align-items:center;min-height:44px;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:480;text-decoration:none;display:inline-flex}.site-footer{border-top:1px solid var(--line);padding-block:2.5rem 2rem}.footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:1.5rem 2rem;display:grid}.site-footer h2{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.7rem;font-size:.78rem;font-weight:560}.site-footer ul{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.site-footer a{text-underline-offset:.15em;align-items:center;min-height:44px;display:inline-flex}.slogan{font-family:var(--serif);margin-top:.8rem;font-size:1.25rem;font-style:italic}.legal{color:var(--muted);margin-top:1.8rem;font-size:.92rem}.crumbs{margin-bottom:1.2rem}.crumbs ol{flex-wrap:wrap;gap:.35rem .5rem;font-size:.92rem;display:flex}.crumbs li:not(:last-child):after{content:"/";color:var(--soft);margin-left:.5rem}.service-hero,.page-hero{grid-template-columns:.9fr 1.1fr;align-items:end;gap:clamp(1.2rem,3vw,2.5rem);margin-bottom:clamp(1.8rem,4vw,3rem);display:grid}.page-hero.stack,.service-hero.text-first{align-items:center}.statement{font-family:var(--serif);max-width:42rem;font-size:clamp(1.45rem,2.5vw,2rem);font-weight:450;line-height:1.35}.card-grid{grid-template-columns:1fr 1fr}.plain-card,.area-block{border-top:1px solid var(--line);padding-top:1.1rem}.gallery{gap:1.4rem;margin:1.5rem 0;display:grid}.gallery figcaption,.caption{color:var(--muted);margin-top:.55rem;font-size:.95rem}.note{color:var(--muted);margin-top:1rem;font-size:.95rem}.contact-grid{align-items:start}.nap{gap:.85rem;display:grid}.nap a{align-items:center;min-height:44px;display:inline-flex}form{gap:1rem;display:grid}label{gap:.35rem;font-weight:520;display:grid}input,select,textarea{font:inherit;color:var(--ink);background:var(--paper);border:1.5px solid var(--ink);border-radius:0;width:100%;min-height:48px;padding:.65rem .75rem}textarea{resize:vertical;min-height:9rem}.field-error{color:var(--danger);font-size:.95rem;font-weight:450}.form-status{background:var(--sage);padding:.8rem .9rem}.form-status[data-kind=error]{color:var(--danger);background:#f3e2dc}.hp{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.related{border-top:1px solid var(--line);margin-top:2.2rem;padding-top:1.2rem}.related ul{flex-wrap:wrap;gap:.5rem 1.2rem;margin-top:.7rem;display:flex}.related a{align-items:center;min-height:44px;display:inline-flex}@media (width<=860px){.index-list a{grid-template-columns:2.4rem 1fr;grid-template-areas:"num title""num summary"}.hero,.service-feature,.area-grid,.split,.job-grid,.about-grid,.contact-grid,.service-hero,.page-hero,.card-grid,.footer-grid,.band-inner{grid-template-columns:1fr}.logo img{height:4.4rem}.site-nav{flex-basis:100%}.index-list a{grid-template-columns:2.4rem 1fr}.index-list em{display:none}.hero-panel{order:2}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
