/* /site-typography.css */
/* Shared public-page type scale. Keep reader-selected text sizes independent. */
:root{
  --site-title-size:48px;
  --site-section-size:32px;
  --site-body-size:17px;
}
@font-face{
  font-family:"Tiro Devanagari Hindi";
  src:url("/fonts/tiro-devanagari-hindi-regular.ttf") format("truetype");
  font-style:normal;font-weight:400;font-display:swap;
}
html[lang="hi"] body,html[lang="hi"] body *{
  font-family:"Tiro Devanagari Hindi",serif!important;
}
/* These roles share sizes across home, catalogue, articles, Gita and Sarathi. */
body h1,
body .hero.hero-claim .record-hero-heading h1{
  font-size:var(--site-title-size)!important;
  line-height:1.45!important;
  letter-spacing:normal!important;
  overflow-wrap:anywhere;
}
body h2:not(.original-content h2){
  font-size:var(--site-section-size)!important;
  line-height:1.5!important;
}
body :is(.page-intro,.original-content,.gita-hero-description,.wc-intro,.hero-description,.hero-subtitle,.hero-lead,.hero-text>p,.hero-title>p,.profile-summary-intro,.book-detail>p){
  font-size:var(--site-body-size);
  line-height:1.9;
}
/* Only the two exhibition photo-group headings are slightly smaller. */
body #exhibition-book-fair-heading,body #exhibition-tea-heading{font-size:26px!important}
/* Keep the Exhibition title close to its first photo-group heading. */
body:has(.exhibition-group) .page-heading{padding-bottom:10px!important}
body:has(.exhibition-group) .page-heading h1{margin-bottom:0!important}
body .exhibition-group:first-child>h2{margin-top:12px}
body .exhibition-group+.exhibition-group{border-top:2px solid #fff;margin-top:18px;padding-top:18px}
/* Navigation shared by the four gallery detail pages. */
body .gallery-page-switcher{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}
body .gallery-page-switcher[data-position="bottom"]{margin:28px 0 0}
body .gallery-page-switcher :is(a,span){display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 13px;border:1px solid #a36c2b;border-radius:4px;background:#fff7e4;color:#57371e;font-size:15px;line-height:1.4;text-decoration:none}
body .gallery-page-switcher a:hover,body .gallery-page-switcher a:focus-visible{background:#f6e2b5}
body .gallery-page-switcher [aria-current="page"]{background:#e9e4d9;color:#6a5d4b;border-color:#bcb1a0;cursor:default}
/* Keep gallery-index and Media cards close to the footer. Both end in an empty archive-gallery. */
body:has(.archive-page>.collection-links) .archive-page{padding-bottom:24px}
body:has(.archive-page>.collection-links) .archive-page>.collection-links:has(+ .archive-gallery:empty){margin-bottom:0}
/* Article A− / A / A+ controls retain their saved, reader-selected size. */
body :is(.essay-sequence-item,.essay-page:not(.feature-essay)) .original-content{
  font-size:var(--essay-reading-size,var(--site-body-size));
}
@media(max-width:600px){
  :root{--site-title-size:36px;--site-section-size:28px;--site-body-size:16px}
}
@media print{
  :root{--site-title-size:26pt;--site-section-size:18pt;--site-body-size:12pt}
}

/* /site-layout.css */
/* One centered content boundary for every public page. */
:root{--site-content-width:1180px;--site-edge-space:32px}
html{scrollbar-gutter:stable}
@media(max-width:760px){:root{--site-edge-space:20px}}

body main.container,
body main .container,
body main .book-detail,
body .nbr-certificate-feature{
  box-sizing:border-box;
  width:min(var(--site-content-width),calc(100% - 2 * var(--site-edge-space)))!important;
  max-width:var(--site-content-width)!important;
  min-width:0;
  margin-inline:auto!important;
}
/* Nested content uses the parent's boundary, without a second pair of gutters. */
body main.container .container,
body main .container .container{
  width:100%!important;
  max-width:100%!important;
}
body main .archive-page>.original-content{
  width:100%;max-width:100%;margin-inline:0;
}
/* Keep the rotated portrait badge inside the same content edge. */
body main .hero-seal{right:8px}

/* Sarathi uses full-width section backgrounds with inner reading/form blocks. */
body[data-sarathi-brand] .ask-area{padding-inline:var(--site-edge-space)}
body[data-sarathi-brand] .ask-area :is(.intro,.ask-card,.answer-card,.no-answer,.prompt-row,.status,.sarathi-reading){
  box-sizing:border-box;
  width:100%;max-width:var(--site-content-width)!important;
  min-width:0;margin-inline:auto;
}
body[data-sarathi-brand] .hero-title{padding-inline:var(--site-edge-space)}
body[data-sarathi-brand] .hero-title :is(h1,p){
  box-sizing:border-box;width:100%;max-width:var(--site-content-width);margin-inline:auto;
}
body[data-sarathi-brand] .hero-title::before{width:min(var(--site-content-width),100%)}

@media print{
  body main.container,body main .container,body main .book-detail,body .nbr-certificate-feature{
    width:100%!important;max-width:none!important;
  }
}

/* /footer-signup.css */

/* Compact contact-footer email form; matches the public site's cream and brown palette. */
.contact-page{padding-bottom:42px}
.site-footer .footer-join{display:block;border-top:1px solid #e8d7aa;margin-top:25px;padding-top:22px}
.site-footer .footer-newsletter{display:block;max-width:710px;margin:0}
.site-footer .footer-newsletter>label:first-child{display:block;margin:0 0 7px;color:#39271e;font-size:14px;font-weight:400;line-height:1.6}
.site-footer .footer-newsletter-row{display:flex;align-items:center;gap:16px;max-width:620px}
.site-footer .footer-newsletter input[type=email]{flex:1 1 350px;width:100%;min-width:0;height:42px;border:1px solid #c6b480;border-radius:6px;padding:8px 12px;background:#fffdf8;color:#39271e;font-size:14px;outline:none}
.site-footer .footer-newsletter input[type=email]:focus{border-color:#765620;box-shadow:0 0 0 3px rgba(118,86,32,.14)}
.site-footer .footer-sarathi-link{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:42px;padding:8px 14px;border:1px solid #d5ac61;background:#fff8e6;color:#684719;border-radius:6px;font:inherit;font-size:14px;text-decoration:none;white-space:nowrap;cursor:pointer}
.site-footer .footer-sarathi-link:hover{background:#fbe8b7}
.site-footer .footer-sarathi-link:focus-visible{outline:3px solid #c89f58;outline-offset:2px}
.site-footer .footer-signup-hint{display:block;margin:8px 0 0;color:#765620;font-size:12px;line-height:1.5}
.site-footer .footer-newsletter .newsletter-status{min-height:19px;margin-top:6px;color:#684719;font-size:12px;font-weight:400}
.site-footer .footer-social{margin-top:18px}
@media(max-width:760px){.site-footer .footer-newsletter-row{max-width:none;flex-wrap:wrap}.site-footer .footer-newsletter input[type=email]{flex-basis:100%}}

/* On Contact, put signup below the right-hand footer links. */
.site-footer:has(.footer-join)>.container{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"brand nav" "social join" "credit join";column-gap:30px;row-gap:8px}
.site-footer:has(.footer-join) .footer-grid{display:contents}
.site-footer:has(.footer-join) .footer-brand{grid-area:brand}
.site-footer:has(.footer-join) .footer-nav{grid-area:nav}
.site-footer:has(.footer-join) .footer-join{grid-area:join;min-width:0;border-top:0;margin:0;padding:0}
.site-footer:has(.footer-join) .footer-newsletter{min-width:0}
.site-footer:has(.footer-join) .footer-newsletter-row{max-width:none}
.site-footer:has(.footer-join) .footer-sarathi-link{padding-inline:14px}
.site-footer:has(.footer-join) .footer-social{grid-area:social;margin:12px 0 0}
.site-footer:has(.footer-join)> .container>p{grid-area:credit;grid-column:1;margin:9px 0 0}
@media(max-width:760px){.site-footer:has(.footer-join)>.container{display:block}.site-footer:has(.footer-join) .footer-grid{display:grid;grid-template-columns:1fr}.site-footer:has(.footer-join) .footer-join{display:block;margin-top:14px}.site-footer:has(.footer-join) .footer-social{margin-top:22px}.site-footer:has(.footer-join)> .container>p{margin-top:22px}}

/* Sarathi's branded footer has a more specific old grid rule. */
body[data-sarathi-brand] .site-footer:has(.footer-join) .footer-grid{display:contents}
/* The compact form is the only subscriber form; the footer stays cream. */
.site-footer:has(.footer-join){background:#fff0cc!important;color:#765620!important}
.site-footer:has(.footer-join) .footer-newsletter .newsletter-status{border:0;padding:0}
.site-footer:has(.footer-join) .footer-newsletter .newsletter-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}

/* /author-brand.css */
/* The registered sign stays with the surname without changing line spacing. */
span.author-registered{display:inline!important;font:inherit!important;color:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;white-space:nowrap;margin:0!important;padding:0!important}
sup.author-registration{display:inline;font-family:Arial,sans-serif;font-size:.52em;font-weight:400;line-height:0;vertical-align:baseline;position:relative;top:-.65em;margin-inline-start:.12em;letter-spacing:0}

/* Compact Sarthi wordmark and mobile header controls. */
.site-header .sarthi-home-link{position:relative;display:inline-flex;flex:none;align-items:flex-start;gap:0;padding:0 0 8px;color:#174a40;text-decoration:none}
.site-header .sarthi-home-link .brand-copy{display:block;line-height:1}
.site-header .sarthi-home-link .brand-copy strong{display:block;color:#174a40;font:700 19px/1.15 "DM Sans","Noto Sans Devanagari",sans-serif;letter-spacing:-.035em}
.site-header .sarthi-logo-swoosh{position:absolute;left:8px;bottom:0;width:27px;height:9px;overflow:visible;color:#d9788e}
.site-header .header-controls{display:none}
@media(max-width:980px){
  .site-header .header-inner{height:70px;gap:12px}
  .site-header .header-controls{display:flex;flex:none;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto}
  .site-header .menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:38px;height:38px;padding:0;border:0;background:transparent;border-radius:4px;cursor:pointer}
  .site-header .menu-toggle span{display:block;width:21px;height:1.6px;background:#317e94}
  .site-header .header-mobile-lang{display:inline-flex;min-width:71px;min-height:40px;align-items:center;justify-content:center;padding:0 16px;border:1px solid #f0eee7;border-radius:24px;background:#fff;color:#174a40;font:600 13px/1 "Noto Sans Devanagari","DM Sans",sans-serif;text-decoration:none;white-space:nowrap}
  .site-header .primary-nav{display:none;position:absolute;top:70px;left:0;right:0;max-height:calc(100dvh - 70px);overflow-y:auto;flex-direction:column;align-items:stretch;gap:0;padding:18px 18px 24px;background:#fffdf8;box-shadow:0 15px 25px rgba(10,30,20,.12)}
  .site-header .primary-nav.is-open{display:flex}
  .site-header .primary-nav .lang-switch{display:none!important}
}
