/*
 * NCC 2026 red main-KV compatibility theme
 * Place after the original CSS files. This file keeps the existing PHP/HTML structure,
 * but makes the confirmed red KV display as the main visual and adjusts header/footer colors.
 */
:root {
  --ncc-red: #b40005;
  --ncc-red-2: #d20a12;
  --ncc-red-deep: #780005;
  --ncc-red-dark: #4b0002;
  --ncc-gold: #f8d979;
  --ncc-gold-2: #fff0ad;
  --ncc-cream: #fff7ef;
  --ncc-text: #4a1612;
  --ncc-muted: #7b544f;
  --ncc-border: rgba(180, 0, 5, .14);
  --ncc-shadow: 0 18px 48px rgba(126, 0, 5, .13);
}

html,
body.ncc2026-red-theme,
.ncc2026-red-theme .page-wrapper {
  background: var(--ncc-cream) !important;
  color: var(--ncc-text);
}

/* ================= Header ================= */
.ncc2026-red-theme #site-header.header {
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.ncc2026-red-theme .header-top {
  background: linear-gradient(90deg, #790005 0%, #ab0008 55%, #7d0005 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,.16);
  color: #fff9e8 !important;
  padding: 7px 36px;
}

.ncc2026-red-theme .header-top .row {
  margin: 0;
}

.ncc2026-red-theme .topbar-link ul {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 28px;
  margin: 0;
  padding: 0;
  align-items: center;
}

.ncc2026-red-theme .topbar-link li,
.ncc2026-red-theme .topbar-link span,
.ncc2026-red-theme .topbar-link a {
  color: #fff9e8 !important;
  font-size: 13px;
  line-height: 1.5;
}

.ncc2026-red-theme .topbar-link i,
.ncc2026-red-theme .search-icon i {
  color: var(--ncc-gold) !important;
}

.ncc2026-red-theme #header-wrap {
  background: rgba(255, 255, 255, .95) !important;
  border-bottom: 1px solid rgba(180,0,5,.12);
  box-shadow: 0 8px 28px rgba(90,0,5,.10);
  padding: 10px 36px;
}

.ncc2026-red-theme .navbar {
  padding: 0 !important;
  background: transparent !important;
}

.ncc2026-red-theme .navbar-brand.logo {
  margin-right: 28px;
}

.ncc2026-red-theme .navbar-brand.logo img {
  max-height: 54px;
  width: auto;
  object-fit: contain;
}

.ncc2026-red-theme .navbar-nav {
  background: #fff !important;
  border: 1px solid rgba(180,0,5,.11);
  border-radius: 999px;
  padding: 5px 10px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.5);
}

.ncc2026-red-theme .navbar-nav .nav-link {
  color: #7c0004 !important;
  border-radius: 999px;
  padding: 10px 18px !important;
  font-weight: 700;
  line-height: 1.1;
}

.ncc2026-red-theme .navbar-nav .nav-link:hover,
.ncc2026-red-theme .navbar-nav .nav-link.active,
.ncc2026-red-theme .navbar-nav .show > .nav-link {
  color: #fff !important;
  background: linear-gradient(135deg, #9c0006, #d20a12) !important;
}

.ncc2026-red-theme .dropdown-menu {
  border: 1px solid rgba(180,0,5,.13);
  box-shadow: 0 14px 38px rgba(80,0,4,.16);
  border-radius: 14px;
}

.ncc2026-red-theme .dropdown-menu a {
  color: #7c0004 !important;
}

.ncc2026-red-theme .dropdown-menu a:hover {
  color: #fff !important;
  background: #b40005 !important;
}

.ncc2026-red-theme .themeht-btn.primary-btn,
.ncc2026-red-theme .themeht-btn.white-btn,
.ncc2026-red-theme .right-nav .themeht-btn {
  border: 0 !important;
  color: #7a0004 !important;
  background: linear-gradient(135deg, #fff1a6 0%, #ffd46b 46%, #f0a633 100%) !important;
  box-shadow: 0 10px 24px rgba(155, 0, 6, .18);
}

.ncc2026-red-theme .themeht-btn.primary-btn span,
.ncc2026-red-theme .themeht-btn.white-btn span,
.ncc2026-red-theme .right-nav .themeht-btn span,
.ncc2026-red-theme .themeht-btn.primary-btn i,
.ncc2026-red-theme .themeht-btn.white-btn i,
.ncc2026-red-theme .right-nav .themeht-btn i {
  color: #7a0004 !important;
}

/* ================= Confirmed red main KV ================= */
.ncc2026-red-theme .banner-one,
.ncc2026-red-theme .banner-slider,
.ncc2026-red-theme .banner-swiper {
  background:
    radial-gradient(circle at 18% 22%, rgba(255,208,120,.20), transparent 28%),
    radial-gradient(circle at 85% 18%, rgba(255,160,100,.16), transparent 24%),
    linear-gradient(120deg, #650003 0%, #b40005 46%, #8c0005 100%) !important;
  padding: 34px 0 38px !important;
  overflow: hidden;
}

.ncc2026-red-theme .banner-one::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: url('../images/kv2026-red.jpg') center center / cover no-repeat;
  opacity: .10;
  filter: blur(2px);
}

.ncc2026-red-theme .banner-one .swiper-wrapper {
  display: block !important;
  height: auto !important;
  transform: none !important;
}

.ncc2026-red-theme .banner-one .swiper-slide {
  width: 100% !important;
  opacity: 1 !important;
}

.ncc2026-red-theme .banner-content {
  position: relative;
  z-index: 2;
  padding: 0 !important;
}

.ncc2026-red-theme .banner-content .container-fluid {
  max-width: 1320px;
  margin: 0 auto;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.ncc2026-red-theme .banner-content .row {
  position: relative;
  display: block !important;
  margin: 0;
}

/* Make the uploaded red KV occupy the full banner width. The text card is hidden because the KV already contains the complete event information. */
.ncc2026-red-theme .banner-one .banner-content .row > .col-lg-6:first-child {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding: 0 !important;
}

.ncc2026-red-theme .banner-one .banner-content .row > .col-lg-6:nth-child(2) {
  display: none !important;
}

.ncc2026-red-theme .banner-one .mobile-bg-img {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 2 / 1;
  border-radius: 18px !important;
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #970006 !important;
  box-shadow: 0 24px 60px rgba(64,0,3,.28);
  border: 1px solid rgba(255,230,160,.22);
}

.ncc2026-red-theme .banner-one .swiper-button-next,
.ncc2026-red-theme .banner-one .swiper-button-prev {
  display: none !important;
}

/* Backup if a normal img is used somewhere inside the KV */
.ncc2026-red-theme .banner-one img,
.ncc2026-red-theme .ny_banner img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 18px;
}

/* ================= Content style: lighter, less all-red ================= */
.ncc2026-red-theme .page-content section {
  position: relative;
}

.ncc2026-red-theme .light-bg,
.ncc2026-red-theme section.light-bg {
  background: #fff5eb !important;
}

.ncc2026-red-theme .theme-title h6 {
  color: #b40005 !important;
  letter-spacing: .08em;
}

.ncc2026-red-theme .theme-title h2,
.ncc2026-red-theme h1,
.ncc2026-red-theme h2,
.ncc2026-red-theme h3,
.ncc2026-red-theme h4,
.ncc2026-red-theme h5 {
  color: #7c0004;
}

.ncc2026-red-theme .theme-bg {
  background: linear-gradient(135deg, #b00005 0%, #d20a12 62%, #8c0005 100%) !important;
}

.ncc2026-red-theme .about-text2.theme-bg {
  box-shadow: 0 16px 34px rgba(124, 0, 4, .18);
}

.ncc2026-red-theme .marquee-icon-box,
.ncc2026-red-theme .post-card,
.ncc2026-red-theme .portfolio-item,
.ncc2026-red-theme .box-shadow,
.ncc2026-red-theme .rounded {
  box-shadow: var(--ncc-shadow);
}

.ncc2026-red-theme .marquee-icon-box {
  background: #fff !important;
  border: 1px solid var(--ncc-border);
  border-radius: 16px !important;
  min-height: 122px;
}

.ncc2026-red-theme .marquee-icon-box i,
.ncc2026-red-theme .list-icon i,
.ncc2026-red-theme .themeht-link-btn i,
.ncc2026-red-theme .themeht-link-btn span {
  color: #b40005 !important;
}

.ncc2026-red-theme .marquee-icon-box:hover {
  transform: translateY(-4px);
  border-color: rgba(180,0,5,.30);
}

.ncc2026-red-theme .working-hours-item {
  border-bottom: 1px solid rgba(255,255,255,.22) !important;
}

.ncc2026-red-theme .dark-bg {
  background-color: #510002 !important;
}

.ncc2026-red-theme .testimonial.style-2 .testimonial-content p {
  color: #fff7e8 !important;
}

.ncc2026-red-theme .testimonial-caption h4 {
  color: #fff0ad !important;
}

.ncc2026-red-theme .post-card {
  background: #fff !important;
  border: 1px solid var(--ncc-border);
  border-radius: 16px;
}

.ncc2026-red-theme .post-title a {
  color: #7c0004 !important;
}

.ncc2026-red-theme .post-title a:hover {
  color: #d20a12 !important;
}

/* ================= Footer ================= */
.ncc2026-red-theme .footer,
.ncc2026-red-theme .secondary-footer {
  background: linear-gradient(135deg, #4b0002 0%, #7c0004 52%, #aa0007 100%) !important;
  color: #fff8e6 !important;
}

.ncc2026-red-theme .footer a,
.ncc2026-red-theme .secondary-footer a,
.ncc2026-red-theme .copyright {
  color: #fff4c9 !important;
}

/* ================= Responsive ================= */
@media (max-width: 1199px) {
  .ncc2026-red-theme .header-top,
  .ncc2026-red-theme #header-wrap {
    padding-left: 18px;
    padding-right: 18px;
  }
  .ncc2026-red-theme .navbar-nav {
    border-radius: 16px;
    margin-top: 12px;
  }
}

@media (max-width: 991px) {
  .ncc2026-red-theme .topbar-link li,
  .ncc2026-red-theme .topbar-link span,
  .ncc2026-red-theme .topbar-link a {
    font-size: 12px;
  }
  .ncc2026-red-theme .right-nav {
    margin-left: 10px;
  }
  .ncc2026-red-theme .banner-one,
  .ncc2026-red-theme .banner-slider,
  .ncc2026-red-theme .banner-swiper {
    padding: 20px 0 24px !important;
  }
  .ncc2026-red-theme .banner-content .container-fluid {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .ncc2026-red-theme .banner-one .mobile-bg-img {
    border-radius: 12px !important;
    aspect-ratio: 2 / 1;
  }
}

@media (max-width: 575px) {
  .ncc2026-red-theme .header-top {
    display: none;
  }
  .ncc2026-red-theme #header-wrap {
    padding: 8px 12px;
  }
  .ncc2026-red-theme .navbar-brand.logo img {
    max-height: 42px;
  }
  .ncc2026-red-theme .right-nav .themeht-btn {
    display: none !important;
  }
  .ncc2026-red-theme .banner-one .mobile-bg-img {
    aspect-ratio: 2 / 1;
    background-size: contain !important;
  }
}

/* ================= V3 update: slogan banner + news section refinement ================= */
.ncc2026-red-theme .ncc-slogan-section {
  padding: 76px 0 !important;
  background:
    linear-gradient(135deg, rgba(86, 0, 5, .82), rgba(176, 0, 5, .52)),
    url('../images/bg-middle-red.jpg') center center / cover no-repeat !important;
  position: relative;
  overflow: hidden;
}

.ncc2026-red-theme .ncc-slogan-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, rgba(255, 234, 184, .08), transparent 40%);
  pointer-events: none;
}

.ncc2026-red-theme .ncc-slogan-section .container,
.ncc2026-red-theme .ncc-news-section .container {
  position: relative;
  z-index: 2;
}

.ncc2026-red-theme .ncc-slogan-section .testimonial.style-2 {
  background: rgba(255, 255, 255, .045);
  border: 1px solid rgba(255, 232, 170, .18);
  border-radius: 28px;
  padding: 38px 42px;
  text-align: center;
  box-shadow: 0 22px 54px rgba(62, 0, 3, .22);
  backdrop-filter: blur(2px);
}

.ncc2026-red-theme .ncc-slogan-section .testimonial-quote {
  display: none !important;
}

.ncc2026-red-theme .ncc-slogan-section .testimonial-content p {
  margin-bottom: 14px;
  color: #fff9ea !important;
  font-size: clamp(34px, 3vw, 58px);
  line-height: 1.26;
  font-weight: 800;
  letter-spacing: .05em;
  text-shadow: 0 8px 24px rgba(70, 0, 3, .2);
}

.ncc2026-red-theme .ncc-slogan-section .testimonial-caption h4 {
  color: #ffe8a3 !important;
  font-size: clamp(20px, 1.7vw, 34px);
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: .02em;
}

.ncc2026-red-theme .ncc-news-section {
  padding-top: 95px !important;
  padding-bottom: 90px !important;
}

.ncc2026-red-theme .ncc-news-section .post-swiper {
  overflow: visible;
}

.ncc2026-red-theme .ncc-news-section .swiper-wrapper {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  transform: none !important;
  height: auto !important;
}

.ncc2026-red-theme .ncc-news-section .swiper-slide {
  width: auto !important;
  margin-right: 0 !important;
  height: auto !important;
}

.ncc2026-red-theme .ncc-news-section #post-pagination {
  display: none !important;
}

.ncc2026-red-theme .ncc-news-section .post-card.style-2 {
  display: flex;
  flex-direction: column;
  min-height: 245px;
  height: 100%;
  padding: 0;
  border-radius: 24px;
  border: 1px solid rgba(180, 0, 5, .12);
  background: linear-gradient(180deg, #fff 0%, #fff9f4 100%) !important;
  box-shadow: 0 18px 40px rgba(126, 0, 5, .08);
  transition: transform .25s ease, box-shadow .25s ease;
}

.ncc2026-red-theme .ncc-news-section .post-card.style-2:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 44px rgba(126, 0, 5, .12);
}

.ncc2026-red-theme .ncc-news-section .post-card.style-2 .post-image {
  display: none !important;
}

.ncc2026-red-theme .ncc-news-section .post-card.style-2 .post-desc {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 28px 28px 24px !important;
}

.ncc2026-red-theme .ncc-news-section .post-bottom {
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(180, 0, 5, .10);
}

.ncc2026-red-theme .ncc-news-section .post-bottom li,
.ncc2026-red-theme .ncc-news-section .post-bottom li a,
.ncc2026-red-theme .ncc-news-section .posted-on {
  color: #7a7d88 !important;
  font-size: 14px;
  font-weight: 700;
  text-transform: none !important;
}

.ncc2026-red-theme .ncc-news-section .post-bottom i {
  color: #0b2c73 !important;
  font-size: 16px;
  margin-right: 6px;
}

.ncc2026-red-theme .ncc-news-section .post-title {
  margin-bottom: 20px;
}

.ncc2026-red-theme .ncc-news-section .post-title h4 {
  margin-bottom: 0;
  font-size: 22px;
  line-height: 1.45;
  min-height: 64px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.ncc2026-red-theme .ncc-news-section .post-title a {
  color: #6d0c09 !important;
}

.ncc2026-red-theme .ncc-news-section .themeht-link-btn {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 700;
}

.ncc2026-red-theme .ncc-news-section .themeht-link-btn i {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #163c83;
  color: #fff !important;
  line-height: 1;
}

.ncc2026-red-theme .ncc-news-section .themeht-btn.primary-btn {
  min-width: 132px;
  justify-content: center;
}

@media (max-width: 1199px) {
  .ncc2026-red-theme .ncc-news-section .swiper-wrapper {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991px) {
  .ncc2026-red-theme .ncc-slogan-section {
    padding: 54px 0 !important;
  }
  .ncc2026-red-theme .ncc-slogan-section .testimonial.style-2 {
    padding: 28px 26px;
  }
}

@media (max-width: 767px) {
  .ncc2026-red-theme .ncc-news-section .swiper-wrapper {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .ncc2026-red-theme .ncc-news-section .post-card.style-2 {
    min-height: 210px;
  }
  .ncc2026-red-theme .ncc-news-section .post-title h4 {
    font-size: 20px;
    min-height: 58px;
  }
}

@media (max-width: 575px) {
  .ncc2026-red-theme .ncc-slogan-section .testimonial-content p {
    font-size: 28px;
  }
  .ncc2026-red-theme .ncc-slogan-section .testimonial-caption h4 {
    font-size: 18px;
  }
  .ncc2026-red-theme .ncc-news-section {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }
  .ncc2026-red-theme .ncc-news-section .post-card.style-2 .post-desc {
    padding: 22px 20px 20px !important;
  }
}

/* ================= V4 update: secondary pages red theme ================= */
.ncc2026-red-theme.ncc2026-subpage {
  background: #fff7ef !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-wrapper {
  background:
    radial-gradient(circle at 8% 22%, rgba(255, 211, 120, .10), transparent 28%),
    radial-gradient(circle at 90% 40%, rgba(180, 0, 5, .08), transparent 30%),
    #fff7ef !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-title {
  position: relative;
  overflow: hidden;
  padding: 86px 70px !important;
  margin-bottom: 0 !important;
  background:
    linear-gradient(135deg, rgba(92,0,4,.92), rgba(186,0,8,.84)),
    url('../images/bg-middle-red.jpg') center center / cover no-repeat !important;
  border-bottom: 1px solid rgba(255, 220, 150, .18);
}

.ncc2026-red-theme.ncc2026-subpage .page-title::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 12% 28%, rgba(255, 240, 178, .16), transparent 24%),
    radial-gradient(circle at 84% 16%, rgba(255, 220, 140, .12), transparent 25%);
  pointer-events: none;
}

.ncc2026-red-theme.ncc2026-subpage .page-title .container-fluid,
.ncc2026-red-theme.ncc2026-subpage .page-title .row {
  position: relative;
  z-index: 2;
}

.ncc2026-red-theme.ncc2026-subpage .page-title h1 {
  margin: 0;
  color: #fff9ea !important;
  font-size: clamp(34px, 3.4vw, 56px);
  font-weight: 800;
  letter-spacing: .04em;
  text-shadow: 0 8px 24px rgba(58,0,3,.24);
}

.ncc2026-red-theme.ncc2026-subpage .page-breadcrumb {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 18px;
  border: 1px solid rgba(255, 231, 170, .25);
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  backdrop-filter: blur(4px);
}

.ncc2026-red-theme.ncc2026-subpage .breadcrumb {
  margin: 0;
}

.ncc2026-red-theme.ncc2026-subpage .breadcrumb-item,
.ncc2026-red-theme.ncc2026-subpage .breadcrumb-item a,
.ncc2026-red-theme.ncc2026-subpage .breadcrumb-item.active {
  color: #fff4c9 !important;
  font-weight: 700;
}

.ncc2026-red-theme.ncc2026-subpage .breadcrumb-item + .breadcrumb-item::before {
  color: rgba(255,255,255,.68) !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content {
  padding: 70px 0 40px;
  background: transparent !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content > .container,
.ncc2026-red-theme.ncc2026-subpage .page-content .container {
  max-width: 1180px;
}

.ncc2026-red-theme.ncc2026-subpage .page-content .container,
.ncc2026-red-theme.ncc2026-subpage .page-content .container-fluid:not(.p-0) {
  position: relative;
}

.ncc2026-red-theme.ncc2026-subpage .page-content h1,
.ncc2026-red-theme.ncc2026-subpage .page-content h2,
.ncc2026-red-theme.ncc2026-subpage .page-content h3,
.ncc2026-red-theme.ncc2026-subpage .page-content h4,
.ncc2026-red-theme.ncc2026-subpage .page-content h5 {
  color: #7a0004 !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content h2::after,
.ncc2026-red-theme.ncc2026-subpage .page-content h3::after {
  content: "";
  display: block;
  width: 52px;
  height: 4px;
  margin-top: 12px;
  border-radius: 999px;
  background: linear-gradient(90deg, #b40005, #f0b348);
}

.ncc2026-red-theme.ncc2026-subpage .page-content p,
.ncc2026-red-theme.ncc2026-subpage .page-content li,
.ncc2026-red-theme.ncc2026-subpage .page-content td,
.ncc2026-red-theme.ncc2026-subpage .page-content th {
  color: #56312c;
  line-height: 1.9;
}

.ncc2026-red-theme.ncc2026-subpage .page-content a {
  color: #a00006;
}

.ncc2026-red-theme.ncc2026-subpage .page-content a:hover {
  color: #d20a12;
}

.ncc2026-red-theme.ncc2026-subpage .page-content img {
  max-width: 100%;
  height: auto;
}

.ncc2026-red-theme.ncc2026-subpage .page-content table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid rgba(180,0,5,.13) !important;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 16px 44px rgba(126,0,5,.06);
}

.ncc2026-red-theme.ncc2026-subpage .page-content table th,
.ncc2026-red-theme.ncc2026-subpage .page-content table td {
  border-color: rgba(180,0,5,.10) !important;
  padding: 14px 16px;
}

.ncc2026-red-theme.ncc2026-subpage .page-content table th {
  background: #fff1e6;
  color: #7a0004 !important;
  font-weight: 800;
}

.ncc2026-red-theme.ncc2026-subpage .page-content .themeht-btn,
.ncc2026-red-theme.ncc2026-subpage .page-content input[type="submit"],
.ncc2026-red-theme.ncc2026-subpage .page-content button {
  border-color: transparent !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content .white-bg,
.ncc2026-red-theme.ncc2026-subpage .page-content .box-shadow,
.ncc2026-red-theme.ncc2026-subpage .page-content .post-card,
.ncc2026-red-theme.ncc2026-subpage .page-content .team-member,
.ncc2026-red-theme.ncc2026-subpage .page-content .accordion-item,
.ncc2026-red-theme.ncc2026-subpage .page-content .contact-box,
.ncc2026-red-theme.ncc2026-subpage .page-content .featured-item,
.ncc2026-red-theme.ncc2026-subpage .page-content .service-item {
  background: #fff !important;
  border: 1px solid rgba(180,0,5,.12) !important;
  border-radius: 20px !important;
  box-shadow: 0 16px 42px rgba(126,0,5,.07) !important;
}

.ncc2026-red-theme.ncc2026-subpage .accordion-button:not(.collapsed),
.ncc2026-red-theme.ncc2026-subpage .accordion-button:hover {
  color: #fff !important;
  background: linear-gradient(135deg, #b40005, #d20a12) !important;
}

.ncc2026-red-theme.ncc2026-subpage .form-control,
.ncc2026-red-theme.ncc2026-subpage .form-select {
  border-color: rgba(180,0,5,.16) !important;
  border-radius: 12px;
}

.ncc2026-red-theme.ncc2026-subpage .form-control:focus,
.ncc2026-red-theme.ncc2026-subpage .form-select:focus {
  border-color: #c50009 !important;
  box-shadow: 0 0 0 .2rem rgba(180,0,5,.12) !important;
}

.ncc2026-red-theme.ncc2026-subpage .scroll-top {
  background: linear-gradient(135deg, #b40005, #d20a12) !important;
  color: #fff !important;
}

@media (max-width: 991px) {
  .ncc2026-red-theme.ncc2026-subpage .page-title {
    padding: 60px 22px !important;
  }
  .ncc2026-red-theme.ncc2026-subpage .page-title .text-lg-end {
    text-align: left !important;
  }
  .ncc2026-red-theme.ncc2026-subpage .page-breadcrumb {
    border-radius: 18px;
  }
  .ncc2026-red-theme.ncc2026-subpage .page-content {
    padding-top: 48px;
  }
}

@media (max-width: 575px) {
  .ncc2026-red-theme.ncc2026-subpage .page-title {
    padding: 44px 16px !important;
  }
  .ncc2026-red-theme.ncc2026-subpage .page-title h1 {
    font-size: 30px;
  }
}

/* ================= Subpage V2 refinement: cleaner inner pages + nav vertical alignment ================= */
.ncc2026-red-theme #header-wrap {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.ncc2026-red-theme #header-wrap .navbar,
.ncc2026-red-theme #header-wrap .navbar-collapse,
.ncc2026-red-theme #header-wrap .navbar-nav,
.ncc2026-red-theme #header-wrap .nav-item,
.ncc2026-red-theme #header-wrap .right-nav {
  align-items: center !important;
}

.ncc2026-red-theme #header-wrap .navbar {
  min-height: 62px;
}

.ncc2026-red-theme #header-wrap .navbar-nav {
  min-height: 52px;
  padding: 6px 12px !important;
  display: flex;
}

.ncc2026-red-theme #header-wrap .nav-item {
  display: flex !important;
  min-height: 44px;
}

.ncc2026-red-theme #header-wrap .navbar-nav .nav-link {
  min-height: 42px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.ncc2026-red-theme #header-wrap .navbar-nav .dropdown-toggle::after {
  align-self: center !important;
  margin-top: 0 !important;
  margin-left: 8px !important;
  vertical-align: middle !important;
  transform: translateY(0) !important;
}

.ncc2026-red-theme #header-wrap .right-nav .themeht-btn {
  min-height: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 25px !important;
  line-height: 1 !important;
  border-radius: 999px !important;
}

.ncc2026-red-theme #header-wrap .right-nav .themeht-btn span,
.ncc2026-red-theme #header-wrap .right-nav .themeht-btn i {
  line-height: 1 !important;
}

.ncc2026-red-theme .dropdown-menu {
  padding: 10px !important;
  margin-top: 10px !important;
}

.ncc2026-red-theme .dropdown-menu a {
  display: flex !important;
  align-items: center !important;
  min-height: 40px !important;
  padding: 10px 16px !important;
  border-radius: 10px !important;
  line-height: 1.35 !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-title {
  padding: 64px 70px 58px !important;
  background:
    linear-gradient(135deg, rgba(92,0,4,.88), rgba(190,0,8,.78)),
    url('../images/bg-middle-red.jpg') center center / cover no-repeat !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-title h1 {
  font-size: clamp(34px, 3vw, 50px) !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content {
  padding: 56px 0 72px !important;
  background:
    radial-gradient(circle at 10% 15%, rgba(255, 220, 160, .16), transparent 24%),
    radial-gradient(circle at 88% 10%, rgba(180, 0, 5, .08), transparent 28%),
    linear-gradient(180deg, #fffaf3 0%, #fff5ed 100%) !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content > div:not(.container):not(.container-fluid),
.ncc2026-red-theme.ncc2026-subpage .page-content > section:not(.page-title),
.ncc2026-red-theme.ncc2026-subpage .page-content .container,
.ncc2026-red-theme.ncc2026-subpage .page-content .container-fluid:not(.p-0) {
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content > div:not(.container):not(.container-fluid),
.ncc2026-red-theme.ncc2026-subpage .page-content > section:not(.page-title) > .container,
.ncc2026-red-theme.ncc2026-subpage .page-content .content,
.ncc2026-red-theme.ncc2026-subpage .page-content .content-box,
.ncc2026-red-theme.ncc2026-subpage .page-content .article,
.ncc2026-red-theme.ncc2026-subpage .page-content .article-content,
.ncc2026-red-theme.ncc2026-subpage .page-content .showcontent,
.ncc2026-red-theme.ncc2026-subpage .page-content .bodycontent,
.ncc2026-red-theme.ncc2026-subpage .page-content .info-content {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid rgba(180,0,5,.10) !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 48px rgba(120,0,6,.07) !important;
  padding: 38px 42px !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content > div:empty,
.ncc2026-red-theme.ncc2026-subpage .page-content p:empty,
.ncc2026-red-theme.ncc2026-subpage .page-content br + br + br {
  display: none !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content h2,
.ncc2026-red-theme.ncc2026-subpage .page-content h3 {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
  line-height: 1.35 !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content p {
  margin-bottom: 14px !important;
  line-height: 1.9 !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content ul,
.ncc2026-red-theme.ncc2026-subpage .page-content ol {
  margin-bottom: 20px !important;
  padding-left: 1.4em;
}

.ncc2026-red-theme.ncc2026-subpage .page-content li {
  margin-bottom: 8px;
}

/* Organization-like content: make names less sparse and cleaner */
.ncc2026-red-theme.ncc2026-subpage .page-content table {
  margin: 20px auto 32px !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content table td,
.ncc2026-red-theme.ncc2026-subpage .page-content table th {
  vertical-align: middle !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content table td:empty,
.ncc2026-red-theme.ncc2026-subpage .page-content table th:empty {
  display: none;
}

/* Traffic page: accordion / route items */
.ncc2026-red-theme.ncc2026-subpage .page-content .accordion,
.ncc2026-red-theme.ncc2026-subpage .page-content .panel-group {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ncc2026-red-theme.ncc2026-subpage .page-content .accordion-item,
.ncc2026-red-theme.ncc2026-subpage .page-content .panel,
.ncc2026-red-theme.ncc2026-subpage .page-content .panel-default {
  border: 1px solid rgba(180,0,5,.11) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(120,0,6,.055) !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content .accordion-button,
.ncc2026-red-theme.ncc2026-subpage .page-content .panel-heading,
.ncc2026-red-theme.ncc2026-subpage .page-content .panel-title,
.ncc2026-red-theme.ncc2026-subpage .page-content .panel-title a {
  color: #6f0505 !important;
  background: #fff !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content .panel-heading,
.ncc2026-red-theme.ncc2026-subpage .page-content .accordion-button {
  padding: 18px 24px !important;
  min-height: 58px;
}

.ncc2026-red-theme.ncc2026-subpage .page-content .panel-body,
.ncc2026-red-theme.ncc2026-subpage .page-content .accordion-body {
  padding: 18px 24px 24px !important;
  color: #56312c !important;
  background: #fffaf5 !important;
}

.ncc2026-red-theme.ncc2026-subpage .page-content .panel-heading::after,
.ncc2026-red-theme.ncc2026-subpage .page-content .accordion-button::after {
  transform: translateY(0) !important;
}

/* Images on traffic/contact pages */
.ncc2026-red-theme.ncc2026-subpage .page-content img {
  border-radius: 20px;
}

.ncc2026-red-theme.ncc2026-subpage .page-content img[style*="width"],
.ncc2026-red-theme.ncc2026-subpage .page-content img[style*="height"] {
  max-width: 100% !important;
  height: auto !important;
}

/* Download/contact list buttons */
.ncc2026-red-theme.ncc2026-subpage .page-content a[href$=".pdf"],
.ncc2026-red-theme.ncc2026-subpage .page-content a[href$=".doc"],
.ncc2026-red-theme.ncc2026-subpage .page-content a[href$=".docx"],
.ncc2026-red-theme.ncc2026-subpage .page-content a[href$=".ppt"],
.ncc2026-red-theme.ncc2026-subpage .page-content a[href$=".pptx"],
.ncc2026-red-theme.ncc2026-subpage .page-content a[href$=".zip"] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 6px 8px 6px 0;
  padding: 10px 18px;
  border-radius: 999px;
  background: linear-gradient(135deg, #b40005, #d20a12);
  color: #fff !important;
  font-weight: 700;
  box-shadow: 0 10px 24px rgba(180,0,5,.16);
}

@media (max-width: 1199px) {
  .ncc2026-red-theme #header-wrap .navbar-nav .nav-link {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

@media (max-width: 991px) {
  .ncc2026-red-theme #header-wrap .navbar-nav {
    border-radius: 18px !important;
    align-items: stretch !important;
    padding: 10px !important;
  }
  .ncc2026-red-theme #header-wrap .nav-item,
  .ncc2026-red-theme #header-wrap .navbar-nav .nav-link {
    width: 100%;
    justify-content: flex-start !important;
  }
  .ncc2026-red-theme.ncc2026-subpage .page-title {
    padding: 52px 22px 46px !important;
  }
  .ncc2026-red-theme.ncc2026-subpage .page-content > div:not(.container):not(.container-fluid),
  .ncc2026-red-theme.ncc2026-subpage .page-content > section:not(.page-title) > .container,
  .ncc2026-red-theme.ncc2026-subpage .page-content .content,
  .ncc2026-red-theme.ncc2026-subpage .page-content .content-box,
  .ncc2026-red-theme.ncc2026-subpage .page-content .article,
  .ncc2026-red-theme.ncc2026-subpage .page-content .article-content,
  .ncc2026-red-theme.ncc2026-subpage .page-content .showcontent,
  .ncc2026-red-theme.ncc2026-subpage .page-content .bodycontent,
  .ncc2026-red-theme.ncc2026-subpage .page-content .info-content {
    padding: 28px 22px !important;
    border-radius: 18px !important;
  }
}

@media (max-width: 575px) {
  .ncc2026-red-theme.ncc2026-subpage .page-content {
    padding: 36px 0 52px !important;
  }
  .ncc2026-red-theme.ncc2026-subpage .page-content > div:not(.container):not(.container-fluid),
  .ncc2026-red-theme.ncc2026-subpage .page-content > section:not(.page-title) > .container,
  .ncc2026-red-theme.ncc2026-subpage .page-content .content,
  .ncc2026-red-theme.ncc2026-subpage .page-content .content-box,
  .ncc2026-red-theme.ncc2026-subpage .page-content .article,
  .ncc2026-red-theme.ncc2026-subpage .page-content .article-content,
  .ncc2026-red-theme.ncc2026-subpage .page-content .showcontent,
  .ncc2026-red-theme.ncc2026-subpage .page-content .bodycontent,
  .ncc2026-red-theme.ncc2026-subpage .page-content .info-content {
    margin-left: 12px !important;
    margin-right: 12px !important;
  }
}

/* ================= Subpage V3: organization content card + dropdown menu alignment ================= */
.ncc2026-red-theme #header-wrap .navbar-nav {
  align-items: center !important;
}

.ncc2026-red-theme #header-wrap .navbar-nav > .nav-item {
  align-items: center !important;
  justify-content: center !important;
}

.ncc2026-red-theme #header-wrap .navbar-nav > .nav-item.dropdown {
  position: relative;
  top: -2px;
}

.ncc2026-red-theme #header-wrap .navbar-nav > .nav-item.dropdown > .nav-link,
.ncc2026-red-theme #header-wrap .navbar-nav > .nav-item > .nav-link.dropdown-toggle {
  transform: translateY(-1px);
  align-items: center !important;
  line-height: 1 !important;
}

.ncc2026-red-theme #header-wrap .navbar-nav > .nav-item.dropdown > .nav-link::after,
.ncc2026-red-theme #header-wrap .navbar-nav > .nav-item > .nav-link.dropdown-toggle::after {
  position: relative !important;
  top: -1px !important;
  margin-left: 8px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.ncc2026-red-theme #header-wrap .navbar-nav > .nav-item.dropdown .dropdown-menu {
  top: calc(100% + 2px) !important;
}

/* Organization page: remove the oversized empty white panel feeling */
.ncc2026-red-theme.ncc-organization-page .page-content {
  padding-top: 46px !important;
  padding-bottom: 72px !important;
}

.ncc2026-red-theme.ncc-organization-page .page-content > div:not(.container):not(.container-fluid),
.ncc2026-red-theme.ncc-organization-page .page-content .content,
.ncc2026-red-theme.ncc-organization-page .page-content .content-box,
.ncc2026-red-theme.ncc-organization-page .page-content .article,
.ncc2026-red-theme.ncc-organization-page .page-content .article-content,
.ncc2026-red-theme.ncc-organization-page .page-content .showcontent,
.ncc2026-red-theme.ncc-organization-page .page-content .bodycontent,
.ncc2026-red-theme.ncc-organization-page .page-content .info-content {
  max-width: 1080px !important;
  width: calc(100% - 48px) !important;
  min-height: 0 !important;
  margin: 0 auto 46px !important;
  padding: 34px 42px !important;
  background: linear-gradient(180deg, #fff 0%, #fffaf6 100%) !important;
  border: 1px solid rgba(180, 0, 5, .12) !important;
  border-left: 7px solid #b4271f !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 38px rgba(120, 0, 6, .06) !important;
}

.ncc2026-red-theme.ncc-organization-page .page-content h2,
.ncc2026-red-theme.ncc-organization-page .page-content h3,
.ncc2026-red-theme.ncc-organization-page .page-content h4 {
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

.ncc2026-red-theme.ncc-organization-page .page-content h2::after,
.ncc2026-red-theme.ncc-organization-page .page-content h3::after {
  width: 42px !important;
  height: 3px !important;
  margin-top: 10px !important;
}

.ncc2026-red-theme.ncc-organization-page .page-content p {
  margin-bottom: 8px !important;
  line-height: 1.85 !important;
}

.ncc2026-red-theme.ncc-organization-page .page-content table {
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-shadow: 0 12px 30px rgba(120, 0, 6, .05) !important;
}

/* Some organization pages output names as plain text blocks. Keep them compact and visually balanced. */
.ncc2026-red-theme.ncc-organization-page .page-content > div:not(.container):not(.container-fluid) + p,
.ncc2026-red-theme.ncc-organization-page .page-content > div:not(.container):not(.container-fluid) ~ p {
  max-width: 1080px;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 1199px) {
  .ncc2026-red-theme #header-wrap .navbar-nav > .nav-item.dropdown {
    top: -1px;
  }
}

@media (max-width: 991px) {
  .ncc2026-red-theme #header-wrap .navbar-nav > .nav-item.dropdown,
  .ncc2026-red-theme #header-wrap .navbar-nav > .nav-item.dropdown > .nav-link,
  .ncc2026-red-theme #header-wrap .navbar-nav > .nav-item > .nav-link.dropdown-toggle {
    top: 0;
    transform: none;
  }
  .ncc2026-red-theme.ncc-organization-page .page-content > div:not(.container):not(.container-fluid),
  .ncc2026-red-theme.ncc-organization-page .page-content .content,
  .ncc2026-red-theme.ncc-organization-page .page-content .content-box,
  .ncc2026-red-theme.ncc-organization-page .page-content .article,
  .ncc2026-red-theme.ncc-organization-page .page-content .article-content,
  .ncc2026-red-theme.ncc-organization-page .page-content .showcontent,
  .ncc2026-red-theme.ncc-organization-page .page-content .bodycontent,
  .ncc2026-red-theme.ncc-organization-page .page-content .info-content {
    width: calc(100% - 28px) !important;
    padding: 26px 22px !important;
    border-left-width: 5px !important;
  }
}
