/* Shared visual language for articles, archives, directory and service tools. */
:root{
  --ui-ink:#171717;--ui-text:#343434;--ui-muted:#72726d;--ui-line:#deded8;--ui-soft:#f5f4f0;
  --ui-accent:#B22222;--ui-paper:#fff;--ui-radius:12px;--ui-shadow:0 12px 34px rgba(18,18,18,.08);
  --ui-serif:"Noto Serif Devanagari","Source Serif 4",Georgia,serif;
  --ui-sans:"Noto Sans Devanagari",Inter,Arial,sans-serif;
  --ui-serif-en:"Source Serif 4",Georgia,serif;--ui-sans-en:Inter,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{background:var(--ui-paper);scroll-behavior:smooth}
body{margin:0!important;background:var(--ui-paper)!important;color:var(--ui-ink)!important;font-family:var(--ui-sans)!important;-webkit-font-smoothing:antialiased}
body,button,input,textarea,select{font-family:var(--ui-sans)!important}
html[lang="en"] body,html[lang="en"] button,html[lang="en"] input,html[lang="en"] textarea,html[lang="en"] select{font-family:var(--ui-sans-en)!important}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
h1,h2,h3,h4{font-family:var(--ui-serif)!important;line-height:1.35!important;letter-spacing:-.018em!important;overflow-wrap:anywhere!important}
html[lang="en"] h1,html[lang="en"] h2,html[lang="en"] h3,html[lang="en"] h4{font-family:var(--ui-serif-en)!important;line-height:1.12!important;letter-spacing:-.022em!important}
html[lang="ne"] h1,html[lang="ne"] h2,html[lang="ne"] h3,html[lang="ne"] h4{letter-spacing:0!important}
.content-header,.service-header,.archive-header,.directory-header{
  position:sticky!important;top:0!important;z-index:30!important;background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--ui-line)!important;box-shadow:none!important
}
.content-header{min-height:76px!important;padding:0 max(20px,calc((100% - 1240px)/2))!important;display:grid!important;grid-template-columns:190px minmax(0,1fr) auto!important;align-items:center!important}
.content-brand{min-width:0!important}
.content-brand span{display:none!important}
.content-brand:after{content:"";display:block;width:174px;height:54px;background:url("assets/brand/talks-of-tarai-logo-cropped.png") center/contain no-repeat}
.content-nav{display:flex!important;justify-content:center!important;overflow:auto!important}
.content-nav a{min-height:76px!important;display:flex!important;align-items:center!important;padding:0 15px!important;border-left:0!important;border-right:0!important;font:650 12px/1 var(--ui-sans)!important;white-space:nowrap!important}
.content-nav a:hover{color:var(--ui-accent)!important;background:var(--ui-soft)!important}
.content-admin{min-height:40px!important;display:flex!important;align-items:center!important;padding:0 13px!important;border-radius:8px!important;background:var(--ui-ink)!important;color:#fff!important;font-size:11px!important}
#content-root,.archive-main,.directory-main,.service-header+main,body>main{width:min(1180px,calc(100% - 40px))!important;margin-inline:auto!important}
.content-hero,.post-hero,.archive-intro,.directory-intro,.intro{
  padding:48px 0 30px!important;border-bottom:2px solid var(--ui-ink)!important
}
.content-hero h1,.post-hero h1,.archive-intro h1,.directory-intro h1,.intro h1{
  margin:8px 0 12px!important;font-size:clamp(40px,6vw,72px)!important;line-height:1.22!important
}
.content-hero>p,.post-hero>p,.archive-intro>p,.directory-intro>p,.intro>span{
  max-width:780px!important;color:var(--ui-muted)!important;font-size:clamp(15px,1.5vw,19px)!important;line-height:1.65!important
}
.content-share{display:flex!important;flex-wrap:wrap!important;gap:8px!important;padding:16px 0!important;border-bottom:1px solid var(--ui-line)!important}
.content-share a,.content-share button{min-height:38px!important;padding:0 13px!important;border:1px solid var(--ui-line)!important;border-radius:999px!important;background:#fff!important;font:650 10px/1 var(--ui-sans)!important}
.content-share a:hover,.content-share button:hover{background:var(--ui-ink)!important;color:#fff!important}
.content-layout,.post-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:44px!important;padding:34px 0 60px!important}
.content-body,.post-body{max-width:760px!important;font:450 17px/1.82 var(--ui-serif)!important;color:var(--ui-text)!important}
.content-body h2,.post-body h2{margin:36px 0 12px!important;font-size:30px!important}
.content-media img,.post-media img,.content-cover,.post-cover{width:100%!important;border-radius:var(--ui-radius)!important;background:var(--ui-soft)!important}
.content-aside,.post-aside{border-left:1px solid var(--ui-line)!important;padding-left:24px!important}
.district-story-grid,.related-grid,.archive-grid,.directory-grid,.service-grid,.links,.tools{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important
}
.district-story-card,.related-card,.archive-card,.directory-card,.service-grid a,.links a,.panel{
  min-width:0!important;padding:18px!important;border:1px solid var(--ui-line)!important;border-radius:var(--ui-radius)!important;background:#fff!important;box-shadow:none!important
}
.district-story-card:hover,.related-card:hover,.archive-card:hover,.directory-card:hover,.service-grid a:hover,.links a:hover{
  transform:translateY(-2px)!important;border-color:#bdbdb7!important;box-shadow:var(--ui-shadow)!important
}
.district-story-card h3,.related-card h3,.archive-card h3,.directory-card h3,.service-grid h2,.links b,.panel h2{font-size:21px!important;line-height:1.4!important}
.district-story-card p,.related-card p,.archive-card p,.directory-card p,.service-grid p,.links span{color:var(--ui-muted)!important;font-size:13px!important;line-height:1.55!important}
.plain-page-article{max-width:820px!important;margin:0 auto!important;padding:48px 0 70px!important}
.plain-page-article h1{font-size:clamp(42px,6vw,70px)!important}
.plain-page-article p,.plain-page-article li{font-size:17px!important;line-height:1.82!important;color:var(--ui-text)!important}
.service-masthead{width:min(1180px,calc(100% - 40px))!important;height:82px!important;margin:auto!important;display:grid!important;grid-template-columns:46px 1fr 70px!important;align-items:center!important}
.service-masthead>a:not(.home-link){justify-self:center!important}.service-masthead img{width:190px!important;height:64px!important;object-fit:contain!important}
.service-masthead button{width:42px!important;height:42px!important;border:1px solid var(--ui-line)!important;border-radius:50%!important;background:#fff!important}
.service-header nav{min-height:42px!important;display:flex!important;justify-content:center!important;gap:6px!important;border-top:1px solid var(--ui-line)!important}
.service-header nav a{display:flex!important;align-items:center!important;padding:0 13px!important;font-size:12px!important}
.home-link{padding:10px!important;border-radius:8px!important;background:var(--ui-ink)!important;color:#fff!important;font-size:11px!important}
.panel,.links{margin-top:24px!important}.panel{padding:22px!important}
input,select,textarea{min-height:46px!important;padding:10px 12px!important;border:1px solid var(--ui-line)!important;border-radius:8px!important;background:#fff!important}
form button{min-height:44px!important;padding:0 16px!important;border:0!important;border-radius:8px!important;background:var(--ui-accent)!important;color:#fff!important;font-weight:700!important}
.content-footer{padding:30px max(20px,calc((100% - 1180px)/2))!important;background:var(--ui-ink)!important;color:#fff!important}

@media(max-width:850px){
  .content-header{grid-template-columns:150px minmax(0,1fr) auto!important}.content-nav a{padding:0 9px!important}
  .content-layout,.post-layout{grid-template-columns:1fr!important}.content-aside,.post-aside{border-left:0!important;border-top:1px solid var(--ui-line)!important;padding:22px 0 0!important}
  .district-story-grid,.related-grid,.archive-grid,.directory-grid,.service-grid,.links,.tools{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:650px){
  #content-root,.archive-main,.directory-main,.service-header+main,body>main{width:calc(100% - 28px)!important}
  .content-header{min-height:68px!important;padding:0 14px!important;grid-template-columns:minmax(0,1fr) auto!important}.content-brand:after{width:145px!important;height:50px!important}
  .content-nav{display:none!important}.content-admin{font-size:0!important;width:40px!important;height:40px!important;padding:0!important;border-radius:50%!important;justify-content:center!important}.content-admin:after{content:"↗";font-size:16px!important}
  .content-hero,.post-hero,.archive-intro,.directory-intro,.intro{padding:30px 0 22px!important}
  .content-hero h1,.post-hero h1,.archive-intro h1,.directory-intro h1,.intro h1{font-size:38px!important;line-height:1.3!important}
  .content-body,.post-body{font-size:16px!important;line-height:1.78!important}
  .district-story-grid,.related-grid,.archive-grid,.directory-grid,.service-grid,.links,.tools{grid-template-columns:1fr!important}
  .service-masthead{width:calc(100% - 28px)!important;height:70px!important;grid-template-columns:42px 1fr 54px!important}.service-masthead img{width:155px!important;height:54px!important}
  .service-header nav{justify-content:flex-start!important;overflow:auto!important;padding:0 14px!important}.service-header nav a{flex:0 0 auto!important}
  .panel{padding:16px!important}
}

/* Consistent archive and directory density under the shared public shell. */
.archive-shell,.directory-shell{width:min(1180px,calc(100% - 40px))!important;margin-inline:auto!important}
.archive-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))!important;gap:16px!important;align-items:start!important}
.archive-card{min-width:0!important;max-width:none!important}.archive-image{aspect-ratio:16/10!important;background-size:cover!important;background-position:center!important;border-radius:10px!important}
.archive-card h2{font-size:23px!important}.archive-index{display:flex!important;gap:7px!important;overflow:auto!important;scrollbar-width:none!important}.archive-index::-webkit-scrollbar{display:none!important}.archive-index a{flex:0 0 auto!important}
.directory-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))!important}
@media(max-width:650px){.archive-shell,.directory-shell{width:calc(100% - 28px)!important}.archive-grid{grid-template-columns:1fr!important}.archive-card h2{font-size:21px!important}}
