/* NuForce360 Mobile Responsive Fixes */
/* This file provides consistent mobile experience across all pages */

/* Global Mobile Reset */
* {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}

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

/* Container Fixes */
.container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding-left: 16px;
  padding-right: 16px;
}

@media (min-width: 576px) {
  .container {
    padding-left: 24px;
    padding-right: 24px;
  }
}

/* Typography Mobile Adjustments */
@media (max-width: 767px) {
  h1 {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }
  
  h2 {
    font-size: 24px !important;
    line-height: 1.3 !important;
  }
  
  h3 {
    font-size: 20px !important;
  }
  
  h4 {
    font-size: 18px !important;
  }
  
  p {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }
}

/* Section Padding Mobile */
@media (max-width: 991px) {
  .section_padding,
  .section-lg,
  .section-lgb {
    padding: 60px 0 !important;
  }
}

@media (max-width: 767px) {
  .section_padding,
  .section-lg,
  .section-lgb {
    padding: 40px 0 !important;
  }
}

/* Hide Desktop Only Elements */
@media (max-width: 991px) {
  .desktop_view,
  .d-desktop-only {
    display: none !important;
  }
}

/* Show Mobile Only Elements */
@media (min-width: 992px) {
  .mbl_view,
  .d-mobile-only {
    display: none !important;
  }
}

/* Partner Logo Grid Mobile */
@media (max-width: 767px) {
  .partner ul {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 16px !important;
    justify-items: center;
  }
  
  .partner ul li {
    margin: 0 !important;
  }
  
  .partner ul li img {
    height: 28px !important;
    width: auto !important;
  }
  
  .partner h4 {
    font-size: 16px !important;
    margin-bottom: 24px !important;
  }
}

/* Why Us Section Mobile */
@media (max-width: 767px) {
  .why_us_heading {
    text-align: center !important;
    margin-bottom: 32px !important;
  }
  
  .why_us_heading h4 {
    font-size: 24px !important;
    line-height: 1.3 !important;
  }
  
  .why_us_box .row {
    gap: 24px !important;
  }
  
  .innber_box {
    padding: 24px !important;
    margin-bottom: 0 !important;
  }
}

/* How It Works Section Mobile */
@media (max-width: 991px) {
  .works_box .row {
    flex-direction: column !important;
  }
  
  .works_box .col-md-5,
  .works_box .col-md-7 {
    width: 100% !important;
    max-width: 100% !important;
  }
  
  .box_center {
    margin-bottom: 32px !important;
  }
  
  .box_img {
    margin-top: 24px !important;
  }
  
  .works_profile {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    margin-top: 16px !important;
  }
}

@media (max-width: 767px) {
  .works_heading {
    text-align: center !important;
    margin-bottom: 40px !important;
  }
  
  .works_heading h4 {
    font-size: 24px !important;
    line-height: 1.3 !important;
  }
  
  .works_heading p {
    font-size: 15px !important;
  }
  
  .box h4 {
    font-size: 20px !important;
  }
  
  .box ul li {
    font-size: 14px !important;
  }
}

/* Testimonials Mobile */
@media (max-width: 767px) {
  .main_testimonial .testimonials_heading {
    text-align: center !important;
    margin-bottom: 32px !important;
  }
  
  .main_testimonial .testimonials_heading h4 {
    font-size: 24px !important;
  }
  
  .inner_testimonial {
    padding: 20px !important;
  }
  
  .inner_testimonial p {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }
}

/* Projects Section Mobile */
@media (max-width: 767px) {
  .main_projects {
    text-align: center;
  }
  
  .main_projects h4 {
    font-size: 24px !important;
  }
  
  .detail_box {
    padding: 20px !important;
  }
}

/* Business Proven Mobile */
@media (max-width: 767px) {
  .business_proven .container {
    padding: 40px 20px !important;
  }
  
  .business_proven h4 {
    font-size: 24px !important;
    line-height: 1.3 !important;
  }
  
  .business_proven p {
    font-size: 15px !important;
  }
  
  .number_count .count_content {
    margin-bottom: 24px !important;
  }
  
  .number_count .count_content h4 {
    font-size: 36px !important;
  }
}

/* Feature Page Mobile Fixes */
@media (max-width: 991px) {
  .feature_banner .row {
    flex-direction: column !important;
  }
  
  .feature_banner_info,
  .feature_banner_image {
    width: 100% !important;
    text-align: center !important;
  }
  
  .feature_banner_info {
    margin-bottom: 40px !important;
  }
}

@media (max-width: 767px) {
  .feature_banner {
    padding: 60px 0 40px !important;
  }
  
  .feature_banner_info h1 {
    font-size: 28px !important;
  }
  
  .feature_banner_info p {
    font-size: 15px !important;
  }
  
  .job_management .row,
  .business_management .row {
    flex-direction: column !important;
  }
  
  .job_management .col-md-6,
  .business_management .col-md-6 {
    width: 100% !important;
    margin-bottom: 32px !important;
  }
}

/* Contact Page Mobile Fixes */
@media (max-width: 991px) {
  .contact_banner .row {
    flex-direction: column !important;
  }
  
  .contact_info,
  .contact_form {
    width: 100% !important;
  }
  
  .contact_info {
    text-align: center !important;
    margin-bottom: 40px !important;
  }
}

@media (max-width: 767px) {
  .contact_banner {
    padding: 60px 0 40px !important;
  }
  
  .contact_info h1 {
    font-size: 28px !important;
  }
  
  .contact_form input,
  .contact_form textarea {
    font-size: 16px !important; /* Prevents zoom on iOS */
  }
  
  .contact_form .submit_btn {
    width: 100% !important;
  }
}

/* Button Mobile Adjustments */
@media (max-width: 767px) {
  .banner_btn,
  .cta-button,
  .btn-primary,
  .plan-cta {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    padding: 14px 24px !important;
    font-size: 16px !important;
  }
}

/* Touch Targets */
@media (max-width: 767px) {
  a, button, input[type="submit"] {
    min-height: 44px;
    min-width: 44px;
  }
  
  .nav-link,
  .footer-links a {
    padding: 12px 8px !important;
  }
}

/* Form Inputs Mobile */
@media (max-width: 767px) {
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="password"],
  textarea,
  select {
    font-size: 16px !important; /* Prevents zoom on iOS */
    padding: 14px 16px !important;
    width: 100% !important;
  }
}

/* Grid Responsive Helpers */
@media (max-width: 767px) {
  .row {
    margin-left: -12px !important;
    margin-right: -12px !important;
  }
  
  .row > [class*="col-"] {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

/* Image Overflow Prevention */
.overflow-hidden {
  overflow: hidden !important;
}

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

/* Prevent Horizontal Scroll */
body {
  overflow-x: hidden;
}

.page-wrapper {
  overflow-x: hidden;
}

/* Fix Fixed Width Elements */
@media (max-width: 767px) {
  [style*="width: 950px"],
  [style*="width: 1032px"],
  [style*="width:950px"],
  [style*="width:1032px"] {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Swiper/Carousel Mobile */
@media (max-width: 767px) {
  .swiper-slide {
    width: 280px !important;
  }
  
  .swiper-pagination {
    margin-top: 24px !important;
  }
}

/* Modal/Popup Mobile */
@media (max-width: 767px) {
  .modal-content,
  .popup-content {
    width: 95% !important;
    max-width: 95% !important;
    margin: 10px auto !important;
  }
}

/* Print Styles */
@media print {
  .site-header,
  .site-footer,
  .footer-cta {
    display: none !important;
  }
}
