/* ================================================
   NTS DIGITAL HUB — GLOBAL RESPONSIVE FIX CSS
   Apply to ALL pages via <link> in <head>
   ================================================ */

/* ---- LOGIN BUTTON ---- */
.main-box .info-box .btn-one-light,
.main-box .info-box a.btn-one-light {
  display: inline-block !important;
  padding: 9px 22px !important;
  border-radius: 30px !important;
  border: 2px solid #1A4137 !important;
  color: #1A4137 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  background: transparent !important;
  transition: all 0.3s ease !important;
}
.main-box .info-box .btn-one-light:hover {
  background: #1A4137 !important;
  color: #fff !important;
}

/* ---- HEADER TOP BAR ---- */
@media (max-width: 575px) {
  .header-top {
    display: none !important;
  }
}
@media (min-width: 576px) and (max-width: 991px) {
  .header-top .top-left .info-list {
    display: none !important;
  }
  .header-top .top-right {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* ---- MAIN HEADER BOX (ALL SCREENS) ---- */
@media (max-width: 991px) {
  .main-box {
    padding: 12px 15px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
  }
  .main-box .nav-outer {
    display: none !important;
  }
  .main-box .logo-box {
    flex: 1 !important;
  }
  .main-box .logo img {
    max-height: 50px !important;
    width: auto !important;
  }
  .main-box .outer-box {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
  }
  .main-box .outer-box .info-box {
    display: flex !important;
    align-items: center !important;
  }
  .main-box .info-box .btn-one-light {
    padding: 7px 16px !important;
    font-size: 13px !important;
  }
  .main-box .mobile-nav-toggler {
    display: block !important;
    font-size: 22px !important;
    cursor: pointer !important;
    color: #1A4137 !important;
  }
}
@media (max-width: 480px) {
  .main-box .info-box .btn-one-light {
    padding: 6px 12px !important;
    font-size: 12px !important;
  }
  .main-box .logo img {
    max-height: 42px !important;
  }
}

/* ---- ALSO FIX header-style-one HEADER ---- */
@media (max-width: 991px) {
  .header-style-one .main-box .outer-box .info-box {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }
  .header-style-one .main-box .outer-box .info-box .call-info {
    display: none !important;
  }
  .header-style-one .main-box .outer-box .info-box .btn-two,
  .header-style-one .main-box .outer-box .info-box a.btn-two {
    display: inline-block !important;
    padding: 7px 16px !important;
    font-size: 13px !important;
    border-radius: 30px !important;
    background: #1A4137 !important;
    color: #fff !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    font-weight: 600 !important;
  }
}

/* ---- GENERAL SECTION SPACING ---- */
@media (max-width: 767px) {
  .pt-120 { padding-top: 70px !important; }
  .pb-120 { padding-bottom: 70px !important; }
  .pt-100 { padding-top: 60px !important; }
  .pb-100 { padding-bottom: 60px !important; }
  .mt-100 { margin-top: 50px !important; }
  .mb-50  { margin-bottom: 30px !important; }
}
@media (max-width: 575px) {
  .pt-120 { padding-top: 50px !important; }
  .pb-120 { padding-bottom: 50px !important; }
}

/* ---- SECTION TITLES ---- */
@media (max-width: 767px) {
  .sec-title h2.title,
  .sec-title .title {
    font-size: 26px !important;
    line-height: 1.35 !important;
  }
  .sec-title .sub-title {
    font-size: 12px !important;
  }
  .sec-title .text {
    font-size: 14px !important;
  }
}
@media (max-width: 480px) {
  .sec-title h2.title,
  .sec-title .title {
    font-size: 22px !important;
  }
}

/* ---- BUTTONS ---- */
@media (max-width: 575px) {
  .btn-two-rounded,
  .btn-one-rounded,
  .btn-one-light,
  .btn-two {
    font-size: 13px !important;
    padding: 10px 18px !important;
  }
}

/* ---- BANNER SECTION ---- */
@media (max-width: 991px) {
  .banner-section-two .image-column {
    display: none !important;
  }
  .banner-section-two .content-column {
    max-width: 100% !important;
    flex: 0 0 100% !important;
    text-align: center !important;
    padding: 50px 20px !important;
  }
  .banner-section-two .btn-wrp {
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }
  .banner-section-two .btn-wrp a {
    margin-left: 0 !important;
  }
  .banner-section-two h1.title {
    font-size: 34px !important;
  }
}
@media (max-width: 575px) {
  .banner-section-two h1.title {
    font-size: 26px !important;
  }
  .banner-section-two .sub-title {
    font-size: 13px !important;
  }
  .banner-section-two .text {
    font-size: 14px !important;
  }
}

/* ---- ABOUT SECTION ---- */
@media (max-width: 991px) {
  .about-section-two .image-column,
  .about-section-three .image-column {
    display: none !important;
  }
  .about-section-two .content-column,
  .about-section-three .content-column {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* ---- FUNFACT ---- */
@media (max-width: 767px) {
  .funfact-section-two .funfact-block-two .inner-box {
    text-align: center !important;
  }
  .funfact-section-four .funfact-block .inner-box {
    text-align: center !important;
  }
}

/* ---- SERVICES LIST (home page) ---- */
@media (max-width: 991px) {
  .service-section-three .service-list-three ul li a {
    font-size: 14px !important;
    padding: 12px 15px !important;
  }
  .service-section-three .col-xl-6.content-column {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}
@media (max-width: 575px) {
  .service-section-three .service-list-three ul li a {
    font-size: 13px !important;
  }
}

/* ---- SERVICES GRID PAGE ---- */
@media (max-width: 575px) {
  .service-block-two .inner-box {
    padding: 25px 15px !important;
  }
  .service-block-two .content-box h4.title {
    font-size: 16px !important;
  }
  .service-block-two .content-box .text {
    font-size: 13px !important;
  }
}

/* ---- TESTIMONIAL ---- */
@media (max-width: 991px) {
  .testimonial-section-two .image-column {
    display: none !important;
  }
  .testimonial-section-two .content-column {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* ---- STEPS SECTION ---- */
@media (max-width: 991px) {
  .steps-section .outer-box {
    flex-direction: column !important;
    align-items: center !important;
    gap: 30px !important;
  }
  .steps-section .steps-block {
    width: 100% !important;
    max-width: 420px !important;
    text-align: center !important;
  }
  .steps-section .steps-block .line {
    display: none !important;
  }
  .steps-section .steps-block .content h4 {
    font-size: 17px !important;
  }
}

/* ---- GROWTH / PIE GRAPHS ---- */
@media (max-width: 767px) {
  .growth-section-two .growth-block {
    text-align: center !important;
    margin-bottom: 30px !important;
  }
  .growth-section .growth-block {
    text-align: center !important;
  }
}

/* ---- FAQ SECTION ---- */
@media (max-width: 991px) {
  .faq-section-two .image-column,
  .faq-section .image-column {
    display: none !important;
  }
  .faq-section-two .content-column,
  .faq-section .content-column {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* ---- GALLERY SECTION ---- */
@media (max-width: 767px) {
  .gellery-section .outer-box {
    flex-direction: column !important;
  }
  .gellery-section .gellery-block {
    width: 100% !important;
  }
}

/* ---- FEATURE BLOCKS ---- */
@media (max-width: 767px) {
  .feature-block .inner-box {
    padding: 25px 20px !important;
    text-align: center !important;
  }
  .feature-block .inner-box h4.title {
    font-size: 15px !important;
  }
}

/* ---- STRATEGY SECTION ---- */
@media (max-width: 991px) {
  .strategy-section-two .image-column {
    display: none !important;
  }
  .strategy-section-two .content-column {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  .strategy-section-two .strategy-block-two {
    display: none !important;
  }
}

/* ---- TEAM SECTION ---- */
@media (max-width: 575px) {
  .team-block-two .content-box h4.title,
  .team-block .content-box h4.title {
    font-size: 15px !important;
  }
  .team-block-two .content-box .sub-title,
  .team-block .content-box .sub-title {
    font-size: 12px !important;
  }
}

/* ---- CONTACT SECTION (home page) ---- */
@media (max-width: 991px) {
  .contact-section .contact-image {
    display: none !important;
  }
  .contact-section .content-column {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}
@media (max-width: 767px) {
  .contact-block .head h3 {
    font-size: 20px !important;
  }
  .contact-block form .row .col-sm-6 {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* ---- CONTACT DETAILS PAGE ---- */
@media (max-width: 767px) {
  .contact-details-block .inner-box {
    text-align: center !important;
    padding: 25px 15px !important;
  }
  .contact-details .google-map iframe {
    height: 250px !important;
  }
  .contact-details .content-column {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* ---- BLOG SECTION ---- */
@media (max-width: 575px) {
  .blog-block-two .content-box h4.title,
  .blog-block .content-box h4.title {
    font-size: 15px !important;
  }
  .blog-block-two .content-box .text,
  .blog-block .content-box .text {
    font-size: 13px !important;
  }
}

/* ---- PROCESS / STEPS TABS (About page) ---- */
@media (max-width: 767px) {
  .process-section-four .tab-buttons {
    flex-direction: column !important;
    gap: 8px !important;
  }
  .process-section-four .tab-btn {
    width: 100% !important;
    text-align: center !important;
  }
}

/* ---- ACCORDION (About & FAQ page) ---- */
@media (max-width: 575px) {
  .accordion-button {
    font-size: 14px !important;
    padding: 14px 15px !important;
  }
  .accordion-body .text {
    font-size: 13px !important;
  }
}

/* ---- PAGE TITLE / BREADCRUMB ---- */
@media (max-width: 767px) {
  .page-title .title {
    font-size: 30px !important;
  }
}
@media (max-width: 575px) {
  .page-title .title {
    font-size: 24px !important;
  }
  .page-title .page-breadcrumb {
    font-size: 12px !important;
  }
}

/* ---- TEAM LIST PAGE ---- */
@media (max-width: 575px) {
  .team-section .team-block .inner-box figure.image img {
    width: 100% !important;
    height: auto !important;
  }
}

/* ---- FOOTER ---- */
@media (max-width: 991px) {
  .main-footer .widgets-section .col-lg-4 {
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}
@media (max-width: 767px) {
  .main-footer .footer-top {
    flex-direction: column !important;
    gap: 20px !important;
    text-align: center !important;
    align-items: center !important;
  }
  .main-footer .footer-top .subscrive-box {
    width: 100% !important;
    text-align: center !important;
  }
  .main-footer .footer-top .subscrive-box .input-feild {
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
  .main-footer .footer-bottom {
    flex-direction: column !important;
    gap: 15px !important;
    text-align: center !important;
    align-items: center !important;
  }
  .main-footer .footer-nav {
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }
  .main-footer .footer-cta .sec-title h2 {
    font-size: 22px !important;
  }
}
@media (max-width: 575px) {
  .main-footer .footer-widget .widget-title {
    font-size: 15px !important;
  }
  .main-footer .footer-widget .user-links li a {
    font-size: 13px !important;
  }
  .main-footer .copyright-text {
    font-size: 12px !important;
  }
}

/* ---- WHATSAPP FLOATING BUTTON ---- */
#nts-whatsapp-btn {
  position: fixed !important;
  left: 20px !important;
  bottom: 30px !important;
  z-index: 99999 !important;
}
@media (max-width: 575px) {
  #nts-whatsapp-btn {
    left: 12px !important;
    bottom: 20px !important;
  }
  #nts-whatsapp-btn a {
    width: 50px !important;
    height: 50px !important;
  }
  #nts-whatsapp-btn img {
    width: 50px !important;
    height: 50px !important;
  }
}

/* ---- MOBILE MENU LOGIN BUTTON ---- */
.menu-box .nts-mobile-login {
  display: block !important;
  padding: 15px 20px !important;
}
.menu-box .nts-mobile-login a {
  display: block !important;
  text-align: center !important;
  background: #1A4137 !important;
  color: #fff !important;
  padding: 12px 20px !important;
  border-radius: 4px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  text-decoration: none !important;
  letter-spacing: 0.5px !important;
}
.menu-box .nts-mobile-login a:hover {
  background: #C6D936 !important;
  color: #1A4137 !important;
}

/* ---- GENERAL IMAGE SAFETY ---- */
img {
  max-width: 100% !important;
  height: auto !important;
}