/* ===== XS + SM — Mobile (<768px) ===== */
@media (max-width: 768px) {
  /* NAVBAR — i erret ne mobile */
  .navbar.mobile-open {
    background-color: rgba(0, 0, 0, 0.97) !important;
    backdrop-filter: blur(6px) !important;
    text-align: center;
  }

  /* Active link — vija posht */
  .navbar-nav .nav-link.active {
    border-bottom: 1px solid #5b5b59 !important;
    color: rgb(105, 105, 105) !important;
    display: inline-block !important;
    padding-bottom: 2px !important;
  }
  /* ===== NAVBAR ===== */
  .logo-brand {
    margin-left: 5px !important;
  }

  .logo-brand img {
    height: 65px !important;
    transform: scale(1.3) !important;
  }

  /* ===== INDEX — HERO ===== */
  #hero-section {
    aspect-ratio: unset !important;
    height: 60vh !important;
  }

  .hero-content h1 {
    font-size: 1.8rem !important;
    letter-spacing: 0.08em !important;
  }

  .hero-content p {
    font-size: 0.85rem !important;
    letter-spacing: 0.15em !important;
  }

  /* ===== INDEX — ABOUT SECTION ===== */
  .about-section {
    padding: 120px 20px 60px !important;
  }

  .about-wrapper {
    flex-direction: column !important;
    gap: 30px !important;
  }

  .about-content {
    width: 100% !important;
  }

  .about-image {
    width: 100% !important;
  }

  .about-image img {
    width: 100% !important;
  }

  .about-title {
    font-size: 26px !important;
  }

  /* SERVICES  */
  .services {
    padding: 60px 20px 40px !important;
  }

  .cardServices {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    margin-top: 30px !important;
  }

  .h2Service {
    font-size: 26px !important;
  }

  /* SERVICE CARDS — scroll hover effect */
  .service-card.mobile-hover::after {
    opacity: 1 !important;
  }

  .service-card.mobile-hover .service-logo {
    opacity: 0 !important;
    transform: translateY(-20px) !important;
  }

  .service-card {
    transition: all 0.5s ease !important;
  }

  /* ===== INDEX — CONTACT ===== */
  .contact {
    padding: 20px 20px !important;
  }

  #contact-title {
    font-size: 24px !important;
    letter-spacing: 0.08em !important;
  }

  /* ===== ABOUT — TEAM ===== */
  .team {
    padding: 20px 20px !important;
  }

  .team .card {
    height: auto !important;
    min-height: unset !important;
  }

  /* ===== PROJECTS.HTML ===== */
  .projectmain {
    padding: 120px 20px 40px !important;
  }

  .projects .container {
    margin-left: 0 !important;
    padding: 0 15px !important;
  }

  .card {
    height: 380px !important;
    margin-bottom: 30px !important;
  }

  .card-title-hover {
    font-size: 20px !important;
    margin-top: 130px !important;
  }

  /* Detail view gallery */
  .detail-gallery {
    grid-template-columns: 1fr !important;
    padding: 40px 20px !important;
    gap: 15px !important;
  }

  .detail-gallery img {
    height: 260px !important;
  }

  .lightbox-prev,
  .lightbox-next {
    font-size: 49px;
  }

  .detail-hero-overlay {
    padding: 30px 20px !important;
  }

  .detail-project-title {
    font-size: 24px !important;
  }

  /* ===== CONTACT.HTML ===== */
  .main-section {
    height: 45vh !important;
    min-height: 300px !important;
  }

  .hero-title {
    font-size: 36px !important;
  }

  .contact-section {
    padding: 40px 15px !important;
    margin-top: -60px !important;
  }

  .contact-cards-grid {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
  }

  .info-card {
    padding: 30px 25px !important;
  }

  .social-grid {
    flex-direction: column !important;
    align-items: center !important;
  }

  .social-item {
    min-width: 260px !important;
    width: 100% !important;
    max-width: 320px !important;
  }

  .contact-map-frame {
    padding: 8px !important;
  }

  .contact-map-frame iframe {
    height: 300px !important;
  }

  .info-section {
    padding: 30px 15px 50px !important;
  }

  .info-section-main {
    padding: 35px 20px !important;
  }

  .info-section-ourservice,
  .info-section-contact {
    padding-left: 0 !important;
    margin-top: 30px !important;
  }

  /* ===== FOOTER ===== */
  .footer {
    padding: 20px 15px 0 !important;
  }

  .footer p {
    font-size: 12px !important;
  }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .navbar.mobile-open {
    background-color: rgba(0, 0, 0, 0.97) !important;
    backdrop-filter: blur(6px) !important;
    text-align: center;
  }

  /* Active link —  */
  .navbar-nav .nav-link.active {
    border-bottom: 1px solid #5b5b59 !important;
    color: rgb(105, 105, 105) !important;
    display: inline-block !important;
    padding-bottom: 2px !important;
  }
  /* ===== NAVBAR ===== */
  .logo-brand {
    margin-left: 5px !important;
  }

  .logo-brand img {
    height: 65px !important;
    transform: scale(1.3) !important;
  }

  /* ===== INDEX — HERO ===== */
  #hero-section {
    aspect-ratio: unset !important;
    height: 60vh !important;
  }

  .hero-content h1 {
    font-size: 1.8rem !important;
    letter-spacing: 0.08em !important;
  }

  .hero-content p {
    font-size: 0.85rem !important;
    letter-spacing: 0.15em !important;
  }
  .about-wrapper {
    flex-direction: column !important; /* KEY FIX */
    gap: 30px !important;
  }

  .about-content {
    width: 100% !important;
    order: 1; /* tekst lart */
  }

  .about-image {
    width: 100% !important;
    order: 2; /* foto posht */
    display: flex;
    justify-content: center;
  }

  .about-image img {
    width: 100% !important;
    max-width: 500px;
  }
  /* ===== ABOUT — TEAM ===== */
  .team {
    padding: 20px 20px !important;
  }

  .team .card {
    height: auto !important;
    min-height: unset !important;
  }
  /* ===== PROJECTS.HTML ===== */
  .projectmain {
    padding: 120px 20px 40px !important;
  }

  .projects .container {
    margin-left: 0 !important;
    padding: 0 15px !important;
  }

  .card {
    height: 380px !important;
    margin-bottom: 30px !important;
  }

  .card-title-hover {
    font-size: 20px !important;
    margin-top: 130px !important;
  }

  /* Detail view gallery */
  .detail-gallery {
    grid-template-columns: 1fr !important;
    padding: 40px 20px !important;
    gap: 15px !important;
  }

  .detail-gallery img {
    height: 260px !important;
  }

  .lightbox-prev,
  .lightbox-next {
    font-size: 49px;
  }

  .detail-hero-overlay {
    padding: 30px 20px !important;
  }

  .detail-project-title {
    font-size: 24px !important;
  }
}
