/* Ensure padding for non-home pages */
body:not(.page-home) .site-main {
  padding-top: clamp(60px, 8vw, 100px);
}

.hero {
  min-height: 70vh;
  display: flex;
  align-items: center;
  position: relative;
  padding: clamp(60px, 8vw, 100px) 0;
  overflow: visible !important;
  max-height: none !important;
  background: linear-gradient(135deg, #DCEEF2 0%, #ffffff 100%);
}

.hero::before {
  content: '';
  position: absolute;
  top: 5%;
  right: 5%;
  width: clamp(250px, 40vw, 500px);
  height: clamp(250px, 40vw, 500px);
  background: #DCEEF2;
  border-radius: 43% 57% 70% 30% / 30% 30% 70% 70%;
  opacity: 0.6;
  pointer-events: none;
  z-index: 0;
}

.hero-inner {
  position: relative;
  z-index: 2;
}

.hero-cta, .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #F26457;
  color: #ffffff !important;
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  font-size: 1.1rem;
  padding: 1.2rem 2.5rem;
  text-decoration: none;
  border-radius: 0;
}

.nav-logo {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
}

.nav-logo-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.nav-logo-img {
  width: auto;
  height: auto;
  max-height: 48px;
  min-width: 180px;
  display: block;
}

.reveal-on-scroll {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.reveal-on-scroll.visible {
  opacity: 1;
  transform: translateY(0);
}

.site-footer::before {
  display: none !important;
}
