
/* ======================================
   Strong Responsive Fixes for Elementor/Superio
   ====================================== */

/* Universal image & video responsiveness */
img, video {
  max-width: 100% !important;
  height: auto !important;
}

/* Typography Scaling */
h1, h2, h3, h4, h5, h6 {
  line-height: 1.2;
  word-wrap: break-word;
}
h2 {
  font-size: clamp(1.5rem, 5vw, 2.5rem) !important;
}
p, li {
  font-size: clamp(1rem, 2vw, 1.15rem) !important;
}

/* Buttons and Inputs */
button, input[type="submit"], .btn {
  max-width: 100% !important;
  font-size: clamp(0.9rem, 2.5vw, 1rem) !important;
  box-sizing: border-box;
}

/* Elementor Container Fixes */
.elementor-container {
  display: flex;
  flex-wrap: wrap !important;
  gap: 20px;
}

.elementor-column {
  flex: 1 1 100% !important;
  margin-bottom: 20px;
}

@media (min-width: 768px) {
  .elementor-column {
    flex: 1 1 48% !important;
  }
}

@media (min-width: 1200px) {
  .elementor-column {
    flex: 1 1 30% !important;
  }
}

/* Hexagon Section
.hexa__wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 15px;
}

.hexa_blok {
  flex: 1 1 45% !important;
  max-width: 180px !important;
  margin: 10px auto;
  text-align: center;
}
   */
@media (min-width: 992px) {
  .hexa_blok { flex: 1 1 20% !important; }
}

/* Service Cards */
.prj-card {
  flex: 1 1 100% !important;
  margin: 15px 0;
}
@media (min-width: 768px) {
  .prj-card { flex: 1 1 48% !important; }
}
@media (min-width: 1200px) {
  .prj-card { flex: 1 1 30% !important; }
}

/* Navigation Menu */
#primary-menu {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px;
  padding: 0;
}
@media (min-width: 992px) {
  #primary-menu {
    flex-direction: row !important;
    justify-content: center;
    gap: 20px;
  }
}

/* Forms */
form {
  max-width: 100% !important;
  padding: 12px;
  box-sizing: border-box;
}
input, textarea, select {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}

/* Container fix */
.container, .cont-xl {
  width: 100% !important;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}
