/* =========================
   NFG THEME — CLEAN BASE
========================= */

:root {
  --nfg-bg-primary: #0A1A2F;
  --nfg-bg-secondary: #102A43;
  --nfg-border: #1F3B5C;

  --nfg-accent: #00D4FF;
  --nfg-accent-glow: #66F0FF;

  --nfg-text-primary: #EAF4FF;
  --nfg-text-secondary: #A8C3E8;
}

/* =========================
   GLOBAL
========================= */

body {
  background: var(--nfg-bg-primary) !important;
  color: var(--nfg-text-primary) !important;
}

p, span, small {
  color: var(--nfg-text-secondary) !important;
}

a {
  color: var(--nfg-accent) !important;
}

a:hover {
  color: var(--nfg-accent-glow) !important;
}

/* =========================
   HEADER
========================= */

.header,
.header-area,
.navbar,
.header-middle.bg--white {
  background: var(--nfg-bg-primary) !important;
  border-bottom: 1px solid var(--nfg-border) !important;
}

.header-middle-area {
  padding: 15px 0 !important;
}

.news-date {
  color: var(--nfg-text-secondary) !important;
}

/* =========================
   MENU (KEEP THEME DEFAULT)
========================= */

.menu-area {
  background: var(--nfg-bg-primary) !important;
  border-top: 1px solid var(--nfg-border);
  border-bottom: 1px solid var(--nfg-border);
}

.menu li a {
  color: var(--nfg-text-primary) !important;
  background: transparent !important;
  padding: 10px 16px !important;
}

.menu li a:hover {
  color: var(--nfg-accent) !important;
}

.menu li a.active {
  background: var(--nfg-accent) !important;
  color: #0A1A2F !important;
  border-radius: 3px;
}

/* =========================
   CONTENT AREAS
========================= */

.card,
.widget,
.sidebar,
.box {
  background: var(--nfg-bg-secondary) !important;
  border: 1px solid var(--nfg-border) !important;
}

/* =========================
   TOP NEWS BAR
========================= */

.top-news-ticker {
  background: var(--nfg-bg-primary) !important;
  border-top: 1px solid var(--nfg-border);
  border-bottom: 1px solid var(--nfg-border);
}

.top-news-ticker .title {
  background: var(--nfg-accent) !important;
  color: #0A1A2F !important;
}

/* =========================
   DATEPICKER
========================= */

.ui-datepicker {
  background: var(--nfg-bg-secondary) !important;
  border: 1px solid var(--nfg-border) !important;
}

.ui-datepicker-header {
  background: var(--nfg-bg-primary) !important;
  color: var(--nfg-text-primary) !important;
}

.ui-datepicker th {
  color: var(--nfg-text-secondary) !important;
}

.ui-datepicker td a {
  color: var(--nfg-text-primary) !important;
}

.ui-datepicker td a:hover,
.ui-datepicker td .ui-state-active {
  background: var(--nfg-accent) !important;
  color: #0A1A2F !important;
}

/* =========================
   LOGO CONTROL
========================= */

.logo img {
  height: 120px !important;
  width: auto !important;
}

/* =========================
   SAFE MOBILE (NO HACKS)
========================= */

@media (max-width: 768px) {

  .logo img {
    height: 50px !important;
  }

  .header-middle-area {
    padding: 10px 0 !important;
  }

  /* DO NOT TOUCH MENU SYSTEM */
}
/* =========================
   MOBILE WIDTH ALIGN FIX
========================= */

@media (max-width: 768px) {

    /* force ALL header sections same width */
    .header-middle,
    .menu-area,
    .top-news-ticker {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* kill bootstrap container padding ONLY in header */
    .header-middle .container,
    .menu-area .container,
    .top-news-ticker .container {
        max-width: 100% !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* align menu with logo */
    .menu-area {
        margin-top: 0 !important;
    }

    /* ensure menu spans properly */
    .menu {
        width: 100% !important;
    }
}
/* =========================
   FIX: BANNER HEIGHT BREAK (THEME OVERRIDE)
========================= */

@media only screen and (max-width: 991px) {
    .news-banner-thumb {
        height: auto !important;
    }
}
/* =========================
   TOP TICKER — FINAL CLEAN FIX
========================= */

/* full strip */
.top-news-ticker {
    background: #0A1A2F !important;
    border-top: 1px solid #1F3B5C !important;
    border-bottom: 1px solid #1F3B5C !important;
}

/* "Latest News" label */
.top-news-ticker .title {
    background: #00D4FF !important;
    color: #0A1A2F !important;
    font-weight: 700;
}

/* ticker text */
.top-news-ticker a,
.top-news-ticker span {
    color: #EAF4FF !important;
}

/* separators (dots) */
.top-news-ticker li::before {
    color: #00D4FF !important;
}
/* =========================
   FIX: LATEST NEWS BAR (EXACT TARGET)
========================= */

/* kill theme background */
.breaking-news-area.bg--base {
    background: #0A1A2F !important;
}

/* fix inner container spacing */
.breaking-news-area .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/* "Latest News :" label */
.breaking-news {
    color: #EAF4FF !important;
    font-size: 14px;
}

/* the bold label */
.breaking-news b {
    color: #00D4FF !important;
    font-weight: 700;
}

/* link */
.breaking-news a {
    color: #EAF4FF !important;
    text-decoration: none !important;
}

.breaking-news a:hover {
    color: #66F0FF !important;
}
/* =========================
   FIX: CATEGORY BAR (REAL FIX)
========================= */

/* kill white background from theme */
.header-bottom.bg--white {
    background: #0A1A2F !important;
    border-top: 1px solid #1F3B5C !important;
    border-bottom: 1px solid #1F3B5C !important;
}

/* align container with header */
.header-bottom .container {
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/* menu links */
.menu li a {
    color: #EAF4FF !important;
    background: transparent !important;
    padding: 10px 14px !important;
}

/* hover */
.menu li a:hover {
    color: #00D4FF !important;
}

/* active */
.menu li a.active {
    background: #00D4FF !important;
    color: #0A1A2F !important;
    border-radius: 3px;
}
/* MOBILE MENU — DO NOT OVERRIDE CORE BEHAVIOUR */

@media (max-width: 768px) {

    /* only styling, no positioning overrides */
    .menu-area {
        background: #0A1A2F !important;
    }

    .menu li a {
        border-bottom: 1px solid #1F3B5C;
    }

}
/* =========================
   FIX: ARTICLE TITLE COLOR
========================= */

/* main article title */
.news-details-content .title,
.news-details-content h1 {
    color: #00D4FF !important; /* NFG accent */
}

/* date under title */
.news-details-content .mb-30,
.news-details-content span {
    color: #A8C3E8 !important;
}

/* article body text */
.news-details-content p {
    color: #EAF4FF !important;
}
/* =========================
   GLOBAL WIDGET TITLE FIX (NFG)
========================= */

.widget-title,
.widget-title--style,
.widget h3 {
    color: #EAF4FF !important;
    font-weight: 600;
    border-bottom: 2px solid #00D4FF !important;
    padding-bottom: 6px;
    margin-bottom: 12px;
}

/* remove any theme junk lines */
.widget-title::after,
.widget-title::before {
    background: none !important;
    border: none !important;
}

/* section headers (if used elsewhere) */
.section-header h3,
.section-title {
    color: #EAF4FF !important;
    border-bottom: 2px solid #00D4FF !important;
}
/* =========================
   GLOBAL NEWS TEXT FIX (FINAL)
========================= */

/* ALL news titles everywhere */
.news-title,
.news-card-title,
.news-card h6,
.news-card h5,
.news-card a,
.trending-news a,
.trending-news h6,
.trending-news h5,
.latest-news a,
.latest-news h6,
.latest-news h5 {
    color: #00D4FF !important;
}

/* hover */
.news-title:hover,
.news-card a:hover,
.trending-news a:hover,
.latest-news a:hover {
    color: #66F0FF !important;
}

/* descriptions / meta */
.news-card p,
.news-content p,
.trending-news p,
.latest-news p {
    color: #A8C3E8 !important;
}
/* =========================
   ARTICLE TEXT — BRAND CORRECT
========================= */

/* main article text */
.news-details-content p {
    color: #A8C3E8 !important; /* secondary text */
    line-height: 1.7;
}

/* headings inside article */
.news-details-content h1 {
    color: #EAF4FF !important; /* primary */
}

.news-details-content h2,
.news-details-content h3 {
    color: #00D4FF !important; /* accent for structure */
}

.news-details-content h4,
.news-details-content h5,
.news-details-content h6 {
    color: #EAF4FF !important;
}

/* strong / emphasis */
.news-details-content strong {
    color: #EAF4FF !important;
}

/* links inside article */
.news-details-content a {
    color: #00D4FF !important;
}

.news-details-content a:hover {
    color: #66F0FF !important;
}
/* =========================
   FIX: MOBILE HEADER ICON VISIBILITY
========================= */

.header .icon,
.header i,
.header svg,
.header button,
.header .menu-toggle,
.header .search-btn {
    color: #EAF4FF !important;
    fill: #EAF4FF !important;
}

/* specific hamburger */
.menu-toggle i,
.menu-toggle svg {
    color: #EAF4FF !important;
    fill: #EAF4FF !important;
}

/* =========================
   FIX: SEARCH ICON (FORCED OVERRIDE)
========================= */

.header-wrapper .search-bar {
    color: #EAF4FF !important;
}

.header-wrapper .search-bar i {
    color: #EAF4FF !important;
}
.header-wrapper .search-bar:hover {
    color: #00D4FF !important;
}
/* =========================
   FIX: HAMBURGER MENU (FORCE VISIBLE)
========================= */

.header-bar span {
    background-color: #EAF4FF !important;
}

/* optional: accent hover */
.header-bar:hover span {
    background-color: #00D4FF !important;
}
.nfg-policy {
  background: #162F52;
  border: 1px solid #1F3B5C;
  border-radius: 20px;
  padding: 30px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.4);
  color: #EAF4FF;
}

.nfg-policy h1 {
  font-size: 42px;
  margin-bottom: 10px;
}

.nfg-policy h2 {
  margin-top: 30px;
  color: #00D4FF;
}

.nfg-policy h3 {
  color: #66F0FF;
}

.nfg-policy p,
.nfg-policy li {
  color: #A8C3E8;
}
/* =========================
   NFG POLICY SYSTEM
========================= */

.nfg-policy {
  max-width: 900px;
  margin: 40px auto;
  padding: 35px 40px;

  background: linear-gradient(180deg, #162F52 0%, #102A43 100%);
  border: 1px solid #1F3B5C;
  border-radius: 20px;

  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);

  color: #EAF4FF;
  line-height: 1.7;
}

/* Headings */

.nfg-policy h1 {
  font-size: 42px;
  margin-bottom: 10px;
  letter-spacing: -0.5px;
}

.nfg-policy h2 {
  margin-top: 35px;
  margin-bottom: 12px;
  font-size: 22px;
  color: #00D4FF;
}

.nfg-policy h3 {
  margin-top: 20px;
  font-size: 18px;
  color: #66F0FF;
}

/* Text */

.nfg-policy p {
  margin-bottom: 14px;
  color: #A8C3E8;
}

.nfg-policy strong {
  color: #EAF4FF;
}

/* Lists */

.nfg-policy ul {
  padding-left: 20px;
  margin-bottom: 15px;
}

.nfg-policy li {
  margin-bottom: 8px;
  color: #A8C3E8;
}

/* Links */

.nfg-policy a {
  color: #00D4FF;
  text-decoration: none;
}

.nfg-policy a:hover {
  color: #66F0FF;
  text-decoration: underline;
}

/* Contact Box */

.nfg-policy .contact-card {
  margin-top: 20px;
  padding: 18px;
  border-radius: 14px;

  background: rgba(10, 26, 47, 0.8);
  border: 1px solid rgba(0, 212, 255, 0.2);
}

/* Mobile */

@media (max-width: 768px) {
  .nfg-policy {
    padding: 25px 20px;
    margin: 20px 10px;
  }

  .nfg-policy h1 {
    font-size: 30px;
  }

  .nfg-policy h2 {
    font-size: 20px;
  }
}
/* =========================
   FIX: FOOTER / TITLE HEADINGS (NFG)
========================= */

.title {
  color: #EAF4FF !important; /* primary text */
  font-weight: 600;
}

/* Optional: add accent underline like widgets */
.title::after {
  content: "";
  display: block;
  width: 40px;
  height: 2px;
  background: #00D4FF;
  margin-top: 6px;
}
/* =========================
   FIX: CONTACT PAGE (NFG THEME)
========================= */

/* Right-side panel container */
.contact-info-item-area {
    background: linear-gradient(180deg, #162F52 0%, #102A43 100%) !important;
    border: 1px solid #1F3B5C !important;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.4);
}

/* Header title */
.contact-info-header .header-title {
    color: #00D4FF !important;
    font-weight: 700;
}

/* Header subtitle */
.contact-info-header p {
    color: #A8C3E8 !important;
}

/* Each info block */
.contact-info-item {
    border-bottom: 1px solid #1F3B5C;
    padding-bottom: 20px;
}

/* Remove border on last */
.contact-info-item:last-child {
    border-bottom: none;
}

/* Icons */
.contact-info-icon i {
    color: #00D4FF !important;
    font-size: 18px;
}

/* Titles (Address / Email / Phone) */
.contact-info-content .title {
    color: #EAF4FF !important;
    font-size: 16px;
    margin-bottom: 4px;
}

/* Text (actual data) */
.contact-info-content p {
    color: #A8C3E8 !important;
    margin: 0;
}

/* Hover polish */
.contact-info-item:hover .contact-info-icon i {
    color: #66F0FF !important;
}
/* =========================
   FIX: CONTACT FORM TEXT (DARKER / STRONGER)
========================= */

/* Main intro paragraph */
.contact-form-area > p {
  color: #CFE6FF !important;   /* brighter but still on-brand */
  font-weight: 500;
}

/* All other text inside form */
.contact-form-area p {
  color: #8FB3D9 !important;   /* darker than your current #A8C3E8 */
}

/* Labels / titles */
.contact-form-area .title {
  color: #00D4FF !important;   /* keep accent strong */
}
/* ========================================= */
/* GLOBAL IMAGE + LAYOUT CONTROL SYSTEM */
/* ========================================= */

/* Universal box model fix */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Prevent inline image issues */
img {
    max-width: 100%;
    height: auto;
    display: block;
    vertical-align: middle;
}

/* ========================================= */
/* GRID IMAGE CONTAINMENT (ANTI-BLEED FIX) */
/* ========================================= */

.news-blog-thumb,
.photo-news-blog,
.news-blog-item,
.small-photo-news-blog {
    position: relative;
    overflow: hidden;
    width: 100%;
}

/* Force images to behave */
.news-blog-thumb img,
.photo-news-blog img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ========================================= */
/* STANDARDISED IMAGE SIZING */
/* ========================================= */

/* Default news thumbnails */
.news-blog-thumb {
    height: 160px;
}

/* Photo section - large feature */
.photo-news-blog {
    height: 320px;
}

/* Photo section - smaller grid items */
.small-photo-news-blog .photo-news-blog {
    height: 155px;
}

/* ========================================= */
/* BOOTSTRAP COLUMN OVERFLOW FIX */
/* ========================================= */

.col-xl-3,
.col-lg-3,
.col-md-4,
.col-sm-6,
.col-6 {
    overflow: hidden;
}

/* Prevent container breaking */
.row {
    margin-left: 0;
    margin-right: 0;
}

/* ========================================= */
/* TITLE / TEXT CONTROL (OPTIONAL BUT SMART) */
/* ========================================= */

.photo-news-title,
.news-blog-content .title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* ========================================= */
/* SAFETY: FORCE CONSISTENT CARD BEHAVIOUR */
/* ========================================= */

.news-blog-item,
.photo-news-blog {
    display: block;
}

/* ========================================= */
/* OPTIONAL: HOVER POLISH (NICE TOUCH) */
/* ========================================= */

.news-blog-thumb img,
.photo-news-blog img {
    transition: transform 0.3s ease;
}

.news-blog-item:hover img,
.photo-news-blog:hover img {
    transform: scale(1.05);
}