/* Responsive */

@media only screen and (max-width: 991px) and (min-width: 768px) {
  .navbar-nav>li>a {
      padding: 15px 8px;
      font-size: 13px;
  }
  .search-block {
      margin-left: 25px;
  }
  .section-title {
      font-size: 45px;
  }
  .section-title:before,
  .section-title:after
  {
      width: 50px;
  }
  #about_us .short {
      font-size: 15px;
      line-height: 1.3;
  }
  #contacts .contact-links {
      font-size: 23px;
  }
}

@media only screen and (max-width: 767px) {
  .flex-xs-column {
      flex-direction: column;
  }
  .mb-xs-5 {
      margin-bottom: 5px;
  }
  .btn-border{
      font-size: 20px;
      padding: 2px 35px;
  }
  .navbar-container.affix .navbar {
      min-height: 49px;
      padding: 2px 0 0px;
      margin-bottom: 0;
  }
  .search-block #search {
      margin: 0px 0 17px;
  }
  #navbar_search {
      top: 20px;
  }
  #navbar_search input {
      font-size: 15px;
  }
  .navbar-toggle .icon-bar {
      background-color: white;
  }
  .navbar-collapse {
      background-color: rgba(0, 0, 0, 0.8);
  }
  .navbar-toggle {
      margin-right: 0;
      padding-right: 0;
      padding-left: 0;
  }
  .carousel-inner:before,
  .carousel-inner:after
  {
      border-top-width: 50px;
  }
  .carousel-inner .item {
      height: 100vh; 
   }
  .carousel-caption h1 {
      font-size: 30px;
      padding: 10px;
      margin-top: 0;
  }
  .carousel-caption p {
      font-size: 12px;
  }

  .section-title {
      font-size: 32px;
  }
  #about_us .short {
      font-size: 12px;
  }
  #about_us .border:after {
      width: calc(100% - 10px);
      left: 5px;
      border-width: 1px;
  }
  .section-title:before,
  .section-title:after
  {
      width: 25px;
  }
  .section {
      padding-top: 30px;
  }
  .section .title-block {
      margin-bottom: 30px;
  }
  .section-short {
      font-size: 13px;
  }
  .services-item .icon i {
      font-size: 50px;
  }
  .services-item .short {
      font-size: 12px;
  }
  .services-item .item {
      margin-bottom: 25px;
  }
  #portfolio_gallery .image {
      margin-bottom: 15px;
      padding: 0 8px;
  }
  #team .slick-dots {
      bottom: -35px;
  }
  #partners {
      margin-top: 45px;
  }
  #contact_form .form-control {
      padding: 15px 10px;
      font-size: 13px;
  }
  #contact_form .control-label {
      font-size: 20px;
      margin-bottom: 5px;
  }
  #contact_form textarea {
      height: 100px;
  }
  #contact_form .btn {
      margin-top: 0;
  }
  #contacts .icon {
      font-size: 22px;
      width: 40px;
      height: 40px;
      margin-bottom: 10px;
  }
  #contacts .contact-links {
      font-size: 19px;
  }
  #contacts .item {
      margin-bottom: 5px;
  }
  #footer {
      padding-top: 30px;
  }
  #footer .triangle {
      border-width: 0 67vw 145px 69vw;
  }
  #footer .social-links {
      bottom: 10px;
      width: 100%;
  }

}
@media (max-width: 768px) {

    /* Section */
    #services {
        padding: 40px 0;
    }
     #services .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 0 12px; /* 🔥 equal spacing both sides */
    }

    #services .container {
        padding: 0 12px;
    }

    /* Card spacing */
    .services-card {
        width: 100%;
        padding: 0 10px !important;
        margin-bottom: 20px;
    }

    /* 🔥 Image (remove !important) */
    .services-card img {
        height: 220px;
        object-fit: cover;
    }

    /* Text */
    .services-card .content {
        bottom: 12px;
        left: 15px;
        right: 15px;
    }

    .services-card h3 {
        font-size: 17px;
    }

    .services-card p {
        font-size: 13px;
    }

    /* 🔥 PERFECT GRADIENT */
    .flip-front::after,
    .flip-back::after {
        height: 22%; /* best balance */
        background: linear-gradient(
            to top,
            rgba(0,0,0,0.7),
            rgba(0,0,0,0)
        );
    }
      .flip-inner {
        height: 220px;  /* match image height */
    }
}
@media only screen and (max-width: 767px) {
    #associations {
        padding-top: 20px !important;
        padding-bottom: 40px;
    }
    #associations .title-block {
        margin-top: 0;
        margin-bottom: 20px;
    }
    /* Row spacing fix */
    #associations .row {
        margin-left: -5px;
        margin-right: -5px;
    }
        #associations .item {
        padding: 6px;
        margin-bottom: 10px;
    }

     #associations .section-title {
        font-size: 26px;
        line-height: 1.3;
        letter-spacing: 1px;
    }

    #associations .section-short {
        font-size: 13px;
        line-height: 1.5;
        padding: 0 10px;
    }

    /* Column spacing */
    #associations .affiliations .item {
        padding-left: 5px;
        padding-right: 5px;
        margin-bottom: 12px;
    }
  #associations .title-block {
        margin-bottom: 25px;
    }

    /* Card */
    #associations .affiliations .box {
        padding: 20px 10px;
        font-size: 12px;
        min-height: 80px;
        letter-spacing: 0.5px;
        min-height: 80px;
    padding: 18px 10px;
    }

}
@media only screen and (max-width: 480px) {

   #associations .item {
        width: 50%;
        float: left;
    }


    #associations .section-title {
        font-size: 20px;
        line-height: 1.3;
        letter-spacing: 0.5px;
    }

    #associations .section-short {
        font-size: 12px;
        line-height: 1.4;
        padding: 0 8px;
    }
}
/* ================= MOBILE ================= */

@media (max-width: 767px) {
#profile-highlights .section-title{
    font-size: 20px;
}
    .profile-row {
        flex-direction: column;
    }

    .profile-img {
        margin-bottom: 20px;
    }

    .profile-content {
        padding: 0 15px;
        text-align: center;
    }

    .profile-content p {
        font-size: 14px;
    }

}
/* ===============================
   RESPONSIVE
================================ */
@media (max-width: 767px) {

    #contacts {
        min-height: auto;
        padding: 40px 0;
        background-position: center;
    }

    .footer-row {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }

    .footer-col {
        align-items: center;
        margin-bottom: 15px;
    }

    .footer-name {
        font-size: 22px;
    }

    .footer-heading {
        font-size: 13px;
    }

    .contact-wrapper {
        gap: 10px;
        flex-wrap: wrap;
        justify-content: center;
    }

    .contact-action {
        font-size: 13px;
    }

    .dot {
        display: none;
    }
     .footer-bottom .row {
        text-align: center;
    }

    .footer-social {
        justify-content: center;
        margin-top: 30px;
        
    }
       .footer-social .social-item {
        width: 45% !important;          /* 2 items per row */
        justify-content: center;
    }

}
@media (max-width: 480px) {
    .footer-social span {
        display: none;
    }
}