/* ==== Mobile Responsive Media Queries ==== */

/* General phone view (works up to tablets) */
@media (max-width: 768px) {
    .services-section {
        padding: 20px 15px;

    }

    .info-features {
        max-width: 100%;
        width: 100%;
        margin: 0 auto;
    }


    .info-features-header h3 {
        font-size: 1.3rem;
        text-align: center;
    }

    .info-features-header p {
        font-size: 0.9rem;
        text-align: center;
    }

    .features-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 15px;
        max-width: 500px;
        width: 500px;
        margin-left: -85px;
        justify-items: center;
    }

    .feature-item {
        text-align: center;
        padding: 10px;
        width: 100%;
    }

    .services-header h2 {
        font-size: 1.5rem;
        text-align: center;
    }

    .services-header p {
        font-size: 0.95rem;
        text-align: center;
    }

    /* Service grid - stack vertically */
    .services-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 20px;
    }

    /* Wide service card */
    .service-card-wide {
        padding: 15px;
        border-radius: 10px;
    }

    .service-header-wide h3 {
        font-size: 1.2rem;
        text-align: center;
    }

    .service-description-wide {
        font-size: 0.9rem;
        text-align: center;
    }

    .service-features-wide {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .card-feature {
        text-align: center;
    }

    /* Service buttons - stack or 2 per row */
    .service-buttons-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }

    .medical-service-btn {
        font-size: 0.9rem;
        padding: 10px;
        border-radius: 8px;
    }
}

/* Extra small phones (≤ 480px) */
@media (max-width: 480px) {
    .service-buttons-grid {
        grid-template-columns: 1fr;
        /* buttons full width */
    }

    .service-header-wide h3 {
        font-size: 1rem;
    }

    .medical-service-btn {
        font-size: 0.85rem;
        padding: 8px;
    }
}











/* ==== Mobile Responsive Media Queries for Tabs Section ==== */

/* General phone view (up to tablets) */
@media (max-width: 768px) {
  #tabs .frame {
    padding: 15px;
  }

  /* Tab labels */
  #tabs .labels {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
  }

  #tabs .labels .pill {
    font-size: 0.9rem;
    padding: 8px 14px;
    border-radius: 20px;
    text-align: center;
    flex: 1 1 auto;   /* flexibly size pills */
    max-width: 45%;   /* allow 2 per row */
  }

  /* Panels layout */
  #tabs .panel .grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center; /* center text + image */
  }

  #tabs .panel .illus img,
  #tabs .panel .illus svg {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  #tabs .panel .title {
    font-size: 1.2rem;
    text-align: center;
  }

  #tabs .panel .desc {
    font-size: 0.95rem;
    line-height: 1.5;
    text-align: center;
  }

  #tabs .panel ul.list {
    padding-left: 18px;
    font-size: 0.95rem;
  }

  /* Buttons inside panels */
  #tabs .panel button {
    display: block;
    margin: 15px auto 0;
    font-size: 0.9rem;
    padding: 8px 16px;
    border-radius: 25px;
  }

  /* Modal adjustments */
  #tabs .modal-dialog {
    margin: 10px;
    max-width: 100%;
  }

  #tabs .modal-body img {
    max-width: 100%;
    height: auto;
  }
}

/* Extra small phones (≤ 480px) */
@media (max-width: 480px) {
  #tabs .labels .pill {
    max-width: 100%; /* stack pills full width */
    font-size: 0.85rem;
    padding: 6px 12px;
  }

  #tabs .panel .title {
    font-size: 1rem;
  }

  #tabs .panel .desc {
    font-size: 0.85rem;
  }

  #tabs .panel button {
    font-size: 0.85rem;
    padding: 7px 14px;
  }
}









/* ==== Mobile Footer Responsive ==== */
@media (max-width: 768px) {
  .copyright {
    font-size: 0.85rem;     /* slightly smaller text */
    text-align: center;     /* center align for balance */
    padding: 0 0 30px 0;         /* less top & bottom padding */
    margin: 0;              /* remove extra margins */
  }
}

/* Extra small phones (≤ 480px) */
@media (max-width: 480px) {
  .copyright {
    font-size: 0.8rem;
    padding: 0 0 30px 0;
  }
}












































/* ✅ Tablet and smaller (≤768px) */
@media (max-width: 768px) {
  #hero {
    text-align: center;
  }

  #hero .hero-image {
    margin-bottom: 20px;
    margin-top: -100px;
  }

  #hero .hero-content h1 {
    margin-top: 10px;
  }

  #hero .hero-actions {
    margin-top: 15px;
    margin-bottom: -120px;
  }
}

/* ✅ Small phones (≤480px) */
@media (max-width: 480px) {
  #hero .hero-image img {
    width: 80%;   /* Scale image smaller for small phones */
    max-width: 280px; /* Prevent overflow */
  }

  #hero .hero-content h1 {
    font-size: 1.6rem; /* Reduce heading size */
    line-height: 1.3;
    margin-top: 5px;
  }

  #hero .hero-content p {
    font-size: 0.95rem; /* Slightly smaller paragraph */
  }

  #hero .hero-actions {
    margin-top: 12px;
  }
}



/* ✅ Larger screens (≥900px) */
@media (min-width: 900px) {

  #hero .hero-content {
    padding-right: 0px; /* Add breathing room */
  }

  #hero .hero-image img {
    width: 400px; /* Slightly bigger image */
    
  }
  
}