:root{--ink:#23382e;--paper:#faf9f5;--muted:#5f6d62;--line:#d9ded4;--accent:#344f3a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 Arial,sans-serif}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #bc792e;outline-offset:5px}.skip{position:absolute;left:15px;top:-100px;z-index:10;background:white;padding:10px}.skip:focus{top:10px}.header{padding:23px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-family:Georgia,serif;font-size:24px;line-height:1.25}.brand small{display:block;font:10px/2 Arial,sans-serif;letter-spacing:2.5px;text-transform:uppercase}.nav{display:flex;gap:23px;align-items:center;font-size:14px}.nav a{text-decoration:none}.nav a:hover,.nav a[aria-current=page]{text-decoration:underline}.menu{display:none}.hero{position:relative;min-height:630px;height:76vh;max-height:850px;background:#31462d;display:flex;align-items:flex-start;justify-content:center;text-align:center;overflow:hidden}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(#0006,transparent 70%)}.hero-copy{position:relative;z-index:1;color:white;padding:62px 22px}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:11px;font-weight:bold}.hero h1{font:clamp(42px,6vw,78px)/1.08 Georgia,serif;margin:16px 0 30px;letter-spacing:-2px}.button{display:inline-block;background:var(--accent);border:1px solid var(--accent);color:white;text-decoration:none;padding:12px 25px;font-size:14px;cursor:pointer}.hero .button{background:#faf9f5;color:var(--ink);border-color:#faf9f5}.wrap{width:min(1120px,90%);margin:auto;padding:75px 0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.intro img{width:100%;max-height:650px;object-fit:cover}.intro h2,h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.2}h1{font-size:clamp(36px,5vw,58px);margin:12px 0 24px}h2{font-size:34px}p{margin:0 0 21px}.prose{max-width:790px}.page-head{padding-bottom:40px;border-bottom:1px solid var(--line);margin-bottom:45px}.page-head p{color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery a{display:block;background:#e8ebe2;overflow:hidden}.gallery img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .3s}.gallery a:hover img{transform:scale(1.025)}.testimonials{grid-template-columns:repeat(2,1fr)}.testimonials img{aspect-ratio:auto;object-fit:contain}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card{text-decoration:none}.card img{width:100%;aspect-ratio:4/3;object-fit:cover}.card h2{font-size:27px;margin:20px 0 7px}.card p{font-size:14px;color:var(--muted)}.section-title{margin-bottom:35px}.band{background:#e9ede4}.cta{text-align:center;padding:65px 20px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact label{display:block;font-size:14px;margin:18px 0 6px}.contact input,.contact textarea{display:block;width:100%;border:1px solid #adb8aa;background:white;border-radius:0;padding:12px;color:var(--ink)}.contact textarea{min-height:160px}.contact button{margin-top:20px}.note{font-size:14px;color:var(--muted)}.status{margin-top:18px}.contact-links{display:flex;flex-wrap:wrap;gap:15px;margin:28px 0}.video{width:100%;aspect-ratio:16/9;border:0;background:#222}.footer{padding:45px 5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:35px}.footer nav{display:flex;gap:20px;flex-wrap:wrap;font-size:13px}.footer small{display:block;font-size:12px;color:var(--muted);margin-top:12px}dialog{padding:18px;border:0;background:var(--paper);max-width:95vw;max-height:95vh}dialog::backdrop{background:#000c}dialog img{max-height:78vh;max-width:85vw;object-fit:contain;margin:auto}dialog button{display:block;margin:0 0 12px auto;border:1px solid var(--line);padding:5px 15px;background:white;cursor:pointer}dialog p{font-size:13px;margin:10px 0 0}.honeypot{position:absolute;left:-9999px}.portrait{object-position:center top}.breadcrumb{font-size:13px;color:var(--muted)}@media(max-width:850px){.header{align-items:flex-start;flex-wrap:wrap}.menu{display:block;padding:7px 12px;border:1px solid var(--line);background:transparent}.nav{width:100%;flex-wrap:wrap;gap:17px}.js .nav{display:none}.js .nav.open{display:flex}.hero{min-height:550px;height:70vh}.hero-copy{padding-top:45px}.intro,.contact{grid-template-columns:1fr;gap:35px}.wrap{padding:48px 0}.gallery{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:1fr}.footer{flex-direction:column}.intro img{max-height:500px}.testimonials{grid-template-columns:1fr}}@media(max-width:430px){.brand{font-size:21px}.hero{min-height:480px}.hero h1{font-size:43px}.gallery{gap:10px}.testimonials{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
