/*
Theme Name:   Naukri Ninja Child
Theme URI:    https://www.naukrininja.com/
Description:  GeneratePress Child Theme for Naukri Ninja – Maharashtra Sarkari Naukri Portal
Author:       Naukri Ninja
Author URI:   https://www.naukrininja.com/
Template:     generatepress
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  naukrininja-child
Tags:         marathi, government-jobs, sarkari-naukri, maharashtra
*/

/* ============================================================
   NAUKRI NINJA – GeneratePress Child Theme
   Color System (MajhiNaukri-inspired):
   Navy  #1A237E | Saffron #E65100 | White #FFFFFF
   Red   #C62828 | Green  #2E7D32  | Blue  #1565C0
   BG    #F0F2F5 | Text   #212121
   ============================================================ */

/* ── Google Fonts ── */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Devanagari:wght@400;500;600;700;800&family=Poppins:wght@400;500;600;700;800&display=swap');

/* ============================================================
   CSS VARIABLES
   ============================================================ */
:root {
  --nn-navy:        #1A237E;
  --nn-navy-dk:     #0D1757;
  --nn-navy-lt:     #283593;
  --nn-saffron:     #E65100;
  --nn-saffron-lt:  #FF6D00;
  --nn-saffron-bg:  #FFF3E0;
  --nn-red:         #C62828;
  --nn-green:       #2E7D32;
  --nn-green-lt:    #43A047;
  --nn-blue:        #1565C0;
  --nn-white:       #FFFFFF;
  --nn-bg:          #F0F2F5;
  --nn-card:        #FFFFFF;
  --nn-border:      #E0E0E0;
  --nn-border-lt:   #F5F5F5;
  --nn-text:        #212121;
  --nn-text2:       #424242;
  --nn-muted:       #757575;
  --nn-light:       #9E9E9E;
  --nn-radius:      8px;
  --nn-radius-sm:   5px;
  --nn-radius-lg:   12px;
  --nn-shadow-sm:   0 1px 4px rgba(0,0,0,.08);
  --nn-shadow:      0 2px 10px rgba(0,0,0,.10);
  --nn-shadow-md:   0 4px 20px rgba(0,0,0,.13);
  --nn-shadow-lg:   0 8px 32px rgba(0,0,0,.15);
  --nn-font:        'Noto Sans Devanagari', 'Poppins', sans-serif;
  --nn-font-ui:     'Poppins', 'Noto Sans Devanagari', sans-serif;
}

/* ============================================================
   RESET & BASE
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: var(--nn-font);
  background: var(--nn-bg) !important;
  color: var(--nn-text);
  line-height: 1.7;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}

a { color: var(--nn-navy); text-decoration: none; transition: color .18s; }
a:hover { color: var(--nn-saffron); }

img { max-width: 100%; height: auto; display: block; }

h1, h2, h3, h4, h5, h6 {
  font-family: var(--nn-font-ui);
  color: var(--nn-navy);
  line-height: 1.3;
  font-weight: 700;
}

p { margin-bottom: 1rem; color: var(--nn-text2); line-height: 1.8; }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--nn-bg); }
::-webkit-scrollbar-thumb { background: var(--nn-navy-lt); border-radius: 3px; }

/* ============================================================
   GENERATEPRESS UTILITY BAR (Top bar)
   ============================================================ */
.top-bar {
  background: var(--nn-navy-dk) !important;
  color: rgba(255,255,255,.75) !important;
  font-size: .73rem;
  font-family: var(--nn-font-ui);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.top-bar a { color: rgba(255,255,255,.65) !important; }
.top-bar a:hover { color: #FFB74D !important; }
.top-bar-inner { padding: 6px 20px; }

/* ============================================================
   HEADER
   ============================================================ */
.site-header {
  background: var(--nn-navy) !important;
  border-bottom: 3px solid var(--nn-saffron) !important;
  box-shadow: 0 3px 15px rgba(0,0,0,.25) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 300 !important;
}

.site-header .header-inner,
.site-header .inside-header {
  padding: 0 20px;
  min-height: 64px;
  display: flex;
  align-items: center;
}

/* Logo */
.site-header .site-branding {
  display: flex;
  align-items: center;
}
.site-header .site-title a {
  font-family: var(--nn-font-ui) !important;
  font-size: 1.4rem !important;
  font-weight: 800 !important;
  color: #fff !important;
  letter-spacing: -.3px;
}
.site-header .site-description {
  color: rgba(255,255,255,.6) !important;
  font-size: .65rem !important;
  letter-spacing: .8px;
  text-transform: uppercase;
}
.site-header img.custom-logo {
  max-height: 48px;
  width: auto;
  filter: brightness(0) invert(1);
}

/* ============================================================
   PRIMARY NAVIGATION
   ============================================================ */
.main-navigation,
.nav-primary {
  background: var(--nn-navy) !important;
}

.main-navigation ul,
.nav-primary ul { margin: 0; padding: 0; list-style: none; }

.main-navigation ul li a,
.nav-primary ul li a {
  font-family: var(--nn-font-ui) !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,.85) !important;
  padding: 8px 12px !important;
  border-radius: var(--nn-radius-sm);
  transition: all .18s !important;
  white-space: nowrap;
}

.main-navigation ul li a:hover,
.main-navigation ul li.current-menu-item > a,
.main-navigation ul li.current-menu-ancestor > a,
.nav-primary ul li a:hover {
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
}

/* Highlighted nav item */
.main-navigation ul li.menu-item-scholarship a,
.main-navigation ul li:last-child > a {
  background: var(--nn-saffron) !important;
  color: #fff !important;
  border-radius: var(--nn-radius-sm) !important;
}
.main-navigation ul li.menu-item-scholarship a:hover,
.main-navigation ul li:last-child > a:hover {
  background: var(--nn-saffron-lt) !important;
}

/* Dropdown */
.main-navigation ul ul,
.nav-primary ul ul {
  background: var(--nn-white) !important;
  border-top: 3px solid var(--nn-saffron) !important;
  border-radius: 0 0 var(--nn-radius) var(--nn-radius) !important;
  box-shadow: var(--nn-shadow-lg) !important;
  min-width: 220px !important;
  padding: 6px !important;
}
.main-navigation ul ul li a,
.nav-primary ul ul li a {
  color: var(--nn-text2) !important;
  font-size: .82rem !important;
  padding: 9px 12px !important;
  border-radius: var(--nn-radius-sm) !important;
}
.main-navigation ul ul li a:hover,
.nav-primary ul ul li a:hover {
  background: var(--nn-saffron-bg) !important;
  color: var(--nn-saffron) !important;
}

/* Mobile menu toggle */
.menu-toggle,
button.menu-toggle {
  background: var(--nn-saffron) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--nn-radius-sm) !important;
  font-family: var(--nn-font-ui) !important;
  font-weight: 700 !important;
}

/* ============================================================
   SEARCH WIDGET IN HEADER
   ============================================================ */
.header-search input[type="search"],
.site-header .search-field {
  background: rgba(255,255,255,.12) !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  color: #fff !important;
  border-radius: var(--nn-radius) !important;
  font-family: var(--nn-font) !important;
  padding: 8px 14px !important;
}
.site-header .search-field::placeholder { color: rgba(255,255,255,.5) !important; }
.site-header .search-submit {
  background: var(--nn-saffron) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--nn-radius) !important;
  padding: 8px 14px !important;
}

/* ============================================================
   BREAKING NEWS TICKER  (via plugin or custom widget)
   ============================================================ */
.breaking-news-bar,
.nn-ticker-bar {
  background: var(--nn-white);
  border-bottom: 2px solid var(--nn-border);
  display: flex;
  align-items: center;
  height: 38px;
  overflow: hidden;
}
.breaking-news-label,
.nn-ticker-label {
  background: var(--nn-red);
  color: #fff;
  padding: 0 16px;
  height: 100%;
  font-family: var(--nn-font-ui);
  font-size: .72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

/* ============================================================
   PAGE / SITE LAYOUT
   ============================================================ */
.site-content,
.site-main,
#content {
  background: var(--nn-bg) !important;
}

.inside-article,
.content-area .inside-article {
  background: var(--nn-bg) !important;
}

/* Content + sidebar grid */
.content-area { width: 70% !important; }
.widget-area  { width: 28% !important; }

@media (max-width: 768px) {
  .content-area,
  .widget-area { width: 100% !important; }
}

/* ============================================================
   POSTS – ARCHIVE / CATEGORY PAGES
   ============================================================ */

/* Post card */
article.post,
.post-card,
.inside-article {
  background: var(--nn-card) !important;
  border: 1px solid var(--nn-border) !important;
  border-radius: var(--nn-radius) !important;
  box-shadow: var(--nn-shadow-sm) !important;
  overflow: hidden !important;
  transition: box-shadow .22s, transform .2s !important;
  margin-bottom: 20px !important;
}
article.post:hover,
.post-card:hover {
  box-shadow: var(--nn-shadow-md) !important;
  transform: translateY(-3px) !important;
  border-color: var(--nn-saffron) !important;
}

/* Post title */
.entry-title {
  font-family: var(--nn-font-ui) !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: var(--nn-navy) !important;
  margin-bottom: 8px !important;
  line-height: 1.4 !important;
}
.entry-title a { color: var(--nn-navy) !important; }
.entry-title a:hover { color: var(--nn-saffron) !important; }

/* Entry meta */
.entry-meta,
.post-meta {
  font-family: var(--nn-font-ui) !important;
  font-size: .74rem !important;
  color: var(--nn-muted) !important;
  margin-bottom: 10px !important;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}
.entry-meta a { color: var(--nn-muted) !important; }
.entry-meta a:hover { color: var(--nn-saffron) !important; }

/* Category badge in meta */
.entry-meta .cat-links a,
.entry-meta .category a {
  background: var(--nn-saffron-bg) !important;
  color: var(--nn-saffron) !important;
  padding: 2px 9px !important;
  border-radius: 3px !important;
  font-size: .68rem !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .5px !important;
  border: 1px solid rgba(230,81,0,.2) !important;
}

/* Post thumbnail */
.post-image,
.entry-content img,
.post-thumbnail img {
  border-radius: var(--nn-radius) var(--nn-radius) 0 0 !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

/* Entry summary / excerpt */
.entry-summary,
.entry-content > p:first-of-type {
  font-size: .88rem !important;
  color: var(--nn-text2) !important;
  line-height: 1.8 !important;
}

/* Read More button */
.more-link,
a.more-link,
.read-more-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: var(--nn-saffron) !important;
  color: #fff !important;
  padding: 8px 18px !important;
  border-radius: var(--nn-radius-sm) !important;
  font-family: var(--nn-font-ui) !important;
  font-weight: 700 !important;
  font-size: .8rem !important;
  margin-top: 10px !important;
  transition: background .2s !important;
  border: none !important;
  text-decoration: none !important;
}
.more-link:hover, a.more-link:hover { background: var(--nn-saffron-lt) !important; color: #fff !important; }

/* ============================================================
   SINGLE POST PAGE
   ============================================================ */
.single .site-main,
.page .site-main {
  background: var(--nn-bg) !important;
}

.single article.post,
.page article.page {
  background: var(--nn-card) !important;
  border-radius: var(--nn-radius) !important;
  border: 1px solid var(--nn-border) !important;
  box-shadow: var(--nn-shadow-sm) !important;
  padding: 28px 32px !important;
}

/* Single post title */
.single .entry-title,
.page .entry-title {
  font-size: 1.5rem !important;
  font-weight: 800 !important;
  color: var(--nn-navy) !important;
  line-height: 1.3 !important;
  margin-bottom: 14px !important;
  padding-bottom: 14px !important;
  border-bottom: 2px solid var(--nn-border) !important;
}

/* Post content formatting */
.entry-content { font-size: .95rem !important; color: var(--nn-text) !important; line-height: 1.85 !important; }

.entry-content h2 {
  font-size: 1.15rem !important; font-weight: 800 !important;
  color: var(--nn-navy) !important; margin: 28px 0 12px !important;
  padding: 10px 16px !important;
  background: var(--nn-saffron-bg) !important;
  border-left: 4px solid var(--nn-saffron) !important;
  border-radius: 0 var(--nn-radius-sm) var(--nn-radius-sm) 0 !important;
}
.entry-content h3 {
  font-size: 1rem !important; font-weight: 700 !important;
  color: var(--nn-navy) !important; margin: 22px 0 10px !important;
  padding-left: 12px !important;
  border-left: 3px solid var(--nn-saffron) !important;
}
.entry-content h4 {
  font-size: .95rem !important; font-weight: 700 !important;
  color: var(--nn-text) !important; margin: 18px 0 8px !important;
}

/* Tables in post content */
.entry-content table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 20px 0 !important;
  font-size: .88rem !important;
  border-radius: var(--nn-radius) !important;
  overflow: hidden !important;
  box-shadow: var(--nn-shadow-sm) !important;
}
.entry-content table th {
  background: var(--nn-navy) !important;
  color: #fff !important;
  font-family: var(--nn-font-ui) !important;
  font-weight: 700 !important;
  font-size: .82rem !important;
  padding: 11px 14px !important;
  text-align: left !important;
  border: none !important;
}
.entry-content table td {
  padding: 10px 14px !important;
  border-bottom: 1px solid var(--nn-border) !important;
  color: var(--nn-text2) !important;
  vertical-align: top !important;
}
.entry-content table tr:nth-child(even) td { background: #FAFAFA !important; }
.entry-content table tr:hover td { background: var(--nn-saffron-bg) !important; }

/* Lists */
.entry-content ul, .entry-content ol {
  padding-left: 1.5rem !important;
  margin: 14px 0 !important;
}
.entry-content ul li, .entry-content ol li {
  margin-bottom: 7px !important;
  color: var(--nn-text2) !important;
  font-size: .9rem !important;
  line-height: 1.75 !important;
}
.entry-content ul { list-style: none !important; }
.entry-content ul li::before {
  content: '▸' !important;
  color: var(--nn-saffron) !important;
  font-weight: 900 !important;
  margin-right: 8px !important;
}

/* Blockquote */
.entry-content blockquote {
  border-left: 4px solid var(--nn-saffron) !important;
  background: var(--nn-saffron-bg) !important;
  padding: 14px 20px !important;
  margin: 20px 0 !important;
  border-radius: 0 var(--nn-radius) var(--nn-radius) 0 !important;
  font-style: normal !important;
  color: var(--nn-text2) !important;
}

/* Apply button box in posts */
.apply-box,
.apply-section {
  background: var(--nn-navy) !important;
  color: #fff !important;
  border-radius: var(--nn-radius) !important;
  padding: 20px 24px !important;
  margin: 24px 0 !important;
  text-align: center !important;
}
.apply-box a,
.apply-section a {
  display: inline-block !important;
  background: var(--nn-saffron) !important;
  color: #fff !important;
  padding: 11px 28px !important;
  border-radius: var(--nn-radius-sm) !important;
  font-family: var(--nn-font-ui) !important;
  font-weight: 800 !important;
  font-size: .9rem !important;
  margin-top: 10px !important;
  transition: background .2s !important;
}
.apply-box a:hover,
.apply-section a:hover { background: var(--nn-saffron-lt) !important; }

/* Notice box (important info) */
.notice-box,
.wp-block-notice,
.important-note {
  background: #FFF8E1 !important;
  border: 1px solid #FFE082 !important;
  border-left: 4px solid #FFA000 !important;
  border-radius: 0 var(--nn-radius) var(--nn-radius) 0 !important;
  padding: 14px 18px !important;
  margin: 18px 0 !important;
  font-size: .88rem !important;
  color: var(--nn-text) !important;
}

/* ============================================================
   BREADCRUMB
   ============================================================ */
.breadcrumb,
.breadcrumb-trail,
.rank-math-breadcrumb,
nav.breadcrumb {
  background: var(--nn-white) !important;
  border-bottom: 1px solid var(--nn-border) !important;
  padding: 10px 20px !important;
  font-size: .78rem !important;
  font-family: var(--nn-font-ui) !important;
  color: var(--nn-muted) !important;
}
.breadcrumb a, .rank-math-breadcrumb a {
  color: var(--nn-navy) !important;
}
.breadcrumb a:hover, .rank-math-breadcrumb a:hover {
  color: var(--nn-saffron) !important;
}
.breadcrumb .sep,
.breadcrumb-trail .sep {
  color: var(--nn-light) !important;
  margin: 0 6px !important;
}

/* ============================================================
   CATEGORY / ARCHIVE HEADER
   ============================================================ */
.archive-header,
.page-header,
.term-description-wrapper {
  background: var(--nn-navy) !important;
  color: #fff !important;
  padding: 28px 32px !important;
  border-radius: var(--nn-radius) !important;
  margin-bottom: 24px !important;
  border-left: 5px solid var(--nn-saffron) !important;
}
.archive-title,
.page-title,
.archive-header h1,
.archive-header .page-title {
  color: #fff !important;
  font-size: 1.4rem !important;
  font-weight: 800 !important;
  font-family: var(--nn-font-ui) !important;
  margin-bottom: 8px !important;
}
.archive-description,
.term-description {
  color: rgba(255,255,255,.75) !important;
  font-size: .88rem !important;
  margin: 0 !important;
}

/* ============================================================
   PAGINATION
   ============================================================ */
.pagination,
.nav-links,
.page-numbers {
  display: flex !important;
  justify-content: center !important;
  gap: 6px !important;
  margin: 28px 0 !important;
  flex-wrap: wrap !important;
}
.page-numbers a,
.page-numbers span,
.nav-links a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: var(--nn-radius-sm) !important;
  font-family: var(--nn-font-ui) !important;
  font-weight: 700 !important;
  font-size: .85rem !important;
  border: 1.5px solid var(--nn-border) !important;
  background: var(--nn-white) !important;
  color: var(--nn-text2) !important;
  transition: all .18s !important;
}
.page-numbers a:hover,
.nav-links a:hover {
  background: var(--nn-navy) !important;
  color: #fff !important;
  border-color: var(--nn-navy) !important;
}
.page-numbers.current {
  background: var(--nn-saffron) !important;
  color: #fff !important;
  border-color: var(--nn-saffron) !important;
}

/* Post navigation (prev/next) */
.post-navigation,
.nav-previous a,
.nav-next a {
  font-family: var(--nn-font-ui) !important;
}
.nav-previous a, .nav-next a {
  background: var(--nn-white) !important;
  border: 1.5px solid var(--nn-border) !important;
  padding: 10px 18px !important;
  border-radius: var(--nn-radius) !important;
  font-weight: 700 !important;
  font-size: .85rem !important;
  color: var(--nn-navy) !important;
  transition: all .18s !important;
  display: inline-flex !important;
  gap: 6px !important;
}
.nav-previous a:hover, .nav-next a:hover {
  background: var(--nn-saffron) !important;
  border-color: var(--nn-saffron) !important;
  color: #fff !important;
}

/* ============================================================
   SIDEBAR WIDGETS
   ============================================================ */
.widget-area .widget,
aside .widget {
  background: var(--nn-card) !important;
  border: 1px solid var(--nn-border) !important;
  border-radius: var(--nn-radius) !important;
  box-shadow: var(--nn-shadow-sm) !important;
  overflow: hidden !important;
  margin-bottom: 20px !important;
}

/* Widget title */
.widget-area .widget-title,
aside .widget-title,
.widgettitle {
  background: var(--nn-navy) !important;
  color: #fff !important;
  font-family: var(--nn-font-ui) !important;
  font-size: .8rem !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 11px 16px !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
}

.widget-area .widget .widget-content,
.widget-area .widget > :not(.widget-title):not(.widgettitle) {
  padding: 12px 14px !important;
}

/* Widget list items */
.widget ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.widget ul li {
  border-bottom: 1px solid var(--nn-border-lt) !important;
  padding: 9px 0 !important;
  font-size: .82rem !important;
  font-family: var(--nn-font-ui) !important;
}
.widget ul li:last-child { border-bottom: none !important; }
.widget ul li a {
  color: var(--nn-text2) !important;
  font-weight: 600 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 6px !important;
  line-height: 1.4 !important;
}
.widget ul li a::before {
  content: '▸' !important;
  color: var(--nn-saffron) !important;
  font-size: .8rem !important;
  flex-shrink: 0 !important;
  margin-top: 2px !important;
}
.widget ul li a:hover { color: var(--nn-saffron) !important; }

/* Recent Posts widget */
.widget_recent_entries .post-date {
  font-size: .7rem !important;
  color: var(--nn-light) !important;
  display: block !important;
  margin-top: 3px !important;
}

/* Search widget */
.widget_search .search-field {
  width: 100% !important;
  padding: 9px 13px !important;
  border: 1.5px solid var(--nn-border) !important;
  border-radius: var(--nn-radius-sm) !important;
  font-family: var(--nn-font) !important;
  font-size: .85rem !important;
  color: var(--nn-text) !important;
  transition: border-color .18s !important;
}
.widget_search .search-field:focus {
  outline: none !important;
  border-color: var(--nn-saffron) !important;
}
.widget_search .search-submit {
  background: var(--nn-saffron) !important;
  color: #fff !important;
  border: none !important;
  padding: 9px 16px !important;
  border-radius: var(--nn-radius-sm) !important;
  font-family: var(--nn-font-ui) !important;
  font-weight: 700 !important;
  font-size: .82rem !important;
  cursor: pointer !important;
  margin-top: 8px !important;
  width: 100% !important;
  transition: background .18s !important;
}
.widget_search .search-submit:hover { background: var(--nn-saffron-lt) !important; }

/* Categories widget */
.widget_categories ul li a,
.widget_archive ul li a {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}
.widget_categories ul li .cat-count,
.widget_categories .count {
  background: var(--nn-bg) !important;
  color: var(--nn-light) !important;
  font-size: .68rem !important;
  font-weight: 700 !important;
  padding: 2px 8px !important;
  border-radius: 10px !important;
  min-width: 28px !important;
  text-align: center !important;
}

/* Tag cloud */
.tagcloud a {
  background: var(--nn-saffron-bg) !important;
  color: var(--nn-saffron) !important;
  border: 1px solid rgba(230,81,0,.2) !important;
  padding: 4px 12px !important;
  border-radius: 14px !important;
  font-size: .72rem !important;
  font-family: var(--nn-font-ui) !important;
  font-weight: 600 !important;
  display: inline-block !important;
  margin: 3px !important;
  transition: all .15s !important;
}
.tagcloud a:hover {
  background: var(--nn-saffron) !important;
  color: #fff !important;
  border-color: var(--nn-saffron) !important;
}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer,
footer.site-footer {
  background: var(--nn-navy-dk) !important;
  color: rgba(255,255,255,.7) !important;
  border-top: 4px solid var(--nn-saffron) !important;
  margin-top: 0 !important;
}

.footer-widgets,
.site-footer .footer-widgets-container {
  background: var(--nn-navy-dk) !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
  padding: 36px 0 !important;
}

/* Footer widget titles */
.footer-widgets .widget-title,
.site-footer .widget-title,
.site-footer .widgettitle {
  background: transparent !important;
  color: #FFB74D !important;
  font-size: .75rem !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
  padding-bottom: 8px !important;
  margin-bottom: 14px !important;
}

/* Footer links */
.site-footer a,
.footer-widgets a {
  color: rgba(255,255,255,.6) !important;
  font-size: .82rem !important;
  font-family: var(--nn-font-ui) !important;
}
.site-footer a:hover,
.footer-widgets a:hover { color: #FFB74D !important; }

/* Footer widgets list items */
.footer-widgets .widget ul li {
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
  padding: 8px 0 !important;
}
.footer-widgets .widget ul li a::before { color: var(--nn-saffron-lt) !important; }

/* Copyright bar */
.site-info,
.copyright-bar,
.site-footer .site-info {
  background: rgba(0,0,0,.25) !important;
  color: rgba(255,255,255,.4) !important;
  text-align: center !important;
  padding: 14px 20px !important;
  font-size: .76rem !important;
  font-family: var(--nn-font-ui) !important;
}
.site-info a { color: rgba(255,255,255,.45) !important; }
.site-info a:hover { color: #FFB74D !important; }

/* ============================================================
   BUTTONS – GLOBAL
   ============================================================ */
.button,
button,
input[type="submit"],
input[type="button"],
.wp-block-button__link {
  background: var(--nn-saffron) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--nn-radius-sm) !important;
  font-family: var(--nn-font-ui) !important;
  font-weight: 700 !important;
  padding: 10px 22px !important;
  cursor: pointer !important;
  transition: background .18s !important;
  font-size: .88rem !important;
}
.button:hover, button:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover {
  background: var(--nn-saffron-lt) !important;
  color: #fff !important;
}

/* Secondary button style */
.button.secondary,
.btn-secondary {
  background: var(--nn-navy) !important;
}
.button.secondary:hover { background: var(--nn-navy-lt) !important; }

/* ============================================================
   FORMS (Comment form, Contact, etc.)
   ============================================================ */
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea,
.wpcf7-text, .wpcf7-email,
.wpcf7-textarea,
input[type="text"],
input[type="email"],
input[type="url"],
textarea,
select {
  border: 1.5px solid var(--nn-border) !important;
  border-radius: var(--nn-radius-sm) !important;
  padding: 10px 13px !important;
  font-family: var(--nn-font) !important;
  font-size: .88rem !important;
  color: var(--nn-text) !important;
  width: 100% !important;
  transition: border-color .18s !important;
  background: var(--nn-white) !important;
}
input:focus, textarea:focus, select:focus {
  outline: none !important;
  border-color: var(--nn-saffron) !important;
  box-shadow: 0 0 0 3px rgba(230,81,0,.1) !important;
}

/* Comment section */
#comments { margin-top: 32px !important; }
#comments .comments-title {
  font-family: var(--nn-font-ui) !important;
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  color: var(--nn-navy) !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid var(--nn-border) !important;
  margin-bottom: 20px !important;
}
.comment-list li {
  background: var(--nn-white) !important;
  border: 1px solid var(--nn-border) !important;
  border-radius: var(--nn-radius) !important;
  padding: 16px !important;
  margin-bottom: 14px !important;
  list-style: none !important;
}
.comment-author .fn { color: var(--nn-navy) !important; font-weight: 700 !important; }
.comment-metadata { font-size: .75rem !important; color: var(--nn-muted) !important; }

/* ============================================================
   RANK MATH SEO – Breadcrumb override
   ============================================================ */
.rank-math-breadcrumb p {
  font-family: var(--nn-font-ui) !important;
  font-size: .78rem !important;
  color: var(--nn-muted) !important;
  margin: 0 !important;
}
.rank-math-breadcrumb a { color: var(--nn-navy) !important; }
.rank-math-breadcrumb a:hover { color: var(--nn-saffron) !important; }

/* ============================================================
   SPECIAL CONTENT BOXES (use CSS classes in posts)
   .nn-important | .nn-dates | .nn-apply | .nn-info
   ============================================================ */
.nn-important {
  background: #FFF3E0;
  border-left: 4px solid var(--nn-saffron);
  border-radius: 0 var(--nn-radius) var(--nn-radius) 0;
  padding: 14px 18px;
  margin: 18px 0;
  font-size: .88rem;
}
.nn-important strong { color: var(--nn-saffron); }

.nn-info {
  background: #E3F2FD;
  border-left: 4px solid var(--nn-blue);
  border-radius: 0 var(--nn-radius) var(--nn-radius) 0;
  padding: 14px 18px;
  margin: 18px 0;
  font-size: .88rem;
}

.nn-apply-btn {
  display: inline-block;
  background: var(--nn-saffron);
  color: #fff !important;
  padding: 11px 28px;
  border-radius: var(--nn-radius-sm);
  font-family: var(--nn-font-ui);
  font-weight: 800;
  font-size: .9rem;
  margin: 14px 0;
  transition: background .2s;
  text-decoration: none !important;
}
.nn-apply-btn:hover { background: var(--nn-saffron-lt) !important; color: #fff !important; }

.nn-apply-btn-navy {
  background: var(--nn-navy) !important;
}
.nn-apply-btn-navy:hover { background: var(--nn-navy-lt) !important; }

/* ============================================================
   MOBILE RESPONSIVE
   ============================================================ */
@media (max-width: 768px) {
  .site-header .inside-header { flex-wrap: wrap; height: auto; padding: 12px 16px; }

  .entry-title { font-size: .95rem !important; }
  .single .entry-title { font-size: 1.2rem !important; }
  .single article.post,
  .page article.page { padding: 18px !important; }

  .entry-content h2 { font-size: 1rem !important; }
  .entry-content h3 { font-size: .9rem !important; }

  .archive-header { padding: 18px !important; }
  .archive-title { font-size: 1.1rem !important; }

  .page-numbers a,
  .page-numbers span { width: 34px !important; height: 34px !important; font-size: .8rem !important; }
}

@media (max-width: 480px) {
  body { font-size: 15px; }
  .site-header img.custom-logo { max-height: 36px; }
  .entry-content table { font-size: .78rem !important; }
  .entry-content table th,
  .entry-content table td { padding: 8px 10px !important; }
}
