/* RS Foods Stories */
.rsf-stories,.rsf-article{background:var(--rsf-bg);color:var(--rsf-text);min-height:70vh}
.rsf-stories-hero,.rsf-article-header{max-width:1050px;margin:auto;text-align:center;padding:74px 24px 54px}
.rsf-stories-hero .rsf-eyebrow,.rsf-article .rsf-eyebrow{color:var(--rsf-accent);font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.rsf-stories-hero h1,.rsf-article-header h1{font:700 clamp(2.6rem,6vw,5rem)/.98 Georgia,serif;margin:12px 0 20px;color:var(--rsf-text)}
.rsf-stories-hero>p:last-child,.rsf-article-intro{max-width:720px;margin:auto;color:var(--rsf-muted);font-size:1.08rem;line-height:1.7}
.rsf-stories-grid{max-width:var(--rsf-container);margin:auto;padding:0 24px 80px;display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.rsf-story-card{background:var(--rsf-surface);border:1px solid var(--rsf-line);border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(57,37,22,.06)}
.rsf-story-card-image{display:block;aspect-ratio:1.45/1;background:#f0e5d8;overflow:hidden}.rsf-story-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.rsf-story-card:hover img{transform:scale(1.025)}
.rsf-story-card-image span{height:100%;display:grid;place-items:center;font:700 1.5rem Georgia,serif;color:#9a795e}
.rsf-story-card-copy{padding:22px}.rsf-story-meta,.rsf-article-date{font-size:.78rem;color:#8b796a;letter-spacing:.04em}.rsf-story-card h2{font:700 1.55rem/1.12 Georgia,serif;margin:9px 0}.rsf-story-card h2 a{color:var(--rsf-text);text-decoration:none}.rsf-story-card-copy>p:not(.rsf-story-meta){color:var(--rsf-muted);line-height:1.55}.rsf-story-read{color:var(--rsf-accent);font-weight:800;text-decoration:none}
.rsf-stories-pagination{max-width:var(--rsf-container);margin:-45px auto 0;padding:0 24px 70px}.rsf-stories-pagination ul{list-style:none;display:flex;gap:8px;justify-content:center}.rsf-stories-pagination a,.rsf-stories-pagination span{display:block;padding:8px 12px;border:1px solid var(--rsf-line);border-radius:8px;text-decoration:none}
.rsf-stories-empty{text-align:center;padding:40px 24px 100px}.rsf-stories-empty h2{font:700 2rem Georgia,serif}
.rsf-article>article{padding-bottom:80px}.rsf-article-header{max-width:920px}.rsf-article-featured{max-width:1040px;margin:0 auto 50px;padding:0 24px}.rsf-article-featured img{width:100%;height:auto;max-height:600px;object-fit:cover;border-radius:22px}
.rsf-article-content{max-width:760px;margin:auto;padding:0 24px;font:400 1.08rem/1.82 Georgia,serif}.rsf-article-content h2{font:700 2rem/1.15 Georgia,serif;margin:42px 0 16px}.rsf-article-content h3{font:700 1.45rem Georgia,serif;margin-top:34px}.rsf-article-content img{max-width:100%;height:auto;border-radius:14px}.rsf-article-content a{color:#b94814}
.rsf-article-footer{max-width:820px;margin:70px auto 0;padding:46px 30px;text-align:center;border-top:1px solid var(--rsf-line);background:var(--rsf-surface)7eb;border-radius:20px}.rsf-article-footer h2{font:700 2.1rem Georgia,serif;margin:8px}.rsf-article-ayubowan{font:700 2rem "Noto Sans Sinhala","Nirmala UI",sans-serif;color:#7b1f28}.rsf-article-ayubowan span{font:700 1rem Georgia,serif}.rsf-article-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:22px}.rsf-article-actions a{padding:11px 17px;border-radius:var(--rsf-radius-pill);border:1px solid var(--rsf-accent);color:#b94814;text-decoration:none;font-weight:800}
@media(max-width:850px){.rsf-stories-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.rsf-stories-hero,.rsf-article-header{padding-top:48px}.rsf-stories-grid{grid-template-columns:1fr;padding-inline:18px}.rsf-article-content{font-size:1rem}.rsf-article-actions{flex-direction:column}}

.rsf-story-fallback{height:100%;display:grid!important;place-content:center;text-align:center;color:#8b4d2b!important;background:radial-gradient(circle at 50% 38%,var(--rsf-surface)af0 0,#f1e2d1 70%)}.rsf-story-fallback strong{font:700 2rem/1 Georgia,serif}.rsf-story-fallback small{font-size:.62rem;letter-spacing:.2em;margin-top:5px}
.rsf-article-featured-fallback{height:min(46vw,500px);display:grid;place-items:center;border-radius:22px;background:radial-gradient(circle at 50% 38%,var(--rsf-surface)af0 0,#f1e2d1 70%);color:#8b4d2b}.rsf-article-featured-fallback span{text-align:center}.rsf-article-featured-fallback strong{display:block;font:700 clamp(3rem,8vw,6rem)/1 Georgia,serif}.rsf-article-featured-fallback small{letter-spacing:.25em}
.rsf-article-related{max-width:760px;margin:36px auto 0;padding:20px 24px;border:1px solid var(--rsf-line);border-radius:16px;background:var(--rsf-surface);display:flex;align-items:center;gap:14px;flex-wrap:wrap}.rsf-article-related strong{margin-right:auto}.rsf-article-related a{color:#b94814;font-weight:800;text-decoration:none}
.rsf-site-nav a.is-active,.rsf-mobile-menu nav a.is-active{color:var(--rsf-accent)}
@media(max-width:560px){.rsf-stories-hero h1,.rsf-article-header h1{font-size:clamp(2.35rem,13vw,3.5rem)}.rsf-story-card-copy{padding:18px}.rsf-article-featured{padding-inline:18px;margin-bottom:34px}.rsf-article-featured-fallback{height:58vw}.rsf-article-related{margin-inline:18px;align-items:flex-start;flex-direction:column}.rsf-article-related strong{margin-right:0}}

/* Stories hierarchy polish: keep the archive editorial, not billboard-sized. */
.rsf-stories-hero{max-width:980px;padding-top:62px;padding-bottom:48px}
.rsf-stories-hero h1{font-size:clamp(2.7rem,4.35vw,4.25rem);line-height:1.02;max-width:920px;margin:12px auto 18px}
.rsf-stories-hero>p:last-child{font-size:1.02rem;max-width:680px}
.rsf-stories-empty{padding-top:26px}
.rsf-stories-empty h2{font-size:clamp(1.65rem,2.4vw,2rem);margin-bottom:14px}
@media(max-width:560px){.rsf-stories-hero{padding:42px 18px 38px}.rsf-stories-hero h1{font-size:clamp(2.25rem,11vw,3rem);line-height:1.02}.rsf-stories-hero>p:last-child{font-size:.98rem}.rsf-stories-empty{padding-top:18px}}

/* Single-story title hierarchy polish */
.rsf-article-header{max-width:980px;padding-top:58px;padding-bottom:44px}
.rsf-article-header h1{font-size:clamp(2.65rem,4.15vw,4.15rem);line-height:1.02;max-width:940px;margin:12px auto 20px;text-wrap:balance}
.rsf-article-header .rsf-article-intro{max-width:760px;font-size:1.02rem}
@media(max-width:760px){.rsf-article-header{padding:44px 18px 36px}.rsf-article-header h1{font-size:clamp(2.2rem,9vw,3.15rem);line-height:1.04}}
