@font-face{font-family:ARO Serif;src:url('assets/serif.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:400}@font-face{font-family:ARO Serif;src:url('assets/serif-italic.woff2') format('woff2');font-display:swap;font-style:italic;font-weight:400}@font-face{font-family:ARO Sans;src:url('assets/sans.woff2') format('woff2');font-display:swap;font-weight:400 700}
:root{--paper:#f7f4ec;--ink:#254b3c;--body:#464e45;--rust:#a53429;--line:#d4d8cb;--sage:#e7ecdf;--serif:'ARO Serif',Georgia,serif;--sans:'ARO Sans',system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--body);font:16px/1.65 var(--sans)}[hidden]{display:none!important}a{color:inherit}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}:focus-visible{outline:3px solid var(--rust);outline-offset:5px}img{display:block;width:100%;height:auto}figure{margin:0}h1,h2,h3{color:var(--ink);font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(3.2rem,6.2vw,6rem);letter-spacing:-.035em;margin:.2em 0}h2{font-size:clamp(2.3rem,4vw,3.8rem);letter-spacing:-.025em;margin:.25em 0 .5em}h3{font-size:1.65rem;margin:.6em 0}em{color:var(--rust)}p{margin:.75em 0}.shell{width:min(1160px,calc(100% - 64px));margin-inline:auto}.section{padding-block:76px}.eyebrow,.number{font-size:.73rem;letter-spacing:.14em;font-weight:700;color:var(--ink)}.skip{position:fixed;top:12px;left:-999px;z-index:50;background:var(--paper);padding:12px}.skip:focus{left:12px}header{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.nav{min-height:80px;display:flex;align-items:center;gap:24px;justify-content:space-between}.wordmark{text-decoration:none;display:flex;align-items:baseline;color:var(--ink);font:2.4rem/1 var(--serif);letter-spacing:-.07em}.wordmark>span{color:var(--rust)}.wordmark small{margin-left:12px;letter-spacing:.18em;font:700 .62rem var(--sans)}nav{display:flex;gap:26px;align-items:center;font-size:.88rem}nav a{text-decoration:none;padding-block:12px}.nav-cta{border-bottom:1px solid var(--rust)}.mobile-contact{display:none}.menu{display:none;background:none;border:1px solid var(--line);color:var(--ink);width:46px;height:46px;border-radius:50%}.hero{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding-block:64px}.lede{font:1.45rem/1.4 var(--serif);color:var(--ink)}.hero-detail{max-width:45ch}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:13px 20px;background:var(--rust);color:white;text-decoration:none;border:0;min-height:48px;font-weight:600}.text-link{display:inline-block;font-size:.92rem;text-underline-offset:5px;padding-block:12px;color:var(--ink)}.hero-photo{transform:rotate(1deg);padding:12px;background:#fffdf7;box-shadow:0 8px 24px #254b3c12}.hero-photo img{aspect-ratio:1.2;object-fit:cover;object-position:50% 65%}figcaption{color:var(--ink);padding-top:12px;font:1rem/1.4 var(--serif)}figcaption span{display:block;color:var(--body);font:.73rem/1.5 var(--sans);margin-top:5px}.work{background:var(--sage)}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.section-intro>p{max-width:42ch}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 64px;margin:26px 0 12px}.work-grid article{border-top:1px solid #b5c3b3;padding-top:20px}.work-grid p{max-width:45ch}.number{color:#52644b;font-size:.7rem}.mission{background:var(--ink);color:#f7f4ec}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.mission h2,.mission .eyebrow{color:#f7f4ec}.mission em{color:#f0c88d}.mission-statement{font:clamp(1.65rem,2.5vw,2.2rem)/1.45 var(--serif);margin-top:0}.mission p:not(.eyebrow){max-width:46ch}.story{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.story figure img{aspect-ratio:1.2;object-fit:cover;object-position:50% 30%;border-radius:3px}.story h2{font-size:clamp(2.3rem,3.5vw,3.3rem)}.gallery{background:#eeece3}.gallery-head{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}.gallery-head h2{font-size:clamp(2rem,3vw,2.8rem)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 24px;margin-top:28px}.photo{display:block;padding:0;border:0;background:transparent;width:100%}.photo img{aspect-ratio:1.25;object-fit:cover;transition:filter .2s}.photo:hover img{filter:brightness(.92)}.gallery-grid figure:first-child img{object-position:50% 45%}.gallery-grid figure:nth-child(3) img{object-position:40% 30%}.gallery-hint{font-size:.8rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.contact h2{font-size:clamp(2.6rem,4vw,3.7rem)}.privacy-note{font-size:.8rem;max-width:48ch;color:#565f54}.form-card{background:white;border:1px solid var(--line);padding:28px}#form-status{margin-top:0}fieldset{border:0;padding:0;margin:0}label{display:block;font-size:.85rem;font-weight:600;margin-bottom:15px}input,textarea{display:block;width:100%;border:1px solid #a0ad9c;border-radius:0;padding:11px;margin-top:5px;background:#fff;color:var(--ink)}textarea{resize:vertical}.trap{position:absolute;left:-9999px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}footer{border-top:1px solid var(--line)}.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:25px}.footer p{font-size:.85rem}.footer>a:last-child{padding:12px;font-size:.85rem}dialog{border:0;background:var(--paper);color:var(--ink);width:min(1000px,94vw);max-height:95dvh;padding:50px 22px 18px}dialog::backdrop{background:#13251fea}dialog img{height:auto;max-height:68dvh;object-fit:contain}.close{position:absolute;right:12px;top:4px;background:none;border:0;color:var(--ink);font-size:2rem;width:44px;height:44px}.viewer-controls{display:flex;justify-content:center;align-items:center;gap:20px}.viewer-controls button{background:none;border:1px solid var(--line);width:48px;height:44px;color:var(--ink)}body.modal-open{overflow:hidden}
@media(max-width:800px){.shell{width:calc(100% - 40px)}.section{padding-block:48px}.nav{flex-wrap:wrap;gap:12px;min-height:72px;padding-block:12px}.wordmark{font-size:2rem}.mobile-contact{display:inline-block;margin-left:auto;font-size:.85rem;padding:12px}.js nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}.js nav.open{display:flex}.js nav a{padding:12px}.js .menu{display:block}.nav nav{width:100%;flex-wrap:wrap;gap:8px 20px}.hero{gap:32px;padding-block:38px;grid-template-columns:1fr}.hero-copy{max-width:600px}.hero h1{font-size:clamp(3.2rem,10vw,4.4rem)}.hero-detail{max-width:55ch}.hero-photo{max-width:600px;transform:rotate(.6deg)}.hero-photo img{aspect-ratio:1.35;object-position:50% 70%}.section-intro,.mission-grid,.story,.gallery-head,.contact-grid{grid-template-columns:1fr;gap:20px}.section-intro h2 br{display:none}.section-intro h2{font-size:2.5rem}.work-grid{gap:18px 28px;margin-top:20px}.work-grid h3{font-size:1.4rem}.mission h2 br{display:none}.mission h2{font-size:2.7rem}.mission-statement{font-size:1.8rem}.story{gap:28px}.story figure img{aspect-ratio:1.35}.story h2 br{display:none}.gallery-head h2{margin-bottom:0}.gallery-grid{grid-template-columns:1fr 1fr;gap:24px 18px}.gallery-grid figure:first-child{grid-column:auto}.gallery-grid figure:first-child img{aspect-ratio:1.25}.contact-grid{gap:24px}.form-card{padding:22px}.footer{flex-wrap:wrap;gap:12px}.footer p{order:3;width:100%;margin-top:0}.footer>a:last-child{margin-left:auto}html{scroll-padding-top:84px}}
@media(max-width:420px){.work-grid{grid-template-columns:1fr;gap:18px}.work-grid article{padding-top:16px}.work-grid p{margin-bottom:2px}.gallery-grid{grid-template-columns:1fr}.gallery-grid figure:first-child{grid-column:auto}.gallery-grid .photo img{aspect-ratio:1.45}.gallery-grid figure:first-child .photo img{aspect-ratio:1.45}.wordmark small{margin-left:8px;font-size:.55rem}.nav{gap:8px}.actions{align-items:flex-start;gap:6px}.hero h1{font-size:3.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}