/* Inner pages inherit the accepted homepage palette and editorial rhythm. */
body:not(.home) .rail{width:min(1140px,calc(100% - 48px))}
body:not(.home) main{--inner-space:64px}
:where(body:not(.home) main) h2{font-size:44px;line-height:1.14;letter-spacing:-.7px}
:where(body:not(.home) main) .outline-button{width:auto;min-width:168px;min-height:50px;padding:12px 24px;border-radius:4px;transition:background .2s,color .2s,border-color .2s}
:where(body:not(.home) main) .outline-button:hover{background:var(--green-gradient);color:#fff}
:where(body:not(.home) main) .eyebrow{justify-content:flex-start;margin:0 0 18px;color:#526157;font-size:16px;gap:12px}
:where(body:not(.home) main) .eyebrow:before{width:36px;flex:none;background:var(--green-gradient)}
:where(body:not(.home) main) .eyebrow:after{display:none}
:where(body:not(.home) main) a:focus-visible,:where(body:not(.home) main) button:focus-visible,:where(body:not(.home) main) input:focus-visible,:where(body:not(.home) main) select:focus-visible,:where(body:not(.home) main) textarea:focus-visible{outline:3px solid #86dbad;outline-offset:4px}
:where(body:not(.home) main) .contact-form{max-width:none;margin:0}
:where(body:not(.home) main) .contact-form label{font-size:14px;margin:0 0 20px;min-width:0}
:where(body:not(.home) main) .contact-form input,:where(body:not(.home) main) .contact-form textarea{border:1px solid #c3dcca;border-radius:5px;padding:13px 14px;font-size:15px;line-height:1.5;margin-top:8px;background:#fff;color:var(--ink)}
:where(body:not(.home) main) .contact-form input:hover,:where(body:not(.home) main) .contact-form textarea:hover{border-color:var(--green)}
:where(body:not(.home) main) .contact-form textarea{min-height:150px;resize:vertical}
:where(body:not(.home) main) .contact-form button{min-height:50px;border-radius:4px;padding:12px 20px;background:var(--green-gradient);color:#fff;font-size:14px;font-weight:600;transition:background .2s}
:where(body:not(.home) main) .contact-form button:hover{background:var(--green-gradient-hover)}
:where(body:not(.home) main) .form-status{font-size:14px;line-height:1.6;margin:16px 0;color:#526157}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* About: a balanced story and photograph, followed by an unobstructed mission. */
.about-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:72px;row-gap:44px;align-items:center;padding-top:var(--inner-space)}
.about-text{min-width:0}
.about-text h2{font-size:44px;line-height:1.14;letter-spacing:-.7px;margin:0 0 24px;max-width:490px}
.about-text>p{font-size:16px;line-height:1.8;color:#526157;margin:0 0 24px}
.about-text ul{list-style:none;margin:0;padding:0}
.about-text li{position:relative;border-top:1px solid #d2e5d7;padding:14px 0 14px 22px;font-size:15px;line-height:1.65}
.about-text li:before{content:"";position:absolute;left:0;top:24px;width:6px;height:6px;border-radius:50%;background:var(--green)}
.about-photo{min-width:0}
.about-photo img{display:block;width:100%;height:510px;object-fit:cover;border-radius:90px 16px 16px 16px}
.mission-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:center;grid-column:1/-1;padding:38px 42px;border:1px solid #d2e5d7;border-radius:16px;background:var(--mint-gradient)}
.mission-card h3{font-size:36px;line-height:1.15;letter-spacing:-.4px;color:var(--green);margin:0}
.mission-card p{font-size:16px;line-height:1.75;color:#526157;margin:0}

/* Blog, global search and archives share editorial cards, not floating boxes. */
.blog-section,.archive-page{padding-top:var(--inner-space)}
.section-heading{margin-bottom:40px}
.section-heading h2{font-size:44px;line-height:1.14;letter-spacing:-.7px;margin:0}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 28px}
.post-card,.category-item{display:flex;flex-direction:column;min-width:0;background:#fff}
.post-card-media{display:block;overflow:hidden;border-radius:12px}
.post-card-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .35s}
.post-card-body{display:flex;flex-direction:column;flex:1;padding-top:20px;border-bottom:1px solid #d2e5d7}
.post-card h3,.category-item h2{font:400 26px/1.2 var(--serif);letter-spacing:-.25px;margin:0 0 14px;text-transform:capitalize}
.post-card p,.category-item p{font-size:15px;line-height:1.7;color:#526157;margin:0 0 22px}
.post-card .read-more{display:inline-block;align-self:flex-start;margin-top:auto;padding:0 0 20px;color:var(--green);font-size:14px;font-weight:600}
.post-card h3 a:hover,.category-title:hover,.read-more:hover{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 36px}
.category-item h2{font-size:30px}
.category-item .post-card-body{padding-top:22px}
.category-pagination,.navigation.pagination,.rsd-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:42px 0 0}
.navigation.pagination .nav-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.page-numbers,.category-pagination a{display:inline-flex;min-width:42px;min-height:42px;align-items:center;justify-content:center;padding:8px 14px;border:1px solid #d2e5d7;border-radius:4px;color:var(--green);font-size:14px}
.page-numbers.current{background:var(--green-gradient);border-color:var(--green);color:#fff}
a.page-numbers:hover,.category-pagination a:hover{background:var(--mint-gradient);border-color:var(--green)}
.page-numbers.dots{border-color:transparent}
.archive-search{padding:28px 32px;background:var(--mint-gradient);border:1px solid #d2e5d7;border-radius:14px;margin-bottom:38px}
.rs-site-search{display:flex;gap:12px;max-width:760px;margin:auto}
.rs-site-search input{min-width:0;flex:1;min-height:52px;padding:12px 16px;border:1px solid #c3dcca;border-radius:5px;background:#fff;color:var(--ink);font:15px var(--sans)}
.rs-site-search button{min-height:52px;padding:12px 26px;border:1px solid var(--green);border-radius:4px;color:#fff;background:var(--green-gradient);font:600 14px var(--sans);cursor:pointer}
.rs-site-search button:hover{background:var(--green-gradient-hover)}
.rs-empty-state{padding:40px;background:var(--mint-gradient);border:1px solid #d2e5d7;border-radius:16px;text-align:center}
.rs-empty-state h2{font-size:34px;margin:0 0 16px}
.rs-empty-state p{font-size:16px;color:#526157;line-height:1.7;margin:0}
.rs-empty-state .rs-site-search{margin-top:24px}

/* Contact: primary restaurant application, then a quieter general message. */
.contact-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center;padding-block:var(--inner-space) 36px}
.contact-intro h2{font-size:42px;line-height:1.15;letter-spacing:-.6px;margin:0}
.contact-intro>p{font-size:16px;line-height:1.75;color:#526157;margin:0}
.rsd-application{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:56px;align-items:start;background:var(--mint-gradient);padding:44px 48px;border:1px solid #d2e5d7;border-radius:18px;scroll-margin-top:28px}
.rsd-application-intro{min-width:0}
.rsd-application h2{font-size:38px;line-height:1.15;letter-spacing:-.6px;margin:0 0 20px}
.rsd-application-intro>p{font-size:15px;line-height:1.75;color:#526157;margin:0}
.rsd-application-art{display:block;width:175px;max-height:210px;object-fit:contain;margin-top:28px}
.rsd-application-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;min-width:0}
.rsd-form-wide{grid-column:1/-1}
.rsd-form-note{font-size:12px;line-height:1.65;color:#526157;margin:16px 0 0}
.rsd-general-contact{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:56px;padding-top:48px;border-top:1px solid #d2e5d7;margin-top:64px;scroll-margin-top:28px}
.rsd-general-contact-copy h2{font-size:36px;line-height:1.15;margin:0 0 18px}
.rsd-general-contact-copy p{font-size:15px;line-height:1.7;color:#526157;max-width:320px}
.rsd-general-contact>.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
.rsd-general-contact .contact-form>label:has(textarea),.rsd-general-contact .contact-form>button,.rsd-general-contact .form-status{grid-column:1/-1}

/* Articles: readable measure, complete content, and a neatly aligned contact panel. */
.article-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.9fr);gap:52px;align-items:start;padding-top:var(--inner-space)}
.article-body{font-size:17px;line-height:1.8;min-width:0;overflow-wrap:anywhere}
.article-body>img.article-featured{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:16px;margin:0 0 32px}
.article-body img{max-width:100%;height:auto;border-radius:10px}
.article-body h2{font-size:38px;line-height:1.16;letter-spacing:-.55px;margin:38px 0 18px}
.article-body h3{font-size:29px;line-height:1.2;letter-spacing:-.25px;margin:30px 0 14px}
.article-body p{margin:0 0 22px}
.article-body ul,.article-body ol{padding-left:24px;margin:0 0 24px}
.article-body li{margin-block:8px}
.article-body a:not(.outline-button){color:var(--green);text-decoration:underline;text-underline-offset:3px}
.article-body blockquote{background:var(--mint-gradient);border-left:3px solid var(--green);border-radius:0 10px 10px 0;margin:30px 0;padding:24px 28px}
.article-body blockquote p:last-child{margin-bottom:0}
.article-body figure{max-width:100%;margin:28px 0}
.article-body figcaption{font-size:13px;line-height:1.5;color:#526157;margin-top:10px}
.article-body table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin-block:28px;font-size:15px}
.article-body th,.article-body td{border:1px solid #d2e5d7;padding:12px;text-align:left}
.article-body th{background:var(--mint-gradient);font-weight:600}
.article-sidebar{position:sticky;top:28px;min-width:0;background:var(--mint-gradient);border:1px solid #d2e5d7;border-radius:16px;padding:30px 26px}
.article-sidebar h2{font-size:31px;line-height:1.17;letter-spacing:-.35px;color:var(--green);margin:0 0 26px}
.article-sidebar .contact-form textarea{min-height:135px}
.article-sidebar .contact-form label{font-size:13px}
.article-sidebar .contact-form input,.article-sidebar .contact-form textarea{font-size:14px}

/* The footer follows the homepage alignment, without the old floating overlap. */
body:not(.home) .site-footer{margin-top:88px}
body:not(.home) .footer-steak{display:none}
body:not(.home) .footer-grid{display:grid;grid-template-columns:1.15fr .7fr 1fr;gap:88px;padding-block:52px}
body:not(.home) .footer-grid>div{text-align:left}
body:not(.home) .footer-grid>div:nth-child(3) p{margin-left:0}
body:not(.home) .footer-grid .brand img{width:215px}
body:not(.home) .footer-grid .brand+p{margin-top:18px}
body:not(.home) .footer-last .rail{height:64px;align-items:center;padding-bottom:0}
body:not(.home) .footer-last img{display:none}

@media(hover:hover) and (pointer:fine){.post-card-media:hover img{transform:scale(1.035)}}
@media(max-width:1050px){
 .about-story{column-gap:44px}
 .about-text h2{font-size:40px}
 .about-photo img{height:480px}
 .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .rsd-application,.rsd-general-contact{gap:36px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
 .rsd-application{padding:36px}
 .article-grid{gap:32px;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr)}
 .article-sidebar{padding:26px 22px}
 body:not(.home) .footer-grid{gap:48px}
}
@media(max-width:850px){
 body:not(.home) main{--inner-space:44px}
 .about-story{grid-template-columns:1fr;gap:30px}
 .about-text{max-width:700px}
 .about-photo img{height:450px}
 .mission-card{gap:30px;padding:32px}
 .mission-card h3{font-size:32px}
 .contact-intro{gap:32px}
 .contact-intro h2{font-size:36px}
 .rsd-application{grid-template-columns:1fr;gap:28px}
 .rsd-application-intro{display:grid;grid-template-columns:minmax(0,1fr) 150px;column-gap:28px;align-items:center}
 .rsd-application-intro h2,.rsd-application-intro>p{grid-column:1}
 .rsd-application-art{grid-column:2;grid-row:1/4;width:150px;margin:0}
 .rsd-general-contact{grid-template-columns:1fr;gap:26px}
 .rsd-general-contact-copy p{max-width:600px;margin-bottom:0}
 .article-grid{grid-template-columns:1fr;gap:42px}
 .article-sidebar{position:static;padding:32px}
 .article-sidebar .contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
 .article-sidebar .contact-form>label:has(textarea),.article-sidebar .contact-form>button,.article-sidebar .form-status{grid-column:1/-1}
 .article-body{font-size:16px}
 .article-body h2{font-size:34px}
}
@media(max-width:650px){
 body:not(.home) .rail{width:calc(100% - 40px)}
 body:not(.home) main{--inner-space:36px}
 :where(body:not(.home) main) .outline-button{min-width:150px;min-height:48px;font-size:13px;padding:11px 20px}
 :where(body:not(.home) main) .eyebrow{font-size:15px;margin-bottom:15px}
 :where(body:not(.home) main) .contact-form input,:where(body:not(.home) main) .contact-form textarea{font-size:16px}
 .about-text h2,.section-heading h2{font-size:34px}
 .about-text>p{font-size:15px;line-height:1.7}
 .about-text li{font-size:14px}
 .about-photo img{height:360px;border-radius:60px 12px 12px 12px}
 .mission-card{grid-template-columns:1fr;gap:18px;padding:28px 24px;border-radius:12px}
 .mission-card h3{font-size:31px}
 .mission-card p{font-size:15px}
 .section-heading{margin-bottom:28px}
 .blog-grid,.category-list{grid-template-columns:1fr;gap:34px}
 .post-card h3,.category-item h2{font-size:26px}
 .post-card p,.category-item p{font-size:14px}
 .post-card-body{padding-top:18px}
 .category-item .post-card-body{padding-top:18px}
 .navigation.pagination,.category-pagination,.rsd-pagination{margin-top:30px}
 .archive-search{padding:22px 20px;margin-bottom:28px}
 .rs-site-search{flex-direction:column;gap:12px}
 .rs-site-search input{font-size:16px;flex:auto;width:100%}
 .rs-site-search button{width:100%}
 .rs-empty-state{padding:30px 24px}
 .rs-empty-state h2{font-size:29px}
 .rs-empty-state p{font-size:15px}
 .contact-intro{grid-template-columns:1fr;gap:20px;padding-bottom:28px}
 .contact-intro h2{font-size:34px}
 .contact-intro>p{font-size:15px}
 .rsd-application{padding:28px 24px;border-radius:12px}
 .rsd-application-intro{grid-template-columns:minmax(0,1fr) 86px;gap:0 16px}
 .rsd-application h2{font-size:31px;grid-column:1/-1;margin-bottom:18px}
 .rsd-application-intro>p{font-size:14px;line-height:1.65}
 .rsd-application-art{width:86px;grid-row:2/4}
 .rsd-application-form,.rsd-general-contact>.contact-form,.article-sidebar .contact-form{grid-template-columns:1fr;gap:0}
 .rsd-form-wide{grid-column:auto}
 .rsd-form-note{font-size:12px}
 .rsd-general-contact{padding-top:34px;margin-top:44px}
 .rsd-general-contact-copy h2{font-size:31px}
 .article-body>img.article-featured{margin-bottom:26px;border-radius:12px}
 .article-body h2{font-size:31px;margin-top:30px}
 .article-body h3{font-size:26px}
 .article-body p{margin-bottom:20px}
 .article-body blockquote{padding:20px}
 .article-sidebar{padding:28px 24px;border-radius:12px}
 .article-sidebar h2{font-size:30px}
 body:not(.home) .site-footer{margin-top:56px}
 body:not(.home) .footer-grid{grid-template-columns:1fr;gap:28px;padding-block:34px}
 body:not(.home) .footer-grid .brand img{width:205px;max-height:64px}
 body:not(.home) .footer-grid h2{font-size:23px}
 body:not(.home) .footer-grid p{max-width:340px;font-size:13px}
 body:not(.home) .footer-grid li{font-size:14px}
 body:not(.home) .footer-last .rail{height:58px;justify-content:flex-start}
 body:not(.home) .footer-last small{font-size:11px}
}
@media(max-width:380px){body:not(.home) .rail{width:calc(100% - 32px)}.about-photo img{height:320px}.rsd-application-intro{grid-template-columns:1fr}.rsd-application-art{grid-column:1;grid-row:auto;width:105px;margin-top:18px}}
@media(prefers-reduced-motion:reduce){.post-card-media img{transition:none}.post-card-media:hover img{transform:none}}

