/*
Theme Name: NayaBharat Child
Theme URI: https://nayabharatyojana.in
Description: GeneratePress child theme for Naya Bharat Yojana - sarkari-trust editorial design.
Author: Bipul
Template: generatepress
Version: 3.3.0
Text Domain: nayabharat-child
*/

/* ============ 1. DESIGN TOKENS ============ */
:root {
  --nb-saffron: #e8590c;
  --nb-saffron-soft: #fff1e8;
  --nb-navy: #16305c;
  --nb-navy-deep: #0e2142;
  --nb-green: #1e7d43;
  --nb-ink: #23272e;
  --nb-ink-soft: #667085;
  --nb-line: #e6e8ec;
  --nb-paper: #f7f8fa;
  --nb-radius: 10px;
  --nb-shadow: 0 1px 2px rgba(16, 24, 40, 0.06), 0 1px 3px rgba(16, 24, 40, 0.08);
  --nb-shadow-lift: 0 12px 24px -8px rgba(14, 33, 66, 0.18);
  --nb-font-head: "Tiro Devanagari Hindi", serif;
  --nb-font-body: "Mukta", sans-serif;
}

html,
body {
  overflow-x: clip;
}

body {
  background: var(--nb-paper);
  color: var(--nb-ink);
  font-family: var(--nb-font-body);
  font-size: 17px;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5 {
  line-height: 1.35;
}

/* ============ 2. TRICOLOR STRIP ============ */
.nb-tricolor {
  display: flex;
  height: 4px;
}

.nb-tricolor i {
  flex: 1;
}

.nb-tricolor i:nth-child(1) { background: var(--nb-saffron); }
.nb-tricolor i:nth-child(2) { background: #ffffff; }
.nb-tricolor i:nth-child(3) { background: var(--nb-green); }

/* ============ 3. HEADER ============ */
.site-header {
  background: #fff;
  border-bottom: 1px solid var(--nb-line);
}

.site-header .main-title,
.site-header .main-title a {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 27px;
  color: var(--nb-navy);
  line-height: 1.15;
}

.site-header .site-description {
  font-size: 12.5px;
  color: var(--nb-ink-soft);
  letter-spacing: 0.4px;
}

/* ============ 4. NAVIGATION ============ */
.main-navigation {
  background: var(--nb-navy);
  position: sticky;
  top: 0;
  z-index: 999;
  box-shadow: 0 2px 10px rgba(14, 33, 66, 0.25);
}

body.admin-bar .main-navigation {
  top: 32px;
}

.main-navigation .main-nav ul li a {
  color: #e8edf6;
  font-weight: 600;
  font-size: 15.5px;
  position: relative;
}

.main-navigation .main-nav ul li a::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 8px;
  height: 2.5px;
  background: var(--nb-saffron);
  border-radius: 2px;
  transform: scaleX(0);
  transition: transform 0.22s ease;
}

.main-navigation .main-nav ul li:hover > a::after,
.main-navigation .main-nav ul li.current-menu-item > a::after {
  transform: scaleX(1);
}

.main-navigation .main-nav ul li:hover > a,
.main-navigation .main-nav ul li.current-menu-item > a {
  color: #fff;
  background: transparent;
}

.main-navigation ul ul {
  background: var(--nb-navy-deep);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}

.main-navigation ul ul li a::after {
  display: none;
}

.main-navigation ul ul li a {
  color: #e8edf6;
}

.main-navigation ul ul li:hover > a {
  background: rgba(255, 255, 255, 0.06);
  color: #ffb27a;
}

.main-navigation .menu-toggle {
  color: #fff;
  background: transparent;
}

/* ============ 5. HOMEPAGE - HERO ============ */
.nb-hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  text-align: center;
}

.nb-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.09) 1px, transparent 1.4px);
  background-size: 26px 26px;
  -webkit-mask-image: radial-gradient(ellipse at center, black 30%, transparent 75%);
  mask-image: radial-gradient(ellipse at center, black 30%, transparent 75%);
  pointer-events: none;
}

.nb-hero > * {
  position: relative;
  z-index: 2;
}

.nb-hero h1 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: clamp(30px, 4.6vw, 50px);
  line-height: 1.25;
  color: #fff;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0.35em;
}

.nb-hero p {
  color: #b9c6dd;
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
  font-size: 17.5px;
}

.nb-hero .nb-hero-badge {
  display: inline-block;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.22);
  color: #ffd9bd;
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: 0.5px;
  padding: 5px 18px;
  border-radius: 99px;
  margin-bottom: 18px;
  max-width: none;
}

.nb-hero .wp-block-search {
  max-width: 560px;
  margin: 1.4em auto 1.5em;
}

.nb-hero .wp-block-search__inside-wrapper {
  background: #fff;
  border-radius: 99px;
  padding: 6px;
  border: 0;
  box-shadow: 0 18px 40px -12px rgba(0, 0, 0, 0.4);
}

.nb-hero .wp-block-search__input {
  border: 0;
  outline: 0;
  background: transparent;
  padding: 10px 20px;
  font-family: var(--nb-font-body);
  font-size: 16px;
  color: var(--nb-ink);
}

.nb-hero .wp-block-search__button {
  background: var(--nb-saffron) !important;
  color: #fff !important;
  border: 0;
  border-radius: 99px !important;
  padding: 10px 26px;
  font-weight: 700;
  font-size: 15.5px;
  transition: background 0.2s;
}

.nb-hero .wp-block-search__button:hover {
  background: #c94a08 !important;
}

.nb-hero .wp-block-button__link {
  background: rgba(255, 255, 255, 0.07) !important;
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff !important;
  font-size: 14.5px;
  font-weight: 600;
  padding: 8px 20px;
  border-radius: 99px !important;
  transition: all 0.2s;
}

.nb-hero .wp-block-button__link:hover {
  background: var(--nb-saffron) !important;
  border-color: var(--nb-saffron);
  transform: translateY(-1px);
}

.nb-hero .nb-stats {
  max-width: 720px;
  margin: 40px auto 0;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  padding-top: 22px;
  gap: 8px;
}

.nb-hero .nb-stats h3 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 26px;
  color: #fff;
  margin-bottom: 0;
}

.nb-hero .nb-stats p {
  font-size: 13.5px;
  color: #93a5c4;
  margin-top: 0;
}

/* ============ 6. HOMEPAGE - TICKER ============ */
.nb-ticker {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 12px;
  box-shadow: 0 16px 34px -18px rgba(14, 33, 66, 0.35);
  margin-top: -34px !important;
  position: relative;
  z-index: 5;
  display: flex;
  align-items: stretch;
  overflow: hidden;
  padding: 0 !important;
}

.nb-ticker .nb-ticker-tag {
  background: var(--nb-green);
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  padding: 14px 22px;
  white-space: nowrap;
  margin: 0;
  display: flex;
  align-items: center;
}

.nb-ticker .nb-ticker-items {
  padding: 14px 20px;
  font-size: 15px;
  margin: 0;
  display: flex;
  align-items: center;
}

.nb-ticker .nb-ticker-items strong {
  color: var(--nb-saffron);
}

/* ============ 7. HOMEPAGE - SECTIONS ============ */
.home .site-main .inside-article {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.home .site-main {
  margin: 0;
}

.home .entry-content .alignfull {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

.home .entry-content h2 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 30px;
  color: var(--nb-navy);
  position: relative;
  padding-left: 19px;
  margin-top: 1.8em;
  margin-bottom: 0.8em;
}

.home .entry-content h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 5px;
  border-radius: 3px;
  background: linear-gradient(var(--nb-saffron), #ff9a57);
}

.nb-viewall {
  text-align: right;
  margin-bottom: 2.2em;
}

.nb-viewall a {
  color: var(--nb-saffron) !important;
  font-weight: 700;
  font-size: 14.5px;
  text-decoration: none !important;
}

.nb-viewall a:hover {
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* ============ 8. POST CARDS (nb-grid) ============ */
.nb-grid .wp-block-post {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: var(--nb-radius);
  box-shadow: var(--nb-shadow);
  overflow: hidden;
  position: relative;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.nb-grid .wp-block-post:hover {
  transform: translateY(-4px);
  box-shadow: var(--nb-shadow-lift);
}

.nb-grid .wp-block-post-featured-image {
  margin: 0;
  overflow: hidden;
}

.nb-grid .wp-block-post-featured-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.nb-grid .wp-block-post:hover .wp-block-post-featured-image img {
  transform: scale(1.04);
}

.nb-grid .wp-block-post-terms {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 3;
  font-size: 0;
  margin: 0;
}

.nb-grid .wp-block-post-terms a {
  display: none;
  background: var(--nb-saffron);
  color: #fff !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.3px;
  padding: 4px 12px;
  border-radius: 99px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  text-decoration: none !important;
}

.nb-grid .wp-block-post-terms a:first-child {
  display: inline-block;
}

.nb-grid .wp-block-post-title {
  font-family: var(--nb-font-body);
  font-size: 17.5px;
  font-weight: 700;
  line-height: 1.5;
  padding: 14px 18px 4px;
  margin: 0;
}

.nb-grid .wp-block-post-title a {
  color: var(--nb-ink);
  text-decoration: none !important;
}

.nb-grid .wp-block-post-title a:hover {
  color: var(--nb-saffron);
}

.nb-grid .wp-block-post-date {
  display: block;
  padding: 4px 18px 16px;
  color: var(--nb-ink-soft);
  font-size: 13.5px;
}

/* ============ 9. ARCHIVE / CATEGORY ============ */
.archive .page-header {
  background:
    radial-gradient(600px 300px at 90% -20%, rgba(232, 89, 12, 0.3), transparent 60%),
    linear-gradient(140deg, var(--nb-navy) 0%, var(--nb-navy-deep) 100%);
  color: #fff;
  padding: 40px 30px;
  border-radius: 12px;
  margin-bottom: 30px;
  border: 0;
}

.archive .page-header h1 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  color: #fff;
  font-size: clamp(26px, 3.5vw, 38px);
  margin-bottom: 0;
}

.archive .page-header .taxonomy-description,
.archive .page-header p {
  color: #b9c6dd;
  margin: 8px 0 0;
  font-size: 16px;
}

.archive .site-main article .inside-article,
.blog .site-main article .inside-article,
.search .site-main article .inside-article {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: var(--nb-radius);
  box-shadow: var(--nb-shadow);
  padding: 0;
  overflow: hidden;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.archive .site-main article:hover .inside-article,
.blog .site-main article:hover .inside-article {
  transform: translateY(-3px);
  box-shadow: var(--nb-shadow-lift);
}

.archive article .post-image,
.blog article .post-image {
  margin: 0 0 14px;
}

.archive article .post-image img,
.blog article .post-image img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
}

.archive article .entry-header,
.archive article .entry-summary,
.archive article footer.entry-meta,
.archive article .entry-meta,
.blog article .entry-header,
.blog article .entry-summary,
.blog article footer.entry-meta,
.blog article .entry-meta,
.search article .entry-header,
.search article .entry-summary,
.search article footer.entry-meta {
  padding-left: 18px;
  padding-right: 18px;
}

.archive article,
.blog article {
  margin-bottom: 26px;
}

.archive .entry-title,
.blog .entry-title {
  font-size: 1.15em;
  line-height: 1.45;
  font-weight: 700;
}

.archive .entry-title a,
.blog .entry-title a {
  color: var(--nb-ink);
}

.archive .entry-title a:hover,
.blog .entry-title a:hover {
  color: var(--nb-saffron);
}

.archive article .entry-summary,
.blog article .entry-summary {
  font-size: 0.93em;
  color: var(--nb-ink-soft);
  padding-bottom: 16px;
}

.read-more {
  color: var(--nb-saffron) !important;
  font-weight: 700;
}

.page-numbers li .page-numbers {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 10px;
  color: var(--nb-ink);
  font-weight: 700;
}

.page-numbers li .page-numbers.current,
.page-numbers li .page-numbers:hover {
  background: var(--nb-navy);
  color: #fff;
  border-color: var(--nb-navy);
}

/* ============ 10. SINGLE POST ============ */
.single .site-main .inside-article {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 14px;
  box-shadow: var(--nb-shadow);
  padding: 38px 42px;
}

.single .entry-header .entry-title {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: clamp(26px, 3.4vw, 36px);
  line-height: 1.35;
  color: var(--nb-navy);
}

.single .entry-meta {
  color: var(--nb-ink-soft);
  font-size: 14px;
}

.single .entry-header {
  padding-bottom: 18px;
  border-bottom: 1px solid var(--nb-line);
  margin-bottom: 22px;
}

.single .post-image img,
.single .featured-image img {
  border-radius: 12px;
  width: 100%;
  height: auto;
}

.cat-links a {
  display: inline-block;
  background: var(--nb-saffron-soft);
  color: var(--nb-saffron) !important;
  padding: 3px 13px;
  border-radius: 99px;
  font-size: 12.5px;
  font-weight: 700;
  text-decoration: none !important;
}

.single .entry-content {
  font-size: 17px;
  line-height: 1.8;
}

.single .entry-content h2 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 27px;
  color: var(--nb-navy);
  margin-top: 1.8em;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--nb-line);
  position: relative;
}

.single .entry-content h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 56px;
  height: 2px;
  background: var(--nb-saffron);
}

.single .entry-content h3 {
  margin-top: 1.5em;
  color: var(--nb-navy);
  font-weight: 700;
}

.single .entry-content img {
  border-radius: var(--nb-radius);
  height: auto;
}

.single .entry-content blockquote {
  border-left: 4px solid var(--nb-saffron);
  background: var(--nb-saffron-soft);
  padding: 14px 18px;
  border-radius: 0 var(--nb-radius) var(--nb-radius) 0;
  font-style: normal;
}

.single .entry-content a,
.page .entry-content p a,
.page .entry-content li a {
  color: var(--nb-navy);
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 600;
}

.single .entry-content a:hover,
.page .entry-content p a:hover,
.page .entry-content li a:hover {
  color: var(--nb-saffron);
}

.entry-content h1 a,
.entry-content h2 a,
.entry-content h3 a,
.entry-content h4 a,
.wp-block-post-title a,
.entry-title a,
.gb-text a,
a.gb-text {
  text-decoration: none !important;
}

/* ============ 11. TABLES ============ */
.entry-content table {
  width: 100%;
  border-collapse: collapse;
  border-radius: var(--nb-radius);
  overflow: hidden;
  box-shadow: var(--nb-shadow);
  margin: 1.5em 0;
  font-size: 15.5px;
}

.entry-content table th {
  background: var(--nb-navy);
  color: #fff;
  padding: 12px 16px;
  text-align: left;
  font-weight: 600;
}

.entry-content table td {
  padding: 12px 16px;
  border-bottom: 1px solid var(--nb-line);
  background: #fff;
}

.entry-content table tr:nth-child(even) td {
  background: var(--nb-paper);
}

.entry-content table tr:hover td {
  background: var(--nb-saffron-soft);
}

/* ============ 12. INFO BOXES + APPLY BTN ============ */
.nb-notice,
.nb-important {
  border-left: 4px solid var(--nb-saffron);
  background: var(--nb-saffron-soft);
  padding: 16px 20px;
  border-radius: 0 var(--nb-radius) var(--nb-radius) 0;
  margin: 1.5em 0;
  font-size: 15.5px;
}

.nb-success {
  border-left: 4px solid var(--nb-green);
  background: #edf9f1;
  padding: 16px 20px;
  border-radius: 0 var(--nb-radius) var(--nb-radius) 0;
  margin: 1.5em 0;
  font-size: 15.5px;
}

.entry-content a.nb-apply-btn {
  display: inline-block;
  background: var(--nb-saffron);
  color: #fff !important;
  font-weight: 700;
  padding: 13px 34px;
  border-radius: 99px;
  font-size: 16px;
  text-decoration: none !important;
  box-shadow: 0 8px 20px -6px rgba(232, 89, 12, 0.5);
  transition: all 0.2s;
  margin: 6px 0 10px;
}

.entry-content a.nb-apply-btn:hover {
  background: #c94a08;
  transform: translateY(-1px);
  color: #fff !important;
}

/* ============ 13. TOC PLUS ============ */
#toc_container {
  background: #fafbfc !important;
  border: 1px solid var(--nb-line) !important;
  border-left: 4px solid var(--nb-saffron) !important;
  border-radius: 0 12px 12px 0;
  padding: 18px 24px !important;
  width: auto !important;
  font-size: 15px !important;
}

#toc_container .toc_title {
  font-weight: 700;
  color: var(--nb-navy);
}

#toc_container a {
  color: var(--nb-ink);
  text-decoration: none !important;
}

#toc_container a:hover {
  color: var(--nb-saffron);
}

/* ============ 14. BUTTONS + SEARCH GLOBAL ============ */
.button,
input[type="submit"] {
  background: var(--nb-saffron);
  color: #fff;
  border-radius: 99px;
  font-weight: 700;
  transition: background 0.2s ease;
}

.button:hover,
input[type="submit"]:hover {
  background: #c94a08;
  color: #fff;
}

.wp-block-search__input {
  border: 1px solid var(--nb-line);
  border-radius: 99px;
  padding: 10px 18px;
}

.wp-block-search__button {
  background: var(--nb-saffron) !important;
  color: #fff !important;
  border: 0;
  border-radius: 99px;
  padding: 10px 22px;
  font-weight: 700;
}

/* ============ 15. FOOTER ============ */
.site-footer {
  background: var(--nb-navy-deep);
  color: #aab8d2;
}

.site-footer a {
  color: #ffb27a;
}

.nb-footer {
  background: var(--nb-navy-deep);
  color: #aab8d2;
  border-top: 4px solid var(--nb-saffron);
  padding: 52px 24px 20px;
}

.nb-footer h4 {
  color: #fff;
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 21px;
  position: relative;
  padding-bottom: 10px;
  margin-bottom: 14px;
}

.nb-footer h4::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 2.5px;
  background: var(--nb-saffron);
  border-radius: 2px;
}

.nb-footer p {
  font-size: 14.5px;
  line-height: 1.8;
}

.nb-footer ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}

.nb-footer ul li {
  margin-bottom: 9px;
}

.nb-footer ul li a {
  color: #aab8d2;
  font-size: 14.5px;
  text-decoration: none;
  transition: all 0.15s;
}

.nb-footer ul li a::before {
  content: ">";
  color: var(--nb-saffron);
  margin-right: 8px;
  font-weight: 700;
}

.nb-footer ul li a:hover {
  color: #ffb27a;
  padding-left: 4px;
}

.nb-footer .nb-footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.09);
  margin-top: 30px;
  padding-top: 16px;
  font-size: 13.5px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}

.site-info {
  background: var(--nb-navy-deep);
  color: #aab8d2;
  font-size: 13.5px;
}

/* ============ 16. WIDGETS + COMMENTS ============ */
.widget-area .widget {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: var(--nb-radius);
  box-shadow: var(--nb-shadow);
}

.widget-area .widget-title {
  font-family: var(--nb-font-head);
  font-weight: 400;
  color: var(--nb-navy);
  padding-bottom: 8px;
}

.comments-area {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: var(--nb-radius);
  padding: 24px;
  margin-top: 24px;
}

/* ============ 17. MOBILE ============ */
@media (max-width: 768px) {
  body {
    font-size: 16px;
  }

  .nb-hero {
    padding-top: 48px !important;
    padding-bottom: 60px !important;
  }

  .nb-hero .nb-stats {
    margin-top: 26px;
  }

  .nb-ticker {
    margin-left: 14px !important;
    margin-right: 14px !important;
    flex-direction: column;
  }

  .nb-ticker .nb-ticker-tag {
    padding: 10px 18px;
  }

  .nb-ticker .nb-ticker-items {
    padding: 10px 18px 14px;
  }

  .home .entry-content h2 {
    font-size: 24px;
  }

  .single .site-main .inside-article {
    padding: 24px 18px;
  }

  .nb-footer {
    padding: 36px 18px 16px;
  }

  .nb-footer .nb-footer-bottom {
    flex-direction: column;
    text-align: center;
  }

  .entry-content table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
}

/* ============ 18. TICKER MARQUEE (v2.1.0) ============ */
.nb-ticker .nb-ticker-items {
  overflow: hidden;
  white-space: nowrap;
  flex: 1;
  display: flex;
}

.nb-ticker .nb-tk {
  display: inline-flex;
  align-items: center;
  animation: nbscroll 35s linear infinite;
}

.nb-ticker .nb-tk a {
  color: var(--nb-ink) !important;
  text-decoration: none !important;
  font-weight: 600;
}

.nb-ticker .nb-tk a:hover {
  color: var(--nb-saffron) !important;
}

.nb-ticker .nb-tk em {
  color: var(--nb-saffron);
  font-style: normal;
  margin: 0 20px;
}

.nb-ticker:hover .nb-tk {
  animation-play-state: paused;
}

@keyframes nbscroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}

/* ============ 19. NAV OVERRIDES (GP dynamic CSS fix) ============ */
.main-navigation .main-nav ul li:hover > a {
  color: #ffffff !important;
  background: transparent !important;
}

.main-navigation .main-nav ul li[class*="current"] > a {
  color: #ffffff !important;
  background: transparent !important;
}

.main-navigation .main-nav ul li[class*="current"] > a::after {
  transform: scaleX(1);
}

.main-navigation ul ul {
  background-color: var(--nb-navy-deep) !important;
}

.main-navigation ul ul li a {
  color: #e8edf6 !important;
}

.main-navigation ul ul li:hover > a,
.main-navigation ul ul li[class*="current"] > a {
  color: #ffb27a !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

/* ============ 20. SINGLE POST FOOTER (tags + prev-next) ============ */
.single footer.entry-meta {
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid var(--nb-line);
  font-size: 13.5px;
  line-height: 2.2;
}

/* Tags - subtle pills */
.single footer.entry-meta .tags-links a {
  display: inline-block;
  background: #eef1f5;
  color: var(--nb-ink-soft) !important;
  padding: 2px 13px;
  border-radius: 99px;
  font-size: 12.5px;
  font-weight: 600;
  text-decoration: none !important;
  margin: 2px 6px 2px 0;
  transition: all 0.15s;
}

.single footer.entry-meta .tags-links a:hover {
  background: var(--nb-saffron-soft);
  color: var(--nb-saffron) !important;
}

/* Prev / Next post links */
.single .nav-previous,
.single .nav-next {
  display: block;
  margin-top: 10px;
}

.single .nav-previous a,
.single .nav-next a {
  color: var(--nb-navy) !important;
  font-weight: 600;
  text-decoration: none !important;
}

.single .nav-previous a:hover,
.single .nav-next a:hover {
  color: var(--nb-saffron) !important;
}

/* Comments link chhupao agar comments band hain */
.single .comments-link {
  display: none;
}

/* ============ 21. BREADCRUMBS (Rank Math) ============ */
.rank-math-breadcrumb {
  font-size: 13.5px;
  color: var(--nb-ink-soft);
  margin-bottom: 16px;
}

.rank-math-breadcrumb a {
  color: var(--nb-navy);
  text-decoration: none;
  font-weight: 600;
}

.rank-math-breadcrumb a:hover {
  color: var(--nb-saffron);
}

.rank-math-breadcrumb .separator {
  margin: 0 8px;
  color: var(--nb-saffron);
}

.rank-math-breadcrumb .last {
  color: var(--nb-ink-soft);
}

/* ============ 22. FAQ ACCORDION (Rank Math FAQ block) ============ */
.rank-math-faq-item {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 10px;
  margin-bottom: 10px;
  overflow: hidden;
  box-shadow: var(--nb-shadow);
}

.rank-math-faq-item .rank-math-question {
  cursor: pointer;
  margin: 0 !important;
  padding: 14px 48px 14px 18px !important;
  font-size: 16.5px !important;
  font-weight: 700;
  color: var(--nb-navy) !important;
  border: 0 !important;
  position: relative;
  -webkit-user-select: none;
  user-select: none;
  transition: background 0.15s;
}

.rank-math-faq-item .rank-math-question:hover {
  background: var(--nb-saffron-soft);
}

.rank-math-faq-item .rank-math-question::before {
  display: none;
}

.rank-math-faq-item .rank-math-question::after {
  content: "\2212";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--nb-saffron);
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  display: grid;
  place-items: center;
  line-height: 1;
}

.rank-math-faq-item.nb-closed .rank-math-question::after {
  content: "+";
}

.rank-math-faq-item .rank-math-answer {
  padding: 2px 18px 16px !important;
  margin: 0 !important;
}

.rank-math-faq-item.nb-closed .rank-math-answer {
  display: none;
}

/* ============ 23. POST FOOTER FIX (overlap + prev-next buttons) ============ */
.single footer.entry-meta {
  line-height: 1.6;
}

.single footer.entry-meta .cat-links,
.single footer.entry-meta .tags-links {
  display: block;
  margin-bottom: 12px;
}

.single footer.entry-meta .cat-links a {
  margin: 4px 6px 4px 0;
}

.single footer.entry-meta .tags-links a {
  margin: 4px 6px 4px 0;
}

/* Prev/Next - button cards */
.single .nav-previous,
.single .nav-next {
  display: block;
  margin-top: 12px;
}

.single .nav-previous .gp-icon,
.single .nav-next .gp-icon {
  display: none;
}

.single .nav-previous a,
.single .nav-next a {
  display: block;
  background: var(--nb-paper);
  border: 1px solid var(--nb-line);
  border-radius: 10px;
  padding: 12px 18px;
  color: var(--nb-navy) !important;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.5;
  text-decoration: none !important;
  transition: all 0.15s;
}

.single .nav-previous a::before {
  content: "\2190 पिछली पोस्ट";
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: var(--nb-saffron);
  letter-spacing: 0.3px;
  margin-bottom: 2px;
}

.single .nav-next a::before {
  content: "अगली पोस्ट \2192";
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: var(--nb-saffron);
  letter-spacing: 0.3px;
  margin-bottom: 2px;
}

.single .nav-previous a:hover,
.single .nav-next a:hover {
  border-color: var(--nb-saffron);
  background: var(--nb-saffron-soft);
}

/* ============ 24. RELATED POSTS ============ */
.nb-related {
  margin-top: 30px;
}

.nb-related h3 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 25px;
  color: var(--nb-navy);
  position: relative;
  padding-left: 16px;
  margin-bottom: 16px;
}

.nb-related h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  bottom: 5px;
  width: 4px;
  border-radius: 3px;
  background: var(--nb-saffron);
}

.nb-rel-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.nb-rel-card {
  display: block;
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: var(--nb-shadow);
  color: var(--nb-ink) !important;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.5;
  text-decoration: none !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.nb-rel-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--nb-shadow-lift);
  color: var(--nb-saffron) !important;
}

.nb-rel-card img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.nb-rel-card span {
  display: block;
  padding: 12px 14px 14px;
}

@media (max-width: 700px) {
  .nb-rel-grid {
    grid-template-columns: 1fr;
  }
}

/* ============ 25. VIEW-ALL BUTTON ============ */
.nb-viewall a {
  display: inline-block;
  background: #fff;
  border: 1.5px solid var(--nb-saffron);
  color: var(--nb-saffron) !important;
  padding: 7px 22px;
  border-radius: 99px;
  font-weight: 700;
  font-size: 14px;
  text-decoration: none !important;
  transition: all 0.15s;
}

.nb-viewall a:hover {
  background: var(--nb-saffron);
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 6px 14px -4px rgba(232, 89, 12, 0.45);
}

/* ============ 26. AUTHOR BOX ============ */
.nb-author-box {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  background: #fff;
  border: 1px solid var(--nb-line);
  border-left: 4px solid var(--nb-saffron);
  border-radius: 0 12px 12px 0;
  box-shadow: var(--nb-shadow);
  padding: 20px 24px;
  margin-top: 28px;
}

.nb-author-box img.avatar {
  border-radius: 50%;
  width: 72px;
  height: 72px;
  flex-shrink: 0;
}

.nb-author-box .nb-author-label {
  display: inline-block;
  background: var(--nb-saffron-soft);
  color: var(--nb-saffron);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 2px 12px;
  border-radius: 99px;
  margin-bottom: 4px;
}

.nb-author-box h4 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 20px;
  margin: 0 0 4px;
}

.nb-author-box h4 a {
  color: var(--nb-navy);
  text-decoration: none;
}

.nb-author-box h4 a:hover {
  color: var(--nb-saffron);
}

.nb-author-box p {
  margin: 0;
  font-size: 14.5px;
  color: var(--nb-ink-soft);
  line-height: 1.7;
}

@media (max-width: 600px) {
  .nb-author-box {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}

/* ============ 27. PREV-NEXT COMPACT (side by side) ============ */
.single .nav-previous,
.single .nav-next {
  display: inline-block;
  width: calc(50% - 6px);
  vertical-align: top;
  margin-top: 12px;
}

.single .nav-next {
  margin-left: 8px;
  text-align: right;
}

.single .nav-previous a,
.single .nav-next a {
  padding: 10px 14px;
  font-size: 14px;
  line-height: 1.45;
}

.single .nav-previous a::before,
.single .nav-next a::before {
  font-size: 11px;
}

@media (max-width: 600px) {
  .single .nav-previous,
  .single .nav-next {
    display: block;
    width: 100%;
    margin-left: 0;
    text-align: left;
  }
}

/* ============ 28. FAQ ACCORDION (rank-math-list-item variant) ============ */
.rank-math-list {
  list-style: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  counter-reset: none;
}

.rank-math-list-item {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 10px;
  margin-bottom: 10px;
  overflow: hidden;
  box-shadow: var(--nb-shadow);
  padding: 0 !important;
}

.rank-math-list-item::before,
.rank-math-list-item::marker {
  display: none;
  content: none;
}

.rank-math-list-item .rank-math-question {
  cursor: pointer;
  margin: 0 !important;
  padding: 14px 48px 14px 18px !important;
  font-family: var(--nb-font-body) !important;
  font-size: 16.5px !important;
  font-weight: 700;
  color: var(--nb-navy) !important;
  border: 0 !important;
  position: relative;
  -webkit-user-select: none;
  user-select: none;
  transition: background 0.15s;
}

.rank-math-list-item .rank-math-question::before {
  display: none !important;
}

.rank-math-list-item .rank-math-question:hover {
  background: var(--nb-saffron-soft);
}

.rank-math-list-item .rank-math-question::after {
  content: "\2212";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--nb-saffron);
  color: #fff;
  font-size: 17px;
  font-weight: 700;
  display: grid;
  place-items: center;
  line-height: 1;
  border-bottom: 0;
}

.rank-math-list-item.nb-closed .rank-math-question::after {
  content: "+";
}

.rank-math-list-item .rank-math-answer {
  padding: 2px 18px 16px !important;
  margin: 0 !important;
  font-size: 15.5px;
}

.rank-math-list-item.nb-closed .rank-math-answer {
  display: none;
}

/* ============ 29. ARCHIVE CARDS - sirf pehli category badge ============ */
.archive article .cat-links,
.blog article .cat-links,
.search article .cat-links {
  font-size: 0;
  line-height: 1;
}

.archive article .cat-links a,
.blog article .cat-links a,
.search article .cat-links a {
  display: none;
  font-size: 12.5px;
  line-height: 1.6;
}

.archive article .cat-links a:first-of-type,
.blog article .cat-links a:first-of-type,
.search article .cat-links a:first-of-type {
  display: inline-block;
}

.archive article .cat-links .gp-icon,
.blog article .cat-links .gp-icon {
  display: none;
}

.archive article footer.entry-meta,
.blog article footer.entry-meta {
  padding-bottom: 16px;
}

/* ============ 30. FEATURED IMAGES - no crop (contain) ============ */
.archive article .post-image img,
.blog article .post-image img,
.search article .post-image img {
  object-fit: contain;
  background: #eef1f5;
}

.nb-grid .wp-block-post-featured-image img {
  object-fit: contain;
  background: #eef1f5;
}

.nb-rel-card img {
  object-fit: contain;
  background: #eef1f5;
}

/* ============ 31. FEATURED IMAGES FORCE (category/archive) ============ */
.archive .site-main article img,
.blog .site-main article img,
.search .site-main article img {
  aspect-ratio: 16 / 9 !important;
  object-fit: contain !important;
  background: #eef1f5 !important;
  width: 100% !important;
  height: auto !important;
}

/* ============ 32. HOMEPAGE CARD BADGE - image ke neeche ============ */
.nb-grid .wp-block-post-terms {
  position: static !important;
  padding: 12px 18px 0;
  margin: 0;
}

.nb-grid .wp-block-post-terms a {
  box-shadow: none;
  background: var(--nb-saffron-soft);
  color: var(--nb-saffron) !important;
}

.nb-grid .wp-block-post-title {
  padding-top: 8px;
}

/* ============ 33. CATEGORY CARDS POLISH ============ */
/* Card ko flex banao - sab cards barabar height, badge neeche pinned */
.archive .site-main article .inside-article,
.blog .site-main article .inside-article {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.archive article,
.blog article {
  height: auto;
}

/* Date - clean, bina indent */
.archive article .entry-header .entry-meta,
.blog article .entry-header .entry-meta {
  margin: 2px 0 0;
  font-size: 13px;
  color: var(--nb-ink-soft);
}

.archive article .posted-on,
.blog article .posted-on {
  margin: 0;
}

.archive article .entry-title,
.blog article .entry-title {
  margin-bottom: 4px;
}

/* Read more - outlined pill button */
.archive article .read-more,
.blog article .read-more,
.search article .read-more {
  display: inline-block;
  margin-top: 10px;
  border: 1.5px solid var(--nb-saffron);
  color: var(--nb-saffron) !important;
  background: #fff;
  padding: 4px 16px;
  border-radius: 99px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none !important;
  transition: all 0.15s;
}

.archive article .read-more:hover,
.blog article .read-more:hover {
  background: var(--nb-saffron);
  color: #fff !important;
}

/* Badge row - upar halki line, neeche pinned */
.archive article footer.entry-meta,
.blog article footer.entry-meta {
  margin-top: auto;
  border-top: 1px solid var(--nb-line);
  padding-top: 12px;
  padding-bottom: 14px;
}

.archive article footer.entry-meta .gp-icon,
.blog article footer.entry-meta .gp-icon {
  display: none;
}

/* ============ 34. BREADCRUMB PILL ============ */
.rank-math-breadcrumb {
  display: inline-block;
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 99px;
  box-shadow: var(--nb-shadow);
  padding: 7px 20px;
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.5;
}

.rank-math-breadcrumb p {
  margin: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px;
}

.rank-math-breadcrumb .separator {
  margin: 0 9px;
}

.rank-math-breadcrumb .last {
  max-width: 420px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  vertical-align: bottom;
}

@media (max-width: 600px) {
  .rank-math-breadcrumb .last {
    max-width: 160px;
  }
}

/* ============ 35. BACK TO TOP BUTTON ============ */
a.generate-back-to-top {
  background: var(--nb-saffron) !important;
  color: #fff !important;
  border-radius: 50% !important;
  width: 46px;
  height: 46px;
  box-shadow: 0 8px 20px -6px rgba(232, 89, 12, 0.55);
  transition: all 0.2s ease;
  opacity: 0.92;
}

a.generate-back-to-top:hover {
  background: var(--nb-navy) !important;
  transform: translateY(-3px);
  opacity: 1;
}

/* ============ 36. VIEW-ALL - preview jaisa simple link ============ */
.nb-viewall a {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  color: var(--nb-saffron) !important;
  font-weight: 700;
  font-size: 14.5px;
  text-decoration: none !important;
}

.nb-viewall a:hover {
  color: #c94a08 !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

/* ============ 37. VIEW-ALL - heading ke saath, modern chip ============ */
/* NOTE: nb-viewall paragraph ko editor me H2 ke theek neeche rakhna hai */
.home .nb-viewall {
  text-align: right;
  margin: -52px 0 22px !important;
  position: relative;
  z-index: 2;
}

.home .nb-viewall a {
  display: inline-flex !important;
  align-items: center;
  background: var(--nb-saffron-soft) !important;
  color: var(--nb-saffron) !important;
  padding: 6px 18px !important;
  border-radius: 99px !important;
  border: 0 !important;
  font-size: 13.5px;
  font-weight: 700;
  text-decoration: none !important;
  transition: all 0.18s ease;
}

.home .nb-viewall a:hover {
  background: var(--nb-saffron) !important;
  color: #fff !important;
  text-decoration: none !important;
  transform: translateX(3px);
  box-shadow: 0 6px 14px -4px rgba(232, 89, 12, 0.4);
}

@media (max-width: 600px) {
  .home .nb-viewall {
    margin: -40px 0 18px !important;
  }
}

/* ============ 38. SEARCH FOCUS FIX ============ */
.nb-hero .wp-block-search__input:focus,
.nb-hero .wp-block-search__input:focus-visible,
.wp-block-search__input:focus,
.wp-block-search__input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border: 0 !important;
  background: transparent !important;
}

/* Focus hone par poore pill pe subtle ring */
.nb-hero .wp-block-search__inside-wrapper:focus-within {
  box-shadow: 0 18px 40px -12px rgba(0, 0, 0, 0.4), 0 0 0 3px rgba(232, 89, 12, 0.35);
}

/* ============ 39. VIEW-ALL FINAL - grid ke neeche, no overlap ============ */
.home .nb-viewall {
  text-align: right;
  margin: 16px 0 30px !important;
  position: static !important;
  z-index: auto;
}

@media (max-width: 600px) {
  .home .nb-viewall {
    margin: 12px 0 24px !important;
    text-align: center;
  }
}

/* ============ 40. DATE DOUBLE-INDENT FIX ============ */
.archive article .entry-header .entry-meta,
.blog article .entry-header .entry-meta,
.search article .entry-header .entry-meta {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
}

.archive article .entry-header .entry-meta .gp-icon,
.blog article .entry-header .entry-meta .gp-icon {
  display: none;
}

/* ============ 41. READ MORE - apni alag line pe ============ */
.archive article .read-more,
.blog article .read-more,
.search article .read-more {
  display: table !important;
  margin-top: 12px !important;
}

/* ============ 42. SEARCH NO-RESULTS / 404 ============ */
.search-no-results .site-main .inside-article,
.error404 .site-main .inside-article {
  text-align: center;
  padding: 48px 30px;
}

.search-no-results .page-title,
.error404 .page-title {
  font-family: var(--nb-font-head);
  font-weight: 400;
  color: var(--nb-navy);
  font-size: clamp(26px, 4vw, 38px);
}

.search-no-results .search-form,
.error404 .search-form {
  max-width: 480px;
  margin: 20px auto 0;
}

.nb-noresults {
  margin-top: 26px;
}

.nb-noresults h3 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 23px;
  color: var(--nb-navy);
  position: relative;
  padding-left: 15px;
  margin: 26px 0 14px;
}

.nb-noresults h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  bottom: 5px;
  width: 4px;
  border-radius: 3px;
  background: var(--nb-saffron);
}

.nb-chiprow {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.nb-chiprow a {
  background: #fff;
  border: 1.5px solid var(--nb-saffron);
  color: var(--nb-saffron) !important;
  padding: 6px 20px;
  border-radius: 99px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none !important;
  transition: all 0.15s;
}

.nb-chiprow a:hover {
  background: var(--nb-saffron);
  color: #fff !important;
}

/* ============ 43. ARCHIVE IMAGES - natural height, zero crop ============ */
.archive .site-main article .post-image img,
.blog .site-main article .post-image img,
.search .site-main article .post-image img,
.archive .site-main article img,
.blog .site-main article img {
  aspect-ratio: auto !important;
  height: auto !important;
  width: 100% !important;
  object-fit: unset !important;
  background: transparent !important;
  display: block;
}

/* ============ 44. IMAGE SHRINK FIX (flex clipping - THE real bug) ============ */
.archive article .post-image,
.blog article .post-image,
.search article .post-image {
  flex-shrink: 0 !important;
}

.archive .site-main article .inside-article,
.blog .site-main article .inside-article {
  overflow: visible;
  border-radius: var(--nb-radius);
}

.archive article .post-image img,
.blog article .post-image img {
  border-radius: var(--nb-radius) var(--nb-radius) 0 0;
}

/* ============ 45. CARDS FINAL - natural height, no flex, no overlap ============ */
.archive .site-main article .inside-article,
.blog .site-main article .inside-article,
.search .site-main article .inside-article {
  display: block !important;
  height: auto !important;
  overflow: hidden !important;
}

.archive article footer.entry-meta,
.blog article footer.entry-meta {
  margin-top: 16px !important;
}

.archive article,
.blog article {
  height: auto !important;
}

/* ============ 46. GRID CONTAINER - banner overlap fix ============ */
.archive .generate-columns-container,
.blog .generate-columns-container,
.search .generate-columns-container {
  margin-top: 6px !important;
}

.archive .page-header,
.blog .page-header {
  position: relative;
  z-index: 1;
}

/* ============ 47. ARCHIVE GRID - apna CSS grid (GP floats override) ============ */
.archive .generate-columns-container,
.blog .generate-columns-container,
.search .generate-columns-container {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  clear: both;
  margin: 0 !important;
  padding: 0 !important;
  align-items: start;
}

.archive .generate-columns-container article,
.blog .generate-columns-container article,
.search .generate-columns-container article {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width: 900px) {
  .archive .generate-columns-container,
  .blog .generate-columns-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
}

@media (max-width: 600px) {
  .archive .generate-columns-container,
  .blog .generate-columns-container {
    grid-template-columns: 1fr;
  }
}

/* ============ 48. MOBILE MENU TOGGLE - white ============ */
.main-navigation .menu-toggle,
.main-navigation .menu-toggle:hover,
.main-navigation .menu-toggle:focus,
.main-navigation.toggled .menu-toggle,
button.menu-toggle .mobile-menu,
button.menu-toggle .gp-icon,
.main-navigation .menu-toggle .icon-menu-bars {
  color: #ffffff !important;
  opacity: 1 !important;
  background: transparent !important;
}

/* ============ 49. MOBILE - sticky menu band ============ */
@media (max-width: 768px) {
  .main-navigation {
    position: static !important;
  }
}

/* ============ 50. MOBILE TICKER - compact single line ============ */
@media (max-width: 768px) {
  .nb-ticker {
    flex-direction: row !important;
    align-items: stretch;
  }

  .nb-ticker .nb-ticker-tag {
    font-size: 12px;
    padding: 10px 12px !important;
    white-space: nowrap;
  }

  .nb-ticker .nb-ticker-items {
    padding: 10px 12px !important;
    font-size: 13.5px;
  }
}

/* ============ 51. MOBILE TICKER - readable size ============ */
@media (max-width: 768px) {
  .nb-ticker .nb-ticker-tag {
    font-size: 13px;
    padding: 12px 14px !important;
  }

  .nb-ticker .nb-ticker-items {
    padding: 12px 14px !important;
    font-size: 14.5px;
  }
}

/* ============ 52. RESPONSIVE AUDIT PATCH ============ */
/* Homepage cards: 600-781px pe 3 ki jagah 2 columns (cramped na ho) */
@media (min-width: 600px) and (max-width: 781px) {
  .nb-grid .wp-block-post-template {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* Hero stats: mobile pe bhi 3 chhote columns side-by-side (lambi list nahi) */
@media (max-width: 781px) {
  .nb-hero .nb-stats {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px;
  }

  .nb-hero .nb-stats .wp-block-column {
    flex: 1 1 0 !important;
    margin-bottom: 0 !important;
  }

  .nb-hero .nb-stats h3 {
    font-size: 20px;
  }

  .nb-hero .nb-stats p {
    font-size: 12px;
  }
}

/* Hero search: chhote phone pe overflow na ho */
.nb-hero .wp-block-search__inside-wrapper {
  flex-wrap: nowrap;
}

.nb-hero .wp-block-search__input {
  min-width: 0;
  flex: 1;
}

@media (max-width: 480px) {
  .nb-hero .wp-block-search__button {
    padding: 10px 18px;
    font-size: 14px;
  }

  .nb-hero .wp-block-button__link {
    font-size: 13px;
    padding: 7px 14px;
  }
}

/* ============ 53. BANNER GRID FIX - poori row me ============ */
.archive .generate-columns-container .page-header,
.blog .generate-columns-container .page-header,
.search .generate-columns-container .page-header {
  grid-column: 1 / -1 !important;
  width: 100%;
  margin-bottom: 6px !important;
}

/* ============ 54. HERO SEARCH - FOCUS/TYPING FIX ============ */
/* GP focus style input ko white bg + border deta hai jo pill se bahar dikhta hai */
.nb-hero .wp-block-search__inside-wrapper {
  overflow: hidden;
}

.nb-hero .wp-block-search__input,
.nb-hero .wp-block-search__input:focus,
.nb-hero .wp-block-search__input:active,
.nb-hero input[type="search"],
.nb-hero input[type="search"]:focus {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  border-radius: 99px !important;
  color: var(--nb-ink) !important;
}

/* ============ 55. MOBILE SEARCH RESULTS - grid fix ============ */
@media (max-width: 900px) {
  .search .generate-columns-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
}

@media (max-width: 600px) {
  .search .generate-columns-container {
    grid-template-columns: 1fr;
  }
}

/* ============ 56. SOCIAL SHARE BUTTONS ============ */
.nb-share {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px dashed var(--nb-line);
}

.nb-share-label {
  font-weight: 700;
  color: var(--nb-navy);
  font-size: 14.5px;
  margin-right: 2px;
}

.nb-sh {
  display: inline-block;
  color: #fff !important;
  font-family: var(--nb-font-body);
  font-size: 13.5px;
  font-weight: 700;
  padding: 6px 17px;
  border-radius: 99px;
  text-decoration: none !important;
  border: 0;
  cursor: pointer;
  line-height: 1.6;
  transition: transform 0.15s, box-shadow 0.15s;
}

.nb-sh:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 14px -4px rgba(0, 0, 0, 0.35);
  color: #fff !important;
}

.nb-sh-wa { background: #25d366; }
.nb-sh-fb { background: #1877f2; }
.nb-sh-tg { background: #229ed9; }
.nb-sh-x  { background: #111111; }
.nb-sh-copy { background: var(--nb-navy); }

@media (max-width: 600px) {
  .nb-share { gap: 6px; }
  .nb-sh { font-size: 12.5px; padding: 5px 13px; }
}

/* ============ 57. AUTO TOC (theme built-in) ============ */
.nb-toc {
  background: #fafbfc;
  border: 1px solid var(--nb-line);
  border-left: 4px solid var(--nb-saffron);
  border-radius: 0 12px 12px 0;
  padding: 16px 22px;
  margin: 1.6em 0;
  font-size: 15px;
}

.nb-toc-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 700;
  color: var(--nb-navy);
  font-size: 16px;
}

.nb-toc-toggle {
  background: transparent;
  border: 0;
  color: var(--nb-saffron);
  font-family: var(--nb-font-body);
  font-weight: 700;
  font-size: 12.5px;
  cursor: pointer;
  padding: 2px 6px;
}

.nb-toc-list {
  margin: 10px 0 0 20px;
  padding: 0;
}

.nb-toc-list li {
  margin-bottom: 6px;
}

.nb-toc-list a {
  color: var(--nb-ink);
  text-decoration: none !important;
  font-weight: 600;
}

.nb-toc-list a:hover {
  color: var(--nb-saffron);
}

/* Anchor pe smooth scroll + heading upar na chipke */
html {
  scroll-behavior: smooth;
}

.entry-content h2[id] {
  scroll-margin-top: 80px;
}

/* ============ 58. TOC MOBILE COMPACT ============ */
@media (max-width: 768px) {
  .nb-toc {
    padding: 13px 16px;
    font-size: 14px;
  }

  .nb-toc-list {
    margin-top: 8px;
  }
}

/* ============ 59. CATEGORY REDESIGN (approved preview) ============ */
/* Banner - dot pattern */
.archive .page-header {
  position: relative;
  overflow: hidden;
}

.archive .page-header::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1.4px);
  background-size: 24px 24px;
  pointer-events: none;
}

.archive .page-header > * {
  position: relative;
}

/* Breadcrumb banner ke andar */
.nb-cat-bc {
  font-size: 12.5px;
  color: #93a5c4;
  margin-bottom: 10px;
}

.nb-cat-bc a {
  color: #c8d4ea;
  text-decoration: none;
  font-weight: 600;
}

.nb-cat-bc a:hover {
  color: #fff;
}

.nb-cat-bc span {
  color: var(--nb-saffron);
  margin: 0 7px;
}

.nb-cat-bc b {
  font-weight: 600;
  color: #e8edf6;
}

/* Title + count ek line */
.archive .page-header h1 {
  display: inline-block;
  vertical-align: middle;
  margin-right: 12px;
}

.nb-cat-count {
  display: inline-block;
  vertical-align: middle;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.22);
  color: #ffd9bd;
  font-size: 13px;
  font-weight: 700;
  padding: 3px 14px;
  border-radius: 99px;
  white-space: nowrap;
}

.nb-cat-desc {
  color: #b9c6dd;
  font-size: 15.5px;
  margin: 6px 0 0;
  max-width: 640px;
}

/* Subcategory chips */
.nb-subcats {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.nb-subcats a {
  background: rgba(255, 255, 255, 0.09);
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 5px 16px;
  border-radius: 99px;
  text-decoration: none !important;
  transition: all 0.15s;
}

.nb-subcats a:hover {
  background: var(--nb-saffron);
  border-color: var(--nb-saffron);
  color: #fff;
}

/* Double date fix - sirf publish date dikhao */
.posted-on time.updated {
  display: none !important;
}

/* Date ke aage calendar icon */
.archive article .entry-meta .posted-on::before,
.blog article .entry-meta .posted-on::before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-right: 6px;
  vertical-align: -1px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e8590c'><path d='M19 4h-1V2h-2v2H8V2H6v2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 16H5V10h14zM5 8V6h14v2z'/></svg>") no-repeat center / contain;
}

/* Excerpt - 2 line clamp */
.archive article .entry-summary p,
.blog article .entry-summary p,
.search article .entry-summary p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Card footer - chip left + button right ek row */
.archive article footer.entry-meta,
.blog article footer.entry-meta,
.search article footer.entry-meta {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

/* Read more - solid saffron button */
.archive article .read-more,
.blog article .read-more,
.search article .read-more {
  display: inline-block !important;
  margin: 0 !important;
  background: var(--nb-saffron) !important;
  border: 0 !important;
  color: #fff !important;
  padding: 6px 17px !important;
  border-radius: 99px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none !important;
  box-shadow: 0 4px 10px -3px rgba(232, 89, 12, 0.45);
  transition: all 0.15s;
}

.archive article .read-more:hover,
.blog article .read-more:hover,
.search article .read-more:hover {
  background: #c94a08 !important;
  color: #fff !important;
  transform: translateY(-1px);
}

/* Category chip - soft pill */
.archive article .cat-links a:first-of-type,
.blog article .cat-links a:first-of-type,
.search article .cat-links a:first-of-type {
  background: var(--nb-saffron-soft);
  color: var(--nb-saffron) !important;
  padding: 5px 15px;
  border-radius: 99px;
  font-weight: 700;
  transition: all 0.15s;
}

.archive article .cat-links a:first-of-type:hover,
.blog article .cat-links a:first-of-type:hover {
  background: var(--nb-saffron);
  color: #fff !important;
}

@media (max-width: 600px) {
  .archive .page-header {
    padding: 24px 20px 20px;
  }

  .nb-subcats {
    gap: 7px;
  }

  .nb-subcats a {
    font-size: 12px;
    padding: 4px 13px;
  }
}

/* ============ 60. PAGINATION FIX - poori row, pill buttons ============ */
.archive .generate-columns-container .paging-navigation,
.blog .generate-columns-container .paging-navigation,
.search .generate-columns-container .paging-navigation,
.archive .generate-columns-container nav[class*="paging"],
.archive .generate-columns-container #nav-below,
.blog .generate-columns-container #nav-below,
.search .generate-columns-container #nav-below {
  grid-column: 1 / -1 !important;
  width: 100%;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: center;
  margin-top: 14px !important;
  padding: 0 !important;
}

.paging-navigation .page-numbers,
#nav-below .page-numbers {
  display: inline-block;
  min-width: 40px;
  padding: 7px 15px;
  margin: 0 4px 8px;
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 10px;
  color: var(--nb-ink);
  font-weight: 700;
  font-size: 14.5px;
  line-height: 1.6;
  text-decoration: none !important;
  transition: all 0.15s;
}

.paging-navigation span.page-numbers.current,
#nav-below span.page-numbers.current {
  background: var(--nb-navy);
  color: #fff;
  border-color: var(--nb-navy);
}

.paging-navigation a.page-numbers:hover,
#nav-below a.page-numbers:hover {
  background: var(--nb-saffron);
  color: #fff;
  border-color: var(--nb-saffron);
}

/* ============ 61. STATIC PAGES - posts jaisi styling ============ */
.page .site-main .inside-article {
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 14px;
  box-shadow: var(--nb-shadow);
  padding: 38px 42px;
}

.page .entry-header .entry-title {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: clamp(26px, 3.4vw, 36px);
  line-height: 1.35;
  color: var(--nb-navy);
}

.page .entry-header {
  padding-bottom: 18px;
  border-bottom: 1px solid var(--nb-line);
  margin-bottom: 22px;
}

.page .entry-content {
  font-size: 17px;
  line-height: 1.8;
}

.page .entry-content h2 {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 26px;
  color: var(--nb-navy);
  margin-top: 1.7em;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--nb-line);
  position: relative;
}

.page .entry-content h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 56px;
  height: 2px;
  background: var(--nb-saffron);
}

.page .entry-content h3 {
  margin-top: 1.5em;
  color: var(--nb-navy);
  font-weight: 700;
}

.page .entry-content blockquote {
  border-left: 4px solid var(--nb-saffron);
  background: var(--nb-saffron-soft);
  padding: 14px 18px;
  border-radius: 0 var(--nb-radius) var(--nb-radius) 0;
  font-style: normal;
}

@media (max-width: 768px) {
  .page .site-main .inside-article {
    padding: 24px 18px;
  }
}

/* ============ 62. CONTRAST FIX (Lighthouse accessibility) ============ */
:root {
  --nb-saffron-deep: #b04406; /* text/buttons ke liye - WCAG AA pass */
}

/* Category badges/chips - deep saffron text */
.nb-grid .wp-block-post-terms a,
.archive article .cat-links a:first-of-type,
.blog article .cat-links a:first-of-type,
.search article .cat-links a:first-of-type,
.cat-links a,
.nb-author-box .nb-author-label {
  color: var(--nb-saffron-deep) !important;
}

/* View-all links */
.nb-viewall a,
.home .nb-viewall a {
  color: var(--nb-saffron-deep) !important;
}

.home .nb-viewall a:hover {
  color: #fff !important;
  background: var(--nb-saffron-deep) !important;
}

/* Solid saffron buttons - gehra bg taki white text pass ho */
.nb-hero .wp-block-search__button,
.button,
input[type="submit"],
.archive article .read-more,
.blog article .read-more,
.search article .read-more,
.entry-content a.nb-apply-btn {
  background: var(--nb-saffron-deep) !important;
}

.nb-hero .wp-block-search__button:hover,
.archive article .read-more:hover,
.blog article .read-more:hover,
.entry-content a.nb-apply-btn:hover {
  background: #933805 !important;
}

/* Share buttons - dark brand shades (white text pass) */
.nb-sh-wa { background: #0e7a3d !important; }
.nb-sh-fb { background: #10529e !important; }
.nb-sh-tg { background: #14618c !important; }

/* Chips hover */
.nb-chiprow a:hover,
.nb-subcats a:hover,
.archive article .cat-links a:first-of-type:hover,
.blog article .cat-links a:first-of-type:hover {
  background: var(--nb-saffron-deep) !important;
  border-color: var(--nb-saffron-deep);
  color: #fff !important;
}

/* ============ 63. HERO STATS as paragraphs (heading-order fix) ============ */
.nb-hero .nb-stats .wp-block-column p:first-child {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 26px;
  color: #fff;
  margin-bottom: 0;
  margin-top: 0;
}

@media (max-width: 781px) {
  .nb-hero .nb-stats .wp-block-column p:first-child {
    font-size: 20px;
  }
}

/* ============ 64. HOMEPAGE - page card styling se EXCLUDE ============ */
.home .site-main .inside-article {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.home .entry-header {
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ============ 65. IMAGE TOP-CLIP FIX (GP ka -30px margin kill) ============ */
/* GP Blog module .post-image ko -30px margin deta hai (padding assume karke),
   humare card me padding 0 hai -> image upar khisak ke overflow me kat rahi thi */
.archive article .post-image,
.blog article .post-image,
.search article .post-image,
.archive .site-main article .inside-article .post-image,
.blog .site-main article .inside-article .post-image {
  margin: 0 0 14px !important;
}

/* ============ 66. TOC TOGGLE - contrast fix ============ */
.nb-toc-toggle {
  color: var(--nb-saffron-deep) !important;
}

/* ============ 67. CONTRAST AUDIT - bache hue saffron text fix ============ */
/* Ticker - bullets aur strong text */
.nb-ticker .nb-tk em,
.nb-ticker .nb-ticker-items strong {
  color: var(--nb-saffron-deep);
}

/* Breadcrumb separators (white pill par) */
.rank-math-breadcrumb .separator {
  color: var(--nb-saffron-deep);
}

/* FAQ +/- circle - gehra bg */
.rank-math-faq-item .rank-math-question::after,
.rank-math-list-item .rank-math-question::after {
  background: var(--nb-saffron-deep);
}

/* ============ 68. HEADER BRANDING ============ */
.site-header .main-title,
.site-header .main-title a {
  font-size: 30px;
  letter-spacing: 0.2px;
}

.site-header .main-title a .nb-brand {
  color: var(--nb-saffron);
}

.site-header .main-title a:hover {
  color: var(--nb-navy);
}

.site-header .main-title a:hover .nb-brand {
  color: var(--nb-saffron-deep);
}

/* Tagline - dono taraf thin lines */
.site-header .site-description {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-size: 12px;
  letter-spacing: 1px;
  margin-top: 2px;
}

.site-header .site-description::before,
.site-header .site-description::after {
  content: "";
  width: 38px;
  height: 1.5px;
  border-radius: 2px;
  background: linear-gradient(90deg, transparent, var(--nb-saffron));
}

.site-header .site-description::after {
  background: linear-gradient(90deg, var(--nb-saffron), transparent);
}

@media (max-width: 600px) {
  .site-header .main-title,
  .site-header .main-title a {
    font-size: 25px;
  }

  .site-header .site-description::before,
  .site-header .site-description::after {
    width: 26px;
  }
}

/* ============ 69. TICKER MOBILE OVERFLOW FIX ============ */
.nb-ticker {
  max-width: 100%;
}

.nb-ticker .nb-ticker-items {
  min-width: 0;
  max-width: 100%;
}

.nb-ticker .nb-ticker-tag {
  flex-shrink: 0;
}

/* ============ 70. CATEGORY MOBILE - side spacing ============ */
@media (max-width: 768px) {
  .archive .site-main,
  .blog .site-main,
  .search .site-main {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .archive .page-header {
    margin-left: 0;
    margin-right: 0;
  }
}

/* ============ 71. CONTENT LISTS - tick bullets + numbered circles ============ */
/* Bullet list - saffron tick (contrast-safe: deep saffron on soft bg) */
.single .entry-content ul.wp-block-list,
.page .entry-content ul.wp-block-list {
  list-style: none;
  padding-left: 0;
  margin-left: 0;
}

.single .entry-content ul.wp-block-list > li,
.page .entry-content ul.wp-block-list > li {
  position: relative;
  padding-left: 32px;
  margin-bottom: 9px;
}

.single .entry-content ul.wp-block-list > li::before,
.page .entry-content ul.wp-block-list > li::before {
  content: "\2713";
  position: absolute;
  left: 0;
  top: 3px;
  width: 20px;
  height: 20px;
  border-radius: 6px;
  background: var(--nb-saffron-soft);
  color: var(--nb-saffron-deep);
  font-weight: 700;
  font-size: 13px;
  line-height: 1;
  display: grid;
  place-items: center;
}

/* Numbered list - navy circle (white on navy = 12:1 contrast) */
.single .entry-content ol.wp-block-list,
.page .entry-content ol.wp-block-list {
  list-style: none;
  counter-reset: nbol;
  padding-left: 0;
  margin-left: 0;
}

.single .entry-content ol.wp-block-list > li,
.page .entry-content ol.wp-block-list > li {
  counter-increment: nbol;
  position: relative;
  padding-left: 36px;
  margin-bottom: 10px;
}

.single .entry-content ol.wp-block-list > li::before {
  content: counter(nbol);
  position: absolute;
  left: 0;
  top: 2px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--nb-navy);
  color: #fff;
  font-weight: 700;
  font-size: 13px;
  line-height: 1;
  display: grid;
  place-items: center;
}

.page .entry-content ol.wp-block-list > li::before {
  content: counter(nbol);
  position: absolute;
  left: 0;
  top: 2px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--nb-navy);
  color: #fff;
  font-weight: 700;
  font-size: 13px;
  line-height: 1;
  display: grid;
  place-items: center;
}

/* Nested lists - simple indent, koi double styling nahi */
.single .entry-content ul.wp-block-list ul,
.single .entry-content ol.wp-block-list ol {
  margin-top: 8px;
}

/* ============ 72. TABLES - BOX STYLE (approved) ============ */
.entry-content table {
  width: 100%;
  border-collapse: separate !important;
  border-spacing: 0;
  border: 1.5px solid var(--nb-navy);
  border-radius: 10px;
  overflow: hidden;
  font-size: 15px;
  margin: 1.5em 0;
  box-shadow: none;
}

.entry-content table td,
.entry-content table th {
  padding: 10px 14px;
  border-bottom: 1px solid #d5d9e0;
  border-right: 1px solid #d5d9e0;
  background: #fff;
  text-align: left;
}

.entry-content table td:last-child,
.entry-content table th:last-child {
  border-right: 0;
}

.entry-content table tr:last-child td {
  border-bottom: 0;
}

/* Pehla column - label look */
.entry-content table td:first-child {
  background: var(--nb-paper);
  font-weight: 600;
}

/* Hover highlight */
.entry-content table tbody tr:hover td {
  background: var(--nb-saffron-soft);
}

/* Header - thead th YA (agar header nahi banaya to) pehli row */
.entry-content table th,
.entry-content table:not(:has(th)) tr:first-child td {
  background: var(--nb-navy) !important;
  color: #fff;
  font-weight: 700;
  padding: 11px 14px;
  border-bottom: 0;
  border-right: 1px solid rgba(255, 255, 255, 0.25);
}

.entry-content table th:last-child,
.entry-content table:not(:has(th)) tr:first-child td:last-child {
  border-right: 0;
}

/* Responsive - chhote table wrap, bade table side-scroll */
.entry-content .wp-block-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 768px) {
  .entry-content table {
    display: table;
    white-space: normal;
    font-size: 14px;
  }

  .entry-content table td,
  .entry-content table th {
    padding: 9px 10px;
  }
}

/* ============ 73. AUTHOR NAME - p tag (heading-order fix) ============ */
.nb-author-box .nb-author-name {
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 20px;
  margin: 0 0 4px;
  color: var(--nb-ink);
}

.nb-author-box .nb-author-name a {
  color: var(--nb-navy);
  text-decoration: none;
}

.nb-author-box .nb-author-name a:hover {
  color: var(--nb-saffron-deep);
}

/* ============ 74. META ROW - updated date + listen button ============ */
.nb-meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}

.nb-updated {
  display: inline-block;
  background: var(--nb-paper);
  border: 1px solid var(--nb-line);
  color: var(--nb-ink-soft);
  font-size: 13px;
  font-weight: 600;
  padding: 4px 14px;
  border-radius: 99px;
}

.nb-listen {
  background: var(--nb-navy);
  color: #fff;
  border: 0;
  font-family: var(--nb-font-body);
  font-size: 13.5px;
  font-weight: 700;
  padding: 7px 18px;
  border-radius: 99px;
  cursor: pointer;
  transition: all 0.15s;
}

.nb-listen:hover {
  background: var(--nb-navy-deep);
  transform: translateY(-1px);
}

@media (max-width: 600px) {
  .nb-meta-row {
    justify-content: flex-start;
  }
}

/* ============ 75. POST DISCLAIMER BOX ============ */
.nb-disclaimer {
  background: var(--nb-paper);
  border: 1px solid var(--nb-line);
  border-left: 4px solid var(--nb-navy);
  border-radius: 0 10px 10px 0;
  padding: 14px 20px;
  margin-top: 22px;
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--nb-ink-soft);
}

.nb-disclaimer .nb-disclaimer-title {
  font-weight: 700;
  color: var(--nb-navy);
  font-size: 14px;
  margin: 0 0 4px;
}

.nb-disclaimer p {
  margin: 0;
}

.nb-disclaimer a {
  color: var(--nb-navy);
  font-weight: 600;
}

.nb-disclaimer a:hover {
  color: var(--nb-saffron-deep);
}

/* ============ 76. POST FOOTER - commas + icons hatao ============ */
.single footer.entry-meta .cat-links,
.single footer.entry-meta .tags-links {
  font-size: 0;
  line-height: 1.6;
}

.single footer.entry-meta .cat-links a,
.single footer.entry-meta .tags-links a {
  font-size: 12.5px;
}

.single footer.entry-meta .gp-icon {
  display: none;
}

/* ============ 77. FOOTER TITLES as paragraphs (heading-order fix) ============ */
.nb-footer .nb-footer-title {
  color: #fff;
  font-family: var(--nb-font-head);
  font-weight: 400;
  font-size: 21px;
  position: relative;
  padding-bottom: 10px;
  margin-bottom: 14px;
  margin-top: 0;
}

.nb-footer .nb-footer-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 34px;
  height: 2.5px;
  background: var(--nb-saffron);
  border-radius: 2px;
}

/* ============ 78. CONTENT SPACING - images/lists chipke nahi ============ */
.single .entry-content figure.wp-block-image,
.page .entry-content figure.wp-block-image {
  margin-top: 1.6em;
  margin-bottom: 1.6em;
}

.single .entry-content ul.wp-block-list,
.single .entry-content ol.wp-block-list,
.page .entry-content ul.wp-block-list,
.page .entry-content ol.wp-block-list {
  margin-top: 1.2em;
  margin-bottom: 1.5em;
}

.single .entry-content img,
.page .entry-content img {
  margin-top: 0.4em;
  margin-bottom: 0.4em;
}

/* ============ 79. TOC TOGGLE - GP button style override ============ */
.nb-toc .nb-toc-toggle,
.nb-toc .nb-toc-toggle:hover,
.nb-toc .nb-toc-toggle:focus,
.nb-toc .nb-toc-toggle:active {
  background: transparent !important;
  background-color: transparent !important;
  border: 1.5px solid var(--nb-saffron-deep) !important;
  border-radius: 99px !important;
  color: var(--nb-saffron-deep) !important;
  font-family: var(--nb-font-body) !important;
  font-weight: 700;
  font-size: 12.5px !important;
  line-height: 1.4 !important;
  padding: 3px 14px !important;
  min-height: 0 !important;
  box-shadow: none !important;
  cursor: pointer;
}

.nb-toc .nb-toc-toggle:hover {
  background: var(--nb-saffron-soft) !important;
}

/* ============ 80. BYLINE REDESIGN (author + dates + read time) ============ */
/* GP ka purana "date by author" chhupao */
.single .entry-header .entry-meta {
  display: none;
}

.single .nb-meta-row {
  margin: -2px 0 24px;
  align-items: center;
}

.nb-byline {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
}

.nb-byline img.avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid var(--nb-saffron);
  flex-shrink: 0;
}

.nb-byline-info {
  line-height: 1.45;
  min-width: 0;
}

.nb-byline-name {
  display: block;
  font-weight: 700;
  color: var(--nb-navy) !important;
  font-size: 14.5px;
  text-decoration: none !important;
}

.nb-byline-name:hover {
  color: var(--nb-saffron-deep) !important;
}

.nb-byline-meta {
  display: block;
  color: var(--nb-ink-soft);
  font-size: 12.5px;
}

.nb-byline-meta em {
  font-style: normal;
  color: var(--nb-saffron-deep);
  margin: 0 6px;
}

@media (max-width: 600px) {
  .single .nb-meta-row {
    gap: 12px;
    margin-bottom: 20px;
  }

  .nb-listen {
    font-size: 12.5px;
    padding: 6px 15px;
  }

  .nb-byline img.avatar {
    width: 36px;
    height: 36px;
  }
}
