/* ==========================================================================
   Nandi County — inner page styles
   Reuses the design tokens defined in nandi-home.css (:root).
   Loaded alongside nandi-home.css on redesigned inner views.
   ========================================================================== */

/* ---------- PAGE BANNER ---------- */
.page-banner{position:relative;background:radial-gradient(120% 130% at 88% -20%, #1b4a32 0%, var(--green-900) 58%);
  color:#eef4ee;overflow:hidden}
.page-banner::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='90'%3E%3Cpath d='M0 90 Q40 60 80 90 T160 90' fill='none' stroke='%23ffffff' stroke-opacity='.05' stroke-width='2'/%3E%3C/svg%3E");
  background-size:200px 110px;opacity:.5;mask-image:linear-gradient(180deg,transparent,#000 60%)}
.page-banner .crest-watermark{position:absolute;right:-50px;bottom:-50px;width:300px;opacity:.06;color:#fff;pointer-events:none}
.page-banner .wrap{position:relative;padding-block:clamp(34px,5vw,60px)}
.page-banner h1{color:#fff;font-size:clamp(1.9rem,4vw,3rem);margin-top:14px;max-width:20ch}
.page-banner .lead{margin-top:14px;color:#cfe0d3;max-width:56ch;font-size:1.05rem}
.page-banner .eyebrow{color:var(--gold-soft)}
.page-banner .eyebrow::before{background:var(--gold)}

/* ---------- BREADCRUMB ---------- */
.breadcrumb{font-size:.82rem;color:#a9c0ae;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.breadcrumb a{color:#cfe0d3}
.breadcrumb a:hover{color:#fff}
.breadcrumb .sep{opacity:.5}
.breadcrumb [aria-current]{color:var(--gold-soft)}

/* ---------- ARTICLE / DEPARTMENT LAYOUT ---------- */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;
  padding-block:clamp(40px,6vw,68px)}
.layout.no-aside{grid-template-columns:minmax(0,760px);justify-content:center}
.content-main{min-width:0}

/* article meta row */
.meta-row{display:flex;gap:18px;flex-wrap:wrap;align-items:center;color:var(--slate);font-size:.88rem;
  padding-bottom:20px;margin-bottom:26px;border-bottom:1px solid var(--line)}
.meta-row .cat{color:var(--green-700);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}
.meta-row .dot{width:4px;height:4px;border-radius:50%;background:var(--line-strong)}
.feat-img{width:100%;border-radius:var(--radius);margin-bottom:28px;box-shadow:var(--shadow)}

/* ---------- PROSE ---------- */
.prose{color:#23291f;font-size:1.06rem;line-height:1.75}
.prose > *+*{margin-top:1.1em}
.prose h2{font-family:var(--display);font-size:1.7rem;color:var(--green-900);margin-top:1.8em;line-height:1.2}
.prose h3{font-family:var(--display);font-size:1.32rem;color:var(--green-900);margin-top:1.6em}
.prose p{margin:0}
.prose a{color:var(--green-700);text-decoration:underline;text-underline-offset:3px;font-weight:500}
.prose a:hover{color:var(--green-900)}
.prose ul,.prose ol{padding-left:1.3em;display:flex;flex-direction:column;gap:.4em}
.prose li{padding-left:.2em}
.prose ul li::marker{color:var(--gold)}
.prose blockquote{border-left:3px solid var(--gold);background:var(--green-050);
  padding:16px 22px;border-radius:0 10px 10px 0;font-family:var(--display);font-size:1.2rem;color:var(--green-900)}
.prose img{border-radius:var(--radius);height:auto}
.prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.prose table{width:100%;border-collapse:collapse;font-size:.94rem}
.prose th,.prose td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line)}
.prose th{background:var(--green-050);color:var(--green-900);font-weight:700}

/* ---------- SIDEBAR ---------- */
.sidebar-col{display:flex;flex-direction:column;gap:18px;align-self:start;position:sticky;top:104px}
.sidebar-card{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.sidebar-card.dark{background:var(--green-900);border-color:transparent;color:#e7efe8}
.sidebar-card h4{font-family:var(--sans);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--green-700);font-weight:700;margin:0 0 14px}
.sidebar-card.dark h4{color:var(--gold-soft)}
.sidebar-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.sidebar-card li{border-top:1px solid var(--line);padding:11px 0}
.sidebar-card li:first-child{border-top:0;padding-top:0}
.sidebar-card.dark li{border-color:rgba(255,255,255,.14)}
.sidebar-card a{font-weight:600;color:var(--green-900);display:flex;justify-content:space-between;gap:10px;align-items:center}
.sidebar-card.dark a{color:#fff}
.sidebar-card a:hover{color:var(--green-600)}
.sidebar-card .row{display:flex;gap:11px;align-items:flex-start;font-size:.9rem;color:var(--slate);padding:8px 0}
.sidebar-card .row svg{flex-shrink:0;margin-top:2px;color:var(--green-600)}
.sidebar-card.dark .row{color:#bcd0c1}

/* ---------- BACK LINK / SHARE ---------- */
.backlink{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--green-700);margin-bottom:22px}
.backlink:hover{color:var(--green-900)}
.share{display:flex;gap:10px;align-items:center;margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}
.share span{font-size:.82rem;color:var(--slate);font-weight:600}
.share a{width:36px;height:36px;border:1px solid var(--line-strong);border-radius:9px;display:grid;place-items:center;color:var(--green-900)}
.share a:hover{background:var(--green-050)}

/* ---------- SECTION HEADING (related) ---------- */
.inner-sec{padding-block:clamp(40px,5vw,60px);border-top:1px solid var(--line);background:var(--paper-2)}
.inner-sec h2{font-size:1.6rem;color:var(--green-900);margin-bottom:24px}

/* ---------- TENDER ARCHIVE ---------- */
.tender-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:26px}
.filter{display:inline-flex;gap:6px;background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:5px}
.filter a{font-size:.85rem;font-weight:600;color:var(--slate);padding:7px 15px;border-radius:999px}
.filter a[aria-current]{background:var(--green-700);color:#fff}
.filter a:hover:not([aria-current]){color:var(--green-900)}

.tender-rows{display:flex;flex-direction:column;gap:14px}
.trow{display:grid;grid-template-columns:8px 1fr auto;gap:22px;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px 22px 0;
  overflow:hidden;transition:.16s}
.trow:hover{border-color:var(--green-600);box-shadow:var(--shadow)}
.trow .accent{background:var(--gold);align-self:stretch}
.trow.closed .accent{background:var(--line-strong)}
.trow .body .ref{font-size:.74rem;letter-spacing:.05em;color:var(--slate);font-weight:600}
.trow .body h3{font-size:1.12rem;color:var(--green-900);margin:5px 0 8px;font-weight:600}
.trow:hover .body h3{color:var(--green-700)}
.trow .tags{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.status-pill{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  padding:4px 11px;border-radius:999px;background:var(--green-050);color:var(--green-700)}
.status-pill.closed{background:#efeae0;color:#7a6a45}
.type-tag{font-size:.8rem;color:var(--slate)}
.trow .close-col{text-align:right;padding-right:0}
.trow .close-col .lbl{font-size:.72rem;color:var(--slate);text-transform:uppercase;letter-spacing:.08em}
.trow .close-col .val{font-family:var(--display);font-weight:600;color:var(--green-900);font-size:1.02rem;margin-top:2px}
.trow.closed .close-col .val{color:var(--slate)}

/* ---------- PAGINATION ---------- */
.pagination{display:flex;gap:8px;justify-content:center;margin-top:38px;flex-wrap:wrap}
.pagination .page-numbers{min-width:42px;height:42px;display:inline-grid;place-items:center;padding:0 12px;
  border:1px solid var(--line);border-radius:10px;font-weight:600;color:var(--green-900);background:#fff}
.pagination .page-numbers:hover{background:var(--green-050)}
.pagination .page-numbers.current{background:var(--green-700);color:#fff;border-color:var(--green-700)}

/* ---------- TENDER DETAIL ---------- */
.tender-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:30px}
.tender-facts .f{background:var(--paper-2);padding:18px 20px}
.tender-facts .f .lbl{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--slate);font-weight:700}
.tender-facts .f .val{font-family:var(--display);font-weight:600;color:var(--green-900);font-size:1.1rem;margin-top:6px;line-height:1.2}
.tender-facts .f.due .val{color:var(--gold)}
.docs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.docs a{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:13px 16px;
  background:#fff;font-weight:600;color:var(--green-900)}
.docs a:hover{border-color:var(--green-600);background:var(--green-050)}
.docs svg{color:var(--green-600);flex-shrink:0}
.step{display:flex;gap:14px;padding:11px 0}
.step .num{width:26px;height:26px;border-radius:50%;background:var(--gold);color:var(--green-900);
  display:grid;place-items:center;font-weight:700;font-size:.85rem;flex-shrink:0}
.step .tx{font-size:.9rem}
.sidebar-card.dark .step .tx{color:#d6e3d9}

/* ---------- RESPONSIVE ---------- */
@media (max-width:900px){
  .layout{grid-template-columns:1fr;gap:34px}
  .sidebar-col{position:static}
  .tender-facts{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  .trow{grid-template-columns:6px 1fr;gap:16px;padding:18px 18px 18px 0}
  .trow .close-col{grid-column:2;text-align:left;margin-top:4px}
  .tender-facts{grid-template-columns:1fr 1fr}
}

/* ---------- LEADERSHIP / PEOPLE ---------- */
.people-feature{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:42px}
.leader-card{display:flex;gap:20px;background:var(--paper-2);border:1px solid var(--line);
  border-radius:var(--radius);padding:22px;align-items:center}
.leader-card .photo{width:108px;height:128px;border-radius:12px;flex-shrink:0;overflow:hidden;
  background:linear-gradient(160deg,var(--green-700),var(--green-900));display:grid;place-items:center;
  color:rgba(255,255,255,.85);font-family:var(--display);font-size:2rem;font-weight:700}
.leader-card .photo img{width:100%;height:100%;object-fit:cover}
.leader-card .role-pill{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.leader-card .nm{font-family:var(--display);font-size:1.25rem;font-weight:600;color:var(--green-900);margin:5px 0 2px}
.leader-card .ti{font-size:.9rem;color:var(--slate)}

.people-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.person-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.16s}
.person-card:hover{border-color:var(--green-600);transform:translateY(-3px);box-shadow:var(--shadow)}
.person-card .photo{aspect-ratio:4/5;overflow:hidden;background:linear-gradient(160deg,var(--green-700),var(--green-900));
  display:grid;place-items:center;color:rgba(255,255,255,.8);font-family:var(--display);font-size:2.2rem;font-weight:700}
.person-card .photo img{width:100%;height:100%;object-fit:cover}
.person-card .info{padding:16px 18px}
.person-card .nm{font-weight:700;color:var(--green-900);line-height:1.2}
.person-card .role{font-size:.85rem;color:var(--slate);margin-top:3px}

/* ---------- SEARCH RESULTS ---------- */
.search-results{display:flex;flex-direction:column}
.search-item{padding:24px 0;border-top:1px solid var(--line)}
.search-item:first-child{border-top:0}
.search-item .ptype{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--green-700)}
.search-item h3{font-size:1.25rem;color:var(--ink);margin:6px 0;font-weight:600}
.search-item:hover h3{color:var(--green-700)}
.search-item p{color:var(--slate);font-size:.92rem}
.search-item .url{font-size:.78rem;color:var(--green-600);margin-top:7px;word-break:break-all}
.nandi-searchform{display:flex;gap:10px;max-width:520px;margin-top:8px}
.nandi-searchform input[type=search]{flex:1;padding:13px 16px;border:1px solid var(--line-strong);
  border-radius:10px;font:inherit;background:#fff}
.nandi-searchform button{border:0;cursor:pointer}
.empty-state{text-align:center;padding:50px 0;max-width:560px;margin-inline:auto}
.empty-state .ico{width:64px;height:64px;border-radius:16px;background:var(--green-050);color:var(--green-700);
  display:grid;place-items:center;margin:0 auto 18px}
.empty-state h2{font-size:1.5rem;color:var(--green-900);margin-bottom:8px}
.empty-state p{color:var(--slate);margin-bottom:22px}

/* ---------- 404 ---------- */
.notfound{text-align:center;padding-block:clamp(56px,9vw,110px)}
.notfound .big{font-family:var(--display);font-size:clamp(5rem,16vw,9rem);font-weight:700;
  color:var(--green-900);line-height:.9;letter-spacing:-.03em}
.notfound .big span{color:var(--gold)}
.notfound h1{font-size:clamp(1.5rem,3vw,2rem);color:var(--green-900);margin:10px 0 12px}
.notfound p{color:var(--slate);max-width:46ch;margin:0 auto 26px}
.notfound .quick{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:26px}

@media (max-width:900px){.people-grid{grid-template-columns:repeat(2,1fr)}.people-feature{grid-template-columns:1fr}}
@media (max-width:520px){.people-grid{grid-template-columns:1fr}.leader-card{flex-direction:column;text-align:center;align-items:center}}
