/* RescuePro Premium Mobile + Navigation */

html {
  scroll-behavior: smooth;
}

body {
  font-size: 17px;
  line-height: 1.6;
  overflow-x: hidden;
}

h1, h2, h3 {
  letter-spacing: -0.03em;
}

h1 {
  font-size: clamp(42px, 7vw, 78px) !important;
  line-height: .95 !important;
}

h2 {
  font-size: clamp(30px, 5vw, 54px) !important;
  line-height: 1.05 !important;
}

p {
  max-width: 720px;
}

/* Premium buttons */
button,
.wp-block-button__link,
.elementor-button {
  border-radius: 999px !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  padding: 15px 24px !important;
}

.wp-block-button__link:hover,
.elementor-button:hover {
  transform: translateY(-2px);
  transition: .25s ease;
}

/* Premium navigation */
.menu-item a,
.main-navigation a,
.elementor-nav-menu a {
  font-size: 14px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.3px !important;
  padding: 12px 16px !important;
}

.menu-item a:hover,
.main-navigation a:hover,
.elementor-nav-menu a:hover {
  color: #d4633b !important;
}

/* Last menu item as CTA */
.menu-item:last-child a,
.elementor-nav-menu li:last-child a {
  background: #d4633b !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 12px 22px !important;
}

/* Images/cards */
.wp-block-image img,
.elementor img {
  border-radius: 18px;
}

.wp-block-column,
.wp-block-group,
.elementor-widget-container {
  border-radius: 20px;
}

/* Mobile fixes */
@media (max-width: 768px) {

  body {
    font-size: 16px;
  }

  h1 {
    font-size: 42px !important;
    line-height: .98 !important;
    margin-bottom: 18px !important;
  }

  h2 {
    font-size: 32px !important;
    line-height: 1.08 !important;
  }

  h3 {
    font-size: 22px !important;
    line-height: 1.15 !important;
  }

  p {
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  .wp-block-columns,
  .elementor-container,
  .elementor-row {
    flex-direction: column !important;
  }

  .wp-block-column,
  .elementor-column {
    width: 100% !important;
  }

  .wp-block-button,
  .wp-block-button__link,
  .elementor-button {
    width: 100% !important;
    text-align: center !important;
  }

  .menu-item a,
  .elementor-nav-menu a {
    font-size: 17px !important;
    padding: 14px 0 !important;
  }
}