/* Responsive fixes for hero and navigation */

@media (max-width: 1400px) {
  .header-3 .main-menu ul li > a {
    padding: 12px 10px;
    font-size: 14px;
  }
  .hero-area-three .hero-section-title .sub-title {
    font-size: 22px;
    line-height: 1.3;
  }
  .hero-area-three .hero-section-title .sec-title-1 {
    font-size: 32px;
    line-height: 1.25;
  }
  .hero-area-three .text-content .text {
    font-size: 14px;
  }
}

@media (max-width: 1200px) {
  .hero-area-three .row {
    align-items: center;
  }
  .hero-area-three .hero-section-title,
  .hero-area-three .text-content {
    text-align: center;
  }
  .hero-area-three .thumb-wrap {
    margin: 30px auto 0;
    max-width: 520px;
  }
  .hero-area-three .masked-img {
    max-width: 100%;
    height: auto;
    display: block;
  }
}

@media (max-width: 992px) {
  .header-3 .header-main {
    padding: 12px 0;
  }
  .hero-area-three .hero-section-title .sec-title-1 {
    font-size: 26px;
  }
  .hero-area-three .sub-title {
    font-size: 18px;
  }
  .hero-area-three .text-content .title-anim {
    font-size: 18px;
  }
}

/* Footer contact cards: prevent long email overflow */
.footer-items .company-info .location a {
  overflow-wrap: anywhere;
  word-break: break-word;
  text-transform: none;
  display: inline-block;
  max-width: 100%;
}

/* Header sizing tweaks */
.header-3 .logo img {
  max-height: 46px;
  width: auto;
}
.header-3 .main-menu ul li > a {
  font-size: 14px;
  padding: 12px 10px;
}
.header-3 .main-menu ul {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
}
.header-3 .header-main {
  padding: 14px 0;
  flex-wrap: nowrap;
  align-items: center;
}
.header-3 .header-btn .gt-btn-circle-2,
.header-3 .header-btn .gt-btn-circle-2 * {
  transform: scale(0.9);
}
.header-3 .header-btn .gt-btn-circle-2 {
  padding: 10px 15px;
  font-size: 13px;
}

/* Force sub-menus to stack vertically (one item per row) */
.main-menu ul li .submenu {
  display: block !important;
}
.main-menu ul li .submenu li {
  display: block;
  width: 100%;
}
/* Mid-desktop tightening (e.g., 1366px / 18" monitors) */
@media (max-width: 1400px) {
  .header-3 .logo img {
    max-height: 40px;
  }
  .header-3 .main-menu ul li > a {
    font-size: 12px;
    padding: 4px 3px;
  }
  .header-3 .main-menu ul {
    gap: 4px;
  }
  .header-3 .main-menu {
    justify-content: center;
  }
  .header-3 .header-main {
    gap: 2px;
  }
  .header-3 .header-right .hero-button {
    transform: scale(0.75);
    margin-left: 8px;
  }
}

@media (max-width: 768px) {
  /* Header CTA: compact and positioned */
  .header-3 .header-btn {
    display: none !important; /* hide header CTA on mobile to avoid blocking menu */
  }

  /* Hero CTA: prevent blocking and align to center */
  .hero-area-three .hero-button {
    text-align: center;
    margin-top: 16px;
  }
  .hero-area-three .hero-button .gt-btn-circle-2 {
    transform: scale(0.78);
    padding: 10px 16px;
    max-width: 150px;
    width: auto;
    white-space: nowrap;
  }
  .hero-area-three .hero-button .gt-btn-circle-text-2 {
    font-size: 12px;
    line-height: 1.2;
  }
  .hero-area-three .hero-button .gt-btn-circle-dot {
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%);
  }

  /* Hide header hero-button pill in mobile header */
  .header-right .hero-button {
    display: none !important;
  }
  /* Ensure meanmenu burger remains visible */
  .meanmenu-reveal {
    display: block !important;
    z-index: 9999;
  }
}

/* Hero thumb stacking to avoid missing images on mid/large screens */
.hero-area-three .thumb-wrap {
  display: block;
  max-width: 560px;
  margin: 0 auto;
}
.hero-area-three .shape-wrapper,
.hero-area-three .shape-wrapper-2 {
  position: relative;
  width: 100%;
  max-width: 520px;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  transform: none !important;
  margin: 0 auto 22px;
  overflow: visible;
}
.hero-area-three .masked-img {
  max-width: 100%;
  height: auto;
  display: block;
  min-height: 260px;
}
