:root{
  --ink:#251f1b;--muted:#746b62;--paper:#f7f2e8;--white:#fffdf9;--rust:#b65f3d;
  --mustard:#d7a442;--olive:#737a4e;--line:#d9d0c3;--charcoal:#2d2a27;
  --shadow:0 24px 55px rgba(37,31,27,.13);--container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Nirmala UI","Noto Sans Devanagari",system-ui,sans-serif;line-height:1.72;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
:focus-visible{outline:3px solid var(--mustard);outline-offset:4px}
.container{width:min(calc(100% - 36px),var(--container));margin:0 auto}
.narrow{max-width:850px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(247,242,232,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(37,31,27,.1)}
.header-row{min-height:78px;display:flex;justify-content:space-between;align-items:center;gap:26px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-mark{width:44px;height:44px;flex:0 0 44px;display:inline-flex}
.brand-mark img{width:100%;height:100%;object-fit:contain}
.brand-copy{display:grid;line-height:1.12}
.brand-copy strong{font-family:Georgia,serif;font-size:1.08rem}
.brand-copy small{font-size:.66rem;color:var(--muted);margin-top:5px}
.primary-menu{display:flex;align-items:center;gap:6px}
.primary-menu a{padding:9px 12px;font-size:.87rem;color:var(--muted);border-bottom:2px solid transparent}
.primary-menu a:hover,.primary-menu a.is-current{color:var(--ink);border-color:var(--rust)}
.menu-toggle{display:none;border:0;background:transparent;width:44px;height:44px;padding:10px}
.menu-toggle span{display:block;height:2px;background:var(--ink);margin:5px 0}
.eyebrow{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#f5d798}
.eyebrow.dark{color:#8e572f}.eyebrow.light{color:#f5d798}
.masthead{padding:68px 0 0;background:var(--charcoal);color:#fff}
.masthead-grid{display:grid;grid-template-columns:190px 1fr;gap:60px;align-items:start;padding-bottom:52px}
.issue-label{border-top:4px solid var(--mustard);padding-top:14px;display:grid;gap:8px}
.issue-label span,.issue-label small{color:#c9c2bb;font-size:.78rem}
.issue-label strong{font-size:2.5rem;line-height:1}
.masthead-title h1,.page-title h1,.article-opening h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.8rem,5.6vw,6rem);line-height:1.01;letter-spacing:-.045em;margin:18px 0 24px}
.standfirst{font-size:1.16rem;color:#d4cdc5;max-width:820px}
.cover-strip{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.4fr);background:#fff;color:var(--ink);padding:0;width:min(calc(100% - 36px),var(--container));box-shadow:var(--shadow)}
.cover-strip img{width:100%;height:380px;object-fit:cover}
.cover-caption{padding:32px;display:flex;flex-direction:column;justify-content:flex-end}
.cover-caption span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rust);font-weight:800}
.cover-caption p{font-family:Georgia,serif;font-size:1.45rem;line-height:1.28}
.contents-block{padding:88px 0}
.contents-heading{display:grid;grid-template-columns:190px 1fr;gap:60px;margin-bottom:28px}
.contents-heading span{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.contents-heading h2{font-family:Georgia,serif;font-size:2.4rem;margin:0}
.chapter-index{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.chapter-index li{border-bottom:1px solid var(--line)}
.chapter-index a{display:grid;grid-template-columns:90px 1fr 1fr;gap:30px;align-items:center;padding:22px 0}
.chapter-index span{font-family:Georgia,serif;font-size:1.5rem;color:var(--rust)}
.chapter-index strong{font-size:1.05rem}
.chapter-index small{color:var(--muted)}
.chapter-section{padding:92px 0;background:#fffdf9}
.chapter-section.alt{background:#efe8dc}
.chapter-layout{display:grid;grid-template-columns:110px minmax(0,1fr) minmax(300px,.75fr);gap:55px;align-items:start}
.chapter-number{display:grid;gap:4px;position:sticky;top:110px}
.chapter-number span{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}
.chapter-number strong{font-family:Georgia,serif;font-size:4rem;color:var(--rust);line-height:1}
.chapter-copy h2,.closing-grid h2,.city-grid h2{font-family:Georgia,serif;font-size:clamp(2.1rem,3.8vw,4rem);line-height:1.08;letter-spacing:-.03em;margin:13px 0 20px}
.lead-copy{font-size:1.08rem;color:#4f4842}
.chapter-copy blockquote{margin:28px 0;padding:20px 24px;border-left:4px solid var(--mustard);background:#f6efe3;font-family:Georgia,serif;font-size:1.2rem}
.text-link{display:inline-block;margin-top:20px;font-weight:800;color:var(--rust)}
.chapter-image{margin:0}.chapter-image img{width:100%;height:440px;object-fit:cover}
.chapter-image figcaption,.food-pair+figcaption{font-size:.8rem;color:var(--muted);padding-top:10px}
.food-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.food-pair img{width:100%;height:430px;object-fit:cover}
.food-pair img:first-child{grid-column:1/-1;height:270px}
.mini-table{border-top:1px solid var(--line);margin-top:28px}
.mini-table>div{display:grid;grid-template-columns:170px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}
.mini-table span{color:var(--muted)}
.numbered-notes{list-style:none;padding:0;margin:28px 0;border-top:1px solid var(--line)}
.numbered-notes li{display:grid;grid-template-columns:50px 1fr;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}
.numbered-notes span{color:var(--rust);font-weight:900}
.note-card{margin-top:30px;padding:24px;border:1px solid var(--line);background:#fff}
.note-card p{margin-bottom:0;color:var(--muted)}
.city-interlude{background:#342d27;color:#fff;padding:74px 0}
.city-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}
.city-grid img{width:100%;height:420px;object-fit:cover;filter:grayscale(.2)}
.city-grid p{color:#d4cbc2}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--rust);color:#fff;padding:13px 20px;font-weight:800;cursor:pointer}
.btn-light{background:#fff;color:var(--ink)}
.btn-quiet{background:#e9e1d5;color:var(--ink)}
.section{padding:90px 0}
.closing-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:center}
.closing-grid figure{margin:0}.closing-grid img{width:100%;height:430px;object-fit:cover}
.page-title,.article-opening{padding:86px 0 60px;border-bottom:1px solid var(--line)}
.page-title p,.article-opening p{color:var(--muted);font-size:1.07rem}
.about-manifesto{display:grid;grid-template-columns:280px 1fr;gap:70px;align-items:start}
.manifesto-side{position:sticky;top:110px;border-top:4px solid var(--rust);padding-top:16px}
.manifesto-side span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.manifesto-side strong{display:block;font-family:Georgia,serif;font-size:2rem;line-height:1.35;margin-top:16px}
.prose{max-width:800px}
.prose h2{font-family:Georgia,serif;font-size:1.8rem;line-height:1.2;margin:38px 0 12px}
.prose p,.prose li{color:#504943}
.prose a{color:var(--rust);text-decoration:underline}
.reading-queue{border-top:1px solid var(--line)}
.queue-row{display:grid;grid-template-columns:80px 1.1fr 220px 90px;gap:26px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}
.queue-no{font-family:Georgia,serif;font-size:2.4rem;color:var(--rust)}
.queue-row span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.queue-row h2{font-family:Georgia,serif;font-size:1.7rem;line-height:1.18;margin:7px 0}
.queue-row p{color:var(--muted);margin:0}
.queue-row img{width:100%;height:140px;object-fit:cover}
.queue-row>a{font-weight:900;color:var(--rust)}
.article-opening-grid{display:grid;grid-template-columns:1fr 250px;gap:60px;align-items:end}
.article-meta{display:grid;gap:8px;font-size:.8rem;color:var(--muted);border-top:1px solid var(--line);padding-top:15px}
.article-body{padding:70px 0 100px}
.article-shell{display:grid;grid-template-columns:220px minmax(0,760px);gap:70px;align-items:start}
.margin-index{position:sticky;top:110px;display:grid;border-top:3px solid var(--rust);padding-top:12px}
.margin-index span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:8px}
.margin-index a{padding:9px 0;border-bottom:1px solid var(--line);font-size:.9rem}
.longform{max-width:none}
.article-image{width:100%;height:470px;object-fit:cover;margin-bottom:32px}
.inline-image{width:100%;height:330px;object-fit:cover;margin:20px 0}
.longform section{margin-bottom:40px}
.longform blockquote{font-family:Georgia,serif;font-size:1.25rem;margin:28px 0;padding:18px 24px;border-left:4px solid var(--mustard);background:#efe7db}
.disclaimer-note{margin-top:45px;padding:22px 24px;background:#f4e7d6;border-left:5px solid var(--rust)}
.faq-list{max-width:880px;display:grid;gap:0;border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{cursor:pointer;font-weight:800;padding:20px 40px 20px 0;position:relative}
.faq-list summary:after{content:"+";position:absolute;right:0;font-size:1.5rem;color:var(--rust)}
.faq-list details[open] summary:after{content:"−"}
.faq-list p{color:var(--muted);padding:0 0 20px;margin:0}
.contact-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}
.contact-details{display:grid;align-content:start;gap:6px;border-top:4px solid var(--rust);padding-top:18px}
.contact-details span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-top:15px}
.contact-details p{margin:0;overflow-wrap:anywhere}
.contact-phone{font-weight:800}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;background:#fff;padding:30px;border:1px solid var(--line)}
.contact-form label{display:grid;gap:7px;font-weight:700}
.contact-form label:nth-child(3),.contact-form label:nth-child(4){grid-column:1/-1}
.contact-form input,.contact-form textarea{width:100%;border:1px solid #c9c0b4;background:#fff;padding:12px 13px}
.contact-form textarea{resize:vertical}
.contact-form .btn{grid-column:1/-1;justify-self:start}
.legal{background:#fff;padding:38px;border-left:6px solid var(--mustard)}
.status-page{min-height:68vh;display:grid;place-items:center;padding:70px 0}
.status-card{text-align:center;max-width:760px}
.status-card>span{display:block;font-family:Georgia,serif;font-size:clamp(4rem,11vw,8rem);color:var(--rust);line-height:1}
.status-card h1{font-family:Georgia,serif;font-size:2.4rem}
.site-footer{background:#211d19;color:#d8d0c8;padding:66px 0 24px}
.footer-top{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:50px}
.footer-top>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.footer-intro p,.footer-contact p{color:#aaa098;margin:0}
.footer-brand{font-family:Georgia,serif;font-size:1.6rem;color:#fff}
.footer-index a{font-size:.9rem}
.footer-contact span:first-child{color:#fff;font-weight:800}
.footer-contact .contact-phone{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:42px;padding-top:18px;display:flex;justify-content:space-between;font-size:.8rem;color:#8f867f}
.cookie-note{position:fixed;z-index:60;left:20px;right:20px;bottom:20px;max-width:860px;margin:0 auto;background:#fff;box-shadow:var(--shadow);padding:16px 18px;display:none;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--line)}
.cookie-note.is-visible{display:flex}
.cookie-note p{margin:0;font-size:.85rem;color:var(--muted)}
.cookie-note p a{text-decoration:underline;color:var(--rust)}
.cookie-note>div{display:flex;gap:8px;flex-shrink:0}
@media(max-width:980px){
  .menu-toggle{display:block}
  .primary-menu{display:none;position:absolute;left:18px;right:18px;top:78px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:12px;flex-direction:column}
  .primary-menu.is-open{display:flex}
  .primary-menu a{text-align:center}
  .masthead-grid,.contents-heading,.chapter-layout,.city-grid,.closing-grid,.about-manifesto,.article-opening-grid,.article-shell,.contact-layout{grid-template-columns:1fr}
  .issue-label{max-width:220px}
  .chapter-number,.manifesto-side,.margin-index{position:static}
  .chapter-number{grid-template-columns:auto auto;align-items:end;justify-content:start;gap:10px}
  .chapter-number strong{font-size:2.7rem}
  .chapter-image img{height:360px}
  .queue-row{grid-template-columns:65px 1fr 170px}
  .queue-row>a{grid-column:2/3}
  .footer-top{grid-template-columns:1fr 1fr}.footer-intro{grid-column:1/-1}
}
@media(max-width:700px){
  .container{width:min(calc(100% - 28px),var(--container))}
  .brand-copy small{display:none}
  .masthead{padding-top:48px}
  .masthead-title h1,.page-title h1,.article-opening h1{font-size:2.55rem}
  .cover-strip{grid-template-columns:1fr;padding:0}
  .cover-strip img{height:280px}
  .cover-caption{padding:22px}
  .contents-block{padding:60px 0}
  .chapter-index a{grid-template-columns:48px 1fr;gap:14px}
  .chapter-index small{grid-column:2/3}
  .chapter-section,.section{padding:66px 0}
  .chapter-layout{gap:28px}
  .chapter-image img{height:300px}
  .food-pair{grid-template-columns:1fr}
  .food-pair img:first-child{grid-column:auto;height:260px}
  .food-pair img{height:230px}
  .mini-table>div{grid-template-columns:1fr;gap:5px}
  .city-grid img,.closing-grid img{height:300px}
  .queue-row{grid-template-columns:48px 1fr;gap:14px}
  .queue-row img{grid-column:1/-1;height:220px}
  .queue-row>a{grid-column:2/3}
  .article-image{height:300px}
  .inline-image{height:240px}
  .contact-form{grid-template-columns:1fr;padding:22px}
  .contact-form label,.contact-form label:nth-child(3),.contact-form label:nth-child(4){grid-column:1}
  .contact-form .btn{grid-column:1}
  .footer-top{grid-template-columns:1fr}.footer-intro{grid-column:auto}
  .footer-bottom{flex-direction:column;gap:8px}
  .cookie-note{left:12px;right:12px;bottom:12px;flex-direction:column;align-items:stretch}
  .cookie-note>div{width:100%}.cookie-note .btn{flex:1}
}
@media(max-width:390px){
  .brand-mark{width:40px;height:40px;flex-basis:40px}
  .brand-copy strong{font-size:.95rem}
  .masthead-title h1,.page-title h1,.article-opening h1{font-size:2.15rem}
}
