@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap');
:root{--dark:#283125;--olive:#566247;--sage:#9da989;--cream:#f6f3ed;--sand:#eae5d8;--white:#fff;--ink:#353931;--muted:#777b70;--line:#dcd9cd;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 'DM Sans',Arial,sans-serif}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,h3,h4,.serif{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.2}h1{font-size:clamp(44px,6vw,81px);letter-spacing:-.035em}h2{font-size:clamp(32px,3.7vw,49px);letter-spacing:-.025em}h3{font-size:26px}p{margin:0 0 18px}.wrap{width:min(calc(100% - 48px),var(--max));margin:0 auto}.eyebrow{font-size:11px;letter-spacing:.25em;text-transform:uppercase;font-weight:700;color:var(--olive)}.small{font-size:13px;color:var(--muted)}.top{background:var(--dark);color:#e7e9df;font-size:12px;letter-spacing:.05em;padding:8px 0}.top .wrap{display:flex;justify-content:space-between;gap:14px}.head{background:rgba(255,255,255,.98);border-bottom:1px solid #ecebe6;position:sticky;z-index:20;top:0}.head-inner{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:24px}.brand img{width:182px;height:auto}.nav{display:flex;align-items:center;gap:24px}.nav a{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;transition:color .2s}.nav a:hover,.nav a.current{color:#68824a}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--olive);background:var(--olive);color:#fff;padding:13px 24px;font-weight:700;letter-spacing:.105em;text-transform:uppercase;font-size:11px;cursor:pointer;transition:background .2s,transform .2s}.btn:hover{background:#394330;transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--dark)}.btn-outline:hover{background:var(--dark);color:#fff}.btn-light{border-color:#fff;background:transparent;color:#fff}.btn-light:hover{background:#fff;color:#283125}.mobile-toggle{display:none;border:0;background:none;font-size:30px;cursor:pointer}.hero{min-height:590px;background:linear-gradient(90deg,rgba(15,22,16,.78),rgba(15,22,16,.32) 59%,rgba(15,22,16,.12)),url('../images/hero-catering.webp') center/cover;display:flex;align-items:center;color:white}.hero .wrap{padding:90px 0}.hero h1{max-width:680px;margin:15px 0}.hero p{font-size:18px;max-width:560px;color:#eeeadd}.hero .eyebrow{color:#d4dcc2}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.section{padding:88px 0}.section.alt{background:var(--cream)}.section.sage{background:#edf0e9}.center{text-align:center}.center > p{max-width:700px;margin-left:auto;margin-right:auto}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.intro-grid img{width:100%;height:415px;object-fit:cover}.intro-grid h2{margin:10px 0 22px}.feature-bar{background:#eae6dd;padding:32px 0}.features{display:grid;grid-template-columns:repeat(4,1fr)}.feature{padding:10px 26px;text-align:center;border-right:1px solid #ccc7bd}.feature:last-child{border-right:0}.feature strong{display:block;font-size:12px;letter-spacing:.13em;text-transform:uppercase}.feature span{font-size:13px;color:var(--muted)}.accent{width:60px;height:1px;background:#89967b;display:block;margin:20px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.card{background:white;border:1px solid #eeede8;overflow:hidden}.card img{width:100%;height:225px;object-fit:cover}.card-body{padding:25px}.card h3{margin:0 0 11px;font-size:22px}.card p{font-size:14px;color:var(--muted)}.text-link{display:inline-block;border-bottom:1px solid var(--olive);color:var(--olive);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700;padding-bottom:4px}.page-hero{padding:104px 0 95px;background:linear-gradient(90deg,rgba(25,34,25,.83),rgba(25,34,25,.38)),url('../images/rustic-events.webp') center/cover;color:white}.page-hero h1{font-size:clamp(45px,5.7vw,72px);margin:12px 0}.page-hero p{max-width:640px;color:#e7e8df}.page-hero .eyebrow{color:#d6e3c7}.breadcrumbs{font-size:12px;color:#bfc8b4}.breadcrumbs a{text-decoration:underline}.content-column{max-width:850px;margin:auto}.content-column h2{margin:28px 0 17px;font-size:34px}.content-column h3{margin:29px 0 11px;font-size:24px}.content-column ul{padding-left:22px}.content-column li{margin-bottom:8px}.menu-layout{display:grid;grid-template-columns:240px 1fr;gap:45px}.sidenav{position:sticky;top:122px;align-self:start;background:var(--cream);padding:26px}.sidenav a{display:block;padding:10px 0;border-bottom:1px solid var(--line);color:var(--dark);font-size:13px}.menu-category{padding:28px 0;border-bottom:1px solid var(--line)}.menu-category h3{margin:0 0 17px;font-size:27px}.menu-category ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 26px}.menu-category li{font-size:14px;padding:0 0 9px;border-bottom:1px dotted #c9c9bd}.tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:36px}.tabs button{padding:9px 17px;border:1px solid #d8d7ce;background:#fff;cursor:pointer;font-size:12px;letter-spacing:.09em;text-transform:uppercase}.tabs button.active{background:var(--olive);color:white}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery figure{margin:0;cursor:pointer;overflow:hidden;position:relative}.gallery img{width:100%;height:235px;object-fit:cover;transition:transform .3s}.gallery figure:hover img{transform:scale(1.05)}.gallery figcaption{padding:9px 5px;color:var(--muted);font-size:12px}.gallery figure.hidden{display:none}.quotes{display:grid;grid-template-columns:1fr 1fr;gap:22px}.quote{background:var(--cream);padding:40px;font-family:'Playfair Display',Georgia,serif;font-size:20px}.quote footer{font:700 12px 'DM Sans',sans-serif;letter-spacing:.14em;margin-top:22px;color:var(--olive)}.cta{background:var(--dark);padding:77px 0;color:white;text-align:center}.cta h2{margin:12px 0 20px}.cta p{color:#e1e3da}.two{display:grid;grid-template-columns:1fr 1fr;gap:30px}.form{background:var(--cream);padding:32px}.field{display:block;margin-bottom:15px;font-size:12px;font-weight:700;letter-spacing:.05em}.field input,.field textarea,.field select{display:block;width:100%;border:1px solid #d1d2c7;background:white;padding:12px;margin-top:6px;outline:none}.field textarea{min-height:150px}.form-note{font-size:12px;color:var(--muted)}.footer{background:#242d24;color:#e5e9e1;padding:70px 0 30px}.foot-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.2fr;gap:50px}.footer h4{font-size:17px;margin:0 0 18px}.footer a{display:block;font-size:13px;margin:0 0 10px;color:#c6cfbd}.footer p{font-size:14px;color:#c6cfbd}.footer img{width:200px;filter:brightness(0) invert(1)}.foot-bottom{margin-top:45px;border-top:1px solid #586154;padding-top:18px;display:flex;justify-content:space-between;gap:12px;color:#b2bcad;font-size:12px}.notice{background:#f8f6ee;border-left:3px solid #89967b;padding:16px 20px;font-size:13px;color:#6b7065;margin:24px 0}.pills{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0}.pill{background:#e6eadd;color:#42533a;padding:5px 13px;font-size:12px}.accordion details{border-bottom:1px solid #d5d8ce;padding:19px 0}.accordion summary{font-weight:700;cursor:pointer}.accordion p{margin-top:15px;color:var(--muted)}.lightbox{display:none;position:fixed;inset:0;background:rgba(15,20,15,.95);align-items:center;justify-content:center;z-index:90;padding:38px}.lightbox.open{display:flex}.lightbox img{max-height:90vh;max-width:90vw;object-fit:contain}.close-lightbox{position:absolute;right:24px;top:12px;color:white;background:none;border:0;font-size:36px;cursor:pointer}.grid-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.grid-links a{padding:10px 16px;border:1px solid var(--line);font-size:13px}.grid-links a:hover{background:var(--cream)}@media(max-width:1020px){.nav{gap:13px}.nav a{font-size:10px}.brand img{width:150px}.cards{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(3,1fr)}.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.wrap{width:min(calc(100% - 32px),var(--max))}.top .wrap{flex-direction:column;gap:0}.head-inner{min-height:78px}.brand img{width:152px}.mobile-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:white;padding:12px 22px 25px;box-shadow:0 18px 24px #0002}.nav.open{display:flex}.nav a{padding:12px 7px;border-bottom:1px solid #eee;font-size:12px}.head .btn{display:none}.hero{min-height:530px}.hero .wrap{padding:75px 0}.section{padding:62px 0}.intro-grid,.two,.quotes,.menu-layout{grid-template-columns:1fr}.intro-grid{gap:30px}.intro-grid img{height:290px}.features{grid-template-columns:1fr 1fr}.feature:nth-child(2){border-right:0}.feature{padding:15px}.cards{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:170px}.menu-category ul{grid-template-columns:1fr}.sidenav{position:static}.page-hero{padding:70px 0}.foot-grid{grid-template-columns:1fr 1fr;gap:25px}.foot-bottom{flex-direction:column}}@media(max-width:450px){.gallery{grid-template-columns:1fr}.gallery img{height:230px}.foot-grid,.grid-links{grid-template-columns:1fr}.feature{padding:12px 8px}}