/**
 * Secondary brand accents (#b47727) — home, packages, and other pages using body.nlr-brand-accent.
 * Scoped under #smooth-content so header keeps primary blue.
 */
body.nlr-brand-accent #smooth-content {
  --nlr-home-accent: var(--rr-color-theme-secondary);
  --nlr-home-accent-soft: rgba(191, 131, 43, 0.4);
}

/* Marquee accent word */
body.nlr-brand-accent #smooth-content .running-text.testi ul li:nth-child(2) {
  color: var(--nlr-home-accent);
}

/* Hero */
body.nlr-brand-accent #smooth-content .hero-content .title:before {
  background: linear-gradient(270deg, var(--nlr-home-accent) 0%, transparent 100%);
}

body.nlr-brand-accent #smooth-content .hero-content .hero-btn:before {
  background-color: var(--nlr-home-accent);
}

/* Section labels & decorative lines */
body.nlr-brand-accent #smooth-content .section-heading .sub-heading {
  color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .section-heading .sub-heading:before {
  background: linear-gradient(
    270deg,
    var(--nlr-home-accent-soft) 0%,
    transparent 100%
  );
}

body.nlr-brand-accent #smooth-content .section-heading .sub-heading:after {
  background: linear-gradient(
    90deg,
    var(--nlr-home-accent-soft) 0%,
    transparent 100%
  );
}

/* Primary-style CTAs in page flow */
body.nlr-brand-accent #smooth-content .rr-primary-btn {
  background-color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .rr-primary-btn.transparent {
  border-color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .rr-primary-btn.transparent:before {
  background-color: var(--nlr-home-accent);
}

/* Process step rings */
body.nlr-brand-accent #smooth-content .process-item .process-icon:before {
  border-color: var(--nlr-home-accent);
}

/* Services grid */
body.nlr-brand-accent #smooth-content .service-item .service-thumb .overlay-color {
  background: #5c2f0e;
}

body.nlr-brand-accent #smooth-content .service-item .service-thumb .service-icon svg {
  color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .service-item .service-thumb .service-icon:hover {
  background-color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .service-item .service-thumb .service-btn {
  background-color: var(--nlr-home-accent);
}

/* Pricing */
body.nlr-brand-accent #smooth-content .pricing-tab .nav-wrap .nav-tabs .nav-link.active {
  background-color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .pricing-tab .nav-tabs .nav-link span {
  background-color: rgba(191, 131, 43, 0.45);
}

body.nlr-brand-accent #smooth-content .pricing-item:hover {
  border-color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .pricing-item .price {
  color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .pricing-list li i {
  color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .pricing-item .pricing-btn-wrap .pricing-btn:nth-child(2):before {
  background-color: var(--nlr-home-accent);
}

/* FAQ (default accordion) */
body.nlr-brand-accent
  #smooth-content
  .faq-content
  .accordion
  .accordion-item
  .accordion-button:not(.collapsed):after {
  background-color: var(--nlr-home-accent);
}

/* Outcomes / testimonial slides */
body.nlr-brand-accent #smooth-content .testi-item .testi-content .author span {
  color: var(--nlr-home-accent);
}

body.nlr-brand-accent #smooth-content .testi-carousel .swiper-pagination .swiper-pagination-bullet {
  border-color: var(--nlr-home-accent);
}

body.nlr-brand-accent
  #smooth-content
  .testi-carousel
  .swiper-pagination
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--nlr-home-accent);
  border-color: var(--nlr-home-accent);
}

/* Project gallery */
body.nlr-brand-accent #smooth-content .project-item .project-content .project-right .category {
  color: var(--nlr-home-accent);
}

body.nlr-brand-accent
  #smooth-content
  .project-accordion
  .accordion-item
  .accordion-header
  .accordion-button:not(.collapsed)
  .project-content
  .number {
  background-color: var(--nlr-home-accent);
}

/* Light theme: match existing overrides */
html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item .price {
  color: var(--nlr-home-accent);
}

html[data-theme="light"]
  body.nlr-brand-accent
  #smooth-content
  .testi-carousel
  .swiper-pagination
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--nlr-home-accent);
  border-color: var(--nlr-home-accent);
}

html[data-theme="light"]
  body.nlr-brand-accent
  #smooth-content
  .running-text.testi
  li:nth-child(2) {
  color: var(--nlr-home-accent);
}

/* Theme Toggle Button Alignment & Styling */
.theme-toogle {
  background: transparent;
  border: none;
  color: var(--rr-color-common-white);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  transition: all 0.3s ease;
  margin-left: 15px;
  margin-right: 15px;
}
[data-theme="light"] .theme-toogle {
  color: var(--rr-color-heading-primary);
}
.theme-toogle:hover {
  background: rgba(128, 128, 128, 0.1);
}
.header-right {
  display: flex;
  align-items: center;
}

/* Pricing Light Mode Fixes */
html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item {
  background-color: var(--rr-color-common-white) !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  color: var(--rr-color-heading-primary) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03) !important;
}

html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item .plan,
html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item .feature {
  color: var(--rr-color-heading-primary) !important;
}

html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item p,
html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item .pricing-list li,
html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item .price span {
  color: var(--rr-color-text-body-light) !important;
}

html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item .old-price {
  color: rgba(0, 0, 0, 0.3) !important;
}

html[data-theme="light"] body.nlr-brand-accent #smooth-content .pricing-item.popular {
  background-color: #fcfcfc !important; /* Slightly distinct for popular */
  box-shadow: 0 20px 40px rgba(180, 119, 39, 0.08) !important;
}

/* Dark Theme Dropdown Menu Support */
[data-theme="dark"] .mega-menu-grid,
[data-theme="dark"] .header-menu-wrap ul li .sub-menu {
  background-color: var(--rr-color-bg-dark) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}
[data-theme="dark"] .mega-menu-grid li a,
[data-theme="dark"] .header-menu-wrap ul li .sub-menu li a {
  color: var(--rr-color-common-white) !important;
}
[data-theme="dark"] .mega-menu-grid li a:hover,
[data-theme="dark"] .header-menu-wrap ul li .sub-menu li a:hover {
  color: var(--rr-color-theme-primary) !important;
  background: rgba(255, 255, 255, 0.05) !important;
}

/* Fix 250+ Counter Alignment */
.about-section-17-counter .counter {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 5px !important;
  white-space: nowrap !important;
  font-size: 180px !important; /* Reduced from 268px to prevent wrapping */
  overflow: visible !important;
}

.about-section-17-counter .counter span.odometer {
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
}

@media (max-width: 1400px) {
  .about-section-17-counter .counter {
    font-size: 140px !important;
  }
}

@media (max-width: 1199px) {
  .about-section-17-counter .counter {
    font-size: 110px !important;
  }
}

@media (max-width: 768px) {
  .about-section-17-counter .counter {
    font-size: 80px !important;
  }
}

/* Reduced Hero Title Size & Accent */
.hero-section-17-content .title {
  font-size: 90px !important;
  line-height: 1.1 !important;
}

.hero-section-17-content .title .accent-word {
  color: var(--nlr-home-accent);
}

@media (max-width: 1200px) {
  .hero-section-17-content .title {
    font-size: 70px !important;
  }
}

@media (max-width: 768px) {
  .hero-section-17-content .title {
    font-size: 45px !important;
  }
}

/* Mobile Header & Hero Responsiveness Fixes */
@media (max-width: 991px) {
  /*
  .header-17 .primary-header-inner-17 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 15px !important;
    height: 75px !important;
    background: #0a0c10 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    width: 100% !important;
    position: relative !important;
  }

  .header-17 .header-logo {
    padding: 0 !important;
    margin: 0 !important;
    flex: initial !important;
    border-right: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }

  .header-17 .header-logo img.logo-icon {
    height: 42px !important;
    width: auto !important;
  }

  .header-17 .header-logo img.logo-text {
    height: 38px !important;
    width: auto !important;
    max-width: 140px !important;
    display: block !important;
    object-fit: contain !important;
  }

  .header-17 .header-right-wrap {
    padding: 0 !important;
    margin: 0 !important;
    border-left: none !important;
  }

  .header-17 .header-right {
    gap: 10px !important;
    display: flex !important;
    align-items: center !important;
  }

  .header-17 .header-btn {
    display: none !important;
  }

  .header-17 .theme-toogle {
    margin: 0 !important;
    padding: 0 !important;
    width: 35px !important;
    height: 35px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    background: transparent !important;
    color: #fff !important;
  }

  .header-17 .sidebar-trigger {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    background: rgba(255, 255, 255, 0.05) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    color: #fff !important;
  }

  .header-17 .sidebar-trigger svg {
    width: 20px !important;
    height: auto !important;
  }
  */

  /* Hero Section Mobile Centering & Overflow Fix */
  .hero-section-17-area {
    overflow: hidden !important;
  }

  .hero-section-17-wrapper {
    padding: 100px 0 60px 0 !important;
    overflow: hidden !important;
  }

  .hero-section-17-wrapper .shapes .shape-2 {
    display: none !important;
  }

  .hero-section-17-item {
    margin-left: 0 !important;
    text-align: center !important;
    padding: 0 15px !important;
  }

  .hero-section-17-content .title {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: 38px !important;
    line-height: 1.1 !important;
    margin-bottom: 20px !important;
  }

  .hero-section-17-btn-box {
    justify-content: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 20px !important;
  }

  .hero-section-17-thumb {
    margin: 0 auto 50px auto !important;
    max-width: 240px !important;
  }

  .hero-section-17-Award {
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: -30px !important;
    width: 140px !important;
    height: 140px !important;
    border-width: 8px !important;
  }

  .hero-section-17-Award .counter {
    padding-top: 35px !important;
    font-size: 22px !important;
  }

  .hero-section-17-Award .decs {
    font-size: 14px !important;
  }

  .hero-section-17-scroll {
    display: none !important;
  }
}

/* Global Mobile Overflow Prevention */
@media (max-width: 767px) {
  #smooth-wrapper, #smooth-content {
    overflow: hidden !important;
    max-width: 100vw !important;
  }
}


/* Popup Banner Styles */
.nlr-popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 100000;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  overflow: hidden; /* Encapsulate popup layout */
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.nlr-popup-overlay.show {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* Responsive Content Wrapper */
.nlr-popup-content {
  position: relative;
  width: 90%;
  max-width: 500px;
  background: transparent;
  padding: 0;
  margin: auto;
  border-radius: 16px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6);
  transform: scale(0.85);
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  overflow: visible;
}

.nlr-popup-overlay.show .nlr-popup-content {
  transform: scale(1);
}

/* Block-level Anchor constraint to prevent image stretching */
.nlr-popup-content a {
  display: block;
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.15);
}

.nlr-popup-content img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.3s ease;
}

.nlr-popup-content a:hover img {
  transform: scale(1.02);
}

/* Close Button Aesthetics */
.nlr-popup-close {
  position: absolute;
  top: -15px;
  right: -15px;
  width: 36px;
  height: 36px;
  background: var(--nlr-home-accent, #bf832b);
  color: #ffffff;
  border: none;
  border-radius: 50%;
  font-size: 20px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
  z-index: 100001;
  transition: background-color 0.3s ease, transform 0.3s ease;
}

.nlr-popup-close:hover {
  background-color: #ffffff;
  color: var(--nlr-home-accent, #bf832b);
  transform: scale(1.1) rotate(90deg);
}

/* Background Scroll Prevention Styles */
body.popup-active {
  overflow: hidden !important;
  height: 100vh !important;
}

/* Small Screen Optimizations */
@media (max-width: 576px) {
  .nlr-popup-content {
    width: 88%;
    max-width: 360px;
  }
  .nlr-popup-close {
    top: 10px;
    right: 10px;
    width: 32px;
    height: 32px;
    font-size: 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  }
}
